Generated by Cython 0.29.26

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: _test_c.c

+0001: # cython: language_level = 3
  __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_2, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
 0002: # cython: embedsignature = True
 0003: # cython: binding = True
 0004: 
 0005: # Copyright (c) 2020-2022, Andrea Zoppi.
 0006: # All rights reserved.
 0007: #
 0008: # Redistribution and use in source and binary forms, with or without
 0009: # modification, are permitted provided that the following conditions are met:
 0010: #
 0011: # 1. Redistributions of source code must retain the above copyright notice,
 0012: #    this list of conditions and the following disclaimer.
 0013: #
 0014: # 2. Redistributions in binary form must reproduce the above copyright
 0015: #    notice, this list of conditions and the following disclaimer in the
 0016: #    documentation and/or other materials provided with the distribution.
 0017: #
 0018: # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 0019: # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 0020: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 0021: # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 0022: # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 0023: # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 0024: # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 0025: # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 0026: # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 0027: # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 0028: # POSSIBILITY OF SUCH DAMAGE.
 0029: 
 0030: # NOTES
 0031: # Assertion "is True/False" is to ensure the answer is EXACTLY the expected one.
 0032: 
+0033: import pytest
  /* "_test_c.pyx":33
 * # Assertion "is True/False" is to ensure the answer is EXACTLY the expected one.
 * 
 * import pytest             # <<<<<<<<<<<<<<
 * 
 * from cbytesparse._c cimport *
 */
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_pytest, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_pytest, __pyx_t_1) < 0) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
 0034: 
 0035: from cbytesparse._c cimport *
 0036: 
 0037: cdef:
+0038:     bytes DATA1 = b'Hello, World!'
  __Pyx_INCREF(__pyx_kp_b_Hello_World);
  __Pyx_XGOTREF(__pyx_v_7_test_c_DATA1);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_DATA1, __pyx_kp_b_Hello_World);
  __Pyx_GIVEREF(__pyx_kp_b_Hello_World);
+0039:     size_t SIZE1 = <size_t>len(DATA1)
  __pyx_t_1 = __pyx_v_7_test_c_DATA1;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 39, __pyx_L1_error)
  }
  __pyx_t_2 = PyBytes_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 39, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_7_test_c_SIZE1 = ((size_t)__pyx_t_2);
+0040:     tuple RACK1 = ((0x1234, DATA1),)
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_int_4660);
  __Pyx_GIVEREF(__pyx_int_4660);
  PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_4660);
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __Pyx_GIVEREF(__pyx_v_7_test_c_DATA1);
  PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_7_test_c_DATA1);
  __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_1);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
  __pyx_t_1 = 0;
  __Pyx_XGOTREF(__pyx_v_7_test_c_RACK1);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_RACK1, ((PyObject*)__pyx_t_3));
  __Pyx_GIVEREF(__pyx_t_3);
  __pyx_t_3 = 0;
 0041: 
+0042:     bytes DATA2 = b'Foo/Bar'
  __Pyx_INCREF(__pyx_kp_b_Foo_Bar);
  __Pyx_XGOTREF(__pyx_v_7_test_c_DATA2);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_DATA2, __pyx_kp_b_Foo_Bar);
  __Pyx_GIVEREF(__pyx_kp_b_Foo_Bar);
+0043:     size_t SIZE2 = <size_t>len(DATA2)
  __pyx_t_3 = __pyx_v_7_test_c_DATA2;
  __Pyx_INCREF(__pyx_t_3);
  if (unlikely(__pyx_t_3 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 43, __pyx_L1_error)
  }
  __pyx_t_2 = PyBytes_GET_SIZE(__pyx_t_3); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 43, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_v_7_test_c_SIZE2 = ((size_t)__pyx_t_2);
+0044:     tuple RACK2 = ((0x4321, DATA2),)
  __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_INCREF(__pyx_int_17185);
  __Pyx_GIVEREF(__pyx_int_17185);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_int_17185);
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __Pyx_GIVEREF(__pyx_v_7_test_c_DATA2);
  PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_7_test_c_DATA2);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_3);
  PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
  __pyx_t_3 = 0;
  __Pyx_XGOTREF(__pyx_v_7_test_c_RACK2);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_RACK2, ((PyObject*)__pyx_t_1));
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_t_1 = 0;
 0045: 
+0046:     bytes DATA3 = b'#.#.##...##..###..##.#.#.'
  __Pyx_INCREF(__pyx_kp_b__113);
  __Pyx_XGOTREF(__pyx_v_7_test_c_DATA3);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_DATA3, __pyx_kp_b__113);
  __Pyx_GIVEREF(__pyx_kp_b__113);
+0047:     size_t SIZE3 = <size_t>len(DATA3)
  __pyx_t_1 = __pyx_v_7_test_c_DATA3;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 47, __pyx_L1_error)
  }
  __pyx_t_2 = PyBytes_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 47, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_7_test_c_SIZE3 = ((size_t)__pyx_t_2);
 0048:     tuple TOKENS3 = (
+0049:         b'.#',
  __Pyx_INCREF(__pyx_tuple__122);
  __Pyx_XGOTREF(__pyx_v_7_test_c_TOKENS3);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_TOKENS3, __pyx_tuple__122);
  __Pyx_GIVEREF(__pyx_tuple__122);
/* … */
  __pyx_tuple__122 = PyTuple_Pack(8, __pyx_kp_b__114, __pyx_kp_b__115, __pyx_kp_b__116, __pyx_kp_b__117, __pyx_kp_b__118, __pyx_kp_b__119, __pyx_kp_b__120, __pyx_kp_b__121); if (unlikely(!__pyx_tuple__122)) __PYX_ERR(0, 49, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__122);
  __Pyx_GIVEREF(__pyx_tuple__122);
 0050:         b'#.',
 0051:         b'...',
 0052:         b'.#.',
 0053:         b'#.#',
 0054:         b'###',
 0055:         b'....',
 0056:         b'####',
 0057:     )
 0058: 
 0059: 
 0060: # =====================================================================================================================
 0061: 
+0062: def test_addr_size_types():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_1test_addr_size_types(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_test_addr_size_types[] = "test_addr_size_types()";
static PyMethodDef __pyx_mdef_7_test_c_1test_addr_size_types = {"test_addr_size_types", (PyCFunction)__pyx_pw_7_test_c_1test_addr_size_types, METH_NOARGS, __pyx_doc_7_test_c_test_addr_size_types};
static PyObject *__pyx_pw_7_test_c_1test_addr_size_types(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_addr_size_types (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_test_addr_size_types(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_test_addr_size_types(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_addr_size_types", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_addr_size_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_1test_addr_size_types, 0, __pyx_n_s_test_addr_size_types, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__123)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 62, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_addr_size_types, __pyx_t_1) < 0) __PYX_ERR(0, 62, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__123 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_addr_size_types, 62, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__123)) __PYX_ERR(0, 62, __pyx_L1_error)
+0063:     assert sizeof(size_t) == sizeof(ssize_t)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!(((sizeof(size_t)) == (sizeof(Py_ssize_t))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 63, __pyx_L1_error)
    }
  }
  #endif
+0064:     assert SSIZE_MAX == +<ssize_t>SIZE_HMAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SSIZE_MAX == ((Py_ssize_t)SIZE_HMAX)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 64, __pyx_L1_error)
    }
  }
  #endif
+0065:     assert SSIZE_MIN == -<ssize_t>(SIZE_HMAX) - <ssize_t>1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SSIZE_MIN == ((-((Py_ssize_t)SIZE_HMAX)) - ((Py_ssize_t)1))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 65, __pyx_L1_error)
    }
  }
  #endif
 0066: 
+0067:     assert sizeof(addr_t) == sizeof(saddr_t)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!(((sizeof(addr_t)) == (sizeof(saddr_t))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 67, __pyx_L1_error)
    }
  }
  #endif
+0068:     assert SADDR_MAX == +<saddr_t>(ADDR_MAX >> 1)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SADDR_MAX == ((saddr_t)(ADDR_MAX >> 1))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 68, __pyx_L1_error)
    }
  }
  #endif
+0069:     assert SADDR_MIN == -<saddr_t>(ADDR_MAX >> 1) - <saddr_t>1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SADDR_MIN == ((-((saddr_t)(ADDR_MAX >> 1))) - ((saddr_t)1))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 69, __pyx_L1_error)
    }
  }
  #endif
 0070: 
+0071:     assert sizeof(size_t) <= sizeof(addr_t)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!(((sizeof(size_t)) <= (sizeof(addr_t))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 71, __pyx_L1_error)
    }
  }
  #endif
+0072:     assert sizeof(ssize_t) <= sizeof(saddr_t)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!(((sizeof(Py_ssize_t)) <= (sizeof(saddr_t))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 72, __pyx_L1_error)
    }
  }
  #endif
+0073:     assert SIZE_MAX <= ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SIZE_MAX <= ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 73, __pyx_L1_error)
    }
  }
  #endif
+0074:     assert SSIZE_MAX <= SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SSIZE_MAX <= SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 74, __pyx_L1_error)
    }
  }
  #endif
+0075:     assert SSIZE_MIN >= SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((SSIZE_MIN >= SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 75, __pyx_L1_error)
    }
  }
  #endif
 0076: 
 0077: 
 0078: # ---------------------------------------------------------------------------------------------------------------------
 0079: 
+0080: def test_calloc():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_3test_calloc(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_2test_calloc[] = "test_calloc()";
static PyMethodDef __pyx_mdef_7_test_c_3test_calloc = {"test_calloc", (PyCFunction)__pyx_pw_7_test_c_3test_calloc, METH_NOARGS, __pyx_doc_7_test_c_2test_calloc};
static PyObject *__pyx_pw_7_test_c_3test_calloc(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_calloc (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_2test_calloc(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_11test_calloc_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_2test_calloc(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc *__pyx_cur_scope;
  PyObject *__pyx_gb_7_test_c_11test_calloc_2generator = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_calloc", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc *)__pyx_tp_new_7_test_c___pyx_scope_struct__test_calloc(__pyx_ptype_7_test_c___pyx_scope_struct__test_calloc, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 80, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_calloc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_11test_calloc_2generator);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__124 = PyTuple_Pack(4, __pyx_n_s_chunk, __pyx_n_s_i, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__124)) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__124);
  __Pyx_GIVEREF(__pyx_tuple__124);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_3test_calloc, 0, __pyx_n_s_test_calloc, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__125)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_calloc, __pyx_t_1) < 0) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__125 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__124, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_calloc, 80, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__125)) __PYX_ERR(0, 80, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc {
  PyObject_HEAD
  byte_t *__pyx_v_chunk;
};

 0081:     cdef:
+0082:         byte_t* chunk = NULL
  __pyx_cur_scope->__pyx_v_chunk = NULL;
 0083:         size_t i
 0084: 
+0085:     chunk = <byte_t*>PyMem_Calloc(7, 5)
  __pyx_cur_scope->__pyx_v_chunk = ((byte_t *)__pyx_f_11cbytesparse_2_c_PyMem_Calloc(7, 5));
+0086:     try:
  /*try:*/ {
+0087:         assert chunk
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!(__pyx_cur_scope->__pyx_v_chunk != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 87, __pyx_L4_error)
      }
    }
    #endif
+0088:         assert all(chunk[i] == 0 for i in range(7 * 5))
static PyObject *__pyx_pf_7_test_c_11test_calloc_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_1_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_1_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_1_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_1_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_1_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 88, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_11test_calloc_2generator, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_calloc_locals_genexpr, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 88, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_calloc.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_11test_calloc_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 88, __pyx_L1_error)
  for (__pyx_t_1 = 0; __pyx_t_1 < 35; __pyx_t_1+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_1;
    __pyx_t_2 = ((!(((__pyx_cur_scope->__pyx_outer_scope->__pyx_v_chunk[__pyx_cur_scope->__pyx_v_i]) == 0) != 0)) != 0);
    if (__pyx_t_2) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_pf_7_test_c_11test_calloc_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 88, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_Generator_Next(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 88, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_3)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 88, __pyx_L4_error)
      }
    }
    #endif
  }
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_1_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc *__pyx_outer_scope;
  long __pyx_v_i;
};

 0089: 
 0090:     finally:
+0091:         PyMem_Free(chunk)
  /*finally:*/ {
    /*normal exit:*/{
      PyMem_Free(__pyx_cur_scope->__pyx_v_chunk);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __pyx_t_4 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename;
      {
        PyMem_Free(__pyx_cur_scope->__pyx_v_chunk);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_8, __pyx_t_9);
      __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0;
      __pyx_lineno = __pyx_t_4; __pyx_clineno = __pyx_t_5; __pyx_filename = __pyx_t_6;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0092: 
 0093: 
 0094: # =====================================================================================================================
 0095: 
+0096: def test_downsize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_5test_downsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_4test_downsize[] = "test_downsize()";
static PyMethodDef __pyx_mdef_7_test_c_5test_downsize = {"test_downsize", (PyCFunction)__pyx_pw_7_test_c_5test_downsize, METH_NOARGS, __pyx_doc_7_test_c_4test_downsize};
static PyObject *__pyx_pw_7_test_c_5test_downsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_downsize (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_4test_downsize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_4test_downsize(CYTHON_UNUSED PyObject *__pyx_self) {
  size_t __pyx_v_ans;
  size_t __pyx_v_ref;
  size_t __pyx_v_i;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_downsize", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_downsize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__126 = PyTuple_Pack(3, __pyx_n_s_ans, __pyx_n_s_ref, __pyx_n_s_i); if (unlikely(!__pyx_tuple__126)) __PYX_ERR(0, 96, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__126);
  __Pyx_GIVEREF(__pyx_tuple__126);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_5test_downsize, 0, __pyx_n_s_test_downsize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__127)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 96, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_downsize, __pyx_t_1) < 0) __PYX_ERR(0, 96, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__127 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__126, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_downsize, 96, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__127)) __PYX_ERR(0, 96, __pyx_L1_error)
 0097:     cdef:
 0098:         size_t ans
 0099:         size_t ref
 0100:         size_t i
 0101: 
+0102:     ans = Downsize(0, 0)
  __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Downsize(0, 0);
+0103:     ref = MARGIN + MARGIN
  __pyx_v_ref = (MARGIN + MARGIN);
+0104:     assert ans == ref, (ans, ref)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
      __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 104, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 104, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 104, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2);
      __pyx_t_1 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 104, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
      __pyx_t_3 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_2);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __PYX_ERR(0, 104, __pyx_L1_error)
    }
  }
  #endif
 0105: 
+0106:     for i in range(0x100 // 2):
  for (__pyx_t_4 = 0; __pyx_t_4 < 0x80; __pyx_t_4+=1) {
    __pyx_v_i = __pyx_t_4;
+0107:         ans = Downsize(0x100, i)
    __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Downsize(0x100, __pyx_v_i);
+0108:         ref = i
    __pyx_v_ref = __pyx_v_i;
+0109:         ref += (2 * MARGIN) - (ref % MARGIN)
    if (unlikely(MARGIN == 0)) {
      PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
      __PYX_ERR(0, 109, __pyx_L1_error)
    }
    __pyx_v_ref = (__pyx_v_ref + ((2 * MARGIN) - (__pyx_v_ref % MARGIN)));
+0110:         assert ans == ref, (ans, ref, i)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
        __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 110, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 110, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 110, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_1);
        __pyx_t_2 = 0;
        __pyx_t_3 = 0;
        __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
        __pyx_t_5 = 0;
        PyErr_SetObject(PyExc_AssertionError, __pyx_t_1);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __PYX_ERR(0, 110, __pyx_L1_error)
      }
    }
    #endif
  }
 0111: 
+0112:     ans = Downsize(0x100, 0x80)
  __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Downsize(0x100, 0x80);
+0113:     ref = 0x100
  __pyx_v_ref = 0x100;
+0114:     assert ans == ref, (ans, ref)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
      __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 114, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 114, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 114, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5);
      __pyx_t_1 = 0;
      __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 114, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
      __pyx_t_3 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_5);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __PYX_ERR(0, 114, __pyx_L1_error)
    }
  }
  #endif
 0115: 
+0116:     ans = Downsize(0x100, 0x7F)
  __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Downsize(0x100, 0x7F);
+0117:     ref = 0x80 + MARGIN
  __pyx_v_ref = (0x80 + MARGIN);
+0118:     assert ans == ref, (ans, ref)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
      __pyx_t_5 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 118, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 118, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
      __pyx_t_5 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __pyx_t_1 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_3);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(0, 118, __pyx_L1_error)
    }
  }
  #endif
 0119: 
 0120: 
+0121: def test_upsize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_7test_upsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_6test_upsize[] = "test_upsize()";
static PyMethodDef __pyx_mdef_7_test_c_7test_upsize = {"test_upsize", (PyCFunction)__pyx_pw_7_test_c_7test_upsize, METH_NOARGS, __pyx_doc_7_test_c_6test_upsize};
static PyObject *__pyx_pw_7_test_c_7test_upsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_upsize (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_6test_upsize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_6test_upsize(CYTHON_UNUSED PyObject *__pyx_self) {
  size_t __pyx_v_ans;
  size_t __pyx_v_ref;
  size_t __pyx_v_i;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_upsize", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_upsize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__128 = PyTuple_Pack(3, __pyx_n_s_ans, __pyx_n_s_ref, __pyx_n_s_i); if (unlikely(!__pyx_tuple__128)) __PYX_ERR(0, 121, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__128);
  __Pyx_GIVEREF(__pyx_tuple__128);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_7test_upsize, 0, __pyx_n_s_test_upsize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__129)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 121, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_upsize, __pyx_t_1) < 0) __PYX_ERR(0, 121, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__129 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__128, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_upsize, 121, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__129)) __PYX_ERR(0, 121, __pyx_L1_error)
 0122:     cdef:
 0123:         size_t ans
 0124:         size_t ref
 0125:         size_t i
 0126: 
+0127:     ans = Upsize(0, 0)
  __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Upsize(0, 0);
+0128:     ref = MARGIN + MARGIN
  __pyx_v_ref = (MARGIN + MARGIN);
+0129:     assert ans == ref, (ans, ref)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
      __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 129, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 129, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2);
      __pyx_t_1 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 129, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
      __pyx_t_3 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_2);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __PYX_ERR(0, 129, __pyx_L1_error)
    }
  }
  #endif
 0130: 
+0131:     ans = Upsize(0, 0x100)
  __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Upsize(0, 0x100);
+0132:     ref = MARGIN + 0x100 + MARGIN
  __pyx_v_ref = ((MARGIN + 0x100) + MARGIN);
+0133:     assert ans == ref, (ans, ref)
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
      __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 133, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 133, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 133, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
      __pyx_t_2 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 133, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __pyx_t_1 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_3);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(0, 133, __pyx_L1_error)
    }
  }
  #endif
 0134: 
+0135:     for i in range((0x100 >> 3) + 1):
  for (__pyx_t_4 = 0; __pyx_t_4 < 33; __pyx_t_4+=1) {
    __pyx_v_i = __pyx_t_4;
+0136:         ans = Upsize(0x100, 0x100 + i)
    __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Upsize(0x100, (0x100 + __pyx_v_i));
+0137:         ref = 0x100 + i
    __pyx_v_ref = (0x100 + __pyx_v_i);
+0138:         ref += ref >> 3
    __pyx_v_ref = (__pyx_v_ref + (__pyx_v_ref >> 3));
+0139:         ref += (2 * MARGIN) - (ref % MARGIN)
    if (unlikely(MARGIN == 0)) {
      PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
      __PYX_ERR(0, 139, __pyx_L1_error)
    }
    __pyx_v_ref = (__pyx_v_ref + ((2 * MARGIN) - (__pyx_v_ref % MARGIN)));
+0140:         assert ans == ref, (ans, ref, i)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
        __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_ans); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 140, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_ref); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 140, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_i); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 140, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 140, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_2);
        __pyx_t_3 = 0;
        __pyx_t_1 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 140, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_5);
        __pyx_t_5 = 0;
        PyErr_SetObject(PyExc_AssertionError, __pyx_t_2);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __PYX_ERR(0, 140, __pyx_L1_error)
      }
    }
    #endif
  }
 0141: 
 0142: 
 0143: # =====================================================================================================================
 0144: 
+0145: def test_AddSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_9test_AddSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_8test_AddSizeU[] = "test_AddSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_9test_AddSizeU = {"test_AddSizeU", (PyCFunction)__pyx_pw_7_test_c_9test_AddSizeU, METH_NOARGS, __pyx_doc_7_test_c_8test_AddSizeU};
static PyObject *__pyx_pw_7_test_c_9test_AddSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddSizeU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_8test_AddSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_8test_AddSizeU(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddSizeU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_AddSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_9test_AddSizeU, 0, __pyx_n_s_test_AddSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__130)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddSizeU, __pyx_t_1) < 0) __PYX_ERR(0, 145, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__130 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddSizeU, 145, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__130)) __PYX_ERR(0, 145, __pyx_L1_error)
+0146:     assert AddSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(0, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 146, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 146, __pyx_L1_error)
    }
  }
  #endif
+0147:     assert AddSizeU(0, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(0, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 147, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 147, __pyx_L1_error)
    }
  }
  #endif
+0148:     assert AddSizeU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(1, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 148, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 148, __pyx_L1_error)
    }
  }
  #endif
+0149:     assert AddSizeU(1, 1) == 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(1, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 149, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 149, __pyx_L1_error)
    }
  }
  #endif
+0150:     assert AddSizeU(SIZE_MAX, 0) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 150, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 150, __pyx_L1_error)
    }
  }
  #endif
+0151:     assert AddSizeU(0, SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 151, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 151, __pyx_L1_error)
    }
  }
  #endif
+0152:     assert AddSizeU(SIZE_HMAX, SIZE_HMAX) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(SIZE_HMAX, SIZE_HMAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 152, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 152, __pyx_L1_error)
    }
  }
  #endif
+0153:     assert AddSizeU(SIZE_HMAX + 1, SIZE_HMAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU((SIZE_HMAX + 1), SIZE_HMAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 153, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 153, __pyx_L1_error)
    }
  }
  #endif
+0154:     assert AddSizeU(SIZE_HMAX, SIZE_HMAX + 1) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(SIZE_HMAX, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 154, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 154, __pyx_L1_error)
    }
  }
  #endif
 0155: 
+0156:     with pytest.raises(OverflowError): AddSizeU(SIZE_MAX, 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 156, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 156, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 156, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 156, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 156, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 156, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(SIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 156, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 156, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 156, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 156, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 156, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 156, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 156, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
/* … */
  __pyx_tuple_ = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple_)) __PYX_ERR(0, 156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple_);
  __Pyx_GIVEREF(__pyx_tuple_);
+0157:     with pytest.raises(OverflowError): AddSizeU(1, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 157, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 157, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 157, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 157, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 157, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 157, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(1, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 157, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 157, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 157, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 157, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 157, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 157, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 157, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0158:     with pytest.raises(OverflowError): AddSizeU(SIZE_MAX, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 158, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 158, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 158, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 158, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 158, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 158, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 158, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 158, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 158, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 158, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 158, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 158, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 158, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0159:     with pytest.raises(OverflowError): AddSizeU(SIZE_HMAX + 1, SIZE_HMAX + 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 159, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 159, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 159, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 159, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 159, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 159, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeU((SIZE_HMAX + 1), (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 159, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 159, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 159, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 159, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 159, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 159, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 159, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
 0160: 
 0161: 
+0162: def test_SubSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_11test_SubSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_10test_SubSizeU[] = "test_SubSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_11test_SubSizeU = {"test_SubSizeU", (PyCFunction)__pyx_pw_7_test_c_11test_SubSizeU, METH_NOARGS, __pyx_doc_7_test_c_10test_SubSizeU};
static PyObject *__pyx_pw_7_test_c_11test_SubSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubSizeU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_10test_SubSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_10test_SubSizeU(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubSizeU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_SubSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_11test_SubSizeU, 0, __pyx_n_s_test_SubSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__131)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubSizeU, __pyx_t_1) < 0) __PYX_ERR(0, 162, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__131 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_SubSizeU, 162, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__131)) __PYX_ERR(0, 162, __pyx_L1_error)
+0163:     assert SubSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(0, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 163, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 163, __pyx_L1_error)
    }
  }
  #endif
+0164:     assert SubSizeU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(1, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 164, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 164, __pyx_L1_error)
    }
  }
  #endif
+0165:     assert SubSizeU(1, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(1, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 165, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 165, __pyx_L1_error)
    }
  }
  #endif
+0166:     assert SubSizeU(SIZE_MAX, 0) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 166, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 166, __pyx_L1_error)
    }
  }
  #endif
+0167:     assert SubSizeU(SIZE_MAX, SIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 167, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 167, __pyx_L1_error)
    }
  }
  #endif
 0168: 
+0169:     with pytest.raises(OverflowError): SubSizeU(0, 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 169, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 169, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 169, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 169, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 169, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 169, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(0, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 169, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 169, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 169, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 169, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 169, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 169, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 169, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0170:     with pytest.raises(OverflowError): SubSizeU(0, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 170, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); 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_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 170, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 170, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 170, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 170, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 170, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 170, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 170, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 170, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 170, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 170, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 170, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0171:     with pytest.raises(OverflowError): SubSizeU(SIZE_HMAX, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 171, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 171, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 171, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 171, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU(SIZE_HMAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 171, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 171, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 171, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 171, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 171, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 171, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 171, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0172:     with pytest.raises(OverflowError): SubSizeU(SIZE_MAX - 1, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 172, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 172, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 172, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 172, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 172, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeU((SIZE_MAX - 1), SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 172, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 172, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 172, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 172, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 172, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 172, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 172, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
 0173: 
 0174: 
+0175: def test_MulSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_13test_MulSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_12test_MulSizeU[] = "test_MulSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_13test_MulSizeU = {"test_MulSizeU", (PyCFunction)__pyx_pw_7_test_c_13test_MulSizeU, METH_NOARGS, __pyx_doc_7_test_c_12test_MulSizeU};
static PyObject *__pyx_pw_7_test_c_13test_MulSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulSizeU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_12test_MulSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_12test_MulSizeU(CYTHON_UNUSED PyObject *__pyx_self) {
  size_t __pyx_v_SIZE_MAX_SQRT;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulSizeU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__132 = PyTuple_Pack(1, __pyx_n_s_SIZE_MAX_SQRT); if (unlikely(!__pyx_tuple__132)) __PYX_ERR(0, 175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__132);
  __Pyx_GIVEREF(__pyx_tuple__132);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_13test_MulSizeU, 0, __pyx_n_s_test_MulSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__133)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulSizeU, __pyx_t_1) < 0) __PYX_ERR(0, 175, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__133 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__132, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_MulSizeU, 175, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__133)) __PYX_ERR(0, 175, __pyx_L1_error)
+0176:     cdef size_t SIZE_MAX_SQRT = (<size_t>1 << ((8 * sizeof(size_t)) // 2)) - 1
  __pyx_v_SIZE_MAX_SQRT = ((((size_t)1) << ((8 * (sizeof(size_t))) / 2)) - 1);
+0177:     assert 0 < SIZE_MAX_SQRT < SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = (0 < __pyx_v_SIZE_MAX_SQRT);
    if (__pyx_t_1) {
      __pyx_t_1 = (__pyx_v_SIZE_MAX_SQRT < SIZE_MAX);
    }
    if (unlikely(!(__pyx_t_1 != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 177, __pyx_L1_error)
    }
  }
  #endif
 0178: 
+0179:     assert MulSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(0, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 179, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 179, __pyx_L1_error)
    }
  }
  #endif
+0180:     assert MulSizeU(0, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(0, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 180, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 180, __pyx_L1_error)
    }
  }
  #endif
+0181:     assert MulSizeU(1, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(1, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 181, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 181, __pyx_L1_error)
    }
  }
  #endif
+0182:     assert MulSizeU(1, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(1, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 182, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 182, __pyx_L1_error)
    }
  }
  #endif
+0183:     assert MulSizeU(0, SIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 183, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 183, __pyx_L1_error)
    }
  }
  #endif
+0184:     assert MulSizeU(1, SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(1, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 184, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 184, __pyx_L1_error)
    }
  }
  #endif
+0185:     assert MulSizeU(SIZE_MAX, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 185, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 185, __pyx_L1_error)
    }
  }
  #endif
+0186:     assert MulSizeU(SIZE_MAX, 1) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_MAX, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 186, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 186, __pyx_L1_error)
    }
  }
  #endif
+0187:     assert MulSizeU(SIZE_HMAX, 2) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_HMAX, 2); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 187, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 187, __pyx_L1_error)
    }
  }
  #endif
+0188:     assert MulSizeU(2, SIZE_HMAX) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(2, SIZE_HMAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 188, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 188, __pyx_L1_error)
    }
  }
  #endif
+0189:     assert MulSizeU(SIZE_MAX_SQRT, SIZE_MAX_SQRT) == SIZE_MAX - SIZE_MAX_SQRT - SIZE_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(__pyx_v_SIZE_MAX_SQRT, __pyx_v_SIZE_MAX_SQRT); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 189, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == ((SIZE_MAX - __pyx_v_SIZE_MAX_SQRT) - __pyx_v_SIZE_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 189, __pyx_L1_error)
    }
  }
  #endif
+0190:     assert MulSizeU(SIZE_MAX_SQRT + 1, SIZE_MAX_SQRT) == SIZE_MAX - SIZE_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU((__pyx_v_SIZE_MAX_SQRT + 1), __pyx_v_SIZE_MAX_SQRT); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 190, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - __pyx_v_SIZE_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 190, __pyx_L1_error)
    }
  }
  #endif
+0191:     assert MulSizeU(SIZE_MAX_SQRT, SIZE_MAX_SQRT + 1) == SIZE_MAX - SIZE_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(__pyx_v_SIZE_MAX_SQRT, (__pyx_v_SIZE_MAX_SQRT + 1)); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 191, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - __pyx_v_SIZE_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 191, __pyx_L1_error)
    }
  }
  #endif
 0192: 
+0193:     with pytest.raises(OverflowError): MulSizeU(SIZE_MAX, 2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 193, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 193, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 193, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 193, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 193, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 193, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_MAX, 2); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 193, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 193, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_7 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 193, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 193, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (__pyx_t_1 < 0) __PYX_ERR(0, 193, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_1 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_5);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_5, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 193, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_6) {
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 193, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0194:     with pytest.raises(OverflowError): MulSizeU(2, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 194, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 194, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_5, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 194, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 194, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 194, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 194, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(2, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 194, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 194, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 194, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 194, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 194, __pyx_L23_except_error)
          __pyx_t_1 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_1) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_5);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_5);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
            __PYX_ERR(0, 194, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_6) {
          __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 194, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0195:     with pytest.raises(OverflowError): MulSizeU(SIZE_MAX, SIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 195, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 195, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_5 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 195, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 195, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 195, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 195, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 195, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 195, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 195, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 195, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (__pyx_t_1 < 0) __PYX_ERR(0, 195, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_1 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_5);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_4, __pyx_t_3);
            __pyx_t_5 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 195, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_6) {
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 195, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0196:     with pytest.raises(OverflowError): MulSizeU(SIZE_HMAX, SIZE_HMAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 196, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 196, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 196, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 196, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 196, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 196, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU(SIZE_HMAX, SIZE_HMAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 196, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 196, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_7 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 196, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 196, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 196, __pyx_L51_except_error)
          __pyx_t_1 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_1) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_5);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_5, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 196, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_6) {
          __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0197:     with pytest.raises(OverflowError): MulSizeU(SIZE_MAX_SQRT + 1, SIZE_MAX_SQRT + 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 197, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 197, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_5, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 197, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 197, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 197, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 197, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_MulSizeU((__pyx_v_SIZE_MAX_SQRT + 1), (__pyx_v_SIZE_MAX_SQRT + 1)); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 197, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 197, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 197, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 197, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (__pyx_t_1 < 0) __PYX_ERR(0, 197, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_1 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_5);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_5);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
            __PYX_ERR(0, 197, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_6) {
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 197, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
 0198: 
 0199: 
 0200: # ---------------------------------------------------------------------------------------------------------------------
 0201: 
+0202: def test_AddSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_15test_AddSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_14test_AddSizeS[] = "test_AddSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_15test_AddSizeS = {"test_AddSizeS", (PyCFunction)__pyx_pw_7_test_c_15test_AddSizeS, METH_NOARGS, __pyx_doc_7_test_c_14test_AddSizeS};
static PyObject *__pyx_pw_7_test_c_15test_AddSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddSizeS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_14test_AddSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_14test_AddSizeS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddSizeS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_15test_AddSizeS, 0, __pyx_n_s_test_AddSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__134)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddSizeS, __pyx_t_1) < 0) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__134 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddSizeS, 202, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__134)) __PYX_ERR(0, 202, __pyx_L1_error)
+0203:     assert AddSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(0, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 203, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 203, __pyx_L1_error)
    }
  }
  #endif
+0204:     assert AddSizeS( 0, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(0, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 204, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 204, __pyx_L1_error)
    }
  }
  #endif
+0205:     assert AddSizeS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(1, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 205, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 205, __pyx_L1_error)
    }
  }
  #endif
+0206:     assert AddSizeS(+1, +1) == +2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(1, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 206, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 206, __pyx_L1_error)
    }
  }
  #endif
+0207:     assert AddSizeS( 0, -1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(0, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 207, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 207, __pyx_L1_error)
    }
  }
  #endif
+0208:     assert AddSizeS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(-1L, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 208, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 208, __pyx_L1_error)
    }
  }
  #endif
+0209:     assert AddSizeS(-1, -1) == -2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(-1L, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 209, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -2L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 209, __pyx_L1_error)
    }
  }
  #endif
+0210:     assert AddSizeS(SSIZE_MAX,  0) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 210, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 210, __pyx_L1_error)
    }
  }
  #endif
+0211:     assert AddSizeS(SSIZE_MAX, -1) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MAX, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 211, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 211, __pyx_L1_error)
    }
  }
  #endif
+0212:     assert AddSizeS(SSIZE_MIN,  0) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MIN, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 212, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 212, __pyx_L1_error)
    }
  }
  #endif
+0213:     assert AddSizeS(SSIZE_MIN, +1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MIN, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 213, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 213, __pyx_L1_error)
    }
  }
  #endif
+0214:     assert AddSizeS( 0, SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(0, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 214, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 214, __pyx_L1_error)
    }
  }
  #endif
+0215:     assert AddSizeS( 0, SSIZE_MIN) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(0, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 215, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 215, __pyx_L1_error)
    }
  }
  #endif
+0216:     assert AddSizeS(-1, SSIZE_MAX) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(-1L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 216, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 216, __pyx_L1_error)
    }
  }
  #endif
+0217:     assert AddSizeS(+1, SSIZE_MIN) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(1, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 217, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 217, __pyx_L1_error)
    }
  }
  #endif
+0218:     assert AddSizeS(SSIZE_MAX, SSIZE_MIN) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MAX, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 218, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 218, __pyx_L1_error)
    }
  }
  #endif
+0219:     assert AddSizeS(SSIZE_MIN, SSIZE_MAX) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MIN, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 219, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 219, __pyx_L1_error)
    }
  }
  #endif
 0220: 
+0221:     with pytest.raises(OverflowError): AddSizeS(SSIZE_MAX, +1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 221, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 221, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 221, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 221, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 221, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 221, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 221, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 221, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 221, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 221, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 221, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 221, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 221, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0222:     with pytest.raises(OverflowError): AddSizeS(+1, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 222, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 222, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 222, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 222, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 222, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(1, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 222, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 222, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 222, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 222, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 222, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 222, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 222, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0223:     with pytest.raises(OverflowError): AddSizeS(SSIZE_MAX, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 223, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 223, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 223, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 223, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 223, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MAX, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 223, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 223, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 223, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 223, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 223, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 223, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 223, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0224:     with pytest.raises(OverflowError): AddSizeS(SSIZE_MIN, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 224, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 224, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 224, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 224, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 224, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 224, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 224, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 224, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 224, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 224, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 224, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 224, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0225:     with pytest.raises(OverflowError): AddSizeS(-1, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 225, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 225, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 225, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 225, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 225, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 225, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(-1L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 225, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 225, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 225, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 225, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 225, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 225, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 225, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0226:     with pytest.raises(OverflowError): AddSizeS(SSIZE_MIN, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 226, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 226, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 226, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 226, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddSizeS(SSIZE_MIN, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 226, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 226, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 226, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 226, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 226, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 226, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 226, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
 0227: 
 0228: 
+0229: def test_CheckSubSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_17test_CheckSubSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_16test_CheckSubSizeS[] = "test_CheckSubSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_17test_CheckSubSizeS = {"test_CheckSubSizeS", (PyCFunction)__pyx_pw_7_test_c_17test_CheckSubSizeS, METH_NOARGS, __pyx_doc_7_test_c_16test_CheckSubSizeS};
static PyObject *__pyx_pw_7_test_c_17test_CheckSubSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_CheckSubSizeS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_16test_CheckSubSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_16test_CheckSubSizeS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_CheckSubSizeS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_17test_CheckSubSizeS, 0, __pyx_n_s_test_CheckSubSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__135)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_CheckSubSizeS, __pyx_t_1) < 0) __PYX_ERR(0, 229, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__135 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_CheckSubSizeS, 229, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__135)) __PYX_ERR(0, 229, __pyx_L1_error)
+0230:     assert SubSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(0, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 230, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 230, __pyx_L1_error)
    }
  }
  #endif
+0231:     assert SubSizeS( 0, +1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(0, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 231, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 231, __pyx_L1_error)
    }
  }
  #endif
+0232:     assert SubSizeS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(1, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 232, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 232, __pyx_L1_error)
    }
  }
  #endif
+0233:     assert SubSizeS(+1, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(1, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 233, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 233, __pyx_L1_error)
    }
  }
  #endif
+0234:     assert SubSizeS( 0, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(0, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 234, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 234, __pyx_L1_error)
    }
  }
  #endif
+0235:     assert SubSizeS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(-1L, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 235, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 235, __pyx_L1_error)
    }
  }
  #endif
+0236:     assert SubSizeS(-1, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(-1L, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 236, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 236, __pyx_L1_error)
    }
  }
  #endif
+0237:     assert SubSizeS( 0, SSIZE_MAX) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(0, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 237, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 237, __pyx_L1_error)
    }
  }
  #endif
+0238:     assert SubSizeS(+1, SSIZE_MAX) == SSIZE_MIN + 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(1, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 238, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 2)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 238, __pyx_L1_error)
    }
  }
  #endif
+0239:     assert SubSizeS(-1, SSIZE_MAX) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(-1L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 239, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 239, __pyx_L1_error)
    }
  }
  #endif
+0240:     assert SubSizeS(-1, SSIZE_MIN) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(-1L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 240, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 240, __pyx_L1_error)
    }
  }
  #endif
+0241:     assert SubSizeS(SSIZE_MAX,  0) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 241, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 241, __pyx_L1_error)
    }
  }
  #endif
+0242:     assert SubSizeS(SSIZE_MAX, +1) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 242, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 242, __pyx_L1_error)
    }
  }
  #endif
+0243:     assert SubSizeS(SSIZE_MIN,  0) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MIN, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 243, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 243, __pyx_L1_error)
    }
  }
  #endif
+0244:     assert SubSizeS(SSIZE_MIN, -1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 244, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 244, __pyx_L1_error)
    }
  }
  #endif
+0245:     assert SubSizeS(SSIZE_MAX, SSIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MAX, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 245, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 245, __pyx_L1_error)
    }
  }
  #endif
+0246:     assert SubSizeS(SSIZE_MIN, SSIZE_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MIN, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 246, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 246, __pyx_L1_error)
    }
  }
  #endif
 0247: 
+0248:     with pytest.raises(OverflowError): SubSizeS( 0, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 248, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 248, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 248, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 248, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 248, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 248, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(0, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 248, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 248, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 248, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 248, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 248, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 248, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 248, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0249:     with pytest.raises(OverflowError): SubSizeS(+1, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 249, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 249, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 249, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 249, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(1, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 249, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 249, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 249, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 249, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 249, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 249, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 249, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0250:     with pytest.raises(OverflowError): SubSizeS(SSIZE_MAX, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 250, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 250, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 250, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 250, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MAX, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 250, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 250, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 250, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 250, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 250, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 250, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 250, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0251:     with pytest.raises(OverflowError): SubSizeS(SSIZE_MIN, +1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 251, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 251, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 251, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 251, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 251, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MIN, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 251, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 251, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 251, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 251, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 251, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 251, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 251, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0252:     with pytest.raises(OverflowError): SubSizeS(SSIZE_MAX, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 252, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 252, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 252, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MAX, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 252, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 252, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 252, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 252, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 252, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 252, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0253:     with pytest.raises(OverflowError): SubSizeS(SSIZE_MIN, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 253, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 253, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 253, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 253, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 253, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 253, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubSizeS(SSIZE_MIN, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 253, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckSubSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 253, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 253, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 253, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 253, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 253, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 253, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
 0254: 
 0255: 
+0256: def test_CheckMulSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_19test_CheckMulSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_18test_CheckMulSizeS[] = "test_CheckMulSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_19test_CheckMulSizeS = {"test_CheckMulSizeS", (PyCFunction)__pyx_pw_7_test_c_19test_CheckMulSizeS, METH_NOARGS, __pyx_doc_7_test_c_18test_CheckMulSizeS};
static PyObject *__pyx_pw_7_test_c_19test_CheckMulSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_CheckMulSizeS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_18test_CheckMulSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_18test_CheckMulSizeS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_CheckMulSizeS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_19test_CheckMulSizeS, 0, __pyx_n_s_test_CheckMulSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__136)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_CheckMulSizeS, __pyx_t_1) < 0) __PYX_ERR(0, 256, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__136 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_CheckMulSizeS, 256, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__136)) __PYX_ERR(0, 256, __pyx_L1_error)
+0257:     assert MulSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(0, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 257, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 257, __pyx_L1_error)
    }
  }
  #endif
+0258:     assert MulSizeS( 0, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(0, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 258, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 258, __pyx_L1_error)
    }
  }
  #endif
+0259:     assert MulSizeS(+1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(1, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 259, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 259, __pyx_L1_error)
    }
  }
  #endif
+0260:     assert MulSizeS(+1, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(1, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 260, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 260, __pyx_L1_error)
    }
  }
  #endif
+0261:     assert MulSizeS( 0, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(0, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 261, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 261, __pyx_L1_error)
    }
  }
  #endif
+0262:     assert MulSizeS(-1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-1L, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 262, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 262, __pyx_L1_error)
    }
  }
  #endif
+0263:     assert MulSizeS(-1, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-1L, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 263, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 263, __pyx_L1_error)
    }
  }
  #endif
+0264:     assert MulSizeS( 0, SSIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(0, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 264, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 264, __pyx_L1_error)
    }
  }
  #endif
+0265:     assert MulSizeS(+1, SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(1, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 265, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 265, __pyx_L1_error)
    }
  }
  #endif
+0266:     assert MulSizeS(-1, SSIZE_MAX) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-1L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 266, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 266, __pyx_L1_error)
    }
  }
  #endif
+0267:     assert MulSizeS( 0, SSIZE_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(0, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 267, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 267, __pyx_L1_error)
    }
  }
  #endif
+0268:     assert MulSizeS(+1, SSIZE_MIN) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(1, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 268, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 268, __pyx_L1_error)
    }
  }
  #endif
+0269:     assert MulSizeS(SSIZE_MAX,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 269, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 269, __pyx_L1_error)
    }
  }
  #endif
+0270:     assert MulSizeS(SSIZE_MAX, +1) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 270, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 270, __pyx_L1_error)
    }
  }
  #endif
+0271:     assert MulSizeS(SSIZE_MAX, -1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 271, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 271, __pyx_L1_error)
    }
  }
  #endif
+0272:     assert MulSizeS(SSIZE_MIN,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MIN, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 272, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 272, __pyx_L1_error)
    }
  }
  #endif
+0273:     assert MulSizeS(SSIZE_MIN, +1) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MIN, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 273, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 273, __pyx_L1_error)
    }
  }
  #endif
 0274: 
+0275:     with pytest.raises(OverflowError): MulSizeS(-1, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 275, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 275, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 275, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-1L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 275, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 275, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 275, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 275, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 275, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 275, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 275, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0276:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MAX, +2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 276, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 276, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 276, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 276, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 276, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 276, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, 2); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 276, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 276, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 276, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 276, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 276, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 276, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 276, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0277:     with pytest.raises(OverflowError): MulSizeS(+2, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 277, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(2, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 277, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 277, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 277, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 277, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 277, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 277, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 277, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0278:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MAX, -2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 278, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 278, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, -2L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 278, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 278, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 278, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 278, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 278, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 278, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 278, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0279:     with pytest.raises(OverflowError): MulSizeS(-2, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 279, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 279, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 279, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 279, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 279, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 279, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-2L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 279, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 279, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 279, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 279, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 279, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 279, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 279, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0280:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MAX, SSIZE_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 280, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 280, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 280, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 280, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MAX, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 280, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 280, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 280, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 280, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 280, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 280, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 280, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
+0281:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MIN, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L87_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L87_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 281, __pyx_L91_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L96_try_end;
        __pyx_L91_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 281, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 281, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 281, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 281, __pyx_L93_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 281, __pyx_L93_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L92_exception_handled;
        }
        __pyx_L93_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L92_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L96_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 281, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L90;
      }
      __pyx_L90:;
    }
    goto __pyx_L100;
    __pyx_L87_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L100:;
  }
+0282:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MIN, +2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 282, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 282, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 282, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 282, __pyx_L101_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 282, __pyx_L101_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MIN, 2); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 282, __pyx_L105_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L110_try_end;
        __pyx_L105_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 282, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 282, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 282, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 282, __pyx_L107_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 282, __pyx_L107_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L106_exception_handled;
        }
        __pyx_L107_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L106_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L110_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 282, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L104;
      }
      __pyx_L104:;
    }
    goto __pyx_L114;
    __pyx_L101_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L114:;
  }
+0283:     with pytest.raises(OverflowError): MulSizeS(+2, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 283, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 283, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 283, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 283, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 283, __pyx_L115_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 283, __pyx_L115_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(2, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 283, __pyx_L119_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L124_try_end;
        __pyx_L119_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 283, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 283, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 283, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 283, __pyx_L121_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 283, __pyx_L121_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L120_exception_handled;
        }
        __pyx_L121_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L120_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L124_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 283, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L118;
      }
      __pyx_L118:;
    }
    goto __pyx_L128;
    __pyx_L115_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L128:;
  }
+0284:     with pytest.raises(OverflowError): MulSizeS(SSIZE_MIN, -2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 284, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 284, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 284, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 284, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 284, __pyx_L129_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 284, __pyx_L129_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(SSIZE_MIN, -2L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 284, __pyx_L133_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L138_try_end;
        __pyx_L133_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 284, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 284, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 284, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 284, __pyx_L135_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 284, __pyx_L135_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L134_exception_handled;
        }
        __pyx_L135_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L134_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L138_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 284, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L132;
      }
      __pyx_L132:;
    }
    goto __pyx_L142;
    __pyx_L129_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L142:;
  }
+0285:     with pytest.raises(OverflowError): MulSizeS(-2, SSIZE_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L143_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 285, __pyx_L143_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulSizeS(-2L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 285, __pyx_L147_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L152_try_end;
        __pyx_L147_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_CheckMulSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 285, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 285, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 285, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 285, __pyx_L149_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 285, __pyx_L149_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L148_exception_handled;
        }
        __pyx_L149_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L148_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L152_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 285, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L146;
      }
      __pyx_L146:;
    }
    goto __pyx_L156;
    __pyx_L143_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L156:;
  }
 0286: 
 0287: 
 0288: # =====================================================================================================================
 0289: 
+0290: def test_AddAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_21test_AddAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_20test_AddAddrU[] = "test_AddAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_21test_AddAddrU = {"test_AddAddrU", (PyCFunction)__pyx_pw_7_test_c_21test_AddAddrU, METH_NOARGS, __pyx_doc_7_test_c_20test_AddAddrU};
static PyObject *__pyx_pw_7_test_c_21test_AddAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddAddrU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_20test_AddAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_20test_AddAddrU(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddAddrU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_AddAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_21test_AddAddrU, 0, __pyx_n_s_test_AddAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__137)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddAddrU, __pyx_t_1) < 0) __PYX_ERR(0, 290, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__137 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddAddrU, 290, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__137)) __PYX_ERR(0, 290, __pyx_L1_error)
+0291:     assert AddAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(0, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 291, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 291, __pyx_L1_error)
    }
  }
  #endif
+0292:     assert AddAddrU(0, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(0, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 292, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 292, __pyx_L1_error)
    }
  }
  #endif
+0293:     assert AddAddrU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(1, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 293, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 293, __pyx_L1_error)
    }
  }
  #endif
+0294:     assert AddAddrU(1, 1) == 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(1, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 294, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 294, __pyx_L1_error)
    }
  }
  #endif
+0295:     assert AddAddrU(ADDR_MAX, 0) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 295, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 295, __pyx_L1_error)
    }
  }
  #endif
+0296:     assert AddAddrU(0, ADDR_MAX) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 296, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 296, __pyx_L1_error)
    }
  }
  #endif
 0297: 
+0298:     with pytest.raises(OverflowError): AddAddrU(ADDR_MAX, 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 298, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 298, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 298, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 298, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 298, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 298, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(ADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 298, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 298, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 298, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 298, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 298, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 298, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 298, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0299:     with pytest.raises(OverflowError): AddAddrU(1, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 299, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 299, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 299, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 299, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 299, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 299, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(1, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 299, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 299, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 299, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 299, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 299, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 299, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 299, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0300:     with pytest.raises(OverflowError): AddAddrU(ADDR_MAX, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 300, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 300, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 300, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 300, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 300, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 300, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 300, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 300, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 300, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 300, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 300, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 300, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 300, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
 0301: 
 0302: 
+0303: def test_SubAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_23test_SubAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_22test_SubAddrU[] = "test_SubAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_23test_SubAddrU = {"test_SubAddrU", (PyCFunction)__pyx_pw_7_test_c_23test_SubAddrU, METH_NOARGS, __pyx_doc_7_test_c_22test_SubAddrU};
static PyObject *__pyx_pw_7_test_c_23test_SubAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubAddrU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_22test_SubAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_22test_SubAddrU(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubAddrU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_SubAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_23test_SubAddrU, 0, __pyx_n_s_test_SubAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__138)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubAddrU, __pyx_t_1) < 0) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__138 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_SubAddrU, 303, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__138)) __PYX_ERR(0, 303, __pyx_L1_error)
+0304:     assert SubAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(0, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 304, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 304, __pyx_L1_error)
    }
  }
  #endif
+0305:     assert SubAddrU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(1, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 305, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 305, __pyx_L1_error)
    }
  }
  #endif
+0306:     assert SubAddrU(1, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(1, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 306, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 306, __pyx_L1_error)
    }
  }
  #endif
+0307:     assert SubAddrU(ADDR_MAX, 0) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 307, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 307, __pyx_L1_error)
    }
  }
  #endif
+0308:     assert SubAddrU(ADDR_MAX, ADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 308, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 308, __pyx_L1_error)
    }
  }
  #endif
 0309: 
+0310:     with pytest.raises(OverflowError): SubAddrU(0, 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 310, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 310, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(0, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 310, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 310, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 310, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 310, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 310, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 310, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 310, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0311:     with pytest.raises(OverflowError): SubAddrU(0, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 311, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 311, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 311, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 311, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 311, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 311, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 311, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 311, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 311, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 311, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 311, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 311, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 311, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0312:     with pytest.raises(OverflowError): SubAddrU(ADDR_MAX - 1, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 312, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 312, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 312, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 312, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 312, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 312, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrU((ADDR_MAX - 1), ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 312, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 312, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 312, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 312, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 312, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 312, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 312, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
 0313: 
 0314: 
+0315: def test_MulAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_25test_MulAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_24test_MulAddrU[] = "test_MulAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_25test_MulAddrU = {"test_MulAddrU", (PyCFunction)__pyx_pw_7_test_c_25test_MulAddrU, METH_NOARGS, __pyx_doc_7_test_c_24test_MulAddrU};
static PyObject *__pyx_pw_7_test_c_25test_MulAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulAddrU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_24test_MulAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_24test_MulAddrU(CYTHON_UNUSED PyObject *__pyx_self) {
  addr_t __pyx_v_ADDR_MAX_SQRT;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulAddrU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_MulAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__139 = PyTuple_Pack(1, __pyx_n_s_ADDR_MAX_SQRT); if (unlikely(!__pyx_tuple__139)) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__139);
  __Pyx_GIVEREF(__pyx_tuple__139);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_25test_MulAddrU, 0, __pyx_n_s_test_MulAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__140)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulAddrU, __pyx_t_1) < 0) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__140 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__139, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_MulAddrU, 315, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__140)) __PYX_ERR(0, 315, __pyx_L1_error)
+0316:     cdef addr_t ADDR_MAX_SQRT = (<addr_t>1 << ((8 * sizeof(addr_t)) // 2)) - 1
  __pyx_v_ADDR_MAX_SQRT = ((((addr_t)1) << ((8 * (sizeof(addr_t))) / 2)) - 1);
+0317:     assert ADDR_MAX_SQRT > 0, ADDR_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!((__pyx_v_ADDR_MAX_SQRT > 0) != 0))) {
      __pyx_t_1 = __Pyx_PyInt_From_uint_fast64_t(__pyx_v_ADDR_MAX_SQRT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 317, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 317, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __pyx_t_1 = 0;
      PyErr_SetObject(PyExc_AssertionError, __pyx_t_2);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __PYX_ERR(0, 317, __pyx_L1_error)
    }
  }
  #endif
 0318: 
+0319:     assert MulAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(0, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 319, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 319, __pyx_L1_error)
    }
  }
  #endif
+0320:     assert MulAddrU(0, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(0, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 320, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 320, __pyx_L1_error)
    }
  }
  #endif
+0321:     assert MulAddrU(1, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(1, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 321, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 321, __pyx_L1_error)
    }
  }
  #endif
+0322:     assert MulAddrU(1, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(1, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 322, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 322, __pyx_L1_error)
    }
  }
  #endif
+0323:     assert MulAddrU(0, ADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 323, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 323, __pyx_L1_error)
    }
  }
  #endif
+0324:     assert MulAddrU(1, ADDR_MAX) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(1, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 324, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 324, __pyx_L1_error)
    }
  }
  #endif
+0325:     assert MulAddrU(ADDR_MAX, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 325, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 325, __pyx_L1_error)
    }
  }
  #endif
+0326:     assert MulAddrU(ADDR_MAX, 1) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(ADDR_MAX, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 326, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 326, __pyx_L1_error)
    }
  }
  #endif
+0327:     assert MulAddrU(ADDR_MAX_SQRT, ADDR_MAX_SQRT) == ADDR_MAX - ADDR_MAX_SQRT - ADDR_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(__pyx_v_ADDR_MAX_SQRT, __pyx_v_ADDR_MAX_SQRT); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 327, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == ((ADDR_MAX - __pyx_v_ADDR_MAX_SQRT) - __pyx_v_ADDR_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 327, __pyx_L1_error)
    }
  }
  #endif
+0328:     assert MulAddrU(ADDR_MAX_SQRT + 1, ADDR_MAX_SQRT) == ADDR_MAX - ADDR_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU((__pyx_v_ADDR_MAX_SQRT + 1), __pyx_v_ADDR_MAX_SQRT); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 328, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == (ADDR_MAX - __pyx_v_ADDR_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 328, __pyx_L1_error)
    }
  }
  #endif
+0329:     assert MulAddrU(ADDR_MAX_SQRT, ADDR_MAX_SQRT + 1) == ADDR_MAX - ADDR_MAX_SQRT
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(__pyx_v_ADDR_MAX_SQRT, (__pyx_v_ADDR_MAX_SQRT + 1)); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 329, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == (ADDR_MAX - __pyx_v_ADDR_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 329, __pyx_L1_error)
    }
  }
  #endif
 0330: 
+0331:     with pytest.raises(OverflowError): MulAddrU(ADDR_MAX, 2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_1)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_1, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 331, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(ADDR_MAX, 2); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 331, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_1) < 0) __PYX_ERR(0, 331, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 331, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 331, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 331, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_1);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_1);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_1 = 0; 
            __PYX_ERR(0, 331, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 331, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0332:     with pytest.raises(OverflowError): MulAddrU(2, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 332, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 332, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 332, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 332, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 332, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 332, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(2, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 332, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 332, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_1, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 332, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 332, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 332, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_1);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_2, __pyx_t_4);
            __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 332, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 332, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0333:     with pytest.raises(OverflowError): MulAddrU(ADDR_MAX, ADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 333, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 333, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 333, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 333, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 333, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_1 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 333, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 333, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 333, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 333, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 333, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 333, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_1);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_1, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 333, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 333, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0334:     with pytest.raises(OverflowError): MulAddrU(ADDR_MAX_SQRT + 1, ADDR_MAX_SQRT + 1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 334, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 334, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_1)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_1, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 334, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 334, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 334, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 334, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_3 = __pyx_f_11cbytesparse_2_c_MulAddrU((__pyx_v_ADDR_MAX_SQRT + 1), (__pyx_v_ADDR_MAX_SQRT + 1)); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 334, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrU", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_1) < 0) __PYX_ERR(0, 334, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 334, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 334, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 334, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_1);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_1);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_1 = 0; 
            __PYX_ERR(0, 334, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 334, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
 0335: 
 0336: 
+0337: def test_AddrToSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_27test_AddrToSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_26test_AddrToSizeU[] = "test_AddrToSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_27test_AddrToSizeU = {"test_AddrToSizeU", (PyCFunction)__pyx_pw_7_test_c_27test_AddrToSizeU, METH_NOARGS, __pyx_doc_7_test_c_26test_AddrToSizeU};
static PyObject *__pyx_pw_7_test_c_27test_AddrToSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddrToSizeU (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_26test_AddrToSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_26test_AddrToSizeU(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddrToSizeU", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_AddrToSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_27test_AddrToSizeU, 0, __pyx_n_s_test_AddrToSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__141)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddrToSizeU, __pyx_t_1) < 0) __PYX_ERR(0, 337, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__141 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddrToSizeU, 337, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__141)) __PYX_ERR(0, 337, __pyx_L1_error)
+0338:     assert AddrToSizeU(0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeU(0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 338, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 338, __pyx_L1_error)
    }
  }
  #endif
+0339:     assert AddrToSizeU(<addr_t>SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeU(((addr_t)SIZE_MAX)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 339, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 339, __pyx_L1_error)
    }
  }
  #endif
 0340: 
+0341:     if SIZE_MAX < ADDR_MAX:
  __pyx_t_2 = ((SIZE_MAX < ADDR_MAX) != 0);
  if (__pyx_t_2) {
/* … */
    goto __pyx_L3;
  }
+0342:         with pytest.raises(OverflowError): AddrToSizeU(AddAddrU(SIZE_MAX, 1))
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 342, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_builtin_OverflowError);
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 342, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 342, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 342, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_AddAddrU(SIZE_MAX, 1); if (unlikely(__pyx_t_11 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 342, __pyx_L8_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeU(__pyx_t_11); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 342, __pyx_L8_error)
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L13_try_end;
          __pyx_L8_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_AddrToSizeU", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 342, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 342, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 342, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_2 < 0) __PYX_ERR(0, 342, __pyx_L10_except_error)
            __pyx_t_13 = ((!(__pyx_t_2 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_5, __pyx_t_4);
              __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 342, __pyx_L10_except_error)
            }
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L9_exception_handled;
          }
          __pyx_L10_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L1_error;
          __pyx_L9_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L13_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 342, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L7;
        }
        __pyx_L7:;
      }
      goto __pyx_L17;
      __pyx_L4_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L1_error;
      __pyx_L17:;
    }
 0343:     else:
+0344:         assert AddrToSizeU(ADDR_MAX) == <size_t>ADDR_MAX
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeU(ADDR_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 344, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((size_t)ADDR_MAX)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 344, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L3:;
 0345: 
 0346: 
 0347: # ---------------------------------------------------------------------------------------------------------------------
 0348: 
+0349: def test_AddAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_29test_AddAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_28test_AddAddrS[] = "test_AddAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_29test_AddAddrS = {"test_AddAddrS", (PyCFunction)__pyx_pw_7_test_c_29test_AddAddrS, METH_NOARGS, __pyx_doc_7_test_c_28test_AddAddrS};
static PyObject *__pyx_pw_7_test_c_29test_AddAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddAddrS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_28test_AddAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_28test_AddAddrS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddAddrS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_29test_AddAddrS, 0, __pyx_n_s_test_AddAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__142)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddAddrS, __pyx_t_1) < 0) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__142 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddAddrS, 349, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__142)) __PYX_ERR(0, 349, __pyx_L1_error)
+0350:     assert AddAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(0, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 350, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 350, __pyx_L1_error)
    }
  }
  #endif
+0351:     assert AddAddrS( 0, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 351, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 351, __pyx_L1_error)
    }
  }
  #endif
+0352:     assert AddAddrS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(1, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 352, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 352, __pyx_L1_error)
    }
  }
  #endif
+0353:     assert AddAddrS(+1, +1) == +2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 353, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 353, __pyx_L1_error)
    }
  }
  #endif
+0354:     assert AddAddrS( 0, -1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 354, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 354, __pyx_L1_error)
    }
  }
  #endif
+0355:     assert AddAddrS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(-1L, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 355, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 355, __pyx_L1_error)
    }
  }
  #endif
+0356:     assert AddAddrS(-1, -1) == -2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 356, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -2L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 356, __pyx_L1_error)
    }
  }
  #endif
+0357:     assert AddAddrS(SADDR_MAX,  0) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 357, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 357, __pyx_L1_error)
    }
  }
  #endif
+0358:     assert AddAddrS(SADDR_MAX, -1) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MAX, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 358, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 358, __pyx_L1_error)
    }
  }
  #endif
+0359:     assert AddAddrS(SADDR_MIN,  0) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MIN, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 359, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 359, __pyx_L1_error)
    }
  }
  #endif
+0360:     assert AddAddrS(SADDR_MIN, +1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MIN, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 360, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 360, __pyx_L1_error)
    }
  }
  #endif
+0361:     assert AddAddrS( 0, SADDR_MAX) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(0, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 361, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 361, __pyx_L1_error)
    }
  }
  #endif
+0362:     assert AddAddrS( 0, SADDR_MIN) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(0, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 362, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 362, __pyx_L1_error)
    }
  }
  #endif
+0363:     assert AddAddrS(-1, SADDR_MAX) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(-1L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 363, __pyx_L1_error)
    }
  }
  #endif
+0364:     assert AddAddrS(+1, SADDR_MIN) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(1, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 364, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 364, __pyx_L1_error)
    }
  }
  #endif
+0365:     assert AddAddrS(SADDR_MAX, SADDR_MIN) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MAX, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 365, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 365, __pyx_L1_error)
    }
  }
  #endif
+0366:     assert AddAddrS(SADDR_MIN, SADDR_MAX) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MIN, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 366, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 366, __pyx_L1_error)
    }
  }
  #endif
 0367: 
+0368:     with pytest.raises(OverflowError): AddAddrS(SADDR_MAX, +1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 368, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 368, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 368, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 368, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 368, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 368, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 368, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 368, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 368, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 368, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0369:     with pytest.raises(OverflowError): AddAddrS(+1, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 369, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 369, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 369, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 369, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(1, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 369, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 369, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 369, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 369, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 369, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 369, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 369, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0370:     with pytest.raises(OverflowError): AddAddrS(SADDR_MAX, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 370, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 370, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 370, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 370, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MAX, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 370, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 370, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 370, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 370, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 370, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 370, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 370, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0371:     with pytest.raises(OverflowError): AddAddrS(SADDR_MIN, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 371, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 371, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 371, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MIN, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 371, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 371, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 371, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 371, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 371, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 371, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 371, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0372:     with pytest.raises(OverflowError): AddAddrS(-1, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 372, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 372, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 372, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 372, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(-1L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 372, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 372, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 372, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 372, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 372, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 372, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 372, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0373:     with pytest.raises(OverflowError): AddAddrS(SADDR_MIN, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 373, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 373, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 373, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 373, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 373, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 373, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddAddrS(SADDR_MIN, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 373, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_AddAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 373, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 373, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 373, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 373, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 373, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 373, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
 0374: 
 0375: 
+0376: def test_SubAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_31test_SubAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_30test_SubAddrS[] = "test_SubAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_31test_SubAddrS = {"test_SubAddrS", (PyCFunction)__pyx_pw_7_test_c_31test_SubAddrS, METH_NOARGS, __pyx_doc_7_test_c_30test_SubAddrS};
static PyObject *__pyx_pw_7_test_c_31test_SubAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubAddrS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_30test_SubAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_30test_SubAddrS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_SubAddrS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_31test_SubAddrS, 0, __pyx_n_s_test_SubAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__143)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 376, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubAddrS, __pyx_t_1) < 0) __PYX_ERR(0, 376, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__143 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_SubAddrS, 376, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__143)) __PYX_ERR(0, 376, __pyx_L1_error)
+0377:     assert SubAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(0, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 377, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 377, __pyx_L1_error)
    }
  }
  #endif
+0378:     assert SubAddrS( 0, +1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 378, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 378, __pyx_L1_error)
    }
  }
  #endif
+0379:     assert SubAddrS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(1, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 379, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 379, __pyx_L1_error)
    }
  }
  #endif
+0380:     assert SubAddrS(+1, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 380, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 380, __pyx_L1_error)
    }
  }
  #endif
+0381:     assert SubAddrS( 0, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 381, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 381, __pyx_L1_error)
    }
  }
  #endif
+0382:     assert SubAddrS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(-1L, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 382, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 382, __pyx_L1_error)
    }
  }
  #endif
+0383:     assert SubAddrS(-1, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 383, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 383, __pyx_L1_error)
    }
  }
  #endif
+0384:     assert SubAddrS( 0, SADDR_MAX) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(0, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 384, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 384, __pyx_L1_error)
    }
  }
  #endif
+0385:     assert SubAddrS(+1, SADDR_MAX) == SADDR_MIN + 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(1, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 385, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 2)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 385, __pyx_L1_error)
    }
  }
  #endif
+0386:     assert SubAddrS(-1, SADDR_MAX) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(-1L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 386, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 386, __pyx_L1_error)
    }
  }
  #endif
+0387:     assert SubAddrS(-1, SADDR_MIN) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(-1L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 387, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 387, __pyx_L1_error)
    }
  }
  #endif
+0388:     assert SubAddrS(SADDR_MAX,  0) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 388, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 388, __pyx_L1_error)
    }
  }
  #endif
+0389:     assert SubAddrS(SADDR_MAX, +1) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 389, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 389, __pyx_L1_error)
    }
  }
  #endif
+0390:     assert SubAddrS(SADDR_MIN,  0) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MIN, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 390, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 390, __pyx_L1_error)
    }
  }
  #endif
+0391:     assert SubAddrS(SADDR_MIN, -1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MIN, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 391, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 391, __pyx_L1_error)
    }
  }
  #endif
+0392:     assert SubAddrS(SADDR_MAX, SADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MAX, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 392, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 392, __pyx_L1_error)
    }
  }
  #endif
+0393:     assert SubAddrS(SADDR_MIN, SADDR_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MIN, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 393, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 393, __pyx_L1_error)
    }
  }
  #endif
 0394: 
+0395:     with pytest.raises(OverflowError): SubAddrS( 0, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 395, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 395, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 395, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 395, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 395, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 395, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(0, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 395, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 395, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 395, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 395, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 395, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 395, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 395, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0396:     with pytest.raises(OverflowError): SubAddrS(+1, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 396, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 396, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 396, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 396, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(1, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 396, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 396, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 396, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 396, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 396, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 396, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 396, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0397:     with pytest.raises(OverflowError): SubAddrS(SADDR_MAX, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 397, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 397, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 397, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 397, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 397, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 397, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MAX, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 397, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 397, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 397, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 397, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 397, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 397, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 397, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0398:     with pytest.raises(OverflowError): SubAddrS(SADDR_MIN, +1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 398, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 398, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 398, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 398, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 398, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 398, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MIN, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 398, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 398, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 398, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 398, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 398, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 398, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 398, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0399:     with pytest.raises(OverflowError): SubAddrS(SADDR_MAX, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 399, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 399, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 399, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 399, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MAX, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 399, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 399, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 399, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 399, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 399, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 399, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 399, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0400:     with pytest.raises(OverflowError): SubAddrS(SADDR_MIN, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 400, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 400, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 400, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 400, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 400, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 400, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_SubAddrS(SADDR_MIN, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 400, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_SubAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 400, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 400, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 400, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 400, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 400, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 400, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
 0401: 
 0402: 
+0403: def test_MulAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_33test_MulAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_32test_MulAddrS[] = "test_MulAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_33test_MulAddrS = {"test_MulAddrS", (PyCFunction)__pyx_pw_7_test_c_33test_MulAddrS, METH_NOARGS, __pyx_doc_7_test_c_32test_MulAddrS};
static PyObject *__pyx_pw_7_test_c_33test_MulAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulAddrS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_32test_MulAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_32test_MulAddrS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_MulAddrS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_33test_MulAddrS, 0, __pyx_n_s_test_MulAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__144)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 403, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulAddrS, __pyx_t_1) < 0) __PYX_ERR(0, 403, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__144 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_MulAddrS, 403, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__144)) __PYX_ERR(0, 403, __pyx_L1_error)
+0404:     assert MulAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(0, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 404, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 404, __pyx_L1_error)
    }
  }
  #endif
+0405:     assert MulAddrS( 0, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 405, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 405, __pyx_L1_error)
    }
  }
  #endif
+0406:     assert MulAddrS(+1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(1, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 406, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 406, __pyx_L1_error)
    }
  }
  #endif
+0407:     assert MulAddrS(+1, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 407, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 407, __pyx_L1_error)
    }
  }
  #endif
+0408:     assert MulAddrS( 0, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 408, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 408, __pyx_L1_error)
    }
  }
  #endif
+0409:     assert MulAddrS(-1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-1L, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 409, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 409, __pyx_L1_error)
    }
  }
  #endif
+0410:     assert MulAddrS(-1, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 410, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 410, __pyx_L1_error)
    }
  }
  #endif
+0411:     assert MulAddrS( 0, SADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(0, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 411, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 411, __pyx_L1_error)
    }
  }
  #endif
+0412:     assert MulAddrS(+1, SADDR_MAX) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(1, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 412, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 412, __pyx_L1_error)
    }
  }
  #endif
+0413:     assert MulAddrS(-1, SADDR_MAX) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-1L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 413, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 413, __pyx_L1_error)
    }
  }
  #endif
+0414:     assert MulAddrS( 0, SADDR_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(0, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 414, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 414, __pyx_L1_error)
    }
  }
  #endif
+0415:     assert MulAddrS(+1, SADDR_MIN) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(1, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 415, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 415, __pyx_L1_error)
    }
  }
  #endif
+0416:     assert MulAddrS(SADDR_MAX,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 416, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 416, __pyx_L1_error)
    }
  }
  #endif
+0417:     assert MulAddrS(SADDR_MAX, +1) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 417, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 417, __pyx_L1_error)
    }
  }
  #endif
+0418:     assert MulAddrS(SADDR_MAX, -1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 418, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 418, __pyx_L1_error)
    }
  }
  #endif
+0419:     assert MulAddrS(SADDR_MIN,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MIN, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 419, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 419, __pyx_L1_error)
    }
  }
  #endif
+0420:     assert MulAddrS(SADDR_MIN, +1) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MIN, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 420, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 420, __pyx_L1_error)
    }
  }
  #endif
 0421: 
+0422:     with pytest.raises(OverflowError): MulAddrS(-1, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 422, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 422, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 422, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 422, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 422, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 422, __pyx_L3_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-1L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 422, __pyx_L7_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L7_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 422, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 422, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 422, __pyx_L9_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 422, __pyx_L9_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 422, __pyx_L9_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L8_exception_handled;
        }
        __pyx_L9_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L8_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 422, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L6;
      }
      __pyx_L6:;
    }
    goto __pyx_L16;
    __pyx_L3_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L16:;
  }
+0423:     with pytest.raises(OverflowError): MulAddrS(SADDR_MAX, +2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 423, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 423, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 423, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 423, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 423, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 423, __pyx_L17_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, 2); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 423, __pyx_L21_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L26_try_end;
        __pyx_L21_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 423, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 423, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 423, __pyx_L23_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 423, __pyx_L23_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 423, __pyx_L23_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L22_exception_handled;
        }
        __pyx_L23_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L22_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L26_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 423, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L20;
      }
      __pyx_L20:;
    }
    goto __pyx_L30;
    __pyx_L17_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L30:;
  }
+0424:     with pytest.raises(OverflowError): MulAddrS(+2, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 424, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 424, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 424, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 424, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 424, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 424, __pyx_L31_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(2, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 424, __pyx_L35_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L40_try_end;
        __pyx_L35_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 424, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 424, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 424, __pyx_L37_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 424, __pyx_L37_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 424, __pyx_L37_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L36_exception_handled;
        }
        __pyx_L37_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L36_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L40_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 424, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L34;
      }
      __pyx_L34:;
    }
    goto __pyx_L44;
    __pyx_L31_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L44:;
  }
+0425:     with pytest.raises(OverflowError): MulAddrS(SADDR_MAX, -2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 425, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 425, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 425, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 425, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L45_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, -2L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 425, __pyx_L49_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L54_try_end;
        __pyx_L49_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 425, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 425, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 425, __pyx_L51_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 425, __pyx_L51_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 425, __pyx_L51_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L50_exception_handled;
        }
        __pyx_L51_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L50_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L54_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 425, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L48;
      }
      __pyx_L48:;
    }
    goto __pyx_L58;
    __pyx_L45_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L58:;
  }
+0426:     with pytest.raises(OverflowError): MulAddrS(-2, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 426, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 426, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 426, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 426, __pyx_L59_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-2L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 426, __pyx_L63_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L68_try_end;
        __pyx_L63_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 426, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 426, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 426, __pyx_L65_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 426, __pyx_L65_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 426, __pyx_L65_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L64_exception_handled;
        }
        __pyx_L65_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L64_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L68_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 426, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L62;
      }
      __pyx_L62:;
    }
    goto __pyx_L72;
    __pyx_L59_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L72:;
  }
+0427:     with pytest.raises(OverflowError): MulAddrS(SADDR_MAX, SADDR_MAX)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 427, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 427, __pyx_L73_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MAX, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 427, __pyx_L77_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L82_try_end;
        __pyx_L77_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 427, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 427, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 427, __pyx_L79_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 427, __pyx_L79_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 427, __pyx_L79_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L78_exception_handled;
        }
        __pyx_L79_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L78_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L82_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 427, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L76;
      }
      __pyx_L76:;
    }
    goto __pyx_L86;
    __pyx_L73_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L86:;
  }
+0428:     with pytest.raises(OverflowError): MulAddrS(SADDR_MIN, -1)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 428, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 428, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 428, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 428, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 428, __pyx_L87_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 428, __pyx_L87_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MIN, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 428, __pyx_L91_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L96_try_end;
        __pyx_L91_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 428, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 428, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 428, __pyx_L93_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 428, __pyx_L93_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 428, __pyx_L93_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L92_exception_handled;
        }
        __pyx_L93_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L92_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L96_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 428, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L90;
      }
      __pyx_L90:;
    }
    goto __pyx_L100;
    __pyx_L87_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L100:;
  }
+0429:     with pytest.raises(OverflowError): MulAddrS(SADDR_MIN, +2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 429, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 429, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 429, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 429, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 429, __pyx_L101_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 429, __pyx_L101_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MIN, 2); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 429, __pyx_L105_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L110_try_end;
        __pyx_L105_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 429, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 429, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 429, __pyx_L107_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 429, __pyx_L107_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 429, __pyx_L107_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L106_exception_handled;
        }
        __pyx_L107_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L106_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L110_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 429, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L104;
      }
      __pyx_L104:;
    }
    goto __pyx_L114;
    __pyx_L101_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L114:;
  }
+0430:     with pytest.raises(OverflowError): MulAddrS(+2, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 430, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 430, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 430, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 430, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 430, __pyx_L115_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 430, __pyx_L115_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(2, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 430, __pyx_L119_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L124_try_end;
        __pyx_L119_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 430, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 430, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 430, __pyx_L121_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 430, __pyx_L121_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_XGIVEREF(__pyx_t_2);
            __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_2);
            __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
            __PYX_ERR(0, 430, __pyx_L121_except_error)
          }
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L120_exception_handled;
        }
        __pyx_L121_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L120_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L124_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 430, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L118;
      }
      __pyx_L118:;
    }
    goto __pyx_L128;
    __pyx_L115_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L128:;
  }
+0431:     with pytest.raises(OverflowError): MulAddrS(SADDR_MIN, -2)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 431, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_3, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 431, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 431, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L129_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 431, __pyx_L129_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(SADDR_MIN, -2L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 431, __pyx_L133_error)
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L138_try_end;
        __pyx_L133_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 431, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 431, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 431, __pyx_L135_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_12 < 0) __PYX_ERR(0, 431, __pyx_L135_except_error)
          __pyx_t_11 = ((!(__pyx_t_12 != 0)) != 0);
          if (__pyx_t_11) {
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_4);
            __Pyx_XGIVEREF(__pyx_t_3);
            __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_4, __pyx_t_3);
            __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
            __PYX_ERR(0, 431, __pyx_L135_except_error)
          }
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L134_exception_handled;
        }
        __pyx_L135_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L134_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L138_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 431, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        goto __pyx_L132;
      }
      __pyx_L132:;
    }
    goto __pyx_L142;
    __pyx_L129_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L142:;
  }
+0432:     with pytest.raises(OverflowError): MulAddrS(-2, SADDR_MIN)
  /*with:*/ {
    __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_builtin_OverflowError);
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 432, __pyx_L143_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 432, __pyx_L143_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    /*try:*/ {
      {
        /*try:*/ {
          __pyx_t_1 = __pyx_f_11cbytesparse_2_c_MulAddrS(-2L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 432, __pyx_L147_error)
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L152_try_end;
        __pyx_L147_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        /*except:*/ {
          __Pyx_AddTraceback("_test_c.test_MulAddrS", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 432, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 432, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 432, __pyx_L149_except_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (__pyx_t_11 < 0) __PYX_ERR(0, 432, __pyx_L149_except_error)
          __pyx_t_12 = ((!(__pyx_t_11 != 0)) != 0);
          if (__pyx_t_12) {
            __Pyx_GIVEREF(__pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_XGIVEREF(__pyx_t_4);
            __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_2, __pyx_t_4);
            __pyx_t_3 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
            __PYX_ERR(0, 432, __pyx_L149_except_error)
          }
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L148_exception_handled;
        }
        __pyx_L149_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L148_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L152_try_end:;
      }
    }
    /*finally:*/ {
      /*normal exit:*/{
        if (__pyx_t_5) {
          __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple_, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 432, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        goto __pyx_L146;
      }
      __pyx_L146:;
    }
    goto __pyx_L156;
    __pyx_L143_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L156:;
  }
 0433: 
 0434: 
+0435: def test_AddrToSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_35test_AddrToSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_34test_AddrToSizeS[] = "test_AddrToSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_35test_AddrToSizeS = {"test_AddrToSizeS", (PyCFunction)__pyx_pw_7_test_c_35test_AddrToSizeS, METH_NOARGS, __pyx_doc_7_test_c_34test_AddrToSizeS};
static PyObject *__pyx_pw_7_test_c_35test_AddrToSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddrToSizeS (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_34test_AddrToSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_34test_AddrToSizeS(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_AddrToSizeS", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_AddrToSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_35test_AddrToSizeS, 0, __pyx_n_s_test_AddrToSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__145)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddrToSizeS, __pyx_t_1) < 0) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* … */
  __pyx_codeobj__145 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_AddrToSizeS, 435, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__145)) __PYX_ERR(0, 435, __pyx_L1_error)
+0436:     assert AddrToSizeS(0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 436, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 436, __pyx_L1_error)
    }
  }
  #endif
+0437:     assert AddrToSizeS(<saddr_t>SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(((saddr_t)SSIZE_MAX)); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 437, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 437, __pyx_L1_error)
    }
  }
  #endif
 0438: 
+0439:     if SSIZE_MAX < SADDR_MAX:
  __pyx_t_2 = ((SSIZE_MAX < SADDR_MAX) != 0);
  if (__pyx_t_2) {
/* … */
    goto __pyx_L3;
  }
+0440:         with pytest.raises(OverflowError): AddrToSizeS(AddAddrS(SSIZE_MAX, +1))
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 440, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 440, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_builtin_OverflowError);
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 440, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 440, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 440, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 440, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_AddAddrS(SSIZE_MAX, 1); if (unlikely(__pyx_t_11 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 440, __pyx_L8_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(__pyx_t_11); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 440, __pyx_L8_error)
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L13_try_end;
          __pyx_L8_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_AddrToSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 440, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 440, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 440, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_2 < 0) __PYX_ERR(0, 440, __pyx_L10_except_error)
            __pyx_t_13 = ((!(__pyx_t_2 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_5, __pyx_t_4);
              __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 440, __pyx_L10_except_error)
            }
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L9_exception_handled;
          }
          __pyx_L10_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L1_error;
          __pyx_L9_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L13_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 440, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L7;
        }
        __pyx_L7:;
      }
      goto __pyx_L17;
      __pyx_L4_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L1_error;
      __pyx_L17:;
    }
 0441:     else:
+0442:         assert AddrToSizeS(SADDR_MAX) == <ssize_t>SADDR_MAX
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(SADDR_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 442, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((Py_ssize_t)SADDR_MAX)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 442, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L3:;
 0443: 
+0444:     if SSIZE_MIN > SADDR_MIN:
  __pyx_t_13 = ((SSIZE_MIN > SADDR_MIN) != 0);
  if (__pyx_t_13) {
/* … */
    goto __pyx_L18;
  }
+0445:         with pytest.raises(OverflowError): AddrToSizeS(AddAddrS(SSIZE_MIN, -1))
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 445, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 445, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_4 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_5, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_builtin_OverflowError);
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 445, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 445, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_4, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 445, __pyx_L19_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 445, __pyx_L19_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_AddAddrS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_11 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 445, __pyx_L23_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(__pyx_t_11); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 445, __pyx_L23_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L28_try_end;
          __pyx_L23_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_AddrToSizeS", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 445, __pyx_L25_except_error)
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 445, __pyx_L25_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 445, __pyx_L25_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 445, __pyx_L25_except_error)
            __pyx_t_2 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_2) {
              __Pyx_GIVEREF(__pyx_t_4);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_4, __pyx_t_3, __pyx_t_5);
              __pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 445, __pyx_L25_except_error)
            }
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L24_exception_handled;
          }
          __pyx_L25_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          goto __pyx_L1_error;
          __pyx_L24_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          __pyx_L28_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 445, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          }
          goto __pyx_L22;
        }
        __pyx_L22:;
      }
      goto __pyx_L32;
      __pyx_L19_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L1_error;
      __pyx_L32:;
    }
 0446:     else:
+0447:         assert AddrToSizeS(SADDR_MIN) == <ssize_t>SADDR_MIN
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_AddrToSizeS(SADDR_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 447, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((Py_ssize_t)SADDR_MIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 447, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L18:;
 0448: 
 0449: 
 0450: # =====================================================================================================================
 0451: 
+0452: def test_Block_Alloc_Free():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_37test_Block_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_36test_Block_Alloc_Free[] = "test_Block_Alloc_Free()";
static PyMethodDef __pyx_mdef_7_test_c_37test_Block_Alloc_Free = {"test_Block_Alloc_Free", (PyCFunction)__pyx_pw_7_test_c_37test_Block_Alloc_Free, METH_NOARGS, __pyx_doc_7_test_c_36test_Block_Alloc_Free};
static PyObject *__pyx_pw_7_test_c_37test_Block_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Alloc_Free (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_36test_Block_Alloc_Free(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_36test_Block_Alloc_Free(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Alloc_Free", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Alloc_Free", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__146 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__146)) __PYX_ERR(0, 452, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__146);
  __Pyx_GIVEREF(__pyx_tuple__146);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_37test_Block_Alloc_Free, 0, __pyx_n_s_test_Block_Alloc_Free, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__147)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Alloc_Free, __pyx_t_1) < 0) __PYX_ERR(0, 452, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__147 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__146, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Alloc_Free, 452, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__147)) __PYX_ERR(0, 452, __pyx_L1_error)
 0453:     cdef:
+0454:         Block_* block = NULL
  __pyx_v_block = NULL;
 0455: 
+0456:     try:
  /*try:*/ {
+0457:         block = Block_Alloc(0x1234, 0, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Alloc(0x1234, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 457, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0458:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 458, __pyx_L4_error)
      }
    }
    #endif
+0459:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 459, __pyx_L4_error)
      }
    }
    #endif
+0460:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 460, __pyx_L4_error)
      }
    }
    #endif
+0461:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 461, __pyx_L4_error)
      }
    }
    #endif
+0462:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 462, __pyx_L4_error)
      }
    }
    #endif
+0463:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 463, __pyx_L4_error)
      }
    }
    #endif
+0464:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 464, __pyx_L4_error)
      }
    }
    #endif
+0465:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 465, __pyx_L4_error)
      }
    }
    #endif
+0466:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0467: 
+0468:         block = Block_Alloc(0x1234, 0x100, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Alloc(0x1234, 0x100, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 468, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0469:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 469, __pyx_L4_error)
      }
    }
    #endif
+0470:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 470, __pyx_L4_error)
      }
    }
    #endif
+0471:         assert block.allocated == MARGIN + 0x100 + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->allocated == ((MARGIN + 0x100) + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 471, __pyx_L4_error)
      }
    }
    #endif
+0472:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 472, __pyx_L4_error)
      }
    }
    #endif
+0473:         assert block.endex == MARGIN + 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->endex == (MARGIN + 0x100)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 473, __pyx_L4_error)
      }
    }
    #endif
+0474:         assert Block_Length(block) == 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0x100) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 474, __pyx_L4_error)
      }
    }
    #endif
+0475:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 475, __pyx_L4_error)
      }
    }
    #endif
+0476:         assert Block_Endex(block) == 0x1334
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1334) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 476, __pyx_L4_error)
      }
    }
    #endif
+0477:         assert Block_Eq_(block, 0x100, b'\0' * 0x100) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0x100, ((byte_t const *)((char const *)"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 477, __pyx_L4_error)
      }
    }
    #endif
+0478:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 0479: 
 0480:     finally:
+0481:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      }
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ErrRestore(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0482: 
 0483: 
+0484: def test_Block_Create():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_39test_Block_Create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_38test_Block_Create[] = "test_Block_Create()";
static PyMethodDef __pyx_mdef_7_test_c_39test_Block_Create = {"test_Block_Create", (PyCFunction)__pyx_pw_7_test_c_39test_Block_Create, METH_NOARGS, __pyx_doc_7_test_c_38test_Block_Create};
static PyObject *__pyx_pw_7_test_c_39test_Block_Create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Create (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_38test_Block_Create(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_17test_Block_Create_2generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_38test_Block_Create(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create *__pyx_cur_scope;
  PyObject *__pyx_gb_7_test_c_17test_Block_Create_2generator1 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Create", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create *)__pyx_tp_new_7_test_c___pyx_scope_struct_2_test_Block_Create(__pyx_ptype_7_test_c___pyx_scope_struct_2_test_Block_Create, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 484, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_Block_Create", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_17test_Block_Create_2generator1);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__148 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__148)) __PYX_ERR(0, 484, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__148);
  __Pyx_GIVEREF(__pyx_tuple__148);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_39test_Block_Create, 0, __pyx_n_s_test_Block_Create, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__149)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Create, __pyx_t_1) < 0) __PYX_ERR(0, 484, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__149 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__148, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Create, 484, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__149)) __PYX_ERR(0, 484, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create {
  PyObject_HEAD
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data;
  size_t __pyx_v_size;
};

 0485:     cdef:
+0486:         Block_* block = NULL
  __pyx_cur_scope->__pyx_v_block = NULL;
+0487:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __Pyx_GIVEREF(__pyx_v_7_test_c_DATA1);
  __pyx_cur_scope->__pyx_v_data = __pyx_v_7_test_c_DATA1;
+0488:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0489: 
+0490:     try:
  /*try:*/ {
+0491:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 491, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0492:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 492, __pyx_L4_error)
      }
    }
    #endif
+0493:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 493, __pyx_L4_error)
      }
    }
    #endif
+0494:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 494, __pyx_L4_error)
      }
    }
    #endif
+0495:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 495, __pyx_L4_error)
      }
    }
    #endif
+0496:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 496, __pyx_L4_error)
      }
    }
    #endif
+0497:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 497, __pyx_L4_error)
      }
    }
    #endif
+0498:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 498, __pyx_L4_error)
      }
    }
    #endif
+0499:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 499, __pyx_L4_error)
      }
    }
    #endif
+0500:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0501: 
+0502:         block = Block_Create(0x1234, 0, data)
    if (unlikely(__pyx_cur_scope->__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 502, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_cur_scope->__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 502, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 502, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0503:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 503, __pyx_L4_error)
      }
    }
    #endif
+0504:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 504, __pyx_L4_error)
      }
    }
    #endif
+0505:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 505, __pyx_L4_error)
      }
    }
    #endif
+0506:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 506, __pyx_L4_error)
      }
    }
    #endif
+0507:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 507, __pyx_L4_error)
      }
    }
    #endif
+0508:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 508, __pyx_L4_error)
      }
    }
    #endif
+0509:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 509, __pyx_L4_error)
      }
    }
    #endif
+0510:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 510, __pyx_L4_error)
      }
    }
    #endif
+0511:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0512: 
+0513:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_cur_scope->__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 513, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_cur_scope->__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 513, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 513, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0514:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 514, __pyx_L4_error)
      }
    }
    #endif
+0515:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 515, __pyx_L4_error)
      }
    }
    #endif
+0516:         assert block.allocated == size + ((2 * MARGIN) - (size % MARGIN))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(MARGIN == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 516, __pyx_L4_error)
      }
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (__pyx_cur_scope->__pyx_v_size + ((2 * MARGIN) - (__pyx_cur_scope->__pyx_v_size % MARGIN)))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 516, __pyx_L4_error)
      }
    }
    #endif
+0517:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 517, __pyx_L4_error)
      }
    }
    #endif
+0518:         assert block.endex == MARGIN + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == (MARGIN + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 518, __pyx_L4_error)
      }
    }
    #endif
+0519:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 519, __pyx_L4_error)
      }
    }
    #endif
+0520:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 520, __pyx_L4_error)
      }
    }
    #endif
+0521:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 521, __pyx_L4_error)
      }
    }
    #endif
+0522:         assert all(Block_Get__(block, i) == data[i] for i in range(size))
static PyObject *__pyx_pf_7_test_c_17test_Block_Create_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_3_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_3_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_3_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_3_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_3_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 522, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_17test_Block_Create_2generator1, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Block_Create_locals_genexpr, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 522, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Create.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_17test_Block_Create_2generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 522, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_3;
    __pyx_t_4 = __Pyx_PyInt_From_byte_t(__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_block, __pyx_cur_scope->__pyx_v_i)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data)) { __Pyx_RaiseClosureNameError("data"); __PYX_ERR(0, 522, __pyx_L1_error) }
    __pyx_t_5 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data, __pyx_cur_scope->__pyx_v_i, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 522, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 522, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 522, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_8 = ((!__pyx_t_7) != 0);
    if (__pyx_t_8) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_17test_Block_Create_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 522, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 522, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 522, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_3_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_2_test_Block_Create *__pyx_outer_scope;
  size_t __pyx_v_i;
};

+0523:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0524: 
+0525:         with pytest.raises(ValueError, match='null pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 525, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 525, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 525, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_match, __pyx_kp_u_null_pointer) < 0) __PYX_ERR(0, 525, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__2, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 525, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 525, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 525, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_4 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 525, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Create", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 525, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 525, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 525, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 525, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_4);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_4, __pyx_t_3);
              __pyx_t_6 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 525, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 525, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
  }
/* … */
  __pyx_tuple__2 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 525, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__2);
  __Pyx_GIVEREF(__pyx_tuple__2);
+0526:             block = Block_Create(0x1234, size, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 526, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0527: 
 0528:     finally:
+0529:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
        __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0530: 
 0531: 
+0532: def test_Block_Copy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_41test_Block_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_40test_Block_Copy[] = "test_Block_Copy()";
static PyMethodDef __pyx_mdef_7_test_c_41test_Block_Copy = {"test_Block_Copy", (PyCFunction)__pyx_pw_7_test_c_41test_Block_Copy, METH_NOARGS, __pyx_doc_7_test_c_40test_Block_Copy};
static PyObject *__pyx_pw_7_test_c_41test_Block_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Copy (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_40test_Block_Copy(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_15test_Block_Copy_2generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_40test_Block_Copy(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy *__pyx_cur_scope;
  Block_ *__pyx_v_block1;
  PyObject *__pyx_gb_7_test_c_15test_Block_Copy_2generator2 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Copy", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy *)__pyx_tp_new_7_test_c___pyx_scope_struct_4_test_Block_Copy(__pyx_ptype_7_test_c___pyx_scope_struct_4_test_Block_Copy, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 532, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_Block_Copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_15test_Block_Copy_2generator2);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__150 = PyTuple_Pack(7, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__150)) __PYX_ERR(0, 532, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__150);
  __Pyx_GIVEREF(__pyx_tuple__150);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_41test_Block_Copy, 0, __pyx_n_s_test_Block_Copy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__151)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 532, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Copy, __pyx_t_1) < 0) __PYX_ERR(0, 532, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__151 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__150, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Copy, 532, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__151)) __PYX_ERR(0, 532, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy {
  PyObject_HEAD
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data;
  size_t __pyx_v_size;
};

 0533:     cdef:
+0534:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0535:         Block_* block2 = NULL
  __pyx_cur_scope->__pyx_v_block2 = NULL;
+0536:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __Pyx_GIVEREF(__pyx_v_7_test_c_DATA1);
  __pyx_cur_scope->__pyx_v_data = __pyx_v_7_test_c_DATA1;
+0537:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0538:         size_t i
 0539: 
+0540:     try:
  /*try:*/ {
+0541:         block1 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_cur_scope->__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 541, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_cur_scope->__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 541, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 541, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 0542: 
+0543:         block2 = Block_Copy(block1)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 543, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block2 = __pyx_t_2;
+0544:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 544, __pyx_L4_error)
      }
    }
    #endif
+0545:         assert block2 != block1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2 != __pyx_v_block1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 545, __pyx_L4_error)
      }
    }
    #endif
+0546:         assert block2.address == block1.address
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2->address == __pyx_v_block1->address) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 546, __pyx_L4_error)
      }
    }
    #endif
+0547:         assert block2.allocated == block1.allocated
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2->allocated == __pyx_v_block1->allocated) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 547, __pyx_L4_error)
      }
    }
    #endif
+0548:         assert block2.start == block1.start
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2->start == __pyx_v_block1->start) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 548, __pyx_L4_error)
      }
    }
    #endif
+0549:         assert block2.endex == block1.endex
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block2->endex == __pyx_v_block1->endex) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 549, __pyx_L4_error)
      }
    }
    #endif
+0550:         assert Block_Length(block2) == Block_Length(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 550, __pyx_L4_error)
      }
    }
    #endif
+0551:         assert Block_Start(block2) == Block_Start(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 551, __pyx_L4_error)
      }
    }
    #endif
+0552:         assert Block_Endex(block2) == Block_Endex(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 552, __pyx_L4_error)
      }
    }
    #endif
+0553:         assert all(Block_Get__(block2, i) == data[i] for i in range(size))
static PyObject *__pyx_pf_7_test_c_15test_Block_Copy_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_5_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_5_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_5_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_5_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_5_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 553, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_15test_Block_Copy_2generator2, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Block_Copy_locals_genexpr, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Copy.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_15test_Block_Copy_2generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 553, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_3;
    __pyx_t_4 = __Pyx_PyInt_From_byte_t(__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_block2, __pyx_cur_scope->__pyx_v_i)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data)) { __Pyx_RaiseClosureNameError("data"); __PYX_ERR(0, 553, __pyx_L1_error) }
    __pyx_t_5 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data, __pyx_cur_scope->__pyx_v_i, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_8 = ((!__pyx_t_7) != 0);
    if (__pyx_t_8) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_15test_Block_Copy_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 553, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 553, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 553, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 553, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_5_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_4_test_Block_Copy *__pyx_outer_scope;
  size_t __pyx_v_i;
};

+0554:         block2 = Block_Free(block2)
    __pyx_cur_scope->__pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block2);
 0555: 
+0556:         with pytest.raises(ValueError, match='null pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_match, __pyx_kp_u_null_pointer) < 0) __PYX_ERR(0, 556, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__3, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 556, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_4 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 556, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 556, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 556, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 556, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 556, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_4);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_4, __pyx_t_3);
              __pyx_t_6 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 556, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 556, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
  }
/* … */
  __pyx_tuple__3 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 556, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__3);
  __Pyx_GIVEREF(__pyx_tuple__3);
+0557:             block2 = Block_Copy(NULL)
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 557, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block2 = __pyx_t_2;
 0558: 
 0559:     finally:
+0560:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+0561:         block2 = Block_Free(block2)
      __pyx_cur_scope->__pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
/* … */
        __pyx_cur_scope->__pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0562: 
 0563: 
+0564: def test_Block_FromObject():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_43test_Block_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_42test_Block_FromObject[] = "test_Block_FromObject()";
static PyMethodDef __pyx_mdef_7_test_c_43test_Block_FromObject = {"test_Block_FromObject", (PyCFunction)__pyx_pw_7_test_c_43test_Block_FromObject, METH_NOARGS, __pyx_doc_7_test_c_42test_Block_FromObject};
static PyObject *__pyx_pw_7_test_c_43test_Block_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_FromObject (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_42test_Block_FromObject(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_2generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_42test_Block_FromObject(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *__pyx_cur_scope;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_2generator3 = 0;
  PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_5generator4 = 0;
  PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_8generator5 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_FromObject", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *)__pyx_tp_new_7_test_c___pyx_scope_struct_6_test_Block_FromObject(__pyx_ptype_7_test_c___pyx_scope_struct_6_test_Block_FromObject, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 564, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_Block_FromObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XDECREF(__pyx_gb_7_test_c_21test_Block_FromObject_2generator3);
  __Pyx_XDECREF(__pyx_gb_7_test_c_21test_Block_FromObject_5generator4);
  __Pyx_XDECREF(__pyx_gb_7_test_c_21test_Block_FromObject_8generator5);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__152 = PyTuple_Pack(8, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__152)) __PYX_ERR(0, 564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__152);
  __Pyx_GIVEREF(__pyx_tuple__152);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_43test_Block_FromObject, 0, __pyx_n_s_test_Block_FromObject, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__153)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 564, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_FromObject, __pyx_t_1) < 0) __PYX_ERR(0, 564, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__153 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__152, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_FromObject, 564, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__153)) __PYX_ERR(0, 564, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject {
  PyObject_HEAD
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data;
  size_t __pyx_v_size;
};

 0565:     cdef:
+0566:         Block_* block = NULL
  __pyx_cur_scope->__pyx_v_block = NULL;
+0567:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __Pyx_GIVEREF(__pyx_v_7_test_c_DATA1);
  __pyx_cur_scope->__pyx_v_data = __pyx_v_7_test_c_DATA1;
+0568:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
+0569:         str match = 'invalid block data size'
  __Pyx_INCREF(__pyx_kp_u_invalid_block_data_size);
  __pyx_v_match = __pyx_kp_u_invalid_block_data_size;
 0570: 
+0571:     try:
  /*try:*/ {
+0572:         block = Block_FromObject(0x1234, 0x69, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_int_105, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 572, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0573:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 573, __pyx_L4_error)
      }
    }
    #endif
+0574:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 574, __pyx_L4_error)
      }
    }
    #endif
+0575:         assert block.allocated >= 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated >= 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 575, __pyx_L4_error)
      }
    }
    #endif
+0576:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 576, __pyx_L4_error)
      }
    }
    #endif
+0577:         assert block.endex == MARGIN + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == (MARGIN + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 577, __pyx_L4_error)
      }
    }
    #endif
+0578:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 578, __pyx_L4_error)
      }
    }
    #endif
+0579:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 579, __pyx_L4_error)
      }
    }
    #endif
+0580:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 580, __pyx_L4_error)
      }
    }
    #endif
+0581:         assert Block_Get__(block, 0) == 0x69
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_v_block, 0) == 0x69) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 581, __pyx_L4_error)
      }
    }
    #endif
+0582:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0583: 
+0584:         block = Block_FromObject(0x1234, data, True)
    __pyx_t_2 = __pyx_cur_scope->__pyx_v_data;
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 584, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0585:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 585, __pyx_L4_error)
      }
    }
    #endif
+0586:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 586, __pyx_L4_error)
      }
    }
    #endif
+0587:         assert block.allocated >= size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated >= __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 587, __pyx_L4_error)
      }
    }
    #endif
+0588:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 588, __pyx_L4_error)
      }
    }
    #endif
+0589:         assert block.endex == MARGIN + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == (MARGIN + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 589, __pyx_L4_error)
      }
    }
    #endif
+0590:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 590, __pyx_L4_error)
      }
    }
    #endif
+0591:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 591, __pyx_L4_error)
      }
    }
    #endif
+0592:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 592, __pyx_L4_error)
      }
    }
    #endif
+0593:         assert all(Block_Get__(block, i) == data[i] for i in range(size))
static PyObject *__pyx_pf_7_test_c_21test_Block_FromObject_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_7_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_7_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_7_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_7_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_7_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 593, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_21test_Block_FromObject_2generator3, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Block_FromObject_locals_gen, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_2generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 593, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_3;
    __pyx_t_4 = __Pyx_PyInt_From_byte_t(__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_block, __pyx_cur_scope->__pyx_v_i)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data)) { __Pyx_RaiseClosureNameError("data"); __PYX_ERR(0, 593, __pyx_L1_error) }
    __pyx_t_5 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data, __pyx_cur_scope->__pyx_v_i, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_8 = ((!__pyx_t_7) != 0);
    if (__pyx_t_8) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_5generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_pf_7_test_c_21test_Block_FromObject_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 593, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 593, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 593, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 593, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_7_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *__pyx_outer_scope;
  size_t __pyx_v_i;
};

+0594:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0595: 
+0596:         block = Block_FromObject(0x1234, memoryview(data), True)
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 596, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_cur_scope->__pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 596, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 596, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0597:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 597, __pyx_L4_error)
      }
    }
    #endif
+0598:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 598, __pyx_L4_error)
      }
    }
    #endif
+0599:         assert block.allocated >= size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated >= __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 599, __pyx_L4_error)
      }
    }
    #endif
+0600:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 600, __pyx_L4_error)
      }
    }
    #endif
+0601:         assert block.endex == MARGIN + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == (MARGIN + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 601, __pyx_L4_error)
      }
    }
    #endif
+0602:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 602, __pyx_L4_error)
      }
    }
    #endif
+0603:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 603, __pyx_L4_error)
      }
    }
    #endif
+0604:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 604, __pyx_L4_error)
      }
    }
    #endif
+0605:         assert all(Block_Get__(block, i) == data[i] for i in range(size))
static PyObject *__pyx_pf_7_test_c_21test_Block_FromObject_3genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_8_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_8_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_8_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_8_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_8_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 605, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_21test_Block_FromObject_5generator4, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Block_FromObject_locals_gen, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 605, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_5generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 605, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_3;
    __pyx_t_4 = __Pyx_PyInt_From_byte_t(__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_block, __pyx_cur_scope->__pyx_v_i)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 605, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data)) { __Pyx_RaiseClosureNameError("data"); __PYX_ERR(0, 605, __pyx_L1_error) }
    __pyx_t_5 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data, __pyx_cur_scope->__pyx_v_i, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 605, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 605, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 605, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_8 = ((!__pyx_t_7) != 0);
    if (__pyx_t_8) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_8generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_pf_7_test_c_21test_Block_FromObject_3genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 605, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 605, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 605, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 605, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_8_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *__pyx_outer_scope;
  size_t __pyx_v_i;
};

+0606:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0607: 
+0608:         block = Block_FromObject(0x1234, bytearray(data), True)
    __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_cur_scope->__pyx_v_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 608, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 608, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0609:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 609, __pyx_L4_error)
      }
    }
    #endif
+0610:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 610, __pyx_L4_error)
      }
    }
    #endif
+0611:         assert block.allocated >= size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated >= __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 611, __pyx_L4_error)
      }
    }
    #endif
+0612:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 612, __pyx_L4_error)
      }
    }
    #endif
+0613:         assert block.endex == MARGIN + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == (MARGIN + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 613, __pyx_L4_error)
      }
    }
    #endif
+0614:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 614, __pyx_L4_error)
      }
    }
    #endif
+0615:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 615, __pyx_L4_error)
      }
    }
    #endif
+0616:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 616, __pyx_L4_error)
      }
    }
    #endif
+0617:         assert all(Block_Get__(block, i) == data[i] for i in range(size))
static PyObject *__pyx_pf_7_test_c_21test_Block_FromObject_6genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_9_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_9_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_9_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_9_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_9_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 617, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_21test_Block_FromObject_8generator5, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Block_FromObject_locals_gen, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_21test_Block_FromObject_8generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 617, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_i = __pyx_t_3;
    __pyx_t_4 = __Pyx_PyInt_From_byte_t(__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_block, __pyx_cur_scope->__pyx_v_i)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data)) { __Pyx_RaiseClosureNameError("data"); __PYX_ERR(0, 617, __pyx_L1_error) }
    __pyx_t_5 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_data, __pyx_cur_scope->__pyx_v_i, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 617, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_8 = ((!__pyx_t_7) != 0);
    if (__pyx_t_8) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_21test_Block_FromObject_6genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 617, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 617, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 617, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 617, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_9_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_6_test_Block_FromObject *__pyx_outer_scope;
  size_t __pyx_v_i;
};

+0618:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0619: 
+0620:         block = Block_FromObject(0x1234, b'', False)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_kp_b__4, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 620, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0621:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 621, __pyx_L4_error)
      }
    }
    #endif
+0622:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 622, __pyx_L4_error)
      }
    }
    #endif
+0623:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 623, __pyx_L4_error)
      }
    }
    #endif
+0624:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 624, __pyx_L4_error)
      }
    }
    #endif
+0625:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 625, __pyx_L4_error)
      }
    }
    #endif
+0626:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 626, __pyx_L4_error)
      }
    }
    #endif
+0627:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 627, __pyx_L4_error)
      }
    }
    #endif
+0628:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 628, __pyx_L4_error)
      }
    }
    #endif
+0629:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0630: 
+0631:         block = Block_FromObject(0x1234, memoryview(b''), False)
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 631, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 631, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 631, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
/* … */
  __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_b__4); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__5);
  __Pyx_GIVEREF(__pyx_tuple__5);
+0632:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 632, __pyx_L4_error)
      }
    }
    #endif
+0633:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 633, __pyx_L4_error)
      }
    }
    #endif
+0634:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 634, __pyx_L4_error)
      }
    }
    #endif
+0635:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 635, __pyx_L4_error)
      }
    }
    #endif
+0636:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 636, __pyx_L4_error)
      }
    }
    #endif
+0637:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 637, __pyx_L4_error)
      }
    }
    #endif
+0638:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 638, __pyx_L4_error)
      }
    }
    #endif
+0639:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 639, __pyx_L4_error)
      }
    }
    #endif
+0640:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0641: 
+0642:         block = Block_FromObject(0x1234, bytearray(b''), False)
    __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)(&PyByteArray_Type)), __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 642, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 642, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0643:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 643, __pyx_L4_error)
      }
    }
    #endif
+0644:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 644, __pyx_L4_error)
      }
    }
    #endif
+0645:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 645, __pyx_L4_error)
      }
    }
    #endif
+0646:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 646, __pyx_L4_error)
      }
    }
    #endif
+0647:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 647, __pyx_L4_error)
      }
    }
    #endif
+0648:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 648, __pyx_L4_error)
      }
    }
    #endif
+0649:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 649, __pyx_L4_error)
      }
    }
    #endif
+0650:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 650, __pyx_L4_error)
      }
    }
    #endif
+0651:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0652: 
+0653:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 653, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 653, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 653, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 653, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__6, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 653, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 653, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 653, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 653, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_FromObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_3, &__pyx_t_2) < 0) __PYX_ERR(0, 653, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 653, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 653, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_4 < 0) __PYX_ERR(0, 653, __pyx_L12_except_error)
            __pyx_t_12 = ((!(__pyx_t_4 != 0)) != 0);
            if (__pyx_t_12) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_2);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_3, __pyx_t_2);
              __pyx_t_5 = 0; __pyx_t_3 = 0; __pyx_t_2 = 0; 
              __PYX_ERR(0, 653, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 653, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__6 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 653, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__6);
  __Pyx_GIVEREF(__pyx_tuple__6);
+0654:             block = Block_FromObject(0x1234, b'', True)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_kp_b__4, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 654, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0655: 
+0656:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 656, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 656, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 656, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 656, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__7, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 656, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 656, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 656, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_2 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 656, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_FromObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_5, &__pyx_t_3) < 0) __PYX_ERR(0, 656, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 656, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 656, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_12 < 0) __PYX_ERR(0, 656, __pyx_L26_except_error)
            __pyx_t_4 = ((!(__pyx_t_12 != 0)) != 0);
            if (__pyx_t_4) {
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_5, __pyx_t_3);
              __pyx_t_2 = 0; __pyx_t_5 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 656, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 656, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__7 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(0, 656, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__7);
  __Pyx_GIVEREF(__pyx_tuple__7);
+0657:             block = Block_FromObject(0x1234, memoryview(b''), True)
            __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 657, __pyx_L24_error)
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 657, __pyx_L24_error)
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 657, __pyx_L24_error)
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0658: 
+0659:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 659, __pyx_L4_error)
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__8, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 659, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 659, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L43_try_end;
          __pyx_L38_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_FromObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 659, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 659, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 659, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_4 < 0) __PYX_ERR(0, 659, __pyx_L40_except_error)
            __pyx_t_12 = ((!(__pyx_t_4 != 0)) != 0);
            if (__pyx_t_12) {
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_3, __pyx_t_5);
              __pyx_t_2 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 659, __pyx_L40_except_error)
            }
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L39_exception_handled;
          }
          __pyx_L40_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L39_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L43_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 659, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L37;
        }
        __pyx_L37:;
      }
      goto __pyx_L47;
      __pyx_L34_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L47:;
    }
  }
/* … */
  __pyx_tuple__8 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__8);
  __Pyx_GIVEREF(__pyx_tuple__8);
+0660:             block = Block_FromObject(0x1234, bytearray(b''), True)
            __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyByteArray_Type)), __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 660, __pyx_L38_error)
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 660, __pyx_L38_error)
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0661: 
 0662:     finally:
+0663:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_11, &__pyx_t_16);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_16);
      __pyx_t_13 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename;
      {
        __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_cur_scope->__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_11, __pyx_t_16);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_10, __pyx_t_9);
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_16 = 0;
      __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0664: 
 0665: 
+0666: def test_Block_Acquire_Release_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_45test_Block_Acquire_Release_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_44test_Block_Acquire_Release_[] = "test_Block_Acquire_Release_()";
static PyMethodDef __pyx_mdef_7_test_c_45test_Block_Acquire_Release_ = {"test_Block_Acquire_Release_", (PyCFunction)__pyx_pw_7_test_c_45test_Block_Acquire_Release_, METH_NOARGS, __pyx_doc_7_test_c_44test_Block_Acquire_Release_};
static PyObject *__pyx_pw_7_test_c_45test_Block_Acquire_Release_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Acquire_Release_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_44test_Block_Acquire_Release_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_44test_Block_Acquire_Release_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  Block_ *__pyx_v_block_;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Acquire_Release_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Acquire_Release_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__154 = PyTuple_Pack(2, __pyx_n_s_block, __pyx_n_s_block_2); if (unlikely(!__pyx_tuple__154)) __PYX_ERR(0, 666, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__154);
  __Pyx_GIVEREF(__pyx_tuple__154);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_45test_Block_Acquire_Release_, 0, __pyx_n_s_test_Block_Acquire_Release, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__155)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 666, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Acquire_Release, __pyx_t_1) < 0) __PYX_ERR(0, 666, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__155 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__154, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Acquire_Release, 666, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__155)) __PYX_ERR(0, 666, __pyx_L1_error)
 0667:     cdef:
+0668:         Block_* block = NULL
  __pyx_v_block = NULL;
+0669:         Block_* block_ = NULL
  __pyx_v_block_ = NULL;
 0670: 
+0671:     try:
  /*try:*/ {
+0672:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 672, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0673:         block_ = block
    __pyx_v_block_ = __pyx_v_block;
+0674:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 674, __pyx_L4_error)
      }
    }
    #endif
+0675:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 675, __pyx_L4_error)
      }
    }
    #endif
 0676: 
+0677:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 677, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0678:         assert block == block_
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block == __pyx_v_block_) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 678, __pyx_L4_error)
      }
    }
    #endif
+0679:         assert block.references == 2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 679, __pyx_L4_error)
      }
    }
    #endif
 0680: 
+0681:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Release_(__pyx_v_block);
+0682:         assert block == block_
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block == __pyx_v_block_) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 682, __pyx_L4_error)
      }
    }
    #endif
+0683:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 683, __pyx_L4_error)
      }
    }
    #endif
 0684: 
+0685:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Release_(__pyx_v_block);
+0686:         assert block == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 686, __pyx_L4_error)
      }
    }
    #endif
  }
 0687: 
 0688:     finally:
+0689:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      }
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ErrRestore(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0690: 
 0691: 
+0692: def test_Block_Acquire_Release():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_47test_Block_Acquire_Release(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_46test_Block_Acquire_Release[] = "test_Block_Acquire_Release()";
static PyMethodDef __pyx_mdef_7_test_c_47test_Block_Acquire_Release = {"test_Block_Acquire_Release", (PyCFunction)__pyx_pw_7_test_c_47test_Block_Acquire_Release, METH_NOARGS, __pyx_doc_7_test_c_46test_Block_Acquire_Release};
static PyObject *__pyx_pw_7_test_c_47test_Block_Acquire_Release(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Acquire_Release (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_46test_Block_Acquire_Release(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_46test_Block_Acquire_Release(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  Block_ *__pyx_v_block_;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Acquire_Release", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Acquire_Release", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__156 = PyTuple_Pack(2, __pyx_n_s_block, __pyx_n_s_block_2); if (unlikely(!__pyx_tuple__156)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__156);
  __Pyx_GIVEREF(__pyx_tuple__156);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_47test_Block_Acquire_Release, 0, __pyx_n_s_test_Block_Acquire_Release_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__157)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Acquire_Release_2, __pyx_t_1) < 0) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__157 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__156, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Acquire_Release_2, 692, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__157)) __PYX_ERR(0, 692, __pyx_L1_error)
 0693:     cdef:
+0694:         Block_* block = NULL
  __pyx_v_block = NULL;
+0695:         Block_* block_ = NULL
  __pyx_v_block_ = NULL;
 0696: 
+0697:     try:
  /*try:*/ {
+0698:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 698, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0699:         block_ = block
    __pyx_v_block_ = __pyx_v_block;
+0700:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 700, __pyx_L4_error)
      }
    }
    #endif
+0701:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 701, __pyx_L4_error)
      }
    }
    #endif
 0702: 
+0703:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 703, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0704:         assert block == block_
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block == __pyx_v_block_) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 704, __pyx_L4_error)
      }
    }
    #endif
+0705:         assert block.references == 2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 705, __pyx_L4_error)
      }
    }
    #endif
 0706: 
+0707:         block_ = Block_Release(block)
    __pyx_v_block_ = __pyx_f_11cbytesparse_2_c_Block_Release(__pyx_v_block);
+0708:         assert block_ == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block_ == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 708, __pyx_L4_error)
      }
    }
    #endif
+0709:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 709, __pyx_L4_error)
      }
    }
    #endif
 0710: 
+0711:         block = Block_Release(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Release(__pyx_v_block);
+0712:         assert block == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 712, __pyx_L4_error)
      }
    }
    #endif
  }
 0713: 
 0714:     finally:
+0715:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      }
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ErrRestore(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0716: 
 0717: 
 0718: # TODO: test_Block_BoundAddress()
 0719: 
 0720: 
 0721: # TODO: test_Block_BoundAddressToOffset()
 0722: 
 0723: 
 0724: # TODO: test_Block_BoundOffset()
 0725: 
 0726: 
 0727: # TODO: test_Block_BoundAddressSlice()
 0728: 
 0729: 
 0730: # TODO: test_Block_BoundAddressSliceToOffset()
 0731: 
 0732: 
 0733: # TODO: test_Block_BoundOffsetSlice()
 0734: 
 0735: 
+0736: def test_Block_CheckMutable():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_49test_Block_CheckMutable(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_48test_Block_CheckMutable[] = "test_Block_CheckMutable()";
static PyMethodDef __pyx_mdef_7_test_c_49test_Block_CheckMutable = {"test_Block_CheckMutable", (PyCFunction)__pyx_pw_7_test_c_49test_Block_CheckMutable, METH_NOARGS, __pyx_doc_7_test_c_48test_Block_CheckMutable};
static PyObject *__pyx_pw_7_test_c_49test_Block_CheckMutable(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_CheckMutable (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_48test_Block_CheckMutable(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_48test_Block_CheckMutable(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_CheckMutable", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_Block_CheckMutable", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__158 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__158)) __PYX_ERR(0, 736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__158);
  __Pyx_GIVEREF(__pyx_tuple__158);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_49test_Block_CheckMutable, 0, __pyx_n_s_test_Block_CheckMutable, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__159)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_CheckMutable, __pyx_t_1) < 0) __PYX_ERR(0, 736, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__159 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__158, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_CheckMutable, 736, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__159)) __PYX_ERR(0, 736, __pyx_L1_error)
 0737:     cdef:
+0738:         Block_* block = NULL
  __pyx_v_block = NULL;
 0739: 
+0740:     try:
  /*try:*/ {
+0741:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 741, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0742:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 742, __pyx_L4_error)
      }
    }
    #endif
+0743:         Block_CheckMutable(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 743, __pyx_L4_error)
 0744: 
+0745:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 745, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0746:         assert block.references == 2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 746, __pyx_L4_error)
      }
    }
    #endif
+0747:         with pytest.raises(RuntimeError, match='Existing exports of data: object cannot be re-sized'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 747, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 747, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 747, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_kp_u_Existing_exports_of_data_object) < 0) __PYX_ERR(0, 747, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__9, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 747, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 747, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 747, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 747, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_CheckMutable", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_3, &__pyx_t_4) < 0) __PYX_ERR(0, 747, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 747, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 747, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_12 < 0) __PYX_ERR(0, 747, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_12 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_3, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 747, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 747, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__9 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 747, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__9);
  __Pyx_GIVEREF(__pyx_tuple__9);
+0748:             Block_CheckMutable(block)
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 748, __pyx_L10_error)
 0749: 
+0750:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Release_(__pyx_v_block);
+0751:         assert block.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 751, __pyx_L4_error)
      }
    }
    #endif
+0752:         Block_CheckMutable(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 752, __pyx_L4_error)
 0753: 
+0754:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Release_(__pyx_v_block);
  }
 0755: 
 0756:     finally:
+0757:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_11, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_11, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_10, __pyx_t_9);
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0758: 
 0759: 
+0760: def test_Block_Eq():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_51test_Block_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_50test_Block_Eq[] = "test_Block_Eq()";
static PyMethodDef __pyx_mdef_7_test_c_51test_Block_Eq = {"test_Block_Eq", (PyCFunction)__pyx_pw_7_test_c_51test_Block_Eq, METH_NOARGS, __pyx_doc_7_test_c_50test_Block_Eq};
static PyObject *__pyx_pw_7_test_c_51test_Block_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Eq (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_50test_Block_Eq(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_50test_Block_Eq(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Eq", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Block_Eq", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__160 = PyTuple_Pack(5, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__160)) __PYX_ERR(0, 760, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__160);
  __Pyx_GIVEREF(__pyx_tuple__160);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_51test_Block_Eq, 0, __pyx_n_s_test_Block_Eq, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__161)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 760, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Eq, __pyx_t_1) < 0) __PYX_ERR(0, 760, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__161 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__160, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Eq, 760, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__161)) __PYX_ERR(0, 760, __pyx_L1_error)
 0761:     cdef:
+0762:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0763:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+0764:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0765:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0766:         size_t offset
 0767: 
+0768:     try:
  /*try:*/ {
+0769:         block2 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 769, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 769, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 769, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_2;
 0770: 
+0771:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 771, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0772:         assert Block_Eq(block1, block2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 772, __pyx_L4_error)
      }
    }
    #endif
+0773:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
 0774: 
+0775:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+0776:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 776, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0777:             Block_Set__(block1, offset, Block_Get__(block1, offset) ^ 0xFF)
      (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) ^ 0xFF)));
+0778:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 778, __pyx_L4_error)
        }
      }
      #endif
+0779:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
    }
  }
 0780: 
 0781:     finally:
+0782:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+0783:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0784: 
 0785: 
+0786: def test_Block_Cmp():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_53test_Block_Cmp(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_52test_Block_Cmp[] = "test_Block_Cmp()";
static PyMethodDef __pyx_mdef_7_test_c_53test_Block_Cmp = {"test_Block_Cmp", (PyCFunction)__pyx_pw_7_test_c_53test_Block_Cmp, METH_NOARGS, __pyx_doc_7_test_c_52test_Block_Cmp};
static PyObject *__pyx_pw_7_test_c_53test_Block_Cmp(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Cmp (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_52test_Block_Cmp(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_52test_Block_Cmp(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Cmp", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_Block_Cmp", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__162 = PyTuple_Pack(5, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__162)) __PYX_ERR(0, 786, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__162);
  __Pyx_GIVEREF(__pyx_tuple__162);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_53test_Block_Cmp, 0, __pyx_n_s_test_Block_Cmp, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__163)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 786, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Cmp, __pyx_t_1) < 0) __PYX_ERR(0, 786, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__163 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__162, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Cmp, 786, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__163)) __PYX_ERR(0, 786, __pyx_L1_error)
 0787:     cdef:
+0788:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0789:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+0790:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0791:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0792:         size_t offset
 0793: 
+0794:     try:
  /*try:*/ {
+0795:         block2 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 795, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 795, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 795, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_2;
 0796: 
+0797:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 797, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0798:         assert Block_Eq(block1, block2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 798, __pyx_L4_error)
      }
    }
    #endif
+0799:         assert Block_Cmp(block1, block2) is 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 799, __pyx_L4_error)
      }
    }
    #endif
+0800:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
 0801: 
+0802:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+0803:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 803, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0804:             Block_Set__(block1, offset, Block_Get__(block1, offset) - 1)
      (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) - 1)));
+0805:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 805, __pyx_L4_error)
        }
      }
      #endif
+0806:             assert Block_Cmp(block1, block2) is -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 806, __pyx_L4_error)
        }
      }
      #endif
+0807:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
    }
 0808: 
+0809:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+0810:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 810, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0811:             Block_Set__(block1, offset, Block_Get__(block1, offset) + 1)
      (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0812:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 812, __pyx_L4_error)
        }
      }
      #endif
+0813:             assert Block_Cmp(block1, block2) is +1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 813, __pyx_L4_error)
        }
      }
      #endif
+0814:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
    }
 0815: 
+0816:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 816, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0817:         block1 = Block_Pop__(block1, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 817, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0818:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 818, __pyx_L4_error)
      }
    }
    #endif
+0819:         assert Block_Cmp(block1, block2) is -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 819, __pyx_L4_error)
      }
    }
    #endif
+0820:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
 0821: 
+0822:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 822, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0823:         block1 = Block_Append(block1, b'#'[0])
    __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__10, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 823, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_7 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 823, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Append(__pyx_v_block1, __pyx_t_7); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 823, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0824:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 824, __pyx_L4_error)
      }
    }
    #endif
+0825:         assert Block_Cmp(block1, block2) is +1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 825, __pyx_L4_error)
      }
    }
    #endif
+0826:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
 0827: 
+0828:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+0829:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 829, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0830:             Block_Set__(block1, offset, Block_Get__(block1, offset) - 1)
      (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) - 1)));
+0831:             block1 = Block_Append(block1, b'#'[0])
      __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__10, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 831, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_7 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 831, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Append(__pyx_v_block1, __pyx_t_7); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 831, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0832:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 832, __pyx_L4_error)
        }
      }
      #endif
+0833:             assert Block_Cmp(block1, block2) is -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 833, __pyx_L4_error)
        }
      }
      #endif
+0834:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
    }
 0835: 
+0836:         for offset in range(size - 1):  # skip last pop
    __pyx_t_3 = (__pyx_v_size - 1);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+0837:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 837, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0838:             Block_Set__(block1, offset, Block_Get__(block1, offset) + 1)
      (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0839:             block1 = Block_Pop__(block1, NULL)
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 839, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0840:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 840, __pyx_L4_error)
        }
      }
      #endif
+0841:             assert Block_Cmp(block1, block2) is +1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 841, __pyx_L4_error)
        }
      }
      #endif
+0842:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
    }
 0843: 
+0844:         offset = size - 1  # check last pop
    __pyx_v_offset = (__pyx_v_size - 1);
+0845:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 845, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0846:         Block_Set__(block1, offset, Block_Get__(block1, offset) + 1)
    (void)(__pyx_f_11cbytesparse_2_c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0847:         block1 = Block_Pop__(block1, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 847, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0848:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 848, __pyx_L4_error)
      }
    }
    #endif
+0849:         assert Block_Cmp(block1, block2) is -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 849, __pyx_L4_error)
      }
    }
    #endif
+0850:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
  }
 0851: 
 0852:     finally:
+0853:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+0854:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13) < 0)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __pyx_t_8 = __pyx_lineno; __pyx_t_9 = __pyx_clineno; __pyx_t_10 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_16);
      }
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_ErrRestore(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0;
      __pyx_lineno = __pyx_t_8; __pyx_clineno = __pyx_t_9; __pyx_filename = __pyx_t_10;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0855: 
 0856: 
+0857: def test_Block_Find__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_55test_Block_Find__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_54test_Block_Find__[] = "test_Block_Find__()";
static PyMethodDef __pyx_mdef_7_test_c_55test_Block_Find__ = {"test_Block_Find__", (PyCFunction)__pyx_pw_7_test_c_55test_Block_Find__, METH_NOARGS, __pyx_doc_7_test_c_54test_Block_Find__};
static PyObject *__pyx_pw_7_test_c_55test_Block_Find__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_54test_Block_Find__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_54test_Block_Find__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  byte_t __pyx_v_value;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_Find__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__164 = PyTuple_Pack(8, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__164)) __PYX_ERR(0, 857, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__164);
  __Pyx_GIVEREF(__pyx_tuple__164);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_55test_Block_Find__, 0, __pyx_n_s_test_Block_Find, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__165)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 857, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find, __pyx_t_1) < 0) __PYX_ERR(0, 857, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__165 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__164, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find, 857, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__165)) __PYX_ERR(0, 857, __pyx_L1_error)
 0858:     cdef:
+0859:         Block_* block = NULL
  __pyx_v_block = NULL;
+0860:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0861:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0862:         size_t start
 0863:         size_t endex
 0864:         byte_t value
 0865:         ssize_t ans
 0866:         ssize_t ref
 0867: 
+0868:     try:
  /*try:*/ {
+0869:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 869, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0870:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 870, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 870, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 870, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 870, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0871:             assert Block_Find__(block, 0, SIZE_MAX, value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Find__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 871, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0872:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0873: 
+0874:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 874, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 874, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 874, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0875:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 875, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 875, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 875, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 875, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0876:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0877:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0878:                     ans = Block_Find__(block, start, endex, value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_Find__(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_value);
+0879:                     ref = data.find(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_find); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 879, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 879, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 879, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 879, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 879, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 879, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 879, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 879, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 879, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0880:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 880, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0881:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 0882: 
 0883:     finally:
+0884:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26) < 0)) __Pyx_ErrFetch(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_24);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_23 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_27);
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_ExceptionReset(__pyx_t_27, __pyx_t_28, __pyx_t_29);
      }
      __Pyx_XGIVEREF(__pyx_t_24);
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_ErrRestore(__pyx_t_24, __pyx_t_25, __pyx_t_26);
      __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_23;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0885: 
 0886: 
+0887: def test_Block_Find_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_57test_Block_Find_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_56test_Block_Find_[] = "test_Block_Find_()";
static PyMethodDef __pyx_mdef_7_test_c_57test_Block_Find_ = {"test_Block_Find_", (PyCFunction)__pyx_pw_7_test_c_57test_Block_Find_, METH_NOARGS, __pyx_doc_7_test_c_56test_Block_Find_};
static PyObject *__pyx_pw_7_test_c_57test_Block_Find_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_56test_Block_Find_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_56test_Block_Find_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_Find_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__166 = PyTuple_Pack(10, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__166)) __PYX_ERR(0, 887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__166);
  __Pyx_GIVEREF(__pyx_tuple__166);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_57test_Block_Find_, 0, __pyx_n_s_test_Block_Find_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__167)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find_2, __pyx_t_1) < 0) __PYX_ERR(0, 887, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__167 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__166, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find_2, 887, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__167)) __PYX_ERR(0, 887, __pyx_L1_error)
 0888:     cdef:
+0889:         Block_* block = NULL
  __pyx_v_block = NULL;
+0890:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0891:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0892:         size_t start
 0893:         size_t endex
 0894:         byte_t value
 0895:         tuple tokens
 0896:         bytes token
 0897:         ssize_t ans
 0898:         ssize_t ref
 0899: 
+0900:     try:
  /*try:*/ {
+0901:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 901, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0902:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 902, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 902, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 902, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0903:             assert Block_Find_(block, 0, SIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Find_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 903, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0904:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0905: 
+0906:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 906, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 906, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 906, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0907:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 907, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 907, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 907, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 907, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0908:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0909:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0910:                     ans = Block_Find_(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_Find_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+0911:                     ref = data.find(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_find); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 911, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 911, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 911, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 911, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 911, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 911, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 911, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 911, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 911, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0912:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 912, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0913:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0914: 
+0915:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+0916:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+0917:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+0918:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 918, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 918, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 918, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0919:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 919, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_6); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 919, __pyx_L4_error)
      #else
      __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 919, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_6));
      __pyx_t_6 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0920:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0921:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0922:                     ans = Block_Find_(block, start, endex, <size_t>len(token), token)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 922, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 922, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 922, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 922, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_Find_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+0923:                     ref = data.find(token, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_find); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 923, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_21 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 923, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_21);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 923, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_18 = NULL;
          __pyx_t_5 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_18)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_18);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_5 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 923, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 923, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_17 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 923, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            if (__pyx_t_18) {
              __Pyx_GIVEREF(__pyx_t_18); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_18); __pyx_t_18 = NULL;
            }
            __Pyx_INCREF(__pyx_v_token);
            __Pyx_GIVEREF(__pyx_v_token);
            PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_5, __pyx_v_token);
            __Pyx_GIVEREF(__pyx_t_21);
            PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_5, __pyx_t_21);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_5, __pyx_t_19);
            __pyx_t_21 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_17, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 923, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 923, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0924:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 924, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+0925:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 0926: 
 0927:     finally:
+0928:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_28, &__pyx_t_29, &__pyx_t_30);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27) < 0)) __Pyx_ErrFetch(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __Pyx_XGOTREF(__pyx_t_30);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_XGIVEREF(__pyx_t_30);
        __Pyx_ExceptionReset(__pyx_t_28, __pyx_t_29, __pyx_t_30);
      }
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_XGIVEREF(__pyx_t_27);
      __Pyx_ErrRestore(__pyx_t_25, __pyx_t_26, __pyx_t_27);
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0929: 
 0930: 
+0931: def test_Block_Find():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_59test_Block_Find(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_58test_Block_Find[] = "test_Block_Find()";
static PyMethodDef __pyx_mdef_7_test_c_59test_Block_Find = {"test_Block_Find", (PyCFunction)__pyx_pw_7_test_c_59test_Block_Find, METH_NOARGS, __pyx_doc_7_test_c_58test_Block_Find};
static PyObject *__pyx_pw_7_test_c_59test_Block_Find(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_58test_Block_Find(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_58test_Block_Find(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Find", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_Find", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__168 = PyTuple_Pack(10, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__168)) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__168);
  __Pyx_GIVEREF(__pyx_tuple__168);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_59test_Block_Find, 0, __pyx_n_s_test_Block_Find_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__169)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find_3, __pyx_t_1) < 0) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__169 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__168, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find_3, 931, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__169)) __PYX_ERR(0, 931, __pyx_L1_error)
 0932:     cdef:
+0933:         Block_* block = NULL
  __pyx_v_block = NULL;
+0934:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0935:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0936:         ssize_t start
 0937:         ssize_t endex
 0938:         byte_t value
 0939:         tuple tokens
 0940:         bytes token
 0941:         ssize_t ans
 0942:         ssize_t ref
 0943: 
+0944:     try:
  /*try:*/ {
+0945:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 945, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0946:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 946, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 946, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 946, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0947:             assert Block_Find(block, 0, SSIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Find(__pyx_v_block, 0, SSIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 947, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0948:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0949: 
+0950:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 950, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 950, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 950, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0951:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 951, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 951, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 951, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 951, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0952:             for start in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0953:                 for endex in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
        __pyx_t_14 = ((Py_ssize_t)(__pyx_v_size + 1));
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0954:                     ans = Block_Find(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_Find(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+0955:                     ref = data.find(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_find); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 955, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 955, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = PyInt_FromSsize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 955, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = PyInt_FromSsize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 955, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 955, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 955, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 955, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 955, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 955, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0956:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 956, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0957:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0958: 
+0959:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+0960:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+0961:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+0962:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 962, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 962, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 962, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0963:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 963, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_6); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 963, __pyx_L4_error)
      #else
      __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 963, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 963, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_6));
      __pyx_t_6 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0964:             for start in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0965:                 for endex in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
        __pyx_t_14 = ((Py_ssize_t)(__pyx_v_size + 1));
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0966:                     ans = Block_Find(block, start, endex, <size_t>len(token), token)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 966, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 966, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 966, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 966, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_Find(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+0967:                     ref = data.find(token, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_find); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 967, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_21 = PyInt_FromSsize_t(__pyx_v_start); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 967, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_21);
          __pyx_t_19 = PyInt_FromSsize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 967, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_18 = NULL;
          __pyx_t_5 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_18)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_18);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_5 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 967, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 967, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_17 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 967, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            if (__pyx_t_18) {
              __Pyx_GIVEREF(__pyx_t_18); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_18); __pyx_t_18 = NULL;
            }
            __Pyx_INCREF(__pyx_v_token);
            __Pyx_GIVEREF(__pyx_v_token);
            PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_5, __pyx_v_token);
            __Pyx_GIVEREF(__pyx_t_21);
            PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_5, __pyx_t_21);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_5, __pyx_t_19);
            __pyx_t_21 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_17, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 967, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 967, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0968:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 968, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+0969:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 0970: 
 0971:     finally:
+0972:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_28, &__pyx_t_29, &__pyx_t_30);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27) < 0)) __Pyx_ErrFetch(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __Pyx_XGOTREF(__pyx_t_30);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_XGIVEREF(__pyx_t_30);
        __Pyx_ExceptionReset(__pyx_t_28, __pyx_t_29, __pyx_t_30);
      }
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_XGIVEREF(__pyx_t_27);
      __Pyx_ErrRestore(__pyx_t_25, __pyx_t_26, __pyx_t_27);
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 0973: 
 0974: 
+0975: def test_Block_ReverseFind__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_61test_Block_ReverseFind__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_60test_Block_ReverseFind__[] = "test_Block_ReverseFind__()";
static PyMethodDef __pyx_mdef_7_test_c_61test_Block_ReverseFind__ = {"test_Block_ReverseFind__", (PyCFunction)__pyx_pw_7_test_c_61test_Block_ReverseFind__, METH_NOARGS, __pyx_doc_7_test_c_60test_Block_ReverseFind__};
static PyObject *__pyx_pw_7_test_c_61test_Block_ReverseFind__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_60test_Block_ReverseFind__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_60test_Block_ReverseFind__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  byte_t __pyx_v_value;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_ReverseFind__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__170 = PyTuple_Pack(8, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__170)) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__170);
  __Pyx_GIVEREF(__pyx_tuple__170);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_61test_Block_ReverseFind__, 0, __pyx_n_s_test_Block_ReverseFind, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__171)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind, __pyx_t_1) < 0) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__171 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__170, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind, 975, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__171)) __PYX_ERR(0, 975, __pyx_L1_error)
 0976:     cdef:
+0977:         Block_* block = NULL
  __pyx_v_block = NULL;
+0978:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0979:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0980:         size_t start
 0981:         size_t endex
 0982:         byte_t value
 0983:         ssize_t ans
 0984:         ssize_t ref
 0985: 
+0986:     try:
  /*try:*/ {
+0987:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 987, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0988:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 988, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 988, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 988, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 988, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0989:             assert Block_ReverseFind__(block, 0, SIZE_MAX, value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_ReverseFind__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 989, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0990:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 0991: 
+0992:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 992, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 992, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 992, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0993:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 993, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 993, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 993, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 993, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0994:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+0995:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+0996:                     ans = Block_ReverseFind__(block, start, endex, value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_ReverseFind__(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_value);
+0997:                     ref = data.rfind(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_rfind); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 997, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 997, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 997, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 997, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 997, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 997, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 997, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 997, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 997, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0998:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 998, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0999:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1000: 
 1001:     finally:
+1002:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26) < 0)) __Pyx_ErrFetch(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_24);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_23 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_27);
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_ExceptionReset(__pyx_t_27, __pyx_t_28, __pyx_t_29);
      }
      __Pyx_XGIVEREF(__pyx_t_24);
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_ErrRestore(__pyx_t_24, __pyx_t_25, __pyx_t_26);
      __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_23;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1003: 
 1004: 
+1005: def test_Block_ReverseFind_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_63test_Block_ReverseFind_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_62test_Block_ReverseFind_[] = "test_Block_ReverseFind_()";
static PyMethodDef __pyx_mdef_7_test_c_63test_Block_ReverseFind_ = {"test_Block_ReverseFind_", (PyCFunction)__pyx_pw_7_test_c_63test_Block_ReverseFind_, METH_NOARGS, __pyx_doc_7_test_c_62test_Block_ReverseFind_};
static PyObject *__pyx_pw_7_test_c_63test_Block_ReverseFind_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_62test_Block_ReverseFind_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_62test_Block_ReverseFind_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_ReverseFind_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__172 = PyTuple_Pack(10, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__172)) __PYX_ERR(0, 1005, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__172);
  __Pyx_GIVEREF(__pyx_tuple__172);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_63test_Block_ReverseFind_, 0, __pyx_n_s_test_Block_ReverseFind_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__173)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1005, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind_2, __pyx_t_1) < 0) __PYX_ERR(0, 1005, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__173 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__172, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind_2, 1005, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__173)) __PYX_ERR(0, 1005, __pyx_L1_error)
 1006:     cdef:
+1007:         Block_* block = NULL
  __pyx_v_block = NULL;
+1008:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1009:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1010:         size_t start
 1011:         size_t endex
 1012:         byte_t value
 1013:         tuple tokens
 1014:         bytes token
 1015:         ssize_t ans
 1016:         ssize_t ref
 1017: 
+1018:     try:
  /*try:*/ {
+1019:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1019, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1020:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1020, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1020, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1020, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1020, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1021:             assert Block_ReverseFind_(block, 0, SIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_ReverseFind_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1021, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1022:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1023: 
+1024:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1024, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1024, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1024, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1025:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1025, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1025, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1025, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1025, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1026:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+1027:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+1028:                     ans = Block_ReverseFind_(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_ReverseFind_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+1029:                     ref = data.rfind(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_rfind); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1029, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1029, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1029, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1029, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1029, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1029, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1029, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1029, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1029, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1030:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 1030, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1031:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1032: 
+1033:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1034:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1035:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1036:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1036, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1036, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1036, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1037:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1037, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_6); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1037, __pyx_L4_error)
      #else
      __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1037, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 1037, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_6));
      __pyx_t_6 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1038:             for start in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+1039:                 for endex in range(size + 1):
        __pyx_t_14 = (__pyx_v_size + 1);
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+1040:                     ans = Block_ReverseFind_(block, start, endex, <size_t>len(token), token)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 1040, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1040, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1040, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 1040, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_ReverseFind_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+1041:                     ref = data.rfind(token, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_rfind); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1041, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_21 = __Pyx_PyInt_FromSize_t(__pyx_v_start); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1041, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_21);
          __pyx_t_19 = __Pyx_PyInt_FromSize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1041, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_18 = NULL;
          __pyx_t_5 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_18)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_18);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_5 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1041, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1041, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_17 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1041, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            if (__pyx_t_18) {
              __Pyx_GIVEREF(__pyx_t_18); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_18); __pyx_t_18 = NULL;
            }
            __Pyx_INCREF(__pyx_v_token);
            __Pyx_GIVEREF(__pyx_v_token);
            PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_5, __pyx_v_token);
            __Pyx_GIVEREF(__pyx_t_21);
            PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_5, __pyx_t_21);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_5, __pyx_t_19);
            __pyx_t_21 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_17, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1041, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1041, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1042:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 1042, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+1043:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1044: 
 1045:     finally:
+1046:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_28, &__pyx_t_29, &__pyx_t_30);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27) < 0)) __Pyx_ErrFetch(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __Pyx_XGOTREF(__pyx_t_30);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_XGIVEREF(__pyx_t_30);
        __Pyx_ExceptionReset(__pyx_t_28, __pyx_t_29, __pyx_t_30);
      }
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_XGIVEREF(__pyx_t_27);
      __Pyx_ErrRestore(__pyx_t_25, __pyx_t_26, __pyx_t_27);
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1047: 
 1048: 
+1049: def test_Block_ReverseFind():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_65test_Block_ReverseFind(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_64test_Block_ReverseFind[] = "test_Block_ReverseFind()";
static PyMethodDef __pyx_mdef_7_test_c_65test_Block_ReverseFind = {"test_Block_ReverseFind", (PyCFunction)__pyx_pw_7_test_c_65test_Block_ReverseFind, METH_NOARGS, __pyx_doc_7_test_c_64test_Block_ReverseFind};
static PyObject *__pyx_pw_7_test_c_65test_Block_ReverseFind(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_64test_Block_ReverseFind(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_64test_Block_ReverseFind(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  Py_ssize_t __pyx_v_ans;
  Py_ssize_t __pyx_v_ref;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReverseFind", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_20);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_ReverseFind", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__174 = PyTuple_Pack(10, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token, __pyx_n_s_ans, __pyx_n_s_ref); if (unlikely(!__pyx_tuple__174)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__174);
  __Pyx_GIVEREF(__pyx_tuple__174);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_65test_Block_ReverseFind, 0, __pyx_n_s_test_Block_ReverseFind_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__175)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind_3, __pyx_t_1) < 0) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__175 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__174, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind_3, 1049, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__175)) __PYX_ERR(0, 1049, __pyx_L1_error)
 1050:     cdef:
+1051:         Block_* block = NULL
  __pyx_v_block = NULL;
+1052:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1053:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1054:         ssize_t start
 1055:         ssize_t endex
 1056:         byte_t value
 1057:         tuple tokens
 1058:         bytes token
 1059:         ssize_t ans
 1060:         ssize_t ref
 1061: 
+1062:     try:
  /*try:*/ {
+1063:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1063, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1064:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1064, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1064, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1064, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1064, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1065:             assert Block_ReverseFind(block, 0, SSIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_ReverseFind(__pyx_v_block, 0, SSIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1065, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1066:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1067: 
+1068:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1068, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1068, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1068, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1069:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1069, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1069, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1069, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1069, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1070:             for start in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+1071:                 for endex in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
        __pyx_t_14 = ((Py_ssize_t)(__pyx_v_size + 1));
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+1072:                     ans = Block_ReverseFind(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_ReverseFind(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+1073:                     ref = data.rfind(value, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_rfind); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1073, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_17 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1073, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = PyInt_FromSsize_t(__pyx_v_start); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1073, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_18);
          __pyx_t_19 = PyInt_FromSsize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1073, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_20 = NULL;
          __pyx_t_8 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_20 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_20)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_20);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_8 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1073, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_20, __pyx_t_17, __pyx_t_18, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1073, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_21 = PyTuple_New(3+__pyx_t_8); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1073, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_20); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_20); __pyx_t_20 = NULL;
            }
            __Pyx_GIVEREF(__pyx_t_17);
            PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_8, __pyx_t_17);
            __Pyx_GIVEREF(__pyx_t_18);
            PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_8, __pyx_t_18);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_8, __pyx_t_19);
            __pyx_t_17 = 0;
            __pyx_t_18 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1073, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1073, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1074:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 1074, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1075:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1076: 
+1077:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1078:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1079:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1080:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1080, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1080, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1080, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1081:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1081, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_6); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1081, __pyx_L4_error)
      #else
      __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1081, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 1081, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_6));
      __pyx_t_6 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1082:             for start in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_start = __pyx_t_13;
+1083:                 for endex in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
        __pyx_t_14 = ((Py_ssize_t)(__pyx_v_size + 1));
        __pyx_t_15 = __pyx_t_14;
        for (__pyx_t_16 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
          __pyx_v_endex = __pyx_t_16;
+1084:                     ans = Block_ReverseFind(block, start, endex, <size_t>len(token), token)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 1084, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1084, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1084, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 1084, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_2_c_Block_ReverseFind(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+1085:                     ref = data.rfind(token, start, endex)
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_rfind); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1085, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_21 = PyInt_FromSsize_t(__pyx_v_start); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1085, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_21);
          __pyx_t_19 = PyInt_FromSsize_t(__pyx_v_endex); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1085, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_19);
          __pyx_t_18 = NULL;
          __pyx_t_5 = 0;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
            __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_7);
            if (likely(__pyx_t_18)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
              __Pyx_INCREF(__pyx_t_18);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_7, function);
              __pyx_t_5 = 1;
            }
          }
          #if CYTHON_FAST_PYCALL
          if (PyFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1085, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          #if CYTHON_FAST_PYCCALL
          if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
            PyObject *__pyx_temp[4] = {__pyx_t_18, __pyx_v_token, __pyx_t_21, __pyx_t_19};
            __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1085, __pyx_L4_error)
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          } else
          #endif
          {
            __pyx_t_17 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1085, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            if (__pyx_t_18) {
              __Pyx_GIVEREF(__pyx_t_18); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_18); __pyx_t_18 = NULL;
            }
            __Pyx_INCREF(__pyx_v_token);
            __Pyx_GIVEREF(__pyx_v_token);
            PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_5, __pyx_v_token);
            __Pyx_GIVEREF(__pyx_t_21);
            PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_5, __pyx_t_21);
            __Pyx_GIVEREF(__pyx_t_19);
            PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_5, __pyx_t_19);
            __pyx_t_21 = 0;
            __pyx_t_19 = 0;
            __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_17, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1085, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_22 = PyInt_AsSsize_t(__pyx_t_6); if (unlikely((__pyx_t_22 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1085, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1086:                     assert ans == ref
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_ans == __pyx_v_ref) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 1086, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+1087:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1088: 
 1089:     finally:
+1090:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_28, &__pyx_t_29, &__pyx_t_30);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27) < 0)) __Pyx_ErrFetch(&__pyx_t_25, &__pyx_t_26, &__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __Pyx_XGOTREF(__pyx_t_27);
      __Pyx_XGOTREF(__pyx_t_28);
      __Pyx_XGOTREF(__pyx_t_29);
      __Pyx_XGOTREF(__pyx_t_30);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_XGIVEREF(__pyx_t_30);
        __Pyx_ExceptionReset(__pyx_t_28, __pyx_t_29, __pyx_t_30);
      }
      __Pyx_XGIVEREF(__pyx_t_25);
      __Pyx_XGIVEREF(__pyx_t_26);
      __Pyx_XGIVEREF(__pyx_t_27);
      __Pyx_ErrRestore(__pyx_t_25, __pyx_t_26, __pyx_t_27);
      __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; __pyx_t_29 = 0; __pyx_t_30 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1091: 
 1092: 
+1093: def test_Block_Count__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_67test_Block_Count__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_66test_Block_Count__[] = "test_Block_Count__()";
static PyMethodDef __pyx_mdef_7_test_c_67test_Block_Count__ = {"test_Block_Count__", (PyCFunction)__pyx_pw_7_test_c_67test_Block_Count__, METH_NOARGS, __pyx_doc_7_test_c_66test_Block_Count__};
static PyObject *__pyx_pw_7_test_c_67test_Block_Count__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_66test_Block_Count__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_66test_Block_Count__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  byte_t __pyx_v_value;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_Count__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__176 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_value); if (unlikely(!__pyx_tuple__176)) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__176);
  __Pyx_GIVEREF(__pyx_tuple__176);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_67test_Block_Count__, 0, __pyx_n_s_test_Block_Count, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__177)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count, __pyx_t_1) < 0) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__177 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__176, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count, 1093, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__177)) __PYX_ERR(0, 1093, __pyx_L1_error)
 1094:     cdef:
+1095:         Block_* block = NULL
  __pyx_v_block = NULL;
+1096:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1097:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1098:         size_t offset
 1099:         byte_t value
 1100: 
+1101:     try:
  /*try:*/ {
+1102:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1102, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1103:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1103, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1103, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1103, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1103, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1104:             assert Block_Count__(block, 0, SIZE_MAX, value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Count__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1104, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1105:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1106: 
+1107:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1107, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1107, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1107, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1108:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1108, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1108, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1108, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1108, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1109:             for offset in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_offset = __pyx_t_13;
+1110:                 assert Block_Count__(block, offset, SIZE_MAX, value) == data.count(value, offset)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_6 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_2_c_Block_Count__(__pyx_v_block, __pyx_v_offset, SIZE_MAX, __pyx_v_value)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_7 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_v_offset); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyBytes_Type_count, __pyx_v_data, __pyx_t_7, __pyx_t_14); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __pyx_t_14 = PyObject_RichCompare(__pyx_t_6, __pyx_t_15, Py_EQ); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1110, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1110, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1111:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1112: 
 1113:     finally:
+1114:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20) < 0)) __Pyx_ErrFetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_22, __pyx_t_23);
      }
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_ErrRestore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
      __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1115: 
 1116: 
+1117: def test_Block_Count_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_69test_Block_Count_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_68test_Block_Count_[] = "test_Block_Count_()";
static PyMethodDef __pyx_mdef_7_test_c_69test_Block_Count_ = {"test_Block_Count_", (PyCFunction)__pyx_pw_7_test_c_69test_Block_Count_, METH_NOARGS, __pyx_doc_7_test_c_68test_Block_Count_};
static PyObject *__pyx_pw_7_test_c_69test_Block_Count_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_68test_Block_Count_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_68test_Block_Count_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_Count_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__178 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token); if (unlikely(!__pyx_tuple__178)) __PYX_ERR(0, 1117, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__178);
  __Pyx_GIVEREF(__pyx_tuple__178);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_69test_Block_Count_, 0, __pyx_n_s_test_Block_Count_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__179)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1117, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count_2, __pyx_t_1) < 0) __PYX_ERR(0, 1117, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__179 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__178, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count_2, 1117, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__179)) __PYX_ERR(0, 1117, __pyx_L1_error)
 1118:     cdef:
+1119:         Block_* block = NULL
  __pyx_v_block = NULL;
+1120:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1121:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1122:         size_t offset
 1123:         byte_t value
 1124:         tuple tokens
 1125:         bytes token
 1126: 
+1127:     try:
  /*try:*/ {
+1128:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1128, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1129:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1129, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1129, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1129, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1129, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1130:             assert Block_Count_(block, 0, SIZE_MAX, 1, &value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Count_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1130, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1131:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1132: 
+1133:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1133, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1133, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1133, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1134:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1134, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1134, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1134, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1134, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1135:             for offset in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_offset = __pyx_t_13;
+1136:                 assert Block_Count_(block, offset, SIZE_MAX, 1, &value) == data.count(value, offset)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_6 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_2_c_Block_Count_(__pyx_v_block, __pyx_v_offset, SIZE_MAX, 1, (&__pyx_v_value))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_7 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_v_offset); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyBytes_Type_count, __pyx_v_data, __pyx_t_7, __pyx_t_14); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __pyx_t_14 = PyObject_RichCompare(__pyx_t_6, __pyx_t_15, Py_EQ); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1136, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1136, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1137:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1138: 
+1139:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1140:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1141:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1142:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1142, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1142, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1142, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1143:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1143, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_14 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_14); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1143, __pyx_L4_error)
      #else
      __pyx_t_14 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1143, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_14))||((__pyx_t_14) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_14)->tp_name), 0))) __PYX_ERR(0, 1143, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_14));
      __pyx_t_14 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1144:             for offset in range(size + 1):
      __pyx_t_11 = (__pyx_v_size + 1);
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_offset = __pyx_t_13;
+1145:                 assert Block_Count_(block, offset, SIZE_MAX, <size_t>len(token), token) == data.count(token, offset)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 1145, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1145, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1145, __pyx_L4_error)
          }
          __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 1145, __pyx_L4_error)
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_2_c_Block_Count_(__pyx_v_block, __pyx_v_offset, SIZE_MAX, ((size_t)__pyx_t_4), __pyx_t_17)); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1145, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = __Pyx_PyInt_FromSize_t(__pyx_v_offset); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1145, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_15);
          __pyx_t_6 = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyBytes_Type_count, __pyx_v_data, __pyx_v_token, __pyx_t_15); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1145, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_15 = PyObject_RichCompare(__pyx_t_14, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_15); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1145, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_15); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1145, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1145, __pyx_L4_error)
          }
        }
        #endif
      }
+1146:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1147: 
 1148:     finally:
+1149:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_22, &__pyx_t_23, &__pyx_t_24);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21) < 0)) __Pyx_ErrFetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_24);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_XGIVEREF(__pyx_t_24);
        __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
      }
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_ErrRestore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1150: 
 1151: 
+1152: def test_Block_Count():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_71test_Block_Count(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_70test_Block_Count[] = "test_Block_Count()";
static PyMethodDef __pyx_mdef_7_test_c_71test_Block_Count = {"test_Block_Count", (PyCFunction)__pyx_pw_7_test_c_71test_Block_Count, METH_NOARGS, __pyx_doc_7_test_c_70test_Block_Count};
static PyObject *__pyx_pw_7_test_c_71test_Block_Count(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_70test_Block_Count(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_70test_Block_Count(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_offset;
  byte_t __pyx_v_value;
  PyObject *__pyx_v_tokens = 0;
  PyObject *__pyx_v_token = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Count", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_Count", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_tokens);
  __Pyx_XDECREF(__pyx_v_token);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__180 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_value, __pyx_n_s_tokens, __pyx_n_s_token); if (unlikely(!__pyx_tuple__180)) __PYX_ERR(0, 1152, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__180);
  __Pyx_GIVEREF(__pyx_tuple__180);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_71test_Block_Count, 0, __pyx_n_s_test_Block_Count_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__181)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1152, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count_3, __pyx_t_1) < 0) __PYX_ERR(0, 1152, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__181 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__180, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count_3, 1152, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__181)) __PYX_ERR(0, 1152, __pyx_L1_error)
 1153:     cdef:
+1154:         Block_* block = NULL
  __pyx_v_block = NULL;
+1155:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1156:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1157:         ssize_t offset
 1158:         byte_t value
 1159:         tuple tokens
 1160:         bytes token
 1161: 
+1162:     try:
  /*try:*/ {
+1163:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1163, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1164:         for value in set(data):
    __pyx_t_3 = 0;
    __pyx_t_6 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1164, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_set_iterator(__pyx_t_6, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1164, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_7;
    __pyx_t_7 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_7, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1164, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1164, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1165:             assert Block_Count(block, SSIZE_MIN, SSIZE_MAX, 1, &value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Count(__pyx_v_block, SSIZE_MIN, SSIZE_MAX, 1, (&__pyx_v_value)) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1165, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1166:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1167: 
+1168:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1168, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1168, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1168, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1169:         for value in set(data):
    __pyx_t_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1169, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_set_iterator(__pyx_t_7, 1, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1169, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_2);
    __pyx_t_2 = __pyx_t_6;
    __pyx_t_6 = 0;
    while (1) {
      __pyx_t_8 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_3, &__pyx_t_4, &__pyx_t_6, __pyx_t_5);
      if (unlikely(__pyx_t_8 == 0)) break;
      if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1169, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_9 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1169, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1170:             for offset in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_offset = __pyx_t_13;
+1171:                 assert Block_Count(block, offset, SSIZE_MAX, 1, &value) == data.count(value, offset)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_6 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_2_c_Block_Count(__pyx_v_block, __pyx_v_offset, SSIZE_MAX, 1, (&__pyx_v_value))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_7 = __Pyx_PyInt_From_byte_t(__pyx_v_value); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_14 = PyInt_FromSsize_t(__pyx_v_offset); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyBytes_Type_count, __pyx_v_data, __pyx_t_7, __pyx_t_14); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __pyx_t_14 = PyObject_RichCompare(__pyx_t_6, __pyx_t_15, Py_EQ); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1171, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1171, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1172:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1173: 
+1174:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1175:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1176:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1177:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1177, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1177, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1177, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1178:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1178, __pyx_L4_error)
    }
    __pyx_t_2 = __pyx_v_tokens; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
    for (;;) {
      if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_14 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_14); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1178, __pyx_L4_error)
      #else
      __pyx_t_14 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1178, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      #endif
      if (!(likely(PyBytes_CheckExact(__pyx_t_14))||((__pyx_t_14) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_14)->tp_name), 0))) __PYX_ERR(0, 1178, __pyx_L4_error)
      __Pyx_XDECREF_SET(__pyx_v_token, ((PyObject*)__pyx_t_14));
      __pyx_t_14 = 0;
/* … */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1179:             for offset in range(-<ssize_t>(size + 1), <ssize_t>(size + 1)):
      __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size + 1));
      __pyx_t_12 = __pyx_t_11;
      for (__pyx_t_13 = (-((Py_ssize_t)(__pyx_v_size + 1))); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
        __pyx_v_offset = __pyx_t_13;
+1180:                 assert Block_Count(block, offset, SSIZE_MAX, <size_t>len(token), token) == data.count(token, offset)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
            __PYX_ERR(0, 1180, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1180, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1180, __pyx_L4_error)
          }
          __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 1180, __pyx_L4_error)
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_2_c_Block_Count(__pyx_v_block, __pyx_v_offset, SSIZE_MAX, ((size_t)__pyx_t_4), __pyx_t_17)); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1180, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_14);
          __pyx_t_15 = PyInt_FromSsize_t(__pyx_v_offset); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1180, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_15);
          __pyx_t_6 = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyBytes_Type_count, __pyx_v_data, __pyx_v_token, __pyx_t_15); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1180, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_15 = PyObject_RichCompare(__pyx_t_14, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_15); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1180, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_15); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1180, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1180, __pyx_L4_error)
          }
        }
        #endif
      }
+1181:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1182: 
 1183:     finally:
+1184:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_22, &__pyx_t_23, &__pyx_t_24);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21) < 0)) __Pyx_ErrFetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_24);
      __pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_XGIVEREF(__pyx_t_24);
        __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
      }
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_ErrRestore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1185: 
 1186: 
+1187: def test_Block_Reserve_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_73test_Block_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_72test_Block_Reserve_[] = "test_Block_Reserve_()";
static PyMethodDef __pyx_mdef_7_test_c_73test_Block_Reserve_ = {"test_Block_Reserve_", (PyCFunction)__pyx_pw_7_test_c_73test_Block_Reserve_, METH_NOARGS, __pyx_doc_7_test_c_72test_Block_Reserve_};
static PyObject *__pyx_pw_7_test_c_73test_Block_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Reserve_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_72test_Block_Reserve_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_72test_Block_Reserve_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Reserve_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_Block_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__182 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__182)) __PYX_ERR(0, 1187, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__182);
  __Pyx_GIVEREF(__pyx_tuple__182);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_73test_Block_Reserve_, 0, __pyx_n_s_test_Block_Reserve, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__183)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1187, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Reserve, __pyx_t_1) < 0) __PYX_ERR(0, 1187, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__183 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__182, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Reserve, 1187, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__183)) __PYX_ERR(0, 1187, __pyx_L1_error)
 1188:     cdef:
+1189:         Block_* block = NULL
  __pyx_v_block = NULL;
+1190:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1191:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1192:         size_t offset
 1193: 
+1194:     try:
  /*try:*/ {
+1195:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1195, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1196:         block = Block_Reserve_(block, 0, 0, True)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1196, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1197:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1197, __pyx_L4_error)
      }
    }
    #endif
+1198:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1198, __pyx_L4_error)
      }
    }
    #endif
+1199:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1199, __pyx_L4_error)
      }
    }
    #endif
+1200:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1200, __pyx_L4_error)
      }
    }
    #endif
+1201:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1201, __pyx_L4_error)
      }
    }
    #endif
+1202:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1202, __pyx_L4_error)
      }
    }
    #endif
+1203:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1204: 
+1205:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1205, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1206:         block = Block_Reserve_(block, 0, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1206, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1207:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1207, __pyx_L4_error)
      }
    }
    #endif
+1208:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1208, __pyx_L4_error)
      }
    }
    #endif
+1209:         assert Block_Length(block) == 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 3) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1209, __pyx_L4_error)
      }
    }
    #endif
+1210:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1210, __pyx_L4_error)
      }
    }
    #endif
+1211:         assert Block_Endex(block) == 0x1234 + 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1237) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1211, __pyx_L4_error)
      }
    }
    #endif
+1212:         assert Block_Eq_(block, 3 + 0, bytes(3)) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1212, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1212, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 3, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1212, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
/* … */
  __pyx_tuple__11 = PyTuple_Pack(1, __pyx_int_3); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 1212, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__11);
  __Pyx_GIVEREF(__pyx_tuple__11);
+1213:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1214: 
+1215:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1215, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1215, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1215, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1216:         block = Block_Reserve_(block, 0, 0, True)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1216, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1217:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1217, __pyx_L4_error)
      }
    }
    #endif
+1218:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1218, __pyx_L4_error)
      }
    }
    #endif
+1219:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1219, __pyx_L4_error)
      }
    }
    #endif
+1220:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1220, __pyx_L4_error)
      }
    }
    #endif
+1221:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1221, __pyx_L4_error)
      }
    }
    #endif
+1222:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 1222, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1222, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1222, __pyx_L4_error)
      }
    }
    #endif
+1223:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1224: 
+1225:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1225, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1225, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1225, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1226:         block = Block_Reserve_(block, 0, 3, True)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1226, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1227:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1227, __pyx_L4_error)
      }
    }
    #endif
+1228:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1228, __pyx_L4_error)
      }
    }
    #endif
+1229:         assert Block_Length(block) == 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (3 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1229, __pyx_L4_error)
      }
    }
    #endif
+1230:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1230, __pyx_L4_error)
      }
    }
    #endif
+1231:         assert Block_Endex(block) == 0x1234 + 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1237 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1231, __pyx_L4_error)
      }
    }
    #endif
+1232:         assert Block_Eq_(block, 3 + size, bytes(3) + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1232, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = PyNumber_Add(__pyx_t_2, __pyx_v_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1232, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_5); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1232, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (3 + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1232, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+1233:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1234: 
+1235:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1235, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1235, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1235, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1236:         block = Block_Reserve_(block, size, 3, True)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_size, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1236, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1237:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1237, __pyx_L4_error)
      }
    }
    #endif
+1238:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1238, __pyx_L4_error)
      }
    }
    #endif
+1239:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1239, __pyx_L4_error)
      }
    }
    #endif
+1240:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1240, __pyx_L4_error)
      }
    }
    #endif
+1241:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1241, __pyx_L4_error)
      }
    }
    #endif
+1242:         assert Block_Eq_(block, size + 3, data + bytes(3)) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1242, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1242, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1242, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1242, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1243:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1244: 
+1245:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1246:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1246, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1246, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1246, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1247:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1247, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1248:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1248, __pyx_L4_error)
      }
    }
    #endif
+1249:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1249, __pyx_L4_error)
      }
    }
    #endif
+1250:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1250, __pyx_L4_error)
      }
    }
    #endif
+1251:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1251, __pyx_L4_error)
      }
    }
    #endif
+1252:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1252, __pyx_L4_error)
      }
    }
    #endif
+1253:         assert Block_Eq_(block, size + 3, data[:offset] + bytes(3) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1253, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1253, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1253, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1253, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1253, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1253, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1253, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1253, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1253, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1254:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1255: 
+1256:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+1257:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1257, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1257, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1257, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1258:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1258, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1259:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1259, __pyx_L4_error)
      }
    }
    #endif
+1260:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1260, __pyx_L4_error)
      }
    }
    #endif
+1261:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1261, __pyx_L4_error)
      }
    }
    #endif
+1262:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1262, __pyx_L4_error)
      }
    }
    #endif
+1263:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1263, __pyx_L4_error)
      }
    }
    #endif
+1264:         assert Block_Eq_(block, size + 3, data[:offset] + bytes(3) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1264, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1264, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1264, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1264, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1264, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1264, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1264, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1264, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1264, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1265:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1266: 
+1267:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+1268:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1268, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1268, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1268, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1269:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1269, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1270:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1270, __pyx_L4_error)
      }
    }
    #endif
+1271:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1271, __pyx_L4_error)
      }
    }
    #endif
+1272:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1272, __pyx_L4_error)
      }
    }
    #endif
+1273:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1273, __pyx_L4_error)
      }
    }
    #endif
+1274:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1274, __pyx_L4_error)
      }
    }
    #endif
+1275:         assert Block_Eq_(block, size + 3, data[:offset] + bytes(3) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1275, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1275, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1275, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1275, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1275, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1275, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1275, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1275, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1275, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1276:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1277: 
+1278:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1278, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1278, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1278, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1279:         block = Block_Reserve_(block, 0, size, True)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1279, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1280:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1280, __pyx_L4_error)
      }
    }
    #endif
+1281:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1281, __pyx_L4_error)
      }
    }
    #endif
+1282:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1282, __pyx_L4_error)
      }
    }
    #endif
+1283:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1283, __pyx_L4_error)
      }
    }
    #endif
+1284:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1284, __pyx_L4_error)
      }
    }
    #endif
+1285:         assert Block_Eq_(block, size + size, bytes(size) + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1285, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1285, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_Add(__pyx_t_5, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1285, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1285, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1285, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1286:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1287: 
+1288:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1288, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1288, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1288, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1289:         block = Block_Reserve_(block, size, size, True)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_size, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1289, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1290:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1290, __pyx_L4_error)
      }
    }
    #endif
+1291:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1291, __pyx_L4_error)
      }
    }
    #endif
+1292:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1292, __pyx_L4_error)
      }
    }
    #endif
+1293:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1293, __pyx_L4_error)
      }
    }
    #endif
+1294:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1294, __pyx_L4_error)
      }
    }
    #endif
+1295:         assert Block_Eq_(block, size + size, data + bytes(size)) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1295, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1295, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1295, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1295, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1295, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1296:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1297: 
+1298:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1299:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1299, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1299, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1299, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1300:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1300, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1301:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1301, __pyx_L4_error)
      }
    }
    #endif
+1302:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1302, __pyx_L4_error)
      }
    }
    #endif
+1303:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1303, __pyx_L4_error)
      }
    }
    #endif
+1304:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1304, __pyx_L4_error)
      }
    }
    #endif
+1305:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1305, __pyx_L4_error)
      }
    }
    #endif
+1306:         assert Block_Eq_(block, size + size, data[:offset] + bytes(size) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1306, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyNumber_Add(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1306, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1306, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1306, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1306, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1307:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1308: 
+1309:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+1310:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1310, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1310, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1310, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1311:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1311, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1312:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1312, __pyx_L4_error)
      }
    }
    #endif
+1313:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1313, __pyx_L4_error)
      }
    }
    #endif
+1314:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1314, __pyx_L4_error)
      }
    }
    #endif
+1315:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1315, __pyx_L4_error)
      }
    }
    #endif
+1316:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1316, __pyx_L4_error)
      }
    }
    #endif
+1317:         assert Block_Eq_(block, size + size, data[:offset] + bytes(size) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1317, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1317, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1317, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1317, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1317, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1318:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1319: 
+1320:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+1321:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1321, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1321, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1321, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1322:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1322, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1323:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1323, __pyx_L4_error)
      }
    }
    #endif
+1324:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1324, __pyx_L4_error)
      }
    }
    #endif
+1325:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1325, __pyx_L4_error)
      }
    }
    #endif
+1326:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1326, __pyx_L4_error)
      }
    }
    #endif
+1327:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1327, __pyx_L4_error)
      }
    }
    #endif
+1328:         assert Block_Eq_(block, size + size, data[:offset] + bytes(size) + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1328, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyNumber_Add(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1328, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1328, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1328, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1328, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1329:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1330: 
+1331:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1331, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1331, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1331, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1332:         with pytest.raises(OverflowError, match='size overflow'): Block_Reserve_(block, 0, SIZE_MAX, True)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1332, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 1332, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__12, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1332, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1332, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1332, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_2 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, SIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1332, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_6) < 0) __PYX_ERR(0, 1332, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1332, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1332, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 1332, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_6);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 1332, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1332, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 1332, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);
+1333:         with pytest.raises(OverflowError, match='size overflow'): Block_Reserve_(block, 0, SIZE_HMAX, True)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1333, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1333, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1333, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 1333, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__13, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1333, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1333, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1333, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      __pyx_t_6 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1333, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, 0, SIZE_HMAX, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1333, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_2) < 0) __PYX_ERR(0, 1333, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1333, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1333, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 1333, __pyx_L26_except_error)
            __pyx_t_13 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_2);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_6, __pyx_t_2);
              __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_2 = 0; 
              __PYX_ERR(0, 1333, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_10, __pyx_t_9);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_10, __pyx_t_9);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1333, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__13 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 1333, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);
+1334:         with pytest.raises(IndexError, match='index out of range'): Block_Reserve_(block, size + 1, 1, True)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1334, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1334, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1334, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 1334, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__14, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1334, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1334, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1334, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_2 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1334, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Reserve_(__pyx_v_block, (__pyx_v_size + 1), 1, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1334, __pyx_L38_error)
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L43_try_end;
          __pyx_L38_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_6) < 0) __PYX_ERR(0, 1334, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1334, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1334, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 1334, __pyx_L40_except_error)
            __pyx_t_14 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_6);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 1334, __pyx_L40_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L39_exception_handled;
          }
          __pyx_L40_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L39_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L43_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1334, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L37;
        }
        __pyx_L37:;
      }
      goto __pyx_L47;
      __pyx_L34_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L47:;
    }
/* … */
  __pyx_tuple__14 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(0, 1334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__14);
  __Pyx_GIVEREF(__pyx_tuple__14);
+1335:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1336: 
 1337:     finally:
+1338:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1339: 
 1340: 
+1341: def test_Block_Delete_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_75test_Block_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_74test_Block_Delete_[] = "test_Block_Delete_()";
static PyMethodDef __pyx_mdef_7_test_c_75test_Block_Delete_ = {"test_Block_Delete_", (PyCFunction)__pyx_pw_7_test_c_75test_Block_Delete_, METH_NOARGS, __pyx_doc_7_test_c_74test_Block_Delete_};
static PyObject *__pyx_pw_7_test_c_75test_Block_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Delete_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_74test_Block_Delete_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_74test_Block_Delete_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Delete_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__184 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__184)) __PYX_ERR(0, 1341, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__184);
  __Pyx_GIVEREF(__pyx_tuple__184);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_75test_Block_Delete_, 0, __pyx_n_s_test_Block_Delete, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__185)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1341, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Delete, __pyx_t_1) < 0) __PYX_ERR(0, 1341, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__185 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__184, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Delete, 1341, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__185)) __PYX_ERR(0, 1341, __pyx_L1_error)
 1342:     cdef:
+1343:         Block_* block = NULL
  __pyx_v_block = NULL;
+1344:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1345:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1346:         size_t start
 1347:         size_t endex
 1348:         bytearray buffer
 1349: 
+1350:     try:
  /*try:*/ {
+1351:         start = endex = 0
    __pyx_v_start = 0;
    __pyx_v_endex = 0;
+1352:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1352, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1353:         block = Block_Delete_(block, 0, 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Delete_(__pyx_v_block, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1353, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1354:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1354, __pyx_L4_error)
      }
    }
    #endif
+1355:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1355, __pyx_L4_error)
      }
    }
    #endif
+1356:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1356, __pyx_L4_error)
      }
    }
    #endif
+1357:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1357, __pyx_L4_error)
      }
    }
    #endif
+1358:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1358, __pyx_L4_error)
      }
    }
    #endif
+1359:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1359, __pyx_L4_error)
      }
    }
    #endif
+1360:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1361: 
+1362:         for start in range(size):
    __pyx_t_2 = __pyx_v_size;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start = __pyx_t_4;
+1363:             for endex in range(start, size):
      __pyx_t_5 = __pyx_v_size;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = __pyx_v_start; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex = __pyx_t_7;
+1364:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1364, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+1365:                 del buffer[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_buffer, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 1365, __pyx_L4_error)
+1366:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 1366, __pyx_L4_error)
        }
        __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 1366, __pyx_L4_error)
        __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_9); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1366, __pyx_L4_error)
        __pyx_v_block = __pyx_t_1;
+1367:                 block = Block_Delete_(block, start, endex - start)
        __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Delete_(__pyx_v_block, __pyx_v_start, (__pyx_v_endex - __pyx_v_start)); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1367, __pyx_L4_error)
        __pyx_v_block = __pyx_t_1;
+1368:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1368, __pyx_L4_error)
          }
        }
        #endif
+1369:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1369, __pyx_L4_error)
          }
        }
        #endif
+1370:                 assert Block_Length(block) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1370, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_10)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1370, __pyx_L4_error)
          }
        }
        #endif
+1371:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1371, __pyx_L4_error)
          }
        }
        #endif
+1372:                 assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1372, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_10))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1372, __pyx_L4_error)
          }
        }
        #endif
+1373:                 assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1373, __pyx_L4_error)
          __pyx_t_11 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 1373, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_10), __pyx_t_11) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1373, __pyx_L4_error)
          }
        }
        #endif
+1374:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 1375: 
+1376:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1376, __pyx_L4_error)
    }
    __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 1376, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_9); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1376, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1377:         with pytest.raises(OverflowError, match='size overflow'): Block_Delete_(block, 0, SIZE_MAX)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 1377, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__15, __pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1377, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_8 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1377, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Delete_(__pyx_v_block, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1377, __pyx_L14_error)
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_8, &__pyx_t_12) < 0) __PYX_ERR(0, 1377, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_8, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1377, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1377, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 1377, __pyx_L16_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_8, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_8 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 1377, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1377, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__15 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(0, 1377, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__15);
  __Pyx_GIVEREF(__pyx_tuple__15);
+1378:         with pytest.raises(IndexError, match='index out of range'): Block_Delete_(block, size + 1, 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1378, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1378, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1378, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 1378, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__16, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1378, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1378, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1378, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1378, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Delete_(__pyx_v_block, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1378, __pyx_L28_error)
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_8) < 0) __PYX_ERR(0, 1378, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_8); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1378, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1378, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 1378, __pyx_L30_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_8);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1378, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1378, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
/* … */
  __pyx_tuple__16 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 1378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__16);
  __Pyx_GIVEREF(__pyx_tuple__16);
+1379:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1380: 
 1381:     finally:
+1382:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_16, __pyx_t_17);
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1383: 
 1384: 
+1385: def test_Block_Clear():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_77test_Block_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_76test_Block_Clear[] = "test_Block_Clear()";
static PyMethodDef __pyx_mdef_7_test_c_77test_Block_Clear = {"test_Block_Clear", (PyCFunction)__pyx_pw_7_test_c_77test_Block_Clear, METH_NOARGS, __pyx_doc_7_test_c_76test_Block_Clear};
static PyObject *__pyx_pw_7_test_c_77test_Block_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Clear (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_76test_Block_Clear(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_76test_Block_Clear(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Clear", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_Block_Clear", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__186 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__186)) __PYX_ERR(0, 1385, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__186);
  __Pyx_GIVEREF(__pyx_tuple__186);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_77test_Block_Clear, 0, __pyx_n_s_test_Block_Clear, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__187)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1385, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Clear, __pyx_t_1) < 0) __PYX_ERR(0, 1385, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__187 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__186, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Clear, 1385, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__187)) __PYX_ERR(0, 1385, __pyx_L1_error)
 1386:     cdef:
+1387:         Block_* block = NULL
  __pyx_v_block = NULL;
 1388: 
+1389:     try:
  /*try:*/ {
+1390:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1390, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1391:         block = Block_Clear(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Clear(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1391, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1392:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1392, __pyx_L4_error)
      }
    }
    #endif
+1393:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1393, __pyx_L4_error)
      }
    }
    #endif
+1394:         assert block.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1394, __pyx_L4_error)
      }
    }
    #endif
+1395:         assert block.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1395, __pyx_L4_error)
      }
    }
    #endif
+1396:         assert block.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1396, __pyx_L4_error)
      }
    }
    #endif
+1397:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1397, __pyx_L4_error)
      }
    }
    #endif
+1398:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1398, __pyx_L4_error)
      }
    }
    #endif
+1399:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1399, __pyx_L4_error)
      }
    }
    #endif
+1400:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1401: 
+1402:         block = Block_FromObject(0x1234, DATA1, True)
    __pyx_t_2 = __pyx_v_7_test_c_DATA1;
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1402, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_v_block = __pyx_t_1;
+1403:         block = Block_Clear(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Clear(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1403, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1404:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1404, __pyx_L4_error)
      }
    }
    #endif
+1405:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1405, __pyx_L4_error)
      }
    }
    #endif
+1406:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1406, __pyx_L4_error)
      }
    }
    #endif
+1407:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1407, __pyx_L4_error)
      }
    }
    #endif
+1408:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1408, __pyx_L4_error)
      }
    }
    #endif
+1409:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1410: 
 1411:     finally:
+1412:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __pyx_t_3 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_7, __pyx_t_8);
      __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
      __pyx_lineno = __pyx_t_3; __pyx_clineno = __pyx_t_4; __pyx_filename = __pyx_t_5;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1413: 
 1414: 
+1415: def test_Block_Get_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_79test_Block_Get_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_78test_Block_Get_[] = "test_Block_Get_()";
static PyMethodDef __pyx_mdef_7_test_c_79test_Block_Get_ = {"test_Block_Get_", (PyCFunction)__pyx_pw_7_test_c_79test_Block_Get_, METH_NOARGS, __pyx_doc_7_test_c_78test_Block_Get_};
static PyObject *__pyx_pw_7_test_c_79test_Block_Get_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Get_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_78test_Block_Get_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_78test_Block_Get_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Get_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_AddTraceback("_test_c.test_Block_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__188 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__188)) __PYX_ERR(0, 1415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__188);
  __Pyx_GIVEREF(__pyx_tuple__188);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_79test_Block_Get_, 0, __pyx_n_s_test_Block_Get, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__189)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Get, __pyx_t_1) < 0) __PYX_ERR(0, 1415, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__189 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__188, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Get, 1415, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__189)) __PYX_ERR(0, 1415, __pyx_L1_error)
 1416:     cdef:
+1417:         Block_* block = NULL
  __pyx_v_block = NULL;
+1418:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1419:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1420:         size_t offset
+1421:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1422: 
+1423:     try:
  /*try:*/ {
+1424:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1424, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1424, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1424, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 1425: 
+1426:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+1427:             assert Block_Get_(block, offset) == data[offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get_(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1427, __pyx_L4_error)
        __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1427, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_data, __pyx_v_offset, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1427, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyObject_RichCompare(__pyx_t_7, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1427, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1427, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_10)) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1427, __pyx_L4_error)
        }
      }
      #endif
    }
 1428: 
+1429:         with pytest.raises(IndexError, match=match): Block_Get_(block,  13)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1429, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1429, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1429, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1429, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__17, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1429, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1429, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1429, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_9 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1429, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get_(__pyx_v_block, 13); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1429, __pyx_L12_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          goto __pyx_L17_try_end;
          __pyx_L12_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_9, &__pyx_t_8) < 0) __PYX_ERR(0, 1429, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_9, __pyx_t_8); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1429, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1429, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_10 < 0) __PYX_ERR(0, 1429, __pyx_L14_except_error)
            __pyx_t_17 = ((!(__pyx_t_10 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_9, __pyx_t_8);
              __pyx_t_7 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1429, __pyx_L14_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L13_exception_handled;
          }
          __pyx_L14_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          goto __pyx_L4_error;
          __pyx_L13_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          __pyx_L17_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1429, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
      }
      goto __pyx_L21;
      __pyx_L8_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L21:;
    }
/* … */
  __pyx_tuple__17 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 1429, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__17);
  __Pyx_GIVEREF(__pyx_tuple__17);
+1430:         with pytest.raises(IndexError, match=match): Block_Get_(block,  99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1430, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1430, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1430, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1430, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__18, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1430, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1430, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1430, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_8 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1430, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get_(__pyx_v_block, 99); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1430, __pyx_L26_error)
          }
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L31_try_end;
          __pyx_L26_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9) < 0) __PYX_ERR(0, 1430, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1430, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1430, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1430, __pyx_L28_except_error)
            __pyx_t_10 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_10) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_8, __pyx_t_9);
              __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 1430, __pyx_L28_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L27_exception_handled;
          }
          __pyx_L28_except_error:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L27_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          __pyx_L31_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1430, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L25;
        }
        __pyx_L25:;
      }
      goto __pyx_L35;
      __pyx_L22_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L35:;
    }
  }
/* … */
  __pyx_tuple__18 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 1430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__18);
  __Pyx_GIVEREF(__pyx_tuple__18);
 1431: 
 1432:     finally:
+1433:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_11 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_15, &__pyx_t_16, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_11, &__pyx_t_13, &__pyx_t_14) < 0)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_13, &__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_6 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_ErrRestore(__pyx_t_11, __pyx_t_13, __pyx_t_14);
      __pyx_t_11 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1434: 
 1435: 
+1436: def test_Block_Get():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_81test_Block_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_80test_Block_Get[] = "test_Block_Get()";
static PyMethodDef __pyx_mdef_7_test_c_81test_Block_Get = {"test_Block_Get", (PyCFunction)__pyx_pw_7_test_c_81test_Block_Get, METH_NOARGS, __pyx_doc_7_test_c_80test_Block_Get};
static PyObject *__pyx_pw_7_test_c_81test_Block_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Get (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_80test_Block_Get(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_80test_Block_Get(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Get", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_AddTraceback("_test_c.test_Block_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__190 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__190)) __PYX_ERR(0, 1436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__190);
  __Pyx_GIVEREF(__pyx_tuple__190);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_81test_Block_Get, 0, __pyx_n_s_test_Block_Get_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__191)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Get_2, __pyx_t_1) < 0) __PYX_ERR(0, 1436, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__191 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__190, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Get_2, 1436, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__191)) __PYX_ERR(0, 1436, __pyx_L1_error)
 1437:     cdef:
+1438:         Block_* block = NULL
  __pyx_v_block = NULL;
+1439:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1440:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1441:         ssize_t offset
+1442:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1443: 
+1444:     try:
  /*try:*/ {
+1445:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1445, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1445, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1445, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 1446: 
+1447:         for offset in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_3 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+1448:             assert Block_Get(block, offset) == data[offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1448, __pyx_L4_error)
        __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1448, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_data, __pyx_v_offset, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1448, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyObject_RichCompare(__pyx_t_7, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1448, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1448, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_10)) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1448, __pyx_L4_error)
        }
      }
      #endif
    }
 1449: 
+1450:         with pytest.raises(IndexError, match=match): Block_Get(block,  13)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1450, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1450, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1450, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1450, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__19, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1450, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1450, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1450, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_9 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1450, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, 13); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1450, __pyx_L12_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          goto __pyx_L17_try_end;
          __pyx_L12_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_9, &__pyx_t_8) < 0) __PYX_ERR(0, 1450, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_9, __pyx_t_8); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1450, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1450, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_10 < 0) __PYX_ERR(0, 1450, __pyx_L14_except_error)
            __pyx_t_17 = ((!(__pyx_t_10 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_9, __pyx_t_8);
              __pyx_t_7 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1450, __pyx_L14_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L13_exception_handled;
          }
          __pyx_L14_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          goto __pyx_L4_error;
          __pyx_L13_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          __pyx_L17_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1450, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
      }
      goto __pyx_L21;
      __pyx_L8_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L21:;
    }
/* … */
  __pyx_tuple__19 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 1450, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__19);
  __Pyx_GIVEREF(__pyx_tuple__19);
+1451:         with pytest.raises(IndexError, match=match): Block_Get(block,  99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1451, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1451, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1451, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1451, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__20, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1451, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1451, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1451, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_8 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1451, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, 99); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1451, __pyx_L26_error)
          }
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L31_try_end;
          __pyx_L26_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9) < 0) __PYX_ERR(0, 1451, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1451, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1451, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1451, __pyx_L28_except_error)
            __pyx_t_10 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_10) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_8, __pyx_t_9);
              __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 1451, __pyx_L28_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L27_exception_handled;
          }
          __pyx_L28_except_error:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L27_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          __pyx_L31_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1451, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L25;
        }
        __pyx_L25:;
      }
      goto __pyx_L35;
      __pyx_L22_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L35:;
    }
/* … */
  __pyx_tuple__20 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 1451, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__20);
  __Pyx_GIVEREF(__pyx_tuple__20);
+1452:         with pytest.raises(IndexError, match=match): Block_Get(block, -14)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1452, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1452, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1452, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1452, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__21, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1452, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1452, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1452, __pyx_L36_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_9 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1452, __pyx_L36_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, -14L); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1452, __pyx_L40_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          goto __pyx_L45_try_end;
          __pyx_L40_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_9, &__pyx_t_8) < 0) __PYX_ERR(0, 1452, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_9, __pyx_t_8); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1452, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1452, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_10 < 0) __PYX_ERR(0, 1452, __pyx_L42_except_error)
            __pyx_t_17 = ((!(__pyx_t_10 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_9, __pyx_t_8);
              __pyx_t_7 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1452, __pyx_L42_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L41_exception_handled;
          }
          __pyx_L42_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          goto __pyx_L4_error;
          __pyx_L41_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
          __pyx_L45_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1452, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          }
          goto __pyx_L39;
        }
        __pyx_L39:;
      }
      goto __pyx_L49;
      __pyx_L36_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L49:;
    }
/* … */
  __pyx_tuple__21 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 1452, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__21);
  __Pyx_GIVEREF(__pyx_tuple__21);
+1453:         with pytest.raises(IndexError, match=match): Block_Get(block, -99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1453, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1453, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1453, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1453, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__22, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1453, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1453, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1453, __pyx_L50_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_12 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_12)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_12);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_8 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1453, __pyx_L50_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, -99L); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1453, __pyx_L54_error)
          }
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L59_try_end;
          __pyx_L54_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9) < 0) __PYX_ERR(0, 1453, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_12 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1453, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1453, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1453, __pyx_L56_except_error)
            __pyx_t_10 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_10) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_8, __pyx_t_9);
              __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 1453, __pyx_L56_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L55_exception_handled;
          }
          __pyx_L56_except_error:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L55_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_14, __pyx_t_13);
          __pyx_L59_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_11) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1453, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L53;
        }
        __pyx_L53:;
      }
      goto __pyx_L63;
      __pyx_L50_error:;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      goto __pyx_L4_error;
      __pyx_L63:;
    }
  }
/* … */
  __pyx_tuple__22 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(0, 1453, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__22);
  __Pyx_GIVEREF(__pyx_tuple__22);
 1454: 
 1455:     finally:
+1456:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_11 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_15, &__pyx_t_16, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_11, &__pyx_t_13, &__pyx_t_14) < 0)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_13, &__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_6 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_ErrRestore(__pyx_t_11, __pyx_t_13, __pyx_t_14);
      __pyx_t_11 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1457: 
 1458: 
+1459: def test_Block_Set_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_83test_Block_Set_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_82test_Block_Set_[] = "test_Block_Set_()";
static PyMethodDef __pyx_mdef_7_test_c_83test_Block_Set_ = {"test_Block_Set_", (PyCFunction)__pyx_pw_7_test_c_83test_Block_Set_, METH_NOARGS, __pyx_doc_7_test_c_82test_Block_Set_};
static PyObject *__pyx_pw_7_test_c_83test_Block_Set_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Set_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_82test_Block_Set_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_82test_Block_Set_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  byte_t __pyx_v_value;
  byte_t __pyx_v_complement;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Set_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c.test_Block_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__192 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_value, __pyx_n_s_complement, __pyx_n_s_match); if (unlikely(!__pyx_tuple__192)) __PYX_ERR(0, 1459, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__192);
  __Pyx_GIVEREF(__pyx_tuple__192);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_83test_Block_Set_, 0, __pyx_n_s_test_Block_Set, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__193)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1459, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Set, __pyx_t_1) < 0) __PYX_ERR(0, 1459, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__193 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__192, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Set, 1459, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__193)) __PYX_ERR(0, 1459, __pyx_L1_error)
 1460:     cdef:
+1461:         Block_* block = NULL
  __pyx_v_block = NULL;
+1462:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1463:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1464:         size_t offset
 1465:         byte_t value
 1466:         byte_t complement
+1467:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1468: 
+1469:     try:
  /*try:*/ {
+1470:         for offset in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_offset = __pyx_t_3;
+1471:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 1471, __pyx_L4_error)
      }
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1471, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1471, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+1472:             value = Block_Get__(block, offset)
      __pyx_v_value = __pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block, __pyx_v_offset);
+1473:             complement = <byte_t>(value ^ <byte_t>0xFF)
      __pyx_v_complement = ((byte_t)(__pyx_v_value ^ ((byte_t)0xFF)));
+1474:             assert Block_Set_(block, offset, complement) == value
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set_(__pyx_v_block, __pyx_v_offset, __pyx_v_complement); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1474, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_value) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1474, __pyx_L4_error)
        }
      }
      #endif
+1475:             assert Block_Get__(block, offset) == complement
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Get__(__pyx_v_block, __pyx_v_offset) == __pyx_v_complement) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1475, __pyx_L4_error)
        }
      }
      #endif
+1476:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
 1477: 
+1478:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1478, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1478, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1478, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+1479:         with pytest.raises(IndexError, match=match): Block_Set_(block,  13, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1479, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1479, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1479, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1479, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__23, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1479, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1479, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1479, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_7 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1479, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set_(__pyx_v_block, 13, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1479, __pyx_L12_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          goto __pyx_L17_try_end;
          __pyx_L12_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_7, &__pyx_t_8) < 0) __PYX_ERR(0, 1479, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1479, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1479, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 1479, __pyx_L14_except_error)
            __pyx_t_17 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_7, __pyx_t_8);
              __pyx_t_9 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1479, __pyx_L14_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L13_exception_handled;
          }
          __pyx_L14_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          goto __pyx_L4_error;
          __pyx_L13_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          __pyx_L17_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1479, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
      }
      goto __pyx_L21;
      __pyx_L8_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L21:;
    }
/* … */
  __pyx_tuple__23 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 1479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__23);
  __Pyx_GIVEREF(__pyx_tuple__23);
+1480:         with pytest.raises(IndexError, match=match): Block_Set_(block,  99, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1480, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1480, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1480, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1480, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__24, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1480, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1480, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1480, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1480, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set_(__pyx_v_block, 99, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1480, __pyx_L26_error)
          }
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L31_try_end;
          __pyx_L26_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 1480, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1480, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1480, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1480, __pyx_L28_except_error)
            __pyx_t_16 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_8, __pyx_t_7);
              __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 1480, __pyx_L28_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L27_exception_handled;
          }
          __pyx_L28_except_error:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L27_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          __pyx_L31_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1480, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L25;
        }
        __pyx_L25:;
      }
      goto __pyx_L35;
      __pyx_L22_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L35:;
    }
/* … */
  __pyx_tuple__24 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 1480, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__24);
  __Pyx_GIVEREF(__pyx_tuple__24);
+1481:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1482: 
 1483:     finally:
+1484:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_14, &__pyx_t_15, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_12, &__pyx_t_13) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_12, &__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_6 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_12, __pyx_t_13);
      __pyx_t_10 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1485: 
 1486: 
+1487: def test_Block_Set():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_85test_Block_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_84test_Block_Set[] = "test_Block_Set()";
static PyMethodDef __pyx_mdef_7_test_c_85test_Block_Set = {"test_Block_Set", (PyCFunction)__pyx_pw_7_test_c_85test_Block_Set, METH_NOARGS, __pyx_doc_7_test_c_84test_Block_Set};
static PyObject *__pyx_pw_7_test_c_85test_Block_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Set (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_84test_Block_Set(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_84test_Block_Set(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_offset;
  byte_t __pyx_v_value;
  byte_t __pyx_v_complement;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Set", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c.test_Block_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__194 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_value, __pyx_n_s_complement, __pyx_n_s_match); if (unlikely(!__pyx_tuple__194)) __PYX_ERR(0, 1487, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__194);
  __Pyx_GIVEREF(__pyx_tuple__194);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_85test_Block_Set, 0, __pyx_n_s_test_Block_Set_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__195)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1487, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Set_2, __pyx_t_1) < 0) __PYX_ERR(0, 1487, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__195 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__194, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Set_2, 1487, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__195)) __PYX_ERR(0, 1487, __pyx_L1_error)
 1488:     cdef:
+1489:         Block_* block = NULL
  __pyx_v_block = NULL;
+1490:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1491:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1492:         ssize_t offset
 1493:         byte_t value
 1494:         byte_t complement
+1495:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1496: 
+1497:     try:
  /*try:*/ {
+1498:         for offset in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_1 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_offset = __pyx_t_3;
+1499:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 1499, __pyx_L4_error)
      }
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1499, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1499, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+1500:             value = Block_Get(block, offset)
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1500, __pyx_L4_error)
      __pyx_v_value = __pyx_t_6;
+1501:             complement = <byte_t>(value ^ <byte_t>0xFF)
      __pyx_v_complement = ((byte_t)(__pyx_v_value ^ ((byte_t)0xFF)));
+1502:             assert Block_Set(block, offset, complement) == value
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set(__pyx_v_block, __pyx_v_offset, __pyx_v_complement); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1502, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_value) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1502, __pyx_L4_error)
        }
      }
      #endif
+1503:             assert Block_Get(block, offset) == complement
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1503, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_complement) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1503, __pyx_L4_error)
        }
      }
      #endif
+1504:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
 1505: 
+1506:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1506, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1506, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1506, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+1507:         with pytest.raises(IndexError, match=match): Block_Set(block,  13, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1507, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1507, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1507, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1507, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__25, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1507, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1507, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1507, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_7 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1507, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set(__pyx_v_block, 13, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1507, __pyx_L12_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          goto __pyx_L17_try_end;
          __pyx_L12_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_7, &__pyx_t_8) < 0) __PYX_ERR(0, 1507, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1507, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1507, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 1507, __pyx_L14_except_error)
            __pyx_t_17 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_7, __pyx_t_8);
              __pyx_t_9 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1507, __pyx_L14_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L13_exception_handled;
          }
          __pyx_L14_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          goto __pyx_L4_error;
          __pyx_L13_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          __pyx_L17_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1507, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
      }
      goto __pyx_L21;
      __pyx_L8_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L21:;
    }
/* … */
  __pyx_tuple__25 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 1507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__25);
  __Pyx_GIVEREF(__pyx_tuple__25);
+1508:         with pytest.raises(IndexError, match=match): Block_Set(block,  99, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1508, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1508, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1508, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1508, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__26, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1508, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1508, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1508, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1508, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set(__pyx_v_block, 99, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1508, __pyx_L26_error)
          }
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L31_try_end;
          __pyx_L26_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 1508, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1508, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1508, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1508, __pyx_L28_except_error)
            __pyx_t_16 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_8, __pyx_t_7);
              __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 1508, __pyx_L28_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L27_exception_handled;
          }
          __pyx_L28_except_error:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L27_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          __pyx_L31_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1508, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L25;
        }
        __pyx_L25:;
      }
      goto __pyx_L35;
      __pyx_L22_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L35:;
    }
/* … */
  __pyx_tuple__26 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(0, 1508, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__26);
  __Pyx_GIVEREF(__pyx_tuple__26);
+1509:         with pytest.raises(IndexError, match=match): Block_Set(block, -14, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1509, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1509, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1509, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1509, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__27, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1509, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1509, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1509, __pyx_L36_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_7 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1509, __pyx_L36_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set(__pyx_v_block, -14L, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1509, __pyx_L40_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          goto __pyx_L45_try_end;
          __pyx_L40_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_7, &__pyx_t_8) < 0) __PYX_ERR(0, 1509, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1509, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1509, __pyx_L42_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 1509, __pyx_L42_except_error)
            __pyx_t_17 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_17) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_7, __pyx_t_8);
              __pyx_t_9 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 1509, __pyx_L42_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L41_exception_handled;
          }
          __pyx_L42_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          goto __pyx_L4_error;
          __pyx_L41_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
          __pyx_L45_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1509, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          }
          goto __pyx_L39;
        }
        __pyx_L39:;
      }
      goto __pyx_L49;
      __pyx_L36_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L49:;
    }
/* … */
  __pyx_tuple__27 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 1509, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__27);
  __Pyx_GIVEREF(__pyx_tuple__27);
+1510:         with pytest.raises(IndexError, match=match): Block_Set(block, -99, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1510, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1510, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1510, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1510, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__28, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1510, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1510, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1510, __pyx_L50_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1510, __pyx_L50_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Set(__pyx_v_block, -99L, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1510, __pyx_L54_error)
          }
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L59_try_end;
          __pyx_L54_error:;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 1510, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1510, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_11, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1510, __pyx_L56_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (__pyx_t_17 < 0) __PYX_ERR(0, 1510, __pyx_L56_except_error)
            __pyx_t_16 = ((!(__pyx_t_17 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_8, __pyx_t_7);
              __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 1510, __pyx_L56_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L55_exception_handled;
          }
          __pyx_L56_except_error:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L55_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_13, __pyx_t_12);
          __pyx_L59_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_10) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1510, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L53;
        }
        __pyx_L53:;
      }
      goto __pyx_L63;
      __pyx_L50_error:;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L4_error;
      __pyx_L63:;
    }
/* … */
  __pyx_tuple__28 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 1510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__28);
  __Pyx_GIVEREF(__pyx_tuple__28);
+1511:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1512: 
 1513:     finally:
+1514:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_14, &__pyx_t_15, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_12, &__pyx_t_13) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_12, &__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_6 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_12, __pyx_t_13);
      __pyx_t_10 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1515: 
 1516: 
+1517: def test_Block_Pop__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_87test_Block_Pop__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_86test_Block_Pop__[] = "test_Block_Pop__()";
static PyMethodDef __pyx_mdef_7_test_c_87test_Block_Pop__ = {"test_Block_Pop__", (PyCFunction)__pyx_pw_7_test_c_87test_Block_Pop__, METH_NOARGS, __pyx_doc_7_test_c_86test_Block_Pop__};
static PyObject *__pyx_pw_7_test_c_87test_Block_Pop__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_86test_Block_Pop__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_86test_Block_Pop__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  byte_t __pyx_v_backup;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_Pop__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__196 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_backup); if (unlikely(!__pyx_tuple__196)) __PYX_ERR(0, 1517, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__196);
  __Pyx_GIVEREF(__pyx_tuple__196);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_87test_Block_Pop__, 0, __pyx_n_s_test_Block_Pop, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__197)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1517, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop, __pyx_t_1) < 0) __PYX_ERR(0, 1517, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__197 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__196, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop, 1517, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__197)) __PYX_ERR(0, 1517, __pyx_L1_error)
 1518:     cdef:
+1519:         Block_* block = NULL
  __pyx_v_block = NULL;
+1520:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1521:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1522:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
 1523:         byte_t backup
 1524: 
+1525:     try:
  /*try:*/ {
+1526:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1526, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1526, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1526, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1527:         backup = 0
    __pyx_v_backup = 0;
+1528:         block = Block_Pop__(block, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop__(__pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1528, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1529:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1529, __pyx_L4_error)
      }
    }
    #endif
+1530:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1530, __pyx_L4_error)
      }
    }
    #endif
+1531:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1531, __pyx_L4_error)
      }
    }
    #endif
+1532:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1532, __pyx_L4_error)
      }
    }
    #endif
+1533:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1533, __pyx_L4_error)
      }
    }
    #endif
+1534:         assert Block_Eq_(block, size - 1, data[:-1]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1534, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1534, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_3); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1534, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1534, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1535:         assert backup == b'!'[0]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1535, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_kp_b__29, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1535, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1535, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1535, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1535, __pyx_L4_error)
      }
    }
    #endif
+1536:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1537: 
+1538:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1538, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1539:         with pytest.raises(IndexError, match=match): Block_Pop__(block, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1539, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1539, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1539, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1539, __pyx_L4_error)
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__30, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1539, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1539, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1539, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_6 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1539, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop__(__pyx_v_block, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1539, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop__", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 1539, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1539, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1539, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_7 < 0) __PYX_ERR(0, 1539, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_7 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_6, __pyx_t_5);
              __pyx_t_3 = 0; __pyx_t_6 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 1539, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1539, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__30 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(0, 1539, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__30);
  __Pyx_GIVEREF(__pyx_tuple__30);
+1540:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1541: 
 1542:     finally:
+1543:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_12, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1544: 
 1545: 
+1546: def test_Block_Pop_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_89test_Block_Pop_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_88test_Block_Pop_[] = "test_Block_Pop_()";
static PyMethodDef __pyx_mdef_7_test_c_89test_Block_Pop_ = {"test_Block_Pop_", (PyCFunction)__pyx_pw_7_test_c_89test_Block_Pop_, METH_NOARGS, __pyx_doc_7_test_c_88test_Block_Pop_};
static PyObject *__pyx_pw_7_test_c_89test_Block_Pop_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_88test_Block_Pop_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_88test_Block_Pop_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  byte_t __pyx_v_backup;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__198 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_backup, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__198)) __PYX_ERR(0, 1546, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__198);
  __Pyx_GIVEREF(__pyx_tuple__198);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_89test_Block_Pop_, 0, __pyx_n_s_test_Block_Pop_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__199)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1546, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop_2, __pyx_t_1) < 0) __PYX_ERR(0, 1546, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__199 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__198, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop_2, 1546, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__199)) __PYX_ERR(0, 1546, __pyx_L1_error)
 1547:     cdef:
+1548:         Block_* block = NULL
  __pyx_v_block = NULL;
+1549:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1550:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1551:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
 1552:         byte_t backup
 1553:         size_t offset
 1554: 
+1555:     try:
  /*try:*/ {
+1556:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1556, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1556, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1556, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1557:         backup = 0
    __pyx_v_backup = 0;
+1558:         block = Block_Pop_(block, size - 1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop_(__pyx_v_block, (__pyx_v_size - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1558, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1559:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1559, __pyx_L4_error)
      }
    }
    #endif
+1560:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1560, __pyx_L4_error)
      }
    }
    #endif
+1561:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1561, __pyx_L4_error)
      }
    }
    #endif
+1562:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1562, __pyx_L4_error)
      }
    }
    #endif
+1563:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1563, __pyx_L4_error)
      }
    }
    #endif
+1564:         assert Block_Eq_(block, size - 1, data[:-1]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1564, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1564, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_3); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1564, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1564, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1565:         assert backup == data[-1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1565, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1565, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1565, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1565, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1565, __pyx_L4_error)
      }
    }
    #endif
+1566:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1567: 
+1568:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1568, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1568, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1568, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1569:         backup = 0
    __pyx_v_backup = 0;
+1570:         block = Block_Pop_(block, 0, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop_(__pyx_v_block, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1570, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1571:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1571, __pyx_L4_error)
      }
    }
    #endif
+1572:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1572, __pyx_L4_error)
      }
    }
    #endif
+1573:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1573, __pyx_L4_error)
      }
    }
    #endif
+1574:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1574, __pyx_L4_error)
      }
    }
    #endif
+1575:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1575, __pyx_L4_error)
      }
    }
    #endif
+1576:         assert Block_Eq_(block, size - 1, data[1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1576, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1576, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1576, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1576, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1577:         assert backup == data[0]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1577, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1577, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1577, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1577, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1577, __pyx_L4_error)
      }
    }
    #endif
+1578:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1579: 
+1580:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1581:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1581, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1581, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1581, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1582:         backup = 0
    __pyx_v_backup = 0;
+1583:         block = Block_Pop_(block, offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop_(__pyx_v_block, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1583, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1584:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1584, __pyx_L4_error)
      }
    }
    #endif
+1585:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1585, __pyx_L4_error)
      }
    }
    #endif
+1586:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1586, __pyx_L4_error)
      }
    }
    #endif
+1587:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1587, __pyx_L4_error)
      }
    }
    #endif
+1588:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1588, __pyx_L4_error)
      }
    }
    #endif
+1589:         assert Block_Eq_(block, size - 1, data[:offset] + data[offset + 1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1589, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1589, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1589, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, (__pyx_v_offset + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1589, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1589, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1589, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1589, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1590:         assert backup == data[offset]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1590, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, __pyx_v_offset, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1590, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1590, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1590, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1590, __pyx_L4_error)
      }
    }
    #endif
+1591:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1592: 
+1593:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1593, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1594:         with pytest.raises(IndexError, match=match): Block_Pop_(block, 0, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1594, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1594, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1594, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1594, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__31, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1594, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1594, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1594, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1594, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1594, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 1594, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1594, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1594, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_7 < 0) __PYX_ERR(0, 1594, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_7 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_3, __pyx_t_5);
              __pyx_t_6 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 1594, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1594, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__31 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 1594, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__31);
  __Pyx_GIVEREF(__pyx_tuple__31);
+1595:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1596: 
+1597:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1597, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1597, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1597, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1598:         with pytest.raises(IndexError, match=match): Block_Pop_(block, size, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1598, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1598, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1598, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1598, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__32, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1598, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1598, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1598, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_5 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1598, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop_(__pyx_v_block, __pyx_v_size, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1598, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_3) < 0) __PYX_ERR(0, 1598, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1598, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1598, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 1598, __pyx_L26_except_error)
            __pyx_t_7 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_7) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_5, __pyx_t_3);
              __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 1598, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1598, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__32 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 1598, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__32);
  __Pyx_GIVEREF(__pyx_tuple__32);
+1599:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1600: 
 1601:     finally:
+1602:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_10, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1603: 
 1604: 
+1605: def test_Block_Pop():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_91test_Block_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_90test_Block_Pop[] = "test_Block_Pop()";
static PyMethodDef __pyx_mdef_7_test_c_91test_Block_Pop = {"test_Block_Pop", (PyCFunction)__pyx_pw_7_test_c_91test_Block_Pop, METH_NOARGS, __pyx_doc_7_test_c_90test_Block_Pop};
static PyObject *__pyx_pw_7_test_c_91test_Block_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_90test_Block_Pop(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_90test_Block_Pop(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  byte_t __pyx_v_backup;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Pop", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Block_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__200 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_backup, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__200)) __PYX_ERR(0, 1605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__200);
  __Pyx_GIVEREF(__pyx_tuple__200);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_91test_Block_Pop, 0, __pyx_n_s_test_Block_Pop_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__201)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop_3, __pyx_t_1) < 0) __PYX_ERR(0, 1605, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__201 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__200, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop_3, 1605, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__201)) __PYX_ERR(0, 1605, __pyx_L1_error)
 1606:     cdef:
+1607:         Block_* block = NULL
  __pyx_v_block = NULL;
+1608:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1609:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1610:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
 1611:         byte_t backup
 1612:         ssize_t offset
 1613: 
+1614:     try:
  /*try:*/ {
+1615:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1615, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1615, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1615, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1616:         backup = 0
    __pyx_v_backup = 0;
+1617:         block = Block_Pop(block, <ssize_t>size - 1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, (((Py_ssize_t)__pyx_v_size) - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1617, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1618:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1618, __pyx_L4_error)
      }
    }
    #endif
+1619:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1619, __pyx_L4_error)
      }
    }
    #endif
+1620:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1620, __pyx_L4_error)
      }
    }
    #endif
+1621:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1621, __pyx_L4_error)
      }
    }
    #endif
+1622:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1622, __pyx_L4_error)
      }
    }
    #endif
+1623:         assert Block_Eq_(block, size - 1, data[:-1]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1623, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1623, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_3); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1623, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1623, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1624:         assert backup == data[-1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1624, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1624, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1624, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1624, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1624, __pyx_L4_error)
      }
    }
    #endif
+1625:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1626: 
+1627:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1627, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1627, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1627, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1628:         backup = 0
    __pyx_v_backup = 0;
+1629:         block = Block_Pop(block, -1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, -1L, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1629, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1630:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1630, __pyx_L4_error)
      }
    }
    #endif
+1631:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1631, __pyx_L4_error)
      }
    }
    #endif
+1632:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1632, __pyx_L4_error)
      }
    }
    #endif
+1633:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1633, __pyx_L4_error)
      }
    }
    #endif
+1634:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1634, __pyx_L4_error)
      }
    }
    #endif
+1635:         assert Block_Eq_(block, size - 1, data[:-1]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1635, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1635, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1635, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1635, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1636:         assert backup == data[-1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1636, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1636, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1636, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1636, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1636, __pyx_L4_error)
      }
    }
    #endif
+1637:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1638: 
+1639:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1639, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1639, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1639, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1640:         backup = 0
    __pyx_v_backup = 0;
+1641:         block = Block_Pop(block, 0, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1641, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1642:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1642, __pyx_L4_error)
      }
    }
    #endif
+1643:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1643, __pyx_L4_error)
      }
    }
    #endif
+1644:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1644, __pyx_L4_error)
      }
    }
    #endif
+1645:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1645, __pyx_L4_error)
      }
    }
    #endif
+1646:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1646, __pyx_L4_error)
      }
    }
    #endif
+1647:         assert Block_Eq_(block, size - 1, data[1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1647, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1647, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_3); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1647, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1647, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1648:         assert backup == data[0]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1648, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1648, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1648, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1648, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1648, __pyx_L4_error)
      }
    }
    #endif
+1649:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1650: 
+1651:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1651, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1651, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1651, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1652:         backup = 0
    __pyx_v_backup = 0;
+1653:         block = Block_Pop(block, -<ssize_t>size, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, (-((Py_ssize_t)__pyx_v_size)), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1653, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1654:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1654, __pyx_L4_error)
      }
    }
    #endif
+1655:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1655, __pyx_L4_error)
      }
    }
    #endif
+1656:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1656, __pyx_L4_error)
      }
    }
    #endif
+1657:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1657, __pyx_L4_error)
      }
    }
    #endif
+1658:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1658, __pyx_L4_error)
      }
    }
    #endif
+1659:         assert Block_Eq_(block, size - 1, data[1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1659, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1659, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1659, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1660:         assert backup == data[0]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1660, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1660, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1660, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1660, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1660, __pyx_L4_error)
      }
    }
    #endif
+1661:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1662: 
+1663:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1664:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1664, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1664, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1664, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1665:         backup = 0
    __pyx_v_backup = 0;
+1666:         block = Block_Pop(block, offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1666, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1667:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1667, __pyx_L4_error)
      }
    }
    #endif
+1668:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1668, __pyx_L4_error)
      }
    }
    #endif
+1669:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1669, __pyx_L4_error)
      }
    }
    #endif
+1670:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1670, __pyx_L4_error)
      }
    }
    #endif
+1671:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1671, __pyx_L4_error)
      }
    }
    #endif
+1672:         assert Block_Eq_(block, size - 1, data[:offset] + data[offset + 1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1672, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1672, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1672, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, (__pyx_v_offset + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1672, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1672, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1672, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1672, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1673:         assert backup == data[offset]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1673, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, __pyx_v_offset, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1673, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1673, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1673, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1673, __pyx_L4_error)
      }
    }
    #endif
+1674:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1675: 
+1676:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1677:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1677, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1677, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1677, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1678:         backup = 0
    __pyx_v_backup = 0;
+1679:         block = Block_Pop(block, -offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, (-__pyx_v_offset), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1679, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1680:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1680, __pyx_L4_error)
      }
    }
    #endif
+1681:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1681, __pyx_L4_error)
      }
    }
    #endif
+1682:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1682, __pyx_L4_error)
      }
    }
    #endif
+1683:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1683, __pyx_L4_error)
      }
    }
    #endif
+1684:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1684, __pyx_L4_error)
      }
    }
    #endif
+1685:         assert Block_Eq_(block, size - 1, data[:-offset] + data[-offset + 1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1685, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, (-__pyx_v_offset)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1685, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1685, __pyx_L4_error)
      }
      __pyx_t_5 = PySequence_GetSlice(__pyx_v_data, ((-__pyx_v_offset) + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1685, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1685, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1685, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1685, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1686:         assert backup == data[-offset]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1686, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_8 = (-__pyx_v_offset);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, __pyx_t_8, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1686, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1686, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1686, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1686, __pyx_L4_error)
      }
    }
    #endif
+1687:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1688: 
+1689:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1689, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1690:         with pytest.raises(IndexError, match=match): Block_Pop(block,  0, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1690, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1690, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1690, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1690, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__33, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1690, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1690, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1690, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1690, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1690, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 1690, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1690, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1690, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_7 < 0) __PYX_ERR(0, 1690, __pyx_L12_except_error)
            __pyx_t_15 = ((!(__pyx_t_7 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_3, __pyx_t_5);
              __pyx_t_6 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 1690, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1690, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__33 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 1690, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__33);
  __Pyx_GIVEREF(__pyx_tuple__33);
+1691:         with pytest.raises(IndexError, match=match): Block_Pop(block, -1, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1691, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1691, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1691, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1691, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__34, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1691, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1691, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1691, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1691, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, -1L, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1691, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_3) < 0) __PYX_ERR(0, 1691, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1691, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1691, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 1691, __pyx_L26_except_error)
            __pyx_t_7 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_7) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_5, __pyx_t_3);
              __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 1691, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1691, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__34 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 1691, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__34);
  __Pyx_GIVEREF(__pyx_tuple__34);
+1692:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1693: 
+1694:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1694, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1694, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1694, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1695:         with pytest.raises(IndexError, match=match): Block_Pop(block, size, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1695, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1695, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1695, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1695, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__35, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1695, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1695, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1695, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1695, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, __pyx_v_size, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1695, __pyx_L38_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L43_try_end;
          __pyx_L38_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 1695, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1695, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1695, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_7 < 0) __PYX_ERR(0, 1695, __pyx_L40_except_error)
            __pyx_t_15 = ((!(__pyx_t_7 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_3, __pyx_t_5);
              __pyx_t_6 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 1695, __pyx_L40_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L39_exception_handled;
          }
          __pyx_L40_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L39_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L43_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1695, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L37;
        }
        __pyx_L37:;
      }
      goto __pyx_L47;
      __pyx_L34_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L47:;
    }
/* … */
  __pyx_tuple__35 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 1695, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__35);
  __Pyx_GIVEREF(__pyx_tuple__35);
+1696:         with pytest.raises(IndexError, match=match): Block_Pop(block, -<ssize_t>size - 1, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pytest); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1696, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1696, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1696, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1696, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__36, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1696, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1696, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1696, __pyx_L48_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1696, __pyx_L48_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Pop(__pyx_v_block, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1696, __pyx_L52_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L57_try_end;
          __pyx_L52_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_3) < 0) __PYX_ERR(0, 1696, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1696, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1696, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 1696, __pyx_L54_except_error)
            __pyx_t_7 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_7) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_5, __pyx_t_3);
              __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 1696, __pyx_L54_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L53_exception_handled;
          }
          __pyx_L54_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L53_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L57_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1696, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L51;
        }
        __pyx_L51:;
      }
      goto __pyx_L61;
      __pyx_L48_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L61:;
    }
/* … */
  __pyx_tuple__36 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 1696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__36);
  __Pyx_GIVEREF(__pyx_tuple__36);
+1697:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1698: 
 1699:     finally:
+1700:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_19);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_19);
      __pyx_t_16 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_19);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_11, __pyx_t_12);
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_19 = 0;
      __pyx_lineno = __pyx_t_16; __pyx_clineno = __pyx_t_17; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1701: 
 1702: 
+1703: def test_Block_PopLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_93test_Block_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_92test_Block_PopLeft[] = "test_Block_PopLeft()";
static PyMethodDef __pyx_mdef_7_test_c_93test_Block_PopLeft = {"test_Block_PopLeft", (PyCFunction)__pyx_pw_7_test_c_93test_Block_PopLeft, METH_NOARGS, __pyx_doc_7_test_c_92test_Block_PopLeft};
static PyObject *__pyx_pw_7_test_c_93test_Block_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_PopLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_92test_Block_PopLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_92test_Block_PopLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  byte_t __pyx_v_backup;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_PopLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_PopLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__202 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_backup); if (unlikely(!__pyx_tuple__202)) __PYX_ERR(0, 1703, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__202);
  __Pyx_GIVEREF(__pyx_tuple__202);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_93test_Block_PopLeft, 0, __pyx_n_s_test_Block_PopLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__203)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1703, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_PopLeft, __pyx_t_1) < 0) __PYX_ERR(0, 1703, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__203 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__202, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_PopLeft, 1703, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__203)) __PYX_ERR(0, 1703, __pyx_L1_error)
 1704:     cdef:
+1705:         Block_* block = NULL
  __pyx_v_block = NULL;
+1706:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1707:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1708:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
 1709:         byte_t backup
 1710: 
+1711:     try:
  /*try:*/ {
+1712:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1712, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1712, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1712, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1713:         backup = 0
    __pyx_v_backup = 0;
+1714:         block = Block_PopLeft(block, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_PopLeft(__pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1714, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1715:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1715, __pyx_L4_error)
      }
    }
    #endif
+1716:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1716, __pyx_L4_error)
      }
    }
    #endif
+1717:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1717, __pyx_L4_error)
      }
    }
    #endif
+1718:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1718, __pyx_L4_error)
      }
    }
    #endif
+1719:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1719, __pyx_L4_error)
      }
    }
    #endif
+1720:         assert Block_Eq_(block, size - 1, data[1:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1720, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1720, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_t_3); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1720, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1720, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1721:         assert backup == data[0]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyInt_From_byte_t(__pyx_v_backup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1721, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_data, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1721, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1721, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 1721, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1721, __pyx_L4_error)
      }
    }
    #endif
+1722:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1723: 
+1724:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1724, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1725:         with pytest.raises(IndexError, match=match): Block_PopLeft(block, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1725, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1725, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1725, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1725, __pyx_L4_error)
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__37, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1725, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1725, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_3, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1725, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_6 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1725, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_PopLeft(__pyx_v_block, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1725, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_PopLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 1725, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_3, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1725, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1725, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_7 < 0) __PYX_ERR(0, 1725, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_7 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_6, __pyx_t_5);
              __pyx_t_3 = 0; __pyx_t_6 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 1725, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1725, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__37 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 1725, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__37);
  __Pyx_GIVEREF(__pyx_tuple__37);
+1726:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1727: 
 1728:     finally:
+1729:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_12, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1730: 
 1731: 
+1732: def test_Block_Insert_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_95test_Block_Insert_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_94test_Block_Insert_[] = "test_Block_Insert_()";
static PyMethodDef __pyx_mdef_7_test_c_95test_Block_Insert_ = {"test_Block_Insert_", (PyCFunction)__pyx_pw_7_test_c_95test_Block_Insert_, METH_NOARGS, __pyx_doc_7_test_c_94test_Block_Insert_};
static PyObject *__pyx_pw_7_test_c_95test_Block_Insert_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Insert_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_94test_Block_Insert_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_94test_Block_Insert_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Insert_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__204 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__204)) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__204);
  __Pyx_GIVEREF(__pyx_tuple__204);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_95test_Block_Insert_, 0, __pyx_n_s_test_Block_Insert, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__205)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Insert, __pyx_t_1) < 0) __PYX_ERR(0, 1732, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__205 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__204, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Insert, 1732, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__205)) __PYX_ERR(0, 1732, __pyx_L1_error)
 1733:     cdef:
+1734:         Block_* block = NULL
  __pyx_v_block = NULL;
+1735:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1736:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1737:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1738:         size_t offset
 1739: 
+1740:     try:
  /*try:*/ {
+1741:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1741, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1742:         block = Block_Insert_(block, 0, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1742, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1742, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1742, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1743:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1743, __pyx_L4_error)
      }
    }
    #endif
+1744:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1744, __pyx_L4_error)
      }
    }
    #endif
+1745:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1745, __pyx_L4_error)
      }
    }
    #endif
+1746:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1746, __pyx_L4_error)
      }
    }
    #endif
+1747:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1747, __pyx_L4_error)
      }
    }
    #endif
+1748:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1748, __pyx_L4_error)
      }
    }
    #endif
+1749:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1750: 
+1751:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1751, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1751, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1751, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1752:         block = Block_Insert_(block, 0, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1752, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1752, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1752, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1753:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1753, __pyx_L4_error)
      }
    }
    #endif
+1754:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1754, __pyx_L4_error)
      }
    }
    #endif
+1755:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1755, __pyx_L4_error)
      }
    }
    #endif
+1756:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1756, __pyx_L4_error)
      }
    }
    #endif
+1757:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1757, __pyx_L4_error)
      }
    }
    #endif
+1758:         assert Block_Eq_(block, 1 + size, b'@' + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_kp_b__38, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1758, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1758, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1758, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1759:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1760: 
+1761:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1761, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1761, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1761, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1762:         block = Block_Insert_(block, size, b'@'[0])  # after
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1762, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1762, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, __pyx_v_size, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1762, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1763:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1763, __pyx_L4_error)
      }
    }
    #endif
+1764:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1764, __pyx_L4_error)
      }
    }
    #endif
+1765:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1765, __pyx_L4_error)
      }
    }
    #endif
+1766:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1766, __pyx_L4_error)
      }
    }
    #endif
+1767:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1767, __pyx_L4_error)
      }
    }
    #endif
+1768:         assert Block_Eq_(block, size + 1, data + b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_kp_b__38); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1768, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1768, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1768, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1769:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1770: 
+1771:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1772:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1772, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1772, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1772, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1773:         block = Block_Insert_(block, offset, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1773, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1773, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1773, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1774:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1774, __pyx_L4_error)
      }
    }
    #endif
+1775:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1775, __pyx_L4_error)
      }
    }
    #endif
+1776:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1776, __pyx_L4_error)
      }
    }
    #endif
+1777:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1777, __pyx_L4_error)
      }
    }
    #endif
+1778:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1778, __pyx_L4_error)
      }
    }
    #endif
+1779:         assert Block_Eq_(block, size + 1, data[:offset] + b'@' + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1779, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1779, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_kp_b__38); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1779, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1779, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1779, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_7 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1779, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_7); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1779, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1779, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    #endif
+1780:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1781: 
+1782:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1782, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1783:         with pytest.raises(IndexError, match=match): Block_Insert_(block, 1, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1783, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1783, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1783, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1783, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__39, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1783, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1783, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1783, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      __pyx_t_7 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1783, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, 1, 0x69); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1783, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_2) < 0) __PYX_ERR(0, 1783, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1783, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1783, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 1783, __pyx_L12_except_error)
            __pyx_t_15 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_2);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_7, __pyx_t_2);
              __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_2 = 0; 
              __PYX_ERR(0, 1783, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1783, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__39 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 1783, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__39);
  __Pyx_GIVEREF(__pyx_tuple__39);
+1784:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1785: 
+1786:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1786, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1786, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1786, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1787:         with pytest.raises(IndexError, match=match): Block_Insert_(block, size + 1, 0x69)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1787, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1787, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1787, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 1787, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__40, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1787, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1787, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1787, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_2 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1787, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert_(__pyx_v_block, (__pyx_v_size + 1), 0x69); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1787, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_7) < 0) __PYX_ERR(0, 1787, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1787, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1787, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 1787, __pyx_L26_except_error)
            __pyx_t_14 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_2, __pyx_t_7);
              __pyx_t_6 = 0; __pyx_t_2 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 1787, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1787, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__40 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(0, 1787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__40);
  __Pyx_GIVEREF(__pyx_tuple__40);
+1788:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1789: 
 1790:     finally:
+1791:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_19);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_19);
      __pyx_t_16 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_19);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_10, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_19 = 0;
      __pyx_lineno = __pyx_t_16; __pyx_clineno = __pyx_t_17; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1792: 
 1793: 
+1794: def test_Block_Insert():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_97test_Block_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_96test_Block_Insert[] = "test_Block_Insert()";
static PyMethodDef __pyx_mdef_7_test_c_97test_Block_Insert = {"test_Block_Insert", (PyCFunction)__pyx_pw_7_test_c_97test_Block_Insert, METH_NOARGS, __pyx_doc_7_test_c_96test_Block_Insert};
static PyObject *__pyx_pw_7_test_c_97test_Block_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Insert (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_96test_Block_Insert(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_96test_Block_Insert(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  CYTHON_UNUSED PyObject *__pyx_v_match = 0;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Insert", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_Block_Insert", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__206 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__206)) __PYX_ERR(0, 1794, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__206);
  __Pyx_GIVEREF(__pyx_tuple__206);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_97test_Block_Insert, 0, __pyx_n_s_test_Block_Insert_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__207)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1794, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Insert_2, __pyx_t_1) < 0) __PYX_ERR(0, 1794, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__207 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__206, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Insert_2, 1794, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__207)) __PYX_ERR(0, 1794, __pyx_L1_error)
 1795:     cdef:
+1796:         Block_* block = NULL
  __pyx_v_block = NULL;
+1797:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1798:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1799:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 1800:         ssize_t offset
 1801: 
+1802:     try:
  /*try:*/ {
+1803:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1803, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1804:         block = Block_Insert(block, 0, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1804, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1804, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1804, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1805:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1805, __pyx_L4_error)
      }
    }
    #endif
+1806:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1806, __pyx_L4_error)
      }
    }
    #endif
+1807:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1807, __pyx_L4_error)
      }
    }
    #endif
+1808:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1808, __pyx_L4_error)
      }
    }
    #endif
+1809:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1809, __pyx_L4_error)
      }
    }
    #endif
+1810:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1810, __pyx_L4_error)
      }
    }
    #endif
+1811:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1812: 
+1813:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1813, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1814:         block = Block_Insert(block, -1, b'@'[0])  # before, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1814, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1814, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, -1L, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1814, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1815:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1815, __pyx_L4_error)
      }
    }
    #endif
+1816:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1816, __pyx_L4_error)
      }
    }
    #endif
+1817:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1817, __pyx_L4_error)
      }
    }
    #endif
+1818:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1818, __pyx_L4_error)
      }
    }
    #endif
+1819:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1819, __pyx_L4_error)
      }
    }
    #endif
+1820:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1820, __pyx_L4_error)
      }
    }
    #endif
+1821:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1822: 
+1823:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1823, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1824:         block = Block_Insert(block, 1, b'@'[0])  # after, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1824, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1824, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, 1, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1824, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1825:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1825, __pyx_L4_error)
      }
    }
    #endif
+1826:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1826, __pyx_L4_error)
      }
    }
    #endif
+1827:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1827, __pyx_L4_error)
      }
    }
    #endif
+1828:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1828, __pyx_L4_error)
      }
    }
    #endif
+1829:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1829, __pyx_L4_error)
      }
    }
    #endif
+1830:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1830, __pyx_L4_error)
      }
    }
    #endif
+1831:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1832: 
+1833:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1833, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1833, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1833, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1834:         block = Block_Insert(block, 0, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1834, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1834, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1834, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1835:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1835, __pyx_L4_error)
      }
    }
    #endif
+1836:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1836, __pyx_L4_error)
      }
    }
    #endif
+1837:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1837, __pyx_L4_error)
      }
    }
    #endif
+1838:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1838, __pyx_L4_error)
      }
    }
    #endif
+1839:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1839, __pyx_L4_error)
      }
    }
    #endif
+1840:         assert Block_Eq_(block, 1 + size, b'@' + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_kp_b__38, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1840, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1840, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1840, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1841:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1842: 
+1843:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1843, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1843, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1843, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1844:         block = Block_Insert(block, -<ssize_t>size, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1844, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1844, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, (-((Py_ssize_t)__pyx_v_size)), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1844, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1845:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1845, __pyx_L4_error)
      }
    }
    #endif
+1846:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1846, __pyx_L4_error)
      }
    }
    #endif
+1847:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1847, __pyx_L4_error)
      }
    }
    #endif
+1848:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1848, __pyx_L4_error)
      }
    }
    #endif
+1849:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1849, __pyx_L4_error)
      }
    }
    #endif
+1850:         assert Block_Eq_(block, 1 + size, b'@' + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_kp_b__38, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1850, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1850, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1851:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1852: 
+1853:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1853, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1853, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1853, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1854:         block = Block_Insert(block, -<ssize_t>size - 1, b'@'[0])  # before, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1854, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1854, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, ((-((Py_ssize_t)__pyx_v_size)) - 1), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1854, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1855:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1855, __pyx_L4_error)
      }
    }
    #endif
+1856:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1856, __pyx_L4_error)
      }
    }
    #endif
+1857:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1857, __pyx_L4_error)
      }
    }
    #endif
+1858:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1858, __pyx_L4_error)
      }
    }
    #endif
+1859:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1859, __pyx_L4_error)
      }
    }
    #endif
+1860:         assert Block_Eq_(block, 1 + size, b'@' + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_kp_b__38, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1860, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1860, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1860, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1861:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1862: 
+1863:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1863, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1863, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1863, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1864:         block = Block_Insert(block, <ssize_t>size, b'@'[0])  # after
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1864, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1864, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, ((Py_ssize_t)__pyx_v_size), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1864, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1865:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1865, __pyx_L4_error)
      }
    }
    #endif
+1866:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1866, __pyx_L4_error)
      }
    }
    #endif
+1867:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1867, __pyx_L4_error)
      }
    }
    #endif
+1868:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1868, __pyx_L4_error)
      }
    }
    #endif
+1869:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1869, __pyx_L4_error)
      }
    }
    #endif
+1870:         assert Block_Eq_(block, size + 1, data + b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_kp_b__38); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1870, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1870, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1870, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1871:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1872: 
+1873:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1873, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1873, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1873, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1874:         block = Block_Insert(block, <ssize_t>size + 1, b'@'[0])  # after, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1874, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1874, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, (((Py_ssize_t)__pyx_v_size) + 1), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1874, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1875:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1875, __pyx_L4_error)
      }
    }
    #endif
+1876:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1876, __pyx_L4_error)
      }
    }
    #endif
+1877:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1877, __pyx_L4_error)
      }
    }
    #endif
+1878:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1878, __pyx_L4_error)
      }
    }
    #endif
+1879:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1879, __pyx_L4_error)
      }
    }
    #endif
+1880:         assert Block_Eq_(block, size + 1, data + b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_kp_b__38); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1880, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1880, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1880, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1881:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1882: 
+1883:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1884:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1884, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1884, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1884, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1885:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1885, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1885, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1885, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1886:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1886, __pyx_L4_error)
      }
    }
    #endif
+1887:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1887, __pyx_L4_error)
      }
    }
    #endif
+1888:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1888, __pyx_L4_error)
      }
    }
    #endif
+1889:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1889, __pyx_L4_error)
      }
    }
    #endif
+1890:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1890, __pyx_L4_error)
      }
    }
    #endif
+1891:         assert Block_Eq_(block, size + 1, data[:offset] + b'@' + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1891, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1891, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_kp_b__38); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1891, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1891, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1891, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_7 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1891, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_7); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1891, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1891, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    #endif
+1892:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1893: 
+1894:         offset = -<ssize_t>(size >> 1)  # half
    __pyx_v_offset = (-((Py_ssize_t)(__pyx_v_size >> 1)));
+1895:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1895, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1895, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1895, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1896:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_7 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1896, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_7); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1896, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1896, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1897:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1897, __pyx_L4_error)
      }
    }
    #endif
+1898:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1898, __pyx_L4_error)
      }
    }
    #endif
+1899:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1899, __pyx_L4_error)
      }
    }
    #endif
+1900:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1900, __pyx_L4_error)
      }
    }
    #endif
+1901:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1901, __pyx_L4_error)
      }
    }
    #endif
+1902:         assert Block_Eq_(block, size + 1, data[:offset] + b'@' + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1902, __pyx_L4_error)
      }
      __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_2 = PyNumber_Add(__pyx_t_7, __pyx_kp_b__38); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1902, __pyx_L4_error)
      }
      __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_6); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1902, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1902, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1903:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1904: 
+1905:         offset = -1  # before end
    __pyx_v_offset = -1L;
+1906:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1906, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1906, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1906, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1907:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1907, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_6); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1907, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1907, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1908:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1908, __pyx_L4_error)
      }
    }
    #endif
+1909:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1909, __pyx_L4_error)
      }
    }
    #endif
+1910:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1910, __pyx_L4_error)
      }
    }
    #endif
+1911:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1911, __pyx_L4_error)
      }
    }
    #endif
+1912:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1912, __pyx_L4_error)
      }
    }
    #endif
+1913:         assert Block_Eq_(block, size + 1, data[:offset] + b'@' + data[offset:]) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1913, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1913, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = PyNumber_Add(__pyx_t_6, __pyx_kp_b__38); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1913, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1913, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1913, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = PyNumber_Add(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1913, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1913, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1913, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1914:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1915: 
 1916:     finally:
+1917:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13) < 0)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __pyx_t_8 = __pyx_lineno; __pyx_t_9 = __pyx_clineno; __pyx_t_10 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_16);
      }
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_ErrRestore(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0;
      __pyx_lineno = __pyx_t_8; __pyx_clineno = __pyx_t_9; __pyx_filename = __pyx_t_10;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1918: 
 1919: 
+1920: def test_Block_Append():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_99test_Block_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_98test_Block_Append[] = "test_Block_Append()";
static PyMethodDef __pyx_mdef_7_test_c_99test_Block_Append = {"test_Block_Append", (PyCFunction)__pyx_pw_7_test_c_99test_Block_Append, METH_NOARGS, __pyx_doc_7_test_c_98test_Block_Append};
static PyObject *__pyx_pw_7_test_c_99test_Block_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Append (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_98test_Block_Append(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_98test_Block_Append(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Append", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_Block_Append", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__208 = PyTuple_Pack(3, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size); if (unlikely(!__pyx_tuple__208)) __PYX_ERR(0, 1920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__208);
  __Pyx_GIVEREF(__pyx_tuple__208);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_99test_Block_Append, 0, __pyx_n_s_test_Block_Append, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__209)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Append, __pyx_t_1) < 0) __PYX_ERR(0, 1920, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__209 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__208, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Append, 1920, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__209)) __PYX_ERR(0, 1920, __pyx_L1_error)
 1921:     cdef:
+1922:         Block_* block = NULL
  __pyx_v_block = NULL;
+1923:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1924:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1925: 
+1926:     try:
  /*try:*/ {
+1927:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1927, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1928:         block = Block_Append(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1928, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1928, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Append(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1928, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1929:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1929, __pyx_L4_error)
      }
    }
    #endif
+1930:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1930, __pyx_L4_error)
      }
    }
    #endif
+1931:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1931, __pyx_L4_error)
      }
    }
    #endif
+1932:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1932, __pyx_L4_error)
      }
    }
    #endif
+1933:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1933, __pyx_L4_error)
      }
    }
    #endif
+1934:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1934, __pyx_L4_error)
      }
    }
    #endif
+1935:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1936: 
+1937:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1937, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1937, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1937, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1938:         block = Block_Append(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1938, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1938, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Append(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1938, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1939:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1939, __pyx_L4_error)
      }
    }
    #endif
+1940:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1940, __pyx_L4_error)
      }
    }
    #endif
+1941:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1941, __pyx_L4_error)
      }
    }
    #endif
+1942:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1942, __pyx_L4_error)
      }
    }
    #endif
+1943:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1943, __pyx_L4_error)
      }
    }
    #endif
+1944:         assert Block_Eq_(block, size + 1, data + b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_v_data, __pyx_kp_b__38); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1944, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1944, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1945:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1946: 
 1947:     finally:
+1948:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1949: 
 1950: 
+1951: def test_Block_AppendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_101test_Block_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_100test_Block_AppendLeft[] = "test_Block_AppendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_101test_Block_AppendLeft = {"test_Block_AppendLeft", (PyCFunction)__pyx_pw_7_test_c_101test_Block_AppendLeft, METH_NOARGS, __pyx_doc_7_test_c_100test_Block_AppendLeft};
static PyObject *__pyx_pw_7_test_c_101test_Block_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_AppendLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_100test_Block_AppendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_100test_Block_AppendLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_AppendLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_Block_AppendLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__210 = PyTuple_Pack(3, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size); if (unlikely(!__pyx_tuple__210)) __PYX_ERR(0, 1951, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__210);
  __Pyx_GIVEREF(__pyx_tuple__210);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_101test_Block_AppendLeft, 0, __pyx_n_s_test_Block_AppendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__211)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1951, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_AppendLeft, __pyx_t_1) < 0) __PYX_ERR(0, 1951, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__211 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__210, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_AppendLeft, 1951, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__211)) __PYX_ERR(0, 1951, __pyx_L1_error)
 1952:     cdef:
+1953:         Block_* block = NULL
  __pyx_v_block = NULL;
+1954:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1955:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1956: 
+1957:     try:
  /*try:*/ {
+1958:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1958, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1959:         block = Block_AppendLeft(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1959, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1959, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_AppendLeft(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1959, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1960:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1960, __pyx_L4_error)
      }
    }
    #endif
+1961:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1961, __pyx_L4_error)
      }
    }
    #endif
+1962:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1962, __pyx_L4_error)
      }
    }
    #endif
+1963:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1963, __pyx_L4_error)
      }
    }
    #endif
+1964:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1964, __pyx_L4_error)
      }
    }
    #endif
+1965:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1965, __pyx_L4_error)
      }
    }
    #endif
+1966:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 1967: 
+1968:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1968, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1968, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1968, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1969:         block = Block_AppendLeft(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__38, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1969, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyInt_As_byte_t(__pyx_t_2); if (unlikely((__pyx_t_3 == ((byte_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1969, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_AppendLeft(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1969, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1970:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1970, __pyx_L4_error)
      }
    }
    #endif
+1971:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1971, __pyx_L4_error)
      }
    }
    #endif
+1972:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1972, __pyx_L4_error)
      }
    }
    #endif
+1973:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1973, __pyx_L4_error)
      }
    }
    #endif
+1974:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1974, __pyx_L4_error)
      }
    }
    #endif
+1975:         assert Block_Eq_(block, 1 + size, b'@' + data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = PyNumber_Add(__pyx_kp_b__38, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1975, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyBytes_AsUString(__pyx_t_2); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 1975, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1975, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1976:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 1977: 
 1978:     finally:
+1979:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 1980: 
 1981: 
+1982: def test_Block_Extend_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_103test_Block_Extend_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_102test_Block_Extend_[] = "test_Block_Extend_()";
static PyMethodDef __pyx_mdef_7_test_c_103test_Block_Extend_ = {"test_Block_Extend_", (PyCFunction)__pyx_pw_7_test_c_103test_Block_Extend_, METH_NOARGS, __pyx_doc_7_test_c_102test_Block_Extend_};
static PyObject *__pyx_pw_7_test_c_103test_Block_Extend_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Extend_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_102test_Block_Extend_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_102test_Block_Extend_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Extend_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_Block_Extend_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__212 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_data2, __pyx_n_s_size2); if (unlikely(!__pyx_tuple__212)) __PYX_ERR(0, 1982, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__212);
  __Pyx_GIVEREF(__pyx_tuple__212);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_103test_Block_Extend_, 0, __pyx_n_s_test_Block_Extend, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__213)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1982, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Extend, __pyx_t_1) < 0) __PYX_ERR(0, 1982, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__213 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__212, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Extend, 1982, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__213)) __PYX_ERR(0, 1982, __pyx_L1_error)
 1983:     cdef:
+1984:         Block_* block = NULL
  __pyx_v_block = NULL;
+1985:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+1986:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+1987:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+1988:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 1989: 
+1990:     try:
  /*try:*/ {
+1991:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1991, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1992:         block = Block_Extend_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1992, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1993:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1993, __pyx_L4_error)
      }
    }
    #endif
+1994:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1994, __pyx_L4_error)
      }
    }
    #endif
+1995:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1995, __pyx_L4_error)
      }
    }
    #endif
+1996:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1996, __pyx_L4_error)
      }
    }
    #endif
+1997:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1997, __pyx_L4_error)
      }
    }
    #endif
+1998:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1998, __pyx_L4_error)
      }
    }
    #endif
+1999:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2000: 
+2001:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2001, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2001, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2001, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2002:         block = Block_Extend_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2002, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2003:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2003, __pyx_L4_error)
      }
    }
    #endif
+2004:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2004, __pyx_L4_error)
      }
    }
    #endif
+2005:         assert Block_Length(block) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2005, __pyx_L4_error)
      }
    }
    #endif
+2006:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2006, __pyx_L4_error)
      }
    }
    #endif
+2007:         assert Block_Endex(block) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2007, __pyx_L4_error)
      }
    }
    #endif
+2008:         assert Block_Eq_(block, size1, data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data1 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2008, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2008, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2008, __pyx_L4_error)
      }
    }
    #endif
+2009:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2010: 
+2011:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2011, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2012:         block = Block_Extend_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2012, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2012, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2012, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2013:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2013, __pyx_L4_error)
      }
    }
    #endif
+2014:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2014, __pyx_L4_error)
      }
    }
    #endif
+2015:         assert Block_Length(block) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2015, __pyx_L4_error)
      }
    }
    #endif
+2016:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2016, __pyx_L4_error)
      }
    }
    #endif
+2017:         assert Block_Endex(block) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2017, __pyx_L4_error)
      }
    }
    #endif
+2018:         assert Block_Eq_(block, size2, data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data2 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2018, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2018, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2018, __pyx_L4_error)
      }
    }
    #endif
+2019:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2020: 
+2021:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2021, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2021, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2021, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2022:         block = Block_Extend_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2022, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2022, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2022, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2023:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2023, __pyx_L4_error)
      }
    }
    #endif
+2024:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2024, __pyx_L4_error)
      }
    }
    #endif
+2025:         assert Block_Length(block) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2025, __pyx_L4_error)
      }
    }
    #endif
+2026:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2026, __pyx_L4_error)
      }
    }
    #endif
+2027:         assert Block_Endex(block) == 0x1234 + size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size1) + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2027, __pyx_L4_error)
      }
    }
    #endif
+2028:         assert Block_Eq_(block, size1 + size2, data1 + data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = PyNumber_Add(__pyx_v_data1, __pyx_v_data2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2028, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_5); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2028, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size1 + __pyx_v_size2), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2028, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+2029:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 2030: 
 2031:     finally:
+2032:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2033: 
 2034: 
+2035: def test_Block_Extend():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_105test_Block_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_104test_Block_Extend[] = "test_Block_Extend()";
static PyMethodDef __pyx_mdef_7_test_c_105test_Block_Extend = {"test_Block_Extend", (PyCFunction)__pyx_pw_7_test_c_105test_Block_Extend, METH_NOARGS, __pyx_doc_7_test_c_104test_Block_Extend};
static PyObject *__pyx_pw_7_test_c_105test_Block_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Extend (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_104test_Block_Extend(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_104test_Block_Extend(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Extend", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c.test_Block_Extend", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__214 = PyTuple_Pack(6, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_data2, __pyx_n_s_size2); if (unlikely(!__pyx_tuple__214)) __PYX_ERR(0, 2035, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__214);
  __Pyx_GIVEREF(__pyx_tuple__214);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_105test_Block_Extend, 0, __pyx_n_s_test_Block_Extend_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__215)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2035, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Extend_2, __pyx_t_1) < 0) __PYX_ERR(0, 2035, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__215 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__214, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Extend_2, 2035, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__215)) __PYX_ERR(0, 2035, __pyx_L1_error)
 2036:     cdef:
+2037:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2038:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2039:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2040:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2041:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2042:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2043: 
+2044:     try:
  /*try:*/ {
+2045:         block1 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2045, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2046: 
+2047:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2047, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2048:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2048, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2049:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2049, __pyx_L4_error)
      }
    }
    #endif
+2050:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2050, __pyx_L4_error)
      }
    }
    #endif
+2051:         assert Block_Length(block2) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2051, __pyx_L4_error)
      }
    }
    #endif
+2052:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2052, __pyx_L4_error)
      }
    }
    #endif
+2053:         assert Block_Endex(block2) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2053, __pyx_L4_error)
      }
    }
    #endif
+2054:         assert Block_Eq_(block2, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2054, __pyx_L4_error)
      }
    }
    #endif
+2055:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2056: 
+2057:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2057, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2057, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2057, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2058:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2058, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2059:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2059, __pyx_L4_error)
      }
    }
    #endif
+2060:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2060, __pyx_L4_error)
      }
    }
    #endif
+2061:         assert Block_Length(block2) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2061, __pyx_L4_error)
      }
    }
    #endif
+2062:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2062, __pyx_L4_error)
      }
    }
    #endif
+2063:         assert Block_Endex(block2) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2063, __pyx_L4_error)
      }
    }
    #endif
+2064:         assert Block_Eq_(block2, size1, data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data1 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2064, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2064, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2064, __pyx_L4_error)
      }
    }
    #endif
+2065:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2066: 
+2067:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2068:         block1 = Block_Create(0x1234, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2068, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2068, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size2, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2068, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2069: 
+2070:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2070, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2071:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2071, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2072:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2072, __pyx_L4_error)
      }
    }
    #endif
+2073:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2073, __pyx_L4_error)
      }
    }
    #endif
+2074:         assert Block_Length(block2) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2074, __pyx_L4_error)
      }
    }
    #endif
+2075:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2075, __pyx_L4_error)
      }
    }
    #endif
+2076:         assert Block_Endex(block2) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2076, __pyx_L4_error)
      }
    }
    #endif
+2077:         assert Block_Eq_(block2, size2, data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data2 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2077, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2077, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2077, __pyx_L4_error)
      }
    }
    #endif
+2078:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2079: 
+2080:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2080, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2080, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2080, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2081:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2081, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2082:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2082, __pyx_L4_error)
      }
    }
    #endif
+2083:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2083, __pyx_L4_error)
      }
    }
    #endif
+2084:         assert Block_Length(block2) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2084, __pyx_L4_error)
      }
    }
    #endif
+2085:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2085, __pyx_L4_error)
      }
    }
    #endif
+2086:         assert Block_Endex(block2) == 0x1234 + size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_size1) + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2086, __pyx_L4_error)
      }
    }
    #endif
+2087:         assert Block_Eq_(block2, size1 + size2, data1 + data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = PyNumber_Add(__pyx_v_data1, __pyx_v_data2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2087, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_4); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2087, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, (__pyx_v_size1 + __pyx_v_size2), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2087, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    #endif
+2088:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
  }
 2089: 
 2090:     finally:
+2091:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2092:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2093: 
 2094: 
+2095: def test_Block_ExtendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_107test_Block_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_106test_Block_ExtendLeft[] = "test_Block_ExtendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_107test_Block_ExtendLeft = {"test_Block_ExtendLeft", (PyCFunction)__pyx_pw_7_test_c_107test_Block_ExtendLeft, METH_NOARGS, __pyx_doc_7_test_c_106test_Block_ExtendLeft};
static PyObject *__pyx_pw_7_test_c_107test_Block_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ExtendLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_106test_Block_ExtendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_106test_Block_ExtendLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ExtendLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_Block_ExtendLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__216 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_data2, __pyx_n_s_size2); if (unlikely(!__pyx_tuple__216)) __PYX_ERR(0, 2095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__216);
  __Pyx_GIVEREF(__pyx_tuple__216);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_107test_Block_ExtendLeft, 0, __pyx_n_s_test_Block_ExtendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__217)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ExtendLeft, __pyx_t_1) < 0) __PYX_ERR(0, 2095, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__217 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__216, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ExtendLeft, 2095, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__217)) __PYX_ERR(0, 2095, __pyx_L1_error)
 2096:     cdef:
+2097:         Block_* block = NULL
  __pyx_v_block = NULL;
+2098:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2099:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2100:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2101:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2102: 
+2103:     try:
  /*try:*/ {
+2104:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2104, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2105:         block = Block_ExtendLeft_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2105, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2106:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2106, __pyx_L4_error)
      }
    }
    #endif
+2107:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2107, __pyx_L4_error)
      }
    }
    #endif
+2108:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2108, __pyx_L4_error)
      }
    }
    #endif
+2109:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2109, __pyx_L4_error)
      }
    }
    #endif
+2110:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2110, __pyx_L4_error)
      }
    }
    #endif
+2111:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2111, __pyx_L4_error)
      }
    }
    #endif
+2112:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2113: 
+2114:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2114, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2114, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2114, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2115:         block = Block_ExtendLeft_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2115, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2116:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2116, __pyx_L4_error)
      }
    }
    #endif
+2117:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2117, __pyx_L4_error)
      }
    }
    #endif
+2118:         assert Block_Length(block) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2118, __pyx_L4_error)
      }
    }
    #endif
+2119:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2119, __pyx_L4_error)
      }
    }
    #endif
+2120:         assert Block_Endex(block) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2120, __pyx_L4_error)
      }
    }
    #endif
+2121:         assert Block_Eq_(block, size1, data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data1 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2121, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2121, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2121, __pyx_L4_error)
      }
    }
    #endif
+2122:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2123: 
+2124:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2124, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2125:         block = Block_ExtendLeft_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2125, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2125, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2125, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2126:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2126, __pyx_L4_error)
      }
    }
    #endif
+2127:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2127, __pyx_L4_error)
      }
    }
    #endif
+2128:         assert Block_Length(block) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2128, __pyx_L4_error)
      }
    }
    #endif
+2129:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2129, __pyx_L4_error)
      }
    }
    #endif
+2130:         assert Block_Endex(block) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2130, __pyx_L4_error)
      }
    }
    #endif
+2131:         assert Block_Eq_(block, size2, data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data2 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2131, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2131, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2131, __pyx_L4_error)
      }
    }
    #endif
+2132:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2133: 
+2134:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2134, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2134, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2134, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2135:         block = Block_ExtendLeft_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2135, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2135, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2135, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2136:         assert block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2136, __pyx_L4_error)
      }
    }
    #endif
+2137:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2137, __pyx_L4_error)
      }
    }
    #endif
+2138:         assert Block_Length(block) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2138, __pyx_L4_error)
      }
    }
    #endif
+2139:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2139, __pyx_L4_error)
      }
    }
    #endif
+2140:         assert Block_Endex(block) == 0x1234 + size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size2) + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2140, __pyx_L4_error)
      }
    }
    #endif
+2141:         assert Block_Eq_(block, size2 + size1, data2 + data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = PyNumber_Add(__pyx_v_data2, __pyx_v_data1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2141, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_5); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2141, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size2 + __pyx_v_size1), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2141, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+2142:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 2143: 
 2144:     finally:
+2145:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2146: 
 2147: 
+2148: def test_Block_ExtendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_109test_Block_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_108test_Block_ExtendLeft[] = "test_Block_ExtendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_109test_Block_ExtendLeft = {"test_Block_ExtendLeft", (PyCFunction)__pyx_pw_7_test_c_109test_Block_ExtendLeft, METH_NOARGS, __pyx_doc_7_test_c_108test_Block_ExtendLeft};
static PyObject *__pyx_pw_7_test_c_109test_Block_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ExtendLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_108test_Block_ExtendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_108test_Block_ExtendLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ExtendLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c.test_Block_ExtendLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__218 = PyTuple_Pack(6, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_data2, __pyx_n_s_size2); if (unlikely(!__pyx_tuple__218)) __PYX_ERR(0, 2148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__218);
  __Pyx_GIVEREF(__pyx_tuple__218);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_109test_Block_ExtendLeft, 0, __pyx_n_s_test_Block_ExtendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__219)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ExtendLeft, __pyx_t_1) < 0) __PYX_ERR(0, 2148, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__219 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__218, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ExtendLeft, 2148, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__219)) __PYX_ERR(0, 2148, __pyx_L1_error)
 2149:     cdef:
+2150:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2151:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2152:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2153:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2154:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2155:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2156: 
+2157:     try:
  /*try:*/ {
+2158:         block1 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2158, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2159: 
+2160:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2160, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2161:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2161, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2162:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2162, __pyx_L4_error)
      }
    }
    #endif
+2163:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2163, __pyx_L4_error)
      }
    }
    #endif
+2164:         assert Block_Length(block2) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2164, __pyx_L4_error)
      }
    }
    #endif
+2165:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2165, __pyx_L4_error)
      }
    }
    #endif
+2166:         assert Block_Endex(block2) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2166, __pyx_L4_error)
      }
    }
    #endif
+2167:         assert Block_Eq_(block2, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2167, __pyx_L4_error)
      }
    }
    #endif
+2168:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2169: 
+2170:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2170, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2170, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2170, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2171:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2171, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2172:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2172, __pyx_L4_error)
      }
    }
    #endif
+2173:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2173, __pyx_L4_error)
      }
    }
    #endif
+2174:         assert Block_Length(block2) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2174, __pyx_L4_error)
      }
    }
    #endif
+2175:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2175, __pyx_L4_error)
      }
    }
    #endif
+2176:         assert Block_Endex(block2) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2176, __pyx_L4_error)
      }
    }
    #endif
+2177:         assert Block_Eq_(block2, size1, data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data1 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2177, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2177, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2177, __pyx_L4_error)
      }
    }
    #endif
+2178:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2179: 
+2180:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2181:         block1 = Block_Create(0x1234, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2181, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2181, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size2, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2181, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2182: 
+2183:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2183, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2184:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2184, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2185:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2185, __pyx_L4_error)
      }
    }
    #endif
+2186:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2186, __pyx_L4_error)
      }
    }
    #endif
+2187:         assert Block_Length(block2) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2187, __pyx_L4_error)
      }
    }
    #endif
+2188:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2188, __pyx_L4_error)
      }
    }
    #endif
+2189:         assert Block_Endex(block2) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2189, __pyx_L4_error)
      }
    }
    #endif
+2190:         assert Block_Eq_(block2, size2, data2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data2 == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2190, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2190, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2190, __pyx_L4_error)
      }
    }
    #endif
+2191:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
 2192: 
+2193:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2193, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2193, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2193, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2194:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2194, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2195:         assert block2 != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2195, __pyx_L4_error)
      }
    }
    #endif
+2196:         assert block2.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block2->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2196, __pyx_L4_error)
      }
    }
    #endif
+2197:         assert Block_Length(block2) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2197, __pyx_L4_error)
      }
    }
    #endif
+2198:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2198, __pyx_L4_error)
      }
    }
    #endif
+2199:         assert Block_Endex(block2) == 0x1234 + size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_size2) + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2199, __pyx_L4_error)
      }
    }
    #endif
+2200:         assert Block_Eq_(block2, size2 + size1, data2 + data1) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = PyNumber_Add(__pyx_v_data2, __pyx_v_data1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2200, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_4); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2200, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, (__pyx_v_size2 + __pyx_v_size1), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2200, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    #endif
+2201:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
  }
 2202: 
 2203:     finally:
+2204:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2205:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2206: 
 2207: 
+2208: def test_Block_RotateLeft__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_111test_Block_RotateLeft__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_110test_Block_RotateLeft__[] = "test_Block_RotateLeft__()";
static PyMethodDef __pyx_mdef_7_test_c_111test_Block_RotateLeft__ = {"test_Block_RotateLeft__", (PyCFunction)__pyx_pw_7_test_c_111test_Block_RotateLeft__, METH_NOARGS, __pyx_doc_7_test_c_110test_Block_RotateLeft__};
static PyObject *__pyx_pw_7_test_c_111test_Block_RotateLeft__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateLeft__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_110test_Block_RotateLeft__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_110test_Block_RotateLeft__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateLeft__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_RotateLeft__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__220 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__220)) __PYX_ERR(0, 2208, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__220);
  __Pyx_GIVEREF(__pyx_tuple__220);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_111test_Block_RotateLeft__, 0, __pyx_n_s_test_Block_RotateLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__221)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2208, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateLeft, __pyx_t_1) < 0) __PYX_ERR(0, 2208, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__221 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__220, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateLeft, 2208, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__221)) __PYX_ERR(0, 2208, __pyx_L1_error)
 2209:     cdef:
+2210:         Block_* block = NULL
  __pyx_v_block = NULL;
+2211:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2212:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2213:         size_t i
 2214: 
+2215:     try:
  /*try:*/ {
+2216:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2216, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2217:         Block_RotateLeft__(block, 3)
    __pyx_f_11cbytesparse_2_c_Block_RotateLeft__(__pyx_v_block, 3);
+2218:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2218, __pyx_L4_error)
      }
    }
    #endif
+2219:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2219, __pyx_L4_error)
      }
    }
    #endif
+2220:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2220, __pyx_L4_error)
      }
    }
    #endif
+2221:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2221, __pyx_L4_error)
      }
    }
    #endif
+2222:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2222, __pyx_L4_error)
      }
    }
    #endif
+2223:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2224: 
+2225:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2225, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2225, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2225, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2226:         Block_RotateLeft__(block, 0)
    __pyx_f_11cbytesparse_2_c_Block_RotateLeft__(__pyx_v_block, 0);
+2227:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2227, __pyx_L4_error)
      }
    }
    #endif
+2228:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2228, __pyx_L4_error)
      }
    }
    #endif
+2229:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2229, __pyx_L4_error)
      }
    }
    #endif
+2230:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2230, __pyx_L4_error)
      }
    }
    #endif
+2231:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2231, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2231, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2231, __pyx_L4_error)
      }
    }
    #endif
+2232:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2233: 
+2234:         for i in range(size):
    __pyx_t_4 = __pyx_v_size;
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;
+2235:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2235, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2235, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2235, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2236:             Block_RotateLeft__(block, i)
      __pyx_f_11cbytesparse_2_c_Block_RotateLeft__(__pyx_v_block, __pyx_v_i);
+2237:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2237, __pyx_L4_error)
        }
      }
      #endif
+2238:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2238, __pyx_L4_error)
        }
      }
      #endif
+2239:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2239, __pyx_L4_error)
        }
      }
      #endif
+2240:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2240, __pyx_L4_error)
        }
      }
      #endif
+2241:             assert Block_Eq_(block, size, data[i:] + data[:i]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2241, __pyx_L4_error)
        }
        __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, __pyx_v_i, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2241, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2241, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_i); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2241, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyNumber_Add(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2241, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_9); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2241, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2241, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2242:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2243: 
 2244:     finally:
+2245:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2246: 
 2247: 
+2248: def test_Block_RotateLeft_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_113test_Block_RotateLeft_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_112test_Block_RotateLeft_[] = "test_Block_RotateLeft_()";
static PyMethodDef __pyx_mdef_7_test_c_113test_Block_RotateLeft_ = {"test_Block_RotateLeft_", (PyCFunction)__pyx_pw_7_test_c_113test_Block_RotateLeft_, METH_NOARGS, __pyx_doc_7_test_c_112test_Block_RotateLeft_};
static PyObject *__pyx_pw_7_test_c_113test_Block_RotateLeft_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateLeft_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_112test_Block_RotateLeft_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_112test_Block_RotateLeft_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  size_t __pyx_v_k;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateLeft_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_RotateLeft_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__222 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i, __pyx_n_s_k); if (unlikely(!__pyx_tuple__222)) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__222);
  __Pyx_GIVEREF(__pyx_tuple__222);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_113test_Block_RotateLeft_, 0, __pyx_n_s_test_Block_RotateLeft_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__223)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateLeft_2, __pyx_t_1) < 0) __PYX_ERR(0, 2248, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__223 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__222, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateLeft_2, 2248, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__223)) __PYX_ERR(0, 2248, __pyx_L1_error)
 2249:     cdef:
+2250:         Block_* block = NULL
  __pyx_v_block = NULL;
+2251:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2252:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2253:         size_t i
 2254:         size_t k
 2255: 
+2256:     try:
  /*try:*/ {
+2257:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2257, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2258:         Block_RotateLeft_(block, 3)
    __pyx_f_11cbytesparse_2_c_Block_RotateLeft_(__pyx_v_block, 3);
+2259:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2259, __pyx_L4_error)
      }
    }
    #endif
+2260:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2260, __pyx_L4_error)
      }
    }
    #endif
+2261:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2261, __pyx_L4_error)
      }
    }
    #endif
+2262:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2262, __pyx_L4_error)
      }
    }
    #endif
+2263:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2263, __pyx_L4_error)
      }
    }
    #endif
+2264:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2265: 
+2266:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2266, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2266, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2266, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2267:         Block_RotateLeft_(block, 0)
    __pyx_f_11cbytesparse_2_c_Block_RotateLeft_(__pyx_v_block, 0);
+2268:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2268, __pyx_L4_error)
      }
    }
    #endif
+2269:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2269, __pyx_L4_error)
      }
    }
    #endif
+2270:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2270, __pyx_L4_error)
      }
    }
    #endif
+2271:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2271, __pyx_L4_error)
      }
    }
    #endif
+2272:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2272, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2272, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2272, __pyx_L4_error)
      }
    }
    #endif
+2273:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2274: 
+2275:         for i in range(size * 3):
    __pyx_t_4 = (__pyx_v_size * 3);
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;
+2276:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2276, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2276, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2276, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2277:             Block_RotateLeft_(block, i)
      __pyx_f_11cbytesparse_2_c_Block_RotateLeft_(__pyx_v_block, __pyx_v_i);
+2278:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2278, __pyx_L4_error)
        }
      }
      #endif
+2279:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2279, __pyx_L4_error)
        }
      }
      #endif
+2280:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2280, __pyx_L4_error)
        }
      }
      #endif
+2281:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2281, __pyx_L4_error)
        }
      }
      #endif
+2282:             k = i % size
      if (unlikely(__pyx_v_size == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2282, __pyx_L4_error)
      }
      __pyx_v_k = (__pyx_v_i % __pyx_v_size);
+2283:             assert Block_Eq_(block, size, data[k:] + data[:k]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2283, __pyx_L4_error)
        }
        __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, __pyx_v_k, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2283, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2283, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2283, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyNumber_Add(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2283, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_9); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2283, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2283, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2284:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2285: 
 2286:     finally:
+2287:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2288: 
 2289: 
+2290: def test_Block_RotateRight__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_115test_Block_RotateRight__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_114test_Block_RotateRight__[] = "test_Block_RotateRight__()";
static PyMethodDef __pyx_mdef_7_test_c_115test_Block_RotateRight__ = {"test_Block_RotateRight__", (PyCFunction)__pyx_pw_7_test_c_115test_Block_RotateRight__, METH_NOARGS, __pyx_doc_7_test_c_114test_Block_RotateRight__};
static PyObject *__pyx_pw_7_test_c_115test_Block_RotateRight__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateRight__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_114test_Block_RotateRight__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_114test_Block_RotateRight__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  Py_ssize_t __pyx_v_k;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateRight__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_RotateRight__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__224 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i, __pyx_n_s_k); if (unlikely(!__pyx_tuple__224)) __PYX_ERR(0, 2290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__224);
  __Pyx_GIVEREF(__pyx_tuple__224);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_115test_Block_RotateRight__, 0, __pyx_n_s_test_Block_RotateRight, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__225)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateRight, __pyx_t_1) < 0) __PYX_ERR(0, 2290, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__225 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__224, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateRight, 2290, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__225)) __PYX_ERR(0, 2290, __pyx_L1_error)
 2291:     cdef:
+2292:         Block_* block = NULL
  __pyx_v_block = NULL;
+2293:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2294:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2295:         size_t i
 2296:         ssize_t k
 2297: 
+2298:     try:
  /*try:*/ {
+2299:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2299, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2300:         Block_RotateRight__(block, 3)
    __pyx_f_11cbytesparse_2_c_Block_RotateRight__(__pyx_v_block, 3);
+2301:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2301, __pyx_L4_error)
      }
    }
    #endif
+2302:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2302, __pyx_L4_error)
      }
    }
    #endif
+2303:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2303, __pyx_L4_error)
      }
    }
    #endif
+2304:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2304, __pyx_L4_error)
      }
    }
    #endif
+2305:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2305, __pyx_L4_error)
      }
    }
    #endif
+2306:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2307: 
+2308:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2308, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2308, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2308, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2309:         Block_RotateRight__(block, 0)
    __pyx_f_11cbytesparse_2_c_Block_RotateRight__(__pyx_v_block, 0);
+2310:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2310, __pyx_L4_error)
      }
    }
    #endif
+2311:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2311, __pyx_L4_error)
      }
    }
    #endif
+2312:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2312, __pyx_L4_error)
      }
    }
    #endif
+2313:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2313, __pyx_L4_error)
      }
    }
    #endif
+2314:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2314, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2314, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2314, __pyx_L4_error)
      }
    }
    #endif
+2315:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2316: 
+2317:         for i in range(size):
    __pyx_t_4 = __pyx_v_size;
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;
+2318:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2318, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2318, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2318, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2319:             Block_RotateRight__(block, i)
      __pyx_f_11cbytesparse_2_c_Block_RotateRight__(__pyx_v_block, __pyx_v_i);
+2320:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2320, __pyx_L4_error)
        }
      }
      #endif
+2321:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2321, __pyx_L4_error)
        }
      }
      #endif
+2322:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2322, __pyx_L4_error)
        }
      }
      #endif
+2323:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2323, __pyx_L4_error)
        }
      }
      #endif
+2324:             k = -<ssize_t>i
      __pyx_v_k = (-((Py_ssize_t)__pyx_v_i));
+2325:             assert Block_Eq_(block, size, data[k:] + data[:k]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2325, __pyx_L4_error)
        }
        __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, __pyx_v_k, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2325, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2325, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2325, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyNumber_Add(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2325, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_9); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2325, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2325, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2326:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2327: 
 2328:     finally:
+2329:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2330: 
 2331: 
+2332: def test_Block_RotateRight_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_117test_Block_RotateRight_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_116test_Block_RotateRight_[] = "test_Block_RotateRight_()";
static PyMethodDef __pyx_mdef_7_test_c_117test_Block_RotateRight_ = {"test_Block_RotateRight_", (PyCFunction)__pyx_pw_7_test_c_117test_Block_RotateRight_, METH_NOARGS, __pyx_doc_7_test_c_116test_Block_RotateRight_};
static PyObject *__pyx_pw_7_test_c_117test_Block_RotateRight_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateRight_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_116test_Block_RotateRight_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_116test_Block_RotateRight_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  Py_ssize_t __pyx_v_k;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RotateRight_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Block_RotateRight_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__226 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i, __pyx_n_s_k); if (unlikely(!__pyx_tuple__226)) __PYX_ERR(0, 2332, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__226);
  __Pyx_GIVEREF(__pyx_tuple__226);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_117test_Block_RotateRight_, 0, __pyx_n_s_test_Block_RotateRight_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__227)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2332, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateRight_2, __pyx_t_1) < 0) __PYX_ERR(0, 2332, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__227 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__226, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateRight_2, 2332, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__227)) __PYX_ERR(0, 2332, __pyx_L1_error)
 2333:     cdef:
+2334:         Block_* block = NULL
  __pyx_v_block = NULL;
+2335:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2336:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2337:         size_t i
 2338:         ssize_t k
 2339: 
+2340:     try:
  /*try:*/ {
+2341:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2341, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2342:         Block_RotateRight_(block, 3)
    __pyx_f_11cbytesparse_2_c_Block_RotateRight_(__pyx_v_block, 3);
+2343:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2343, __pyx_L4_error)
      }
    }
    #endif
+2344:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2344, __pyx_L4_error)
      }
    }
    #endif
+2345:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2345, __pyx_L4_error)
      }
    }
    #endif
+2346:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2346, __pyx_L4_error)
      }
    }
    #endif
+2347:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2347, __pyx_L4_error)
      }
    }
    #endif
+2348:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2349: 
+2350:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2350, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2350, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2350, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2351:         Block_RotateRight_(block, 0)
    __pyx_f_11cbytesparse_2_c_Block_RotateRight_(__pyx_v_block, 0);
+2352:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2352, __pyx_L4_error)
      }
    }
    #endif
+2353:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2353, __pyx_L4_error)
      }
    }
    #endif
+2354:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2354, __pyx_L4_error)
      }
    }
    #endif
+2355:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2355, __pyx_L4_error)
      }
    }
    #endif
+2356:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2356, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2356, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2356, __pyx_L4_error)
      }
    }
    #endif
+2357:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2358: 
+2359:         for i in range(size * 3):
    __pyx_t_4 = (__pyx_v_size * 3);
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;
+2360:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2360, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2360, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2360, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2361:             Block_RotateRight_(block, i)
      __pyx_f_11cbytesparse_2_c_Block_RotateRight_(__pyx_v_block, __pyx_v_i);
+2362:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2362, __pyx_L4_error)
        }
      }
      #endif
+2363:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2363, __pyx_L4_error)
        }
      }
      #endif
+2364:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2364, __pyx_L4_error)
        }
      }
      #endif
+2365:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2365, __pyx_L4_error)
        }
      }
      #endif
+2366:             k = -<ssize_t>(i % size)
      if (unlikely(__pyx_v_size == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2366, __pyx_L4_error)
      }
      __pyx_v_k = (-((Py_ssize_t)(__pyx_v_i % __pyx_v_size)));
+2367:             assert Block_Eq_(block, size, data[k:] + data[:k]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2367, __pyx_L4_error)
        }
        __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, __pyx_v_k, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2367, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2367, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2367, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyNumber_Add(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2367, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_9); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2367, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2367, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2368:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2369: 
 2370:     finally:
+2371:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2372: 
 2373: 
+2374: def test_Block_Rotate():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_119test_Block_Rotate(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_118test_Block_Rotate[] = "test_Block_Rotate()";
static PyMethodDef __pyx_mdef_7_test_c_119test_Block_Rotate = {"test_Block_Rotate", (PyCFunction)__pyx_pw_7_test_c_119test_Block_Rotate, METH_NOARGS, __pyx_doc_7_test_c_118test_Block_Rotate};
static PyObject *__pyx_pw_7_test_c_119test_Block_Rotate(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Rotate (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_118test_Block_Rotate(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_118test_Block_Rotate(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_i;
  Py_ssize_t __pyx_v_k;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Rotate", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Block_Rotate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__228 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i, __pyx_n_s_k); if (unlikely(!__pyx_tuple__228)) __PYX_ERR(0, 2374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__228);
  __Pyx_GIVEREF(__pyx_tuple__228);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_119test_Block_Rotate, 0, __pyx_n_s_test_Block_Rotate, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__229)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2374, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Rotate, __pyx_t_1) < 0) __PYX_ERR(0, 2374, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__229 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__228, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Rotate, 2374, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__229)) __PYX_ERR(0, 2374, __pyx_L1_error)
 2375:     cdef:
+2376:         Block_* block = NULL
  __pyx_v_block = NULL;
+2377:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2378:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2379:         ssize_t i
 2380:         ssize_t k
 2381: 
+2382:     try:
  /*try:*/ {
+2383:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2383, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2384:         Block_Rotate(block, 3)
    __pyx_f_11cbytesparse_2_c_Block_Rotate(__pyx_v_block, 3);
+2385:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2385, __pyx_L4_error)
      }
    }
    #endif
+2386:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2386, __pyx_L4_error)
      }
    }
    #endif
+2387:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2387, __pyx_L4_error)
      }
    }
    #endif
+2388:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2388, __pyx_L4_error)
      }
    }
    #endif
+2389:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2389, __pyx_L4_error)
      }
    }
    #endif
+2390:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2391: 
+2392:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2392, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2393:         Block_Rotate(block, -3)
    __pyx_f_11cbytesparse_2_c_Block_Rotate(__pyx_v_block, -3L);
+2394:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2394, __pyx_L4_error)
      }
    }
    #endif
+2395:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2395, __pyx_L4_error)
      }
    }
    #endif
+2396:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2396, __pyx_L4_error)
      }
    }
    #endif
+2397:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2397, __pyx_L4_error)
      }
    }
    #endif
+2398:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2398, __pyx_L4_error)
      }
    }
    #endif
+2399:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2400: 
+2401:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2401, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2401, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2401, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2402:         Block_Rotate(block, 0)
    __pyx_f_11cbytesparse_2_c_Block_Rotate(__pyx_v_block, 0);
+2403:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2403, __pyx_L4_error)
      }
    }
    #endif
+2404:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2404, __pyx_L4_error)
      }
    }
    #endif
+2405:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2405, __pyx_L4_error)
      }
    }
    #endif
+2406:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2406, __pyx_L4_error)
      }
    }
    #endif
+2407:         assert Block_Eq_(block, size, data) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2407, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2407, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2407, __pyx_L4_error)
      }
    }
    #endif
+2408:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2409: 
+2410:         for i in range(0, -<ssize_t>size * 3, -1):
    __pyx_t_4 = ((-((Py_ssize_t)__pyx_v_size)) * 3);
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 > __pyx_t_5; __pyx_t_6-=1) {
      __pyx_v_i = __pyx_t_6;
+2411:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2411, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2411, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2411, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2412:             Block_Rotate(block, i)
      __pyx_f_11cbytesparse_2_c_Block_Rotate(__pyx_v_block, __pyx_v_i);
+2413:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2413, __pyx_L4_error)
        }
      }
      #endif
+2414:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2414, __pyx_L4_error)
        }
      }
      #endif
+2415:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2415, __pyx_L4_error)
        }
      }
      #endif
+2416:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2416, __pyx_L4_error)
        }
      }
      #endif
+2417:             k = -i % <ssize_t>size
      __pyx_t_7 = (-__pyx_v_i);
      if (unlikely(((Py_ssize_t)__pyx_v_size) == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2417, __pyx_L4_error)
      }
      __pyx_v_k = __Pyx_mod_Py_ssize_t(__pyx_t_7, ((Py_ssize_t)__pyx_v_size));
+2418:             assert Block_Eq_(block, size, data[k:] + data[:k]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2418, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, __pyx_v_k, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2418, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2418, __pyx_L4_error)
        }
        __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2418, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_10 = PyNumber_Add(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2418, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_10); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2418, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2418, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      #endif
+2419:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
 2420: 
+2421:         for i in range(<ssize_t>size * 3):
    __pyx_t_4 = (((Py_ssize_t)__pyx_v_size) * 3);
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;
+2422:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2422, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2422, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2422, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2423:             Block_Rotate(block, i)
      __pyx_f_11cbytesparse_2_c_Block_Rotate(__pyx_v_block, __pyx_v_i);
+2424:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2424, __pyx_L4_error)
        }
      }
      #endif
+2425:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2425, __pyx_L4_error)
        }
      }
      #endif
+2426:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2426, __pyx_L4_error)
        }
      }
      #endif
+2427:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2427, __pyx_L4_error)
        }
      }
      #endif
+2428:             k = -(i % <ssize_t>size)
      if (unlikely(((Py_ssize_t)__pyx_v_size) == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2428, __pyx_L4_error)
      }
      __pyx_v_k = (-__Pyx_mod_Py_ssize_t(__pyx_v_i, ((Py_ssize_t)__pyx_v_size)));
+2429:             assert Block_Eq_(block, size, data[k:] + data[:k]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2429, __pyx_L4_error)
        }
        __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_k, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2429, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2429, __pyx_L4_error)
        }
        __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2429, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_8 = PyNumber_Add(__pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2429, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_t_8); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2429, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2429, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      }
      #endif
+2430:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2431: 
 2432:     finally:
+2433:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __pyx_t_11 = __pyx_lineno; __pyx_t_12 = __pyx_clineno; __pyx_t_13 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_15, __pyx_t_16);
      __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0;
      __pyx_lineno = __pyx_t_11; __pyx_clineno = __pyx_t_12; __pyx_filename = __pyx_t_13;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2434: 
 2435: 
+2436: def test_Block_Repeat():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_121test_Block_Repeat(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_120test_Block_Repeat[] = "test_Block_Repeat()";
static PyMethodDef __pyx_mdef_7_test_c_121test_Block_Repeat = {"test_Block_Repeat", (PyCFunction)__pyx_pw_7_test_c_121test_Block_Repeat, METH_NOARGS, __pyx_doc_7_test_c_120test_Block_Repeat};
static PyObject *__pyx_pw_7_test_c_121test_Block_Repeat(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Repeat (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_120test_Block_Repeat(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_120test_Block_Repeat(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Repeat", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_Block_Repeat", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__230 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__230)) __PYX_ERR(0, 2436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__230);
  __Pyx_GIVEREF(__pyx_tuple__230);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_121test_Block_Repeat, 0, __pyx_n_s_test_Block_Repeat, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__231)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Repeat, __pyx_t_1) < 0) __PYX_ERR(0, 2436, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__231 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__230, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Repeat, 2436, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__231)) __PYX_ERR(0, 2436, __pyx_L1_error)
 2437:     cdef:
+2438:         Block_* block = NULL
  __pyx_v_block = NULL;
+2439:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2440:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2441:         size_t i
 2442: 
+2443:     try:
  /*try:*/ {
+2444:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2444, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2445:         Block_Repeat(block, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Repeat(__pyx_v_block, 3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2445, __pyx_L4_error)
+2446:         assert block.address == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2446, __pyx_L4_error)
      }
    }
    #endif
+2447:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2447, __pyx_L4_error)
      }
    }
    #endif
+2448:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2448, __pyx_L4_error)
      }
    }
    #endif
+2449:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2449, __pyx_L4_error)
      }
    }
    #endif
+2450:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2450, __pyx_L4_error)
      }
    }
    #endif
+2451:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 2452: 
+2453:         for i in range(4):
    for (__pyx_t_2 = 0; __pyx_t_2 < 4; __pyx_t_2+=1) {
      __pyx_v_i = __pyx_t_2;
+2454:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2454, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2454, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2454, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2455:             block = Block_Repeat(block, i)
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Repeat(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2455, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2456:             assert block != NULL
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block != NULL) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2456, __pyx_L4_error)
        }
      }
      #endif
+2457:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2457, __pyx_L4_error)
        }
      }
      #endif
+2458:             assert Block_Length(block) == (size * i)
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_size * __pyx_v_i)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2458, __pyx_L4_error)
        }
      }
      #endif
+2459:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2459, __pyx_L4_error)
        }
      }
      #endif
+2460:             assert Block_Endex(block) == 0x1234 + (size * i)
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + (__pyx_v_size * __pyx_v_i))) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2460, __pyx_L4_error)
        }
      }
      #endif
+2461:             assert Block_Eq_(block, (size * i), (data * i)) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_4 = __Pyx_PyInt_FromSize_t(__pyx_v_i); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2461, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyNumber_Multiply(__pyx_v_data, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2461, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_6 = __Pyx_PyObject_AsUString(__pyx_t_5); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 2461, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_size * __pyx_v_i), __pyx_t_6) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2461, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      #endif
+2462:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
  }
 2463: 
 2464:     finally:
+2465:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2466: 
 2467: 
+2468: def test_Block_RepeatToSize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_123test_Block_RepeatToSize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_122test_Block_RepeatToSize[] = "test_Block_RepeatToSize()";
static PyMethodDef __pyx_mdef_7_test_c_123test_Block_RepeatToSize = {"test_Block_RepeatToSize", (PyCFunction)__pyx_pw_7_test_c_123test_Block_RepeatToSize, METH_NOARGS, __pyx_doc_7_test_c_122test_Block_RepeatToSize};
static PyObject *__pyx_pw_7_test_c_123test_Block_RepeatToSize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RepeatToSize (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_122test_Block_RepeatToSize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_122test_Block_RepeatToSize(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_i;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_RepeatToSize", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_AddTraceback("_test_c.test_Block_RepeatToSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__232 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__232)) __PYX_ERR(0, 2468, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__232);
  __Pyx_GIVEREF(__pyx_tuple__232);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_123test_Block_RepeatToSize, 0, __pyx_n_s_test_Block_RepeatToSize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__233)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2468, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RepeatToSize, __pyx_t_1) < 0) __PYX_ERR(0, 2468, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__233 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__232, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RepeatToSize, 2468, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__233)) __PYX_ERR(0, 2468, __pyx_L1_error)
 2469:     cdef:
+2470:         Block_* block = NULL
  __pyx_v_block = NULL;
+2471:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2472:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2473:         size_t i
 2474: 
+2475:     try:
  /*try:*/ {
+2476:         for i in range(size * 4):
    __pyx_t_1 = (__pyx_v_size * 4);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_i = __pyx_t_3;
+2477:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2477, __pyx_L4_error)
      }
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2477, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2477, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+2478:             block = Block_RepeatToSize(block, i)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_RepeatToSize(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2478, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+2479:             assert block != NULL
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block != NULL) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2479, __pyx_L4_error)
        }
      }
      #endif
+2480:             assert block.address == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2480, __pyx_L4_error)
        }
      }
      #endif
+2481:             assert Block_Length(block) == i
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_v_i) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2481, __pyx_L4_error)
        }
      }
      #endif
+2482:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2482, __pyx_L4_error)
        }
      }
      #endif
+2483:             assert Block_Endex(block) == 0x1234 + i
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_i)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2483, __pyx_L4_error)
        }
      }
      #endif
+2484:             assert Block_Eq_(block, i, (data * ((i + size) // size))[:i]) is True
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = (__pyx_v_i + __pyx_v_size);
        if (unlikely(__pyx_v_size == 0)) {
          PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
          __PYX_ERR(0, 2484, __pyx_L4_error)
        }
        __pyx_t_7 = __Pyx_PyInt_FromSize_t((__pyx_t_6 / __pyx_v_size)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2484, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = PyNumber_Multiply(__pyx_v_data, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2484, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = __Pyx_PyObject_GetSlice(__pyx_t_8, 0, __pyx_v_i, NULL, NULL, NULL, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2484, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_9 = __Pyx_PyObject_AsUString(__pyx_t_7); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 2484, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_v_i, __pyx_t_9) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2484, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      #endif
+2485:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
    }
 2486: 
+2487:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2487, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+2488:         for i in range(4):
    for (__pyx_t_1 = 0; __pyx_t_1 < 4; __pyx_t_1+=1) {
      __pyx_v_i = __pyx_t_1;
+2489:             with pytest.raises(RuntimeError, match='empty'):
      /*with:*/ {
        __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2489, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2489, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2489, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_n_u_empty) < 0) __PYX_ERR(0, 2489, __pyx_L4_error)
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__41, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2489, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_10, __pyx_n_s_exit); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2489, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_10, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2489, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_12 = NULL;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
          __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_8);
          if (likely(__pyx_t_12)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
            __Pyx_INCREF(__pyx_t_12);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_8, function);
          }
        }
        __pyx_t_7 = (__pyx_t_12) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_12) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2489, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        /*try:*/ {
          {
            /*try:*/ {
/* … */
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
            goto __pyx_L23_try_end;
            __pyx_L16_error:;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            /*except:*/ {
              __Pyx_AddTraceback("_test_c.test_Block_RepeatToSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
              if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_7, &__pyx_t_8) < 0) __PYX_ERR(0, 2489, __pyx_L18_except_error)
              __Pyx_GOTREF(__pyx_t_10);
              __Pyx_GOTREF(__pyx_t_7);
              __Pyx_GOTREF(__pyx_t_8);
              __pyx_t_12 = PyTuple_Pack(3, __pyx_t_10, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2489, __pyx_L18_except_error)
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_12, NULL);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2489, __pyx_L18_except_error)
              __Pyx_GOTREF(__pyx_t_16);
              __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_16);
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              if (__pyx_t_17 < 0) __PYX_ERR(0, 2489, __pyx_L18_except_error)
              __pyx_t_18 = ((!(__pyx_t_17 != 0)) != 0);
              if (__pyx_t_18) {
                __Pyx_GIVEREF(__pyx_t_10);
                __Pyx_GIVEREF(__pyx_t_7);
                __Pyx_XGIVEREF(__pyx_t_8);
                __Pyx_ErrRestoreWithState(__pyx_t_10, __pyx_t_7, __pyx_t_8);
                __pyx_t_10 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; 
                __PYX_ERR(0, 2489, __pyx_L18_except_error)
              }
              __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
              __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
              __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
              goto __pyx_L17_exception_handled;
            }
            __pyx_L18_except_error:;
            __Pyx_XGIVEREF(__pyx_t_13);
            __Pyx_XGIVEREF(__pyx_t_14);
            __Pyx_XGIVEREF(__pyx_t_15);
            __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
            goto __pyx_L4_error;
            __pyx_L17_exception_handled:;
            __Pyx_XGIVEREF(__pyx_t_13);
            __Pyx_XGIVEREF(__pyx_t_14);
            __Pyx_XGIVEREF(__pyx_t_15);
            __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
            __pyx_L23_try_end:;
          }
        }
        /*finally:*/ {
          /*normal exit:*/{
            if (__pyx_t_11) {
              __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple_, NULL);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2489, __pyx_L4_error)
              __Pyx_GOTREF(__pyx_t_15);
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            }
            goto __pyx_L15;
          }
          __pyx_L15:;
        }
        goto __pyx_L27;
        __pyx_L10_error:;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        goto __pyx_L4_error;
        __pyx_L27:;
      }
    }
/* … */
  __pyx_tuple__41 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 2489, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__41);
  __Pyx_GIVEREF(__pyx_tuple__41);
+2490:                 block = Block_RepeatToSize(block, i)
              __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_RepeatToSize(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2490, __pyx_L16_error)
              __pyx_v_block = __pyx_t_5;
+2491:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 2492: 
 2493:     finally:
+2494:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_11 = 0; __pyx_t_15 = 0; __pyx_t_14 = 0; __pyx_t_13 = 0; __pyx_t_16 = 0; __pyx_t_22 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_16, &__pyx_t_22);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_11, &__pyx_t_15, &__pyx_t_14) < 0)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_15, &__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_22);
      __pyx_t_19 = __pyx_lineno; __pyx_t_20 = __pyx_clineno; __pyx_t_21 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_16, __pyx_t_22);
      }
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_ErrRestore(__pyx_t_11, __pyx_t_15, __pyx_t_14);
      __pyx_t_11 = 0; __pyx_t_15 = 0; __pyx_t_14 = 0; __pyx_t_13 = 0; __pyx_t_16 = 0; __pyx_t_22 = 0;
      __pyx_lineno = __pyx_t_19; __pyx_clineno = __pyx_t_20; __pyx_filename = __pyx_t_21;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2495: 
 2496: 
+2497: def test_Block_Read_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_125test_Block_Read_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_124test_Block_Read_[] = "test_Block_Read_()";
static PyMethodDef __pyx_mdef_7_test_c_125test_Block_Read_ = {"test_Block_Read_", (PyCFunction)__pyx_pw_7_test_c_125test_Block_Read_, METH_NOARGS, __pyx_doc_7_test_c_124test_Block_Read_};
static PyObject *__pyx_pw_7_test_c_125test_Block_Read_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Read_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_124test_Block_Read_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_124test_Block_Read_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Read_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_AddTraceback("_test_c.test_Block_Read_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__234 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__234)) __PYX_ERR(0, 2497, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__234);
  __Pyx_GIVEREF(__pyx_tuple__234);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_125test_Block_Read_, 0, __pyx_n_s_test_Block_Read, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__235)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2497, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Read, __pyx_t_1) < 0) __PYX_ERR(0, 2497, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__235 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__234, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Read, 2497, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__235)) __PYX_ERR(0, 2497, __pyx_L1_error)
 2498:     cdef:
+2499:         Block_* block = NULL
  __pyx_v_block = NULL;
+2500:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2501:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2502:         size_t start
 2503:         size_t endex
 2504:         bytearray buffer
 2505: 
+2506:     try:
  /*try:*/ {
+2507:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2507, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2507, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2507, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2508: 
+2509:         for start in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+2510:             for endex in range(start, size):
      __pyx_t_6 = __pyx_v_size;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = __pyx_v_start; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+2511:                 buffer = bytearray(endex - start)
        __pyx_t_9 = __Pyx_PyInt_FromSize_t((__pyx_v_endex - __pyx_v_start)); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2511, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_10 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2511, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_10));
        __pyx_t_10 = 0;
+2512:                 Block_Read_(block, start, endex - start, buffer)
        __pyx_t_11 = __Pyx_PyObject_AsWritableUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2512, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_Read_(__pyx_v_block, __pyx_v_start, (__pyx_v_endex - __pyx_v_start), __pyx_t_11); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2512, __pyx_L4_error)
+2513:                 assert buffer == data[start:endex]
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2513, __pyx_L4_error)
          }
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2513, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_13 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_t_10, Py_EQ)); if (unlikely(__pyx_t_13 < 0)) __PYX_ERR(0, 2513, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!(__pyx_t_13 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2513, __pyx_L4_error)
          }
        }
        #endif
      }
    }
 2514: 
+2515:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2515, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2515, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2515, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2515, __pyx_L4_error)
      __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__42, __pyx_t_10); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2515, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_15 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_exit); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2515, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2515, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_16 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_16)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_16);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_10 = (__pyx_t_16) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_16) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2515, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Read_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_10, &__pyx_t_9) < 0) __PYX_ERR(0, 2515, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_16 = PyTuple_Pack(3, __pyx_t_14, __pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2515, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_16, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2515, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_20);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 2515, __pyx_L16_except_error)
            __pyx_t_21 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_GIVEREF(__pyx_t_10);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_14, __pyx_t_10, __pyx_t_9);
              __pyx_t_14 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 2515, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_15) {
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2515, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__42 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(0, 2515, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__42);
  __Pyx_GIVEREF(__pyx_tuple__42);
+2516:             Block_Read_(block, 0, SIZE_MAX, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_Read_(__pyx_v_block, 0, SIZE_MAX, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2516, __pyx_L14_error)
 2517: 
+2518:         with pytest.raises(OverflowError):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2518, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_raises); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2518, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_14);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_14, function);
        }
      }
      __pyx_t_9 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_10, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_builtin_OverflowError);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2518, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_15 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2518, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2518, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_16 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
        __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_10);
        if (likely(__pyx_t_16)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_16);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_10, function);
        }
      }
      __pyx_t_14 = (__pyx_t_16) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_16) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2518, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Read_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_14, &__pyx_t_10) < 0) __PYX_ERR(0, 2518, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_16 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_14, __pyx_t_10); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2518, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_16, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2518, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_20);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 2518, __pyx_L30_except_error)
            __pyx_t_13 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_14, __pyx_t_10);
              __pyx_t_9 = 0; __pyx_t_14 = 0; __pyx_t_10 = 0; 
              __PYX_ERR(0, 2518, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_18, __pyx_t_17);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_18, __pyx_t_17);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_15) {
            __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2518, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
+2519:             Block_Read_(block, SIZE_MAX, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_Read_(__pyx_v_block, SIZE_MAX, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2519, __pyx_L28_error)
 2520: 
+2521:         with pytest.raises(IndexError, match='index out of range'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_raises); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 2521, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__43, __pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_15 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2521, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_16 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
        __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_14);
        if (likely(__pyx_t_16)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
          __Pyx_INCREF(__pyx_t_16);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_14, function);
        }
      }
      __pyx_t_10 = (__pyx_t_16) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_16) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2521, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          goto __pyx_L47_try_end;
          __pyx_L42_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Read_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_14) < 0) __PYX_ERR(0, 2521, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_16 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_10, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2521, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_16, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2521, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_20);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 2521, __pyx_L44_except_error)
            __pyx_t_21 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_10);
              __Pyx_XGIVEREF(__pyx_t_14);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_10, __pyx_t_14);
              __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_14 = 0; 
              __PYX_ERR(0, 2521, __pyx_L44_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            goto __pyx_L43_exception_handled;
          }
          __pyx_L44_except_error:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
          goto __pyx_L4_error;
          __pyx_L43_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
          __pyx_L47_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_15) {
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2521, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          }
          goto __pyx_L41;
        }
        __pyx_L41:;
      }
      goto __pyx_L51;
      __pyx_L38_error:;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      goto __pyx_L4_error;
      __pyx_L51:;
    }
/* … */
  __pyx_tuple__43 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 2521, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__43);
  __Pyx_GIVEREF(__pyx_tuple__43);
+2522:             Block_Read_(block, SIZE_HMAX, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_Read_(__pyx_v_block, SIZE_HMAX, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2522, __pyx_L42_error)
 2523: 
+2524:         with pytest.raises(IndexError, match='index out of range'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_pytest); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2524, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_raises); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2524, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2524, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 2524, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__44, __pyx_t_14); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2524, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_15 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_exit); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2524, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_9, __pyx_n_s_enter); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2524, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_16 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
        __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_10);
        if (likely(__pyx_t_16)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_16);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_10, function);
        }
      }
      __pyx_t_14 = (__pyx_t_16) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_16) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2524, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          goto __pyx_L61_try_end;
          __pyx_L56_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Read_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_14, &__pyx_t_10) < 0) __PYX_ERR(0, 2524, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_16 = PyTuple_Pack(3, __pyx_t_9, __pyx_t_14, __pyx_t_10); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2524, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_16, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2524, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_20);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 2524, __pyx_L58_except_error)
            __pyx_t_13 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_14, __pyx_t_10);
              __pyx_t_9 = 0; __pyx_t_14 = 0; __pyx_t_10 = 0; 
              __PYX_ERR(0, 2524, __pyx_L58_except_error)
            }
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L57_exception_handled;
          }
          __pyx_L58_except_error:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_18, __pyx_t_17);
          goto __pyx_L4_error;
          __pyx_L57_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_18, __pyx_t_17);
          __pyx_L61_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_15) {
            __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2524, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          goto __pyx_L55;
        }
        __pyx_L55:;
      }
      goto __pyx_L65;
      __pyx_L52_error:;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      goto __pyx_L4_error;
      __pyx_L65:;
    }
  }
/* … */
  __pyx_tuple__44 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 2524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__44);
  __Pyx_GIVEREF(__pyx_tuple__44);
+2525:             Block_Read_(block, size, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_Read_(__pyx_v_block, __pyx_v_size, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2525, __pyx_L56_error)
 2526: 
 2527:     finally:
+2528:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_15 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_15, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_15, &__pyx_t_17, &__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_ErrRestore(__pyx_t_15, __pyx_t_17, __pyx_t_18);
      __pyx_t_15 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2529: 
 2530: 
+2531: def test_Block_Write_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_127test_Block_Write_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_126test_Block_Write_[] = "test_Block_Write_()";
static PyMethodDef __pyx_mdef_7_test_c_127test_Block_Write_ = {"test_Block_Write_", (PyCFunction)__pyx_pw_7_test_c_127test_Block_Write_, METH_NOARGS, __pyx_doc_7_test_c_126test_Block_Write_};
static PyObject *__pyx_pw_7_test_c_127test_Block_Write_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Write_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_126test_Block_Write_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_126test_Block_Write_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Write_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_AddTraceback("_test_c.test_Block_Write_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__236 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__236)) __PYX_ERR(0, 2531, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__236);
  __Pyx_GIVEREF(__pyx_tuple__236);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_127test_Block_Write_, 0, __pyx_n_s_test_Block_Write, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__237)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2531, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Write, __pyx_t_1) < 0) __PYX_ERR(0, 2531, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__237 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__236, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Write, 2531, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__237)) __PYX_ERR(0, 2531, __pyx_L1_error)
 2532:     cdef:
+2533:         Block_* block = NULL
  __pyx_v_block = NULL;
+2534:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2535:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2536:         size_t start
 2537:         size_t endex
 2538:         bytes buffer
 2539: 
+2540:     try:
  /*try:*/ {
+2541:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2542:             for endex in range(start, size):
      __pyx_t_4 = __pyx_v_size;
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = __pyx_v_start; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2543:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2543, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2544:                 block = Block_Write_(block, 0, endex - start, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 2544, __pyx_L4_error)
        }
        __pyx_t_8 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_8) && PyErr_Occurred())) __PYX_ERR(0, 2544, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Write_(__pyx_v_block, 0, (__pyx_v_endex - __pyx_v_start), __pyx_t_8); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2544, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2545:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2545, __pyx_L4_error)
          }
        }
        #endif
+2546:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2546, __pyx_L4_error)
          }
        }
        #endif
+2547:                 assert Block_Length(block) == endex - start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == (__pyx_v_endex - __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2547, __pyx_L4_error)
          }
        }
        #endif
+2548:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2548, __pyx_L4_error)
          }
        }
        #endif
+2549:                 assert Block_Endex(block) == 0x1234 + endex - start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_endex) - __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2549, __pyx_L4_error)
          }
        }
        #endif
+2550:                 assert Block_Eq_(block, endex - start, data) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2550, __pyx_L4_error)
          }
          __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 2550, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, (__pyx_v_endex - __pyx_v_start), __pyx_t_9) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2550, __pyx_L4_error)
          }
        }
        #endif
+2551:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 2552: 
+2553:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2554:             for endex in range(start, start + size):
      __pyx_t_4 = (__pyx_v_start + __pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = __pyx_v_start; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2555:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 2555, __pyx_L4_error)
        }
        __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 2555, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2555, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2556:                 block = Block_Write_(block, start, endex - start, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 2556, __pyx_L4_error)
        }
        __pyx_t_8 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_8) && PyErr_Occurred())) __PYX_ERR(0, 2556, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Write_(__pyx_v_block, __pyx_v_start, (__pyx_v_endex - __pyx_v_start), __pyx_t_8); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2556, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2557:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2557, __pyx_L4_error)
          }
        }
        #endif
+2558:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2558, __pyx_L4_error)
          }
        }
        #endif
+2559:                 assert Block_Length(block) == max(size, endex)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_11 = __pyx_v_endex;
          __pyx_t_12 = __pyx_v_size;
          if (((__pyx_t_11 > __pyx_t_12) != 0)) {
            __pyx_t_13 = __pyx_t_11;
          } else {
            __pyx_t_13 = __pyx_t_12;
          }
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == __pyx_t_13) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2559, __pyx_L4_error)
          }
        }
        #endif
+2560:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2560, __pyx_L4_error)
          }
        }
        #endif
+2561:                 assert Block_Endex(block) == 0x1234 + max(size, endex)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_13 = __pyx_v_endex;
          __pyx_t_11 = __pyx_v_size;
          if (((__pyx_t_13 > __pyx_t_11) != 0)) {
            __pyx_t_12 = __pyx_t_13;
          } else {
            __pyx_t_12 = __pyx_t_11;
          }
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_t_12)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2561, __pyx_L4_error)
          }
        }
        #endif
+2562:                 buffer = data[:start] + data[:endex - start] + data[endex:]
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2562, __pyx_L4_error)
        }
        __pyx_t_14 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_start); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2562, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_14);
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2562, __pyx_L4_error)
        }
        __pyx_t_15 = PySequence_GetSlice(__pyx_v_data, 0, (__pyx_v_endex - __pyx_v_start)); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2562, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_15);
        __pyx_t_16 = PyNumber_Add(__pyx_t_14, __pyx_t_15); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2562, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_16);
        __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
        __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2562, __pyx_L4_error)
        }
        __pyx_t_15 = PySequence_GetSlice(__pyx_v_data, __pyx_v_endex, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2562, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_15);
        __pyx_t_14 = PyNumber_Add(__pyx_t_16, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2562, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_14);
        __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
        __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
        __pyx_t_14 = 0;
+2563:                 assert Block_Eq_(block, max(size, endex), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_12 = __pyx_v_endex;
          __pyx_t_13 = __pyx_v_size;
          if (((__pyx_t_12 > __pyx_t_13) != 0)) {
            __pyx_t_11 = __pyx_t_12;
          } else {
            __pyx_t_11 = __pyx_t_13;
          }
          __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 2563, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, __pyx_t_11, __pyx_t_9) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2563, __pyx_L4_error)
          }
        }
        #endif
+2564:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 2565: 
+2566:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2566, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 2566, __pyx_L4_error)
    __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2566, __pyx_L4_error)
    __pyx_v_block = __pyx_t_7;
 2567: 
+2568:         with pytest.raises(OverflowError):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_pytest); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2568, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_raises); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2568, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_16))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_16);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_16);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_16, function);
        }
      }
      __pyx_t_14 = (__pyx_t_15) ? __Pyx_PyObject_Call2Args(__pyx_t_16, __pyx_t_15, __pyx_builtin_OverflowError) : __Pyx_PyObject_CallOneArg(__pyx_t_16, __pyx_builtin_OverflowError);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2568, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __pyx_t_17 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_exit); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2568, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_17);
      __pyx_t_15 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_enter); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2568, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_18 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_15))) {
        __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_15);
        if (likely(__pyx_t_18)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15);
          __Pyx_INCREF(__pyx_t_18);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_15, function);
        }
      }
      __pyx_t_16 = (__pyx_t_18) ? __Pyx_PyObject_CallOneArg(__pyx_t_15, __pyx_t_18) : __Pyx_PyObject_CallNoArg(__pyx_t_15);
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2568, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          goto __pyx_L23_try_end;
          __pyx_L18_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Write_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_15) < 0) __PYX_ERR(0, 2568, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_18 = PyTuple_Pack(3, __pyx_t_14, __pyx_t_16, __pyx_t_15); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2568, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_22 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_t_18, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2568, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_22);
            __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_22);
            __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0;
            if (__pyx_t_23 < 0) __PYX_ERR(0, 2568, __pyx_L20_except_error)
            __pyx_t_24 = ((!(__pyx_t_23 != 0)) != 0);
            if (__pyx_t_24) {
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_GIVEREF(__pyx_t_16);
              __Pyx_XGIVEREF(__pyx_t_15);
              __Pyx_ErrRestoreWithState(__pyx_t_14, __pyx_t_16, __pyx_t_15);
              __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_15 = 0; 
              __PYX_ERR(0, 2568, __pyx_L20_except_error)
            }
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
            __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
            goto __pyx_L19_exception_handled;
          }
          __pyx_L20_except_error:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21);
          goto __pyx_L4_error;
          __pyx_L19_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21);
          __pyx_L23_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_17) {
            __pyx_t_21 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2568, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_21);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
          }
          goto __pyx_L17;
        }
        __pyx_L17:;
      }
      goto __pyx_L27;
      __pyx_L14_error:;
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      goto __pyx_L4_error;
      __pyx_L27:;
    }
+2569:             Block_Write_(block, SIZE_MAX, 1, NULL)
            __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Write_(__pyx_v_block, SIZE_MAX, 1, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2569, __pyx_L18_error)
 2570: 
+2571:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_pytest); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2571, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_raises); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2571, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __pyx_t_15 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2571, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2571, __pyx_L4_error)
      __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple__45, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2571, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __pyx_t_17 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_exit); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2571, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_17);
      __pyx_t_16 = __Pyx_PyObject_LookupSpecial(__pyx_t_14, __pyx_n_s_enter); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2571, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_18 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_16))) {
        __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_16);
        if (likely(__pyx_t_18)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_16);
          __Pyx_INCREF(__pyx_t_18);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_16, function);
        }
      }
      __pyx_t_15 = (__pyx_t_18) ? __Pyx_PyObject_CallOneArg(__pyx_t_16, __pyx_t_18) : __Pyx_PyObject_CallNoArg(__pyx_t_16);
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2571, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          goto __pyx_L37_try_end;
          __pyx_L32_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_Write_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16) < 0) __PYX_ERR(0, 2571, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_18 = PyTuple_Pack(3, __pyx_t_14, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2571, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_22 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_t_18, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2571, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_22);
            __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_22);
            __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0;
            if (__pyx_t_24 < 0) __PYX_ERR(0, 2571, __pyx_L34_except_error)
            __pyx_t_23 = ((!(__pyx_t_24 != 0)) != 0);
            if (__pyx_t_23) {
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_GIVEREF(__pyx_t_15);
              __Pyx_XGIVEREF(__pyx_t_16);
              __Pyx_ErrRestoreWithState(__pyx_t_14, __pyx_t_15, __pyx_t_16);
              __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; 
              __PYX_ERR(0, 2571, __pyx_L34_except_error)
            }
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
            goto __pyx_L33_exception_handled;
          }
          __pyx_L34_except_error:;
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_20, __pyx_t_19);
          goto __pyx_L4_error;
          __pyx_L33_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_20, __pyx_t_19);
          __pyx_L37_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_17) {
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2571, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
          }
          goto __pyx_L31;
        }
        __pyx_L31:;
      }
      goto __pyx_L41;
      __pyx_L28_error:;
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      goto __pyx_L4_error;
      __pyx_L41:;
    }
/* … */
  __pyx_tuple__45 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(0, 2571, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__45);
  __Pyx_GIVEREF(__pyx_tuple__45);
+2572:             Block_Write_(block, SIZE_MAX - size, 1, NULL)
            __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Write_(__pyx_v_block, (SIZE_MAX - __pyx_v_size), 1, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2572, __pyx_L32_error)
 2573: 
+2574:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 2575: 
 2576:     finally:
+2577:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_17 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_28 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_21, &__pyx_t_22, &__pyx_t_28);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_17, &__pyx_t_19, &__pyx_t_20) < 0)) __Pyx_ErrFetch(&__pyx_t_17, &__pyx_t_19, &__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_28);
      __pyx_t_25 = __pyx_lineno; __pyx_t_26 = __pyx_clineno; __pyx_t_27 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_28);
        __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_22, __pyx_t_28);
      }
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_ErrRestore(__pyx_t_17, __pyx_t_19, __pyx_t_20);
      __pyx_t_17 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_28 = 0;
      __pyx_lineno = __pyx_t_25; __pyx_clineno = __pyx_t_26; __pyx_filename = __pyx_t_27;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2578: 
 2579: 
+2580: def test_Block_ReadSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_129test_Block_ReadSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_128test_Block_ReadSlice_[] = "test_Block_ReadSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_129test_Block_ReadSlice_ = {"test_Block_ReadSlice_", (PyCFunction)__pyx_pw_7_test_c_129test_Block_ReadSlice_, METH_NOARGS, __pyx_doc_7_test_c_128test_Block_ReadSlice_};
static PyObject *__pyx_pw_7_test_c_129test_Block_ReadSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReadSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_128test_Block_ReadSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_128test_Block_ReadSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  size_t __pyx_v_num;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReadSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_AddTraceback("_test_c.test_Block_ReadSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__238 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer, __pyx_n_s_num); if (unlikely(!__pyx_tuple__238)) __PYX_ERR(0, 2580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__238);
  __Pyx_GIVEREF(__pyx_tuple__238);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_129test_Block_ReadSlice_, 0, __pyx_n_s_test_Block_ReadSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__239)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReadSlice, __pyx_t_1) < 0) __PYX_ERR(0, 2580, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__239 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__238, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReadSlice, 2580, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__239)) __PYX_ERR(0, 2580, __pyx_L1_error)
 2581:     cdef:
+2582:         Block_* block = NULL
  __pyx_v_block = NULL;
+2583:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2584:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2585:         size_t start
 2586:         size_t endex
 2587:         bytearray buffer
 2588:         size_t num
 2589: 
+2590:     try:
  /*try:*/ {
+2591:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2591, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2591, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2591, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2592: 
+2593:         for start in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+2594:             for endex in range(start + size):
      __pyx_t_6 = (__pyx_v_start + __pyx_v_size);
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+2595:                 buffer = bytearray(endex - start if start < endex else 0)
        if (((__pyx_v_start < __pyx_v_endex) != 0)) {
          __pyx_t_10 = __Pyx_PyInt_FromSize_t((__pyx_v_endex - __pyx_v_start)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2595, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_9 = __pyx_t_10;
          __pyx_t_10 = 0;
        } else {
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_9 = __pyx_int_0;
        }
        __pyx_t_10 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2595, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_10));
        __pyx_t_10 = 0;
+2596:                 Block_ReadSlice_(block, start, endex, &num, buffer)
        __pyx_t_11 = __Pyx_PyObject_AsWritableUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2596, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_ReadSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, (&__pyx_v_num), __pyx_t_11); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2596, __pyx_L4_error)
+2597:                 assert num == <size_t>len(data[start:endex])
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2597, __pyx_L4_error)
          }
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2597, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_13 = PyBytes_GET_SIZE(__pyx_t_10); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2597, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!((__pyx_v_num == ((size_t)__pyx_t_13)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2597, __pyx_L4_error)
          }
        }
        #endif
+2598:                 assert buffer[:num] == data[start:endex]
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_buffer, 0, __pyx_v_num); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2598, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2598, __pyx_L4_error)
          }
          __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2598, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_14 = (__Pyx_PyBytes_Equals(__pyx_t_10, __pyx_t_9, Py_EQ)); if (unlikely(__pyx_t_14 < 0)) __PYX_ERR(0, 2598, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(!(__pyx_t_14 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2598, __pyx_L4_error)
          }
        }
        #endif
      }
    }
 2599: 
+2600:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2600, __pyx_L4_error)
      __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__46, __pyx_t_9); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_16 = __Pyx_PyObject_LookupSpecial(__pyx_t_15, __pyx_n_s_exit); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_15, __pyx_n_s_enter); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2600, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_17 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
        __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_10);
        if (likely(__pyx_t_17)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_17);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_10, function);
        }
      }
      __pyx_t_9 = (__pyx_t_17) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_17) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2600, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_ReadSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_9, &__pyx_t_10) < 0) __PYX_ERR(0, 2600, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_17 = PyTuple_Pack(3, __pyx_t_15, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2600, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __pyx_t_21 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_t_17, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2600, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_21);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 2600, __pyx_L16_except_error)
            __pyx_t_22 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_22) {
              __Pyx_GIVEREF(__pyx_t_15);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ErrRestoreWithState(__pyx_t_15, __pyx_t_9, __pyx_t_10);
              __pyx_t_15 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; 
              __PYX_ERR(0, 2600, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_20);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_20);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_16) {
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2600, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__46 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(0, 2600, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__46);
  __Pyx_GIVEREF(__pyx_tuple__46);
+2601:             Block_ReadSlice_(block, SIZE_MAX, SIZE_MAX, &num, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_ReadSlice_(__pyx_v_block, SIZE_MAX, SIZE_MAX, (&__pyx_v_num), NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2601, __pyx_L14_error)
 2602: 
+2603:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2603, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2603, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2603, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2603, __pyx_L4_error)
      __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__47, __pyx_t_10); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2603, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_15);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_16 = __Pyx_PyObject_LookupSpecial(__pyx_t_15, __pyx_n_s_exit); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2603, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_15, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2603, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_17 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_17)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_17);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_10 = (__pyx_t_17) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_17) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2603, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_ReadSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_10, &__pyx_t_9) < 0) __PYX_ERR(0, 2603, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_17 = PyTuple_Pack(3, __pyx_t_15, __pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2603, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __pyx_t_21 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_t_17, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2603, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_22 = __Pyx_PyObject_IsTrue(__pyx_t_21);
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (__pyx_t_22 < 0) __PYX_ERR(0, 2603, __pyx_L30_except_error)
            __pyx_t_14 = ((!(__pyx_t_22 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_15);
              __Pyx_GIVEREF(__pyx_t_10);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_15, __pyx_t_10, __pyx_t_9);
              __pyx_t_15 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 2603, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_19, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_19);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_19, __pyx_t_18);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_16) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2603, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
  }
/* … */
  __pyx_tuple__47 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(0, 2603, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__47);
  __Pyx_GIVEREF(__pyx_tuple__47);
+2604:             Block_ReadSlice_(block, 0, SIZE_MAX, &num, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_ReadSlice_(__pyx_v_block, 0, SIZE_MAX, (&__pyx_v_num), NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2604, __pyx_L28_error)
 2605: 
 2606:     finally:
+2607:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_16 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_26 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_20, &__pyx_t_21, &__pyx_t_26);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_18, &__pyx_t_19) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_18, &__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_26);
      __pyx_t_23 = __pyx_lineno; __pyx_t_24 = __pyx_clineno; __pyx_t_25 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_XGIVEREF(__pyx_t_26);
        __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_26);
      }
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_ErrRestore(__pyx_t_16, __pyx_t_18, __pyx_t_19);
      __pyx_t_16 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_26 = 0;
      __pyx_lineno = __pyx_t_23; __pyx_clineno = __pyx_t_24; __pyx_filename = __pyx_t_25;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2608: 
 2609: 
+2610: def test_Block_ReadSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_131test_Block_ReadSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_130test_Block_ReadSlice[] = "test_Block_ReadSlice()";
static PyMethodDef __pyx_mdef_7_test_c_131test_Block_ReadSlice = {"test_Block_ReadSlice", (PyCFunction)__pyx_pw_7_test_c_131test_Block_ReadSlice, METH_NOARGS, __pyx_doc_7_test_c_130test_Block_ReadSlice};
static PyObject *__pyx_pw_7_test_c_131test_Block_ReadSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReadSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_130test_Block_ReadSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_130test_Block_ReadSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  size_t __pyx_v_num;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ReadSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Block_ReadSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__240 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer, __pyx_n_s_num); if (unlikely(!__pyx_tuple__240)) __PYX_ERR(0, 2610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__240);
  __Pyx_GIVEREF(__pyx_tuple__240);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_131test_Block_ReadSlice, 0, __pyx_n_s_test_Block_ReadSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__241)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2610, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReadSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 2610, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__241 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__240, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReadSlice_2, 2610, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__241)) __PYX_ERR(0, 2610, __pyx_L1_error)
 2611:     cdef:
+2612:         Block_* block = NULL
  __pyx_v_block = NULL;
+2613:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2614:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2615:         ssize_t start
 2616:         ssize_t endex
 2617:         bytearray buffer
 2618:         size_t num
 2619: 
+2620:     try:
  /*try:*/ {
+2621:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2621, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2621, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2621, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2622: 
+2623:         for start in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_3 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+2624:             for endex in range(-<ssize_t>size, <ssize_t>(start + size)):
      __pyx_t_6 = ((Py_ssize_t)(__pyx_v_start + __pyx_v_size));
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+2625:                 buffer = bytearray(size)
        __pyx_t_9 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2625, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_10 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2625, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_10));
        __pyx_t_10 = 0;
+2626:                 Block_ReadSlice(block, start, endex, &num, buffer)
        __pyx_t_11 = __Pyx_PyObject_AsWritableUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2626, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_2_c_Block_ReadSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex, (&__pyx_v_num), __pyx_t_11); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 2626, __pyx_L4_error)
+2627:                 assert num == <size_t>len(data[start:endex])
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2627, __pyx_L4_error)
          }
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2627, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_13 = PyBytes_GET_SIZE(__pyx_t_10); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2627, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!((__pyx_v_num == ((size_t)__pyx_t_13)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2627, __pyx_L4_error)
          }
        }
        #endif
+2628:                 assert buffer[:num] == data[start:endex]
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_buffer, 0, __pyx_v_num); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2628, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2628, __pyx_L4_error)
          }
          __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2628, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_14 = (__Pyx_PyBytes_Equals(__pyx_t_10, __pyx_t_9, Py_EQ)); if (unlikely(__pyx_t_14 < 0)) __PYX_ERR(0, 2628, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(!(__pyx_t_14 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2628, __pyx_L4_error)
          }
        }
        #endif
      }
    }
  }
 2629: 
 2630:     finally:
+2631:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20) < 0)) __Pyx_ErrFetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_ExceptionReset(__pyx_t_21, __pyx_t_22, __pyx_t_23);
      }
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_ErrRestore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
      __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2632: 
 2633: 
+2634: def test_Block_GetSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_133test_Block_GetSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_132test_Block_GetSlice_[] = "test_Block_GetSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_133test_Block_GetSlice_ = {"test_Block_GetSlice_", (PyCFunction)__pyx_pw_7_test_c_133test_Block_GetSlice_, METH_NOARGS, __pyx_doc_7_test_c_132test_Block_GetSlice_};
static PyObject *__pyx_pw_7_test_c_133test_Block_GetSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_GetSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_132test_Block_GetSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_132test_Block_GetSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_GetSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_GetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__242 = PyTuple_Pack(7, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__242)) __PYX_ERR(0, 2634, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__242);
  __Pyx_GIVEREF(__pyx_tuple__242);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_133test_Block_GetSlice_, 0, __pyx_n_s_test_Block_GetSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__243)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2634, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_GetSlice, __pyx_t_1) < 0) __PYX_ERR(0, 2634, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__243 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__242, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_GetSlice, 2634, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__243)) __PYX_ERR(0, 2634, __pyx_L1_error)
 2635:     cdef:
+2636:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2637:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2638:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2639:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2640:         size_t start
 2641:         size_t endex
 2642:         bytes buffer
 2643: 
+2644:     try:
  /*try:*/ {
+2645:         block1 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2645, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2645, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2645, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 2646: 
+2647:         for start in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+2648:             for endex in range(start + size):
      __pyx_t_6 = (__pyx_v_start + __pyx_v_size);
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+2649:                 block2 = Block_GetSlice_(block1, start, endex)
        __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_GetSlice_(__pyx_v_block1, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2649, __pyx_L4_error)
        __pyx_v_block2 = __pyx_t_2;
+2650:                 buffer = data[start:endex]
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2650, __pyx_L4_error)
        }
        __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2650, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_9));
        __pyx_t_9 = 0;
+2651:                 assert block2 != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2651, __pyx_L4_error)
          }
        }
        #endif
+2652:                 assert block2.address == 0x1234 + start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block2->address == (0x1234 + __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2652, __pyx_L4_error)
          }
        }
        #endif
+2653:                 assert Block_Length(block2) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2653, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == ((size_t)__pyx_t_10)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2653, __pyx_L4_error)
          }
        }
        #endif
+2654:                 assert Block_Start(block2) == 0x1234 + start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == (0x1234 + __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2654, __pyx_L4_error)
          }
        }
        #endif
+2655:                 assert Block_Endex(block2) == 0x1234 + start + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2655, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_start) + ((size_t)__pyx_t_10))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2655, __pyx_L4_error)
          }
        }
        #endif
+2656:                 assert Block_Eq_(block2, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2656, __pyx_L4_error)
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2656, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, ((size_t)__pyx_t_10), __pyx_t_11) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2656, __pyx_L4_error)
          }
        }
        #endif
+2657:                 block2 = Block_Free(block2)
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
    }
 2658: 
+2659:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2659, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__48, __pyx_t_9); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 2659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2659, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2659, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_9 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2659, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_GetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_9, &__pyx_t_12) < 0) __PYX_ERR(0, 2659, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_9, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2659, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2659, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 2659, __pyx_L16_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_9, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 2659, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2659, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__48 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(0, 2659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__48);
  __Pyx_GIVEREF(__pyx_tuple__48);
+2660:             Block_GetSlice_(block1, SIZE_MAX, SIZE_MAX)
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_GetSlice_(__pyx_v_block1, SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2660, __pyx_L14_error)
 2661: 
+2662:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2662, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2662, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2662, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2662, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__49, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 2662, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2662, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2662, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2662, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_GetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_9) < 0) __PYX_ERR(0, 2662, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_9); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2662, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2662, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 2662, __pyx_L30_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_9);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 2662, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2662, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
  }
/* … */
  __pyx_tuple__49 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(0, 2662, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__49);
  __Pyx_GIVEREF(__pyx_tuple__49);
+2663:             Block_GetSlice_(block1, 0, SIZE_MAX)
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_GetSlice_(__pyx_v_block1, 0, SIZE_MAX); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2663, __pyx_L28_error)
 2664: 
 2665:     finally:
+2666:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2667:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_16, __pyx_t_17);
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2668: 
 2669: 
+2670: def test_Block_GetSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_135test_Block_GetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_134test_Block_GetSlice[] = "test_Block_GetSlice()";
static PyMethodDef __pyx_mdef_7_test_c_135test_Block_GetSlice = {"test_Block_GetSlice", (PyCFunction)__pyx_pw_7_test_c_135test_Block_GetSlice, METH_NOARGS, __pyx_doc_7_test_c_134test_Block_GetSlice};
static PyObject *__pyx_pw_7_test_c_135test_Block_GetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_GetSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_134test_Block_GetSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_134test_Block_GetSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  CYTHON_UNUSED Py_ssize_t __pyx_v_start_;
  CYTHON_UNUSED Py_ssize_t __pyx_v_endex_;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_GetSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c.test_Block_GetSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__244 = PyTuple_Pack(9, __pyx_n_s_block1, __pyx_n_s_block2, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer, __pyx_n_s_start_2, __pyx_n_s_endex_2); if (unlikely(!__pyx_tuple__244)) __PYX_ERR(0, 2670, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__244);
  __Pyx_GIVEREF(__pyx_tuple__244);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_135test_Block_GetSlice, 0, __pyx_n_s_test_Block_GetSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__245)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2670, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_GetSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 2670, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__245 = (PyObject*)__Pyx_PyCode_New(0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__244, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_GetSlice_2, 2670, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__245)) __PYX_ERR(0, 2670, __pyx_L1_error)
 2671:     cdef:
+2672:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2673:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2674:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2675:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2676:         ssize_t start
 2677:         ssize_t endex
 2678:         bytes buffer
 2679: 
+2680:     try:
  /*try:*/ {
+2681:         block1 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2681, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2681, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2681, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 2682: 
+2683:         for start in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_3 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+2684:             for endex in range(-<ssize_t>size, <ssize_t>(start + size)):
      __pyx_t_6 = ((Py_ssize_t)(__pyx_v_start + __pyx_v_size));
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+2685:                 start_, endex_ = start, endex
        __pyx_t_9 = __pyx_v_start;
        __pyx_t_10 = __pyx_v_endex;
        __pyx_v_start_ = __pyx_t_9;
        __pyx_v_endex_ = __pyx_t_10;
+2686:                 block2 = Block_GetSlice(block1, start, endex)
        __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_GetSlice(__pyx_v_block1, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2686, __pyx_L4_error)
        __pyx_v_block2 = __pyx_t_2;
+2687:                 buffer = data[start:endex]
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2687, __pyx_L4_error)
        }
        __pyx_t_11 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2687, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_11));
        __pyx_t_11 = 0;
+2688:                 start = start % <ssize_t>size
        if (unlikely(((Py_ssize_t)__pyx_v_size) == 0)) {
          PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
          __PYX_ERR(0, 2688, __pyx_L4_error)
        }
        __pyx_v_start = __Pyx_mod_Py_ssize_t(__pyx_v_start, ((Py_ssize_t)__pyx_v_size));
+2689:                 assert block2 != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block2 != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2689, __pyx_L4_error)
          }
        }
        #endif
+2690:                 assert block2.address == 0x1234 + <size_t>start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block2->address == (0x1234 + ((size_t)__pyx_v_start))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2690, __pyx_L4_error)
          }
        }
        #endif
+2691:                 assert Block_Length(block2) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_12 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2691, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block2) == ((size_t)__pyx_t_12)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2691, __pyx_L4_error)
          }
        }
        #endif
+2692:                 assert Block_Start(block2) == 0x1234 + <size_t>start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block2) == (0x1234 + ((size_t)__pyx_v_start))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2692, __pyx_L4_error)
          }
        }
        #endif
+2693:                 assert Block_Endex(block2) == 0x1234 + <size_t>start + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_12 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2693, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block2) == ((0x1234 + ((size_t)__pyx_v_start)) + ((size_t)__pyx_t_12))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2693, __pyx_L4_error)
          }
        }
        #endif
+2694:                 assert Block_Eq_(block2, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_12 = PyBytes_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2694, __pyx_L4_error)
          __pyx_t_13 = __Pyx_PyBytes_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_13) && PyErr_Occurred())) __PYX_ERR(0, 2694, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block2, ((size_t)__pyx_t_12), __pyx_t_13) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2694, __pyx_L4_error)
          }
        }
        #endif
+2695:                 block2 = Block_Free(block2)
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
    }
  }
 2696: 
 2697:     finally:
+2698:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2699:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19) < 0)) __Pyx_ErrFetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
      }
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_ErrRestore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
      __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2700: 
 2701: 
+2702: def test_Block_WriteSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_137test_Block_WriteSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_136test_Block_WriteSlice_[] = "test_Block_WriteSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_137test_Block_WriteSlice_ = {"test_Block_WriteSlice_", (PyCFunction)__pyx_pw_7_test_c_137test_Block_WriteSlice_, METH_NOARGS, __pyx_doc_7_test_c_136test_Block_WriteSlice_};
static PyObject *__pyx_pw_7_test_c_137test_Block_WriteSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_WriteSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_136test_Block_WriteSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_136test_Block_WriteSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  size_t __pyx_v_num;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_WriteSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_AddTraceback("_test_c.test_Block_WriteSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__246 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_num, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__246)) __PYX_ERR(0, 2702, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__246);
  __Pyx_GIVEREF(__pyx_tuple__246);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_137test_Block_WriteSlice_, 0, __pyx_n_s_test_Block_WriteSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__247)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2702, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_WriteSlice, __pyx_t_1) < 0) __PYX_ERR(0, 2702, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__247 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__246, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_WriteSlice, 2702, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__247)) __PYX_ERR(0, 2702, __pyx_L1_error)
 2703:     cdef:
+2704:         Block_* block = NULL
  __pyx_v_block = NULL;
+2705:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2706:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2707:         size_t start
 2708:         size_t endex
 2709:         size_t num
 2710:         bytearray buffer
 2711: 
+2712:     try:
  /*try:*/ {
+2713:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2714:             for endex in range(size):
      __pyx_t_4 = __pyx_v_size;
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2715:                 for num in range(size):
        __pyx_t_7 = __pyx_v_size;
        __pyx_t_8 = __pyx_t_7;
        for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
          __pyx_v_num = __pyx_t_9;
+2716:                     block = Block_Create(0x1234, 0, NULL)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2716, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2717:                     block = Block_WriteSlice_(block, start, endex, num, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2717, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2717, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_num, __pyx_t_11); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2717, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2718:                     buffer = bytearray()
          __pyx_t_12 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2718, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2719:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2719, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2719, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_12, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2719, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2720:                     assert block != NULL
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block != NULL) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2720, __pyx_L4_error)
            }
          }
          #endif
+2721:                     assert block.address == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2721, __pyx_L4_error)
            }
          }
          #endif
+2722:                     assert Block_Length(block) == <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2722, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2722, __pyx_L4_error)
            }
          }
          #endif
+2723:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2723, __pyx_L4_error)
            }
          }
          #endif
+2724:                     assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2724, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2724, __pyx_L4_error)
            }
          }
          #endif
+2725:                     assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2725, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2725, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2725, __pyx_L4_error)
            }
          }
          #endif
+2726:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
        }
      }
    }
 2727: 
+2728:         for start in range(size + size):
    __pyx_t_1 = (__pyx_v_size + __pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2729:             for endex in range(size + size):
      __pyx_t_4 = (__pyx_v_size + __pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2730:                 for num in range(size):
        __pyx_t_7 = __pyx_v_size;
        __pyx_t_8 = __pyx_t_7;
        for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
          __pyx_v_num = __pyx_t_9;
+2731:                     block = Block_Create(0x1234, size, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2731, __pyx_L4_error)
          }
          __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2731, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2731, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2732:                     block = Block_WriteSlice_(block, start, endex, num, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2732, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2732, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_num, __pyx_t_11); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2732, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2733:                     buffer = bytearray(data)
          __pyx_t_12 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2733, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2734:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2734, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2734, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_12, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2734, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2735:                     assert block != NULL
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block != NULL) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2735, __pyx_L4_error)
            }
          }
          #endif
+2736:                     assert block.address == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2736, __pyx_L4_error)
            }
          }
          #endif
+2737:                     assert Block_Length(block) == <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2737, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2737, __pyx_L4_error)
            }
          }
          #endif
+2738:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2738, __pyx_L4_error)
            }
          }
          #endif
+2739:                     assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2739, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2739, __pyx_L4_error)
            }
          }
          #endif
+2740:                     assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2740, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2740, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2740, __pyx_L4_error)
            }
          }
          #endif
+2741:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
        }
      }
    }
 2742: 
+2743:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2743, __pyx_L4_error)
    }
    __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2743, __pyx_L4_error)
    __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2743, __pyx_L4_error)
    __pyx_v_block = __pyx_t_10;
 2744: 
+2745:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2745, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2745, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2745, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2745, __pyx_L4_error)
      __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple__50, __pyx_t_12); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2745, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_17);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_18 = __Pyx_PyObject_LookupSpecial(__pyx_t_17, __pyx_n_s_exit); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2745, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_16 = __Pyx_PyObject_LookupSpecial(__pyx_t_17, __pyx_n_s_enter); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2745, __pyx_L18_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_19 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_16))) {
        __pyx_t_19 = PyMethod_GET_SELF(__pyx_t_16);
        if (likely(__pyx_t_19)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_16);
          __Pyx_INCREF(__pyx_t_19);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_16, function);
        }
      }
      __pyx_t_12 = (__pyx_t_19) ? __Pyx_PyObject_CallOneArg(__pyx_t_16, __pyx_t_19) : __Pyx_PyObject_CallNoArg(__pyx_t_16);
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2745, __pyx_L18_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          goto __pyx_L27_try_end;
          __pyx_L22_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_WriteSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_17, &__pyx_t_12, &__pyx_t_16) < 0) __PYX_ERR(0, 2745, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_16);
            __pyx_t_19 = PyTuple_Pack(3, __pyx_t_17, __pyx_t_12, __pyx_t_16); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2745, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_t_19, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2745, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_23);
            __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_23);
            __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
            if (__pyx_t_24 < 0) __PYX_ERR(0, 2745, __pyx_L24_except_error)
            __pyx_t_25 = ((!(__pyx_t_24 != 0)) != 0);
            if (__pyx_t_25) {
              __Pyx_GIVEREF(__pyx_t_17);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_16);
              __Pyx_ErrRestoreWithState(__pyx_t_17, __pyx_t_12, __pyx_t_16);
              __pyx_t_17 = 0; __pyx_t_12 = 0; __pyx_t_16 = 0; 
              __PYX_ERR(0, 2745, __pyx_L24_except_error)
            }
            __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
            goto __pyx_L23_exception_handled;
          }
          __pyx_L24_except_error:;
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
          goto __pyx_L4_error;
          __pyx_L23_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22);
          __pyx_L27_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_18) {
            __pyx_t_22 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2745, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_22);
            __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0;
          }
          goto __pyx_L21;
        }
        __pyx_L21:;
      }
      goto __pyx_L31;
      __pyx_L18_error:;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      goto __pyx_L4_error;
      __pyx_L31:;
    }
/* … */
  __pyx_tuple__50 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(0, 2745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__50);
  __Pyx_GIVEREF(__pyx_tuple__50);
+2746:             Block_WriteSlice_(block, SIZE_HMAX + 1, 0, 1, NULL)
            __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice_(__pyx_v_block, (SIZE_HMAX + 1), 0, 1, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2746, __pyx_L22_error)
 2747: 
+2748:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_n_s_pytest); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2748, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_16, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2748, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __pyx_t_16 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2748, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_16);
      if (PyDict_SetItem(__pyx_t_16, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2748, __pyx_L4_error)
      __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__51, __pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2748, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_17);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __pyx_t_18 = __Pyx_PyObject_LookupSpecial(__pyx_t_17, __pyx_n_s_exit); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2748, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_17, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2748, __pyx_L32_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_19 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_19 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_19)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_19);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_16 = (__pyx_t_19) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_19) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2748, __pyx_L32_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0;
          goto __pyx_L41_try_end;
          __pyx_L36_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_WriteSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_17, &__pyx_t_16, &__pyx_t_12) < 0) __PYX_ERR(0, 2748, __pyx_L38_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_19 = PyTuple_Pack(3, __pyx_t_17, __pyx_t_16, __pyx_t_12); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2748, __pyx_L38_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_t_19, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2748, __pyx_L38_except_error)
            __Pyx_GOTREF(__pyx_t_23);
            __pyx_t_25 = __Pyx_PyObject_IsTrue(__pyx_t_23);
            __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
            if (__pyx_t_25 < 0) __PYX_ERR(0, 2748, __pyx_L38_except_error)
            __pyx_t_24 = ((!(__pyx_t_25 != 0)) != 0);
            if (__pyx_t_24) {
              __Pyx_GIVEREF(__pyx_t_17);
              __Pyx_GIVEREF(__pyx_t_16);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_17, __pyx_t_16, __pyx_t_12);
              __pyx_t_17 = 0; __pyx_t_16 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 2748, __pyx_L38_except_error)
            }
            __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
            __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L37_exception_handled;
          }
          __pyx_L38_except_error:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_21, __pyx_t_20);
          goto __pyx_L4_error;
          __pyx_L37_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_21);
          __Pyx_XGIVEREF(__pyx_t_20);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_21, __pyx_t_20);
          __pyx_L41_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_18) {
            __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2748, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_20);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
          }
          goto __pyx_L35;
        }
        __pyx_L35:;
      }
      goto __pyx_L45;
      __pyx_L32_error:;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      goto __pyx_L4_error;
      __pyx_L45:;
    }
/* … */
  __pyx_tuple__51 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 2748, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__51);
  __Pyx_GIVEREF(__pyx_tuple__51);
+2749:             Block_WriteSlice_(block, 0, SIZE_HMAX + 1, 1, NULL)
            __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice_(__pyx_v_block, 0, (SIZE_HMAX + 1), 1, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2749, __pyx_L36_error)
 2750: 
+2751:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 2752: 
 2753:     finally:
+2754:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_18 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_29 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_22, &__pyx_t_23, &__pyx_t_29);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_18, &__pyx_t_20, &__pyx_t_21) < 0)) __Pyx_ErrFetch(&__pyx_t_18, &__pyx_t_20, &__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_29);
      __pyx_t_26 = __pyx_lineno; __pyx_t_27 = __pyx_clineno; __pyx_t_28 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_XGIVEREF(__pyx_t_29);
        __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_29);
      }
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_ErrRestore(__pyx_t_18, __pyx_t_20, __pyx_t_21);
      __pyx_t_18 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_29 = 0;
      __pyx_lineno = __pyx_t_26; __pyx_clineno = __pyx_t_27; __pyx_filename = __pyx_t_28;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2755: 
 2756: 
+2757: def test_Block_WriteSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_139test_Block_WriteSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_138test_Block_WriteSlice[] = "test_Block_WriteSlice()";
static PyMethodDef __pyx_mdef_7_test_c_139test_Block_WriteSlice = {"test_Block_WriteSlice", (PyCFunction)__pyx_pw_7_test_c_139test_Block_WriteSlice, METH_NOARGS, __pyx_doc_7_test_c_138test_Block_WriteSlice};
static PyObject *__pyx_pw_7_test_c_139test_Block_WriteSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_WriteSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_138test_Block_WriteSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_138test_Block_WriteSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  size_t __pyx_v_num;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_WriteSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_AddTraceback("_test_c.test_Block_WriteSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__248 = PyTuple_Pack(7, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_num, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__248)) __PYX_ERR(0, 2757, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__248);
  __Pyx_GIVEREF(__pyx_tuple__248);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_139test_Block_WriteSlice, 0, __pyx_n_s_test_Block_WriteSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__249)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2757, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_WriteSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 2757, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__249 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__248, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_WriteSlice_2, 2757, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__249)) __PYX_ERR(0, 2757, __pyx_L1_error)
 2758:     cdef:
+2759:         Block_* block = NULL
  __pyx_v_block = NULL;
+2760:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2761:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2762:         ssize_t start
 2763:         ssize_t endex
 2764:         size_t num
 2765:         bytearray buffer
 2766: 
+2767:     try:
  /*try:*/ {
+2768:         for start in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_1 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2769:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2770:                 for num in range(size):
        __pyx_t_7 = __pyx_v_size;
        __pyx_t_8 = __pyx_t_7;
        for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
          __pyx_v_num = __pyx_t_9;
+2771:                     block = Block_Create(0x1234, 0, NULL)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2771, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2772:                     block = Block_WriteSlice(block, start, endex, num, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2772, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2772, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_num, __pyx_t_11); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2772, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2773:                     buffer = bytearray()
          __pyx_t_12 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2773, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2774:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2774, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2774, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_12, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2774, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2775:                     assert block != NULL
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block != NULL) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2775, __pyx_L4_error)
            }
          }
          #endif
+2776:                     assert block.address == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2776, __pyx_L4_error)
            }
          }
          #endif
+2777:                     assert Block_Length(block) == <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2777, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2777, __pyx_L4_error)
            }
          }
          #endif
+2778:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2778, __pyx_L4_error)
            }
          }
          #endif
+2779:                     assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2779, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2779, __pyx_L4_error)
            }
          }
          #endif
+2780:                     assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2780, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2780, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2780, __pyx_L4_error)
            }
          }
          #endif
+2781:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
        }
      }
    }
 2782: 
+2783:         for start in range(-<ssize_t>(size + size), <ssize_t>(size + size)):
    __pyx_t_1 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)(__pyx_v_size + __pyx_v_size))); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+2784:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+2785:                 for num in range(size):
        __pyx_t_7 = __pyx_v_size;
        __pyx_t_8 = __pyx_t_7;
        for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
          __pyx_v_num = __pyx_t_9;
+2786:                     block = Block_Create(0x1234, size, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2786, __pyx_L4_error)
          }
          __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2786, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2786, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2787:                     block = Block_WriteSlice(block, start, endex, num, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2787, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2787, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Block_WriteSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_num, __pyx_t_11); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2787, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2788:                     buffer = bytearray(data)
          __pyx_t_12 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2788, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2789:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2789, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2789, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_12, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2789, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2790:                     assert block != NULL
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block != NULL) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2790, __pyx_L4_error)
            }
          }
          #endif
+2791:                     assert block.address == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2791, __pyx_L4_error)
            }
          }
          #endif
+2792:                     assert Block_Length(block) == <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2792, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2792, __pyx_L4_error)
            }
          }
          #endif
+2793:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2793, __pyx_L4_error)
            }
          }
          #endif
+2794:                     assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2794, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2794, __pyx_L4_error)
            }
          }
          #endif
+2795:                     assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_13 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_13 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2795, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2795, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2795, __pyx_L4_error)
            }
          }
          #endif
+2796:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
        }
      }
    }
  }
 2797: 
 2798:     finally:
+2799:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_22, &__pyx_t_23, &__pyx_t_24);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21) < 0)) __Pyx_ErrFetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_24);
      __pyx_t_16 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_XGIVEREF(__pyx_t_24);
        __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
      }
      __Pyx_XGIVEREF(__pyx_t_19);
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_ErrRestore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
      __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0;
      __pyx_lineno = __pyx_t_16; __pyx_clineno = __pyx_t_17; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2800: 
 2801: 
+2802: def test_Block_SetSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_141test_Block_SetSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_140test_Block_SetSlice_[] = "test_Block_SetSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_141test_Block_SetSlice_ = {"test_Block_SetSlice_", (PyCFunction)__pyx_pw_7_test_c_141test_Block_SetSlice_, METH_NOARGS, __pyx_doc_7_test_c_140test_Block_SetSlice_};
static PyObject *__pyx_pw_7_test_c_141test_Block_SetSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_SetSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_140test_Block_SetSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_140test_Block_SetSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  size_t __pyx_v_start1;
  size_t __pyx_v_endex1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  size_t __pyx_v_start2;
  size_t __pyx_v_endex2;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_SetSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_XDECREF(__pyx_t_21);
  __Pyx_AddTraceback("_test_c.test_Block_SetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__250 = PyTuple_Pack(11, __pyx_n_s_block1, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_start1, __pyx_n_s_endex1, __pyx_n_s_block2, __pyx_n_s_data2, __pyx_n_s_size2, __pyx_n_s_start2, __pyx_n_s_endex2, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__250)) __PYX_ERR(0, 2802, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__250);
  __Pyx_GIVEREF(__pyx_tuple__250);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_141test_Block_SetSlice_, 0, __pyx_n_s_test_Block_SetSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__251)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2802, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_SetSlice, __pyx_t_1) < 0) __PYX_ERR(0, 2802, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__251 = (PyObject*)__Pyx_PyCode_New(0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__250, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_SetSlice, 2802, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__251)) __PYX_ERR(0, 2802, __pyx_L1_error)
 2803:     cdef:
+2804:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2805:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2806:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
 2807:         size_t start1
 2808:         size_t endex1
 2809: 
+2810:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2811:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2812:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2813:         size_t start2
 2814:         size_t endex2
 2815: 
 2816:         bytearray buffer
 2817: 
+2818:     try:
  /*try:*/ {
+2819:         block2 = Block_Create(0, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2819, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2820: 
+2821:         for start1 in range(size1):
    __pyx_t_2 = __pyx_v_size1;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2822:             for endex1 in range(size1):
      __pyx_t_5 = __pyx_v_size1;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = 0; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2823:                 for start2 in range(size2):
        __pyx_t_8 = __pyx_v_size2;
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = 0; __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2824:                     for endex2 in range(size2):
          __pyx_t_11 = __pyx_v_size2;
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2825:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2825, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2826:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2826, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2827:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2827, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2828:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__4, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2828, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2828, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2829:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2829, __pyx_L4_error)
              }
            }
            #endif
+2830:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2830, __pyx_L4_error)
              }
            }
            #endif
+2831:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2831, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2831, __pyx_L4_error)
              }
            }
            #endif
+2832:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2832, __pyx_L4_error)
              }
            }
            #endif
+2833:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2833, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2833, __pyx_L4_error)
              }
            }
            #endif
+2834:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2834, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2834, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2834, __pyx_L4_error)
              }
            }
            #endif
+2835:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2836: 
+2837:         for start1 in range(size1):
    __pyx_t_2 = __pyx_v_size1;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2838:             for endex1 in range(size1 + size1):
      __pyx_t_5 = (__pyx_v_size1 + __pyx_v_size1);
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = 0; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2839:                 for start2 in range(size2):
        __pyx_t_8 = __pyx_v_size2;
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = 0; __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2840:                     for endex2 in range(size2 + size2):
          __pyx_t_11 = (__pyx_v_size2 + __pyx_v_size2);
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2841:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2841, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2841, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2841, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2842:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2842, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2843:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2843, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2844:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__4, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2844, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2844, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2845:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2845, __pyx_L4_error)
              }
            }
            #endif
+2846:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2846, __pyx_L4_error)
              }
            }
            #endif
+2847:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2847, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2847, __pyx_L4_error)
              }
            }
            #endif
+2848:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2848, __pyx_L4_error)
              }
            }
            #endif
+2849:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2849, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2849, __pyx_L4_error)
              }
            }
            #endif
+2850:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2850, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2850, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2850, __pyx_L4_error)
              }
            }
            #endif
+2851:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2852: 
+2853:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
+2854:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2854, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2854, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2854, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2855: 
+2856:         for start1 in range(size1):
    __pyx_t_2 = __pyx_v_size1;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2857:             for endex1 in range(size1):
      __pyx_t_5 = __pyx_v_size1;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = 0; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2858:                 for start2 in range(size2):
        __pyx_t_8 = __pyx_v_size2;
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = 0; __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2859:                     for endex2 in range(size2):
          __pyx_t_11 = __pyx_v_size2;
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2860:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2860, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2861:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2861, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2862:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2862, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2863:                         buffer[start1:endex1] = data2[start2:endex2]
            if (unlikely(__pyx_v_data2 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
              __PYX_ERR(0, 2863, __pyx_L4_error)
            }
            __pyx_t_14 = PySequence_GetSlice(__pyx_v_data2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2863, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2863, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2864:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2864, __pyx_L4_error)
              }
            }
            #endif
+2865:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2865, __pyx_L4_error)
              }
            }
            #endif
+2866:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2866, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2866, __pyx_L4_error)
              }
            }
            #endif
+2867:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2867, __pyx_L4_error)
              }
            }
            #endif
+2868:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2868, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2868, __pyx_L4_error)
              }
            }
            #endif
+2869:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2869, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2869, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2869, __pyx_L4_error)
              }
            }
            #endif
+2870:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2871: 
+2872:         for start1 in range(size1):
    __pyx_t_2 = __pyx_v_size1;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2873:             for endex1 in range(size1 + size1):
      __pyx_t_5 = (__pyx_v_size1 + __pyx_v_size1);
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = 0; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2874:                 for start2 in range(size2):
        __pyx_t_8 = __pyx_v_size2;
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = 0; __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2875:                     for endex2 in range(size2 + size2):
          __pyx_t_11 = (__pyx_v_size2 + __pyx_v_size2);
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2876:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2876, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2876, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2876, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2877:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2877, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2878:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2878, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2879:                         buffer[start1:endex1] = data2[start2:endex2]
            if (unlikely(__pyx_v_data2 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
              __PYX_ERR(0, 2879, __pyx_L4_error)
            }
            __pyx_t_14 = PySequence_GetSlice(__pyx_v_data2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2879, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2879, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2880:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2880, __pyx_L4_error)
              }
            }
            #endif
+2881:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2881, __pyx_L4_error)
              }
            }
            #endif
+2882:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2882, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2882, __pyx_L4_error)
              }
            }
            #endif
+2883:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2883, __pyx_L4_error)
              }
            }
            #endif
+2884:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2884, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2884, __pyx_L4_error)
              }
            }
            #endif
+2885:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2885, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2885, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2885, __pyx_L4_error)
              }
            }
            #endif
+2886:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2887: 
+2888:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2889:         block1 = Block_Create(0, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2889, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2889, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2889, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
+2890:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
+2891:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2891, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2891, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2891, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2892: 
+2893:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_pytest); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2893, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_raises); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2893, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2893, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2893, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple__52, __pyx_t_14); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2893, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_19);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_20 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_exit); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2893, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_20);
      __pyx_t_18 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_enter); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2893, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_21 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_18))) {
        __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_18);
        if (likely(__pyx_t_21)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_18);
          __Pyx_INCREF(__pyx_t_21);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_18, function);
        }
      }
      __pyx_t_14 = (__pyx_t_21) ? __Pyx_PyObject_CallOneArg(__pyx_t_18, __pyx_t_21) : __Pyx_PyObject_CallNoArg(__pyx_t_18);
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2893, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          __Pyx_XDECREF(__pyx_t_23); __pyx_t_23 = 0;
          __Pyx_XDECREF(__pyx_t_24); __pyx_t_24 = 0;
          goto __pyx_L47_try_end;
          __pyx_L42_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_SetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_19, &__pyx_t_14, &__pyx_t_18) < 0) __PYX_ERR(0, 2893, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_21 = PyTuple_Pack(3, __pyx_t_19, __pyx_t_14, __pyx_t_18); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2893, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_t_21, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2893, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_25);
            __pyx_t_26 = __Pyx_PyObject_IsTrue(__pyx_t_25);
            __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
            if (__pyx_t_26 < 0) __PYX_ERR(0, 2893, __pyx_L44_except_error)
            __pyx_t_27 = ((!(__pyx_t_26 != 0)) != 0);
            if (__pyx_t_27) {
              __Pyx_GIVEREF(__pyx_t_19);
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_XGIVEREF(__pyx_t_18);
              __Pyx_ErrRestoreWithState(__pyx_t_19, __pyx_t_14, __pyx_t_18);
              __pyx_t_19 = 0; __pyx_t_14 = 0; __pyx_t_18 = 0; 
              __PYX_ERR(0, 2893, __pyx_L44_except_error)
            }
            __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            goto __pyx_L43_exception_handled;
          }
          __pyx_L44_except_error:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
          goto __pyx_L4_error;
          __pyx_L43_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
          __pyx_L47_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_20) {
            __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2893, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_24);
            __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
          }
          goto __pyx_L41;
        }
        __pyx_L41:;
      }
      goto __pyx_L51;
      __pyx_L38_error:;
      __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
      goto __pyx_L4_error;
      __pyx_L51:;
    }
/* … */
  __pyx_tuple__52 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(0, 2893, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__52);
  __Pyx_GIVEREF(__pyx_tuple__52);
+2894:             Block_SetSlice_(block1, 0, 0, block2, SIZE_HMAX + 1, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, 0, 0, __pyx_v_block2, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2894, __pyx_L42_error)
 2895: 
+2896:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_n_s_pytest); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2896, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_18, __pyx_n_s_raises); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2896, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __pyx_t_18 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2896, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      if (PyDict_SetItem(__pyx_t_18, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2896, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__53, __pyx_t_18); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2896, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_19);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __pyx_t_20 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_exit); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2896, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_20);
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_enter); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2896, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_21 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
        __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_14);
        if (likely(__pyx_t_21)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
          __Pyx_INCREF(__pyx_t_21);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_14, function);
        }
      }
      __pyx_t_18 = (__pyx_t_21) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_21) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2896, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_24); __pyx_t_24 = 0;
          __Pyx_XDECREF(__pyx_t_23); __pyx_t_23 = 0;
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          goto __pyx_L61_try_end;
          __pyx_L56_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_SetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_19, &__pyx_t_18, &__pyx_t_14) < 0) __PYX_ERR(0, 2896, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_21 = PyTuple_Pack(3, __pyx_t_19, __pyx_t_18, __pyx_t_14); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2896, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_t_21, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2896, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_25);
            __pyx_t_27 = __Pyx_PyObject_IsTrue(__pyx_t_25);
            __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
            if (__pyx_t_27 < 0) __PYX_ERR(0, 2896, __pyx_L58_except_error)
            __pyx_t_26 = ((!(__pyx_t_27 != 0)) != 0);
            if (__pyx_t_26) {
              __Pyx_GIVEREF(__pyx_t_19);
              __Pyx_GIVEREF(__pyx_t_18);
              __Pyx_XGIVEREF(__pyx_t_14);
              __Pyx_ErrRestoreWithState(__pyx_t_19, __pyx_t_18, __pyx_t_14);
              __pyx_t_19 = 0; __pyx_t_18 = 0; __pyx_t_14 = 0; 
              __PYX_ERR(0, 2896, __pyx_L58_except_error)
            }
            __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            goto __pyx_L57_exception_handled;
          }
          __pyx_L58_except_error:;
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_23, __pyx_t_22);
          goto __pyx_L4_error;
          __pyx_L57_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_23, __pyx_t_22);
          __pyx_L61_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_20) {
            __pyx_t_22 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2896, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_22);
            __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0;
          }
          goto __pyx_L55;
        }
        __pyx_L55:;
      }
      goto __pyx_L65;
      __pyx_L52_error:;
      __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
      goto __pyx_L4_error;
      __pyx_L65:;
    }
/* … */
  __pyx_tuple__53 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(0, 2896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__53);
  __Pyx_GIVEREF(__pyx_tuple__53);
+2897:             Block_SetSlice_(block1, 0, 0, block2, 0, SIZE_HMAX + 1)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, 0, 0, __pyx_v_block2, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2897, __pyx_L56_error)
 2898: 
+2899:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_pytest); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2899, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_raises); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2899, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2899, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2899, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple__54, __pyx_t_14); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2899, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_19);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __pyx_t_20 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_exit); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2899, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_20);
      __pyx_t_18 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_enter); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2899, __pyx_L66_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_21 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_18))) {
        __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_18);
        if (likely(__pyx_t_21)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_18);
          __Pyx_INCREF(__pyx_t_21);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_18, function);
        }
      }
      __pyx_t_14 = (__pyx_t_21) ? __Pyx_PyObject_CallOneArg(__pyx_t_18, __pyx_t_21) : __Pyx_PyObject_CallNoArg(__pyx_t_18);
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2899, __pyx_L66_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          __Pyx_XDECREF(__pyx_t_23); __pyx_t_23 = 0;
          __Pyx_XDECREF(__pyx_t_24); __pyx_t_24 = 0;
          goto __pyx_L75_try_end;
          __pyx_L70_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_SetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_19, &__pyx_t_14, &__pyx_t_18) < 0) __PYX_ERR(0, 2899, __pyx_L72_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_21 = PyTuple_Pack(3, __pyx_t_19, __pyx_t_14, __pyx_t_18); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2899, __pyx_L72_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_t_21, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2899, __pyx_L72_except_error)
            __Pyx_GOTREF(__pyx_t_25);
            __pyx_t_26 = __Pyx_PyObject_IsTrue(__pyx_t_25);
            __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
            if (__pyx_t_26 < 0) __PYX_ERR(0, 2899, __pyx_L72_except_error)
            __pyx_t_27 = ((!(__pyx_t_26 != 0)) != 0);
            if (__pyx_t_27) {
              __Pyx_GIVEREF(__pyx_t_19);
              __Pyx_GIVEREF(__pyx_t_14);
              __Pyx_XGIVEREF(__pyx_t_18);
              __Pyx_ErrRestoreWithState(__pyx_t_19, __pyx_t_14, __pyx_t_18);
              __pyx_t_19 = 0; __pyx_t_14 = 0; __pyx_t_18 = 0; 
              __PYX_ERR(0, 2899, __pyx_L72_except_error)
            }
            __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            goto __pyx_L71_exception_handled;
          }
          __pyx_L72_except_error:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
          goto __pyx_L4_error;
          __pyx_L71_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_ExceptionReset(__pyx_t_22, __pyx_t_23, __pyx_t_24);
          __pyx_L75_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_20) {
            __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2899, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_24);
            __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
          }
          goto __pyx_L69;
        }
        __pyx_L69:;
      }
      goto __pyx_L79;
      __pyx_L66_error:;
      __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
      goto __pyx_L4_error;
      __pyx_L79:;
    }
/* … */
  __pyx_tuple__54 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 2899, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__54);
  __Pyx_GIVEREF(__pyx_tuple__54);
+2900:             Block_SetSlice_(block1, SIZE_HMAX + 1, 0, block2, 0, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, (SIZE_HMAX + 1), 0, __pyx_v_block2, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2900, __pyx_L70_error)
 2901: 
+2902:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_n_s_pytest); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_18, __pyx_n_s_raises); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __pyx_t_18 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_18);
      if (PyDict_SetItem(__pyx_t_18, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 2902, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__55, __pyx_t_18); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_19);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __pyx_t_20 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_exit); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2902, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_20);
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_19, __pyx_n_s_enter); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2902, __pyx_L80_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_21 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
        __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_14);
        if (likely(__pyx_t_21)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
          __Pyx_INCREF(__pyx_t_21);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_14, function);
        }
      }
      __pyx_t_18 = (__pyx_t_21) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_21) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2902, __pyx_L80_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_24); __pyx_t_24 = 0;
          __Pyx_XDECREF(__pyx_t_23); __pyx_t_23 = 0;
          __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0;
          goto __pyx_L89_try_end;
          __pyx_L84_error:;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
          __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_SetSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_19, &__pyx_t_18, &__pyx_t_14) < 0) __PYX_ERR(0, 2902, __pyx_L86_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_21 = PyTuple_Pack(3, __pyx_t_19, __pyx_t_18, __pyx_t_14); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2902, __pyx_L86_except_error)
            __Pyx_GOTREF(__pyx_t_21);
            __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_t_21, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0;
            if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2902, __pyx_L86_except_error)
            __Pyx_GOTREF(__pyx_t_25);
            __pyx_t_27 = __Pyx_PyObject_IsTrue(__pyx_t_25);
            __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
            if (__pyx_t_27 < 0) __PYX_ERR(0, 2902, __pyx_L86_except_error)
            __pyx_t_26 = ((!(__pyx_t_27 != 0)) != 0);
            if (__pyx_t_26) {
              __Pyx_GIVEREF(__pyx_t_19);
              __Pyx_GIVEREF(__pyx_t_18);
              __Pyx_XGIVEREF(__pyx_t_14);
              __Pyx_ErrRestoreWithState(__pyx_t_19, __pyx_t_18, __pyx_t_14);
              __pyx_t_19 = 0; __pyx_t_18 = 0; __pyx_t_14 = 0; 
              __PYX_ERR(0, 2902, __pyx_L86_except_error)
            }
            __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
            __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
            __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
            goto __pyx_L85_exception_handled;
          }
          __pyx_L86_except_error:;
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_23, __pyx_t_22);
          goto __pyx_L4_error;
          __pyx_L85_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_24);
          __Pyx_XGIVEREF(__pyx_t_23);
          __Pyx_XGIVEREF(__pyx_t_22);
          __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_23, __pyx_t_22);
          __pyx_L89_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_20) {
            __pyx_t_22 = __Pyx_PyObject_Call(__pyx_t_20, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2902, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_22);
            __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0;
          }
          goto __pyx_L83;
        }
        __pyx_L83:;
      }
      goto __pyx_L93;
      __pyx_L80_error:;
      __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
      goto __pyx_L4_error;
      __pyx_L93:;
    }
  }
/* … */
  __pyx_tuple__55 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__55)) __PYX_ERR(0, 2902, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__55);
  __Pyx_GIVEREF(__pyx_tuple__55);
+2903:             Block_SetSlice_(block1, 0, SIZE_HMAX + 1, block2, 0, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice_(__pyx_v_block1, 0, (SIZE_HMAX + 1), __pyx_v_block2, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2903, __pyx_L84_error)
 2904: 
 2905:     finally:
+2906:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2907:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_20 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_31 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_24, &__pyx_t_25, &__pyx_t_31);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_20, &__pyx_t_22, &__pyx_t_23) < 0)) __Pyx_ErrFetch(&__pyx_t_20, &__pyx_t_22, &__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_24);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_31);
      __pyx_t_28 = __pyx_lineno; __pyx_t_29 = __pyx_clineno; __pyx_t_30 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_24);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_XGIVEREF(__pyx_t_31);
        __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_25, __pyx_t_31);
      }
      __Pyx_XGIVEREF(__pyx_t_20);
      __Pyx_XGIVEREF(__pyx_t_22);
      __Pyx_XGIVEREF(__pyx_t_23);
      __Pyx_ErrRestore(__pyx_t_20, __pyx_t_22, __pyx_t_23);
      __pyx_t_20 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_31 = 0;
      __pyx_lineno = __pyx_t_28; __pyx_clineno = __pyx_t_29; __pyx_filename = __pyx_t_30;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2908: 
 2909: 
+2910: def test_Block_SetSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_143test_Block_SetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_142test_Block_SetSlice[] = "test_Block_SetSlice()";
static PyMethodDef __pyx_mdef_7_test_c_143test_Block_SetSlice = {"test_Block_SetSlice", (PyCFunction)__pyx_pw_7_test_c_143test_Block_SetSlice, METH_NOARGS, __pyx_doc_7_test_c_142test_Block_SetSlice};
static PyObject *__pyx_pw_7_test_c_143test_Block_SetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_SetSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_142test_Block_SetSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_142test_Block_SetSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block1;
  PyObject *__pyx_v_data1 = 0;
  size_t __pyx_v_size1;
  Py_ssize_t __pyx_v_start1;
  Py_ssize_t __pyx_v_endex1;
  Block_ *__pyx_v_block2;
  PyObject *__pyx_v_data2 = 0;
  size_t __pyx_v_size2;
  Py_ssize_t __pyx_v_start2;
  Py_ssize_t __pyx_v_endex2;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_SetSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_AddTraceback("_test_c.test_Block_SetSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data1);
  __Pyx_XDECREF(__pyx_v_data2);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__252 = PyTuple_Pack(11, __pyx_n_s_block1, __pyx_n_s_data1, __pyx_n_s_size1, __pyx_n_s_start1, __pyx_n_s_endex1, __pyx_n_s_block2, __pyx_n_s_data2, __pyx_n_s_size2, __pyx_n_s_start2, __pyx_n_s_endex2, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__252)) __PYX_ERR(0, 2910, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__252);
  __Pyx_GIVEREF(__pyx_tuple__252);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_143test_Block_SetSlice, 0, __pyx_n_s_test_Block_SetSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__253)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2910, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_SetSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 2910, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__253 = (PyObject*)__Pyx_PyCode_New(0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__252, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_SetSlice_2, 2910, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__253)) __PYX_ERR(0, 2910, __pyx_L1_error)
 2911:     cdef:
+2912:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2913:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2914:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
 2915:         ssize_t start1
 2916:         ssize_t endex1
 2917: 
+2918:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2919:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2920:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2921:         ssize_t start2
 2922:         ssize_t endex2
 2923: 
 2924:         bytearray buffer
 2925: 
+2926:     try:
  /*try:*/ {
+2927:         block2 = Block_Create(0, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2927, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2928: 
+2929:         for start1 in range(-<ssize_t>size1, <ssize_t>size1):
    __pyx_t_2 = ((Py_ssize_t)__pyx_v_size1);
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2930:             for endex1 in range(-<ssize_t>size1, <ssize_t>size1):
      __pyx_t_5 = ((Py_ssize_t)__pyx_v_size1);
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2931:                 for start2 in range(-<ssize_t>size2, <ssize_t>size2):
        __pyx_t_8 = ((Py_ssize_t)__pyx_v_size2);
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2932:                     for endex2 in range(-<ssize_t>size2, <ssize_t>size2):
          __pyx_t_11 = ((Py_ssize_t)__pyx_v_size2);
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2933:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2933, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2934:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2934, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2935:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2935, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2936:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__4, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2936, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2936, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2937:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2937, __pyx_L4_error)
              }
            }
            #endif
+2938:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2938, __pyx_L4_error)
              }
            }
            #endif
+2939:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2939, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2939, __pyx_L4_error)
              }
            }
            #endif
+2940:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2940, __pyx_L4_error)
              }
            }
            #endif
+2941:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2941, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2941, __pyx_L4_error)
              }
            }
            #endif
+2942:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2942, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2942, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2942, __pyx_L4_error)
              }
            }
            #endif
+2943:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2944: 
+2945:         for start1 in range(-<ssize_t>size1, <ssize_t>size1):
    __pyx_t_2 = ((Py_ssize_t)__pyx_v_size1);
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2946:             for endex1 in range(-<ssize_t>size1, <ssize_t>(size1 + size1)):
      __pyx_t_5 = ((Py_ssize_t)(__pyx_v_size1 + __pyx_v_size1));
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2947:                 for start2 in range(-<ssize_t>size2, <ssize_t>size2):
        __pyx_t_8 = ((Py_ssize_t)__pyx_v_size2);
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2948:                     for endex2 in range(-<ssize_t>size2, <ssize_t>(size2 + size2)):
          __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size2 + __pyx_v_size2));
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2949:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2949, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2949, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2949, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2950:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2950, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2951:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2951, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2952:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__4, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2952, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2952, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2953:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2953, __pyx_L4_error)
              }
            }
            #endif
+2954:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2954, __pyx_L4_error)
              }
            }
            #endif
+2955:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2955, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2955, __pyx_L4_error)
              }
            }
            #endif
+2956:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2956, __pyx_L4_error)
              }
            }
            #endif
+2957:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2957, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2957, __pyx_L4_error)
              }
            }
            #endif
+2958:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2958, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2958, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2958, __pyx_L4_error)
              }
            }
            #endif
+2959:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2960: 
+2961:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
+2962:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2962, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2962, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2962, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2963: 
+2964:         for start1 in range(-<ssize_t>size1, <ssize_t>size1):
    __pyx_t_2 = ((Py_ssize_t)__pyx_v_size1);
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2965:             for endex1 in range(-<ssize_t>size1, <ssize_t>size1):
      __pyx_t_5 = ((Py_ssize_t)__pyx_v_size1);
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2966:                 for start2 in range(-<ssize_t>size2, <ssize_t>size2):
        __pyx_t_8 = ((Py_ssize_t)__pyx_v_size2);
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2967:                     for endex2 in range(-<ssize_t>size2, <ssize_t>size2):
          __pyx_t_11 = ((Py_ssize_t)__pyx_v_size2);
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2968:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2968, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2969:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2969, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2970:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2970, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2971:                         buffer[start1:endex1] = data2[start2:endex2]
            if (unlikely(__pyx_v_data2 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
              __PYX_ERR(0, 2971, __pyx_L4_error)
            }
            __pyx_t_14 = PySequence_GetSlice(__pyx_v_data2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2971, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2971, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2972:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2972, __pyx_L4_error)
              }
            }
            #endif
+2973:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2973, __pyx_L4_error)
              }
            }
            #endif
+2974:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2974, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2974, __pyx_L4_error)
              }
            }
            #endif
+2975:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2975, __pyx_L4_error)
              }
            }
            #endif
+2976:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2976, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2976, __pyx_L4_error)
              }
            }
            #endif
+2977:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2977, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2977, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2977, __pyx_L4_error)
              }
            }
            #endif
+2978:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2979: 
+2980:         for start1 in range(-<ssize_t>size1, <ssize_t>size1):
    __pyx_t_2 = ((Py_ssize_t)__pyx_v_size1);
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start1 = __pyx_t_4;
+2981:             for endex1 in range(-<ssize_t>size1, <ssize_t>(size1 + size1)):
      __pyx_t_5 = ((Py_ssize_t)(__pyx_v_size1 + __pyx_v_size1));
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = (-((Py_ssize_t)__pyx_v_size1)); __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex1 = __pyx_t_7;
+2982:                 for start2 in range(-<ssize_t>size2, <ssize_t>size2):
        __pyx_t_8 = ((Py_ssize_t)__pyx_v_size2);
        __pyx_t_9 = __pyx_t_8;
        for (__pyx_t_10 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_10 < __pyx_t_9; __pyx_t_10+=1) {
          __pyx_v_start2 = __pyx_t_10;
+2983:                     for endex2 in range(-<ssize_t>size2, <ssize_t>(size2 + size2)):
          __pyx_t_11 = ((Py_ssize_t)(__pyx_v_size2 + __pyx_v_size2));
          __pyx_t_12 = __pyx_t_11;
          for (__pyx_t_13 = (-((Py_ssize_t)__pyx_v_size2)); __pyx_t_13 < __pyx_t_12; __pyx_t_13+=1) {
            __pyx_v_endex2 = __pyx_t_13;
+2984:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2984, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2984, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2984, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2985:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_SetSlice(__pyx_v_block1, __pyx_v_start1, __pyx_v_endex1, __pyx_v_block2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2985, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2986:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2986, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2987:                         buffer[start1:endex1] = data2[start2:endex2]
            if (unlikely(__pyx_v_data2 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
              __PYX_ERR(0, 2987, __pyx_L4_error)
            }
            __pyx_t_14 = PySequence_GetSlice(__pyx_v_data2, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2987, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            if (__Pyx_PyObject_SetSlice(__pyx_v_buffer, __pyx_t_14, __pyx_v_start1, __pyx_v_endex1, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 2987, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2988:                         assert block1 != NULL
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1 != NULL) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2988, __pyx_L4_error)
              }
            }
            #endif
+2989:                         assert block1.address == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_v_block1->address == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2989, __pyx_L4_error)
              }
            }
            #endif
+2990:                         assert Block_Length(block1) == <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2990, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2990, __pyx_L4_error)
              }
            }
            #endif
+2991:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2991, __pyx_L4_error)
              }
            }
            #endif
+2992:                         assert Block_Endex(block1) == 0x1234 + <size_t>len(buffer)
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2992, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2992, __pyx_L4_error)
              }
            }
            #endif
+2993:                         assert Block_Eq_(block1, <size_t>len(buffer), buffer) is True
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              __pyx_t_15 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 2993, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2993, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2993, __pyx_L4_error)
              }
            }
            #endif
+2994:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
  }
 2995: 
 2996:     finally:
+2997:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block1);
+2998:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23) < 0)) __Pyx_ErrFetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_21);
      __Pyx_XGOTREF(__pyx_t_22);
      __Pyx_XGOTREF(__pyx_t_23);
      __Pyx_XGOTREF(__pyx_t_24);
      __Pyx_XGOTREF(__pyx_t_25);
      __Pyx_XGOTREF(__pyx_t_26);
      __pyx_t_18 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename;
      {
/* … */
        __pyx_v_block2 = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_24);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_XGIVEREF(__pyx_t_26);
        __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_25, __pyx_t_26);
      }
      __Pyx_XGIVEREF(__pyx_t_21);
      __Pyx_XGIVEREF(__pyx_t_22);
      __Pyx_XGIVEREF(__pyx_t_23);
      __Pyx_ErrRestore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
      __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0;
      __pyx_lineno = __pyx_t_18; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 2999: 
 3000: 
+3001: def test_Block_DelSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_145test_Block_DelSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_144test_Block_DelSlice_[] = "test_Block_DelSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_145test_Block_DelSlice_ = {"test_Block_DelSlice_", (PyCFunction)__pyx_pw_7_test_c_145test_Block_DelSlice_, METH_NOARGS, __pyx_doc_7_test_c_144test_Block_DelSlice_};
static PyObject *__pyx_pw_7_test_c_145test_Block_DelSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_DelSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_144test_Block_DelSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_144test_Block_DelSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_DelSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Block_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__254 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__254)) __PYX_ERR(0, 3001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__254);
  __Pyx_GIVEREF(__pyx_tuple__254);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_145test_Block_DelSlice_, 0, __pyx_n_s_test_Block_DelSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__255)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_DelSlice, __pyx_t_1) < 0) __PYX_ERR(0, 3001, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__255 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__254, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_DelSlice, 3001, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__255)) __PYX_ERR(0, 3001, __pyx_L1_error)
 3002:     cdef:
+3003:         Block_* block = NULL
  __pyx_v_block = NULL;
+3004:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3005:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3006:         size_t start
 3007:         size_t endex
 3008:         bytearray buffer
 3009: 
+3010:     try:
  /*try:*/ {
+3011:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3012:             for endex in range(size):
      __pyx_t_4 = __pyx_v_size;
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3013:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3013, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3014:                 block = Block_DelSlice_(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3014, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3015:                 buffer = bytearray()
        __pyx_t_8 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3015, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3016:                 del buffer[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_buffer, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 3016, __pyx_L4_error)
+3017:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3017, __pyx_L4_error)
          }
        }
        #endif
+3018:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3018, __pyx_L4_error)
          }
        }
        #endif
+3019:                 assert Block_Length(block) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3019, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3019, __pyx_L4_error)
          }
        }
        #endif
+3020:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3020, __pyx_L4_error)
          }
        }
        #endif
+3021:                 assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3021, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3021, __pyx_L4_error)
          }
        }
        #endif
+3022:                 assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3022, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3022, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3022, __pyx_L4_error)
          }
        }
        #endif
+3023:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 3024: 
+3025:         for start in range(size + size):
    __pyx_t_1 = (__pyx_v_size + __pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3026:             for endex in range(size + size):
      __pyx_t_4 = (__pyx_v_size + __pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3027:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3027, __pyx_L4_error)
        }
        __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3027, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3027, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3028:                 block = Block_DelSlice_(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3028, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3029:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3029, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3030:                 del buffer[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_buffer, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 3030, __pyx_L4_error)
+3031:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3031, __pyx_L4_error)
          }
        }
        #endif
+3032:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3032, __pyx_L4_error)
          }
        }
        #endif
+3033:                 assert Block_Length(block) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3033, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3033, __pyx_L4_error)
          }
        }
        #endif
+3034:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3034, __pyx_L4_error)
          }
        }
        #endif
+3035:                 assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3035, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3035, __pyx_L4_error)
          }
        }
        #endif
+3036:                 assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3036, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3036, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3036, __pyx_L4_error)
          }
        }
        #endif
+3037:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 3038: 
+3039:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3039, __pyx_L4_error)
    }
    __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3039, __pyx_L4_error)
    __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3039, __pyx_L4_error)
    __pyx_v_block = __pyx_t_7;
 3040: 
+3041:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3041, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3041, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3041, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 3041, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__56, __pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3041, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3041, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3041, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_8 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3041, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L23_try_end;
          __pyx_L18_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_8, &__pyx_t_12) < 0) __PYX_ERR(0, 3041, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_8, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 3041, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 3041, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 3041, __pyx_L20_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_8, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_8 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 3041, __pyx_L20_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L19_exception_handled;
          }
          __pyx_L20_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L19_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L23_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 3041, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L17;
        }
        __pyx_L17:;
      }
      goto __pyx_L27;
      __pyx_L14_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L27:;
    }
/* … */
  __pyx_tuple__56 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 3041, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__56);
  __Pyx_GIVEREF(__pyx_tuple__56);
+3042:             Block_DelSlice_(block, SIZE_HMAX + 1, 0)
            __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice_(__pyx_v_block, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3042, __pyx_L18_error)
 3043: 
+3044:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3044, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3044, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3044, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 3044, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__57, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3044, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3044, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3044, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3044, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L37_try_end;
          __pyx_L32_error:;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Block_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_8) < 0) __PYX_ERR(0, 3044, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_8); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 3044, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 3044, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 3044, __pyx_L34_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_8);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 3044, __pyx_L34_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L33_exception_handled;
          }
          __pyx_L34_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L33_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L37_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 3044, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L31;
        }
        __pyx_L31:;
      }
      goto __pyx_L41;
      __pyx_L28_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L41:;
    }
/* … */
  __pyx_tuple__57 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 3044, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__57);
  __Pyx_GIVEREF(__pyx_tuple__57);
+3045:             Block_DelSlice_(block, 0, SIZE_HMAX + 1)
            __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice_(__pyx_v_block, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3045, __pyx_L32_error)
 3046: 
+3047:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3048: 
 3049:     finally:
+3050:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_16, __pyx_t_17);
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3051: 
 3052: 
+3053: def test_Block_DelSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_147test_Block_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_146test_Block_DelSlice[] = "test_Block_DelSlice()";
static PyMethodDef __pyx_mdef_7_test_c_147test_Block_DelSlice = {"test_Block_DelSlice", (PyCFunction)__pyx_pw_7_test_c_147test_Block_DelSlice, METH_NOARGS, __pyx_doc_7_test_c_146test_Block_DelSlice};
static PyObject *__pyx_pw_7_test_c_147test_Block_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_DelSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_146test_Block_DelSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_146test_Block_DelSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_DelSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_Block_DelSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__256 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__256)) __PYX_ERR(0, 3053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__256);
  __Pyx_GIVEREF(__pyx_tuple__256);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_147test_Block_DelSlice, 0, __pyx_n_s_test_Block_DelSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__257)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_DelSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 3053, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__257 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__256, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_DelSlice_2, 3053, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__257)) __PYX_ERR(0, 3053, __pyx_L1_error)
 3054:     cdef:
+3055:         Block_* block = NULL
  __pyx_v_block = NULL;
+3056:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3057:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3058:         ssize_t start
 3059:         ssize_t endex
 3060:         bytearray buffer
 3061: 
+3062:     try:
  /*try:*/ {
+3063:         for start in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_1 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3064:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3065:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3065, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3066:                 block = Block_DelSlice(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3066, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3067:                 buffer = bytearray()
        __pyx_t_8 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3067, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3068:                 del buffer[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_buffer, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 3068, __pyx_L4_error)
+3069:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3069, __pyx_L4_error)
          }
        }
        #endif
+3070:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3070, __pyx_L4_error)
          }
        }
        #endif
+3071:                 assert Block_Length(block) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3071, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3071, __pyx_L4_error)
          }
        }
        #endif
+3072:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3072, __pyx_L4_error)
          }
        }
        #endif
+3073:                 assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3073, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3073, __pyx_L4_error)
          }
        }
        #endif
+3074:                 assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3074, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3074, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3074, __pyx_L4_error)
          }
        }
        #endif
+3075:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 3076: 
+3077:         for start in range(-<ssize_t>(size + size), <ssize_t>(size + size)):
    __pyx_t_1 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)(__pyx_v_size + __pyx_v_size))); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3078:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3079:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3079, __pyx_L4_error)
        }
        __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3079, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3079, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3080:                 block = Block_DelSlice(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_DelSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3080, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3081:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3081, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3082:                 del buffer[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_buffer, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 3082, __pyx_L4_error)
+3083:                 assert block != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3083, __pyx_L4_error)
          }
        }
        #endif
+3084:                 assert block.address == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_block->address == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3084, __pyx_L4_error)
          }
        }
        #endif
+3085:                 assert Block_Length(block) == <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3085, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3085, __pyx_L4_error)
          }
        }
        #endif
+3086:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3086, __pyx_L4_error)
          }
        }
        #endif
+3087:                 assert Block_Endex(block) == 0x1234 + <size_t>len(buffer)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3087, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3087, __pyx_L4_error)
          }
        }
        #endif
+3088:                 assert Block_Eq_(block, <size_t>len(buffer), buffer) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_9 = PyByteArray_GET_SIZE(__pyx_v_buffer); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3088, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3088, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3088, __pyx_L4_error)
          }
        }
        #endif
+3089:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
  }
 3090: 
 3091:     finally:
+3092:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_12 = __pyx_lineno; __pyx_t_13 = __pyx_clineno; __pyx_t_14 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
      __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_12; __pyx_clineno = __pyx_t_13; __pyx_filename = __pyx_t_14;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3093: 
 3094: 
+3095: def test_Block_Bytes():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_149test_Block_Bytes(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_148test_Block_Bytes[] = "test_Block_Bytes()";
static PyMethodDef __pyx_mdef_7_test_c_149test_Block_Bytes = {"test_Block_Bytes", (PyCFunction)__pyx_pw_7_test_c_149test_Block_Bytes, METH_NOARGS, __pyx_doc_7_test_c_148test_Block_Bytes};
static PyObject *__pyx_pw_7_test_c_149test_Block_Bytes(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Bytes (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_148test_Block_Bytes(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_148test_Block_Bytes(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Bytes", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_Block_Bytes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__258 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__258)) __PYX_ERR(0, 3095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__258);
  __Pyx_GIVEREF(__pyx_tuple__258);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_149test_Block_Bytes, 0, __pyx_n_s_test_Block_Bytes, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__259)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Bytes, __pyx_t_1) < 0) __PYX_ERR(0, 3095, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__259 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__258, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Bytes, 3095, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__259)) __PYX_ERR(0, 3095, __pyx_L1_error)
 3096:     cdef:
+3097:         Block_* block = NULL
  __pyx_v_block = NULL;
+3098:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3099:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3100:         bytes buffer
 3101: 
+3102:     try:
  /*try:*/ {
+3103:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3103, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3104:         buffer = Block_Bytes(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Bytes(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3104, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_buffer = ((PyObject*)__pyx_t_2);
    __pyx_t_2 = 0;
+3105:         assert buffer == b''
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_kp_b__4, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3105, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3105, __pyx_L4_error)
      }
    }
    #endif
+3106:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 3107: 
+3108:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3108, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 3108, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3108, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3109:         buffer = Block_Bytes(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Bytes(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3109, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_2));
    __pyx_t_2 = 0;
+3110:         assert buffer == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3110, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3110, __pyx_L4_error)
      }
    }
    #endif
+3111:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3112: 
 3113:     finally:
+3114:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3115: 
 3116: 
+3117: def test_Block_Bytearray():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_151test_Block_Bytearray(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_150test_Block_Bytearray[] = "test_Block_Bytearray()";
static PyMethodDef __pyx_mdef_7_test_c_151test_Block_Bytearray = {"test_Block_Bytearray", (PyCFunction)__pyx_pw_7_test_c_151test_Block_Bytearray, METH_NOARGS, __pyx_doc_7_test_c_150test_Block_Bytearray};
static PyObject *__pyx_pw_7_test_c_151test_Block_Bytearray(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Bytearray (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_150test_Block_Bytearray(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_150test_Block_Bytearray(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  PyObject *__pyx_v_buffer = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_Bytearray", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("_test_c.test_Block_Bytearray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF(__pyx_v_buffer);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__260 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__260)) __PYX_ERR(0, 3117, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__260);
  __Pyx_GIVEREF(__pyx_tuple__260);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_151test_Block_Bytearray, 0, __pyx_n_s_test_Block_Bytearray, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__261)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3117, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Bytearray, __pyx_t_1) < 0) __PYX_ERR(0, 3117, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__261 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__260, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Bytearray, 3117, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__261)) __PYX_ERR(0, 3117, __pyx_L1_error)
 3118:     cdef:
+3119:         Block_* block = NULL
  __pyx_v_block = NULL;
+3120:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3121:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3122:         bytearray buffer
 3123: 
+3124:     try:
  /*try:*/ {
+3125:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3125, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3126:         buffer = Block_Bytearray(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Bytearray(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3126, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_buffer = ((PyObject*)__pyx_t_2);
    __pyx_t_2 = 0;
+3127:         assert buffer == b''
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_kp_b__4, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3127, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3127, __pyx_L4_error)
      }
    }
    #endif
+3128:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 3129: 
+3130:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3130, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 3130, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3130, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3131:         buffer = Block_Bytearray(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Bytearray(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3131, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_2));
    __pyx_t_2 = 0;
+3132:         assert buffer == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3132, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3132, __pyx_L4_error)
      }
    }
    #endif
+3133:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3134: 
 3135:     finally:
+3136:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3137: 
 3138: 
+3139: def test_Block_View():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_153test_Block_View(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_152test_Block_View[] = "test_Block_View()";
static PyMethodDef __pyx_mdef_7_test_c_153test_Block_View = {"test_Block_View", (PyCFunction)__pyx_pw_7_test_c_153test_Block_View, METH_NOARGS, __pyx_doc_7_test_c_152test_Block_View};
static PyObject *__pyx_pw_7_test_c_153test_Block_View(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_View (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_152test_Block_View(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_152test_Block_View(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_View", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_Block_View", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__262 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_buffer, __pyx_n_s_view); if (unlikely(!__pyx_tuple__262)) __PYX_ERR(0, 3139, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__262);
  __Pyx_GIVEREF(__pyx_tuple__262);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_153test_Block_View, 0, __pyx_n_s_test_Block_View, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__263)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3139, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_View, __pyx_t_1) < 0) __PYX_ERR(0, 3139, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__263 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__262, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_View, 3139, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__263)) __PYX_ERR(0, 3139, __pyx_L1_error)
 3140:     cdef:
+3141:         Block_* block = NULL
  __pyx_v_block = NULL;
+3142:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3143:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3144:         bytearray buffer
 3145:         BlockView view
 3146: 
+3147:     try:
  /*try:*/ {
+3148:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3148, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3149:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3149, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3150:         assert bytes(view) == b''
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3150, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_t_2, __pyx_kp_b__4, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3150, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3150, __pyx_L4_error)
      }
    }
    #endif
+3151:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3151, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3151, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3152:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 3153: 
+3154:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3154, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3154, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3154, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3155:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3155, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3156:         assert bytes(view) == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3156, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_t_2, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3156, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3156, __pyx_L4_error)
      }
    }
    #endif
+3157:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3157, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3157, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3158:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3159: 
 3160:     finally:
+3161:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3162: 
 3163: 
+3164: def test_Block_ViewSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_155test_Block_ViewSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_154test_Block_ViewSlice_[] = "test_Block_ViewSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_155test_Block_ViewSlice_ = {"test_Block_ViewSlice_", (PyCFunction)__pyx_pw_7_test_c_155test_Block_ViewSlice_, METH_NOARGS, __pyx_doc_7_test_c_154test_Block_ViewSlice_};
static PyObject *__pyx_pw_7_test_c_155test_Block_ViewSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ViewSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_154test_Block_ViewSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_154test_Block_ViewSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ViewSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c.test_Block_ViewSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__264 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__264)) __PYX_ERR(0, 3164, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__264);
  __Pyx_GIVEREF(__pyx_tuple__264);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_155test_Block_ViewSlice_, 0, __pyx_n_s_test_Block_ViewSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__265)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3164, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ViewSlice, __pyx_t_1) < 0) __PYX_ERR(0, 3164, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__265 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__264, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ViewSlice, 3164, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__265)) __PYX_ERR(0, 3164, __pyx_L1_error)
 3165:     cdef:
+3166:         Block_* block = NULL
  __pyx_v_block = NULL;
+3167:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3168:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3169:         BlockView view
 3170:         size_t start
 3171:         size_t endex
 3172: 
+3173:     try:
  /*try:*/ {
+3174:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3175:             for endex in range(size + size):
      __pyx_t_4 = (__pyx_v_size + __pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3176:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3176, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3177:                 view = Block_ViewSlice_(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_ViewSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3177, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3178:                 assert bytes(view) == b''
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3178, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_kp_b__4, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3178, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (unlikely(!(__pyx_t_9 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3178, __pyx_L4_error)
          }
        }
        #endif
+3179:                 view.dispose()
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3179, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_11 = NULL;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
          __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_10);
          if (likely(__pyx_t_11)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
            __Pyx_INCREF(__pyx_t_11);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_10, function);
          }
        }
        __pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3179, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+3180:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 3181: 
+3182:         for start in range(size):
    __pyx_t_1 = __pyx_v_size;
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3183:             for endex in range(size + size):
      __pyx_t_4 = (__pyx_v_size + __pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3184:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3184, __pyx_L4_error)
        }
        __pyx_t_12 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_12) && PyErr_Occurred())) __PYX_ERR(0, 3184, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_12); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3184, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3185:                 view = Block_ViewSlice_(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_ViewSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3185, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3186:                 assert bytes(view) == data[start:endex]
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3186, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 3186, __pyx_L4_error)
          }
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3186, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_t_10, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3186, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!(__pyx_t_9 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3186, __pyx_L4_error)
          }
        }
        #endif
+3187:                 view.dispose()
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3187, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_11 = NULL;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
          __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
          if (likely(__pyx_t_11)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
            __Pyx_INCREF(__pyx_t_11);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_8, function);
          }
        }
        __pyx_t_10 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3187, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+3188:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
  }
 3189: 
 3190:     finally:
+3191:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __pyx_t_13 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21);
      }
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_ErrRestore(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
      __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3192: 
 3193: 
+3194: def test_Block_ViewSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_157test_Block_ViewSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_156test_Block_ViewSlice[] = "test_Block_ViewSlice()";
static PyMethodDef __pyx_mdef_7_test_c_157test_Block_ViewSlice = {"test_Block_ViewSlice", (PyCFunction)__pyx_pw_7_test_c_157test_Block_ViewSlice, METH_NOARGS, __pyx_doc_7_test_c_156test_Block_ViewSlice};
static PyObject *__pyx_pw_7_test_c_157test_Block_ViewSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ViewSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_156test_Block_ViewSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_156test_Block_ViewSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Block_ViewSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c.test_Block_ViewSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__266 = PyTuple_Pack(6, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__266)) __PYX_ERR(0, 3194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__266);
  __Pyx_GIVEREF(__pyx_tuple__266);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_157test_Block_ViewSlice, 0, __pyx_n_s_test_Block_ViewSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__267)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ViewSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 3194, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__267 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__266, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ViewSlice_2, 3194, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__267)) __PYX_ERR(0, 3194, __pyx_L1_error)
 3195:     cdef:
+3196:         Block_* block = NULL
  __pyx_v_block = NULL;
+3197:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3198:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3199:         BlockView view
 3200:         ssize_t start
 3201:         ssize_t endex
 3202: 
+3203:     try:
  /*try:*/ {
+3204:         for start in range(-<ssize_t>size, <ssize_t>(size + size)):
    __pyx_t_1 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3205:             for endex in range(-<ssize_t>size, <ssize_t>(size + size)):
      __pyx_t_4 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3206:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3206, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3207:                 view = Block_ViewSlice(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_ViewSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3207, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3208:                 assert bytes(view) == b''
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3208, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_kp_b__4, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3208, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (unlikely(!(__pyx_t_9 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3208, __pyx_L4_error)
          }
        }
        #endif
+3209:                 view.dispose()
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3209, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_11 = NULL;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
          __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_10);
          if (likely(__pyx_t_11)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
            __Pyx_INCREF(__pyx_t_11);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_10, function);
          }
        }
        __pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3209, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+3210:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
 3211: 
+3212:         for start in range(-<ssize_t>size, <ssize_t>(size + size)):
    __pyx_t_1 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+3213:             for endex in range(-<ssize_t>size, <ssize_t>(size + size)):
      __pyx_t_4 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+3214:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3214, __pyx_L4_error)
        }
        __pyx_t_12 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_12) && PyErr_Occurred())) __PYX_ERR(0, 3214, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_12); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3214, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3215:                 view = Block_ViewSlice(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_ViewSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3215, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3216:                 assert bytes(view) == data[start:endex]
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3216, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 3216, __pyx_L4_error)
          }
          __pyx_t_10 = PySequence_GetSlice(__pyx_v_data, __pyx_v_start, __pyx_v_endex); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3216, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_t_10, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3216, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (unlikely(!(__pyx_t_9 != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3216, __pyx_L4_error)
          }
        }
        #endif
+3217:                 view.dispose()
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3217, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_11 = NULL;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
          __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
          if (likely(__pyx_t_11)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
            __Pyx_INCREF(__pyx_t_11);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_8, function);
          }
        }
        __pyx_t_10 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3217, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+3218:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
    }
  }
 3219: 
 3220:     finally:
+3221:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_20);
      __Pyx_XGOTREF(__pyx_t_21);
      __pyx_t_13 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_XGIVEREF(__pyx_t_21);
        __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21);
      }
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_XGIVEREF(__pyx_t_18);
      __Pyx_ErrRestore(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
      __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3222: 
 3223: 
 3224: # =====================================================================================================================
 3225: 
+3226: def test_BlockView_basics():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_159test_BlockView_basics(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_158test_BlockView_basics[] = "test_BlockView_basics()";
static PyMethodDef __pyx_mdef_7_test_c_159test_BlockView_basics = {"test_BlockView_basics", (PyCFunction)__pyx_pw_7_test_c_159test_BlockView_basics, METH_NOARGS, __pyx_doc_7_test_c_158test_BlockView_basics};
static PyObject *__pyx_pw_7_test_c_159test_BlockView_basics(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_basics (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_158test_BlockView_basics(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_158test_BlockView_basics(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_basics", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_BlockView_basics", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__268 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__268)) __PYX_ERR(0, 3226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__268);
  __Pyx_GIVEREF(__pyx_tuple__268);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_159test_BlockView_basics, 0, __pyx_n_s_test_BlockView_basics, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__269)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_basics, __pyx_t_1) < 0) __PYX_ERR(0, 3226, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__269 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__268, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_basics, 3226, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__269)) __PYX_ERR(0, 3226, __pyx_L1_error)
 3227:     cdef:
+3228:         Block_* block = NULL
  __pyx_v_block = NULL;
+3229:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3230:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3231:         BlockView view
 3232: 
+3233:     try:
  /*try:*/ {
+3234:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3234, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3234, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3234, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3235:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3235, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3236:         assert view is not None
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = (((PyObject *)__pyx_v_view) != Py_None);
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3236, __pyx_L4_error)
      }
    }
    #endif
+3237:         assert view._block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3237, __pyx_L4_error)
      }
    }
    #endif
+3238:         assert view._start == block.start
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_start == __pyx_v_block->start) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3238, __pyx_L4_error)
      }
    }
    #endif
+3239:         assert view._endex == block.endex
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_endex == __pyx_v_block->endex) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3239, __pyx_L4_error)
      }
    }
    #endif
+3240:         assert view._memview is None
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = (__pyx_v_view->_memview == Py_None);
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3240, __pyx_L4_error)
      }
    }
    #endif
+3241:         assert bytes(view) == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3241, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = (__Pyx_PyBytes_Equals(__pyx_t_3, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3241, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3241, __pyx_L4_error)
      }
    }
    #endif
+3242:         assert view._memview is not None
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = (__pyx_v_view->_memview != Py_None);
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3242, __pyx_L4_error)
      }
    }
    #endif
+3243:         assert bytes(memoryview(view)) == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_3, ((PyObject *)__pyx_v_view)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = (__Pyx_PyBytes_Equals(__pyx_t_3, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3243, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3243, __pyx_L4_error)
      }
    }
    #endif
+3244:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3244, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3244, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3245:         assert view._block == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_block == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3245, __pyx_L4_error)
      }
    }
    #endif
+3246:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3247: 
 3248:     finally:
+3249:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3250: 
 3251: 
+3252: def test_BlockView___bool__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_161test_BlockView___bool__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_160test_BlockView___bool__[] = "test_BlockView___bool__()";
static PyMethodDef __pyx_mdef_7_test_c_161test_BlockView___bool__ = {"test_BlockView___bool__", (PyCFunction)__pyx_pw_7_test_c_161test_BlockView___bool__, METH_NOARGS, __pyx_doc_7_test_c_160test_BlockView___bool__};
static PyObject *__pyx_pw_7_test_c_161test_BlockView___bool__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___bool__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_160test_BlockView___bool__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_160test_BlockView___bool__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___bool__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_BlockView___bool__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__270 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__270)) __PYX_ERR(0, 3252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__270);
  __Pyx_GIVEREF(__pyx_tuple__270);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_161test_BlockView___bool__, 0, __pyx_n_s_test_BlockView___bool, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__271)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___bool, __pyx_t_1) < 0) __PYX_ERR(0, 3252, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__271 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__270, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___bool, 3252, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__271)) __PYX_ERR(0, 3252, __pyx_L1_error)
 3253:     cdef:
+3254:         Block_* block = NULL
  __pyx_v_block = NULL;
+3255:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3256:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3257:         BlockView view
 3258: 
+3259:     try:
  /*try:*/ {
+3260:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3260, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3261:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3261, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3262:         assert not bool(view)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3262, __pyx_L4_error)
      if (unlikely(!((!((!(!__pyx_t_3)) != 0)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3262, __pyx_L4_error)
      }
    }
    #endif
+3263:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3263, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3263, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3264:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 3265: 
+3266:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3266, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3266, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3266, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3267:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3267, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3268:         assert bool(view)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3268, __pyx_L4_error)
      if (unlikely(!((!(!__pyx_t_3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3268, __pyx_L4_error)
      }
    }
    #endif
+3269:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3269, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3269, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3270:         with pytest.raises(RuntimeError, match='null internal data pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3270, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3270, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3270, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_kp_u_null_internal_data_pointer) < 0) __PYX_ERR(0, 3270, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__58, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3270, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3270, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3270, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_2 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3270, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_BlockView___bool__", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 3270, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3270, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3270, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_3 < 0) __PYX_ERR(0, 3270, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_3 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 3270, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3270, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
  }
/* … */
  __pyx_tuple__58 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__58)) __PYX_ERR(0, 3270, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__58);
  __Pyx_GIVEREF(__pyx_tuple__58);
+3271:             bool(view)
            __pyx_t_3 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3271, __pyx_L10_error)
            (void)((!(!__pyx_t_3)));
 3272: 
 3273:     finally:
+3274:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3275: 
 3276: 
+3277: def test_BlockView___bytes__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_163test_BlockView___bytes__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_162test_BlockView___bytes__[] = "test_BlockView___bytes__()";
static PyMethodDef __pyx_mdef_7_test_c_163test_BlockView___bytes__ = {"test_BlockView___bytes__", (PyCFunction)__pyx_pw_7_test_c_163test_BlockView___bytes__, METH_NOARGS, __pyx_doc_7_test_c_162test_BlockView___bytes__};
static PyObject *__pyx_pw_7_test_c_163test_BlockView___bytes__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___bytes__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_162test_BlockView___bytes__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_162test_BlockView___bytes__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_v_memview = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___bytes__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_BlockView___bytes__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XDECREF(__pyx_v_memview);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__272 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view, __pyx_n_s_memview); if (unlikely(!__pyx_tuple__272)) __PYX_ERR(0, 3277, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__272);
  __Pyx_GIVEREF(__pyx_tuple__272);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_163test_BlockView___bytes__, 0, __pyx_n_s_test_BlockView___bytes, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__273)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3277, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___bytes, __pyx_t_1) < 0) __PYX_ERR(0, 3277, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__273 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__272, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___bytes, 3277, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__273)) __PYX_ERR(0, 3277, __pyx_L1_error)
 3278:     cdef:
+3279:         Block_* block = NULL
  __pyx_v_block = NULL;
+3280:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3281:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3282:         BlockView view
 3283:         object memview
 3284: 
+3285:     try:
  /*try:*/ {
+3286:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3286, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3286, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3286, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3287:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3287, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3288:         memview = view.memview
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_memview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3288, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_memview = __pyx_t_3;
    __pyx_t_3 = 0;
+3289:         assert memview is not None
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = (__pyx_v_memview != Py_None);
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3289, __pyx_L4_error)
      }
    }
    #endif
+3290:         assert bytes(memview) == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_v_memview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3290, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = (__Pyx_PyBytes_Equals(__pyx_t_3, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3290, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3290, __pyx_L4_error)
      }
    }
    #endif
+3291:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3291, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3291, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3292:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3293: 
 3294:     finally:
+3295:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3296: 
 3297: 
+3298: def test_BlockView_memview():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_165test_BlockView_memview(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_164test_BlockView_memview[] = "test_BlockView_memview()";
static PyMethodDef __pyx_mdef_7_test_c_165test_BlockView_memview = {"test_BlockView_memview", (PyCFunction)__pyx_pw_7_test_c_165test_BlockView_memview, METH_NOARGS, __pyx_doc_7_test_c_164test_BlockView_memview};
static PyObject *__pyx_pw_7_test_c_165test_BlockView_memview(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_memview (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_164test_BlockView_memview(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_164test_BlockView_memview(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_v_memview = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_memview", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_BlockView_memview", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XDECREF(__pyx_v_memview);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__274 = PyTuple_Pack(5, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view, __pyx_n_s_memview); if (unlikely(!__pyx_tuple__274)) __PYX_ERR(0, 3298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__274);
  __Pyx_GIVEREF(__pyx_tuple__274);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_165test_BlockView_memview, 0, __pyx_n_s_test_BlockView_memview, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__275)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_memview, __pyx_t_1) < 0) __PYX_ERR(0, 3298, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__275 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__274, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_memview, 3298, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__275)) __PYX_ERR(0, 3298, __pyx_L1_error)
 3299:     cdef:
+3300:         Block_* block = NULL
  __pyx_v_block = NULL;
+3301:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3302:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3303:         BlockView view
 3304:         object memview
 3305: 
+3306:     try:
  /*try:*/ {
+3307:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3307, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3307, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3307, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3308:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3308, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3309:         memview = view.memview
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_memview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3309, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_memview = __pyx_t_3;
    __pyx_t_3 = 0;
+3310:         assert memview is not None
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = (__pyx_v_memview != Py_None);
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3310, __pyx_L4_error)
      }
    }
    #endif
+3311:         assert bytes(memview) == data
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_v_memview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3311, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = (__Pyx_PyBytes_Equals(__pyx_t_3, __pyx_v_data, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3311, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_4 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3311, __pyx_L4_error)
      }
    }
    #endif
+3312:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3312, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3312, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3313:         with pytest.raises(RuntimeError, match='null internal data pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3313, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3313, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3313, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_kp_u_null_internal_data_pointer) < 0) __PYX_ERR(0, 3313, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__59, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3313, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3313, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_6, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3313, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      __pyx_t_3 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3313, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_BlockView_memview", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_3, &__pyx_t_5) < 0) __PYX_ERR(0, 3313, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_6, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3313, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3313, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_4 < 0) __PYX_ERR(0, 3313, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_4 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_5);
              __Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_3, __pyx_t_5);
              __pyx_t_6 = 0; __pyx_t_3 = 0; __pyx_t_5 = 0; 
              __PYX_ERR(0, 3313, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3313, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
  }
/* … */
  __pyx_tuple__59 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(0, 3313, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__59);
  __Pyx_GIVEREF(__pyx_tuple__59);
+3314:             bool(view.memview)
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_memview); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3314, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3314, __pyx_L10_error)
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            (void)((!(!__pyx_t_4)));
 3315: 
 3316:     finally:
+3317:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3318: 
 3319: 
+3320: def test_BlockView___len__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_167test_BlockView___len__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_166test_BlockView___len__[] = "test_BlockView___len__()";
static PyMethodDef __pyx_mdef_7_test_c_167test_BlockView___len__ = {"test_BlockView___len__", (PyCFunction)__pyx_pw_7_test_c_167test_BlockView___len__, METH_NOARGS, __pyx_doc_7_test_c_166test_BlockView___len__};
static PyObject *__pyx_pw_7_test_c_167test_BlockView___len__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___len__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_166test_BlockView___len__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_166test_BlockView___len__(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView___len__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_BlockView___len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__276 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__276)) __PYX_ERR(0, 3320, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__276);
  __Pyx_GIVEREF(__pyx_tuple__276);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_167test_BlockView___len__, 0, __pyx_n_s_test_BlockView___len, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__277)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3320, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___len, __pyx_t_1) < 0) __PYX_ERR(0, 3320, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__277 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__276, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___len, 3320, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__277)) __PYX_ERR(0, 3320, __pyx_L1_error)
 3321:     cdef:
+3322:         Block_* block = NULL
  __pyx_v_block = NULL;
+3323:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3324:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3325:         BlockView view
 3326: 
+3327:     try:
  /*try:*/ {
+3328:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3328, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3329:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3329, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3330:         assert <size_t>len(view) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = PyObject_Length(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3330, __pyx_L4_error)
      if (unlikely(!((((size_t)__pyx_t_3) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3330, __pyx_L4_error)
      }
    }
    #endif
+3331:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3331, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3331, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3332:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
 3333: 
+3334:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3334, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3334, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3334, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3335:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3335, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3336:         assert <size_t>len(view) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = PyObject_Length(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3336, __pyx_L4_error)
      if (unlikely(!((((size_t)__pyx_t_3) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3336, __pyx_L4_error)
      }
    }
    #endif
+3337:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3337, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3337, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+3338:         with pytest.raises(RuntimeError, match='null internal data pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3338, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3338, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3338, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_match, __pyx_kp_u_null_internal_data_pointer) < 0) __PYX_ERR(0, 3338, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__60, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3338, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3338, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3338, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_2 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3338, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_BlockView___len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 3338, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_8 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3338, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3338, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (__pyx_t_13 < 0) __PYX_ERR(0, 3338, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_13 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 3338, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3338, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
  }
/* … */
  __pyx_tuple__60 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(0, 3338, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__60);
  __Pyx_GIVEREF(__pyx_tuple__60);
+3339:             <size_t>len(view)
            __pyx_t_3 = PyObject_Length(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3339, __pyx_L10_error)
            (void)(((size_t)__pyx_t_3));
 3340: 
 3341:     finally:
+3342:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_12, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_11, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_12, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_7, __pyx_t_11, __pyx_t_10);
      __pyx_t_7 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_12 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3343: 
 3344: 
+3345: def test_BlockView_bounds():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_169test_BlockView_bounds(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_168test_BlockView_bounds[] = "test_BlockView_bounds()";
static PyMethodDef __pyx_mdef_7_test_c_169test_BlockView_bounds = {"test_BlockView_bounds", (PyCFunction)__pyx_pw_7_test_c_169test_BlockView_bounds, METH_NOARGS, __pyx_doc_7_test_c_168test_BlockView_bounds};
static PyObject *__pyx_pw_7_test_c_169test_BlockView_bounds(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_bounds (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_168test_BlockView_bounds(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_168test_BlockView_bounds(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_bounds", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("_test_c.test_BlockView_bounds", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__278 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__278)) __PYX_ERR(0, 3345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__278);
  __Pyx_GIVEREF(__pyx_tuple__278);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_169test_BlockView_bounds, 0, __pyx_n_s_test_BlockView_bounds, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__279)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_bounds, __pyx_t_1) < 0) __PYX_ERR(0, 3345, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__279 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__278, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_bounds, 3345, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__279)) __PYX_ERR(0, 3345, __pyx_L1_error)
 3346:     cdef:
+3347:         Block_* block = NULL
  __pyx_v_block = NULL;
+3348:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3349:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3350:         BlockView view
 3351: 
+3352:     try:
  /*try:*/ {
+3353:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3353, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3353, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3353, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3354:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3354, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3355:         assert view.start == Block_Start(block)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_start); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3355, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3355, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_RichCompare(__pyx_t_3, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3355, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 3355, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3355, __pyx_L4_error)
      }
    }
    #endif
+3356:         assert view.endex == Block_Endex(block)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_endex); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3356, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3356, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3356, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 3356, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3356, __pyx_L4_error)
      }
    }
    #endif
+3357:         assert view.endin == <object>Block_Endex(block) - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_endin); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3357, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3357, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyInt_SubtractObjC(__pyx_t_4, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3357, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3357, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 3357, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3357, __pyx_L4_error)
      }
    }
    #endif
+3358:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3358, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    __pyx_t_4 = (__pyx_t_3) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_3) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3358, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+3359:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3360: 
 3361:     finally:
+3362:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3363: 
 3364: 
+3365: def test_BlockView_check():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_171test_BlockView_check(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_170test_BlockView_check[] = "test_BlockView_check()";
static PyMethodDef __pyx_mdef_7_test_c_171test_BlockView_check = {"test_BlockView_check", (PyCFunction)__pyx_pw_7_test_c_171test_BlockView_check, METH_NOARGS, __pyx_doc_7_test_c_170test_BlockView_check};
static PyObject *__pyx_pw_7_test_c_171test_BlockView_check(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_check (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_170test_BlockView_check(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_170test_BlockView_check(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_check", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_BlockView_check", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__280 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__280)) __PYX_ERR(0, 3365, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__280);
  __Pyx_GIVEREF(__pyx_tuple__280);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_171test_BlockView_check, 0, __pyx_n_s_test_BlockView_check, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__281)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3365, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_check, __pyx_t_1) < 0) __PYX_ERR(0, 3365, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__281 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__280, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_check, 3365, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__281)) __PYX_ERR(0, 3365, __pyx_L1_error)
 3366:     cdef:
+3367:         Block_* block = NULL
  __pyx_v_block = NULL;
+3368:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3369:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3370:         BlockView view
 3371: 
+3372:     try:
  /*try:*/ {
+3373:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3373, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3373, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3373, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3374:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3374, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3375:         view.check()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_check); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3375, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_3 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3375, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3376:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3376, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_3 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3376, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3377:         with pytest.raises(RuntimeError, match='null internal data pointer'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_kp_u_null_internal_data_pointer) < 0) __PYX_ERR(0, 3377, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__61, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3377, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3377, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3377, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_BlockView_check", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_3, &__pyx_t_4) < 0) __PYX_ERR(0, 3377, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3377, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3377, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_12 < 0) __PYX_ERR(0, 3377, __pyx_L12_except_error)
            __pyx_t_13 = ((!(__pyx_t_12 != 0)) != 0);
            if (__pyx_t_13) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_3, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 3377, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3377, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__61 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(0, 3377, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__61);
  __Pyx_GIVEREF(__pyx_tuple__61);
+3378:             view.check()
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_check); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3378, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_4 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
              __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
              if (likely(__pyx_t_4)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
                __Pyx_INCREF(__pyx_t_4);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_3, function);
              }
            }
            __pyx_t_5 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3378, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+3379:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3380: 
 3381:     finally:
+3382:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_11, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_14 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_11, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_10, __pyx_t_9);
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3383: 
 3384: 
+3385: def test_BlockView_dispose():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_173test_BlockView_dispose(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_172test_BlockView_dispose[] = "test_BlockView_dispose()";
static PyMethodDef __pyx_mdef_7_test_c_173test_BlockView_dispose = {"test_BlockView_dispose", (PyCFunction)__pyx_pw_7_test_c_173test_BlockView_dispose, METH_NOARGS, __pyx_doc_7_test_c_172test_BlockView_dispose};
static PyObject *__pyx_pw_7_test_c_173test_BlockView_dispose(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_dispose (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_172test_BlockView_dispose(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_172test_BlockView_dispose(CYTHON_UNUSED PyObject *__pyx_self) {
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_data = 0;
  size_t __pyx_v_size;
  struct __pyx_obj_11cbytesparse_2_c_BlockView *__pyx_v_view = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_BlockView_dispose", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_BlockView_dispose", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_XDECREF((PyObject *)__pyx_v_view);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__282 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__282)) __PYX_ERR(0, 3385, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__282);
  __Pyx_GIVEREF(__pyx_tuple__282);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_173test_BlockView_dispose, 0, __pyx_n_s_test_BlockView_dispose, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__283)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3385, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_dispose, __pyx_t_1) < 0) __PYX_ERR(0, 3385, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__283 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__282, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_dispose, 3385, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__283)) __PYX_ERR(0, 3385, __pyx_L1_error)
 3386:     cdef:
+3387:         Block_* block = NULL
  __pyx_v_block = NULL;
+3388:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3389:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3390:         BlockView view
 3391: 
+3392:     try:
  /*try:*/ {
+3393:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3393, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3393, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3393, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3394:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_2_c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3394, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_2_c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3395:         assert view._block != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_block != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3395, __pyx_L4_error)
      }
    }
    #endif
+3396:         assert view.acquired == True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_acquired); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3396, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, Py_True, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3396, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 3396, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3396, __pyx_L4_error)
      }
    }
    #endif
+3397:         view.dispose()
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3397, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3397, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+3398:         assert view._block == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_block == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3398, __pyx_L4_error)
      }
    }
    #endif
+3399:         assert view.acquired == False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_acquired); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3399, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, Py_False, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3399, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 3399, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3399, __pyx_L4_error)
      }
    }
    #endif
+3400:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3400, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3400, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+3401:         assert view._block == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_view->_block == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3401, __pyx_L4_error)
      }
    }
    #endif
+3402:         assert view.acquired == False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_acquired); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3402, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, Py_False, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3402, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 3402, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3402, __pyx_L4_error)
      }
    }
    #endif
+3403:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
  }
 3404: 
 3405:     finally:
+3406:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3407: 
 3408: 
 3409: # =====================================================================================================================
 3410: 
 3411: cdef tuple TEMPLATE_BLOCKS = (
+3412:     (2, b'234'),
  __pyx_tuple__284 = PyTuple_Pack(2, __pyx_int_2, __pyx_kp_b_234); if (unlikely(!__pyx_tuple__284)) __PYX_ERR(0, 3412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__284);
  __Pyx_GIVEREF(__pyx_tuple__284);
/* … */
  __Pyx_INCREF(__pyx_tuple__289);
  __Pyx_XGOTREF(__pyx_v_7_test_c_TEMPLATE_BLOCKS);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_tuple__289);
  __Pyx_GIVEREF(__pyx_tuple__289);
/* … */
  __pyx_tuple__289 = PyTuple_Pack(5, __pyx_tuple__284, __pyx_tuple__285, __pyx_tuple__286, __pyx_tuple__287, __pyx_tuple__288); if (unlikely(!__pyx_tuple__289)) __PYX_ERR(0, 3412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__289);
  __Pyx_GIVEREF(__pyx_tuple__289);
+3413:     (8, b'89A'),
  __pyx_tuple__285 = PyTuple_Pack(2, __pyx_int_8, __pyx_kp_b_89A); if (unlikely(!__pyx_tuple__285)) __PYX_ERR(0, 3413, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__285);
  __Pyx_GIVEREF(__pyx_tuple__285);
+3414:     (12, b'C'),
  __pyx_tuple__286 = PyTuple_Pack(2, __pyx_int_12, __pyx_n_b_C); if (unlikely(!__pyx_tuple__286)) __PYX_ERR(0, 3414, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__286);
  __Pyx_GIVEREF(__pyx_tuple__286);
+3415:     (14, b'EF'),
  __pyx_tuple__287 = PyTuple_Pack(2, __pyx_int_14, __pyx_n_b_EF); if (unlikely(!__pyx_tuple__287)) __PYX_ERR(0, 3415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__287);
  __Pyx_GIVEREF(__pyx_tuple__287);
+3416:     (18, b'I'),
  __pyx_tuple__288 = PyTuple_Pack(2, __pyx_int_18, __pyx_n_b_I); if (unlikely(!__pyx_tuple__288)) __PYX_ERR(0, 3416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__288);
  __Pyx_GIVEREF(__pyx_tuple__288);
 3417: )
 3418: 
 3419: cdef tuple HELLO_WORLD_BLOCKS = (
+3420:     (2, b'Hello'),
  __pyx_tuple__290 = PyTuple_Pack(2, __pyx_int_2, __pyx_n_b_Hello); if (unlikely(!__pyx_tuple__290)) __PYX_ERR(0, 3420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__290);
  __Pyx_GIVEREF(__pyx_tuple__290);
/* … */
  __Pyx_INCREF(__pyx_tuple__292);
  __Pyx_XGOTREF(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS, __pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);
/* … */
  __pyx_tuple__292 = PyTuple_Pack(2, __pyx_tuple__290, __pyx_tuple__291); if (unlikely(!__pyx_tuple__292)) __PYX_ERR(0, 3420, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);
+3421:     (10, b'World!'),
  __pyx_tuple__291 = PyTuple_Pack(2, __pyx_int_10, __pyx_kp_b_World); if (unlikely(!__pyx_tuple__291)) __PYX_ERR(0, 3421, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__291);
  __Pyx_GIVEREF(__pyx_tuple__291);
 3422: )
 3423: 
 3424: 
+3425: cdef Rack_* create_rack(tuple template):
static Rack_ *__pyx_f_7_test_c_create_rack(PyObject *__pyx_v_template) {
  Rack_ *__pyx_v_blocks;
  Block_ *__pyx_v_block;
  size_t __pyx_v_block_count;
  size_t __pyx_v_block_index;
  addr_t __pyx_v_start;
  PyObject *__pyx_v_data = 0;
  Rack_ *__pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_rack", 0);
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_WriteUnraisable("_test_c.create_rack", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_data);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
 3426:     cdef:
+3427:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3428:         Block_* block = NULL
  __pyx_v_block = NULL;
+3429:         size_t block_count = <size_t>len(template)
  if (unlikely(__pyx_v_template == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3429, __pyx_L1_error)
  }
  __pyx_t_1 = PyTuple_GET_SIZE(__pyx_v_template); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3429, __pyx_L1_error)
  __pyx_v_block_count = ((size_t)__pyx_t_1);
 3430:         size_t block_index
 3431:         addr_t start
 3432:         bytes data
 3433: 
+3434:     try:
  {
    /*try:*/ {
/* … */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
/* … */
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_XGIVEREF(__pyx_t_4);
    __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_XGIVEREF(__pyx_t_4);
    __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
    goto __pyx_L0;
  }
+3435:         blocks = Rack_Alloc(block_count)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_block_count); if (unlikely(__pyx_t_5 == ((Rack_ *)NULL))) __PYX_ERR(0, 3435, __pyx_L3_error)
      __pyx_v_blocks = __pyx_t_5;
 3436: 
+3437:         for block_index in range(block_count):
      __pyx_t_6 = __pyx_v_block_count;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_block_index = __pyx_t_8;
+3438:             start, data = template[block_index]
        if (unlikely(__pyx_v_template == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 3438, __pyx_L3_error)
        }
        __pyx_t_9 = __Pyx_GetItemInt_Tuple(__pyx_v_template, __pyx_v_block_index, size_t, 0, __Pyx_PyInt_FromSize_t, 0, 0, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3438, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_9);
        if ((likely(PyTuple_CheckExact(__pyx_t_9))) || (PyList_CheckExact(__pyx_t_9))) {
          PyObject* sequence = __pyx_t_9;
          Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            __PYX_ERR(0, 3438, __pyx_L3_error)
          }
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); 
            __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1); 
          } else {
            __pyx_t_10 = PyList_GET_ITEM(sequence, 0); 
            __pyx_t_11 = PyList_GET_ITEM(sequence, 1); 
          }
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_11);
          #else
          __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3438, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3438, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_11);
          #endif
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_12 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3438, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_13 = Py_TYPE(__pyx_t_12)->tp_iternext;
          index = 0; __pyx_t_10 = __pyx_t_13(__pyx_t_12); if (unlikely(!__pyx_t_10)) goto __pyx_L11_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_10);
          index = 1; __pyx_t_11 = __pyx_t_13(__pyx_t_12); if (unlikely(!__pyx_t_11)) goto __pyx_L11_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_11);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_13(__pyx_t_12), 2) < 0) __PYX_ERR(0, 3438, __pyx_L3_error)
          __pyx_t_13 = NULL;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L12_unpacking_done;
          __pyx_L11_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __pyx_t_13 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          __PYX_ERR(0, 3438, __pyx_L3_error)
          __pyx_L12_unpacking_done:;
        }
        __pyx_t_14 = __Pyx_PyInt_As_uint_fast64_t(__pyx_t_10); if (unlikely((__pyx_t_14 == ((addr_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 3438, __pyx_L3_error)
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        if (!(likely(PyBytes_CheckExact(__pyx_t_11))||((__pyx_t_11) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_11)->tp_name), 0))) __PYX_ERR(0, 3438, __pyx_L3_error)
        __pyx_v_start = __pyx_t_14;
        __Pyx_XDECREF_SET(__pyx_v_data, ((PyObject*)__pyx_t_11));
        __pyx_t_11 = 0;
+3439:             block = Block_Create(start, <size_t>len(data), data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
          __PYX_ERR(0, 3439, __pyx_L3_error)
        }
        __pyx_t_1 = PyBytes_GET_SIZE(__pyx_v_data); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3439, __pyx_L3_error)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3439, __pyx_L3_error)
        }
        __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 3439, __pyx_L3_error)
        __pyx_t_16 = __pyx_f_11cbytesparse_2_c_Block_Create(__pyx_v_start, ((size_t)__pyx_t_1), __pyx_t_15); if (unlikely(__pyx_t_16 == ((Block_ *)NULL))) __PYX_ERR(0, 3439, __pyx_L3_error)
        __pyx_v_block = __pyx_t_16;
+3440:             Rack_Set__(blocks, block_index, block)
        (void)(__pyx_f_11cbytesparse_2_c_Rack_Set__(__pyx_v_blocks, __pyx_v_block_index, __pyx_v_block));
+3441:             block = NULL
        __pyx_v_block = NULL;
      }
 3442: 
+3443:         return blocks
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L7_try_return;
 3444: 
+3445:     except:
    /*except:*/ {
      __Pyx_AddTraceback("_test_c.create_rack", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 3445, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_GOTREF(__pyx_t_10);
+3446:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
+3447:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
+3448:         raise
      __Pyx_GIVEREF(__pyx_t_9);
      __Pyx_GIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestoreWithState(__pyx_t_9, __pyx_t_11, __pyx_t_10);
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; 
      __PYX_ERR(0, 3448, __pyx_L5_except_error)
    }
    __pyx_L5_except_error:;
 3449: 
 3450: 
+3451: cdef Rack_* create_template_rack():
static Rack_ *__pyx_f_7_test_c_create_template_rack(void) {
  Rack_ *__pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_template_rack", 0);
/* … */
  /* function exit code */
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+3452:     return create_rack(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  __pyx_r = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  goto __pyx_L0;
 3453: 
 3454: 
+3455: cdef Rack_* create_hello_world_rack():
static Rack_ *__pyx_f_7_test_c_create_hello_world_rack(void) {
  Rack_ *__pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("create_hello_world_rack", 0);
/* … */
  /* function exit code */
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+3456:     return create_rack(HELLO_WORLD_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  __pyx_r = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  goto __pyx_L0;
 3457: 
 3458: 
+3459: cdef bint check_null_rack(const Rack_* blocks) except -1:
static int __pyx_f_7_test_c_check_null_rack(Rack_ const *__pyx_v_blocks) {
  size_t __pyx_v_offset;
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("check_null_rack", 0);
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.check_null_rack", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
 3460:     cdef:
 3461:         size_t offset
 3462: 
+3463:     for offset in range(Rack_Length(blocks)):
  __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks);
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_v_offset = __pyx_t_3;
+3464:         assert Rack_Get__(blocks, offset) == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset) == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3464, __pyx_L1_error)
      }
    }
    #endif
  }
 3465: 
 3466: 
 3467: # ---------------------------------------------------------------------------------------------------------------------
 3468: 
+3469: def test_Rack_Alloc_Free():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_175test_Rack_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_174test_Rack_Alloc_Free[] = "test_Rack_Alloc_Free()";
static PyMethodDef __pyx_mdef_7_test_c_175test_Rack_Alloc_Free = {"test_Rack_Alloc_Free", (PyCFunction)__pyx_pw_7_test_c_175test_Rack_Alloc_Free, METH_NOARGS, __pyx_doc_7_test_c_174test_Rack_Alloc_Free};
static PyObject *__pyx_pw_7_test_c_175test_Rack_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Alloc_Free (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_174test_Rack_Alloc_Free(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_174test_Rack_Alloc_Free(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_block_index;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Alloc_Free", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_Alloc_Free", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__293 = PyTuple_Pack(2, __pyx_n_s_blocks, __pyx_n_s_block_index); if (unlikely(!__pyx_tuple__293)) __PYX_ERR(0, 3469, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__293);
  __Pyx_GIVEREF(__pyx_tuple__293);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_175test_Rack_Alloc_Free, 0, __pyx_n_s_test_Rack_Alloc_Free, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__294)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3469, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Alloc_Free, __pyx_t_1) < 0) __PYX_ERR(0, 3469, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__294 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__293, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Alloc_Free, 3469, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__294)) __PYX_ERR(0, 3469, __pyx_L1_error)
 3470:     cdef:
+3471:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3472:         size_t block_index
 3473: 
+3474:     try:
  /*try:*/ {
+3475:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3475, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3476:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3476, __pyx_L4_error)
      }
    }
    #endif
+3477:         assert blocks.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3477, __pyx_L4_error)
      }
    }
    #endif
+3478:         assert blocks.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3478, __pyx_L4_error)
      }
    }
    #endif
+3479:         assert blocks.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3479, __pyx_L4_error)
      }
    }
    #endif
+3480:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3480, __pyx_L4_error)
      }
    }
    #endif
+3481:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3482: 
+3483:         blocks = Rack_Alloc(0x100)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0x100); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3483, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3484:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3484, __pyx_L4_error)
      }
    }
    #endif
+3485:         assert blocks.allocated == MARGIN + 0x100 + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->allocated == ((MARGIN + 0x100) + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3485, __pyx_L4_error)
      }
    }
    #endif
+3486:         assert blocks.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3486, __pyx_L4_error)
      }
    }
    #endif
+3487:         assert blocks.endex == MARGIN + 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->endex == (MARGIN + 0x100)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3487, __pyx_L4_error)
      }
    }
    #endif
+3488:         assert Rack_Length(blocks) == 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0x100) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3488, __pyx_L4_error)
      }
    }
    #endif
+3489:         for block_index in range(0x100):
    for (__pyx_t_2 = 0; __pyx_t_2 < 0x100; __pyx_t_2+=1) {
      __pyx_v_block_index = __pyx_t_2;
+3490:             assert Rack_Get__(blocks, block_index) == NULL
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index) == NULL) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3490, __pyx_L4_error)
        }
      }
      #endif
    }
+3491:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3492: 
 3493:     finally:
+3494:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __pyx_t_3 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_7, __pyx_t_8);
      __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
      __pyx_lineno = __pyx_t_3; __pyx_clineno = __pyx_t_4; __pyx_filename = __pyx_t_5;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3495: 
 3496: 
+3497: def test_Rack_ShallowCopy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_177test_Rack_ShallowCopy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_176test_Rack_ShallowCopy[] = "test_Rack_ShallowCopy()";
static PyMethodDef __pyx_mdef_7_test_c_177test_Rack_ShallowCopy = {"test_Rack_ShallowCopy", (PyCFunction)__pyx_pw_7_test_c_177test_Rack_ShallowCopy, METH_NOARGS, __pyx_doc_7_test_c_176test_Rack_ShallowCopy};
static PyObject *__pyx_pw_7_test_c_177test_Rack_ShallowCopy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ShallowCopy (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_176test_Rack_ShallowCopy(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_2generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_176test_Rack_ShallowCopy(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *__pyx_cur_scope;
  PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_2generator6 = 0;
  PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_5generator7 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ShallowCopy", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *)__pyx_tp_new_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy(__pyx_ptype_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3497, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c.test_Rack_ShallowCopy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_21test_Rack_ShallowCopy_2generator6);
  __Pyx_XDECREF(__pyx_gb_7_test_c_21test_Rack_ShallowCopy_5generator7);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__295 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_temp, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__295)) __PYX_ERR(0, 3497, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__295);
  __Pyx_GIVEREF(__pyx_tuple__295);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_177test_Rack_ShallowCopy, 0, __pyx_n_s_test_Rack_ShallowCopy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__296)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3497, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ShallowCopy, __pyx_t_1) < 0) __PYX_ERR(0, 3497, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__296 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__295, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ShallowCopy, 3497, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__296)) __PYX_ERR(0, 3497, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy {
  PyObject_HEAD
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  Rack_ *__pyx_v_temp;
};

 3498:     cdef:
+3499:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3500:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3501:         size_t size
 3502:         size_t offset
 3503: 
+3504:     try:
  /*try:*/ {
+3505:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3505, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3506:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3507: 
+3508:         blocks = Rack_ShallowCopy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_ShallowCopy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3508, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3509:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3509, __pyx_L4_error)
      }
    }
    #endif
+3510:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3510, __pyx_L4_error)
      }
    }
    #endif
+3511:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3511, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3511, __pyx_L4_error)
      }
    }
    #endif
+3512:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3513: 
+3514:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3515:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3516:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3517: 
+3518:         blocks = Rack_ShallowCopy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_ShallowCopy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3518, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3519:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3519, __pyx_L4_error)
      }
    }
    #endif
+3520:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3520, __pyx_L4_error)
      }
    }
    #endif
+3521:         assert all(Rack_Get__(blocks, offset) == Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_21test_Rack_ShallowCopy_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_11_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_11_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_11_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_11_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_11_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3521, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_21test_Rack_ShallowCopy_2generator6, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_ShallowCopy_locals_gen, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3521, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_ShallowCopy.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_2generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3521, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) == __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_5generator7(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_21test_Rack_ShallowCopy_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3521, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3521, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_11_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3522:         assert all(Rack_Get__(blocks, offset).references == 2 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_21test_Rack_ShallowCopy_3genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_12_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_12_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_12_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_12_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_12_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3522, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_21test_Rack_ShallowCopy_5generator7, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_ShallowCopy_locals_gen, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3522, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_ShallowCopy.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_21test_Rack_ShallowCopy_5generator7(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3522, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 2) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_21test_Rack_ShallowCopy_3genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3522, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3522, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3522, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_12_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_10_test_Rack_ShallowCopy *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3523:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3523, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3523, __pyx_L4_error)
      }
    }
    #endif
+3524:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3525: 
 3526:     finally:
+3527:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3528:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3529: 
 3530: 
+3531: def test_Rack_Copy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_179test_Rack_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_178test_Rack_Copy[] = "test_Rack_Copy()";
static PyMethodDef __pyx_mdef_7_test_c_179test_Rack_Copy = {"test_Rack_Copy", (PyCFunction)__pyx_pw_7_test_c_179test_Rack_Copy, METH_NOARGS, __pyx_doc_7_test_c_178test_Rack_Copy};
static PyObject *__pyx_pw_7_test_c_179test_Rack_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Copy (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_178test_Rack_Copy(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_2generator8(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_178test_Rack_Copy(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *__pyx_cur_scope;
  PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_2generator8 = 0;
  PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_5generator9 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Copy", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *)__pyx_tp_new_7_test_c___pyx_scope_struct_13_test_Rack_Copy(__pyx_ptype_7_test_c___pyx_scope_struct_13_test_Rack_Copy, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3531, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c.test_Rack_Copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_14test_Rack_Copy_2generator8);
  __Pyx_XDECREF(__pyx_gb_7_test_c_14test_Rack_Copy_5generator9);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__297 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_temp, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__297)) __PYX_ERR(0, 3531, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__297);
  __Pyx_GIVEREF(__pyx_tuple__297);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_179test_Rack_Copy, 0, __pyx_n_s_test_Rack_Copy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__298)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3531, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Copy, __pyx_t_1) < 0) __PYX_ERR(0, 3531, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__298 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__297, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Copy, 3531, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__298)) __PYX_ERR(0, 3531, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy {
  PyObject_HEAD
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  Rack_ *__pyx_v_temp;
};

 3532:     cdef:
+3533:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3534:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3535:         size_t size
 3536:         size_t offset
 3537: 
+3538:     try:
  /*try:*/ {
+3539:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3539, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3540:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3541: 
+3542:         blocks = Rack_Copy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Copy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3542, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3543:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3543, __pyx_L4_error)
      }
    }
    #endif
+3544:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3544, __pyx_L4_error)
      }
    }
    #endif
+3545:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3545, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3545, __pyx_L4_error)
      }
    }
    #endif
+3546:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3547: 
+3548:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3549:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3550:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3551: 
+3552:         blocks = Rack_Copy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Copy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3552, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3553:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3553, __pyx_L4_error)
      }
    }
    #endif
+3554:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3554, __pyx_L4_error)
      }
    }
    #endif
+3555:         assert all(Rack_Get__(blocks, offset) != Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_14test_Rack_Copy_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_14_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_14_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_14_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_14_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_14_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3555, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_14test_Rack_Copy_2generator8, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_Copy_locals_genexpr, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3555, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_Copy.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_2generator8(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3555, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_5generator9(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_14test_Rack_Copy_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3555, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3555, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3555, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_14_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3556:         assert all(Rack_Get__(blocks, offset).references == 1 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_14test_Rack_Copy_3genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_15_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_15_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_15_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_15_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_15_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3556, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_14test_Rack_Copy_5generator9, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_Copy_locals_genexpr, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3556, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_Copy.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_14test_Rack_Copy_5generator9(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3556, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 1) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_14test_Rack_Copy_3genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3556, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3556, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_15_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_13_test_Rack_Copy *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3557:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3557, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3557, __pyx_L4_error)
      }
    }
    #endif
+3558:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3559: 
 3560:     finally:
+3561:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3562:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3563: 
 3564: 
+3565: def test_Rack_FromObject():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_181test_Rack_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_180test_Rack_FromObject[] = "test_Rack_FromObject()";
static PyMethodDef __pyx_mdef_7_test_c_181test_Rack_FromObject = {"test_Rack_FromObject", (PyCFunction)__pyx_pw_7_test_c_181test_Rack_FromObject, METH_NOARGS, __pyx_doc_7_test_c_180test_Rack_FromObject};
static PyObject *__pyx_pw_7_test_c_181test_Rack_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_FromObject (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_180test_Rack_FromObject(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_2generator10(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
static PyObject *__pyx_pf_7_test_c_180test_Rack_FromObject(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_cur_scope;
  size_t __pyx_v_offset;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_2generator10 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_5generator11 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_8generator12 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_11generator13 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_14generator14 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_17generator15 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_20generator16 = 0;
  PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_23generator17 = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_FromObject", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *)__pyx_tp_new_7_test_c___pyx_scope_struct_16_test_Rack_FromObject(__pyx_ptype_7_test_c___pyx_scope_struct_16_test_Rack_FromObject, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3565, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_2generator10);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_5generator11);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_8generator12);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_11generator13);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_14generator14);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_17generator15);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_20generator16);
  __Pyx_XDECREF(__pyx_gb_7_test_c_20test_Rack_FromObject_23generator17);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__299 = PyTuple_Pack(13, __pyx_n_s_blocks, __pyx_n_s_temp, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__299)) __PYX_ERR(0, 3565, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__299);
  __Pyx_GIVEREF(__pyx_tuple__299);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_181test_Rack_FromObject, 0, __pyx_n_s_test_Rack_FromObject, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__300)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3565, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_FromObject, __pyx_t_1) < 0) __PYX_ERR(0, 3565, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__300 = (PyObject*)__Pyx_PyCode_New(0, 0, 13, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__299, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_FromObject, 3565, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__300)) __PYX_ERR(0, 3565, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject {
  PyObject_HEAD
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  Rack_ *__pyx_v_temp;
};

 3566:     cdef:
+3567:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3568:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3569:         size_t size
 3570:         size_t offset
 3571: 
+3572:     try:
  /*try:*/ {
+3573:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3573, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3574:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3575: 
+3576:         blocks = Rack_FromObject((), 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_empty_tuple, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3576, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3577:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3577, __pyx_L4_error)
      }
    }
    #endif
+3578:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3578, __pyx_L4_error)
      }
    }
    #endif
+3579:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3579, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3579, __pyx_L4_error)
      }
    }
    #endif
+3580:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3581: 
+3582:         blocks = Rack_FromObject([], 0)
    __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3582, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3582, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3583:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3583, __pyx_L4_error)
      }
    }
    #endif
+3584:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3584, __pyx_L4_error)
      }
    }
    #endif
+3585:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3585, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3585, __pyx_L4_error)
      }
    }
    #endif
+3586:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3587: 
+3588:         blocks = Rack_FromObject(iter(()), 0)
    __pyx_t_3 = PyObject_GetIter(__pyx_empty_tuple); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3588, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3588, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3589:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3589, __pyx_L4_error)
      }
    }
    #endif
+3590:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3590, __pyx_L4_error)
      }
    }
    #endif
+3591:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3591, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3591, __pyx_L4_error)
      }
    }
    #endif
+3592:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3593: 
+3594:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3595:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3596:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3597: 
+3598:         blocks = Rack_FromObject(tuple(TEMPLATE_BLOCKS), 0)
    __pyx_t_3 = __Pyx_PySequence_Tuple(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3598, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3598, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3599:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3599, __pyx_L4_error)
      }
    }
    #endif
+3600:         assert all(Rack_Get__(blocks, offset) != Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_17_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_17_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_17_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_17_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_17_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3600, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_2generator10, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3600, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_2generator10(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3600, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_5generator11(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_20test_Rack_FromObject_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3600, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3600, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_17_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3601:         assert all(Rack_Get__(blocks, offset).references == 1 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_3genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_18_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_18_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_18_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_18_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_18_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3601, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_5generator11, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3601, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_5generator11(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3601, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 1) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_8generator12(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_20test_Rack_FromObject_3genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3601, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3601, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3601, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_18_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3602:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3602, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3602, __pyx_L4_error)
      }
    }
    #endif
+3603:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3604: 
+3605:         blocks = Rack_FromObject(list(TEMPLATE_BLOCKS), 0)
    __pyx_t_3 = PySequence_List(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3605, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3605, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3606:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3606, __pyx_L4_error)
      }
    }
    #endif
+3607:         assert all(Rack_Get__(blocks, offset) != Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_6genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_19_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_19_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_19_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_19_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_19_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3607, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_8generator12, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3607, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_8generator12(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3607, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_11generator13(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_20test_Rack_FromObject_6genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3607, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3607, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3607, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_19_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3608:         assert all(Rack_Get__(blocks, offset).references == 1 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_9genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_20_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_20_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_20_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_20_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_20_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3608, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_11generator13, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3608, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_11generator13(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3608, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 1) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_14generator14(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_20test_Rack_FromObject_9genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3608, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3608, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3608, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_20_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3609:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3609, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3609, __pyx_L4_error)
      }
    }
    #endif
+3610:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3611: 
+3612:         blocks = Rack_FromObject(iter(TEMPLATE_BLOCKS), 0)
    __pyx_t_3 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_3);
    __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3612, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_4, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3612, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3613:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3613, __pyx_L4_error)
      }
    }
    #endif
+3614:         assert all(Rack_Get__(blocks, offset) != Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_12genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_21_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_21_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_21_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_21_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_21_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3614, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_14generator14, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3614, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_14generator14(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3614, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_17generator15(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_20test_Rack_FromObject_12genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3614, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3614, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3614, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_21_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3615:         assert all(Rack_Get__(blocks, offset).references == 1 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_15genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_22_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_22_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_22_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_22_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_22_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3615, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_17generator15, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3615, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_17generator15(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3615, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 1) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_20generator16(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_20test_Rack_FromObject_15genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3615, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3615, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3615, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_22_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3616:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3616, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3616, __pyx_L4_error)
      }
    }
    #endif
+3617:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3618: 
+3619:         blocks = Rack_FromObject(iter(TEMPLATE_BLOCKS), 69)
    __pyx_t_4 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_4);
    __pyx_t_3 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3619, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_FromObject(__pyx_t_3, 69); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3619, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3620:         assert blocks != temp
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_cur_scope->__pyx_v_blocks != __pyx_cur_scope->__pyx_v_temp) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3620, __pyx_L4_error)
      }
    }
    #endif
+3621:         assert all(Rack_Get__(blocks, offset) != Rack_Get__(temp, offset) for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_18genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_23_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_23_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_23_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_23_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_23_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3621, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_20generator16, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3621, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_20generator16(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3621, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_temp, __pyx_cur_scope->__pyx_v_offset)) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_23generator17(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = __pyx_pf_7_test_c_20test_Rack_FromObject_18genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3621, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3621, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_4 == Py_True);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3621, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_23_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3622:         assert all(Rack_Get__(blocks, offset).references == 1 for offset in range(size)) is True
static PyObject *__pyx_pf_7_test_c_20test_Rack_FromObject_21genexpr(PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_24_genexpr *__pyx_cur_scope;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_24_genexpr *)__pyx_tp_new_7_test_c___pyx_scope_struct_24_genexpr(__pyx_ptype_7_test_c___pyx_scope_struct_24_genexpr, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_24_genexpr *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 3622, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *) __pyx_self;
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  {
    __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_7_test_c_20test_Rack_FromObject_23generator17, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_test_Rack_FromObject_locals_gene, __pyx_n_s_test_c); if (unlikely(!gen)) __PYX_ERR(0, 3622, __pyx_L1_error)
    __Pyx_DECREF(__pyx_cur_scope);
    __Pyx_RefNannyFinishContext();
    return (PyObject *) gen;
  }

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_FromObject.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_gb_7_test_c_20test_Rack_FromObject_23generator17(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("genexpr", 0);
  __pyx_L3_first_run:;
  if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 3622, __pyx_L1_error)
  __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_size;
  __pyx_t_2 = __pyx_t_1;
  for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
    __pyx_cur_scope->__pyx_v_offset = __pyx_t_3;
    __pyx_t_4 = ((!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset)->references == 1) != 0)) != 0);
    if (__pyx_t_4) {
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_False);
      __pyx_r = Py_False;
      goto __pyx_L0;
    }
  }
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(Py_True);
    __pyx_r = Py_True;
    goto __pyx_L0;
  }
  CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  #if !CYTHON_USE_EXC_INFO_STACK
  __Pyx_Coroutine_ResetAndClearException(__pyx_generator);
  #endif
  __pyx_generator->resume_label = -1;
  __Pyx_Coroutine_clear((PyObject*)__pyx_generator);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_pf_7_test_c_20test_Rack_FromObject_21genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3622, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_Generator_Next(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3622, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = (__pyx_t_3 == Py_True);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!(__pyx_t_2 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3622, __pyx_L4_error)
      }
    }
    #endif
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_24_genexpr {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_16_test_Rack_FromObject *__pyx_outer_scope;
  size_t __pyx_v_offset;
};

+3623:         for offset in range(size): Rack_Get_(blocks, offset).address -= 69
    __pyx_t_5 = __pyx_cur_scope->__pyx_v_size;
    __pyx_t_6 = __pyx_t_5;
    for (__pyx_t_7 = 0; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
      __pyx_v_offset = __pyx_t_7;
      __pyx_t_8 = __pyx_f_11cbytesparse_2_c_Rack_Get_(__pyx_cur_scope->__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_8 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3623, __pyx_L4_error)
      __pyx_t_8->address = (__pyx_t_8->address - 69);
    }
+3624:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3624, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3624, __pyx_L4_error)
      }
    }
    #endif
+3625:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3626: 
 3627:     finally:
+3628:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3629:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14) < 0)) __Pyx_ErrFetch(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_9 = __pyx_lineno; __pyx_t_10 = __pyx_clineno; __pyx_t_11 = __pyx_filename;
      {
/* … */
        __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_ErrRestore(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_9; __pyx_clineno = __pyx_t_10; __pyx_filename = __pyx_t_11;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3630: 
 3631: 
+3632: def test_Rack_BoundSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_183test_Rack_BoundSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_182test_Rack_BoundSlice[] = "test_Rack_BoundSlice()";
static PyMethodDef __pyx_mdef_7_test_c_183test_Rack_BoundSlice = {"test_Rack_BoundSlice", (PyCFunction)__pyx_pw_7_test_c_183test_Rack_BoundSlice, METH_NOARGS, __pyx_doc_7_test_c_182test_Rack_BoundSlice};
static PyObject *__pyx_pw_7_test_c_183test_Rack_BoundSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_BoundSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_182test_Rack_BoundSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_182test_Rack_BoundSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  addr_t __pyx_v_start;
  addr_t __pyx_v_endex;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_BoundSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_BoundSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__301 = PyTuple_Pack(3, __pyx_n_s_blocks, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__301)) __PYX_ERR(0, 3632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__301);
  __Pyx_GIVEREF(__pyx_tuple__301);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_183test_Rack_BoundSlice, 0, __pyx_n_s_test_Rack_BoundSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__302)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_BoundSlice, __pyx_t_1) < 0) __PYX_ERR(0, 3632, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__302 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__301, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_BoundSlice, 3632, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__302)) __PYX_ERR(0, 3632, __pyx_L1_error)
 3633:     cdef:
+3634:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3635:         addr_t start
 3636:         addr_t endex
 3637: 
+3638:     try:
  /*try:*/ {
+3639:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3639, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
 3640: 
+3641:         start, endex = Rack_BoundSlice(blocks, 0, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, 0, 0);
    __pyx_t_3 = __pyx_t_2.f0;
    __pyx_t_4 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_3;
    __pyx_v_endex = __pyx_t_4;
+3642:         assert start == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3642, __pyx_L4_error)
      }
    }
    #endif
+3643:         assert endex == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3643, __pyx_L4_error)
      }
    }
    #endif
 3644: 
+3645:         start, endex = Rack_BoundSlice(blocks, 0, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, 0, ADDR_MAX);
    __pyx_t_4 = __pyx_t_2.f0;
    __pyx_t_3 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_4;
    __pyx_v_endex = __pyx_t_3;
+3646:         assert start == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3646, __pyx_L4_error)
      }
    }
    #endif
+3647:         assert endex == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3647, __pyx_L4_error)
      }
    }
    #endif
 3648: 
+3649:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, ADDR_MAX, ADDR_MAX);
    __pyx_t_3 = __pyx_t_2.f0;
    __pyx_t_4 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_3;
    __pyx_v_endex = __pyx_t_4;
+3650:         assert start == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3650, __pyx_L4_error)
      }
    }
    #endif
+3651:         assert endex == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3651, __pyx_L4_error)
      }
    }
    #endif
 3652: 
+3653:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, ADDR_MAX, 0);
    __pyx_t_4 = __pyx_t_2.f0;
    __pyx_t_3 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_4;
    __pyx_v_endex = __pyx_t_3;
+3654:         assert start == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3654, __pyx_L4_error)
      }
    }
    #endif
+3655:         assert endex == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3655, __pyx_L4_error)
      }
    }
    #endif
 3656: 
+3657:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
+3658:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 3659: 
+3660:         start, endex = Rack_BoundSlice(blocks, 0, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, 0, 0);
    __pyx_t_3 = __pyx_t_2.f0;
    __pyx_t_4 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_3;
    __pyx_v_endex = __pyx_t_4;
+3661:         assert start == Block_Start(Rack_First_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_f_11cbytesparse_2_c_Rack_First_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3661, __pyx_L4_error)
      }
    }
    #endif
+3662:         assert endex == start
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == __pyx_v_start) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3662, __pyx_L4_error)
      }
    }
    #endif
 3663: 
+3664:         start, endex = Rack_BoundSlice(blocks, 0, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, 0, ADDR_MAX);
    __pyx_t_4 = __pyx_t_2.f0;
    __pyx_t_3 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_4;
    __pyx_v_endex = __pyx_t_3;
+3665:         assert start == Block_Start(Rack_First_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_f_11cbytesparse_2_c_Rack_First_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3665, __pyx_L4_error)
      }
    }
    #endif
+3666:         assert endex == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3666, __pyx_L4_error)
      }
    }
    #endif
 3667: 
+3668:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, ADDR_MAX, ADDR_MAX);
    __pyx_t_3 = __pyx_t_2.f0;
    __pyx_t_4 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_3;
    __pyx_v_endex = __pyx_t_4;
+3669:         assert start == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3669, __pyx_L4_error)
      }
    }
    #endif
+3670:         assert endex == start
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == __pyx_v_start) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3670, __pyx_L4_error)
      }
    }
    #endif
 3671: 
+3672:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_BoundSlice(__pyx_v_blocks, ADDR_MAX, 0);
    __pyx_t_4 = __pyx_t_2.f0;
    __pyx_t_3 = __pyx_t_2.f1;
    __pyx_v_start = __pyx_t_4;
    __pyx_v_endex = __pyx_t_3;
+3673:         assert start == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3673, __pyx_L4_error)
      }
    }
    #endif
+3674:         assert endex == start
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == __pyx_v_start) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3674, __pyx_L4_error)
      }
    }
    #endif
  }
 3675: 
 3676:     finally:
+3677:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3678: 
 3679: 
 3680: # TODO: def test_Rack_Shift_()
 3681: 
 3682: 
 3683: # TODO: def test_Rack_Shift()
 3684: 
 3685: 
+3686: def test_Rack_Eq():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_185test_Rack_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_184test_Rack_Eq[] = "test_Rack_Eq()";
static PyMethodDef __pyx_mdef_7_test_c_185test_Rack_Eq = {"test_Rack_Eq", (PyCFunction)__pyx_pw_7_test_c_185test_Rack_Eq, METH_NOARGS, __pyx_doc_7_test_c_184test_Rack_Eq};
static PyObject *__pyx_pw_7_test_c_185test_Rack_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Eq (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_184test_Rack_Eq(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_184test_Rack_Eq(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks1;
  Rack_ *__pyx_v_blocks2;
  size_t __pyx_v_block_index;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Eq", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_Eq", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__303 = PyTuple_Pack(3, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_block_index); if (unlikely(!__pyx_tuple__303)) __PYX_ERR(0, 3686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__303);
  __Pyx_GIVEREF(__pyx_tuple__303);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_185test_Rack_Eq, 0, __pyx_n_s_test_Rack_Eq, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__304)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Eq, __pyx_t_1) < 0) __PYX_ERR(0, 3686, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__304 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__303, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Eq, 3686, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__304)) __PYX_ERR(0, 3686, __pyx_L1_error)
 3687:     cdef:
+3688:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+3689:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
 3690:         size_t block_index
 3691: 
+3692:     try:
  /*try:*/ {
+3693:         blocks2 = create_template_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_template_rack();
 3694: 
+3695:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+3696:         assert Rack_Eq(blocks1, blocks2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3696, __pyx_L4_error)
      if (unlikely(!((__pyx_t_1 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3696, __pyx_L4_error)
      }
    }
    #endif
+3697:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
 3698: 
+3699:         for block_index in range(Rack_Length(blocks2)):
    __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2);
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_block_index = __pyx_t_4;
+3700:             blocks1 = create_template_rack()
      __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+3701:             blocks1 = Rack_Pop_(blocks1, block_index, NULL)
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks1, __pyx_v_block_index, NULL); if (unlikely(__pyx_t_5 == ((Rack_ *)NULL))) __PYX_ERR(0, 3701, __pyx_L4_error)
      __pyx_v_blocks1 = __pyx_t_5;
+3702:             assert Rack_Eq(blocks1, blocks2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3702, __pyx_L4_error)
        if (unlikely(!((__pyx_t_1 == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3702, __pyx_L4_error)
        }
      }
      #endif
+3703:             blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
    }
  }
 3704: 
 3705:     finally:
+3706:         blocks1 = Rack_Free(blocks1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+3707:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3708: 
 3709: 
+3710: def test_Rack_Reserve_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_187test_Rack_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_186test_Rack_Reserve_[] = "test_Rack_Reserve_()";
static PyMethodDef __pyx_mdef_7_test_c_187test_Rack_Reserve_ = {"test_Rack_Reserve_", (PyCFunction)__pyx_pw_7_test_c_187test_Rack_Reserve_, METH_NOARGS, __pyx_doc_7_test_c_186test_Rack_Reserve_};
static PyObject *__pyx_pw_7_test_c_187test_Rack_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Reserve_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_186test_Rack_Reserve_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_186test_Rack_Reserve_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Reserve_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("_test_c.test_Rack_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__305 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_data, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__305)) __PYX_ERR(0, 3710, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__305);
  __Pyx_GIVEREF(__pyx_tuple__305);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_187test_Rack_Reserve_, 0, __pyx_n_s_test_Rack_Reserve, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__306)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3710, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Reserve, __pyx_t_1) < 0) __PYX_ERR(0, 3710, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__306 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__305, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Reserve, 3710, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__306)) __PYX_ERR(0, 3710, __pyx_L1_error)
 3711:     cdef:
+3712:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3713:         size_t size = 10
  __pyx_v_size = 10;
 3714:         list data
 3715:         size_t offset
 3716: 
+3717:     try:
  /*try:*/ {
+3718:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3718, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3719:         blocks = Rack_Reserve_(blocks, 0, 0)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3719, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3720:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3720, __pyx_L4_error)
      }
    }
    #endif
+3721:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3721, __pyx_L4_error)
      }
    }
    #endif
+3722:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3722, __pyx_L4_error)
+3723:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3724: 
+3725:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3725, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3726:         blocks = Rack_Reserve_(blocks, 0, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3726, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3727:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3727, __pyx_L4_error)
      }
    }
    #endif
+3728:         assert Rack_Length(blocks) == 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 3) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3728, __pyx_L4_error)
      }
    }
    #endif
+3729:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3729, __pyx_L4_error)
+3730:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3731: 
+3732:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3732, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3733:         blocks = Rack_Reserve_(blocks, 0, 0)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3733, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3734:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3734, __pyx_L4_error)
      }
    }
    #endif
+3735:         assert Rack_Length(blocks) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3735, __pyx_L4_error)
      }
    }
    #endif
+3736:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3736, __pyx_L4_error)
+3737:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3738: 
+3739:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3739, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3740:         blocks = Rack_Reserve_(blocks, 0, 3)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3740, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3741:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3741, __pyx_L4_error)
      }
    }
    #endif
+3742:         assert Rack_Length(blocks) == 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (3 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3742, __pyx_L4_error)
      }
    }
    #endif
+3743:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3743, __pyx_L4_error)
+3744:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3745: 
+3746:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3746, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3747:         blocks = Rack_Reserve_(blocks, size, 3)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_size, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3747, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3748:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3748, __pyx_L4_error)
      }
    }
    #endif
+3749:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3749, __pyx_L4_error)
      }
    }
    #endif
+3750:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3750, __pyx_L4_error)
+3751:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3752: 
+3753:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+3754:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3754, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3755:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3755, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3756:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3756, __pyx_L4_error)
      }
    }
    #endif
+3757:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3757, __pyx_L4_error)
      }
    }
    #endif
+3758:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3758, __pyx_L4_error)
+3759:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3760: 
+3761:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+3762:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3762, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3763:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3763, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3764:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3764, __pyx_L4_error)
      }
    }
    #endif
+3765:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3765, __pyx_L4_error)
      }
    }
    #endif
+3766:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3766, __pyx_L4_error)
+3767:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3768: 
+3769:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+3770:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3770, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3771:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3771, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3772:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3772, __pyx_L4_error)
      }
    }
    #endif
+3773:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3773, __pyx_L4_error)
      }
    }
    #endif
+3774:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3774, __pyx_L4_error)
+3775:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3776: 
+3777:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3777, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3778:         blocks = Rack_Reserve_(blocks, 0, size)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3778, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3779:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3779, __pyx_L4_error)
      }
    }
    #endif
+3780:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3780, __pyx_L4_error)
      }
    }
    #endif
+3781:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3781, __pyx_L4_error)
+3782:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3783: 
+3784:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3784, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3785:         blocks = Rack_Reserve_(blocks, size, size)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_size, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3785, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3786:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3786, __pyx_L4_error)
      }
    }
    #endif
+3787:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3787, __pyx_L4_error)
      }
    }
    #endif
+3788:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3788, __pyx_L4_error)
+3789:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3790: 
+3791:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+3792:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3792, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3793:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3793, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3794:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3794, __pyx_L4_error)
      }
    }
    #endif
+3795:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3795, __pyx_L4_error)
      }
    }
    #endif
+3796:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3796, __pyx_L4_error)
+3797:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3798: 
+3799:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+3800:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3800, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3801:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3801, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3802:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3802, __pyx_L4_error)
      }
    }
    #endif
+3803:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3803, __pyx_L4_error)
      }
    }
    #endif
+3804:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3804, __pyx_L4_error)
+3805:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3806: 
+3807:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+3808:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3808, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3809:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3809, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3810:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3810, __pyx_L4_error)
      }
    }
    #endif
+3811:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3811, __pyx_L4_error)
      }
    }
    #endif
+3812:         check_null_rack(blocks)
    __pyx_t_2 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3812, __pyx_L4_error)
+3813:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3814: 
+3815:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3815, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3816:         with pytest.raises(OverflowError, match='size overflow'): Rack_Reserve_(blocks, 0, SIZE_MAX)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3816, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3816, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3816, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 3816, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__62, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3816, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3816, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3816, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3816, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3816, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_3, &__pyx_t_4) < 0) __PYX_ERR(0, 3816, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3816, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3816, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_2 < 0) __PYX_ERR(0, 3816, __pyx_L12_except_error)
            __pyx_t_12 = ((!(__pyx_t_2 != 0)) != 0);
            if (__pyx_t_12) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_3, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 3816, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3816, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__62 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(0, 3816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__62);
  __Pyx_GIVEREF(__pyx_tuple__62);
+3817:         with pytest.raises(OverflowError, match='size overflow'): Rack_Reserve_(blocks, 0, SIZE_HMAX)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pytest); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3817, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_raises); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3817, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3817, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 3817, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__63, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3817, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3817, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3817, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3817, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, 0, SIZE_HMAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3817, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_3) < 0) __PYX_ERR(0, 3817, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3817, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3817, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_12 < 0) __PYX_ERR(0, 3817, __pyx_L26_except_error)
            __pyx_t_2 = ((!(__pyx_t_12 != 0)) != 0);
            if (__pyx_t_2) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_4);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_4, __pyx_t_3);
              __pyx_t_5 = 0; __pyx_t_4 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 3817, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3817, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__63 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 3817, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__63);
  __Pyx_GIVEREF(__pyx_tuple__63);
+3818:         with pytest.raises(IndexError, match='index out of range'): Rack_Reserve_(blocks, size + 1, 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3818, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_raises); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3818, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3818, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 3818, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__64, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3818, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_exit); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3818, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_t_5, __pyx_n_s_enter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3818, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      __pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3818, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Reserve_(__pyx_v_blocks, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3818, __pyx_L38_error)
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L43_try_end;
          __pyx_L38_error:;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Reserve_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_3, &__pyx_t_4) < 0) __PYX_ERR(0, 3818, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3818, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3818, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_2 < 0) __PYX_ERR(0, 3818, __pyx_L40_except_error)
            __pyx_t_12 = ((!(__pyx_t_2 != 0)) != 0);
            if (__pyx_t_12) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_3);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_3, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 3818, __pyx_L40_except_error)
            }
            __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L39_exception_handled;
          }
          __pyx_L40_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L39_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L43_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_6) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3818, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L37;
        }
        __pyx_L37:;
      }
      goto __pyx_L47;
      __pyx_L34_error:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_error;
      __pyx_L47:;
    }
/* … */
  __pyx_tuple__64 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__64)) __PYX_ERR(0, 3818, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__64);
  __Pyx_GIVEREF(__pyx_tuple__64);
+3819:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3820: 
 3821:     finally:
+3822:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_16 = 0;
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_11, &__pyx_t_16);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_10, &__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_16);
      __pyx_t_13 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_11, __pyx_t_16);
      }
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_ErrRestore(__pyx_t_6, __pyx_t_10, __pyx_t_9);
      __pyx_t_6 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_11 = 0; __pyx_t_16 = 0;
      __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3823: 
 3824: 
+3825: def test_Rack_Delete_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_189test_Rack_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_188test_Rack_Delete_[] = "test_Rack_Delete_()";
static PyMethodDef __pyx_mdef_7_test_c_189test_Rack_Delete_ = {"test_Rack_Delete_", (PyCFunction)__pyx_pw_7_test_c_189test_Rack_Delete_, METH_NOARGS, __pyx_doc_7_test_c_188test_Rack_Delete_};
static PyObject *__pyx_pw_7_test_c_189test_Rack_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Delete_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_188test_Rack_Delete_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_188test_Rack_Delete_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Delete_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_AddTraceback("_test_c.test_Rack_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__307 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__307)) __PYX_ERR(0, 3825, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__307);
  __Pyx_GIVEREF(__pyx_tuple__307);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_189test_Rack_Delete_, 0, __pyx_n_s_test_Rack_Delete, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__308)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3825, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Delete, __pyx_t_1) < 0) __PYX_ERR(0, 3825, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__308 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__307, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Delete, 3825, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__308)) __PYX_ERR(0, 3825, __pyx_L1_error)
 3826:     cdef:
+3827:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3828:         size_t size = 10
  __pyx_v_size = 10;
 3829:         size_t start
 3830:         size_t endex
 3831: 
+3832:     try:
  /*try:*/ {
+3833:         start = endex = 0
    __pyx_v_start = 0;
    __pyx_v_endex = 0;
+3834:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3834, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3835:         blocks = Rack_Delete_(blocks, 0, 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Delete_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3835, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3836:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3836, __pyx_L4_error)
      }
    }
    #endif
+3837:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3837, __pyx_L4_error)
      }
    }
    #endif
+3838:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3839: 
+3840:         for start in range(size):
    __pyx_t_2 = __pyx_v_size;
    __pyx_t_3 = __pyx_t_2;
    for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
      __pyx_v_start = __pyx_t_4;
+3841:             for endex in range(start, size):
      __pyx_t_5 = __pyx_v_size;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = __pyx_v_start; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_endex = __pyx_t_7;
+3842:                 blocks = Rack_Alloc(size)
        __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3842, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_1;
+3843:                 blocks = Rack_Delete_(blocks, start, endex - start)
        __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Delete_(__pyx_v_blocks, __pyx_v_start, (__pyx_v_endex - __pyx_v_start)); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3843, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_1;
+3844:                 assert blocks != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3844, __pyx_L4_error)
          }
        }
        #endif
+3845:                 assert Rack_Length(blocks) == size - (endex - start)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - (__pyx_v_endex - __pyx_v_start))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3845, __pyx_L4_error)
          }
        }
        #endif
+3846:                 check_null_rack(blocks)
        __pyx_t_8 = __pyx_f_7_test_c_check_null_rack(__pyx_v_blocks); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 3846, __pyx_L4_error)
+3847:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
    }
 3848: 
+3849:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3849, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3850:         with pytest.raises(OverflowError, match='size overflow'): Rack_Delete_(blocks, 0, SIZE_MAX)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pytest); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_raises); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 3850, __pyx_L4_error)
      __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__65, __pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_11, __pyx_n_s_exit); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3850, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_10 = __Pyx_PyObject_LookupSpecial(__pyx_t_11, __pyx_n_s_enter); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3850, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_13 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
        __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_10);
        if (likely(__pyx_t_13)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_13);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_10, function);
        }
      }
      __pyx_t_9 = (__pyx_t_13) ? __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_13) : __Pyx_PyObject_CallNoArg(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3850, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Delete_(__pyx_v_blocks, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3850, __pyx_L14_error)
          }
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_9, &__pyx_t_10) < 0) __PYX_ERR(0, 3850, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_13 = PyTuple_Pack(3, __pyx_t_11, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3850, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_t_13, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 3850, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_17);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (__pyx_t_8 < 0) __PYX_ERR(0, 3850, __pyx_L16_except_error)
            __pyx_t_18 = ((!(__pyx_t_8 != 0)) != 0);
            if (__pyx_t_18) {
              __Pyx_GIVEREF(__pyx_t_11);
              __Pyx_GIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ErrRestoreWithState(__pyx_t_11, __pyx_t_9, __pyx_t_10);
              __pyx_t_11 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; 
              __PYX_ERR(0, 3850, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_14, __pyx_t_15, __pyx_t_16);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_12) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 3850, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__65 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(0, 3850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__65);
  __Pyx_GIVEREF(__pyx_tuple__65);
+3851:         with pytest.raises(IndexError, match='index out of range'): Rack_Delete_(blocks, size + 1, 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3851, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_raises); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3851, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3851, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_10);
      if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_match, __pyx_kp_u_index_out_of_range) < 0) __PYX_ERR(0, 3851, __pyx_L4_error)
      __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__66, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3851, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_11, __pyx_n_s_exit); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3851, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_11, __pyx_n_s_enter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3851, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_13 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_13)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_13);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      __pyx_t_10 = (__pyx_t_13) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_13) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3851, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Delete_(__pyx_v_blocks, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3851, __pyx_L28_error)
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Delete_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_10, &__pyx_t_9) < 0) __PYX_ERR(0, 3851, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = PyTuple_Pack(3, __pyx_t_11, __pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3851, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_t_13, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 3851, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_17);
            __pyx_t_18 = __Pyx_PyObject_IsTrue(__pyx_t_17);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (__pyx_t_18 < 0) __PYX_ERR(0, 3851, __pyx_L30_except_error)
            __pyx_t_8 = ((!(__pyx_t_18 != 0)) != 0);
            if (__pyx_t_8) {
              __Pyx_GIVEREF(__pyx_t_11);
              __Pyx_GIVEREF(__pyx_t_10);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_ErrRestoreWithState(__pyx_t_11, __pyx_t_10, __pyx_t_9);
              __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_9 = 0; 
              __PYX_ERR(0, 3851, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_15, __pyx_t_14);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_14);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_15, __pyx_t_14);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_12) {
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3851, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
/* … */
  __pyx_tuple__66 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(0, 3851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__66);
  __Pyx_GIVEREF(__pyx_tuple__66);
+3852:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3853: 
 3854:     finally:
+3855:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_12 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_22 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_22);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_12, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_12, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_22);
      __pyx_t_19 = __pyx_lineno; __pyx_t_20 = __pyx_clineno; __pyx_t_21 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_22);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_22);
      }
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_12, __pyx_t_14, __pyx_t_15);
      __pyx_t_12 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_22 = 0;
      __pyx_lineno = __pyx_t_19; __pyx_clineno = __pyx_t_20; __pyx_filename = __pyx_t_21;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3856: 
 3857: 
+3858: def test_Rack_Clear():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_191test_Rack_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_190test_Rack_Clear[] = "test_Rack_Clear()";
static PyMethodDef __pyx_mdef_7_test_c_191test_Rack_Clear = {"test_Rack_Clear", (PyCFunction)__pyx_pw_7_test_c_191test_Rack_Clear, METH_NOARGS, __pyx_doc_7_test_c_190test_Rack_Clear};
static PyObject *__pyx_pw_7_test_c_191test_Rack_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Clear (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_190test_Rack_Clear(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_190test_Rack_Clear(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Clear", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_Clear", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__309 = PyTuple_Pack(1, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__309)) __PYX_ERR(0, 3858, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__309);
  __Pyx_GIVEREF(__pyx_tuple__309);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_191test_Rack_Clear, 0, __pyx_n_s_test_Rack_Clear, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__310)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3858, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Clear, __pyx_t_1) < 0) __PYX_ERR(0, 3858, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__310 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__309, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Clear, 3858, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__310)) __PYX_ERR(0, 3858, __pyx_L1_error)
 3859:     cdef:
+3860:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3861: 
+3862:     try:
  /*try:*/ {
+3863:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3863, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3864:         blocks = Rack_Clear(blocks)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Clear(__pyx_v_blocks); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3864, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3865:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3865, __pyx_L4_error)
      }
    }
    #endif
+3866:         assert blocks.allocated == MARGIN + MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->allocated == (MARGIN + MARGIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3866, __pyx_L4_error)
      }
    }
    #endif
+3867:         assert blocks.start == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->start == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3867, __pyx_L4_error)
      }
    }
    #endif
+3868:         assert blocks.endex == MARGIN
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks->endex == MARGIN) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3868, __pyx_L4_error)
      }
    }
    #endif
+3869:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3869, __pyx_L4_error)
      }
    }
    #endif
+3870:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3871: 
+3872:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3873:         blocks = Rack_Clear(blocks)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Clear(__pyx_v_blocks); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3873, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3874:         assert blocks != NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3874, __pyx_L4_error)
      }
    }
    #endif
+3875:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3875, __pyx_L4_error)
      }
    }
    #endif
+3876:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3877: 
 3878:     finally:
+3879:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      }
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ErrRestore(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0;
      __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3880: 
 3881: 
+3882: def test_Rack_At_First_Last():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_193test_Rack_At_First_Last(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_192test_Rack_At_First_Last[] = "test_Rack_At_First_Last()";
static PyMethodDef __pyx_mdef_7_test_c_193test_Rack_At_First_Last = {"test_Rack_At_First_Last", (PyCFunction)__pyx_pw_7_test_c_193test_Rack_At_First_Last, METH_NOARGS, __pyx_doc_7_test_c_192test_Rack_At_First_Last};
static PyObject *__pyx_pw_7_test_c_193test_Rack_At_First_Last(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_At_First_Last (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_192test_Rack_At_First_Last(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_192test_Rack_At_First_Last(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_At_First_Last", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_At_First_Last", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__311 = PyTuple_Pack(3, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__311)) __PYX_ERR(0, 3882, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__311);
  __Pyx_GIVEREF(__pyx_tuple__311);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_193test_Rack_At_First_Last, 0, __pyx_n_s_test_Rack_At_First_Last, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__312)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3882, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_At_First_Last, __pyx_t_1) < 0) __PYX_ERR(0, 3882, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__312 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__311, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_At_First_Last, 3882, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__312)) __PYX_ERR(0, 3882, __pyx_L1_error)
 3883:     cdef:
+3884:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3885:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3885, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3885, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3886:         size_t offset
 3887: 
+3888:     try:
  /*try:*/ {
+3889:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 3890: 
+3891:         assert Rack_First__(blocks) == blocks.blocks[blocks.start]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_First__(__pyx_v_blocks) == (__pyx_v_blocks->blocks[__pyx_v_blocks->start])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3891, __pyx_L4_error)
      }
    }
    #endif
+3892:         assert Rack_First_(blocks) == blocks.blocks[blocks.start]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_First_(__pyx_v_blocks) == (__pyx_v_blocks->blocks[__pyx_v_blocks->start])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3892, __pyx_L4_error)
      }
    }
    #endif
 3893: 
+3894:         assert Rack_Last__(blocks) == blocks.blocks[blocks.endex - 1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Last__(__pyx_v_blocks) == (__pyx_v_blocks->blocks[(__pyx_v_blocks->endex - 1)])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3894, __pyx_L4_error)
      }
    }
    #endif
+3895:         assert Rack_Last_(blocks) == blocks.blocks[blocks.endex - 1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Last_(__pyx_v_blocks) == (__pyx_v_blocks->blocks[(__pyx_v_blocks->endex - 1)])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3895, __pyx_L4_error)
      }
    }
    #endif
 3896: 
+3897:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+3898:             assert Rack_At__(blocks, offset) == <const Block_**>&blocks.blocks[blocks.start + offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_At__(__pyx_v_blocks, __pyx_v_offset) == ((Block_ const **)(&(__pyx_v_blocks->blocks[(__pyx_v_blocks->start + __pyx_v_offset)])))) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3898, __pyx_L4_error)
        }
      }
      #endif
+3899:             assert Rack_At_(blocks, offset) == &blocks.blocks[blocks.start + offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks, __pyx_v_offset) == (&(__pyx_v_blocks->blocks[(__pyx_v_blocks->start + __pyx_v_offset)]))) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3899, __pyx_L4_error)
        }
      }
      #endif
    }
  }
 3900: 
 3901:     finally:
+3902:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __pyx_t_6 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_10, __pyx_t_11);
      __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0;
      __pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3903: 
 3904: 
+3905: def test_Rack_Get_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_195test_Rack_Get_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_194test_Rack_Get_[] = "test_Rack_Get_()";
static PyMethodDef __pyx_mdef_7_test_c_195test_Rack_Get_ = {"test_Rack_Get_", (PyCFunction)__pyx_pw_7_test_c_195test_Rack_Get_, METH_NOARGS, __pyx_doc_7_test_c_194test_Rack_Get_};
static PyObject *__pyx_pw_7_test_c_195test_Rack_Get_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Get_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_194test_Rack_Get_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_194test_Rack_Get_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Get_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Rack_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__313 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__313)) __PYX_ERR(0, 3905, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__313);
  __Pyx_GIVEREF(__pyx_tuple__313);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_195test_Rack_Get_, 0, __pyx_n_s_test_Rack_Get, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__314)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3905, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Get, __pyx_t_1) < 0) __PYX_ERR(0, 3905, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__314 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__313, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Get, 3905, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__314)) __PYX_ERR(0, 3905, __pyx_L1_error)
 3906:     cdef:
+3907:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3908:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3908, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3908, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3909:         size_t offset
+3910:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 3911: 
+3912:     try:
  /*try:*/ {
+3913:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3914:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+3915:             assert Rack_Get(blocks, offset) == blocks.blocks[blocks.start + offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3915, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == (__pyx_v_blocks->blocks[(__pyx_v_blocks->start + __pyx_v_offset)])) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3915, __pyx_L4_error)
        }
      }
      #endif
    }
+3916:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3917: 
+3918:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3919:         with pytest.raises(IndexError, match=match): Rack_Get(blocks,  size + 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3919, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__67, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3919, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3919, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_1 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3919, __pyx_L8_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size + 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3919, __pyx_L12_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L17_try_end;
          __pyx_L12_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_7) < 0) __PYX_ERR(0, 3919, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3919, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3919, __pyx_L14_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 3919, __pyx_L14_except_error)
            __pyx_t_16 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_1, __pyx_t_7);
              __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 3919, __pyx_L14_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L13_exception_handled;
          }
          __pyx_L14_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L13_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L17_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3919, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
      }
      goto __pyx_L21;
      __pyx_L8_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L21:;
    }
/* … */
  __pyx_tuple__67 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__67)) __PYX_ERR(0, 3919, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__67);
  __Pyx_GIVEREF(__pyx_tuple__67);
+3920:         with pytest.raises(IndexError, match=match): Rack_Get(blocks,  99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3920, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3920, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3920, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3920, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__68, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3920, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3920, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3920, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_7 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3920, __pyx_L22_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 99); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3920, __pyx_L26_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L31_try_end;
          __pyx_L26_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_1) < 0) __PYX_ERR(0, 3920, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3920, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3920, __pyx_L28_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 3920, __pyx_L28_except_error)
            __pyx_t_15 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_7, __pyx_t_1);
              __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 3920, __pyx_L28_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L27_exception_handled;
          }
          __pyx_L28_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L27_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L31_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3920, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L25;
        }
        __pyx_L25:;
      }
      goto __pyx_L35;
      __pyx_L22_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L35:;
    }
/* … */
  __pyx_tuple__68 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(0, 3920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__68);
  __Pyx_GIVEREF(__pyx_tuple__68);
+3921:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3922: 
 3923:     finally:
+3924:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_17 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_11, __pyx_t_12);
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_17; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3925: 
 3926: 
+3927: def test_Rack_Get():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_197test_Rack_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_196test_Rack_Get[] = "test_Rack_Get()";
static PyMethodDef __pyx_mdef_7_test_c_197test_Rack_Get = {"test_Rack_Get", (PyCFunction)__pyx_pw_7_test_c_197test_Rack_Get, METH_NOARGS, __pyx_doc_7_test_c_196test_Rack_Get};
static PyObject *__pyx_pw_7_test_c_197test_Rack_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Get (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_196test_Rack_Get(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_196test_Rack_Get(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Get", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Rack_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__315 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__315)) __PYX_ERR(0, 3927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__315);
  __Pyx_GIVEREF(__pyx_tuple__315);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_197test_Rack_Get, 0, __pyx_n_s_test_Rack_Get_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__316)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3927, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Get_2, __pyx_t_1) < 0) __PYX_ERR(0, 3927, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__316 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__315, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Get_2, 3927, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__316)) __PYX_ERR(0, 3927, __pyx_L1_error)
 3928:     cdef:
+3929:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3930:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3930, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3930, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3931:         ssize_t offset
+3932:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 3933: 
+3934:     try:
  /*try:*/ {
+3935:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3936:         for offset in range(<ssize_t>size):
    __pyx_t_3 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+3937:             assert Rack_Get(blocks, offset) == blocks.blocks[blocks.start + <size_t>offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3937, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == (__pyx_v_blocks->blocks[(__pyx_v_blocks->start + ((size_t)__pyx_v_offset))])) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3937, __pyx_L4_error)
        }
      }
      #endif
    }
+3938:         for offset in range(-<ssize_t>size, 0):
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < 0; __pyx_t_3+=1) {
      __pyx_v_offset = __pyx_t_3;
+3939:             assert Rack_Get(blocks, offset) == blocks.blocks[blocks.start + size - <size_t>-offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3939, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == (__pyx_v_blocks->blocks[((__pyx_v_blocks->start + __pyx_v_size) - ((size_t)(-__pyx_v_offset)))])) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3939, __pyx_L4_error)
        }
      }
      #endif
    }
+3940:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 3941: 
+3942:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3943:         with pytest.raises(IndexError, match=match): Rack_Get(blocks,  <ssize_t>size + 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3943, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3943, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3943, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3943, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__69, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3943, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3943, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3943, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_1 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3943, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) + 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3943, __pyx_L14_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_7) < 0) __PYX_ERR(0, 3943, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3943, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3943, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 3943, __pyx_L16_except_error)
            __pyx_t_16 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_1, __pyx_t_7);
              __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 3943, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3943, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__69 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(0, 3943, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__69);
  __Pyx_GIVEREF(__pyx_tuple__69);
+3944:         with pytest.raises(IndexError, match=match): Rack_Get(blocks,  99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3944, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__70, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3944, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3944, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_7 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3944, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 99); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3944, __pyx_L28_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_1) < 0) __PYX_ERR(0, 3944, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3944, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3944, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 3944, __pyx_L30_except_error)
            __pyx_t_15 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_7, __pyx_t_1);
              __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 3944, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3944, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
/* … */
  __pyx_tuple__70 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__70)) __PYX_ERR(0, 3944, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__70);
  __Pyx_GIVEREF(__pyx_tuple__70);
+3945:         with pytest.raises(IndexError, match=match): Rack_Get(blocks, -<ssize_t>size - 1)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3945, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3945, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3945, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3945, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__71, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3945, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3945, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3945, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_1 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3945, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3945, __pyx_L42_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L47_try_end;
          __pyx_L42_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_7) < 0) __PYX_ERR(0, 3945, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3945, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3945, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 3945, __pyx_L44_except_error)
            __pyx_t_16 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_16) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_1, __pyx_t_7);
              __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 3945, __pyx_L44_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L43_exception_handled;
          }
          __pyx_L44_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L43_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L47_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3945, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L41;
        }
        __pyx_L41:;
      }
      goto __pyx_L51;
      __pyx_L38_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L51:;
    }
/* … */
  __pyx_tuple__71 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 3945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__71);
  __Pyx_GIVEREF(__pyx_tuple__71);
+3946:         with pytest.raises(IndexError, match=match): Rack_Get(blocks, -99)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3946, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__72, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 3946, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_8, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3946, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_7 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3946, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, -99L); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3946, __pyx_L56_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L61_try_end;
          __pyx_L56_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Get", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_1) < 0) __PYX_ERR(0, 3946, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_8, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3946, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3946, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_16 < 0) __PYX_ERR(0, 3946, __pyx_L58_except_error)
            __pyx_t_15 = ((!(__pyx_t_16 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_8, __pyx_t_7, __pyx_t_1);
              __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 3946, __pyx_L58_except_error)
            }
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L57_exception_handled;
          }
          __pyx_L58_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L57_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L61_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3946, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L55;
        }
        __pyx_L55:;
      }
      goto __pyx_L65;
      __pyx_L52_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L65:;
    }
/* … */
  __pyx_tuple__72 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 3946, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__72);
  __Pyx_GIVEREF(__pyx_tuple__72);
+3947:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3948: 
 3949:     finally:
+3950:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_20 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_20);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_20);
      __pyx_t_17 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_20);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_20);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_11, __pyx_t_12);
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_20 = 0;
      __pyx_lineno = __pyx_t_17; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_19;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3951: 
 3952: 
+3953: def test_Rack_Set_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_199test_Rack_Set_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_198test_Rack_Set_[] = "test_Rack_Set_()";
static PyMethodDef __pyx_mdef_7_test_c_199test_Rack_Set_ = {"test_Rack_Set_", (PyCFunction)__pyx_pw_7_test_c_199test_Rack_Set_, METH_NOARGS, __pyx_doc_7_test_c_198test_Rack_Set_};
static PyObject *__pyx_pw_7_test_c_199test_Rack_Set_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Set_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_198test_Rack_Set_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_198test_Rack_Set_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  size_t __pyx_v_offset;
  size_t __pyx_v_offset2;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Set_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Rack_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__317 = PyTuple_Pack(8, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_offset2, __pyx_n_s_backup, __pyx_n_s_backup2, __pyx_n_s_block, __pyx_n_s_match); if (unlikely(!__pyx_tuple__317)) __PYX_ERR(0, 3953, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__317);
  __Pyx_GIVEREF(__pyx_tuple__317);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_199test_Rack_Set_, 0, __pyx_n_s_test_Rack_Set, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__318)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3953, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Set, __pyx_t_1) < 0) __PYX_ERR(0, 3953, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__318 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__317, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Set, 3953, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__318)) __PYX_ERR(0, 3953, __pyx_L1_error)
 3954:     cdef:
+3955:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3956:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3956, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3956, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3957:         size_t offset
 3958:         size_t offset2
+3959:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+3960:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
+3961:         Block_* block = NULL
  __pyx_v_block = NULL;
+3962:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 3963: 
+3964:     try:
  /*try:*/ {
+3965:         for offset in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+3966:             blocks = create_template_rack()
      __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3967:             backup2 = Rack_Get__(blocks, offset)
      __pyx_v_backup2 = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset);
+3968:             block = Block_Copy(backup2)
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_backup2); if (unlikely(__pyx_t_6 == ((Block_ *)NULL))) __PYX_ERR(0, 3968, __pyx_L4_error)
      __pyx_v_block = __pyx_t_6;
+3969:             for offset2 in range(block.start, block.endex):
      __pyx_t_7 = __pyx_v_block->endex;
      __pyx_t_8 = __pyx_t_7;
      for (__pyx_t_9 = __pyx_v_block->start; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
        __pyx_v_offset2 = __pyx_t_9;
+3970:                 block.data[offset2] ^= 0xFF
        __pyx_t_10 = __pyx_v_offset2;
        (__pyx_v_block->data[__pyx_t_10]) = ((__pyx_v_block->data[__pyx_t_10]) ^ 0xFF);
      }
+3971:             Rack_Set_(blocks, offset, block, &backup)
      __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 3971, __pyx_L4_error)
+3972:             assert backup == backup2
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3972, __pyx_L4_error)
        }
      }
      #endif
+3973:             assert Rack_Get__(blocks, offset) == block
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset) == __pyx_v_block) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3973, __pyx_L4_error)
        }
      }
      #endif
+3974:             block = NULL  # invalidate pointer
      __pyx_v_block = NULL;
+3975:             backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+3976:             blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
    }
 3977: 
+3978:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3979:         with pytest.raises(IndexError, match=match): Rack_Set_(blocks,  size + 1, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3979, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3979, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3979, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3979, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__73, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3979, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3979, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3979, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_1 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3979, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set_(__pyx_v_blocks, (__pyx_v_size + 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 3979, __pyx_L14_error)
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_1, &__pyx_t_12) < 0) __PYX_ERR(0, 3979, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_1, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 3979, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 3979, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 3979, __pyx_L16_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_1, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_1 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 3979, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 3979, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__73 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__73)) __PYX_ERR(0, 3979, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__73);
  __Pyx_GIVEREF(__pyx_tuple__73);
+3980:         with pytest.raises(IndexError, match=match): Rack_Set_(blocks,  99, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3980, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3980, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3980, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 3980, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__74, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3980, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3980, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3980, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 3980, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set_(__pyx_v_blocks, 99, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 3980, __pyx_L28_error)
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_1) < 0) __PYX_ERR(0, 3980, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 3980, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 3980, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 3980, __pyx_L30_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_1);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 3980, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 3980, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
/* … */
  __pyx_tuple__74 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(0, 3980, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__74);
  __Pyx_GIVEREF(__pyx_tuple__74);
+3981:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 3982: 
 3983:     finally:
+3984:         backup = Block_Free(backup)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+3985:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_16, __pyx_t_17);
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 3986: 
 3987: 
+3988: def test_Rack_Set():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_201test_Rack_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_200test_Rack_Set[] = "test_Rack_Set()";
static PyMethodDef __pyx_mdef_7_test_c_201test_Rack_Set = {"test_Rack_Set", (PyCFunction)__pyx_pw_7_test_c_201test_Rack_Set, METH_NOARGS, __pyx_doc_7_test_c_200test_Rack_Set};
static PyObject *__pyx_pw_7_test_c_201test_Rack_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Set (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_200test_Rack_Set(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_200test_Rack_Set(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_offset;
  size_t __pyx_v_offset2;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  Block_ *__pyx_v_block;
  PyObject *__pyx_v_match = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Set", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("_test_c.test_Rack_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__319 = PyTuple_Pack(8, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_offset2, __pyx_n_s_backup, __pyx_n_s_backup2, __pyx_n_s_block, __pyx_n_s_match); if (unlikely(!__pyx_tuple__319)) __PYX_ERR(0, 3988, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__319);
  __Pyx_GIVEREF(__pyx_tuple__319);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_201test_Rack_Set, 0, __pyx_n_s_test_Rack_Set_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__320)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3988, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Set_2, __pyx_t_1) < 0) __PYX_ERR(0, 3988, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__320 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__319, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Set_2, 3988, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__320)) __PYX_ERR(0, 3988, __pyx_L1_error)
 3989:     cdef:
+3990:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3991:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 3991, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3991, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3992:         ssize_t offset
 3993:         size_t offset2
+3994:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+3995:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
+3996:         Block_* block = NULL
  __pyx_v_block = NULL;
+3997:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
 3998: 
+3999:     try:
  /*try:*/ {
+4000:         for offset in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_3 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_offset = __pyx_t_5;
+4001:             blocks = create_template_rack()
      __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4002:             backup2 = Rack_Get(blocks, offset)
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4002, __pyx_L4_error)
      __pyx_v_backup2 = __pyx_t_6;
+4003:             block = Block_Copy(backup2)
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Block_Copy(__pyx_v_backup2); if (unlikely(__pyx_t_6 == ((Block_ *)NULL))) __PYX_ERR(0, 4003, __pyx_L4_error)
      __pyx_v_block = __pyx_t_6;
+4004:             for offset2 in range(block.start, block.endex):
      __pyx_t_7 = __pyx_v_block->endex;
      __pyx_t_8 = __pyx_t_7;
      for (__pyx_t_9 = __pyx_v_block->start; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
        __pyx_v_offset2 = __pyx_t_9;
+4005:                 block.data[offset2] ^= 0xFF
        __pyx_t_10 = __pyx_v_offset2;
        (__pyx_v_block->data[__pyx_t_10]) = ((__pyx_v_block->data[__pyx_t_10]) ^ 0xFF);
      }
+4006:             Rack_Set(blocks, offset, block, &backup)
      __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 4006, __pyx_L4_error)
+4007:             assert backup == backup2
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 4007, __pyx_L4_error)
        }
      }
      #endif
+4008:             assert Rack_Get(blocks, offset) == block
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4008, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_block) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 4008, __pyx_L4_error)
        }
      }
      #endif
+4009:             block = NULL  # invalidate pointer
      __pyx_v_block = NULL;
+4010:             backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4011:             blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
    }
 4012: 
+4013:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4014:         with pytest.raises(IndexError, match=match): Rack_Set(blocks,  <ssize_t>size + 1, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4014, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4014, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4014, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4014, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__75, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4014, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4014, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4014, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_1 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4014, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) + 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 4014, __pyx_L14_error)
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L19_try_end;
          __pyx_L14_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_1, &__pyx_t_12) < 0) __PYX_ERR(0, 4014, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_1, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4014, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 4014, __pyx_L16_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 4014, __pyx_L16_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_1, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_1 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 4014, __pyx_L16_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L15_exception_handled;
          }
          __pyx_L16_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L15_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L19_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4014, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L13;
        }
        __pyx_L13:;
      }
      goto __pyx_L23;
      __pyx_L10_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L23:;
    }
/* … */
  __pyx_tuple__75 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__75)) __PYX_ERR(0, 4014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__75);
  __Pyx_GIVEREF(__pyx_tuple__75);
+4015:         with pytest.raises(IndexError, match=match): Rack_Set(blocks,  99, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4015, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4015, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4015, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4015, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__76, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4015, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4015, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4015, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4015, __pyx_L24_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set(__pyx_v_blocks, 99, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 4015, __pyx_L28_error)
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L33_try_end;
          __pyx_L28_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_1) < 0) __PYX_ERR(0, 4015, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4015, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 4015, __pyx_L30_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 4015, __pyx_L30_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_1);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4015, __pyx_L30_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L29_exception_handled;
          }
          __pyx_L30_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L29_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L33_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 4015, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L27;
        }
        __pyx_L27:;
      }
      goto __pyx_L37;
      __pyx_L24_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L37:;
    }
/* … */
  __pyx_tuple__76 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__76)) __PYX_ERR(0, 4015, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__76);
  __Pyx_GIVEREF(__pyx_tuple__76);
+4016:         with pytest.raises(IndexError, match=match): Rack_Set(blocks, -<ssize_t>size - 1, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4016, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4016, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4016, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4016, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__77, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4016, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4016, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_12 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4016, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_12, function);
        }
      }
      __pyx_t_1 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4016, __pyx_L38_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 4016, __pyx_L42_error)
          }
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          goto __pyx_L47_try_end;
          __pyx_L42_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_1, &__pyx_t_12) < 0) __PYX_ERR(0, 4016, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_1, __pyx_t_12); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4016, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 4016, __pyx_L44_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_20 < 0) __PYX_ERR(0, 4016, __pyx_L44_except_error)
            __pyx_t_21 = ((!(__pyx_t_20 != 0)) != 0);
            if (__pyx_t_21) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_12);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_1, __pyx_t_12);
              __pyx_t_13 = 0; __pyx_t_1 = 0; __pyx_t_12 = 0; 
              __PYX_ERR(0, 4016, __pyx_L44_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L43_exception_handled;
          }
          __pyx_L44_except_error:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          goto __pyx_L4_error;
          __pyx_L43_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
          __pyx_L47_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4016, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
          }
          goto __pyx_L41;
        }
        __pyx_L41:;
      }
      goto __pyx_L51;
      __pyx_L38_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L51:;
    }
/* … */
  __pyx_tuple__77 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__77)) __PYX_ERR(0, 4016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__77);
  __Pyx_GIVEREF(__pyx_tuple__77);
+4017:         with pytest.raises(IndexError, match=match): Rack_Set(blocks, -99, NULL, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_pytest); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4017, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4017, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4017, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4017, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__78, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4017, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_14 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_exit); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4017, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_14);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_13, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4017, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_12 = (__pyx_t_15) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_15) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4017, __pyx_L52_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_11 = __pyx_f_11cbytesparse_2_c_Rack_Set(__pyx_v_blocks, -99L, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_2_c_vint)-1))) __PYX_ERR(0, 4017, __pyx_L56_error)
          }
          __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L61_try_end;
          __pyx_L56_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Set", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_1) < 0) __PYX_ERR(0, 4017, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_15 = PyTuple_Pack(3, __pyx_t_13, __pyx_t_12, __pyx_t_1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4017, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_15);
            __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_15, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 4017, __pyx_L58_except_error)
            __Pyx_GOTREF(__pyx_t_19);
            __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_19);
            __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
            if (__pyx_t_21 < 0) __PYX_ERR(0, 4017, __pyx_L58_except_error)
            __pyx_t_20 = ((!(__pyx_t_21 != 0)) != 0);
            if (__pyx_t_20) {
              __Pyx_GIVEREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_13, __pyx_t_12, __pyx_t_1);
              __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4017, __pyx_L58_except_error)
            }
            __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L57_exception_handled;
          }
          __pyx_L58_except_error:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          goto __pyx_L4_error;
          __pyx_L57_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_18);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_17, __pyx_t_16);
          __pyx_L61_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_14) {
            __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 4017, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          }
          goto __pyx_L55;
        }
        __pyx_L55:;
      }
      goto __pyx_L65;
      __pyx_L52_error:;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L4_error;
      __pyx_L65:;
    }
/* … */
  __pyx_tuple__78 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__78)) __PYX_ERR(0, 4017, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__78);
  __Pyx_GIVEREF(__pyx_tuple__78);
+4018:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4019: 
 4020:     finally:
+4021:         backup = Block_Free(backup)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4022:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_25);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_16, &__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __Pyx_XGOTREF(__pyx_t_25);
      __pyx_t_22 = __pyx_lineno; __pyx_t_23 = __pyx_clineno; __pyx_t_24 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_XGIVEREF(__pyx_t_25);
        __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_25);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_XGIVEREF(__pyx_t_17);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_16, __pyx_t_17);
      __pyx_t_14 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_25 = 0;
      __pyx_lineno = __pyx_t_22; __pyx_clineno = __pyx_t_23; __pyx_filename = __pyx_t_24;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4023: 
 4024: 
+4025: def test_Rack_Pop__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_203test_Rack_Pop__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_202test_Rack_Pop__[] = "test_Rack_Pop__()";
static PyMethodDef __pyx_mdef_7_test_c_203test_Rack_Pop__ = {"test_Rack_Pop__", (PyCFunction)__pyx_pw_7_test_c_203test_Rack_Pop__, METH_NOARGS, __pyx_doc_7_test_c_202test_Rack_Pop__};
static PyObject *__pyx_pw_7_test_c_203test_Rack_Pop__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_202test_Rack_Pop__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_202test_Rack_Pop__(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop__", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Rack_Pop__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__321 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_backup, __pyx_n_s_backup2); if (unlikely(!__pyx_tuple__321)) __PYX_ERR(0, 4025, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__321);
  __Pyx_GIVEREF(__pyx_tuple__321);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_203test_Rack_Pop__, 0, __pyx_n_s_test_Rack_Pop, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__322)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4025, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop, __pyx_t_1) < 0) __PYX_ERR(0, 4025, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__322 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__321, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop, 4025, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__322)) __PYX_ERR(0, 4025, __pyx_L1_error)
 4026:     cdef:
+4027:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4028:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4028, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4028, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4029:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
+4030:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4031:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4032:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4033: 
+4034:     try:
  /*try:*/ {
+4035:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4036:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4036, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4037:         blocks = Rack_Pop__(blocks, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop__(__pyx_v_blocks, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4037, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4038:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4038, __pyx_L4_error)
      }
    }
    #endif
+4039:         temp = create_rack(TEMPLATE_BLOCKS[:-1])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4039, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4039, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4040:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4040, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4040, __pyx_L4_error)
      }
    }
    #endif
+4041:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4041, __pyx_L4_error)
      }
    }
    #endif
+4042:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4042, __pyx_L4_error)
      }
    }
    #endif
+4043:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4044:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4045:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4046: 
+4047:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4047, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4048:         with pytest.raises(IndexError, match=match): Rack_Pop__(blocks, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4048, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4048, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4048, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4048, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__79, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4048, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4048, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4048, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_1 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4048, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop__(__pyx_v_blocks, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4048, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop__", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_1, &__pyx_t_6) < 0) __PYX_ERR(0, 4048, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4048, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4048, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 4048, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_1, __pyx_t_6);
              __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 4048, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4048, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__79 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__79)) __PYX_ERR(0, 4048, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__79);
  __Pyx_GIVEREF(__pyx_tuple__79);
+4049:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4050: 
 4051:     finally:
+4052:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4053:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4054:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_12, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4055: 
 4056: 
+4057: def test_Rack_Pop_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_205test_Rack_Pop_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_204test_Rack_Pop_[] = "test_Rack_Pop_()";
static PyMethodDef __pyx_mdef_7_test_c_205test_Rack_Pop_ = {"test_Rack_Pop_", (PyCFunction)__pyx_pw_7_test_c_205test_Rack_Pop_, METH_NOARGS, __pyx_doc_7_test_c_204test_Rack_Pop_};
static PyObject *__pyx_pw_7_test_c_205test_Rack_Pop_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_204test_Rack_Pop_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_204test_Rack_Pop_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Rack_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__323 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_backup, __pyx_n_s_backup2, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__323)) __PYX_ERR(0, 4057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__323);
  __Pyx_GIVEREF(__pyx_tuple__323);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_205test_Rack_Pop_, 0, __pyx_n_s_test_Rack_Pop_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__324)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop_2, __pyx_t_1) < 0) __PYX_ERR(0, 4057, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__324 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__323, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop_2, 4057, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__324)) __PYX_ERR(0, 4057, __pyx_L1_error)
 4058:     cdef:
+4059:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4060:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4060, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4060, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4061:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
+4062:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4063:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4064:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4065:         size_t offset
 4066: 
+4067:     try:
  /*try:*/ {
+4068:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4069:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4069, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4070:         blocks = Rack_Pop_(blocks, size - 1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks, (__pyx_v_size - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4070, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4071:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4071, __pyx_L4_error)
      }
    }
    #endif
+4072:         temp = create_rack(TEMPLATE_BLOCKS[:-1])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4072, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4072, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4073:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4073, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4073, __pyx_L4_error)
      }
    }
    #endif
+4074:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4074, __pyx_L4_error)
      }
    }
    #endif
+4075:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4075, __pyx_L4_error)
      }
    }
    #endif
+4076:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4077:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4078:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4079: 
+4080:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4081:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4081, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4082:         blocks = Rack_Pop_(blocks, 0, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4082, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4083:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4083, __pyx_L4_error)
      }
    }
    #endif
+4084:         temp = create_rack(TEMPLATE_BLOCKS[1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4084, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4084, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4085:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4085, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4085, __pyx_L4_error)
      }
    }
    #endif
+4086:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4086, __pyx_L4_error)
      }
    }
    #endif
+4087:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4087, __pyx_L4_error)
      }
    }
    #endif
+4088:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4089:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4090:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4091: 
+4092:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+4093:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4094:         backup2 = Rack_Get(blocks, offset)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4094, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4095:         blocks = Rack_Pop_(blocks, offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4095, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4096:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4096, __pyx_L4_error)
      }
    }
    #endif
+4097:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + TEMPLATE_BLOCKS[offset + 1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4097, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4097, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4097, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, (__pyx_v_offset + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4097, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4097, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_7));
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+4098:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4098, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4098, __pyx_L4_error)
      }
    }
    #endif
+4099:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4099, __pyx_L4_error)
      }
    }
    #endif
+4100:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4100, __pyx_L4_error)
      }
    }
    #endif
+4101:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4102:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4103:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4104: 
+4105:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4105, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4106:         with pytest.raises(IndexError, match=match): Rack_Pop_(blocks, 0, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4106, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4106, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4106, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4106, __pyx_L4_error)
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__80, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4106, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4106, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4106, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_7 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4106, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks, 0, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4106, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 4106, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_1, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4106, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4106, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 4106, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_7, __pyx_t_6);
              __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 4106, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4106, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__80 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__80)) __PYX_ERR(0, 4106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__80);
  __Pyx_GIVEREF(__pyx_tuple__80);
+4107:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4108: 
+4109:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4110:         with pytest.raises(IndexError, match=match): Rack_Pop_(blocks, size, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4110, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4110, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4110, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4110, __pyx_L4_error)
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__81, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4110, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4110, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4110, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      __pyx_t_6 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4110, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop_(__pyx_v_blocks, __pyx_v_size, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4110, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(0, 4110, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_1, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4110, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4110, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 4110, __pyx_L26_except_error)
            __pyx_t_5 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_5) {
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_7);
              __Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_6, __pyx_t_7);
              __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_7 = 0; 
              __PYX_ERR(0, 4110, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4110, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__81 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__81)) __PYX_ERR(0, 4110, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__81);
  __Pyx_GIVEREF(__pyx_tuple__81);
+4111:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4112: 
 4113:     finally:
+4114:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4115:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4116:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_10, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4117: 
 4118: 
+4119: def test_Rack_Pop():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_207test_Rack_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_206test_Rack_Pop[] = "test_Rack_Pop()";
static PyMethodDef __pyx_mdef_7_test_c_207test_Rack_Pop = {"test_Rack_Pop", (PyCFunction)__pyx_pw_7_test_c_207test_Rack_Pop, METH_NOARGS, __pyx_doc_7_test_c_206test_Rack_Pop};
static PyObject *__pyx_pw_7_test_c_207test_Rack_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_206test_Rack_Pop(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_206test_Rack_Pop(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Pop", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Rack_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__325 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_backup, __pyx_n_s_backup2, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__325)) __PYX_ERR(0, 4119, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__325);
  __Pyx_GIVEREF(__pyx_tuple__325);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_207test_Rack_Pop, 0, __pyx_n_s_test_Rack_Pop_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__326)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4119, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop_3, __pyx_t_1) < 0) __PYX_ERR(0, 4119, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__326 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__325, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop_3, 4119, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__326)) __PYX_ERR(0, 4119, __pyx_L1_error)
 4120:     cdef:
+4121:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4122:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4122, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4122, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4123:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
+4124:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4125:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4126:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4127:         ssize_t offset
 4128: 
+4129:     try:
  /*try:*/ {
+4130:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4131:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4131, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4132:         blocks = Rack_Pop(blocks, <ssize_t>size - 1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4132, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4133:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4133, __pyx_L4_error)
      }
    }
    #endif
+4134:         temp = create_rack(TEMPLATE_BLOCKS[:-1])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4134, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4134, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4135:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4135, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4135, __pyx_L4_error)
      }
    }
    #endif
+4136:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4136, __pyx_L4_error)
      }
    }
    #endif
+4137:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4137, __pyx_L4_error)
      }
    }
    #endif
+4138:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4139:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4140:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4141: 
+4142:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4143:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4143, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4144:         blocks = Rack_Pop(blocks, -1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, -1L, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4144, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4145:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4145, __pyx_L4_error)
      }
    }
    #endif
+4146:         temp = create_rack(TEMPLATE_BLOCKS[:-1])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4146, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4146, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4147:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4147, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4147, __pyx_L4_error)
      }
    }
    #endif
+4148:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4148, __pyx_L4_error)
      }
    }
    #endif
+4149:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4149, __pyx_L4_error)
      }
    }
    #endif
+4150:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4151:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4152:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4153: 
+4154:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4155:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4155, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4156:         blocks = Rack_Pop(blocks, 0, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4156, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4157:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4157, __pyx_L4_error)
      }
    }
    #endif
+4158:         temp = create_rack(TEMPLATE_BLOCKS[1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4158, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4158, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4159:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4159, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4159, __pyx_L4_error)
      }
    }
    #endif
+4160:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4160, __pyx_L4_error)
      }
    }
    #endif
+4161:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4161, __pyx_L4_error)
      }
    }
    #endif
+4162:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4163:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4164:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4165: 
+4166:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4167:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4167, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4168:         blocks = Rack_Pop(blocks, -<ssize_t>size, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, (-((Py_ssize_t)__pyx_v_size)), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4168, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4169:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4169, __pyx_L4_error)
      }
    }
    #endif
+4170:         temp = create_rack(TEMPLATE_BLOCKS[1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4170, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4170, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4171:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4171, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4171, __pyx_L4_error)
      }
    }
    #endif
+4172:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4172, __pyx_L4_error)
      }
    }
    #endif
+4173:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4173, __pyx_L4_error)
      }
    }
    #endif
+4174:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4175:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4176:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4177: 
+4178:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4179:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4180:         backup2 = Rack_Get(blocks, size >> 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size >> 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4180, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4181:         blocks = Rack_Pop(blocks, offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4181, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4182:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4182, __pyx_L4_error)
      }
    }
    #endif
+4183:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + TEMPLATE_BLOCKS[offset + 1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4183, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4183, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4183, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, (__pyx_v_offset + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4183, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4183, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_7));
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+4184:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4184, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4184, __pyx_L4_error)
      }
    }
    #endif
+4185:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4185, __pyx_L4_error)
      }
    }
    #endif
+4186:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4186, __pyx_L4_error)
      }
    }
    #endif
+4187:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4188:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4189:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4190: 
+4191:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4192:         blocks =create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4193:         backup2 = Rack_Get(blocks, size - (size >> 1))
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - (__pyx_v_size >> 1))); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4193, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4194:         blocks = Rack_Pop(blocks, -offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, (-__pyx_v_offset), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4194, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4195:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4195, __pyx_L4_error)
      }
    }
    #endif
+4196:         temp = create_rack(TEMPLATE_BLOCKS[:-offset] + TEMPLATE_BLOCKS[-offset + 1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4196, __pyx_L4_error)
    }
    __pyx_t_7 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, (-__pyx_v_offset)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4196, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4196, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, ((-__pyx_v_offset) + 1), PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4196, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_1 = PyNumber_Add(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4196, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4197:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4197, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4197, __pyx_L4_error)
      }
    }
    #endif
+4198:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4198, __pyx_L4_error)
      }
    }
    #endif
+4199:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4199, __pyx_L4_error)
      }
    }
    #endif
+4200:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4201:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4202:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4203: 
+4204:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4204, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4205:         with pytest.raises(IndexError, match=match): Rack_Pop(blocks,  0, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4205, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4205, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4205, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4205, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__82, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4205, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4205, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4205, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_1 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4205, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, 0, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4205, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_1, &__pyx_t_6) < 0) __PYX_ERR(0, 4205, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4205, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4205, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 4205, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_1, __pyx_t_6);
              __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 4205, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4205, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__82 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__82)) __PYX_ERR(0, 4205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__82);
  __Pyx_GIVEREF(__pyx_tuple__82);
+4206:         with pytest.raises(IndexError, match=match): Rack_Pop(blocks, -1, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4206, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4206, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4206, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4206, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__83, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4206, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4206, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4206, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_6 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4206, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, -1L, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4206, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_6, &__pyx_t_1) < 0) __PYX_ERR(0, 4206, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4206, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4206, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 4206, __pyx_L26_except_error)
            __pyx_t_5 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_5) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_6, __pyx_t_1);
              __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4206, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4206, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__83 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__83)) __PYX_ERR(0, 4206, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__83);
  __Pyx_GIVEREF(__pyx_tuple__83);
+4207:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4208: 
+4209:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4210:         with pytest.raises(IndexError, match=match): Rack_Pop(blocks, size, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4210, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4210, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4210, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4210, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__84, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4210, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4210, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4210, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_1 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4210, __pyx_L34_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, __pyx_v_size, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4210, __pyx_L38_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L43_try_end;
          __pyx_L38_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_1, &__pyx_t_6) < 0) __PYX_ERR(0, 4210, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4210, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4210, __pyx_L40_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 4210, __pyx_L40_except_error)
            __pyx_t_14 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_1, __pyx_t_6);
              __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 4210, __pyx_L40_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L39_exception_handled;
          }
          __pyx_L40_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L39_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L43_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4210, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L37;
        }
        __pyx_L37:;
      }
      goto __pyx_L47;
      __pyx_L34_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L47:;
    }
/* … */
  __pyx_tuple__84 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(0, 4210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__84);
  __Pyx_GIVEREF(__pyx_tuple__84);
+4211:         with pytest.raises(IndexError, match=match): Rack_Pop(blocks, -<ssize_t>size - 1, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytest); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4211, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4211, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4211, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4211, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__85, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4211, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4211, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4211, __pyx_L48_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_6 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4211, __pyx_L48_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Pop(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4211, __pyx_L52_error)
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L57_try_end;
          __pyx_L52_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Pop", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_6, &__pyx_t_1) < 0) __PYX_ERR(0, 4211, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4211, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4211, __pyx_L54_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 4211, __pyx_L54_except_error)
            __pyx_t_5 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_5) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_6);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_6, __pyx_t_1);
              __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4211, __pyx_L54_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L53_exception_handled;
          }
          __pyx_L54_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L4_error;
          __pyx_L53_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L57_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4211, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L51;
        }
        __pyx_L51:;
      }
      goto __pyx_L61;
      __pyx_L48_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L61:;
    }
/* … */
  __pyx_tuple__85 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__85)) __PYX_ERR(0, 4211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__85);
  __Pyx_GIVEREF(__pyx_tuple__85);
+4212:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4213: 
 4214:     finally:
+4215:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4216:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4217:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_12, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_10, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_10, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4218: 
 4219: 
+4220: def test_Rack_PopLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_209test_Rack_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_208test_Rack_PopLeft[] = "test_Rack_PopLeft()";
static PyMethodDef __pyx_mdef_7_test_c_209test_Rack_PopLeft = {"test_Rack_PopLeft", (PyCFunction)__pyx_pw_7_test_c_209test_Rack_PopLeft, METH_NOARGS, __pyx_doc_7_test_c_208test_Rack_PopLeft};
static PyObject *__pyx_pw_7_test_c_209test_Rack_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_PopLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_208test_Rack_PopLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_208test_Rack_PopLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_backup;
  Block_ *__pyx_v_backup2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_PopLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Rack_PopLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__327 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_backup, __pyx_n_s_backup2); if (unlikely(!__pyx_tuple__327)) __PYX_ERR(0, 4220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__327);
  __Pyx_GIVEREF(__pyx_tuple__327);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_209test_Rack_PopLeft, 0, __pyx_n_s_test_Rack_PopLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__328)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_PopLeft, __pyx_t_1) < 0) __PYX_ERR(0, 4220, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__328 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__327, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_PopLeft, 4220, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__328)) __PYX_ERR(0, 4220, __pyx_L1_error)
 4221:     cdef:
+4222:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4223:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4223, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4223, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4224:         str match = 'pop index out of range'
  __Pyx_INCREF(__pyx_kp_u_pop_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_pop_index_out_of_range;
+4225:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4226:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4227:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4228: 
+4229:     try:
  /*try:*/ {
+4230:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4231:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4231, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4232:         blocks = Rack_PopLeft(blocks, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_PopLeft(__pyx_v_blocks, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4232, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4233:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4233, __pyx_L4_error)
      }
    }
    #endif
+4234:         temp = create_rack(TEMPLATE_BLOCKS[1:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4234, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4234, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4235:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4235, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4235, __pyx_L4_error)
      }
    }
    #endif
+4236:         assert backup == backup2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup == __pyx_v_backup2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4236, __pyx_L4_error)
      }
    }
    #endif
+4237:         assert backup.references == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_backup->references == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4237, __pyx_L4_error)
      }
    }
    #endif
+4238:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4239:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4240:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4241: 
+4242:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4242, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4243:         with pytest.raises(IndexError, match=match): Rack_PopLeft(blocks, NULL)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4243, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__86, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4243, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_6 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4243, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      __pyx_t_1 = (__pyx_t_9) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_9) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4243, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_PopLeft(__pyx_v_blocks, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4243, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_PopLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_1, &__pyx_t_6) < 0) __PYX_ERR(0, 4243, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4243, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_9, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4243, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_5 < 0) __PYX_ERR(0, 4243, __pyx_L12_except_error)
            __pyx_t_14 = ((!(__pyx_t_5 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_6);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_1, __pyx_t_6);
              __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = 0; 
              __PYX_ERR(0, 4243, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_8) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4243, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__86 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(0, 4243, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__86);
  __Pyx_GIVEREF(__pyx_tuple__86);
+4244:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4245: 
 4246:     finally:
+4247:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4248:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_backup);
+4249:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_13, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_12, &__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_15 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_13, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_12, __pyx_t_11);
      __pyx_t_8 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_10 = 0; __pyx_t_13 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_15; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4250: 
 4251: 
+4252: def test_Rack_Insert_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_211test_Rack_Insert_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_210test_Rack_Insert_[] = "test_Rack_Insert_()";
static PyMethodDef __pyx_mdef_7_test_c_211test_Rack_Insert_ = {"test_Rack_Insert_", (PyCFunction)__pyx_pw_7_test_c_211test_Rack_Insert_, METH_NOARGS, __pyx_doc_7_test_c_210test_Rack_Insert_};
static PyObject *__pyx_pw_7_test_c_211test_Rack_Insert_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Insert_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_210test_Rack_Insert_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_210test_Rack_Insert_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_block;
  size_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Insert_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("_test_c.test_Rack_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__329 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_block, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__329)) __PYX_ERR(0, 4252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__329);
  __Pyx_GIVEREF(__pyx_tuple__329);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_211test_Rack_Insert_, 0, __pyx_n_s_test_Rack_Insert, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__330)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Insert, __pyx_t_1) < 0) __PYX_ERR(0, 4252, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__330 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__329, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Insert, 4252, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__330)) __PYX_ERR(0, 4252, __pyx_L1_error)
 4253:     cdef:
+4254:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4255:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4255, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4255, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4256:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
+4257:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4258:         Block_* block = NULL
  __pyx_v_block = NULL;
 4259:         size_t offset
 4260: 
+4261:     try:
  /*try:*/ {
+4262:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4262, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4263:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4263, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4263, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4263, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4264:         blocks = Rack_Insert_(blocks, 0, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4264, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4265:         block = NULL
    __pyx_v_block = NULL;
+4266:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4266, __pyx_L4_error)
      }
    }
    #endif
+4267:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4268:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4268, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4268, __pyx_L4_error)
      }
    }
    #endif
+4269:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4270:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4271: 
+4272:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4273:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4273, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4273, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4273, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4274:         blocks = Rack_Insert_(blocks, 0, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4274, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4275:         block = NULL
    __pyx_v_block = NULL;
+4276:         assert Rack_Length(blocks) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4276, __pyx_L4_error)
      }
    }
    #endif
+4277:         temp = create_rack(RACK1 + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_RACK1, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4277, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4278:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4278, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4278, __pyx_L4_error)
      }
    }
    #endif
+4279:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4280:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4281: 
+4282:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4283:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4283, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4283, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4283, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4284:         blocks = Rack_Insert_(blocks, size, block)  # after
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, __pyx_v_size, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4284, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4285:         block = NULL
    __pyx_v_block = NULL;
+4286:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4286, __pyx_L4_error)
      }
    }
    #endif
+4287:         temp = create_rack(TEMPLATE_BLOCKS + RACK1)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4287, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4288:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4288, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4288, __pyx_L4_error)
      }
    }
    #endif
+4289:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4290:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4291: 
+4292:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+4293:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4294:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4294, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4294, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4294, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4295:         blocks = Rack_Insert_(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4295, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4296:         block = NULL
    __pyx_v_block = NULL;
+4297:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4297, __pyx_L4_error)
      }
    }
    #endif
+4298:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + RACK1 + TEMPLATE_BLOCKS[offset:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4298, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4298, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4298, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4298, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4298, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_8 = PyNumber_Add(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4298, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_8);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_8));
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+4299:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4299, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4299, __pyx_L4_error)
      }
    }
    #endif
+4300:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4301:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4302: 
+4303:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4303, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4303, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4303, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4304:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4304, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4305:         with pytest.raises(IndexError, match=match): Rack_Insert_(blocks, 1, block)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pytest); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4305, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4305, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4305, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4305, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__87, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4305, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4305, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4305, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_8 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4305, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, 1, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4305, __pyx_L10_error)
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_1) < 0) __PYX_ERR(0, 4305, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4305, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4305, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_6 < 0) __PYX_ERR(0, 4305, __pyx_L12_except_error)
            __pyx_t_15 = ((!(__pyx_t_6 != 0)) != 0);
            if (__pyx_t_15) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_8, __pyx_t_1);
              __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4305, __pyx_L12_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L4_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4305, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L19:;
    }
/* … */
  __pyx_tuple__87 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__87)) __PYX_ERR(0, 4305, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__87);
  __Pyx_GIVEREF(__pyx_tuple__87);
+4306:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4307: 
+4308:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4309:         with pytest.raises(IndexError, match=match): Rack_Insert_(blocks, size + 1, block)
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4309, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4309, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4309, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_v_match) < 0) __PYX_ERR(0, 4309, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__88, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4309, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4309, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_8 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4309, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_8);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_8, function);
        }
      }
      __pyx_t_1 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4309, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          /*try:*/ {
            __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert_(__pyx_v_blocks, (__pyx_v_size + 1), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4309, __pyx_L24_error)
          }
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_Insert_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 4309, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_10 = PyTuple_Pack(3, __pyx_t_7, __pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4309, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_10, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4309, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (__pyx_t_15 < 0) __PYX_ERR(0, 4309, __pyx_L26_except_error)
            __pyx_t_6 = ((!(__pyx_t_15 != 0)) != 0);
            if (__pyx_t_6) {
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_1, __pyx_t_8);
              __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_8 = 0; 
              __PYX_ERR(0, 4309, __pyx_L26_except_error)
            }
            __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          goto __pyx_L4_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4309, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_error;
      __pyx_L33:;
    }
/* … */
  __pyx_tuple__88 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(0, 4309, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__88);
  __Pyx_GIVEREF(__pyx_tuple__88);
+4310:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4311: 
 4312:     finally:
+4313:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4314:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
+4315:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_19);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_19);
      __pyx_t_16 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_18 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_19);
      }
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_9, __pyx_t_11, __pyx_t_12);
      __pyx_t_9 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_19 = 0;
      __pyx_lineno = __pyx_t_16; __pyx_clineno = __pyx_t_17; __pyx_filename = __pyx_t_18;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4316: 
 4317: 
+4318: def test_Rack_Insert():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_213test_Rack_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_212test_Rack_Insert[] = "test_Rack_Insert()";
static PyMethodDef __pyx_mdef_7_test_c_213test_Rack_Insert = {"test_Rack_Insert", (PyCFunction)__pyx_pw_7_test_c_213test_Rack_Insert, METH_NOARGS, __pyx_doc_7_test_c_212test_Rack_Insert};
static PyObject *__pyx_pw_7_test_c_213test_Rack_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Insert (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_212test_Rack_Insert(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_212test_Rack_Insert(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  CYTHON_UNUSED PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_block;
  Py_ssize_t __pyx_v_offset;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Insert", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("_test_c.test_Rack_Insert", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__331 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_block, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__331)) __PYX_ERR(0, 4318, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__331);
  __Pyx_GIVEREF(__pyx_tuple__331);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_213test_Rack_Insert, 0, __pyx_n_s_test_Rack_Insert_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__332)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4318, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Insert_2, __pyx_t_1) < 0) __PYX_ERR(0, 4318, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__332 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__331, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Insert_2, 4318, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__332)) __PYX_ERR(0, 4318, __pyx_L1_error)
 4319:     cdef:
+4320:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4321:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4321, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4321, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4322:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
+4323:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4324:         Block_* block = NULL
  __pyx_v_block = NULL;
 4325:         ssize_t offset
 4326: 
+4327:     try:
  /*try:*/ {
+4328:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4328, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4329:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4329, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4329, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4329, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4330:         blocks = Rack_Insert(blocks, 0, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4330, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4331:         block = NULL
    __pyx_v_block = NULL;
+4332:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4332, __pyx_L4_error)
      }
    }
    #endif
+4333:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4334:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4334, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4334, __pyx_L4_error)
      }
    }
    #endif
+4335:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4336:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4337: 
+4338:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4338, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4339:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4339, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4339, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4339, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4340:         blocks = Rack_Insert(blocks, -1, block)  # before, over
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, -1L, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4340, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4341:         block = NULL
    __pyx_v_block = NULL;
+4342:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4342, __pyx_L4_error)
      }
    }
    #endif
+4343:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4344:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4344, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4344, __pyx_L4_error)
      }
    }
    #endif
+4345:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4346:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4347: 
+4348:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4348, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4349:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4349, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4349, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4349, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4350:         blocks = Rack_Insert(blocks, 1, block)  # after, over
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, 1, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4350, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4351:         block = NULL
    __pyx_v_block = NULL;
+4352:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4352, __pyx_L4_error)
      }
    }
    #endif
+4353:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4354:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4354, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4354, __pyx_L4_error)
      }
    }
    #endif
+4355:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4356:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4357: 
+4358:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4359:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4359, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4359, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4359, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4360:         blocks = Rack_Insert(blocks, 0, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4360, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4361:         block = NULL
    __pyx_v_block = NULL;
+4362:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4362, __pyx_L4_error)
      }
    }
    #endif
+4363:         temp = create_rack(RACK1 + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_RACK1, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4363, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4364:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4364, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4364, __pyx_L4_error)
      }
    }
    #endif
+4365:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4366:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4367: 
+4368:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4369:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4369, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4369, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4369, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4370:         blocks = Rack_Insert(blocks, -<ssize_t>size, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, (-((Py_ssize_t)__pyx_v_size)), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4370, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4371:         block = NULL
    __pyx_v_block = NULL;
+4372:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4372, __pyx_L4_error)
      }
    }
    #endif
+4373:         temp = create_rack(RACK1 + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_RACK1, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4373, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4374:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4374, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4374, __pyx_L4_error)
      }
    }
    #endif
+4375:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4376:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4377: 
+4378:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4379:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4379, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4379, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4379, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4380:         blocks = Rack_Insert(blocks, -<ssize_t>size - 1, block)  # before, over
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4380, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4381:         block = NULL
    __pyx_v_block = NULL;
+4382:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4382, __pyx_L4_error)
      }
    }
    #endif
+4383:         temp = create_rack(RACK1 + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_RACK1, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4383, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4384:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4384, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4384, __pyx_L4_error)
      }
    }
    #endif
+4385:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4386:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4387: 
+4388:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4389:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4389, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4389, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4389, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4390:         blocks = Rack_Insert(blocks, <ssize_t>size, block)  # after
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, ((Py_ssize_t)__pyx_v_size), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4390, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4391:         block = NULL
    __pyx_v_block = NULL;
+4392:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4392, __pyx_L4_error)
      }
    }
    #endif
+4393:         temp = create_rack(TEMPLATE_BLOCKS + RACK1)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4393, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4394:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4394, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4394, __pyx_L4_error)
      }
    }
    #endif
+4395:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4396:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4397: 
+4398:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4399:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4399, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4399, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4399, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4400:         blocks = Rack_Insert(blocks, <ssize_t>size + 1, block)  # after, over
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) + 1), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4400, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4401:         block = NULL
    __pyx_v_block = NULL;
+4402:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4402, __pyx_L4_error)
      }
    }
    #endif
+4403:         temp = create_rack(TEMPLATE_BLOCKS + RACK1)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4403, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4404:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4404, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4404, __pyx_L4_error)
      }
    }
    #endif
+4405:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4406:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4407: 
+4408:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4409:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4410:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4410, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4410, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4410, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4411:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4411, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4412:         block = NULL
    __pyx_v_block = NULL;
+4413:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4413, __pyx_L4_error)
      }
    }
    #endif
+4414:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + RACK1 + TEMPLATE_BLOCKS[offset:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4414, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4414, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4414, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4414, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4414, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_8 = PyNumber_Add(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4414, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_8);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_8));
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+4415:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4415, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4415, __pyx_L4_error)
      }
    }
    #endif
+4416:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4417:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4418: 
+4419:         offset = -<ssize_t>(size >> 1)  # half
    __pyx_v_offset = (-((Py_ssize_t)(__pyx_v_size >> 1)));
+4420:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4421:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4421, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4421, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4421, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4422:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4422, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4423:         block = NULL
    __pyx_v_block = NULL;
+4424:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4424, __pyx_L4_error)
      }
    }
    #endif
+4425:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + RACK1 + TEMPLATE_BLOCKS[offset:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4425, __pyx_L4_error)
    }
    __pyx_t_8 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4425, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_1 = PyNumber_Add(__pyx_t_8, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4425, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4425, __pyx_L4_error)
    }
    __pyx_t_8 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4425, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4425, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_7));
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+4426:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4426, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4426, __pyx_L4_error)
      }
    }
    #endif
+4427:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4428:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4429: 
+4430:         offset = -1  # before end
    __pyx_v_offset = -1L;
+4431:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4432:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4432, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4432, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4432, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4433:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4433, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4434:         block = NULL
    __pyx_v_block = NULL;
+4435:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4435, __pyx_L4_error)
      }
    }
    #endif
+4436:         temp = create_rack(TEMPLATE_BLOCKS[:offset] + RACK1 + TEMPLATE_BLOCKS[offset:])
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4436, __pyx_L4_error)
    }
    __pyx_t_7 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, 0, __pyx_v_offset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4436, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_8 = PyNumber_Add(__pyx_t_7, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4436, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_8);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    if (unlikely(__pyx_v_7_test_c_TEMPLATE_BLOCKS == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(0, 4436, __pyx_L4_error)
    }
    __pyx_t_7 = __Pyx_PyTuple_GetSlice(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_offset, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4436, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_1 = PyNumber_Add(__pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4436, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4437:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4437, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4437, __pyx_L4_error)
      }
    }
    #endif
+4438:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4439:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4440: 
 4441:     finally:
+4442:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4443:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
+4444:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14) < 0)) __Pyx_ErrFetch(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __pyx_t_9 = __pyx_lineno; __pyx_t_10 = __pyx_clineno; __pyx_t_11 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_17);
      }
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_ErrRestore(__pyx_t_12, __pyx_t_13, __pyx_t_14);
      __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
      __pyx_lineno = __pyx_t_9; __pyx_clineno = __pyx_t_10; __pyx_filename = __pyx_t_11;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4445: 
 4446: 
+4447: def test_Rack_Append():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_215test_Rack_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_214test_Rack_Append[] = "test_Rack_Append()";
static PyMethodDef __pyx_mdef_7_test_c_215test_Rack_Append = {"test_Rack_Append", (PyCFunction)__pyx_pw_7_test_c_215test_Rack_Append, METH_NOARGS, __pyx_doc_7_test_c_214test_Rack_Append};
static PyObject *__pyx_pw_7_test_c_215test_Rack_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Append (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_214test_Rack_Append(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_214test_Rack_Append(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  CYTHON_UNUSED PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_block;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Append", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_Append", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__333 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_block, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__333)) __PYX_ERR(0, 4447, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__333);
  __Pyx_GIVEREF(__pyx_tuple__333);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_215test_Rack_Append, 0, __pyx_n_s_test_Rack_Append, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__334)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4447, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Append, __pyx_t_1) < 0) __PYX_ERR(0, 4447, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__334 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__333, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Append, 4447, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__334)) __PYX_ERR(0, 4447, __pyx_L1_error)
 4448:     cdef:
+4449:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4450:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4450, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4450, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4451:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
+4452:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4453:         Block_* block = NULL
  __pyx_v_block = NULL;
 4454:         size_t offset
 4455: 
+4456:     try:
  /*try:*/ {
+4457:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4457, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4458:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4458, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4458, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4458, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4459:         blocks = Rack_Append(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Append(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4459, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4460:         block = NULL
    __pyx_v_block = NULL;
+4461:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4461, __pyx_L4_error)
      }
    }
    #endif
+4462:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4463:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4463, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4463, __pyx_L4_error)
      }
    }
    #endif
+4464:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4465:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4466: 
+4467:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4468:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4468, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4468, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4468, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4469:         blocks = Rack_Append(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Append(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4469, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4470:         block = NULL
    __pyx_v_block = NULL;
+4471:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4471, __pyx_L4_error)
      }
    }
    #endif
+4472:         temp = create_rack(TEMPLATE_BLOCKS + RACK1)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_RACK1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4472, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4473:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4473, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4473, __pyx_L4_error)
      }
    }
    #endif
+4474:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4475:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4476: 
 4477:     finally:
+4478:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4479:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
+4480:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4481: 
 4482: 
+4483: def test_Rack_AppendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_217test_Rack_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_216test_Rack_AppendLeft[] = "test_Rack_AppendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_217test_Rack_AppendLeft = {"test_Rack_AppendLeft", (PyCFunction)__pyx_pw_7_test_c_217test_Rack_AppendLeft, METH_NOARGS, __pyx_doc_7_test_c_216test_Rack_AppendLeft};
static PyObject *__pyx_pw_7_test_c_217test_Rack_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_AppendLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_216test_Rack_AppendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_216test_Rack_AppendLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_size;
  CYTHON_UNUSED PyObject *__pyx_v_match = 0;
  Rack_ *__pyx_v_temp;
  Block_ *__pyx_v_block;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_AppendLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_AppendLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_match);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__335 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_match, __pyx_n_s_temp, __pyx_n_s_block, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__335)) __PYX_ERR(0, 4483, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__335);
  __Pyx_GIVEREF(__pyx_tuple__335);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_217test_Rack_AppendLeft, 0, __pyx_n_s_test_Rack_AppendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__336)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4483, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_AppendLeft, __pyx_t_1) < 0) __PYX_ERR(0, 4483, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__336 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__335, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_AppendLeft, 4483, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__336)) __PYX_ERR(0, 4483, __pyx_L1_error)
 4484:     cdef:
+4485:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4486:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4486, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4486, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4487:         str match = 'index out of range'
  __Pyx_INCREF(__pyx_kp_u_index_out_of_range);
  __pyx_v_match = __pyx_kp_u_index_out_of_range;
+4488:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4489:         Block_* block = NULL
  __pyx_v_block = NULL;
 4490:         size_t offset
 4491: 
+4492:     try:
  /*try:*/ {
+4493:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4493, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4494:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4494, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4494, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4494, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4495:         blocks = Rack_AppendLeft(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_AppendLeft(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4495, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4496:         block = NULL
    __pyx_v_block = NULL;
+4497:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4497, __pyx_L4_error)
      }
    }
    #endif
+4498:         temp = create_rack(RACK1)
    __pyx_t_1 = __pyx_v_7_test_c_RACK1;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4499:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4499, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4499, __pyx_L4_error)
      }
    }
    #endif
+4500:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4501:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
 4502: 
+4503:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4504:         block = Block_Create(0x1234, SIZE1, DATA1)
    if (unlikely(__pyx_v_7_test_c_DATA1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 4504, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_7_test_c_DATA1); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 4504, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_2_c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4504, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4505:         blocks = Rack_AppendLeft(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_AppendLeft(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4505, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4506:         block = NULL
    __pyx_v_block = NULL;
+4507:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4507, __pyx_L4_error)
      }
    }
    #endif
+4508:         temp = create_rack(RACK1 + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_RACK1, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4508, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4509:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4509, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4509, __pyx_L4_error)
      }
    }
    #endif
+4510:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4511:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4512: 
 4513:     finally:
+4514:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4515:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Block_Free(__pyx_v_block);
+4516:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12) < 0)) __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __pyx_t_7 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_XGIVEREF(__pyx_t_15);
        __Pyx_ExceptionReset(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      }
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_XGIVEREF(__pyx_t_11);
      __Pyx_XGIVEREF(__pyx_t_12);
      __Pyx_ErrRestore(__pyx_t_10, __pyx_t_11, __pyx_t_12);
      __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0;
      __pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4517: 
 4518: 
+4519: def test_Rack_Extend_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_219test_Rack_Extend_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_218test_Rack_Extend_[] = "test_Rack_Extend_()";
static PyMethodDef __pyx_mdef_7_test_c_219test_Rack_Extend_ = {"test_Rack_Extend_", (PyCFunction)__pyx_pw_7_test_c_219test_Rack_Extend_, METH_NOARGS, __pyx_doc_7_test_c_218test_Rack_Extend_};
static PyObject *__pyx_pw_7_test_c_219test_Rack_Extend_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Extend_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_218test_Rack_Extend_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_218test_Rack_Extend_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks1;
  Rack_ *__pyx_v_blocks2;
  size_t __pyx_v_size1;
  size_t __pyx_v_size2;
  Rack_ *__pyx_v_temp;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Extend_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_Extend_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__337 = PyTuple_Pack(5, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_size1, __pyx_n_s_size2, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__337)) __PYX_ERR(0, 4519, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__337);
  __Pyx_GIVEREF(__pyx_tuple__337);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_219test_Rack_Extend_, 0, __pyx_n_s_test_Rack_Extend, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__338)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4519, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Extend, __pyx_t_1) < 0) __PYX_ERR(0, 4519, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__338 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__337, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Extend, 4519, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__338)) __PYX_ERR(0, 4519, __pyx_L1_error)
 4520:     cdef:
+4521:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4522:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4523:         size_t size1 = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4523, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4523, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4524:         size_t size2 = <size_t>len(HELLO_WORLD_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4524, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4524, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4525:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4526: 
+4527:     try:
  /*try:*/ {
+4528:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4528, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4529:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4530:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4530, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4531:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4531, __pyx_L4_error)
      }
    }
    #endif
+4532:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4533:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4533, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4533, __pyx_L4_error)
      }
    }
    #endif
+4534:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4535:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4536:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4537: 
+4538:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4539:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4540:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4540, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4541:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4541, __pyx_L4_error)
      }
    }
    #endif
+4542:         temp = create_rack(TEMPLATE_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4543:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4543, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4543, __pyx_L4_error)
      }
    }
    #endif
+4544:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4545:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4546:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4547: 
+4548:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4548, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4549:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4550:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4550, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4551:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4551, __pyx_L4_error)
      }
    }
    #endif
+4552:         temp = create_rack(HELLO_WORLD_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4553:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4553, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4553, __pyx_L4_error)
      }
    }
    #endif
+4554:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4555:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4556:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4557: 
+4558:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4559:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4560:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4560, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4561:         assert Rack_Length(blocks1) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4561, __pyx_L4_error)
      }
    }
    #endif
+4562:         temp = create_rack(TEMPLATE_BLOCKS + HELLO_WORLD_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_HELLO_WORLD_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4562, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4563:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4563, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4563, __pyx_L4_error)
      }
    }
    #endif
+4564:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4565:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4566:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
  }
 4567: 
 4568:     finally:
+4569:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4570:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4571:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4572: 
 4573: 
+4574: def test_Rack_Extend():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_221test_Rack_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_220test_Rack_Extend[] = "test_Rack_Extend()";
static PyMethodDef __pyx_mdef_7_test_c_221test_Rack_Extend = {"test_Rack_Extend", (PyCFunction)__pyx_pw_7_test_c_221test_Rack_Extend, METH_NOARGS, __pyx_doc_7_test_c_220test_Rack_Extend};
static PyObject *__pyx_pw_7_test_c_221test_Rack_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Extend (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_220test_Rack_Extend(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_220test_Rack_Extend(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks1;
  Rack_ *__pyx_v_blocks2;
  size_t __pyx_v_size1;
  size_t __pyx_v_size2;
  Rack_ *__pyx_v_temp;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_Extend", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_Extend", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__339 = PyTuple_Pack(5, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_size1, __pyx_n_s_size2, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__339)) __PYX_ERR(0, 4574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__339);
  __Pyx_GIVEREF(__pyx_tuple__339);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_221test_Rack_Extend, 0, __pyx_n_s_test_Rack_Extend_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__340)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4574, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Extend_2, __pyx_t_1) < 0) __PYX_ERR(0, 4574, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__340 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__339, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Extend_2, 4574, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__340)) __PYX_ERR(0, 4574, __pyx_L1_error)
 4575:     cdef:
+4576:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4577:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4578:         size_t size1 = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4578, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4578, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4579:         size_t size2 = <size_t>len(HELLO_WORLD_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4579, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4579, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4580:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4581: 
+4582:     try:
  /*try:*/ {
+4583:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4583, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4584:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4585:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4585, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4586:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4586, __pyx_L4_error)
      }
    }
    #endif
+4587:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4588:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4588, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4588, __pyx_L4_error)
      }
    }
    #endif
+4589:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4590:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4591:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4592: 
+4593:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4594:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4595:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4595, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4596:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4596, __pyx_L4_error)
      }
    }
    #endif
+4597:         temp = create_rack(TEMPLATE_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4598:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4598, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4598, __pyx_L4_error)
      }
    }
    #endif
+4599:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4600:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4601:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4602: 
+4603:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4603, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4604:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4605:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4605, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4606:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4606, __pyx_L4_error)
      }
    }
    #endif
+4607:         temp = create_rack(HELLO_WORLD_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4608:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4608, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4608, __pyx_L4_error)
      }
    }
    #endif
+4609:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4610:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4611:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4612: 
+4613:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4614:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4615:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4615, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4616:         assert Rack_Length(blocks1) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4616, __pyx_L4_error)
      }
    }
    #endif
+4617:         temp = create_rack(TEMPLATE_BLOCKS + HELLO_WORLD_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_v_7_test_c_HELLO_WORLD_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4617, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4618:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4618, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4618, __pyx_L4_error)
      }
    }
    #endif
+4619:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4620:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4621:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
  }
 4622: 
 4623:     finally:
+4624:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4625:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4626:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4627: 
 4628: 
+4629: def test_Rack_ExtendLeft_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_223test_Rack_ExtendLeft_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_222test_Rack_ExtendLeft_[] = "test_Rack_ExtendLeft_()";
static PyMethodDef __pyx_mdef_7_test_c_223test_Rack_ExtendLeft_ = {"test_Rack_ExtendLeft_", (PyCFunction)__pyx_pw_7_test_c_223test_Rack_ExtendLeft_, METH_NOARGS, __pyx_doc_7_test_c_222test_Rack_ExtendLeft_};
static PyObject *__pyx_pw_7_test_c_223test_Rack_ExtendLeft_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ExtendLeft_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_222test_Rack_ExtendLeft_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_222test_Rack_ExtendLeft_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks1;
  Rack_ *__pyx_v_blocks2;
  size_t __pyx_v_size1;
  size_t __pyx_v_size2;
  Rack_ *__pyx_v_temp;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ExtendLeft_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_ExtendLeft_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__341 = PyTuple_Pack(5, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_size1, __pyx_n_s_size2, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__341)) __PYX_ERR(0, 4629, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__341);
  __Pyx_GIVEREF(__pyx_tuple__341);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_223test_Rack_ExtendLeft_, 0, __pyx_n_s_test_Rack_ExtendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__342)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4629, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ExtendLeft, __pyx_t_1) < 0) __PYX_ERR(0, 4629, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__342 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__341, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ExtendLeft, 4629, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__342)) __PYX_ERR(0, 4629, __pyx_L1_error)
 4630:     cdef:
+4631:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4632:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4633:         size_t size1 = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4633, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4633, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4634:         size_t size2 = <size_t>len(HELLO_WORLD_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4634, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4634, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4635:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4636: 
+4637:     try:
  /*try:*/ {
+4638:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4638, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4639:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4640:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4640, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4641:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4641, __pyx_L4_error)
      }
    }
    #endif
+4642:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4643:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4643, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4643, __pyx_L4_error)
      }
    }
    #endif
+4644:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4645:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4646:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4647: 
+4648:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4649:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4650:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4650, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4651:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4651, __pyx_L4_error)
      }
    }
    #endif
+4652:         temp = create_rack(TEMPLATE_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4653:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4653, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4653, __pyx_L4_error)
      }
    }
    #endif
+4654:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4655:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4656:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4657: 
+4658:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4658, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4659:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4660:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4660, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4661:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4661, __pyx_L4_error)
      }
    }
    #endif
+4662:         temp = create_rack(HELLO_WORLD_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4663:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4663, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4663, __pyx_L4_error)
      }
    }
    #endif
+4664:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4665:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4666:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4667: 
+4668:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4669:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4670:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_2_c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4670, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4671:         assert Rack_Length(blocks1) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4671, __pyx_L4_error)
      }
    }
    #endif
+4672:         temp = create_rack(HELLO_WORLD_BLOCKS + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4672, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4673:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4673, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4673, __pyx_L4_error)
      }
    }
    #endif
+4674:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4675:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4676:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
  }
 4677: 
 4678:     finally:
+4679:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4680:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4681:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4682: 
 4683: 
+4684: def test_Rack_ExtendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_225test_Rack_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_224test_Rack_ExtendLeft[] = "test_Rack_ExtendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_225test_Rack_ExtendLeft = {"test_Rack_ExtendLeft", (PyCFunction)__pyx_pw_7_test_c_225test_Rack_ExtendLeft, METH_NOARGS, __pyx_doc_7_test_c_224test_Rack_ExtendLeft};
static PyObject *__pyx_pw_7_test_c_225test_Rack_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ExtendLeft (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_224test_Rack_ExtendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_224test_Rack_ExtendLeft(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks1;
  Rack_ *__pyx_v_blocks2;
  size_t __pyx_v_size1;
  size_t __pyx_v_size2;
  Rack_ *__pyx_v_temp;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_ExtendLeft", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("_test_c.test_Rack_ExtendLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__343 = PyTuple_Pack(5, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_size1, __pyx_n_s_size2, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__343)) __PYX_ERR(0, 4684, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__343);
  __Pyx_GIVEREF(__pyx_tuple__343);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_225test_Rack_ExtendLeft, 0, __pyx_n_s_test_Rack_ExtendLeft_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__344)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4684, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ExtendLeft_2, __pyx_t_1) < 0) __PYX_ERR(0, 4684, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__344 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__343, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ExtendLeft_2, 4684, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__344)) __PYX_ERR(0, 4684, __pyx_L1_error)
 4685:     cdef:
+4686:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4687:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4688:         size_t size1 = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4688, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4688, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4689:         size_t size2 = <size_t>len(HELLO_WORLD_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4689, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4689, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4690:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4691: 
+4692:     try:
  /*try:*/ {
+4693:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4693, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4694:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4695:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4695, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4696:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4696, __pyx_L4_error)
      }
    }
    #endif
+4697:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4698:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4698, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4698, __pyx_L4_error)
      }
    }
    #endif
+4699:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4700:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4701:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4702: 
+4703:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4704:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4705:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4705, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4706:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4706, __pyx_L4_error)
      }
    }
    #endif
+4707:         temp = create_rack(TEMPLATE_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4708:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4708, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4708, __pyx_L4_error)
      }
    }
    #endif
+4709:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4710:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4711:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4712: 
+4713:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4713, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4714:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4715:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4715, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4716:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4716, __pyx_L4_error)
      }
    }
    #endif
+4717:         temp = create_rack(HELLO_WORLD_BLOCKS)
    __pyx_t_1 = __pyx_v_7_test_c_HELLO_WORLD_BLOCKS;
    __Pyx_INCREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4718:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4718, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4718, __pyx_L4_error)
      }
    }
    #endif
+4719:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4720:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4721:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
 4722: 
+4723:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4724:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4725:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_2_c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4725, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4726:         assert Rack_Length(blocks1) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4726, __pyx_L4_error)
      }
    }
    #endif
+4727:         temp = create_rack(HELLO_WORLD_BLOCKS + TEMPLATE_BLOCKS)
    __pyx_t_1 = PyNumber_Add(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS, __pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4727, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4728:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4728, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4728, __pyx_L4_error)
      }
    }
    #endif
+4729:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4730:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4731:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
  }
 4732: 
 4733:     finally:
+4734:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4735:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks1);
+4736:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_8);
      __Pyx_XGOTREF(__pyx_t_9);
      __Pyx_XGOTREF(__pyx_t_10);
      __Pyx_XGOTREF(__pyx_t_11);
      __Pyx_XGOTREF(__pyx_t_12);
      __Pyx_XGOTREF(__pyx_t_13);
      __pyx_t_5 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks2 = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks2);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
      }
      __Pyx_XGIVEREF(__pyx_t_8);
      __Pyx_XGIVEREF(__pyx_t_9);
      __Pyx_XGIVEREF(__pyx_t_10);
      __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
      __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
      __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4737: 
 4738: 
 4739: # TODO: Rack_Read_()
 4740: 
 4741: 
 4742: # TODO: Rack_Write_()
 4743: 
 4744: 
 4745: # TODO: Rack_ReadSlice_()
 4746: 
 4747: 
 4748: # TODO: Rack_ReadSlice()
 4749: 
 4750: 
 4751: # TODO: Rack_GetSlice_()
 4752: 
 4753: 
 4754: # TODO: Rack_GetSlice()
 4755: 
 4756: 
 4757: # TODO: Rack_WriteSlice_()
 4758: 
 4759: 
 4760: # TODO: Rack_WriteSlice()
 4761: 
 4762: 
 4763: # TODO: Rack_SetSlice_()
 4764: 
 4765: 
 4766: # TODO: Rack_SetSlice()
 4767: 
 4768: 
+4769: def test_Rack_DelSlice_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_227test_Rack_DelSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_226test_Rack_DelSlice_[] = "test_Rack_DelSlice_()";
static PyMethodDef __pyx_mdef_7_test_c_227test_Rack_DelSlice_ = {"test_Rack_DelSlice_", (PyCFunction)__pyx_pw_7_test_c_227test_Rack_DelSlice_, METH_NOARGS, __pyx_doc_7_test_c_226test_Rack_DelSlice_};
static PyObject *__pyx_pw_7_test_c_227test_Rack_DelSlice_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_DelSlice_ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_226test_Rack_DelSlice_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_226test_Rack_DelSlice_(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  Rack_ *__pyx_v_temp;
  size_t __pyx_v_size;
  size_t __pyx_v_start;
  size_t __pyx_v_endex;
  PyObject *__pyx_v_temp_ = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_DelSlice_", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_AddTraceback("_test_c.test_Rack_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_temp_);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__345 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_temp, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_temp_2); if (unlikely(!__pyx_tuple__345)) __PYX_ERR(0, 4769, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__345);
  __Pyx_GIVEREF(__pyx_tuple__345);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_227test_Rack_DelSlice_, 0, __pyx_n_s_test_Rack_DelSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__346)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4769, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_DelSlice, __pyx_t_1) < 0) __PYX_ERR(0, 4769, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__346 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__345, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_DelSlice, 4769, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__346)) __PYX_ERR(0, 4769, __pyx_L1_error)
 4770:     cdef:
+4771:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4772:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4773:         size_t size = <size_t>len(TEMPLATE_BLOCKS)
  __pyx_t_1 = __pyx_v_7_test_c_TEMPLATE_BLOCKS;
  __Pyx_INCREF(__pyx_t_1);
  if (unlikely(__pyx_t_1 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 4773, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4773, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 4774:         size_t start
 4775:         size_t endex
 4776:         list temp_
 4777: 
+4778:     try:
  /*try:*/ {
+4779:         for start in range(size):
    __pyx_t_3 = __pyx_v_size;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+4780:             for endex in range(size):
      __pyx_t_6 = __pyx_v_size;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+4781:                 blocks = create_rack(())
        __pyx_v_blocks = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4782:                 blocks = Rack_DelSlice_(blocks, start, endex)
        __pyx_t_9 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice_(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4782, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_9;
+4783:                 temp = create_rack(())
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4784:                 assert blocks != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4784, __pyx_L4_error)
          }
        }
        #endif
+4785:                 assert blocks != temp
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != __pyx_v_temp) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4785, __pyx_L4_error)
          }
        }
        #endif
+4786:                 assert Rack_Length(blocks) == 0
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4786, __pyx_L4_error)
          }
        }
        #endif
+4787:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_10 == ((int)-1))) __PYX_ERR(0, 4787, __pyx_L4_error)
          if (unlikely(!((__pyx_t_10 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4787, __pyx_L4_error)
          }
        }
        #endif
+4788:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4789:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
    }
 4790: 
+4791:         for start in range(size + size):
    __pyx_t_3 = (__pyx_v_size + __pyx_v_size);
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_start = __pyx_t_5;
+4792:             for endex in range(size + size):
      __pyx_t_6 = (__pyx_v_size + __pyx_v_size);
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_endex = __pyx_t_8;
+4793:                 blocks = create_template_rack()
        __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4794:                 blocks = Rack_DelSlice_(blocks, start, endex)
        __pyx_t_9 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice_(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4794, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_9;
+4795:                 temp_ = list(TEMPLATE_BLOCKS)
        __pyx_t_1 = PySequence_List(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4795, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_XDECREF_SET(__pyx_v_temp_, ((PyObject*)__pyx_t_1));
        __pyx_t_1 = 0;
+4796:                 del temp_[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_temp_, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 4796, __pyx_L4_error)
+4797:                 temp = create_rack(tuple(temp_))
        __pyx_t_1 = PyList_AsTuple(__pyx_v_temp_); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4797, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_1));
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4798:                 assert blocks != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4798, __pyx_L4_error)
          }
        }
        #endif
+4799:                 assert blocks != temp
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != __pyx_v_temp) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4799, __pyx_L4_error)
          }
        }
        #endif
+4800:                 assert Rack_Length(blocks) == <size_t>len(temp_)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_2 = PyList_GET_SIZE(__pyx_v_temp_); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4800, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == ((size_t)__pyx_t_2)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4800, __pyx_L4_error)
          }
        }
        #endif
+4801:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_10 == ((int)-1))) __PYX_ERR(0, 4801, __pyx_L4_error)
          if (unlikely(!((__pyx_t_10 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4801, __pyx_L4_error)
          }
        }
        #endif
+4802:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4803:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
    }
 4804: 
+4805:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 4806: 
+4807:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4807, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_raises); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4807, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4807, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 4807, __pyx_L4_error)
      __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple__89, __pyx_t_1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4807, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_13 = __Pyx_PyObject_LookupSpecial(__pyx_t_12, __pyx_n_s_exit); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4807, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __pyx_t_11 = __Pyx_PyObject_LookupSpecial(__pyx_t_12, __pyx_n_s_enter); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4807, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_14 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
        __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_11);
        if (likely(__pyx_t_14)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11);
          __Pyx_INCREF(__pyx_t_14);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_11, function);
        }
      }
      __pyx_t_1 = (__pyx_t_14) ? __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_14) : __Pyx_PyObject_CallNoArg(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4807, __pyx_L14_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          goto __pyx_L23_try_end;
          __pyx_L18_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_12, &__pyx_t_1, &__pyx_t_11) < 0) __PYX_ERR(0, 4807, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_14 = PyTuple_Pack(3, __pyx_t_12, __pyx_t_1, __pyx_t_11); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4807, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_14, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4807, __pyx_L20_except_error)
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (__pyx_t_10 < 0) __PYX_ERR(0, 4807, __pyx_L20_except_error)
            __pyx_t_19 = ((!(__pyx_t_10 != 0)) != 0);
            if (__pyx_t_19) {
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_XGIVEREF(__pyx_t_11);
              __Pyx_ErrRestoreWithState(__pyx_t_12, __pyx_t_1, __pyx_t_11);
              __pyx_t_12 = 0; __pyx_t_1 = 0; __pyx_t_11 = 0; 
              __PYX_ERR(0, 4807, __pyx_L20_except_error)
            }
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
            goto __pyx_L19_exception_handled;
          }
          __pyx_L20_except_error:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_17);
          goto __pyx_L4_error;
          __pyx_L19_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_ExceptionReset(__pyx_t_15, __pyx_t_16, __pyx_t_17);
          __pyx_L23_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_13) {
            __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 4807, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_17);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          }
          goto __pyx_L17;
        }
        __pyx_L17:;
      }
      goto __pyx_L27;
      __pyx_L14_error:;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      goto __pyx_L4_error;
      __pyx_L27:;
    }
/* … */
  __pyx_tuple__89 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__89)) __PYX_ERR(0, 4807, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__89);
  __Pyx_GIVEREF(__pyx_tuple__89);
+4808:             Rack_DelSlice_(blocks, SIZE_HMAX + 1, 0)
            __pyx_t_9 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice_(__pyx_v_blocks, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4808, __pyx_L18_error)
 4809: 
+4810:         with pytest.raises(OverflowError, match='size overflow'):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_pytest); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4810, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_raises); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4810, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4810, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_11);
      if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_match, __pyx_kp_u_size_overflow) < 0) __PYX_ERR(0, 4810, __pyx_L4_error)
      __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__90, __pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4810, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_13 = __Pyx_PyObject_LookupSpecial(__pyx_t_12, __pyx_n_s_exit); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4810, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_13);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_12, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4810, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_14 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_14)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_14);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      __pyx_t_11 = (__pyx_t_14) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_14) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4810, __pyx_L28_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      /*try:*/ {
        {
          /*try:*/ {
/* … */
          }
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          goto __pyx_L37_try_end;
          __pyx_L32_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("_test_c.test_Rack_DelSlice_", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_12, &__pyx_t_11, &__pyx_t_1) < 0) __PYX_ERR(0, 4810, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_14 = PyTuple_Pack(3, __pyx_t_12, __pyx_t_11, __pyx_t_1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 4810, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_18 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_14, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4810, __pyx_L34_except_error)
            __Pyx_GOTREF(__pyx_t_18);
            __pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_18);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (__pyx_t_19 < 0) __PYX_ERR(0, 4810, __pyx_L34_except_error)
            __pyx_t_10 = ((!(__pyx_t_19 != 0)) != 0);
            if (__pyx_t_10) {
              __Pyx_GIVEREF(__pyx_t_12);
              __Pyx_GIVEREF(__pyx_t_11);
              __Pyx_XGIVEREF(__pyx_t_1);
              __Pyx_ErrRestoreWithState(__pyx_t_12, __pyx_t_11, __pyx_t_1);
              __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_1 = 0; 
              __PYX_ERR(0, 4810, __pyx_L34_except_error)
            }
            __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L33_exception_handled;
          }
          __pyx_L34_except_error:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_16, __pyx_t_15);
          goto __pyx_L4_error;
          __pyx_L33_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_17);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_XGIVEREF(__pyx_t_15);
          __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_16, __pyx_t_15);
          __pyx_L37_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_13) {
            __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_tuple_, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4810, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_15);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          }
          goto __pyx_L31;
        }
        __pyx_L31:;
      }
      goto __pyx_L41;
      __pyx_L28_error:;
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      goto __pyx_L4_error;
      __pyx_L41:;
    }
/* … */
  __pyx_tuple__90 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__90)) __PYX_ERR(0, 4810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__90);
  __Pyx_GIVEREF(__pyx_tuple__90);
+4811:             Rack_DelSlice_(blocks, 0, SIZE_HMAX + 1)
            __pyx_t_9 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice_(__pyx_v_blocks, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4811, __pyx_L32_error)
 4812: 
+4813:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
  }
 4814: 
 4815:     finally:
+4816:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4817:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_23 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_17, &__pyx_t_18, &__pyx_t_23);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_15, &__pyx_t_16) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_15, &__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_23);
      __pyx_t_20 = __pyx_lineno; __pyx_t_21 = __pyx_clineno; __pyx_t_22 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_23);
        __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_23);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_15, __pyx_t_16);
      __pyx_t_13 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_23 = 0;
      __pyx_lineno = __pyx_t_20; __pyx_clineno = __pyx_t_21; __pyx_filename = __pyx_t_22;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4818: 
 4819: 
+4820: def test_Rack_DelSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_229test_Rack_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_228test_Rack_DelSlice[] = "test_Rack_DelSlice()";
static PyMethodDef __pyx_mdef_7_test_c_229test_Rack_DelSlice = {"test_Rack_DelSlice", (PyCFunction)__pyx_pw_7_test_c_229test_Rack_DelSlice, METH_NOARGS, __pyx_doc_7_test_c_228test_Rack_DelSlice};
static PyObject *__pyx_pw_7_test_c_229test_Rack_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_DelSlice (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_228test_Rack_DelSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_228test_Rack_DelSlice(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  Rack_ *__pyx_v_temp;
  size_t __pyx_v_size;
  Py_ssize_t __pyx_v_start;
  Py_ssize_t __pyx_v_endex;
  PyObject *__pyx_v_temp_ = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_DelSlice", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("_test_c.test_Rack_DelSlice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_temp_);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__347 = PyTuple_Pack(6, __pyx_n_s_blocks, __pyx_n_s_temp, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex, __pyx_n_s_temp_2); if (unlikely(!__pyx_tuple__347)) __PYX_ERR(0, 4820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__347);
  __Pyx_GIVEREF(__pyx_tuple__347);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_229test_Rack_DelSlice, 0, __pyx_n_s_test_Rack_DelSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__348)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_DelSlice_2, __pyx_t_1) < 0) __PYX_ERR(0, 4820, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__348 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__347, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_DelSlice_2, 4820, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__348)) __PYX_ERR(0, 4820, __pyx_L1_error)
 4821:     cdef:
+4822:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4823:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4824:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 4825:         ssize_t start
 4826:         ssize_t endex
 4827:         list temp_
 4828: 
+4829:     try:
  /*try:*/ {
+4830:         for start in range(-<ssize_t>size, <ssize_t>size):
    __pyx_t_1 = ((Py_ssize_t)__pyx_v_size);
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+4831:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+4832:                 blocks = create_rack(())
        __pyx_v_blocks = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4833:                 blocks = Rack_DelSlice(blocks, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Rack_ *)NULL))) __PYX_ERR(0, 4833, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_7;
+4834:                 temp = create_rack(())
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4835:                 assert blocks != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4835, __pyx_L4_error)
          }
        }
        #endif
+4836:                 assert blocks != temp
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != __pyx_v_temp) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4836, __pyx_L4_error)
          }
        }
        #endif
+4837:                 assert Rack_Length(blocks) == 0
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4837, __pyx_L4_error)
          }
        }
        #endif
+4838:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 4838, __pyx_L4_error)
          if (unlikely(!((__pyx_t_8 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4838, __pyx_L4_error)
          }
        }
        #endif
+4839:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4840:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
    }
 4841: 
+4842:         for start in range(-<ssize_t>(size + size), <ssize_t>(size + size)):
    __pyx_t_1 = ((Py_ssize_t)(__pyx_v_size + __pyx_v_size));
    __pyx_t_2 = __pyx_t_1;
    for (__pyx_t_3 = (-((Py_ssize_t)(__pyx_v_size + __pyx_v_size))); __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
      __pyx_v_start = __pyx_t_3;
+4843:             for endex in range(-<ssize_t>size, <ssize_t>size):
      __pyx_t_4 = ((Py_ssize_t)__pyx_v_size);
      __pyx_t_5 = __pyx_t_4;
      for (__pyx_t_6 = (-((Py_ssize_t)__pyx_v_size)); __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
        __pyx_v_endex = __pyx_t_6;
+4844:                 blocks = create_template_rack()
        __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4845:                 blocks = Rack_DelSlice(blocks, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_2_c_Rack_DelSlice(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Rack_ *)NULL))) __PYX_ERR(0, 4845, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_7;
+4846:                 temp_ = list(TEMPLATE_BLOCKS)
        __pyx_t_9 = PySequence_List(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4846, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_XDECREF_SET(__pyx_v_temp_, ((PyObject*)__pyx_t_9));
        __pyx_t_9 = 0;
+4847:                 del temp_[start:endex]
        if (__Pyx_PyObject_DelSlice(__pyx_v_temp_, __pyx_v_start, __pyx_v_endex, NULL, NULL, NULL, 1, 1, 1) < 0) __PYX_ERR(0, 4847, __pyx_L4_error)
+4848:                 temp = create_rack(tuple(temp_))
        __pyx_t_9 = PyList_AsTuple(__pyx_v_temp_); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4848, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(((PyObject*)__pyx_t_9));
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+4849:                 assert blocks != NULL
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != NULL) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4849, __pyx_L4_error)
          }
        }
        #endif
+4850:                 assert blocks != temp
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_v_blocks != __pyx_v_temp) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4850, __pyx_L4_error)
          }
        }
        #endif
+4851:                 assert Rack_Length(blocks) == <size_t>len(temp_)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = PyList_GET_SIZE(__pyx_v_temp_); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4851, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks) == ((size_t)__pyx_t_10)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4851, __pyx_L4_error)
          }
        }
        #endif
+4852:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __pyx_f_11cbytesparse_2_c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 4852, __pyx_L4_error)
          if (unlikely(!((__pyx_t_8 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4852, __pyx_L4_error)
          }
        }
        #endif
+4853:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4854:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
    }
  }
 4855: 
 4856:     finally:
+4857:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_temp);
+4858:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0;
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16) < 0)) __Pyx_ErrFetch(&__pyx_t_14, &__pyx_t_15, &__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __Pyx_XGOTREF(__pyx_t_19);
      __pyx_t_11 = __pyx_lineno; __pyx_t_12 = __pyx_clineno; __pyx_t_13 = __pyx_filename;
      {
/* … */
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_XGIVEREF(__pyx_t_19);
        __Pyx_ExceptionReset(__pyx_t_17, __pyx_t_18, __pyx_t_19);
      }
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_XGIVEREF(__pyx_t_16);
      __Pyx_ErrRestore(__pyx_t_14, __pyx_t_15, __pyx_t_16);
      __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0;
      __pyx_lineno = __pyx_t_11; __pyx_clineno = __pyx_t_12; __pyx_filename = __pyx_t_13;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4859: 
 4860: 
+4861: def test_Rack_IndexAt():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_231test_Rack_IndexAt(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_230test_Rack_IndexAt[] = "test_Rack_IndexAt()";
static PyMethodDef __pyx_mdef_7_test_c_231test_Rack_IndexAt = {"test_Rack_IndexAt", (PyCFunction)__pyx_pw_7_test_c_231test_Rack_IndexAt, METH_NOARGS, __pyx_doc_7_test_c_230test_Rack_IndexAt};
static PyObject *__pyx_pw_7_test_c_231test_Rack_IndexAt(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexAt (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_230test_Rack_IndexAt(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_230test_Rack_IndexAt(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_block_count;
  size_t __pyx_v_block_index;
  Block_ const *__pyx_v_block;
  addr_t __pyx_v_block_start;
  addr_t __pyx_v_block_endex;
  addr_t __pyx_v_address;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexAt", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_IndexAt", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__349 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_block_count, __pyx_n_s_block_index, __pyx_n_s_block, __pyx_n_s_block_start, __pyx_n_s_block_endex, __pyx_n_s_address); if (unlikely(!__pyx_tuple__349)) __PYX_ERR(0, 4861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__349);
  __Pyx_GIVEREF(__pyx_tuple__349);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_231test_Rack_IndexAt, 0, __pyx_n_s_test_Rack_IndexAt, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__350)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexAt, __pyx_t_1) < 0) __PYX_ERR(0, 4861, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__350 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__349, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexAt, 4861, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__350)) __PYX_ERR(0, 4861, __pyx_L1_error)
 4862:     cdef:
+4863:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4864:         size_t block_count
 4865:         size_t block_index
 4866:         const Block_* block
 4867:         addr_t block_start
 4868:         addr_t block_endex
 4869:         addr_t address
 4870: 
+4871:     try:
  /*try:*/ {
+4872:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4872, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4873:         assert Rack_IndexAt(blocks, 0) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, 0); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4873, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4873, __pyx_L4_error)
      }
    }
    #endif
+4874:         assert Rack_IndexAt(blocks, ADDR_MAX) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, ADDR_MAX); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4874, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4874, __pyx_L4_error)
      }
    }
    #endif
 4875: 
+4876:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
+4877:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4878:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks);
 4879: 
+4880:         for block_index in range(block_count):
    __pyx_t_3 = __pyx_v_block_count;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_block_index = __pyx_t_5;
+4881:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4882:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4883:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block);
+4884:             for address in range(block_start, block_endex):
      __pyx_t_6 = __pyx_v_block_endex;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = __pyx_v_block_start; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_address = __pyx_t_8;
+4885:                 assert Rack_IndexAt(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4885, __pyx_L4_error)
          if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4885, __pyx_L4_error)
          }
        }
        #endif
      }
 4886: 
+4887:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4888:             if block_index < block_count:
      __pyx_t_9 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_9) {
/* … */
      }
    }
+4889:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4890:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4891:                 for address in range(block_endex, block_start):
        __pyx_t_6 = __pyx_v_block_start;
        __pyx_t_7 = __pyx_t_6;
        for (__pyx_t_8 = __pyx_v_block_endex; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
          __pyx_v_address = __pyx_t_8;
+4892:                     assert Rack_IndexAt(blocks, address) == -1
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4892, __pyx_L4_error)
            if (unlikely(!((__pyx_t_2 == -1L) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4892, __pyx_L4_error)
            }
          }
          #endif
        }
 4893: 
+4894:         assert Rack_IndexAt(blocks, Block_Start(Rack_First__(blocks)) - 1) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_f_11cbytesparse_2_c_Rack_First__(__pyx_v_blocks)) - 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4894, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4894, __pyx_L4_error)
      }
    }
    #endif
+4895:         assert Rack_IndexAt(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexAt(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last__(__pyx_v_blocks)) + 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4895, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4895, __pyx_L4_error)
      }
    }
    #endif
  }
 4896: 
 4897:     finally:
+4898:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4899: 
 4900: 
+4901: def test_Rack_IndexStart():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_233test_Rack_IndexStart(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_232test_Rack_IndexStart[] = "test_Rack_IndexStart()";
static PyMethodDef __pyx_mdef_7_test_c_233test_Rack_IndexStart = {"test_Rack_IndexStart", (PyCFunction)__pyx_pw_7_test_c_233test_Rack_IndexStart, METH_NOARGS, __pyx_doc_7_test_c_232test_Rack_IndexStart};
static PyObject *__pyx_pw_7_test_c_233test_Rack_IndexStart(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexStart (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_232test_Rack_IndexStart(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_232test_Rack_IndexStart(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_block_count;
  size_t __pyx_v_block_index;
  Block_ const *__pyx_v_block;
  addr_t __pyx_v_block_start;
  addr_t __pyx_v_block_endex;
  addr_t __pyx_v_address;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexStart", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_IndexStart", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__351 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_block_count, __pyx_n_s_block_index, __pyx_n_s_block, __pyx_n_s_block_start, __pyx_n_s_block_endex, __pyx_n_s_address); if (unlikely(!__pyx_tuple__351)) __PYX_ERR(0, 4901, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__351);
  __Pyx_GIVEREF(__pyx_tuple__351);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_233test_Rack_IndexStart, 0, __pyx_n_s_test_Rack_IndexStart, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__352)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4901, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexStart, __pyx_t_1) < 0) __PYX_ERR(0, 4901, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__352 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__351, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexStart, 4901, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__352)) __PYX_ERR(0, 4901, __pyx_L1_error)
 4902:     cdef:
+4903:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4904:         size_t block_count
 4905:         size_t block_index
 4906:         const Block_* block
 4907:         addr_t block_start
 4908:         addr_t block_endex
 4909:         addr_t address
 4910: 
+4911:     try:
  /*try:*/ {
+4912:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4912, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4913:         assert Rack_IndexStart(blocks, 0) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, 0); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4913, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4913, __pyx_L4_error)
      }
    }
    #endif
+4914:         assert Rack_IndexStart(blocks, ADDR_MAX) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, ADDR_MAX); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4914, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4914, __pyx_L4_error)
      }
    }
    #endif
 4915: 
+4916:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
+4917:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4918:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks);
 4919: 
+4920:         for block_index in range(block_count):
    __pyx_t_3 = __pyx_v_block_count;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_block_index = __pyx_t_5;
+4921:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4922:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4923:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block);
+4924:             for address in range(block_start, block_endex):
      __pyx_t_6 = __pyx_v_block_endex;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = __pyx_v_block_start; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_address = __pyx_t_8;
+4925:                 assert Rack_IndexStart(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4925, __pyx_L4_error)
          if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4925, __pyx_L4_error)
          }
        }
        #endif
      }
 4926: 
+4927:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4928:             if block_index < block_count:
      __pyx_t_9 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_9) {
/* … */
      }
    }
+4929:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4930:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4931:                 for address in range(block_endex, block_start):
        __pyx_t_6 = __pyx_v_block_start;
        __pyx_t_7 = __pyx_t_6;
        for (__pyx_t_8 = __pyx_v_block_endex; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
          __pyx_v_address = __pyx_t_8;
+4932:                     assert Rack_IndexStart(blocks, address) == <ssize_t>block_index
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4932, __pyx_L4_error)
            if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4932, __pyx_L4_error)
            }
          }
          #endif
        }
 4933: 
+4934:         assert Rack_IndexStart(blocks, Block_Start(Rack_First__(blocks)) - 1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_f_11cbytesparse_2_c_Rack_First__(__pyx_v_blocks)) - 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4934, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4934, __pyx_L4_error)
      }
    }
    #endif
+4935:         assert Rack_IndexStart(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == <ssize_t>block_count
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexStart(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last__(__pyx_v_blocks)) + 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4935, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_count)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4935, __pyx_L4_error)
      }
    }
    #endif
  }
 4936: 
 4937:     finally:
+4938:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4939: 
 4940: 
+4941: def test_Rack_IndexEndex():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_235test_Rack_IndexEndex(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_234test_Rack_IndexEndex[] = "test_Rack_IndexEndex()";
static PyMethodDef __pyx_mdef_7_test_c_235test_Rack_IndexEndex = {"test_Rack_IndexEndex", (PyCFunction)__pyx_pw_7_test_c_235test_Rack_IndexEndex, METH_NOARGS, __pyx_doc_7_test_c_234test_Rack_IndexEndex};
static PyObject *__pyx_pw_7_test_c_235test_Rack_IndexEndex(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexEndex (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_234test_Rack_IndexEndex(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_234test_Rack_IndexEndex(CYTHON_UNUSED PyObject *__pyx_self) {
  Rack_ *__pyx_v_blocks;
  size_t __pyx_v_block_count;
  size_t __pyx_v_block_index;
  Block_ const *__pyx_v_block;
  addr_t __pyx_v_block_start;
  addr_t __pyx_v_block_endex;
  addr_t __pyx_v_address;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_Rack_IndexEndex", 0);
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("_test_c.test_Rack_IndexEndex", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__353 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_block_count, __pyx_n_s_block_index, __pyx_n_s_block, __pyx_n_s_block_start, __pyx_n_s_block_endex, __pyx_n_s_address); if (unlikely(!__pyx_tuple__353)) __PYX_ERR(0, 4941, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__353);
  __Pyx_GIVEREF(__pyx_tuple__353);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_235test_Rack_IndexEndex, 0, __pyx_n_s_test_Rack_IndexEndex, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__354)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4941, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexEndex, __pyx_t_1) < 0) __PYX_ERR(0, 4941, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__354 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__353, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexEndex, 4941, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__354)) __PYX_ERR(0, 4941, __pyx_L1_error)
 4942:     cdef:
+4943:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4944:         size_t block_count
 4945:         size_t block_index
 4946:         const Block_* block
 4947:         addr_t block_start
 4948:         addr_t block_endex
 4949:         addr_t address
 4950: 
+4951:     try:
  /*try:*/ {
+4952:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_2_c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4952, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4953:         assert Rack_IndexEndex(blocks, 0) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, 0); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4953, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4953, __pyx_L4_error)
      }
    }
    #endif
+4954:         assert Rack_IndexEndex(blocks, ADDR_MAX) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, ADDR_MAX); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4954, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4954, __pyx_L4_error)
      }
    }
    #endif
 4955: 
+4956:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
+4957:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4958:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_2_c_Rack_Length(__pyx_v_blocks);
 4959: 
+4960:         for block_index in range(block_count):
    __pyx_t_3 = __pyx_v_block_count;
    __pyx_t_4 = __pyx_t_3;
    for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) {
      __pyx_v_block_index = __pyx_t_5;
+4961:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4962:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4963:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_v_block);
+4964:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4965:             for address in range(block_start, block_endex):
      __pyx_t_6 = __pyx_v_block_endex;
      __pyx_t_7 = __pyx_t_6;
      for (__pyx_t_8 = __pyx_v_block_start; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
        __pyx_v_address = __pyx_t_8;
+4966:                 assert Rack_IndexEndex(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4966, __pyx_L4_error)
          if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4966, __pyx_L4_error)
          }
        }
        #endif
      }
 4967: 
+4968:             if block_index < block_count:
      __pyx_t_9 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_9) {
/* … */
      }
    }
+4969:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_2_c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4970:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_2_c_Block_Start(__pyx_v_block);
+4971:                 for address in range(block_endex, block_start):
        __pyx_t_6 = __pyx_v_block_start;
        __pyx_t_7 = __pyx_t_6;
        for (__pyx_t_8 = __pyx_v_block_endex; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) {
          __pyx_v_address = __pyx_t_8;
+4972:                     assert Rack_IndexEndex(blocks, address) == <ssize_t>block_index
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, __pyx_v_address); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4972, __pyx_L4_error)
            if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4972, __pyx_L4_error)
            }
          }
          #endif
        }
 4973: 
+4974:         assert Rack_IndexEndex(blocks, Block_Start(Rack_First__(blocks)) - 1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Start(__pyx_f_11cbytesparse_2_c_Rack_First__(__pyx_v_blocks)) - 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4974, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4974, __pyx_L4_error)
      }
    }
    #endif
+4975:         assert Rack_IndexEndex(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == <ssize_t>block_count
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_2_c_Rack_IndexEndex(__pyx_v_blocks, (__pyx_f_11cbytesparse_2_c_Block_Endex(__pyx_f_11cbytesparse_2_c_Rack_Last__(__pyx_v_blocks)) + 1)); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-2L))) __PYX_ERR(0, 4975, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == ((Py_ssize_t)__pyx_v_block_count)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4975, __pyx_L4_error)
      }
    }
    #endif
  }
 4976: 
 4977:     finally:
+4978:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      goto __pyx_L5;
    }
    __pyx_L4_error:;
    /*exception exit:*/{
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
      if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_14, &__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_13);
      __Pyx_XGOTREF(__pyx_t_14);
      __Pyx_XGOTREF(__pyx_t_15);
      __Pyx_XGOTREF(__pyx_t_16);
      __Pyx_XGOTREF(__pyx_t_17);
      __Pyx_XGOTREF(__pyx_t_18);
      __pyx_t_10 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
      {
        __pyx_v_blocks = __pyx_f_11cbytesparse_2_c_Rack_Free(__pyx_v_blocks);
      }
      if (PY_MAJOR_VERSION >= 3) {
        __Pyx_XGIVEREF(__pyx_t_16);
        __Pyx_XGIVEREF(__pyx_t_17);
        __Pyx_XGIVEREF(__pyx_t_18);
        __Pyx_ExceptionReset(__pyx_t_16, __pyx_t_17, __pyx_t_18);
      }
      __Pyx_XGIVEREF(__pyx_t_13);
      __Pyx_XGIVEREF(__pyx_t_14);
      __Pyx_XGIVEREF(__pyx_t_15);
      __Pyx_ErrRestore(__pyx_t_13, __pyx_t_14, __pyx_t_15);
      __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0;
      __pyx_lineno = __pyx_t_10; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
      goto __pyx_L1_error;
    }
    __pyx_L5:;
  }
 4979: 
 4980: 
 4981: # =====================================================================================================================
 4982: 
 4983: # Rover: done by _common.py
 4984: 
 4985: 
 4986: # ---------------------------------------------------------------------------------------------------------------------
 4987: 
 4988: # Memory: done by _common.py
 4989: 
 4990: 
 4991: # =====================================================================================================================
 4992: 
 4993: # Patch all Cython tests so that they can be discovered by pytest.
 4994: # Requires cython option: binding = True
+4995: def _patch_cytest():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_237_patch_cytest(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_236_patch_cytest[] = "_patch_cytest()";
static PyMethodDef __pyx_mdef_7_test_c_237_patch_cytest = {"_patch_cytest", (PyCFunction)__pyx_pw_7_test_c_237_patch_cytest, METH_NOARGS, __pyx_doc_7_test_c_236_patch_cytest};
static PyObject *__pyx_pw_7_test_c_237_patch_cytest(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_patch_cytest (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_236_patch_cytest(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
static PyObject *__pyx_pf_7_test_c_236_patch_cytest(CYTHON_UNUSED PyObject *__pyx_self) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest *__pyx_cur_scope;
  PyObject *__pyx_v_cytest = 0;
  PyObject *__pyx_v_g = NULL;
  PyObject *__pyx_v_key = NULL;
  PyObject *__pyx_v_value = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_patch_cytest", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest *)__pyx_tp_new_7_test_c___pyx_scope_struct_25__patch_cytest(__pyx_ptype_7_test_c___pyx_scope_struct_25__patch_cytest, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 4995, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
/* … */
  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("_test_c._patch_cytest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_cytest);
  __Pyx_XDECREF(__pyx_v_g);
  __Pyx_XDECREF(__pyx_v_key);
  __Pyx_XDECREF(__pyx_v_value);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__355 = PyTuple_Pack(7, __pyx_n_s_functools, __pyx_n_s_inspect, __pyx_n_s_cytest, __pyx_n_s_cytest, __pyx_n_s_g, __pyx_n_s_key, __pyx_n_s_value); if (unlikely(!__pyx_tuple__355)) __PYX_ERR(0, 4995, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__355);
  __Pyx_GIVEREF(__pyx_tuple__355);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_237_patch_cytest, 0, __pyx_n_s_patch_cytest, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__356)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4995, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_patch_cytest, __pyx_t_1) < 0) __PYX_ERR(0, 4995, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_codeobj__356 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__355, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_patch_cytest, 4995, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__356)) __PYX_ERR(0, 4995, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest {
  PyObject_HEAD
  PyObject *__pyx_v_functools;
  PyObject *__pyx_v_inspect;
};

+4996:     import functools
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_functools, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4996, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_cur_scope->__pyx_v_functools = __pyx_t_1;
  __pyx_t_1 = 0;
+4997:     import inspect
  __pyx_t_1 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, 0, 0)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4997, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_cur_scope->__pyx_v_inspect = __pyx_t_1;
  __pyx_t_1 = 0;
 4998: 
+4999:     def cytest(func):
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_13_patch_cytest_1cytest(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_7_test_c_13_patch_cytest_1cytest = {"cytest", (PyCFunction)__pyx_pw_7_test_c_13_patch_cytest_1cytest, METH_O, 0};
static PyObject *__pyx_pw_7_test_c_13_patch_cytest_1cytest(PyObject *__pyx_self, PyObject *__pyx_v_func) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cytest (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_13_patch_cytest_cytest(__pyx_self, ((PyObject *)__pyx_v_func));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
static PyObject *__pyx_pf_7_test_c_13_patch_cytest_cytest(PyObject *__pyx_self, PyObject *__pyx_v_func) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *__pyx_cur_scope;
  PyObject *__pyx_v_wrapped = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cytest", 0);
  __pyx_cur_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *)__pyx_tp_new_7_test_c___pyx_scope_struct_26_cytest(__pyx_ptype_7_test_c___pyx_scope_struct_26_cytest, __pyx_empty_tuple, NULL);
  if (unlikely(!__pyx_cur_scope)) {
    __pyx_cur_scope = ((struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *)Py_None);
    __Pyx_INCREF(Py_None);
    __PYX_ERR(0, 4999, __pyx_L1_error)
  } else {
    __Pyx_GOTREF(__pyx_cur_scope);
  }
  __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest *) __Pyx_CyFunction_GetClosure(__pyx_self);
  __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
  __pyx_cur_scope->__pyx_v_func = __pyx_v_func;
  __Pyx_INCREF(__pyx_cur_scope->__pyx_v_func);
  __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_func);
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("_test_c._patch_cytest.cytest", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_wrapped);
  __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__93 = PyTuple_Pack(3, __pyx_n_s_func, __pyx_n_s_wrapped, __pyx_n_s_wrapped); if (unlikely(!__pyx_tuple__93)) __PYX_ERR(0, 4999, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__93);
  __Pyx_GIVEREF(__pyx_tuple__93);
/* … */
  __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_13_patch_cytest_1cytest, 0, __pyx_n_s_patch_cytest_locals_cytest, ((PyObject*)__pyx_cur_scope), __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__94)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4999, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_cytest = __pyx_t_1;
  __pyx_t_1 = 0;
  __pyx_codeobj__94 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__93, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_cytest, 4999, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__94)) __PYX_ERR(0, 4999, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest {
  PyObject_HEAD
  struct __pyx_obj_7_test_c___pyx_scope_struct_25__patch_cytest *__pyx_outer_scope;
  PyObject *__pyx_v_func;
};

+5000:         @functools.wraps(func)
  if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_functools)) { __Pyx_RaiseClosureNameError("functools"); __PYX_ERR(0, 5000, __pyx_L1_error) }
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_functools, __pyx_n_s_wraps); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
    }
  }
  __pyx_t_2 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_4, __pyx_cur_scope->__pyx_v_func) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_cur_scope->__pyx_v_func);
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+5001:         def wrapped(*args, **kwargs):
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_13_patch_cytest_6cytest_1wrapped(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_7_test_c_13_patch_cytest_6cytest_1wrapped = {"wrapped", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7_test_c_13_patch_cytest_6cytest_1wrapped, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_7_test_c_13_patch_cytest_6cytest_1wrapped(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_args = 0;
  PyObject *__pyx_v_kwargs = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("wrapped (wrapper)", 0);
  if (unlikely(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "wrapped", 1))) return NULL;
  __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
  __Pyx_GOTREF(__pyx_v_kwargs);
  __Pyx_INCREF(__pyx_args);
  __pyx_v_args = __pyx_args;
  __pyx_r = __pyx_pf_7_test_c_13_patch_cytest_6cytest_wrapped(__pyx_self, __pyx_v_args, __pyx_v_kwargs);

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

static PyObject *__pyx_pf_7_test_c_13_patch_cytest_6cytest_wrapped(PyObject *__pyx_self, PyObject *__pyx_v_args, PyObject *__pyx_v_kwargs) {
  struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *__pyx_cur_scope;
  struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *__pyx_outer_scope;
  PyObject *__pyx_v_bound = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("wrapped", 0);
  __pyx_outer_scope = (struct __pyx_obj_7_test_c___pyx_scope_struct_26_cytest *) __Pyx_CyFunction_GetClosure(__pyx_self);
  __pyx_cur_scope = __pyx_outer_scope;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("_test_c._patch_cytest.cytest.wrapped", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_bound);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__91 = PyTuple_Pack(3, __pyx_n_s_args, __pyx_n_s_kwargs, __pyx_n_s_bound); if (unlikely(!__pyx_tuple__91)) __PYX_ERR(0, 5001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__91);
  __Pyx_GIVEREF(__pyx_tuple__91);
/* … */
  __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_13_patch_cytest_6cytest_1wrapped, 0, __pyx_n_s_patch_cytest_locals_cytest_loca, ((PyObject*)__pyx_cur_scope), __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__92)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  __pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_wrapped = __pyx_t_1;
  __pyx_t_1 = 0;
  __pyx_codeobj__92 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__91, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_wrapped, 5001, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__92)) __PYX_ERR(0, 5001, __pyx_L1_error)
+5002:             bound = inspect.signature(func).bind(*args, **kwargs)
  if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_inspect)) { __Pyx_RaiseClosureNameError("inspect"); __PYX_ERR(0, 5002, __pyx_L1_error) }
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_inspect, __pyx_n_s_signature); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (unlikely(!__pyx_cur_scope->__pyx_v_func)) { __Pyx_RaiseClosureNameError("func"); __PYX_ERR(0, 5002, __pyx_L1_error) }
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  __pyx_t_1 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_3, __pyx_cur_scope->__pyx_v_func) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_cur_scope->__pyx_v_func);
  __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
  if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_bind); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_v_args, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_bound = __pyx_t_3;
  __pyx_t_3 = 0;
+5003:             return func(*bound.args, **bound.kwargs)
  __Pyx_XDECREF(__pyx_r);
  if (unlikely(!__pyx_cur_scope->__pyx_v_func)) { __Pyx_RaiseClosureNameError("func"); __PYX_ERR(0, 5003, __pyx_L1_error) }
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_bound, __pyx_n_s_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5003, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5003, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_bound, __pyx_n_s_kwargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5003, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (unlikely(__pyx_t_2 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
    __PYX_ERR(0, 5003, __pyx_L1_error)
  }
  if (likely(PyDict_CheckExact(__pyx_t_2))) {
    __pyx_t_3 = PyDict_Copy(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5003, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  } else {
    __pyx_t_3 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5003, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  }
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_cur_scope->__pyx_v_func, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5003, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;
 5004: 
+5005:         return wrapped
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_wrapped);
  __pyx_r = __pyx_v_wrapped;
  goto __pyx_L0;
 5006: 
+5007:     g = globals()
  __pyx_t_1 = __Pyx_Globals(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5007, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_g = __pyx_t_1;
  __pyx_t_1 = 0;
+5008:     for key, value in g.items():
  __pyx_t_2 = 0;
  if (unlikely(__pyx_v_g == Py_None)) {
    PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
    __PYX_ERR(0, 5008, __pyx_L1_error)
  }
  __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_g, 0, __pyx_n_s_items, (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_1);
  __pyx_t_1 = __pyx_t_5;
  __pyx_t_5 = 0;
  while (1) {
    __pyx_t_7 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, &__pyx_t_6, NULL, __pyx_t_4);
    if (unlikely(__pyx_t_7 == 0)) break;
    if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 5008, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5);
    __pyx_t_5 = 0;
    __Pyx_XDECREF_SET(__pyx_v_value, __pyx_t_6);
    __pyx_t_6 = 0;
+5009:         if hasattr(value, '__name__'):
    __pyx_t_8 = __Pyx_HasAttr(__pyx_v_value, __pyx_n_u_name); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 5009, __pyx_L1_error)
    __pyx_t_9 = (__pyx_t_8 != 0);
    if (__pyx_t_9) {
/* … */
    }
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+5010:             if callable(value) and value.__name__.startswith('test_'):
      __pyx_t_8 = __Pyx_PyCallable_Check(__pyx_v_value); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 5010, __pyx_L1_error)
      __pyx_t_10 = (__pyx_t_8 != 0);
      if (__pyx_t_10) {
      } else {
        __pyx_t_9 = __pyx_t_10;
        goto __pyx_L7_bool_binop_done;
      }
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5010, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_startswith); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 5010, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_11);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_11, function);
        }
      }
      __pyx_t_6 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_5, __pyx_n_u_test) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_n_u_test);
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5010, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 5010, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_9 = __pyx_t_10;
      __pyx_L7_bool_binop_done:;
      if (__pyx_t_9) {
/* … */
      }
+5011:                 g[key] = cytest(value)
        __pyx_t_6 = __pyx_pf_7_test_c_13_patch_cytest_cytest(__pyx_v_cytest, __pyx_v_value); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5011, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        if (unlikely(PyObject_SetItem(__pyx_v_g, __pyx_v_key, __pyx_t_6) < 0)) __PYX_ERR(0, 5011, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
 5012: 
 5013: 
+5014: _patch_cytest()
  __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_patch_cytest); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5014, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;