Generated by Cython 0.29.28

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_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_2, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 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
  __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 import collapse_blocks
  /* "_test_c.pyx":35
 * import pytest
 * 
 * from cbytesparse.c import collapse_blocks             # <<<<<<<<<<<<<<
 * 
 * from cbytesparse.c cimport *
 */
  __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_collapse_blocks);
  __Pyx_GIVEREF(__pyx_n_s_collapse_blocks);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_collapse_blocks);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_cbytesparse_c, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_collapse_blocks); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_collapse_blocks, __pyx_t_1) < 0) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 0036: 
 0037: from cbytesparse.c cimport *
 0038: 
 0039: cdef:
+0040:     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);
+0041:     size_t SIZE1 = <size_t>len(DATA1)
  __pyx_t_2 = __pyx_v_7_test_c_DATA1;
  __Pyx_INCREF(__pyx_t_2);
  if (unlikely(__pyx_t_2 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 41, __pyx_L1_error)
  }
  __pyx_t_3 = PyBytes_GET_SIZE(__pyx_t_2); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 41, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_7_test_c_SIZE1 = ((size_t)__pyx_t_3);
+0042:     tuple RACK1 = ((0x1234, DATA1),)
  __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_int_4660);
  __Pyx_GIVEREF(__pyx_int_4660);
  PyTuple_SET_ITEM(__pyx_t_2, 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_2, 1, __pyx_v_7_test_c_DATA1);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
  __pyx_t_2 = 0;
  __Pyx_XGOTREF(__pyx_v_7_test_c_RACK1);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_RACK1, ((PyObject*)__pyx_t_1));
  __Pyx_GIVEREF(__pyx_t_1);
  __pyx_t_1 = 0;
 0043: 
+0044:     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);
+0045:     size_t SIZE2 = <size_t>len(DATA2)
  __pyx_t_1 = __pyx_v_7_test_c_DATA2;
  __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, 45, __pyx_L1_error)
  }
  __pyx_t_3 = PyBytes_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 45, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_7_test_c_SIZE2 = ((size_t)__pyx_t_3);
+0046:     tuple RACK2 = ((0x4321, DATA2),)
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_int_17185);
  __Pyx_GIVEREF(__pyx_int_17185);
  PyTuple_SET_ITEM(__pyx_t_1, 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_1, 1, __pyx_v_7_test_c_DATA2);
  __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 46, __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;
  __Pyx_XGOTREF(__pyx_v_7_test_c_RACK2);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_RACK2, ((PyObject*)__pyx_t_2));
  __Pyx_GIVEREF(__pyx_t_2);
  __pyx_t_2 = 0;
 0047: 
+0048:     bytes DATA3 = b'#.#.##...##..###..##.#.#.'
  __Pyx_INCREF(__pyx_kp_b__114);
  __Pyx_XGOTREF(__pyx_v_7_test_c_DATA3);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_DATA3, __pyx_kp_b__114);
  __Pyx_GIVEREF(__pyx_kp_b__114);
+0049:     size_t SIZE3 = <size_t>len(DATA3)
  __pyx_t_2 = __pyx_v_7_test_c_DATA3;
  __Pyx_INCREF(__pyx_t_2);
  if (unlikely(__pyx_t_2 == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
    __PYX_ERR(0, 49, __pyx_L1_error)
  }
  __pyx_t_3 = PyBytes_GET_SIZE(__pyx_t_2); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 49, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_7_test_c_SIZE3 = ((size_t)__pyx_t_3);
 0050:     tuple TOKENS3 = (
+0051:         b'.#',
  __Pyx_INCREF(__pyx_tuple__123);
  __Pyx_XGOTREF(__pyx_v_7_test_c_TOKENS3);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_TOKENS3, __pyx_tuple__123);
  __Pyx_GIVEREF(__pyx_tuple__123);
/* … */
  __pyx_tuple__123 = PyTuple_Pack(8, __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, __pyx_kp_b__122); if (unlikely(!__pyx_tuple__123)) __PYX_ERR(0, 51, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__123);
  __Pyx_GIVEREF(__pyx_tuple__123);
 0052:         b'#.',
 0053:         b'...',
 0054:         b'.#.',
 0055:         b'#.#',
 0056:         b'###',
 0057:         b'....',
 0058:         b'####',
 0059:     )
 0060: 
 0061: 
 0062: # =====================================================================================================================
 0063: 
+0064: def test_collapse_blocks___doctest__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_1test_collapse_blocks___doctest__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_test_collapse_blocks___doctest__[] = "test_collapse_blocks___doctest__()";
static PyMethodDef __pyx_mdef_7_test_c_1test_collapse_blocks___doctest__ = {"test_collapse_blocks___doctest__", (PyCFunction)__pyx_pw_7_test_c_1test_collapse_blocks___doctest__, METH_NOARGS, __pyx_doc_7_test_c_test_collapse_blocks___doctest__};
static PyObject *__pyx_pw_7_test_c_1test_collapse_blocks___doctest__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_collapse_blocks___doctest__ (wrapper)", 0);
  __pyx_r = __pyx_pf_7_test_c_test_collapse_blocks___doctest__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_test_collapse_blocks___doctest__(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_v_blocks = NULL;
  PyObject *__pyx_v_ans_out = NULL;
  PyObject *__pyx_v_ans_ref = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("test_collapse_blocks___doctest__", 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_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("_test_c.test_collapse_blocks___doctest__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_blocks);
  __Pyx_XDECREF(__pyx_v_ans_out);
  __Pyx_XDECREF(__pyx_v_ans_ref);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple__124 = PyTuple_Pack(3, __pyx_n_s_blocks, __pyx_n_s_ans_out, __pyx_n_s_ans_ref); if (unlikely(!__pyx_tuple__124)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__124);
  __Pyx_GIVEREF(__pyx_tuple__124);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_1test_collapse_blocks___doctest__, 0, __pyx_n_s_test_collapse_blocks___doctest, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__125)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_collapse_blocks___doctest, __pyx_t_2) < 0) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__125 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 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_collapse_blocks___doctest, 64, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__125)) __PYX_ERR(0, 64, __pyx_L1_error)
+0065:     blocks = [
  __pyx_t_6 = PyList_New(5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 65, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_GIVEREF(__pyx_t_1);
  PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_2);
  PyList_SET_ITEM(__pyx_t_6, 1, __pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_3);
  PyList_SET_ITEM(__pyx_t_6, 2, __pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_4);
  PyList_SET_ITEM(__pyx_t_6, 3, __pyx_t_4);
  __Pyx_GIVEREF(__pyx_t_5);
  PyList_SET_ITEM(__pyx_t_6, 4, __pyx_t_5);
  __pyx_t_1 = 0;
  __pyx_t_2 = 0;
  __pyx_t_3 = 0;
  __pyx_t_4 = 0;
  __pyx_t_5 = 0;
  __pyx_v_blocks = ((PyObject*)__pyx_t_6);
  __pyx_t_6 = 0;
+0066:         [0, b'0123456789'],
  __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 66, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_kp_b_0123456789);
  __Pyx_GIVEREF(__pyx_kp_b_0123456789);
  PyList_SET_ITEM(__pyx_t_1, 1, __pyx_kp_b_0123456789);
+0067:         [0, b'ABCD'],
  __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 67, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_n_b_ABCD);
  __Pyx_GIVEREF(__pyx_n_b_ABCD);
  PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_b_ABCD);
+0068:         [3, b'EF'],
  __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 68, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_INCREF(__pyx_int_3);
  __Pyx_GIVEREF(__pyx_int_3);
  PyList_SET_ITEM(__pyx_t_3, 0, __pyx_int_3);
  __Pyx_INCREF(__pyx_n_b_EF);
  __Pyx_GIVEREF(__pyx_n_b_EF);
  PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_b_EF);
+0069:         [0, b'$'],
  __pyx_t_4 = PyList_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 69, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_4, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_kp_b_);
  __Pyx_GIVEREF(__pyx_kp_b_);
  PyList_SET_ITEM(__pyx_t_4, 1, __pyx_kp_b_);
+0070:         [6, b'xyz'],
  __pyx_t_5 = PyList_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_INCREF(__pyx_int_6);
  __Pyx_GIVEREF(__pyx_int_6);
  PyList_SET_ITEM(__pyx_t_5, 0, __pyx_int_6);
  __Pyx_INCREF(__pyx_n_b_xyz);
  __Pyx_GIVEREF(__pyx_n_b_xyz);
  PyList_SET_ITEM(__pyx_t_5, 1, __pyx_n_b_xyz);
 0071:     ]
+0072:     ans_out = collapse_blocks(blocks)
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_collapse_blocks); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 72, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __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_6 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_v_blocks) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_v_blocks);
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 72, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_v_ans_out = __pyx_t_6;
  __pyx_t_6 = 0;
+0073:     ans_ref = [[0, b'$BCEF5xyz9']]
  __pyx_t_6 = PyList_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 73, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_6, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_kp_b_BCEF5xyz9);
  __Pyx_GIVEREF(__pyx_kp_b_BCEF5xyz9);
  PyList_SET_ITEM(__pyx_t_6, 1, __pyx_kp_b_BCEF5xyz9);
  __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 73, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_GIVEREF(__pyx_t_6);
  PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
  __pyx_t_6 = 0;
  __pyx_v_ans_ref = ((PyObject*)__pyx_t_5);
  __pyx_t_5 = 0;
+0074:     assert ans_out == ans_ref
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_5 = PyObject_RichCompare(__pyx_v_ans_out, __pyx_v_ans_ref, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 74, __pyx_L1_error)
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 74, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_7)) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 74, __pyx_L1_error)
    }
  }
  #endif
 0075: 
+0076:     blocks = [
  __pyx_t_2 = PyList_New(4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_5);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_5);
  __Pyx_GIVEREF(__pyx_t_6);
  PyList_SET_ITEM(__pyx_t_2, 1, __pyx_t_6);
  __Pyx_GIVEREF(__pyx_t_4);
  PyList_SET_ITEM(__pyx_t_2, 2, __pyx_t_4);
  __Pyx_GIVEREF(__pyx_t_3);
  PyList_SET_ITEM(__pyx_t_2, 3, __pyx_t_3);
  __pyx_t_5 = 0;
  __pyx_t_6 = 0;
  __pyx_t_4 = 0;
  __pyx_t_3 = 0;
  __Pyx_DECREF_SET(__pyx_v_blocks, ((PyObject*)__pyx_t_2));
  __pyx_t_2 = 0;
+0077:         [0, b'012'],
  __pyx_t_5 = PyList_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 77, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_5, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_kp_b_012);
  __Pyx_GIVEREF(__pyx_kp_b_012);
  PyList_SET_ITEM(__pyx_t_5, 1, __pyx_kp_b_012);
+0078:         [4, b'AB'],
  __pyx_t_6 = PyList_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 78, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_INCREF(__pyx_int_4);
  __Pyx_GIVEREF(__pyx_int_4);
  PyList_SET_ITEM(__pyx_t_6, 0, __pyx_int_4);
  __Pyx_INCREF(__pyx_n_b_AB);
  __Pyx_GIVEREF(__pyx_n_b_AB);
  PyList_SET_ITEM(__pyx_t_6, 1, __pyx_n_b_AB);
+0079:         [6, b'xyz'],
  __pyx_t_4 = PyList_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 79, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_INCREF(__pyx_int_6);
  __Pyx_GIVEREF(__pyx_int_6);
  PyList_SET_ITEM(__pyx_t_4, 0, __pyx_int_6);
  __Pyx_INCREF(__pyx_n_b_xyz);
  __Pyx_GIVEREF(__pyx_n_b_xyz);
  PyList_SET_ITEM(__pyx_t_4, 1, __pyx_n_b_xyz);
+0080:         [1, b'$'],
  __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_INCREF(__pyx_int_1);
  __Pyx_GIVEREF(__pyx_int_1);
  PyList_SET_ITEM(__pyx_t_3, 0, __pyx_int_1);
  __Pyx_INCREF(__pyx_kp_b_);
  __Pyx_GIVEREF(__pyx_kp_b_);
  PyList_SET_ITEM(__pyx_t_3, 1, __pyx_kp_b_);
 0081:     ]
+0082:     ans_out = collapse_blocks(blocks)
  __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_collapse_blocks); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 82, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(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_v_blocks) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_blocks);
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 82, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF_SET(__pyx_v_ans_out, __pyx_t_2);
  __pyx_t_2 = 0;
+0083:     ans_ref = [[0, b'0$2'], [4, b'ABxyz']]
  __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 83, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_int_0);
  __Pyx_GIVEREF(__pyx_int_0);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_int_0);
  __Pyx_INCREF(__pyx_kp_b_0_2);
  __Pyx_GIVEREF(__pyx_kp_b_0_2);
  PyList_SET_ITEM(__pyx_t_2, 1, __pyx_kp_b_0_2);
  __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 83, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_INCREF(__pyx_int_4);
  __Pyx_GIVEREF(__pyx_int_4);
  PyList_SET_ITEM(__pyx_t_3, 0, __pyx_int_4);
  __Pyx_INCREF(__pyx_n_b_ABxyz);
  __Pyx_GIVEREF(__pyx_n_b_ABxyz);
  PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_b_ABxyz);
  __pyx_t_4 = PyList_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 83, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_GIVEREF(__pyx_t_2);
  PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_3);
  PyList_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
  __pyx_t_2 = 0;
  __pyx_t_3 = 0;
  __Pyx_DECREF_SET(__pyx_v_ans_ref, ((PyObject*)__pyx_t_4));
  __pyx_t_4 = 0;
+0084:     assert ans_out == ans_ref
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_4 = PyObject_RichCompare(__pyx_v_ans_out, __pyx_v_ans_ref, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L1_error)
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 84, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_7)) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 84, __pyx_L1_error)
    }
  }
  #endif
 0085: 
 0086: 
 0087: # =====================================================================================================================
 0088: 
+0089: def test_addr_size_types():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_3test_addr_size_types(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_2test_addr_size_types[] = "test_addr_size_types()";
static PyMethodDef __pyx_mdef_7_test_c_3test_addr_size_types = {"test_addr_size_types", (PyCFunction)__pyx_pw_7_test_c_3test_addr_size_types, METH_NOARGS, __pyx_doc_7_test_c_2test_addr_size_types};
static PyObject *__pyx_pw_7_test_c_3test_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_2test_addr_size_types(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_2test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_3test_addr_size_types, 0, __pyx_n_s_test_addr_size_types, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__126)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 89, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_addr_size_types, __pyx_t_2) < 0) __PYX_ERR(0, 89, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__126 = (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, 89, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__126)) __PYX_ERR(0, 89, __pyx_L1_error)
+0090:     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, 90, __pyx_L1_error)
    }
  }
  #endif
+0091:     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, 91, __pyx_L1_error)
    }
  }
  #endif
+0092:     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, 92, __pyx_L1_error)
    }
  }
  #endif
 0093: 
+0094:     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, 94, __pyx_L1_error)
    }
  }
  #endif
+0095:     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, 95, __pyx_L1_error)
    }
  }
  #endif
+0096:     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, 96, __pyx_L1_error)
    }
  }
  #endif
 0097: 
+0098:     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, 98, __pyx_L1_error)
    }
  }
  #endif
+0099:     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, 99, __pyx_L1_error)
    }
  }
  #endif
+0100:     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, 100, __pyx_L1_error)
    }
  }
  #endif
+0101:     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, 101, __pyx_L1_error)
    }
  }
  #endif
+0102:     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, 102, __pyx_L1_error)
    }
  }
  #endif
 0103: 
 0104: 
 0105: # ---------------------------------------------------------------------------------------------------------------------
 0106: 
+0107: def test_calloc():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_5test_calloc(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_4test_calloc[] = "test_calloc()";
static PyMethodDef __pyx_mdef_7_test_c_5test_calloc = {"test_calloc", (PyCFunction)__pyx_pw_7_test_c_5test_calloc, METH_NOARGS, __pyx_doc_7_test_c_4test_calloc};
static PyObject *__pyx_pw_7_test_c_5test_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_4test_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_4test_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, 107, __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__127 = PyTuple_Pack(4, __pyx_n_s_chunk, __pyx_n_s_i, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__127)) __PYX_ERR(0, 107, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__127);
  __Pyx_GIVEREF(__pyx_tuple__127);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_5test_calloc, 0, __pyx_n_s_test_calloc, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__128)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 107, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_calloc, __pyx_t_2) < 0) __PYX_ERR(0, 107, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__128 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__127, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_calloc, 107, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__128)) __PYX_ERR(0, 107, __pyx_L1_error)
/* … */
struct __pyx_obj_7_test_c___pyx_scope_struct__test_calloc {
  PyObject_HEAD
  byte_t *__pyx_v_chunk;
};

 0108:     cdef:
+0109:         byte_t* chunk = NULL
  __pyx_cur_scope->__pyx_v_chunk = NULL;
 0110:         size_t i
 0111: 
+0112:     chunk = <byte_t*>PyMem_Calloc(7, 5)
  __pyx_cur_scope->__pyx_v_chunk = ((byte_t *)__pyx_f_11cbytesparse_1c_PyMem_Calloc(7, 5));
+0113:     try:
  /*try:*/ {
+0114:         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, 114, __pyx_L4_error)
      }
    }
    #endif
+0115:         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, 115, __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, 115, __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, 115, __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, 115, __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, 115, __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, 115, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_3)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 115, __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;
};

 0116: 
 0117:     finally:
+0118:         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:;
  }
 0119: 
 0120: 
 0121: # =====================================================================================================================
 0122: 
+0123: def test_downsize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_7test_downsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_6test_downsize[] = "test_downsize()";
static PyMethodDef __pyx_mdef_7_test_c_7test_downsize = {"test_downsize", (PyCFunction)__pyx_pw_7_test_c_7test_downsize, METH_NOARGS, __pyx_doc_7_test_c_6test_downsize};
static PyObject *__pyx_pw_7_test_c_7test_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_6test_downsize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_6test_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__129 = PyTuple_Pack(3, __pyx_n_s_ans, __pyx_n_s_ref, __pyx_n_s_i); if (unlikely(!__pyx_tuple__129)) __PYX_ERR(0, 123, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__129);
  __Pyx_GIVEREF(__pyx_tuple__129);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_7test_downsize, 0, __pyx_n_s_test_downsize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__130)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 123, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_downsize, __pyx_t_2) < 0) __PYX_ERR(0, 123, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__130 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__129, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_downsize, 123, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__130)) __PYX_ERR(0, 123, __pyx_L1_error)
 0124:     cdef:
 0125:         size_t ans
 0126:         size_t ref
 0127:         size_t i
 0128: 
+0129:     ans = Downsize(0, 0)
  __pyx_v_ans = __pyx_f_11cbytesparse_1c_Downsize(0, 0);
+0130:     ref = MARGIN + MARGIN
  __pyx_v_ref = (MARGIN + MARGIN);
+0131:     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, 131, __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, 131, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 131, __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, 131, __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, 131, __pyx_L1_error)
    }
  }
  #endif
 0132: 
+0133:     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;
+0134:         ans = Downsize(0x100, i)
    __pyx_v_ans = __pyx_f_11cbytesparse_1c_Downsize(0x100, __pyx_v_i);
+0135:         ref = i
    __pyx_v_ref = __pyx_v_i;
+0136:         ref += (2 * MARGIN) - (ref % MARGIN)
    if (unlikely(MARGIN == 0)) {
      PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
      __PYX_ERR(0, 136, __pyx_L1_error)
    }
    __pyx_v_ref = (__pyx_v_ref + ((2 * MARGIN) - (__pyx_v_ref % MARGIN)));
+0137:         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, 137, __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, 137, __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, 137, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 137, __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, 137, __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, 137, __pyx_L1_error)
      }
    }
    #endif
  }
 0138: 
+0139:     ans = Downsize(0x100, 0x80)
  __pyx_v_ans = __pyx_f_11cbytesparse_1c_Downsize(0x100, 0x80);
+0140:     ref = 0x100
  __pyx_v_ref = 0x100;
+0141:     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, 141, __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, 141, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 141, __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, 141, __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, 141, __pyx_L1_error)
    }
  }
  #endif
 0142: 
+0143:     ans = Downsize(0x100, 0x7F)
  __pyx_v_ans = __pyx_f_11cbytesparse_1c_Downsize(0x100, 0x7F);
+0144:     ref = 0x80 + MARGIN
  __pyx_v_ref = (0x80 + MARGIN);
+0145:     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, 145, __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, 145, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __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, 145, __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, 145, __pyx_L1_error)
    }
  }
  #endif
 0146: 
 0147: 
+0148: def test_upsize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_9test_upsize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_8test_upsize[] = "test_upsize()";
static PyMethodDef __pyx_mdef_7_test_c_9test_upsize = {"test_upsize", (PyCFunction)__pyx_pw_7_test_c_9test_upsize, METH_NOARGS, __pyx_doc_7_test_c_8test_upsize};
static PyObject *__pyx_pw_7_test_c_9test_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_8test_upsize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_8test_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__131 = PyTuple_Pack(3, __pyx_n_s_ans, __pyx_n_s_ref, __pyx_n_s_i); if (unlikely(!__pyx_tuple__131)) __PYX_ERR(0, 148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__131);
  __Pyx_GIVEREF(__pyx_tuple__131);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_9test_upsize, 0, __pyx_n_s_test_upsize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__132)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_upsize, __pyx_t_2) < 0) __PYX_ERR(0, 148, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__132 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__131, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_upsize, 148, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__132)) __PYX_ERR(0, 148, __pyx_L1_error)
 0149:     cdef:
 0150:         size_t ans
 0151:         size_t ref
 0152:         size_t i
 0153: 
+0154:     ans = Upsize(0, 0)
  __pyx_v_ans = __pyx_f_11cbytesparse_1c_Upsize(0, 0);
+0155:     ref = MARGIN + MARGIN
  __pyx_v_ref = (MARGIN + MARGIN);
+0156:     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, 156, __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, 156, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 156, __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, 156, __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, 156, __pyx_L1_error)
    }
  }
  #endif
 0157: 
+0158:     ans = Upsize(0, 0x100)
  __pyx_v_ans = __pyx_f_11cbytesparse_1c_Upsize(0, 0x100);
+0159:     ref = MARGIN + 0x100 + MARGIN
  __pyx_v_ref = ((MARGIN + 0x100) + MARGIN);
+0160:     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, 160, __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, 160, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 160, __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, 160, __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, 160, __pyx_L1_error)
    }
  }
  #endif
 0161: 
+0162:     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;
+0163:         ans = Upsize(0x100, 0x100 + i)
    __pyx_v_ans = __pyx_f_11cbytesparse_1c_Upsize(0x100, (0x100 + __pyx_v_i));
+0164:         ref = 0x100 + i
    __pyx_v_ref = (0x100 + __pyx_v_i);
+0165:         ref += ref >> 3
    __pyx_v_ref = (__pyx_v_ref + (__pyx_v_ref >> 3));
+0166:         ref += (2 * MARGIN) - (ref % MARGIN)
    if (unlikely(MARGIN == 0)) {
      PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
      __PYX_ERR(0, 166, __pyx_L1_error)
    }
    __pyx_v_ref = (__pyx_v_ref + ((2 * MARGIN) - (__pyx_v_ref % MARGIN)));
+0167:         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, 167, __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, 167, __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, 167, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 167, __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, 167, __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, 167, __pyx_L1_error)
      }
    }
    #endif
  }
 0168: 
 0169: 
 0170: # =====================================================================================================================
 0171: 
+0172: def test_AddSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_11test_AddSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_10test_AddSizeU[] = "test_AddSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_11test_AddSizeU = {"test_AddSizeU", (PyCFunction)__pyx_pw_7_test_c_11test_AddSizeU, METH_NOARGS, __pyx_doc_7_test_c_10test_AddSizeU};
static PyObject *__pyx_pw_7_test_c_11test_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_10test_AddSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_10test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_11test_AddSizeU, 0, __pyx_n_s_test_AddSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__133)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddSizeU, __pyx_t_2) < 0) __PYX_ERR(0, 172, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__133 = (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, 172, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__133)) __PYX_ERR(0, 172, __pyx_L1_error)
+0173:     assert AddSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(0, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 173, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 173, __pyx_L1_error)
    }
  }
  #endif
+0174:     assert AddSizeU(0, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(0, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 174, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 174, __pyx_L1_error)
    }
  }
  #endif
+0175:     assert AddSizeU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(1, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 175, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 175, __pyx_L1_error)
    }
  }
  #endif
+0176:     assert AddSizeU(1, 1) == 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(1, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 176, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 176, __pyx_L1_error)
    }
  }
  #endif
+0177:     assert AddSizeU(SIZE_MAX, 0) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 177, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 177, __pyx_L1_error)
    }
  }
  #endif
+0178:     assert AddSizeU(0, SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 178, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 178, __pyx_L1_error)
    }
  }
  #endif
+0179:     assert AddSizeU(SIZE_HMAX, SIZE_HMAX) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(SIZE_HMAX, SIZE_HMAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 179, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 179, __pyx_L1_error)
    }
  }
  #endif
+0180:     assert AddSizeU(SIZE_HMAX + 1, SIZE_HMAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU((SIZE_HMAX + 1), SIZE_HMAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 180, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 180, __pyx_L1_error)
    }
  }
  #endif
+0181:     assert AddSizeU(SIZE_HMAX, SIZE_HMAX + 1) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeU(SIZE_HMAX, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 181, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 181, __pyx_L1_error)
    }
  }
  #endif
 0182: 
+0183:     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, 183, __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, 183, __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, 183, __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, 183, __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, 183, __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, 183, __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_1c_AddSizeU(SIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 183, __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, 183, __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, 183, __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, 183, __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, 183, __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, 183, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 183, __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__2 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 183, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__2);
  __Pyx_GIVEREF(__pyx_tuple__2);
+0184:     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, 184, __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, 184, __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, 184, __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, 184, __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, 184, __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, 184, __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_1c_AddSizeU(1, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 184, __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, 184, __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, 184, __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, 184, __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, 184, __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, 184, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 184, __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:;
  }
+0185:     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, 185, __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, 185, __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, 185, __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, 185, __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, 185, __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, 185, __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_1c_AddSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 185, __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, 185, __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, 185, __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, 185, __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, 185, __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, 185, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 185, __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:;
  }
+0186:     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, 186, __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, 186, __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, 186, __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, 186, __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, 186, __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, 186, __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_1c_AddSizeU((SIZE_HMAX + 1), (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 186, __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, 186, __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, 186, __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, 186, __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, 186, __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, 186, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 186, __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:;
  }
 0187: 
 0188: 
+0189: def test_SubSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_13test_SubSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_12test_SubSizeU[] = "test_SubSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_13test_SubSizeU = {"test_SubSizeU", (PyCFunction)__pyx_pw_7_test_c_13test_SubSizeU, METH_NOARGS, __pyx_doc_7_test_c_12test_SubSizeU};
static PyObject *__pyx_pw_7_test_c_13test_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_12test_SubSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_12test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_13test_SubSizeU, 0, __pyx_n_s_test_SubSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__134)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubSizeU, __pyx_t_2) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_SubSizeU, 189, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__134)) __PYX_ERR(0, 189, __pyx_L1_error)
+0190:     assert SubSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeU(0, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 190, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 190, __pyx_L1_error)
    }
  }
  #endif
+0191:     assert SubSizeU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeU(1, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 191, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 191, __pyx_L1_error)
    }
  }
  #endif
+0192:     assert SubSizeU(1, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeU(1, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 192, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 192, __pyx_L1_error)
    }
  }
  #endif
+0193:     assert SubSizeU(SIZE_MAX, 0) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 193, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 193, __pyx_L1_error)
    }
  }
  #endif
+0194:     assert SubSizeU(SIZE_MAX, SIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 194, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 194, __pyx_L1_error)
    }
  }
  #endif
 0195: 
+0196:     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, 196, __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, 196, __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, 196, __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, 196, __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, 196, __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, 196, __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_1c_SubSizeU(0, 1); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 196, __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, 196, __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, 196, __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, 196, __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, 196, __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, 196, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 196, __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:;
  }
+0197:     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, 197, __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, 197, __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, 197, __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, 197, __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, 197, __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, 197, __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_1c_SubSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 197, __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, 197, __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, 197, __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, 197, __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, 197, __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, 197, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 197, __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:;
  }
+0198:     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, 198, __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, 198, __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, 198, __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, 198, __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, 198, __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, 198, __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_1c_SubSizeU(SIZE_HMAX, SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 198, __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, 198, __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, 198, __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, 198, __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, 198, __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, 198, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 198, __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:;
  }
+0199:     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, 199, __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, 199, __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, 199, __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, 199, __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, 199, __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, 199, __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_1c_SubSizeU((SIZE_MAX - 1), SIZE_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 199, __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, 199, __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, 199, __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, 199, __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, 199, __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, 199, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 199, __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:;
  }
 0200: 
 0201: 
+0202: def test_MulSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_15test_MulSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_14test_MulSizeU[] = "test_MulSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_15test_MulSizeU = {"test_MulSizeU", (PyCFunction)__pyx_pw_7_test_c_15test_MulSizeU, METH_NOARGS, __pyx_doc_7_test_c_14test_MulSizeU};
static PyObject *__pyx_pw_7_test_c_15test_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_14test_MulSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_14test_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__135 = PyTuple_Pack(1, __pyx_n_s_SIZE_MAX_SQRT); if (unlikely(!__pyx_tuple__135)) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__135);
  __Pyx_GIVEREF(__pyx_tuple__135);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_15test_MulSizeU, 0, __pyx_n_s_test_MulSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__136)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulSizeU, __pyx_t_2) < 0) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__136 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__135, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_MulSizeU, 202, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__136)) __PYX_ERR(0, 202, __pyx_L1_error)
+0203:     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);
+0204:     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, 204, __pyx_L1_error)
    }
  }
  #endif
 0205: 
+0206:     assert MulSizeU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(0, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 206, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 206, __pyx_L1_error)
    }
  }
  #endif
+0207:     assert MulSizeU(0, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(0, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 207, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 207, __pyx_L1_error)
    }
  }
  #endif
+0208:     assert MulSizeU(1, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(1, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 208, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 208, __pyx_L1_error)
    }
  }
  #endif
+0209:     assert MulSizeU(1, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(1, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 209, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 209, __pyx_L1_error)
    }
  }
  #endif
+0210:     assert MulSizeU(0, SIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(0, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 210, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 210, __pyx_L1_error)
    }
  }
  #endif
+0211:     assert MulSizeU(1, SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(1, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 211, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 211, __pyx_L1_error)
    }
  }
  #endif
+0212:     assert MulSizeU(SIZE_MAX, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(SIZE_MAX, 0); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 212, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 212, __pyx_L1_error)
    }
  }
  #endif
+0213:     assert MulSizeU(SIZE_MAX, 1) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(SIZE_MAX, 1); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 213, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 213, __pyx_L1_error)
    }
  }
  #endif
+0214:     assert MulSizeU(SIZE_HMAX, 2) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(SIZE_HMAX, 2); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 214, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 214, __pyx_L1_error)
    }
  }
  #endif
+0215:     assert MulSizeU(2, SIZE_HMAX) == SIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_MulSizeU(2, SIZE_HMAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 215, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 215, __pyx_L1_error)
    }
  }
  #endif
+0216:     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_1c_MulSizeU(__pyx_v_SIZE_MAX_SQRT, __pyx_v_SIZE_MAX_SQRT); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 216, __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, 216, __pyx_L1_error)
    }
  }
  #endif
+0217:     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_1c_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, 217, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - __pyx_v_SIZE_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 217, __pyx_L1_error)
    }
  }
  #endif
+0218:     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_1c_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, 218, __pyx_L1_error)
    if (unlikely(!((__pyx_t_2 == (SIZE_MAX - __pyx_v_SIZE_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 218, __pyx_L1_error)
    }
  }
  #endif
 0219: 
+0220:     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, 220, __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, 220, __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, 220, __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, 220, __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, 220, __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, 220, __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_1c_MulSizeU(SIZE_MAX, 2); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 220, __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, 220, __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, 220, __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, 220, __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, 220, __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, 220, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 220, __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:;
  }
+0221:     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, 221, __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, 221, __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, 221, __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, 221, __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, 221, __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, 221, __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_1c_MulSizeU(2, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 221, __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, 221, __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, 221, __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, 221, __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, 221, __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, 221, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 221, __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:;
  }
+0222:     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, 222, __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, 222, __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, 222, __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, 222, __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, 222, __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, 222, __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_1c_MulSizeU(SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 222, __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, 222, __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, 222, __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, 222, __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, 222, __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, 222, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 222, __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:;
  }
+0223:     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, 223, __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, 223, __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, 223, __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, 223, __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, 223, __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, 223, __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_1c_MulSizeU(SIZE_HMAX, SIZE_HMAX); if (unlikely(__pyx_t_2 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 223, __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, 223, __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, 223, __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, 223, __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, 223, __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, 223, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 223, __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:;
  }
+0224:     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, 224, __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, 224, __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, 224, __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, 224, __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, 224, __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, 224, __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_1c_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, 224, __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, 224, __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, 224, __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, 224, __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, 224, __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, 224, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 224, __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:;
  }
 0225: 
 0226: 
 0227: # ---------------------------------------------------------------------------------------------------------------------
 0228: 
+0229: def test_AddSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_17test_AddSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_16test_AddSizeS[] = "test_AddSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_17test_AddSizeS = {"test_AddSizeS", (PyCFunction)__pyx_pw_7_test_c_17test_AddSizeS, METH_NOARGS, __pyx_doc_7_test_c_16test_AddSizeS};
static PyObject *__pyx_pw_7_test_c_17test_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_16test_AddSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_16test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_17test_AddSizeS, 0, __pyx_n_s_test_AddSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__137)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddSizeS, __pyx_t_2) < 0) __PYX_ERR(0, 229, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_AddSizeS, 229, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__137)) __PYX_ERR(0, 229, __pyx_L1_error)
+0230:     assert AddSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(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 AddSizeS( 0, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(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 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 231, __pyx_L1_error)
    }
  }
  #endif
+0232:     assert AddSizeS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(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 AddSizeS(+1, +1) == +2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(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 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 233, __pyx_L1_error)
    }
  }
  #endif
+0234:     assert AddSizeS( 0, -1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(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 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 234, __pyx_L1_error)
    }
  }
  #endif
+0235:     assert AddSizeS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(-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 AddSizeS(-1, -1) == -2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(-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 == -2L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 236, __pyx_L1_error)
    }
  }
  #endif
+0237:     assert AddSizeS(SSIZE_MAX,  0) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 237, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 237, __pyx_L1_error)
    }
  }
  #endif
+0238:     assert AddSizeS(SSIZE_MAX, -1) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MAX, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 238, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 238, __pyx_L1_error)
    }
  }
  #endif
+0239:     assert AddSizeS(SSIZE_MIN,  0) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MIN, 0); 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 AddSizeS(SSIZE_MIN, +1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MIN, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 240, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 240, __pyx_L1_error)
    }
  }
  #endif
+0241:     assert AddSizeS( 0, SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(0, SSIZE_MAX); 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 AddSizeS( 0, SSIZE_MIN) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(0, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 242, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 242, __pyx_L1_error)
    }
  }
  #endif
+0243:     assert AddSizeS(-1, SSIZE_MAX) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(-1L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 243, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 243, __pyx_L1_error)
    }
  }
  #endif
+0244:     assert AddSizeS(+1, SSIZE_MIN) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(1, SSIZE_MIN); 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 AddSizeS(SSIZE_MAX, SSIZE_MIN) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MAX, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 245, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 245, __pyx_L1_error)
    }
  }
  #endif
+0246:     assert AddSizeS(SSIZE_MIN, SSIZE_MAX) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddSizeS(SSIZE_MIN, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 246, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 246, __pyx_L1_error)
    }
  }
  #endif
 0247: 
+0248:     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, 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_1c_AddSizeS(SSIZE_MAX, 1); 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_AddSizeS", __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__2, 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): AddSizeS(+1, SSIZE_MAX)
  /*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_1c_AddSizeS(1, SSIZE_MAX); 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_AddSizeS", __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__2, 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): AddSizeS(SSIZE_MAX, SSIZE_MAX)
  /*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_1c_AddSizeS(SSIZE_MAX, SSIZE_MAX); 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_AddSizeS", __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__2, 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): AddSizeS(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_1c_AddSizeS(SSIZE_MIN, -1L); 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_AddSizeS", __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__2, 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): AddSizeS(-1, 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_1c_AddSizeS(-1L, 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_AddSizeS", __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__2, 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): AddSizeS(SSIZE_MIN, SSIZE_MIN)
  /*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_1c_AddSizeS(SSIZE_MIN, SSIZE_MIN); 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_AddSizeS", __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__2, 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_CheckSubSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_19test_CheckSubSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_18test_CheckSubSizeS[] = "test_CheckSubSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_19test_CheckSubSizeS = {"test_CheckSubSizeS", (PyCFunction)__pyx_pw_7_test_c_19test_CheckSubSizeS, METH_NOARGS, __pyx_doc_7_test_c_18test_CheckSubSizeS};
static PyObject *__pyx_pw_7_test_c_19test_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_18test_CheckSubSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_18test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_19test_CheckSubSizeS, 0, __pyx_n_s_test_CheckSubSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__138)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 256, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_CheckSubSizeS, __pyx_t_2) < 0) __PYX_ERR(0, 256, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_CheckSubSizeS, 256, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__138)) __PYX_ERR(0, 256, __pyx_L1_error)
+0257:     assert SubSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 SubSizeS( 0, +1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 258, __pyx_L1_error)
    }
  }
  #endif
+0259:     assert SubSizeS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 259, __pyx_L1_error)
    }
  }
  #endif
+0260:     assert SubSizeS(+1, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 260, __pyx_L1_error)
    }
  }
  #endif
+0261:     assert SubSizeS( 0, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 261, __pyx_L1_error)
    }
  }
  #endif
+0262:     assert SubSizeS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(-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 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 262, __pyx_L1_error)
    }
  }
  #endif
+0263:     assert SubSizeS(-1, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(-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 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 263, __pyx_L1_error)
    }
  }
  #endif
+0264:     assert SubSizeS( 0, SSIZE_MAX) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 264, __pyx_L1_error)
    }
  }
  #endif
+0265:     assert SubSizeS(+1, SSIZE_MAX) == SSIZE_MIN + 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(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_MIN + 2)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 265, __pyx_L1_error)
    }
  }
  #endif
+0266:     assert SubSizeS(-1, SSIZE_MAX) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(-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) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 266, __pyx_L1_error)
    }
  }
  #endif
+0267:     assert SubSizeS(-1, SSIZE_MIN) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(-1L, 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 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 267, __pyx_L1_error)
    }
  }
  #endif
+0268:     assert SubSizeS(SSIZE_MAX,  0) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 268, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 268, __pyx_L1_error)
    }
  }
  #endif
+0269:     assert SubSizeS(SSIZE_MAX, +1) == SSIZE_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 269, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 269, __pyx_L1_error)
    }
  }
  #endif
+0270:     assert SubSizeS(SSIZE_MIN,  0) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MIN, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 270, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 270, __pyx_L1_error)
    }
  }
  #endif
+0271:     assert SubSizeS(SSIZE_MIN, -1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MIN, -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 SubSizeS(SSIZE_MAX, SSIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MAX, SSIZE_MAX); 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 SubSizeS(SSIZE_MIN, SSIZE_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubSizeS(SSIZE_MIN, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 273, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 273, __pyx_L1_error)
    }
  }
  #endif
 0274: 
+0275:     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, 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_1c_SubSizeS(0, 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_CheckSubSizeS", __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__2, 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): SubSizeS(+1, SSIZE_MIN)
  /*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_1c_SubSizeS(1, SSIZE_MIN); 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_CheckSubSizeS", __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__2, 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): SubSizeS(SSIZE_MAX, -1)
  /*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_1c_SubSizeS(SSIZE_MAX, -1L); 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_CheckSubSizeS", __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__2, 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): SubSizeS(SSIZE_MIN, +1)
  /*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_1c_SubSizeS(SSIZE_MIN, 1); 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_CheckSubSizeS", __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__2, 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): SubSizeS(SSIZE_MAX, SSIZE_MIN)
  /*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_1c_SubSizeS(SSIZE_MAX, SSIZE_MIN); 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_CheckSubSizeS", __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__2, 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): SubSizeS(SSIZE_MIN, 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_1c_SubSizeS(SSIZE_MIN, 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_CheckSubSizeS", __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__2, 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: 
 0282: 
+0283: def test_CheckMulSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_21test_CheckMulSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_20test_CheckMulSizeS[] = "test_CheckMulSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_21test_CheckMulSizeS = {"test_CheckMulSizeS", (PyCFunction)__pyx_pw_7_test_c_21test_CheckMulSizeS, METH_NOARGS, __pyx_doc_7_test_c_20test_CheckMulSizeS};
static PyObject *__pyx_pw_7_test_c_21test_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_20test_CheckMulSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_20test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_21test_CheckMulSizeS, 0, __pyx_n_s_test_CheckMulSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__139)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_CheckMulSizeS, __pyx_t_2) < 0) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__139 = (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, 283, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__139)) __PYX_ERR(0, 283, __pyx_L1_error)
+0284:     assert MulSizeS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(0, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 284, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 284, __pyx_L1_error)
    }
  }
  #endif
+0285:     assert MulSizeS( 0, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(0, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 285, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 285, __pyx_L1_error)
    }
  }
  #endif
+0286:     assert MulSizeS(+1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(1, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 286, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 286, __pyx_L1_error)
    }
  }
  #endif
+0287:     assert MulSizeS(+1, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(1, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 287, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 287, __pyx_L1_error)
    }
  }
  #endif
+0288:     assert MulSizeS( 0, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(0, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 288, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 288, __pyx_L1_error)
    }
  }
  #endif
+0289:     assert MulSizeS(-1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(-1L, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 289, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 289, __pyx_L1_error)
    }
  }
  #endif
+0290:     assert MulSizeS(-1, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(-1L, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 290, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 290, __pyx_L1_error)
    }
  }
  #endif
+0291:     assert MulSizeS( 0, SSIZE_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(0, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_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 MulSizeS(+1, SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(1, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 292, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 292, __pyx_L1_error)
    }
  }
  #endif
+0293:     assert MulSizeS(-1, SSIZE_MAX) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(-1L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 293, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 293, __pyx_L1_error)
    }
  }
  #endif
+0294:     assert MulSizeS( 0, SSIZE_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(0, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 294, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 294, __pyx_L1_error)
    }
  }
  #endif
+0295:     assert MulSizeS(+1, SSIZE_MIN) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(1, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 295, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 295, __pyx_L1_error)
    }
  }
  #endif
+0296:     assert MulSizeS(SSIZE_MAX,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(SSIZE_MAX, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 296, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 296, __pyx_L1_error)
    }
  }
  #endif
+0297:     assert MulSizeS(SSIZE_MAX, +1) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(SSIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 297, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 297, __pyx_L1_error)
    }
  }
  #endif
+0298:     assert MulSizeS(SSIZE_MAX, -1) == SSIZE_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(SSIZE_MAX, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 298, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SSIZE_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 298, __pyx_L1_error)
    }
  }
  #endif
+0299:     assert MulSizeS(SSIZE_MIN,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(SSIZE_MIN, 0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 299, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 299, __pyx_L1_error)
    }
  }
  #endif
+0300:     assert MulSizeS(SSIZE_MIN, +1) == SSIZE_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulSizeS(SSIZE_MIN, 1); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 300, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 300, __pyx_L1_error)
    }
  }
  #endif
 0301: 
+0302:     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, 302, __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, 302, __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, 302, __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, 302, __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, 302, __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, 302, __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_1c_MulSizeS(-1L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 302, __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, 302, __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, 302, __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, 302, __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, 302, __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, 302, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 302, __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:;
  }
+0303:     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, 303, __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, 303, __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, 303, __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, 303, __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, 303, __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, 303, __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_1c_MulSizeS(SSIZE_MAX, 2); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 303, __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, 303, __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, 303, __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, 303, __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, 303, __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, 303, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 303, __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:;
  }
+0304:     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, 304, __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, 304, __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, 304, __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, 304, __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, 304, __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, 304, __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_1c_MulSizeS(2, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 304, __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, 304, __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, 304, __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, 304, __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, 304, __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, 304, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 304, __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:;
  }
+0305:     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, 305, __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, 305, __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, 305, __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, 305, __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, 305, __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, 305, __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_1c_MulSizeS(SSIZE_MAX, -2L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 305, __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, 305, __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, 305, __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, 305, __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, 305, __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, 305, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 305, __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:;
  }
+0306:     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, 306, __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, 306, __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, 306, __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, 306, __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, 306, __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, 306, __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_1c_MulSizeS(-2L, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 306, __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, 306, __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, 306, __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, 306, __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, 306, __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, 306, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 306, __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:;
  }
+0307:     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, 307, __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, 307, __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, 307, __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, 307, __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, 307, __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, 307, __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_1c_MulSizeS(SSIZE_MAX, SSIZE_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 307, __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, 307, __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, 307, __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, 307, __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, 307, __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, 307, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 307, __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:;
  }
+0308:     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, 308, __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, 308, __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, 308, __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, 308, __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, 308, __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, 308, __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_1c_MulSizeS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 308, __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, 308, __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, 308, __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, 308, __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, 308, __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, 308, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 308, __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:;
  }
+0309:     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, 309, __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, 309, __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, 309, __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, 309, __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, 309, __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, 309, __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_1c_MulSizeS(SSIZE_MIN, 2); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 309, __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, 309, __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, 309, __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, 309, __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, 309, __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, 309, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 309, __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:;
  }
+0310:     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, 310, __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, 310, __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, 310, __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, 310, __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, 310, __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, 310, __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_1c_MulSizeS(2, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 310, __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, 310, __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, 310, __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, 310, __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, 310, __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, 310, __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__2, 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_L118;
      }
      __pyx_L118:;
    }
    goto __pyx_L128;
    __pyx_L115_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L128:;
  }
+0311:     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, 311, __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, 311, __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, 311, __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, 311, __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, 311, __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, 311, __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_1c_MulSizeS(SSIZE_MIN, -2L); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 311, __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, 311, __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, 311, __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, 311, __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, 311, __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, 311, __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__2, 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_L132;
      }
      __pyx_L132:;
    }
    goto __pyx_L142;
    __pyx_L129_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L142:;
  }
+0312:     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, 312, __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, 312, __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, 312, __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, 312, __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, 312, __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, 312, __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_1c_MulSizeS(-2L, SSIZE_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 312, __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, 312, __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, 312, __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, 312, __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, 312, __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, 312, __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__2, 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_L146;
      }
      __pyx_L146:;
    }
    goto __pyx_L156;
    __pyx_L143_error:;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    goto __pyx_L1_error;
    __pyx_L156:;
  }
 0313: 
 0314: 
 0315: # =====================================================================================================================
 0316: 
+0317: def test_AddAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_23test_AddAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_22test_AddAddrU[] = "test_AddAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_23test_AddAddrU = {"test_AddAddrU", (PyCFunction)__pyx_pw_7_test_c_23test_AddAddrU, METH_NOARGS, __pyx_doc_7_test_c_22test_AddAddrU};
static PyObject *__pyx_pw_7_test_c_23test_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_22test_AddAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_22test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_23test_AddAddrU, 0, __pyx_n_s_test_AddAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__140)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 317, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddAddrU, __pyx_t_2) < 0) __PYX_ERR(0, 317, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__140 = (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, 317, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__140)) __PYX_ERR(0, 317, __pyx_L1_error)
+0318:     assert AddAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(0, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 318, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 318, __pyx_L1_error)
    }
  }
  #endif
+0319:     assert AddAddrU(0, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(0, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 319, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 319, __pyx_L1_error)
    }
  }
  #endif
+0320:     assert AddAddrU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(1, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 320, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 320, __pyx_L1_error)
    }
  }
  #endif
+0321:     assert AddAddrU(1, 1) == 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(1, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 321, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 321, __pyx_L1_error)
    }
  }
  #endif
+0322:     assert AddAddrU(ADDR_MAX, 0) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 322, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 322, __pyx_L1_error)
    }
  }
  #endif
+0323:     assert AddAddrU(0, ADDR_MAX) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 323, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 323, __pyx_L1_error)
    }
  }
  #endif
 0324: 
+0325:     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, 325, __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, 325, __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, 325, __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, 325, __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, 325, __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, 325, __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_1c_AddAddrU(ADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 325, __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, 325, __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, 325, __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, 325, __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, 325, __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, 325, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 325, __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:;
  }
+0326:     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, 326, __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, 326, __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, 326, __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, 326, __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, 326, __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, 326, __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_1c_AddAddrU(1, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 326, __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, 326, __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, 326, __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, 326, __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, 326, __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, 326, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 326, __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:;
  }
+0327:     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, 327, __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, 327, __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, 327, __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, 327, __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, 327, __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, 327, __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_1c_AddAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 327, __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, 327, __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, 327, __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, 327, __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, 327, __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, 327, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 327, __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:;
  }
 0328: 
 0329: 
+0330: def test_SubAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_25test_SubAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_24test_SubAddrU[] = "test_SubAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_25test_SubAddrU = {"test_SubAddrU", (PyCFunction)__pyx_pw_7_test_c_25test_SubAddrU, METH_NOARGS, __pyx_doc_7_test_c_24test_SubAddrU};
static PyObject *__pyx_pw_7_test_c_25test_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_24test_SubAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_24test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_25test_SubAddrU, 0, __pyx_n_s_test_SubAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__141)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubAddrU, __pyx_t_2) < 0) __PYX_ERR(0, 330, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_SubAddrU, 330, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__141)) __PYX_ERR(0, 330, __pyx_L1_error)
+0331:     assert SubAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrU(0, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 331, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 331, __pyx_L1_error)
    }
  }
  #endif
+0332:     assert SubAddrU(1, 0) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrU(1, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 332, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 332, __pyx_L1_error)
    }
  }
  #endif
+0333:     assert SubAddrU(1, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrU(1, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 333, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 333, __pyx_L1_error)
    }
  }
  #endif
+0334:     assert SubAddrU(ADDR_MAX, 0) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 334, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 334, __pyx_L1_error)
    }
  }
  #endif
+0335:     assert SubAddrU(ADDR_MAX, ADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 335, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 335, __pyx_L1_error)
    }
  }
  #endif
 0336: 
+0337:     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, 337, __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, 337, __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, 337, __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, 337, __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, 337, __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, 337, __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_1c_SubAddrU(0, 1); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 337, __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, 337, __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, 337, __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, 337, __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, 337, __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, 337, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 337, __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:;
  }
+0338:     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, 338, __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, 338, __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, 338, __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, 338, __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, 338, __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, 338, __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_1c_SubAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 338, __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, 338, __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, 338, __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, 338, __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, 338, __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, 338, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 338, __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:;
  }
+0339:     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, 339, __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, 339, __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, 339, __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, 339, __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, 339, __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, 339, __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_1c_SubAddrU((ADDR_MAX - 1), ADDR_MAX); if (unlikely(__pyx_t_1 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 339, __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, 339, __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, 339, __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, 339, __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, 339, __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, 339, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 339, __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:;
  }
 0340: 
 0341: 
+0342: def test_MulAddrU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_27test_MulAddrU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_26test_MulAddrU[] = "test_MulAddrU()";
static PyMethodDef __pyx_mdef_7_test_c_27test_MulAddrU = {"test_MulAddrU", (PyCFunction)__pyx_pw_7_test_c_27test_MulAddrU, METH_NOARGS, __pyx_doc_7_test_c_26test_MulAddrU};
static PyObject *__pyx_pw_7_test_c_27test_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_26test_MulAddrU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_26test_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__142 = PyTuple_Pack(1, __pyx_n_s_ADDR_MAX_SQRT); if (unlikely(!__pyx_tuple__142)) __PYX_ERR(0, 342, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__142);
  __Pyx_GIVEREF(__pyx_tuple__142);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_27test_MulAddrU, 0, __pyx_n_s_test_MulAddrU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__143)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 342, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulAddrU, __pyx_t_2) < 0) __PYX_ERR(0, 342, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__143 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__142, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_MulAddrU, 342, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__143)) __PYX_ERR(0, 342, __pyx_L1_error)
+0343:     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);
+0344:     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, 344, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 344, __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, 344, __pyx_L1_error)
    }
  }
  #endif
 0345: 
+0346:     assert MulAddrU(0, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(0, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 346, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 346, __pyx_L1_error)
    }
  }
  #endif
+0347:     assert MulAddrU(0, 1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(0, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 347, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 347, __pyx_L1_error)
    }
  }
  #endif
+0348:     assert MulAddrU(1, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(1, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 348, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 348, __pyx_L1_error)
    }
  }
  #endif
+0349:     assert MulAddrU(1, 1) == 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(1, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 349, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 349, __pyx_L1_error)
    }
  }
  #endif
+0350:     assert MulAddrU(0, ADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(0, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 350, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 350, __pyx_L1_error)
    }
  }
  #endif
+0351:     assert MulAddrU(1, ADDR_MAX) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(1, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 351, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 351, __pyx_L1_error)
    }
  }
  #endif
+0352:     assert MulAddrU(ADDR_MAX, 0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(ADDR_MAX, 0); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 352, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 352, __pyx_L1_error)
    }
  }
  #endif
+0353:     assert MulAddrU(ADDR_MAX, 1) == ADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_MulAddrU(ADDR_MAX, 1); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 353, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == ADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 353, __pyx_L1_error)
    }
  }
  #endif
+0354:     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_1c_MulAddrU(__pyx_v_ADDR_MAX_SQRT, __pyx_v_ADDR_MAX_SQRT); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 354, __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, 354, __pyx_L1_error)
    }
  }
  #endif
+0355:     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_1c_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, 355, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == (ADDR_MAX - __pyx_v_ADDR_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 355, __pyx_L1_error)
    }
  }
  #endif
+0356:     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_1c_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, 356, __pyx_L1_error)
    if (unlikely(!((__pyx_t_3 == (ADDR_MAX - __pyx_v_ADDR_MAX_SQRT)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 356, __pyx_L1_error)
    }
  }
  #endif
 0357: 
+0358:     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, 358, __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, 358, __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, 358, __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, 358, __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, 358, __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, 358, __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_1c_MulAddrU(ADDR_MAX, 2); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 358, __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, 358, __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, 358, __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, 358, __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, 358, __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, 358, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 358, __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:;
  }
+0359:     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, 359, __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, 359, __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, 359, __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, 359, __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, 359, __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, 359, __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_1c_MulAddrU(2, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 359, __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, 359, __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, 359, __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, 359, __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, 359, __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, 359, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 359, __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:;
  }
+0360:     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, 360, __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, 360, __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, 360, __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, 360, __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, 360, __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, 360, __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_1c_MulAddrU(ADDR_MAX, ADDR_MAX); if (unlikely(__pyx_t_3 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 360, __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, 360, __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, 360, __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, 360, __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, 360, __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, 360, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 360, __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:;
  }
+0361:     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, 361, __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, 361, __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, 361, __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, 361, __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, 361, __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, 361, __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_1c_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, 361, __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, 361, __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, 361, __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, 361, __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, 361, __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, 361, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 361, __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:;
  }
 0362: 
 0363: 
+0364: def test_AddrToSizeU():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_29test_AddrToSizeU(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_28test_AddrToSizeU[] = "test_AddrToSizeU()";
static PyMethodDef __pyx_mdef_7_test_c_29test_AddrToSizeU = {"test_AddrToSizeU", (PyCFunction)__pyx_pw_7_test_c_29test_AddrToSizeU, METH_NOARGS, __pyx_doc_7_test_c_28test_AddrToSizeU};
static PyObject *__pyx_pw_7_test_c_29test_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_28test_AddrToSizeU(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_28test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_29test_AddrToSizeU, 0, __pyx_n_s_test_AddrToSizeU, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__144)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 364, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddrToSizeU, __pyx_t_2) < 0) __PYX_ERR(0, 364, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_AddrToSizeU, 364, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__144)) __PYX_ERR(0, 364, __pyx_L1_error)
+0365:     assert AddrToSizeU(0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeU(0); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 365, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 365, __pyx_L1_error)
    }
  }
  #endif
+0366:     assert AddrToSizeU(<addr_t>SIZE_MAX) == SIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeU(((addr_t)SIZE_MAX)); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 366, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 366, __pyx_L1_error)
    }
  }
  #endif
 0367: 
+0368:     if SIZE_MAX < ADDR_MAX:
  __pyx_t_2 = ((SIZE_MAX < ADDR_MAX) != 0);
  if (__pyx_t_2) {
/* … */
    goto __pyx_L3;
  }
+0369:         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, 369, __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, 369, __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, 369, __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, 369, __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, 369, __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, 369, __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_1c_AddAddrU(SIZE_MAX, 1); if (unlikely(__pyx_t_11 == ((addr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 369, __pyx_L8_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeU(__pyx_t_11); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 369, __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, 369, __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, 369, __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, 369, __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, 369, __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, 369, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 369, __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:;
    }
 0370:     else:
+0371:         assert AddrToSizeU(ADDR_MAX) == <size_t>ADDR_MAX
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeU(ADDR_MAX); if (unlikely(__pyx_t_1 == ((size_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 371, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((size_t)ADDR_MAX)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 371, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L3:;
 0372: 
 0373: 
 0374: # ---------------------------------------------------------------------------------------------------------------------
 0375: 
+0376: def test_AddAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_31test_AddAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_30test_AddAddrS[] = "test_AddAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_31test_AddAddrS = {"test_AddAddrS", (PyCFunction)__pyx_pw_7_test_c_31test_AddAddrS, METH_NOARGS, __pyx_doc_7_test_c_30test_AddAddrS};
static PyObject *__pyx_pw_7_test_c_31test_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_30test_AddAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_30test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_31test_AddAddrS, 0, __pyx_n_s_test_AddAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__145)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 376, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddAddrS, __pyx_t_2) < 0) __PYX_ERR(0, 376, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 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_AddAddrS, 376, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__145)) __PYX_ERR(0, 376, __pyx_L1_error)
+0377:     assert AddAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(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 AddAddrS( 0, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 378, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 378, __pyx_L1_error)
    }
  }
  #endif
+0379:     assert AddAddrS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(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 AddAddrS(+1, +1) == +2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 380, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 2) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 380, __pyx_L1_error)
    }
  }
  #endif
+0381:     assert AddAddrS( 0, -1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 381, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 381, __pyx_L1_error)
    }
  }
  #endif
+0382:     assert AddAddrS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(-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 AddAddrS(-1, -1) == -2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 383, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -2L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 383, __pyx_L1_error)
    }
  }
  #endif
+0384:     assert AddAddrS(SADDR_MAX,  0) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 384, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 384, __pyx_L1_error)
    }
  }
  #endif
+0385:     assert AddAddrS(SADDR_MAX, -1) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MAX, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 385, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 385, __pyx_L1_error)
    }
  }
  #endif
+0386:     assert AddAddrS(SADDR_MIN,  0) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MIN, 0); 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 AddAddrS(SADDR_MIN, +1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MIN, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 387, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 387, __pyx_L1_error)
    }
  }
  #endif
+0388:     assert AddAddrS( 0, SADDR_MAX) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(0, SADDR_MAX); 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 AddAddrS( 0, SADDR_MIN) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(0, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 389, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 389, __pyx_L1_error)
    }
  }
  #endif
+0390:     assert AddAddrS(-1, SADDR_MAX) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(-1L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 390, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 390, __pyx_L1_error)
    }
  }
  #endif
+0391:     assert AddAddrS(+1, SADDR_MIN) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(1, SADDR_MIN); 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 AddAddrS(SADDR_MAX, SADDR_MIN) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MAX, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 392, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 392, __pyx_L1_error)
    }
  }
  #endif
+0393:     assert AddAddrS(SADDR_MIN, SADDR_MAX) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddAddrS(SADDR_MIN, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 393, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 393, __pyx_L1_error)
    }
  }
  #endif
 0394: 
+0395:     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, 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_1c_AddAddrS(SADDR_MAX, 1); 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_AddAddrS", __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__2, 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): AddAddrS(+1, SADDR_MAX)
  /*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_1c_AddAddrS(1, SADDR_MAX); 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_AddAddrS", __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__2, 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): AddAddrS(SADDR_MAX, SADDR_MAX)
  /*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_1c_AddAddrS(SADDR_MAX, SADDR_MAX); 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_AddAddrS", __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__2, 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): AddAddrS(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_1c_AddAddrS(SADDR_MIN, -1L); 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_AddAddrS", __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__2, 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): AddAddrS(-1, 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_1c_AddAddrS(-1L, 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_AddAddrS", __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__2, 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): AddAddrS(SADDR_MIN, SADDR_MIN)
  /*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_1c_AddAddrS(SADDR_MIN, SADDR_MIN); 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_AddAddrS", __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__2, 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_SubAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_33test_SubAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_32test_SubAddrS[] = "test_SubAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_33test_SubAddrS = {"test_SubAddrS", (PyCFunction)__pyx_pw_7_test_c_33test_SubAddrS, METH_NOARGS, __pyx_doc_7_test_c_32test_SubAddrS};
static PyObject *__pyx_pw_7_test_c_33test_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_32test_SubAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_32test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_33test_SubAddrS, 0, __pyx_n_s_test_SubAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__146)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 403, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_SubAddrS, __pyx_t_2) < 0) __PYX_ERR(0, 403, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__146 = (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, 403, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__146)) __PYX_ERR(0, 403, __pyx_L1_error)
+0404:     assert SubAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(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 SubAddrS( 0, +1) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 405, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 405, __pyx_L1_error)
    }
  }
  #endif
+0406:     assert SubAddrS(+1,  0) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(1, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 406, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 406, __pyx_L1_error)
    }
  }
  #endif
+0407:     assert SubAddrS(+1, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 407, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 407, __pyx_L1_error)
    }
  }
  #endif
+0408:     assert SubAddrS( 0, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 408, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 408, __pyx_L1_error)
    }
  }
  #endif
+0409:     assert SubAddrS(-1,  0) == -1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(-1L, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 409, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == -1L) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 409, __pyx_L1_error)
    }
  }
  #endif
+0410:     assert SubAddrS(-1, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 410, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 410, __pyx_L1_error)
    }
  }
  #endif
+0411:     assert SubAddrS( 0, SADDR_MAX) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(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 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 411, __pyx_L1_error)
    }
  }
  #endif
+0412:     assert SubAddrS(+1, SADDR_MAX) == SADDR_MIN + 2
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(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_MIN + 2)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 412, __pyx_L1_error)
    }
  }
  #endif
+0413:     assert SubAddrS(-1, SADDR_MAX) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(-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) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 413, __pyx_L1_error)
    }
  }
  #endif
+0414:     assert SubAddrS(-1, SADDR_MIN) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(-1L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 414, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 414, __pyx_L1_error)
    }
  }
  #endif
+0415:     assert SubAddrS(SADDR_MAX,  0) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 415, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 415, __pyx_L1_error)
    }
  }
  #endif
+0416:     assert SubAddrS(SADDR_MAX, +1) == SADDR_MAX - 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 416, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MAX - 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 416, __pyx_L1_error)
    }
  }
  #endif
+0417:     assert SubAddrS(SADDR_MIN,  0) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MIN, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 417, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 417, __pyx_L1_error)
    }
  }
  #endif
+0418:     assert SubAddrS(SADDR_MIN, -1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MIN, -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 SubAddrS(SADDR_MAX, SADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MAX, SADDR_MAX); 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 SubAddrS(SADDR_MIN, SADDR_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_SubAddrS(SADDR_MIN, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 420, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 420, __pyx_L1_error)
    }
  }
  #endif
 0421: 
+0422:     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, 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_1c_SubAddrS(0, 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_SubAddrS", __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__2, 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): SubAddrS(+1, SADDR_MIN)
  /*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_1c_SubAddrS(1, SADDR_MIN); 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_SubAddrS", __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__2, 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): SubAddrS(SADDR_MAX, -1)
  /*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_1c_SubAddrS(SADDR_MAX, -1L); 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_SubAddrS", __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__2, 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): SubAddrS(SADDR_MIN, +1)
  /*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_1c_SubAddrS(SADDR_MIN, 1); 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_SubAddrS", __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__2, 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): SubAddrS(SADDR_MAX, SADDR_MIN)
  /*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_1c_SubAddrS(SADDR_MAX, SADDR_MIN); 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_SubAddrS", __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__2, 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): SubAddrS(SADDR_MIN, 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_1c_SubAddrS(SADDR_MIN, 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_SubAddrS", __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__2, 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: 
 0429: 
+0430: def test_MulAddrS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_35test_MulAddrS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_34test_MulAddrS[] = "test_MulAddrS()";
static PyMethodDef __pyx_mdef_7_test_c_35test_MulAddrS = {"test_MulAddrS", (PyCFunction)__pyx_pw_7_test_c_35test_MulAddrS, METH_NOARGS, __pyx_doc_7_test_c_34test_MulAddrS};
static PyObject *__pyx_pw_7_test_c_35test_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_34test_MulAddrS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_34test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_35test_MulAddrS, 0, __pyx_n_s_test_MulAddrS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__147)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_MulAddrS, __pyx_t_2) < 0) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__147 = (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, 430, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__147)) __PYX_ERR(0, 430, __pyx_L1_error)
+0431:     assert MulAddrS( 0,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(0, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 431, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 431, __pyx_L1_error)
    }
  }
  #endif
+0432:     assert MulAddrS( 0, +1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(0, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 432, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 432, __pyx_L1_error)
    }
  }
  #endif
+0433:     assert MulAddrS(+1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(1, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 433, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 433, __pyx_L1_error)
    }
  }
  #endif
+0434:     assert MulAddrS(+1, +1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(1, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 434, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 434, __pyx_L1_error)
    }
  }
  #endif
+0435:     assert MulAddrS( 0, -1) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(0, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 435, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 435, __pyx_L1_error)
    }
  }
  #endif
+0436:     assert MulAddrS(-1,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(-1L, 0); if (unlikely(__pyx_t_1 == ((saddr_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 MulAddrS(-1, -1) == +1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(-1L, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 437, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 1) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 437, __pyx_L1_error)
    }
  }
  #endif
+0438:     assert MulAddrS( 0, SADDR_MAX) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(0, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 438, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 438, __pyx_L1_error)
    }
  }
  #endif
+0439:     assert MulAddrS(+1, SADDR_MAX) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(1, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 439, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 439, __pyx_L1_error)
    }
  }
  #endif
+0440:     assert MulAddrS(-1, SADDR_MAX) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(-1L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 440, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 440, __pyx_L1_error)
    }
  }
  #endif
+0441:     assert MulAddrS( 0, SADDR_MIN) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(0, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 441, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 441, __pyx_L1_error)
    }
  }
  #endif
+0442:     assert MulAddrS(+1, SADDR_MIN) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(1, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 442, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 442, __pyx_L1_error)
    }
  }
  #endif
+0443:     assert MulAddrS(SADDR_MAX,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(SADDR_MAX, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 443, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 443, __pyx_L1_error)
    }
  }
  #endif
+0444:     assert MulAddrS(SADDR_MAX, +1) == SADDR_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(SADDR_MAX, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 444, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 444, __pyx_L1_error)
    }
  }
  #endif
+0445:     assert MulAddrS(SADDR_MAX, -1) == SADDR_MIN + 1
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(SADDR_MAX, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 445, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == (SADDR_MIN + 1)) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 445, __pyx_L1_error)
    }
  }
  #endif
+0446:     assert MulAddrS(SADDR_MIN,  0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(SADDR_MIN, 0); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 446, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 446, __pyx_L1_error)
    }
  }
  #endif
+0447:     assert MulAddrS(SADDR_MIN, +1) == SADDR_MIN
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_MulAddrS(SADDR_MIN, 1); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 447, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SADDR_MIN) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 447, __pyx_L1_error)
    }
  }
  #endif
 0448: 
+0449:     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, 449, __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, 449, __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, 449, __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, 449, __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, 449, __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, 449, __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_1c_MulAddrS(-1L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 449, __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, 449, __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, 449, __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, 449, __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, 449, __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, 449, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 449, __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:;
  }
+0450:     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, 450, __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, 450, __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, 450, __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, 450, __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, 450, __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, 450, __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_1c_MulAddrS(SADDR_MAX, 2); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 450, __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, 450, __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, 450, __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, 450, __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, 450, __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, 450, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 450, __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:;
  }
+0451:     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, 451, __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, 451, __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, 451, __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, 451, __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, 451, __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, 451, __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_1c_MulAddrS(2, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 451, __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, 451, __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, 451, __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, 451, __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, 451, __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, 451, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 451, __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:;
  }
+0452:     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, 452, __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, 452, __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, 452, __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, 452, __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, 452, __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, 452, __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_1c_MulAddrS(SADDR_MAX, -2L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 452, __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, 452, __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, 452, __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, 452, __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, 452, __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, 452, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 452, __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:;
  }
+0453:     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, 453, __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, 453, __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, 453, __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, 453, __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, 453, __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, 453, __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_1c_MulAddrS(-2L, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 453, __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, 453, __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, 453, __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, 453, __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, 453, __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, 453, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 453, __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:;
  }
+0454:     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, 454, __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, 454, __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, 454, __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, 454, __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, 454, __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, 454, __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_1c_MulAddrS(SADDR_MAX, SADDR_MAX); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 454, __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, 454, __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, 454, __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, 454, __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, 454, __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, 454, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 454, __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:;
  }
+0455:     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, 455, __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, 455, __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, 455, __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, 455, __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, 455, __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, 455, __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_1c_MulAddrS(SADDR_MIN, -1L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 455, __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, 455, __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, 455, __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, 455, __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, 455, __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, 455, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 455, __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:;
  }
+0456:     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, 456, __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, 456, __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, 456, __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, 456, __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, 456, __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, 456, __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_1c_MulAddrS(SADDR_MIN, 2); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 456, __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, 456, __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, 456, __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, 456, __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, 456, __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, 456, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 456, __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:;
  }
+0457:     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, 457, __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, 457, __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, 457, __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, 457, __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, 457, __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, 457, __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_1c_MulAddrS(2, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 457, __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, 457, __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, 457, __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, 457, __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, 457, __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, 457, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 457, __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:;
  }
+0458:     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, 458, __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, 458, __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, 458, __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, 458, __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, 458, __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, 458, __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_1c_MulAddrS(SADDR_MIN, -2L); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 458, __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, 458, __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, 458, __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, 458, __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, 458, __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, 458, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 458, __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:;
  }
+0459:     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, 459, __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, 459, __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, 459, __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, 459, __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, 459, __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, 459, __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_1c_MulAddrS(-2L, SADDR_MIN); if (unlikely(__pyx_t_1 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 459, __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, 459, __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, 459, __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, 459, __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, 459, __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, 459, __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__2, NULL);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 459, __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:;
  }
 0460: 
 0461: 
+0462: def test_AddrToSizeS():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_37test_AddrToSizeS(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_36test_AddrToSizeS[] = "test_AddrToSizeS()";
static PyMethodDef __pyx_mdef_7_test_c_37test_AddrToSizeS = {"test_AddrToSizeS", (PyCFunction)__pyx_pw_7_test_c_37test_AddrToSizeS, METH_NOARGS, __pyx_doc_7_test_c_36test_AddrToSizeS};
static PyObject *__pyx_pw_7_test_c_37test_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_36test_AddrToSizeS(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_36test_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_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_37test_AddrToSizeS, 0, __pyx_n_s_test_AddrToSizeS, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__148)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_AddrToSizeS, __pyx_t_2) < 0) __PYX_ERR(0, 462, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* … */
  __pyx_codeobj__148 = (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, 462, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__148)) __PYX_ERR(0, 462, __pyx_L1_error)
+0463:     assert AddrToSizeS(0) == 0
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(0); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 463, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 0) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 463, __pyx_L1_error)
    }
  }
  #endif
+0464:     assert AddrToSizeS(<saddr_t>SSIZE_MAX) == SSIZE_MAX
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(((saddr_t)SSIZE_MAX)); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 464, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == SSIZE_MAX) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 464, __pyx_L1_error)
    }
  }
  #endif
 0465: 
+0466:     if SSIZE_MAX < SADDR_MAX:
  __pyx_t_2 = ((SSIZE_MAX < SADDR_MAX) != 0);
  if (__pyx_t_2) {
/* … */
    goto __pyx_L3;
  }
+0467:         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, 467, __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, 467, __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, 467, __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, 467, __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, 467, __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, 467, __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_1c_AddAddrS(SSIZE_MAX, 1); if (unlikely(__pyx_t_11 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 467, __pyx_L8_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(__pyx_t_11); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 467, __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, 467, __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, 467, __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, 467, __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, 467, __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, 467, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 467, __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:;
    }
 0468:     else:
+0469:         assert AddrToSizeS(SADDR_MAX) == <ssize_t>SADDR_MAX
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(SADDR_MAX); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 469, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((Py_ssize_t)SADDR_MAX)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 469, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L3:;
 0470: 
+0471:     if SSIZE_MIN > SADDR_MIN:
  __pyx_t_13 = ((SSIZE_MIN > SADDR_MIN) != 0);
  if (__pyx_t_13) {
/* … */
    goto __pyx_L18;
  }
+0472:         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, 472, __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, 472, __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, 472, __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, 472, __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, 472, __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, 472, __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_1c_AddAddrS(SSIZE_MIN, -1L); if (unlikely(__pyx_t_11 == ((saddr_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 472, __pyx_L23_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(__pyx_t_11); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 472, __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, 472, __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, 472, __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, 472, __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, 472, __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, 472, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 472, __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:;
    }
 0473:     else:
+0474:         assert AddrToSizeS(SADDR_MIN) == <ssize_t>SADDR_MIN
  /*else*/ {
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_AddrToSizeS(SADDR_MIN); if (unlikely(__pyx_t_1 == ((Py_ssize_t)0xDEAD) && PyErr_Occurred())) __PYX_ERR(0, 474, __pyx_L1_error)
      if (unlikely(!((__pyx_t_1 == ((Py_ssize_t)SADDR_MIN)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 474, __pyx_L1_error)
      }
    }
    #endif
  }
  __pyx_L18:;
 0475: 
 0476: 
 0477: # =====================================================================================================================
 0478: 
+0479: def test_Block_Alloc_Free():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_39test_Block_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_38test_Block_Alloc_Free[] = "test_Block_Alloc_Free()";
static PyMethodDef __pyx_mdef_7_test_c_39test_Block_Alloc_Free = {"test_Block_Alloc_Free", (PyCFunction)__pyx_pw_7_test_c_39test_Block_Alloc_Free, METH_NOARGS, __pyx_doc_7_test_c_38test_Block_Alloc_Free};
static PyObject *__pyx_pw_7_test_c_39test_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_38test_Block_Alloc_Free(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_38test_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__149 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__149)) __PYX_ERR(0, 479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__149);
  __Pyx_GIVEREF(__pyx_tuple__149);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_39test_Block_Alloc_Free, 0, __pyx_n_s_test_Block_Alloc_Free, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__150)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Alloc_Free, __pyx_t_2) < 0) __PYX_ERR(0, 479, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__150 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__149, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Alloc_Free, 479, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__150)) __PYX_ERR(0, 479, __pyx_L1_error)
 0480:     cdef:
+0481:         Block_* block = NULL
  __pyx_v_block = NULL;
 0482: 
+0483:     try:
  /*try:*/ {
+0484:         block = Block_Alloc(0x1234, 0, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Alloc(0x1234, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 484, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0485:         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, 485, __pyx_L4_error)
      }
    }
    #endif
+0486:         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, 486, __pyx_L4_error)
      }
    }
    #endif
+0487:         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, 487, __pyx_L4_error)
      }
    }
    #endif
+0488:         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, 488, __pyx_L4_error)
      }
    }
    #endif
+0489:         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, 489, __pyx_L4_error)
      }
    }
    #endif
+0490:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 490, __pyx_L4_error)
      }
    }
    #endif
+0491:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 491, __pyx_L4_error)
      }
    }
    #endif
+0492:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 492, __pyx_L4_error)
      }
    }
    #endif
+0493:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0494: 
+0495:         block = Block_Alloc(0x1234, 0x100, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Alloc(0x1234, 0x100, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 495, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0496:         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, 496, __pyx_L4_error)
      }
    }
    #endif
+0497:         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, 497, __pyx_L4_error)
      }
    }
    #endif
+0498:         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, 498, __pyx_L4_error)
      }
    }
    #endif
+0499:         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, 499, __pyx_L4_error)
      }
    }
    #endif
+0500:         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, 500, __pyx_L4_error)
      }
    }
    #endif
+0501:         assert Block_Length(block) == 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0x100) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 501, __pyx_L4_error)
      }
    }
    #endif
+0502:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 502, __pyx_L4_error)
      }
    }
    #endif
+0503:         assert Block_Endex(block) == 0x1334
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1334) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 503, __pyx_L4_error)
      }
    }
    #endif
+0504:         assert Block_Eq_(block, 0x100, b'\0' * 0x100) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_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, 504, __pyx_L4_error)
      }
    }
    #endif
+0505:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 0506: 
 0507:     finally:
+0508:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0509: 
 0510: 
+0511: def test_Block_Create():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_41test_Block_Create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_40test_Block_Create[] = "test_Block_Create()";
static PyMethodDef __pyx_mdef_7_test_c_41test_Block_Create = {"test_Block_Create", (PyCFunction)__pyx_pw_7_test_c_41test_Block_Create, METH_NOARGS, __pyx_doc_7_test_c_40test_Block_Create};
static PyObject *__pyx_pw_7_test_c_41test_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_40test_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_40test_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, 511, __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__151 = 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__151)) __PYX_ERR(0, 511, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__151);
  __Pyx_GIVEREF(__pyx_tuple__151);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_41test_Block_Create, 0, __pyx_n_s_test_Block_Create, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__152)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 511, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Create, __pyx_t_2) < 0) __PYX_ERR(0, 511, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__152 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__151, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Create, 511, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__152)) __PYX_ERR(0, 511, __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;
};

 0512:     cdef:
+0513:         Block_* block = NULL
  __pyx_cur_scope->__pyx_v_block = NULL;
+0514:         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;
+0515:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0516: 
+0517:     try:
  /*try:*/ {
+0518:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 518, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0519:         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, 519, __pyx_L4_error)
      }
    }
    #endif
+0520:         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, 520, __pyx_L4_error)
      }
    }
    #endif
+0521:         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, 521, __pyx_L4_error)
      }
    }
    #endif
+0522:         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, 522, __pyx_L4_error)
      }
    }
    #endif
+0523:         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, 523, __pyx_L4_error)
      }
    }
    #endif
+0524:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 524, __pyx_L4_error)
      }
    }
    #endif
+0525:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 525, __pyx_L4_error)
      }
    }
    #endif
+0526:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 526, __pyx_L4_error)
      }
    }
    #endif
+0527:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0528: 
+0529:         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, 529, __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, 529, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 529, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0530:         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, 530, __pyx_L4_error)
      }
    }
    #endif
+0531:         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, 531, __pyx_L4_error)
      }
    }
    #endif
+0532:         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, 532, __pyx_L4_error)
      }
    }
    #endif
+0533:         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, 533, __pyx_L4_error)
      }
    }
    #endif
+0534:         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, 534, __pyx_L4_error)
      }
    }
    #endif
+0535:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 535, __pyx_L4_error)
      }
    }
    #endif
+0536:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 536, __pyx_L4_error)
      }
    }
    #endif
+0537:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 537, __pyx_L4_error)
      }
    }
    #endif
+0538:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0539: 
+0540:         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, 540, __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, 540, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 540, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0541:         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, 541, __pyx_L4_error)
      }
    }
    #endif
+0542:         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, 542, __pyx_L4_error)
      }
    }
    #endif
+0543:         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, 543, __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, 543, __pyx_L4_error)
      }
    }
    #endif
+0544:         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, 544, __pyx_L4_error)
      }
    }
    #endif
+0545:         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, 545, __pyx_L4_error)
      }
    }
    #endif
+0546:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 546, __pyx_L4_error)
      }
    }
    #endif
+0547:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 547, __pyx_L4_error)
      }
    }
    #endif
+0548:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 548, __pyx_L4_error)
      }
    }
    #endif
+0549:         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, 549, __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, 549, __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, 549, __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_1c_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, 549, __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, 549, __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, 549, __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, 549, __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, 549, __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, 549, __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, 549, __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, 549, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 549, __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;
};

+0550:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0551: 
+0552:         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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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, 552, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 552, __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, 552, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__3);
  __Pyx_GIVEREF(__pyx_tuple__3);
+0553:             block = Block_Create(0x1234, size, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 553, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0554: 
 0555:     finally:
+0556:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0557: 
 0558: 
+0559: def test_Block_Copy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_43test_Block_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_42test_Block_Copy[] = "test_Block_Copy()";
static PyMethodDef __pyx_mdef_7_test_c_43test_Block_Copy = {"test_Block_Copy", (PyCFunction)__pyx_pw_7_test_c_43test_Block_Copy, METH_NOARGS, __pyx_doc_7_test_c_42test_Block_Copy};
static PyObject *__pyx_pw_7_test_c_43test_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_42test_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_42test_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, 559, __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__153 = 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__153)) __PYX_ERR(0, 559, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__153);
  __Pyx_GIVEREF(__pyx_tuple__153);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_43test_Block_Copy, 0, __pyx_n_s_test_Block_Copy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__154)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 559, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Copy, __pyx_t_2) < 0) __PYX_ERR(0, 559, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__154 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__153, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Copy, 559, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__154)) __PYX_ERR(0, 559, __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;
};

 0560:     cdef:
+0561:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0562:         Block_* block2 = NULL
  __pyx_cur_scope->__pyx_v_block2 = NULL;
+0563:         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;
+0564:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0565:         size_t i
 0566: 
+0567:     try:
  /*try:*/ {
+0568:         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, 568, __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, 568, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_cur_scope->__pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 568, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 0569: 
+0570:         block2 = Block_Copy(block1)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 570, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block2 = __pyx_t_2;
+0571:         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, 571, __pyx_L4_error)
      }
    }
    #endif
+0572:         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, 572, __pyx_L4_error)
      }
    }
    #endif
+0573:         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, 573, __pyx_L4_error)
      }
    }
    #endif
+0574:         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, 574, __pyx_L4_error)
      }
    }
    #endif
+0575:         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, 575, __pyx_L4_error)
      }
    }
    #endif
+0576:         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, 576, __pyx_L4_error)
      }
    }
    #endif
+0577:         assert Block_Length(block2) == Block_Length(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 577, __pyx_L4_error)
      }
    }
    #endif
+0578:         assert Block_Start(block2) == Block_Start(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 578, __pyx_L4_error)
      }
    }
    #endif
+0579:         assert Block_Endex(block2) == Block_Endex(block1)
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block2) == __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 579, __pyx_L4_error)
      }
    }
    #endif
+0580:         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, 580, __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, 580, __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, 580, __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_1c_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, 580, __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, 580, __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, 580, __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, 580, __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, 580, __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, 580, __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, 580, __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, 580, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 580, __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;
};

+0581:         block2 = Block_Free(block2)
    __pyx_cur_scope->__pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block2);
 0582: 
+0583:         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, 583, __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, 583, __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, 583, __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, 583, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__4, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 583, __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, 583, __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, 583, __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, 583, __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, 583, __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, 583, __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, 583, __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, 583, __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, 583, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 583, __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__4 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 583, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__4);
  __Pyx_GIVEREF(__pyx_tuple__4);
+0584:             block2 = Block_Copy(NULL)
            __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 584, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block2 = __pyx_t_2;
 0585: 
 0586:     finally:
+0587:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+0588:         block2 = Block_Free(block2)
      __pyx_cur_scope->__pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0589: 
 0590: 
+0591: def test_Block_FromObject():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_45test_Block_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_44test_Block_FromObject[] = "test_Block_FromObject()";
static PyMethodDef __pyx_mdef_7_test_c_45test_Block_FromObject = {"test_Block_FromObject", (PyCFunction)__pyx_pw_7_test_c_45test_Block_FromObject, METH_NOARGS, __pyx_doc_7_test_c_44test_Block_FromObject};
static PyObject *__pyx_pw_7_test_c_45test_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_44test_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_44test_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, 591, __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__155 = 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__155)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__155);
  __Pyx_GIVEREF(__pyx_tuple__155);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_45test_Block_FromObject, 0, __pyx_n_s_test_Block_FromObject, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__156)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_FromObject, __pyx_t_2) < 0) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__156 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__155, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_FromObject, 591, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__156)) __PYX_ERR(0, 591, __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;
};

 0592:     cdef:
+0593:         Block_* block = NULL
  __pyx_cur_scope->__pyx_v_block = NULL;
+0594:         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;
+0595:         size_t size = SIZE1
  __pyx_cur_scope->__pyx_v_size = __pyx_v_7_test_c_SIZE1;
+0596:         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;
 0597: 
+0598:     try:
  /*try:*/ {
+0599:         block = Block_FromObject(0x1234, 0x69, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_int_105, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 599, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0600:         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, 600, __pyx_L4_error)
      }
    }
    #endif
+0601:         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, 601, __pyx_L4_error)
      }
    }
    #endif
+0602:         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, 602, __pyx_L4_error)
      }
    }
    #endif
+0603:         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, 603, __pyx_L4_error)
      }
    }
    #endif
+0604:         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, 604, __pyx_L4_error)
      }
    }
    #endif
+0605:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 605, __pyx_L4_error)
      }
    }
    #endif
+0606:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 606, __pyx_L4_error)
      }
    }
    #endif
+0607:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 607, __pyx_L4_error)
      }
    }
    #endif
+0608:         assert Block_Get__(block, 0) == 0x69
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_cur_scope->__pyx_v_block, 0) == 0x69) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 608, __pyx_L4_error)
      }
    }
    #endif
+0609:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0610: 
+0611:         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_1c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 611, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0612:         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, 612, __pyx_L4_error)
      }
    }
    #endif
+0613:         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, 613, __pyx_L4_error)
      }
    }
    #endif
+0614:         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, 614, __pyx_L4_error)
      }
    }
    #endif
+0615:         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, 615, __pyx_L4_error)
      }
    }
    #endif
+0616:         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, 616, __pyx_L4_error)
      }
    }
    #endif
+0617:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 617, __pyx_L4_error)
      }
    }
    #endif
+0618:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 618, __pyx_L4_error)
      }
    }
    #endif
+0619:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 619, __pyx_L4_error)
      }
    }
    #endif
+0620:         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, 620, __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, 620, __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, 620, __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_1c_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, 620, __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, 620, __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, 620, __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, 620, __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, 620, __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, 620, __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, 620, __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, 620, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 620, __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;
};

+0621:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0622: 
+0623:         block = Block_FromObject(0x1234, memoryview(data), True)
    __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 623, __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, 623, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 623, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0624:         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, 624, __pyx_L4_error)
      }
    }
    #endif
+0625:         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, 625, __pyx_L4_error)
      }
    }
    #endif
+0626:         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, 626, __pyx_L4_error)
      }
    }
    #endif
+0627:         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, 627, __pyx_L4_error)
      }
    }
    #endif
+0628:         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, 628, __pyx_L4_error)
      }
    }
    #endif
+0629:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 629, __pyx_L4_error)
      }
    }
    #endif
+0630:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 630, __pyx_L4_error)
      }
    }
    #endif
+0631:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 631, __pyx_L4_error)
      }
    }
    #endif
+0632:         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, 632, __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, 632, __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, 632, __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_1c_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, 632, __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, 632, __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, 632, __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, 632, __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, 632, __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, 632, __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, 632, __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, 632, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 632, __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;
};

+0633:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0634: 
+0635:         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, 635, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 635, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0636:         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, 636, __pyx_L4_error)
      }
    }
    #endif
+0637:         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, 637, __pyx_L4_error)
      }
    }
    #endif
+0638:         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, 638, __pyx_L4_error)
      }
    }
    #endif
+0639:         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, 639, __pyx_L4_error)
      }
    }
    #endif
+0640:         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, 640, __pyx_L4_error)
      }
    }
    #endif
+0641:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == __pyx_cur_scope->__pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 641, __pyx_L4_error)
      }
    }
    #endif
+0642:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 642, __pyx_L4_error)
      }
    }
    #endif
+0643:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == (0x1234 + __pyx_cur_scope->__pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 643, __pyx_L4_error)
      }
    }
    #endif
+0644:         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, 644, __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, 644, __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, 644, __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_1c_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, 644, __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, 644, __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, 644, __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, 644, __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, 644, __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, 644, __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, 644, __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, 644, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_t_4)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 644, __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;
};

+0645:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0646: 
+0647:         block = Block_FromObject(0x1234, b'', False)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_kp_b__5, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 647, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0648:         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, 648, __pyx_L4_error)
      }
    }
    #endif
+0649:         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, 649, __pyx_L4_error)
      }
    }
    #endif
+0650:         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, 650, __pyx_L4_error)
      }
    }
    #endif
+0651:         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, 651, __pyx_L4_error)
      }
    }
    #endif
+0652:         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, 652, __pyx_L4_error)
      }
    }
    #endif
+0653:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 653, __pyx_L4_error)
      }
    }
    #endif
+0654:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 654, __pyx_L4_error)
      }
    }
    #endif
+0655:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 655, __pyx_L4_error)
      }
    }
    #endif
+0656:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0657: 
+0658:         block = Block_FromObject(0x1234, memoryview(b''), False)
    __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 658, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 658, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 658, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
/* … */
  __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_b__5); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__6);
  __Pyx_GIVEREF(__pyx_tuple__6);
+0659:         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, 659, __pyx_L4_error)
      }
    }
    #endif
+0660:         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, 660, __pyx_L4_error)
      }
    }
    #endif
+0661:         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, 661, __pyx_L4_error)
      }
    }
    #endif
+0662:         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, 662, __pyx_L4_error)
      }
    }
    #endif
+0663:         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, 663, __pyx_L4_error)
      }
    }
    #endif
+0664:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 664, __pyx_L4_error)
      }
    }
    #endif
+0665:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 665, __pyx_L4_error)
      }
    }
    #endif
+0666:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 666, __pyx_L4_error)
      }
    }
    #endif
+0667:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0668: 
+0669:         block = Block_FromObject(0x1234, bytearray(b''), False)
    __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)(&PyByteArray_Type)), __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 669, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 669, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
+0670:         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, 670, __pyx_L4_error)
      }
    }
    #endif
+0671:         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, 671, __pyx_L4_error)
      }
    }
    #endif
+0672:         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, 672, __pyx_L4_error)
      }
    }
    #endif
+0673:         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, 673, __pyx_L4_error)
      }
    }
    #endif
+0674:         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, 674, __pyx_L4_error)
      }
    }
    #endif
+0675:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_cur_scope->__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 675, __pyx_L4_error)
      }
    }
    #endif
+0676:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 676, __pyx_L4_error)
      }
    }
    #endif
+0677:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_cur_scope->__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 677, __pyx_L4_error)
      }
    }
    #endif
+0678:         block = Block_Free(block)
    __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_cur_scope->__pyx_v_block);
 0679: 
+0680:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 680, __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, 680, __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, 680, __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, 680, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__7, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 680, __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, 680, __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, 680, __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, 680, __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, 680, __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, 680, __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, 680, __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, 680, __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, 680, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 680, __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__7 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(0, 680, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__7);
  __Pyx_GIVEREF(__pyx_tuple__7);
+0681:             block = Block_FromObject(0x1234, b'', True)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_kp_b__5, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 681, __pyx_L10_error)
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0682: 
+0683:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 683, __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, 683, __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, 683, __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, 683, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__8, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 683, __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, 683, __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, 683, __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, 683, __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, 683, __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, 683, __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, 683, __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, 683, __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, 683, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 683, __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__8 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 683, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__8);
  __Pyx_GIVEREF(__pyx_tuple__8);
+0684:             block = Block_FromObject(0x1234, memoryview(b''), True)
            __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_memoryview); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 684, __pyx_L24_error)
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 684, __pyx_L24_error)
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 684, __pyx_L24_error)
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0685: 
+0686:         with pytest.raises(ValueError, match=match):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pytest); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 686, __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, 686, __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, 686, __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, 686, __pyx_L4_error)
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__9, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 686, __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, 686, __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, 686, __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, 686, __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, 686, __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, 686, __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, 686, __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, 686, __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, 686, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 686, __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__9 = PyTuple_Pack(1, __pyx_builtin_ValueError); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__9);
  __Pyx_GIVEREF(__pyx_tuple__9);
+0687:             block = Block_FromObject(0x1234, bytearray(b''), True)
            __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyByteArray_Type)), __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 687, __pyx_L38_error)
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 687, __pyx_L38_error)
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_cur_scope->__pyx_v_block = __pyx_t_1;
 0688: 
 0689:     finally:
+0690:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0691: 
 0692: 
+0693: 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__157 = PyTuple_Pack(2, __pyx_n_s_block, __pyx_n_s_block_2); if (unlikely(!__pyx_tuple__157)) __PYX_ERR(0, 693, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__157);
  __Pyx_GIVEREF(__pyx_tuple__157);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_47test_Block_Acquire_Release_, 0, __pyx_n_s_test_Block_Acquire_Release, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__158)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 693, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Acquire_Release, __pyx_t_2) < 0) __PYX_ERR(0, 693, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__158 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__157, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Acquire_Release, 693, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__158)) __PYX_ERR(0, 693, __pyx_L1_error)
 0694:     cdef:
+0695:         Block_* block = NULL
  __pyx_v_block = NULL;
+0696:         Block_* block_ = NULL
  __pyx_v_block_ = NULL;
 0697: 
+0698:     try:
  /*try:*/ {
+0699:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 699, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0700:         block_ = block
    __pyx_v_block_ = __pyx_v_block;
+0701:         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, 701, __pyx_L4_error)
      }
    }
    #endif
+0702:         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, 702, __pyx_L4_error)
      }
    }
    #endif
 0703: 
+0704:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 704, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0705:         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, 705, __pyx_L4_error)
      }
    }
    #endif
+0706:         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, 706, __pyx_L4_error)
      }
    }
    #endif
 0707: 
+0708:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Release_(__pyx_v_block);
+0709:         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, 709, __pyx_L4_error)
      }
    }
    #endif
+0710:         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, 710, __pyx_L4_error)
      }
    }
    #endif
 0711: 
+0712:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Release_(__pyx_v_block);
+0713:         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, 713, __pyx_L4_error)
      }
    }
    #endif
  }
 0714: 
 0715:     finally:
+0716:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0717: 
 0718: 
+0719: def test_Block_Acquire_Release():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_49test_Block_Acquire_Release(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_48test_Block_Acquire_Release[] = "test_Block_Acquire_Release()";
static PyMethodDef __pyx_mdef_7_test_c_49test_Block_Acquire_Release = {"test_Block_Acquire_Release", (PyCFunction)__pyx_pw_7_test_c_49test_Block_Acquire_Release, METH_NOARGS, __pyx_doc_7_test_c_48test_Block_Acquire_Release};
static PyObject *__pyx_pw_7_test_c_49test_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_48test_Block_Acquire_Release(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_48test_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__159 = PyTuple_Pack(2, __pyx_n_s_block, __pyx_n_s_block_2); if (unlikely(!__pyx_tuple__159)) __PYX_ERR(0, 719, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__159);
  __Pyx_GIVEREF(__pyx_tuple__159);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_49test_Block_Acquire_Release, 0, __pyx_n_s_test_Block_Acquire_Release_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__160)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 719, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Acquire_Release_2, __pyx_t_2) < 0) __PYX_ERR(0, 719, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__160 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__159, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Acquire_Release_2, 719, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__160)) __PYX_ERR(0, 719, __pyx_L1_error)
 0720:     cdef:
+0721:         Block_* block = NULL
  __pyx_v_block = NULL;
+0722:         Block_* block_ = NULL
  __pyx_v_block_ = NULL;
 0723: 
+0724:     try:
  /*try:*/ {
+0725:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 725, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0726:         block_ = block
    __pyx_v_block_ = __pyx_v_block;
+0727:         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, 727, __pyx_L4_error)
      }
    }
    #endif
+0728:         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, 728, __pyx_L4_error)
      }
    }
    #endif
 0729: 
+0730:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 730, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0731:         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, 731, __pyx_L4_error)
      }
    }
    #endif
+0732:         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, 732, __pyx_L4_error)
      }
    }
    #endif
 0733: 
+0734:         block_ = Block_Release(block)
    __pyx_v_block_ = __pyx_f_11cbytesparse_1c_Block_Release(__pyx_v_block);
+0735:         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, 735, __pyx_L4_error)
      }
    }
    #endif
+0736:         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, 736, __pyx_L4_error)
      }
    }
    #endif
 0737: 
+0738:         block = Block_Release(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Release(__pyx_v_block);
+0739:         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, 739, __pyx_L4_error)
      }
    }
    #endif
  }
 0740: 
 0741:     finally:
+0742:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0743: 
 0744: 
 0745: # TODO: test_Block_BoundAddress()
 0746: 
 0747: 
 0748: # TODO: test_Block_BoundAddressToOffset()
 0749: 
 0750: 
 0751: # TODO: test_Block_BoundOffset()
 0752: 
 0753: 
 0754: # TODO: test_Block_BoundAddressSlice()
 0755: 
 0756: 
 0757: # TODO: test_Block_BoundAddressSliceToOffset()
 0758: 
 0759: 
 0760: # TODO: test_Block_BoundOffsetSlice()
 0761: 
 0762: 
+0763: def test_Block_CheckMutable():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_51test_Block_CheckMutable(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_50test_Block_CheckMutable[] = "test_Block_CheckMutable()";
static PyMethodDef __pyx_mdef_7_test_c_51test_Block_CheckMutable = {"test_Block_CheckMutable", (PyCFunction)__pyx_pw_7_test_c_51test_Block_CheckMutable, METH_NOARGS, __pyx_doc_7_test_c_50test_Block_CheckMutable};
static PyObject *__pyx_pw_7_test_c_51test_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_50test_Block_CheckMutable(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_50test_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__161 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__161)) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__161);
  __Pyx_GIVEREF(__pyx_tuple__161);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_51test_Block_CheckMutable, 0, __pyx_n_s_test_Block_CheckMutable, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__162)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_CheckMutable, __pyx_t_2) < 0) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__162 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__161, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_CheckMutable, 763, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__162)) __PYX_ERR(0, 763, __pyx_L1_error)
 0764:     cdef:
+0765:         Block_* block = NULL
  __pyx_v_block = NULL;
 0766: 
+0767:     try:
  /*try:*/ {
+0768:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 768, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0769:         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, 769, __pyx_L4_error)
      }
    }
    #endif
+0770:         Block_CheckMutable(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 770, __pyx_L4_error)
 0771: 
+0772:         block = Block_Acquire(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Acquire(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 772, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0773:         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, 773, __pyx_L4_error)
      }
    }
    #endif
+0774:         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, 774, __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, 774, __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, 774, __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, 774, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__10, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 774, __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, 774, __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, 774, __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, 774, __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, 774, __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, 774, __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, 774, __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, 774, __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, 774, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 774, __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__10 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 774, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__10);
  __Pyx_GIVEREF(__pyx_tuple__10);
+0775:             Block_CheckMutable(block)
            __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 775, __pyx_L10_error)
 0776: 
+0777:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Release_(__pyx_v_block);
+0778:         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, 778, __pyx_L4_error)
      }
    }
    #endif
+0779:         Block_CheckMutable(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_CheckMutable(__pyx_v_block); if (unlikely(__pyx_t_2 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 779, __pyx_L4_error)
 0780: 
+0781:         block = Block_Release_(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Release_(__pyx_v_block);
  }
 0782: 
 0783:     finally:
+0784:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0785: 
 0786: 
+0787: def test_Block_Eq():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_53test_Block_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_52test_Block_Eq[] = "test_Block_Eq()";
static PyMethodDef __pyx_mdef_7_test_c_53test_Block_Eq = {"test_Block_Eq", (PyCFunction)__pyx_pw_7_test_c_53test_Block_Eq, METH_NOARGS, __pyx_doc_7_test_c_52test_Block_Eq};
static PyObject *__pyx_pw_7_test_c_53test_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_52test_Block_Eq(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_52test_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__163 = 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__163)) __PYX_ERR(0, 787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__163);
  __Pyx_GIVEREF(__pyx_tuple__163);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_53test_Block_Eq, 0, __pyx_n_s_test_Block_Eq, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__164)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Eq, __pyx_t_2) < 0) __PYX_ERR(0, 787, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__164 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__163, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Eq, 787, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__164)) __PYX_ERR(0, 787, __pyx_L1_error)
 0788:     cdef:
+0789:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0790:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+0791:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0792:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0793:         size_t offset
 0794: 
+0795:     try:
  /*try:*/ {
+0796:         block2 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 796, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 796, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 796, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_2;
 0797: 
+0798:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 798, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0799:         assert Block_Eq(block1, block2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 799, __pyx_L4_error)
      }
    }
    #endif
+0800:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_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_1c_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) ^ 0xFF)
      (void)(__pyx_f_11cbytesparse_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) ^ 0xFF)));
+0805:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 805, __pyx_L4_error)
        }
      }
      #endif
+0806:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
    }
  }
 0807: 
 0808:     finally:
+0809:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+0810:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0811: 
 0812: 
+0813: def test_Block_Cmp():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_55test_Block_Cmp(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_54test_Block_Cmp[] = "test_Block_Cmp()";
static PyMethodDef __pyx_mdef_7_test_c_55test_Block_Cmp = {"test_Block_Cmp", (PyCFunction)__pyx_pw_7_test_c_55test_Block_Cmp, METH_NOARGS, __pyx_doc_7_test_c_54test_Block_Cmp};
static PyObject *__pyx_pw_7_test_c_55test_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_54test_Block_Cmp(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_54test_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__165 = 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__165)) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__165);
  __Pyx_GIVEREF(__pyx_tuple__165);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_55test_Block_Cmp, 0, __pyx_n_s_test_Block_Cmp, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__166)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Cmp, __pyx_t_2) < 0) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__166 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__165, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Cmp, 813, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__166)) __PYX_ERR(0, 813, __pyx_L1_error)
 0814:     cdef:
+0815:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+0816:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+0817:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0818:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0819:         size_t offset
 0820: 
+0821:     try:
  /*try:*/ {
+0822:         block2 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 822, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 822, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 822, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_2;
 0823: 
+0824:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 824, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0825:         assert Block_Eq(block1, block2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 825, __pyx_L4_error)
      }
    }
    #endif
+0826:         assert Block_Cmp(block1, block2) is 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 826, __pyx_L4_error)
      }
    }
    #endif
+0827:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
 0828: 
+0829:         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;
+0830:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 830, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0831:             Block_Set__(block1, offset, Block_Get__(block1, offset) - 1)
      (void)(__pyx_f_11cbytesparse_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) - 1)));
+0832:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_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_1c_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_1c_Block_Free(__pyx_v_block1);
    }
 0835: 
+0836:         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;
+0837:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_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_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0839:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 839, __pyx_L4_error)
        }
      }
      #endif
+0840:             assert Block_Cmp(block1, block2) is +1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 840, __pyx_L4_error)
        }
      }
      #endif
+0841:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
    }
 0842: 
+0843:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 843, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0844:         block1 = Block_Pop__(block1, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 844, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0845:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 845, __pyx_L4_error)
      }
    }
    #endif
+0846:         assert Block_Cmp(block1, block2) is -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 846, __pyx_L4_error)
      }
    }
    #endif
+0847:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
 0848: 
+0849:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 849, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0850:         block1 = Block_Append(block1, b'#'[0])
    __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__11, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 850, __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, 850, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Append(__pyx_v_block1, __pyx_t_7); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 850, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0851:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 851, __pyx_L4_error)
      }
    }
    #endif
+0852:         assert Block_Cmp(block1, block2) is +1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 852, __pyx_L4_error)
      }
    }
    #endif
+0853:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
 0854: 
+0855:         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;
+0856:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 856, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0857:             Block_Set__(block1, offset, Block_Get__(block1, offset) - 1)
      (void)(__pyx_f_11cbytesparse_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) - 1)));
+0858:             block1 = Block_Append(block1, b'#'[0])
      __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__11, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 858, __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, 858, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Append(__pyx_v_block1, __pyx_t_7); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 858, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0859:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 859, __pyx_L4_error)
        }
      }
      #endif
+0860:             assert Block_Cmp(block1, block2) is -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 860, __pyx_L4_error)
        }
      }
      #endif
+0861:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
    }
 0862: 
+0863:         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;
+0864:             block1 = Block_Copy(block2)
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 864, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0865:             Block_Set__(block1, offset, Block_Get__(block1, offset) + 1)
      (void)(__pyx_f_11cbytesparse_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0866:             block1 = Block_Pop__(block1, NULL)
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 866, __pyx_L4_error)
      __pyx_v_block1 = __pyx_t_2;
+0867:             assert Block_Eq(block1, block2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 867, __pyx_L4_error)
        }
      }
      #endif
+0868:             assert Block_Cmp(block1, block2) is +1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 868, __pyx_L4_error)
        }
      }
      #endif
+0869:             block1 = Block_Free(block1)
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
    }
 0870: 
+0871:         offset = size - 1  # check last pop
    __pyx_v_offset = (__pyx_v_size - 1);
+0872:         block1 = Block_Copy(block2)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_block2); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 872, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0873:         Block_Set__(block1, offset, Block_Get__(block1, offset) + 1)
    (void)(__pyx_f_11cbytesparse_1c_Block_Set__(__pyx_v_block1, __pyx_v_offset, (__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block1, __pyx_v_offset) + 1)));
+0874:         block1 = Block_Pop__(block1, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop__(__pyx_v_block1, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 874, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
+0875:         assert Block_Eq(block1, block2) is False
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq(__pyx_v_block1, __pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 875, __pyx_L4_error)
      }
    }
    #endif
+0876:         assert Block_Cmp(block1, block2) is -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Cmp(__pyx_v_block1, __pyx_v_block2) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 876, __pyx_L4_error)
      }
    }
    #endif
+0877:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
  }
 0878: 
 0879:     finally:
+0880:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+0881:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0882: 
 0883: 
+0884: 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;
  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__167 = 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__167)) __PYX_ERR(0, 884, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__167);
  __Pyx_GIVEREF(__pyx_tuple__167);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_57test_Block_Find__, 0, __pyx_n_s_test_Block_Find, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__168)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 884, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find, __pyx_t_2) < 0) __PYX_ERR(0, 884, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__168 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__167, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find, 884, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__168)) __PYX_ERR(0, 884, __pyx_L1_error)
 0885:     cdef:
+0886:         Block_* block = NULL
  __pyx_v_block = NULL;
+0887:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0888:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0889:         size_t start
 0890:         size_t endex
 0891:         byte_t value
 0892:         ssize_t ans
 0893:         ssize_t ref
 0894: 
+0895:     try:
  /*try:*/ {
+0896:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 896, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0897:         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, 897, __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, 897, __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, 897, __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, 897, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0898:             assert Block_Find__(block, 0, SIZE_MAX, value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Find__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 898, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0899:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0900: 
+0901:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 901, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 901, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); 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_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 902, __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, 902, __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, 902, __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, 902, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0903:             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;
+0904:                 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;
+0905:                     ans = Block_Find__(block, start, endex, value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_Find__(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_value);
+0906:                     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, 906, __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, 906, __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, 906, __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, 906, __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, 906, __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, 906, __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, 906, __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, 906, __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, 906, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0907:                     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, 907, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0908:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 0909: 
 0910:     finally:
+0911:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0912: 
 0913: 
+0914: 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;
  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__169 = 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__169)) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__169);
  __Pyx_GIVEREF(__pyx_tuple__169);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_59test_Block_Find_, 0, __pyx_n_s_test_Block_Find_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__170)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find_2, __pyx_t_2) < 0) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__170 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__169, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find_2, 914, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__170)) __PYX_ERR(0, 914, __pyx_L1_error)
 0915:     cdef:
+0916:         Block_* block = NULL
  __pyx_v_block = NULL;
+0917:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0918:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0919:         size_t start
 0920:         size_t endex
 0921:         byte_t value
 0922:         tuple tokens
 0923:         bytes token
 0924:         ssize_t ans
 0925:         ssize_t ref
 0926: 
+0927:     try:
  /*try:*/ {
+0928:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 928, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0929:         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, 929, __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, 929, __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, 929, __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, 929, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0930:             assert Block_Find_(block, 0, SIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Find_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 930, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0931:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0932: 
+0933:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 933, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 933, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 933, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0934:         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, 934, __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, 934, __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, 934, __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, 934, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0935:             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;
+0936:                 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;
+0937:                     ans = Block_Find_(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_Find_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+0938:                     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, 938, __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, 938, __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, 938, __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, 938, __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, 938, __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, 938, __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, 938, __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, 938, __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, 938, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0939:                     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, 939, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0940:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0941: 
+0942:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+0943:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+0944:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+0945:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 945, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 945, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 945, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0946:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 946, __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, 946, __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, 946, __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, 946, __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;
+0947:             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;
+0948:                 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;
+0949:                     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, 949, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 949, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 949, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 949, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_Find_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+0950:                     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, 950, __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, 950, __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, 950, __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, 950, __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, 950, __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, 950, __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, 950, __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, 950, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0951:                     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, 951, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+0952:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 0953: 
 0954:     finally:
+0955:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 0956: 
 0957: 
+0958: def test_Block_Find():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_61test_Block_Find(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_60test_Block_Find[] = "test_Block_Find()";
static PyMethodDef __pyx_mdef_7_test_c_61test_Block_Find = {"test_Block_Find", (PyCFunction)__pyx_pw_7_test_c_61test_Block_Find, METH_NOARGS, __pyx_doc_7_test_c_60test_Block_Find};
static PyObject *__pyx_pw_7_test_c_61test_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_60test_Block_Find(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_60test_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__171 = 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__171)) __PYX_ERR(0, 958, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__171);
  __Pyx_GIVEREF(__pyx_tuple__171);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_61test_Block_Find, 0, __pyx_n_s_test_Block_Find_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__172)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 958, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Find_3, __pyx_t_2) < 0) __PYX_ERR(0, 958, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__172 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__171, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Find_3, 958, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__172)) __PYX_ERR(0, 958, __pyx_L1_error)
 0959:     cdef:
+0960:         Block_* block = NULL
  __pyx_v_block = NULL;
+0961:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+0962:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 0963:         ssize_t start
 0964:         ssize_t endex
 0965:         byte_t value
 0966:         tuple tokens
 0967:         bytes token
 0968:         ssize_t ans
 0969:         ssize_t ref
 0970: 
+0971:     try:
  /*try:*/ {
+0972:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 972, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0973:         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, 973, __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, 973, __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, 973, __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, 973, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+0974:             assert Block_Find(block, 0, SSIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Find(__pyx_v_block, 0, SSIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 974, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0975:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0976: 
+0977:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 977, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 977, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 977, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0978:         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, 978, __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, 978, __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, 978, __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, 978, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+0979:             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;
+0980:                 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;
+0981:                     ans = Block_Find(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_Find(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+0982:                     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, 982, __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, 982, __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, 982, __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, 982, __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, 982, __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, 982, __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, 982, __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, 982, __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, 982, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0983:                     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, 983, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0984:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 0985: 
+0986:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+0987:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+0988:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+0989:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 989, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 989, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 989, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+0990:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 990, __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, 990, __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, 990, __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, 990, __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;
+0991:             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;
+0992:                 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;
+0993:                     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, 993, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 993, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 993, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 993, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_Find(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+0994:                     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, 994, __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, 994, __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, 994, __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, 994, __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, 994, __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, 994, __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, 994, __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, 994, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+0995:                     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, 995, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+0996:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 0997: 
 0998:     finally:
+0999:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1000: 
 1001: 
+1002: 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;
  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__173 = 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__173)) __PYX_ERR(0, 1002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__173);
  __Pyx_GIVEREF(__pyx_tuple__173);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_63test_Block_ReverseFind__, 0, __pyx_n_s_test_Block_ReverseFind, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__174)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind, __pyx_t_2) < 0) __PYX_ERR(0, 1002, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__174 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__173, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind, 1002, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__174)) __PYX_ERR(0, 1002, __pyx_L1_error)
 1003:     cdef:
+1004:         Block_* block = NULL
  __pyx_v_block = NULL;
+1005:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1006:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1007:         size_t start
 1008:         size_t endex
 1009:         byte_t value
 1010:         ssize_t ans
 1011:         ssize_t ref
 1012: 
+1013:     try:
  /*try:*/ {
+1014:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1014, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1015:         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, 1015, __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, 1015, __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, 1015, __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, 1015, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1016:             assert Block_ReverseFind__(block, 0, SIZE_MAX, value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_ReverseFind__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1016, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1017:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1018: 
+1019:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1019, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1019, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); 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_4 = 0;
    __pyx_t_7 = PySet_New(__pyx_v_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1020, __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, 1020, __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, 1020, __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, 1020, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1021:             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;
+1022:                 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;
+1023:                     ans = Block_ReverseFind__(block, start, endex, value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_ReverseFind__(__pyx_v_block, __pyx_v_start, __pyx_v_endex, __pyx_v_value);
+1024:                     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, 1024, __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, 1024, __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, 1024, __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, 1024, __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, 1024, __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, 1024, __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, 1024, __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, 1024, __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, 1024, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1025:                     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, 1025, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1026:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1027: 
 1028:     finally:
+1029:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1030: 
 1031: 
+1032: 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;
  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__175 = 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__175)) __PYX_ERR(0, 1032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__175);
  __Pyx_GIVEREF(__pyx_tuple__175);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_65test_Block_ReverseFind_, 0, __pyx_n_s_test_Block_ReverseFind_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__176)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1032, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind_2, __pyx_t_2) < 0) __PYX_ERR(0, 1032, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__176 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__175, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind_2, 1032, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__176)) __PYX_ERR(0, 1032, __pyx_L1_error)
 1033:     cdef:
+1034:         Block_* block = NULL
  __pyx_v_block = NULL;
+1035:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1036:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1037:         size_t start
 1038:         size_t endex
 1039:         byte_t value
 1040:         tuple tokens
 1041:         bytes token
 1042:         ssize_t ans
 1043:         ssize_t ref
 1044: 
+1045:     try:
  /*try:*/ {
+1046:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1046, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1047:         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, 1047, __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, 1047, __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, 1047, __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, 1047, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1048:             assert Block_ReverseFind_(block, 0, SIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_ReverseFind_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1048, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1049:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1050: 
+1051:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1051, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1051, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1052:         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, 1052, __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, 1052, __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, 1052, __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, 1052, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1053:             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;
+1054:                 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;
+1055:                     ans = Block_ReverseFind_(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_ReverseFind_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+1056:                     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, 1056, __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, 1056, __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, 1056, __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, 1056, __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, 1056, __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, 1056, __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, 1056, __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, 1056, __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, 1056, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1057:                     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, 1057, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1058:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1059: 
+1060:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1061:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1062:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1063:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1063, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1063, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1063, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1064:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1064, __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, 1064, __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, 1064, __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, 1064, __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;
+1065:             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;
+1066:                 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;
+1067:                     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, 1067, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1067, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1067, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 1067, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_ReverseFind_(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+1068:                     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, 1068, __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, 1068, __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, 1068, __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, 1068, __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, 1068, __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, 1068, __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, 1068, __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, 1068, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1069:                     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, 1069, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+1070:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1071: 
 1072:     finally:
+1073:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1074: 
 1075: 
+1076: def test_Block_ReverseFind():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_67test_Block_ReverseFind(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_66test_Block_ReverseFind[] = "test_Block_ReverseFind()";
static PyMethodDef __pyx_mdef_7_test_c_67test_Block_ReverseFind = {"test_Block_ReverseFind", (PyCFunction)__pyx_pw_7_test_c_67test_Block_ReverseFind, METH_NOARGS, __pyx_doc_7_test_c_66test_Block_ReverseFind};
static PyObject *__pyx_pw_7_test_c_67test_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_66test_Block_ReverseFind(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_66test_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__177 = 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__177)) __PYX_ERR(0, 1076, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__177);
  __Pyx_GIVEREF(__pyx_tuple__177);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_67test_Block_ReverseFind, 0, __pyx_n_s_test_Block_ReverseFind_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__178)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1076, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReverseFind_3, __pyx_t_2) < 0) __PYX_ERR(0, 1076, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__178 = (PyObject*)__Pyx_PyCode_New(0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__177, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReverseFind_3, 1076, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__178)) __PYX_ERR(0, 1076, __pyx_L1_error)
 1077:     cdef:
+1078:         Block_* block = NULL
  __pyx_v_block = NULL;
+1079:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1080:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1081:         ssize_t start
 1082:         ssize_t endex
 1083:         byte_t value
 1084:         tuple tokens
 1085:         bytes token
 1086:         ssize_t ans
 1087:         ssize_t ref
 1088: 
+1089:     try:
  /*try:*/ {
+1090:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1090, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1091:         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, 1091, __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, 1091, __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, 1091, __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, 1091, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1092:             assert Block_ReverseFind(block, 0, SSIZE_MAX, 1, &value) == -1
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_ReverseFind(__pyx_v_block, 0, SSIZE_MAX, 1, (&__pyx_v_value)) == -1L) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1092, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1093:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1094: 
+1095:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1095, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1095, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1095, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1096:         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, 1096, __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, 1096, __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, 1096, __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, 1096, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1097:             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;
+1098:                 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;
+1099:                     ans = Block_ReverseFind(block, start, endex, 1, &value)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_ReverseFind(__pyx_v_block, __pyx_v_start, __pyx_v_endex, 1, (&__pyx_v_value));
+1100:                     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, 1100, __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, 1100, __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, 1100, __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, 1100, __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, 1100, __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, 1100, __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, 1100, __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, 1100, __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, 1100, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1101:                     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, 1101, __pyx_L4_error)
            }
          }
          #endif
        }
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1102:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1103: 
+1104:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1105:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1106:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+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_1c_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 token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1108, __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, 1108, __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, 1108, __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, 1108, __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;
+1109:             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;
+1110:                 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;
+1111:                     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, 1111, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1111, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1111, __pyx_L4_error)
          }
          __pyx_t_23 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_23) && PyErr_Occurred())) __PYX_ERR(0, 1111, __pyx_L4_error)
          __pyx_v_ans = __pyx_f_11cbytesparse_1c_Block_ReverseFind(__pyx_v_block, __pyx_v_start, __pyx_v_endex, ((size_t)__pyx_t_4), __pyx_t_23);
+1112:                     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, 1112, __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, 1112, __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, 1112, __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, 1112, __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, 1112, __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, 1112, __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, 1112, __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, 1112, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_ref = __pyx_t_22;
+1113:                     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, 1113, __pyx_L4_error)
            }
          }
          #endif
        }
      }
+1114:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1115: 
 1116:     finally:
+1117:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1118: 
 1119: 
+1120: 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_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__179 = 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__179)) __PYX_ERR(0, 1120, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__179);
  __Pyx_GIVEREF(__pyx_tuple__179);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_69test_Block_Count__, 0, __pyx_n_s_test_Block_Count, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__180)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1120, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count, __pyx_t_2) < 0) __PYX_ERR(0, 1120, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__180 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__179, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count, 1120, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__180)) __PYX_ERR(0, 1120, __pyx_L1_error)
 1121:     cdef:
+1122:         Block_* block = NULL
  __pyx_v_block = NULL;
+1123:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1124:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1125:         size_t offset
 1126:         byte_t value
 1127: 
+1128:     try:
  /*try:*/ {
+1129:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1129, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1130:         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, 1130, __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, 1130, __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, 1130, __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, 1130, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1131:             assert Block_Count__(block, 0, SIZE_MAX, value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Count__(__pyx_v_block, 0, SIZE_MAX, __pyx_v_value) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1131, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1132:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1133: 
+1134:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1134, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1134, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1134, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1135:         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, 1135, __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, 1135, __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, 1135, __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, 1135, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1136:             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;
+1137:                 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_1c_Block_Count__(__pyx_v_block, __pyx_v_offset, SIZE_MAX, __pyx_v_value)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1137, __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, 1137, __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, 1137, __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, 1137, __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, 1137, __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, 1137, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1137, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1138:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1139: 
 1140:     finally:
+1141:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1142: 
 1143: 
+1144: 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;
  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__181 = 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__181)) __PYX_ERR(0, 1144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__181);
  __Pyx_GIVEREF(__pyx_tuple__181);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_71test_Block_Count_, 0, __pyx_n_s_test_Block_Count_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__182)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count_2, __pyx_t_2) < 0) __PYX_ERR(0, 1144, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__182 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__181, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count_2, 1144, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__182)) __PYX_ERR(0, 1144, __pyx_L1_error)
 1145:     cdef:
+1146:         Block_* block = NULL
  __pyx_v_block = NULL;
+1147:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1148:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1149:         size_t offset
 1150:         byte_t value
 1151:         tuple tokens
 1152:         bytes token
 1153: 
+1154:     try:
  /*try:*/ {
+1155:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1155, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1156:         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, 1156, __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, 1156, __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, 1156, __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, 1156, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1157:             assert Block_Count_(block, 0, SIZE_MAX, 1, &value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Count_(__pyx_v_block, 0, SIZE_MAX, 1, (&__pyx_v_value)) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1157, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1158:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1159: 
+1160:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1160, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1160, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1160, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1161:         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, 1161, __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, 1161, __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, 1161, __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, 1161, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1162:             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;
+1163:                 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_1c_Block_Count_(__pyx_v_block, __pyx_v_offset, SIZE_MAX, 1, (&__pyx_v_value))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1163, __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, 1163, __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, 1163, __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, 1163, __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, 1163, __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, 1163, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1163, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1164:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1165: 
+1166:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1167:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1168:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1169:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1169, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1169, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1169, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1170:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1170, __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, 1170, __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, 1170, __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, 1170, __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;
+1171:             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;
+1172:                 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, 1172, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1172, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1172, __pyx_L4_error)
          }
          __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 1172, __pyx_L4_error)
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_1c_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, 1172, __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, 1172, __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, 1172, __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, 1172, __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, 1172, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1172, __pyx_L4_error)
          }
        }
        #endif
      }
+1173:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1174: 
 1175:     finally:
+1176:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1177: 
 1178: 
+1179: def test_Block_Count():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_73test_Block_Count(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_72test_Block_Count[] = "test_Block_Count()";
static PyMethodDef __pyx_mdef_7_test_c_73test_Block_Count = {"test_Block_Count", (PyCFunction)__pyx_pw_7_test_c_73test_Block_Count, METH_NOARGS, __pyx_doc_7_test_c_72test_Block_Count};
static PyObject *__pyx_pw_7_test_c_73test_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_72test_Block_Count(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_72test_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__183 = 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__183)) __PYX_ERR(0, 1179, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__183);
  __Pyx_GIVEREF(__pyx_tuple__183);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_73test_Block_Count, 0, __pyx_n_s_test_Block_Count_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__184)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1179, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Count_3, __pyx_t_2) < 0) __PYX_ERR(0, 1179, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__184 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__183, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Count_3, 1179, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__184)) __PYX_ERR(0, 1179, __pyx_L1_error)
 1180:     cdef:
+1181:         Block_* block = NULL
  __pyx_v_block = NULL;
+1182:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1183:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1184:         ssize_t offset
 1185:         byte_t value
 1186:         tuple tokens
 1187:         bytes token
 1188: 
+1189:     try:
  /*try:*/ {
+1190:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1190, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1191:         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, 1191, __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, 1191, __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, 1191, __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, 1191, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_v_value = __pyx_t_9;
+1192:             assert Block_Count(block, SSIZE_MIN, SSIZE_MAX, 1, &value) == 0
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Count(__pyx_v_block, SSIZE_MIN, SSIZE_MAX, 1, (&__pyx_v_value)) == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1192, __pyx_L4_error)
        }
      }
      #endif
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1193:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1194: 
+1195:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1195, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1195, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1195, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1196:         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, 1196, __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, 1196, __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, 1196, __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, 1196, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_value = __pyx_t_9;
+1197:             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;
+1198:                 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_1c_Block_Count(__pyx_v_block, __pyx_v_offset, SSIZE_MAX, 1, (&__pyx_v_value))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1198, __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, 1198, __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, 1198, __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, 1198, __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, 1198, __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, 1198, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1198, __pyx_L4_error)
          }
        }
        #endif
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+1199:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1200: 
+1201:         data = DATA3
    __Pyx_INCREF(__pyx_v_7_test_c_DATA3);
    __Pyx_DECREF_SET(__pyx_v_data, __pyx_v_7_test_c_DATA3);
+1202:         size = SIZE3
    __pyx_v_size = __pyx_v_7_test_c_SIZE3;
+1203:         tokens = TOKENS3
    __Pyx_INCREF(__pyx_v_7_test_c_TOKENS3);
    __pyx_v_tokens = __pyx_v_7_test_c_TOKENS3;
+1204:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1204, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 1204, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1204, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1205:         for token in tokens:
    if (unlikely(__pyx_v_tokens == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
      __PYX_ERR(0, 1205, __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, 1205, __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, 1205, __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, 1205, __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;
+1206:             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;
+1207:                 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, 1207, __pyx_L4_error)
          }
          __pyx_t_4 = PyBytes_GET_SIZE(__pyx_v_token); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1207, __pyx_L4_error)
          if (unlikely(__pyx_v_token == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 1207, __pyx_L4_error)
          }
          __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_token); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 1207, __pyx_L4_error)
          __pyx_t_14 = __Pyx_PyInt_FromSize_t(__pyx_f_11cbytesparse_1c_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, 1207, __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, 1207, __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, 1207, __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, 1207, __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, 1207, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          if (unlikely(!__pyx_t_16)) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1207, __pyx_L4_error)
          }
        }
        #endif
      }
+1208:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1209: 
 1210:     finally:
+1211:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1212: 
 1213: 
+1214: def test_Block_Reserve_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_75test_Block_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_74test_Block_Reserve_[] = "test_Block_Reserve_()";
static PyMethodDef __pyx_mdef_7_test_c_75test_Block_Reserve_ = {"test_Block_Reserve_", (PyCFunction)__pyx_pw_7_test_c_75test_Block_Reserve_, METH_NOARGS, __pyx_doc_7_test_c_74test_Block_Reserve_};
static PyObject *__pyx_pw_7_test_c_75test_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_74test_Block_Reserve_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_74test_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__185 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__185)) __PYX_ERR(0, 1214, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__185);
  __Pyx_GIVEREF(__pyx_tuple__185);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_75test_Block_Reserve_, 0, __pyx_n_s_test_Block_Reserve, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__186)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1214, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Reserve, __pyx_t_2) < 0) __PYX_ERR(0, 1214, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__186 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__185, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Reserve, 1214, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__186)) __PYX_ERR(0, 1214, __pyx_L1_error)
 1215:     cdef:
+1216:         Block_* block = NULL
  __pyx_v_block = NULL;
+1217:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1218:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1219:         size_t offset
 1220: 
+1221:     try:
  /*try:*/ {
+1222:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1222, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1223:         block = Block_Reserve_(block, 0, 0, True)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, 0, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1223, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1224:         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, 1224, __pyx_L4_error)
      }
    }
    #endif
+1225:         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, 1225, __pyx_L4_error)
      }
    }
    #endif
+1226:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1226, __pyx_L4_error)
      }
    }
    #endif
+1227:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1227, __pyx_L4_error)
      }
    }
    #endif
+1228:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1228, __pyx_L4_error)
      }
    }
    #endif
+1229:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1229, __pyx_L4_error)
      }
    }
    #endif
+1230:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1231: 
+1232:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1232, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1233:         block = Block_Reserve_(block, 0, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, 0, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1233, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1234:         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, 1234, __pyx_L4_error)
      }
    }
    #endif
+1235:         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, 1235, __pyx_L4_error)
      }
    }
    #endif
+1236:         assert Block_Length(block) == 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 3) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1236, __pyx_L4_error)
      }
    }
    #endif
+1237:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1237, __pyx_L4_error)
      }
    }
    #endif
+1238:         assert Block_Endex(block) == 0x1234 + 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1237) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1238, __pyx_L4_error)
      }
    }
    #endif
+1239:         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__12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1239, __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, 1239, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 3, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1239, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
/* … */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_int_3); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 1239, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);
+1240:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1241: 
+1242:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1242, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1242, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1242, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1243:         block = Block_Reserve_(block, 0, 0, True)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, 0, 0, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1243, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1244:         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, 1244, __pyx_L4_error)
      }
    }
    #endif
+1245:         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, 1245, __pyx_L4_error)
      }
    }
    #endif
+1246:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1246, __pyx_L4_error)
      }
    }
    #endif
+1247:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1247, __pyx_L4_error)
      }
    }
    #endif
+1248:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1248, __pyx_L4_error)
      }
    }
    #endif
+1249:         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, 1249, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 1249, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1249, __pyx_L4_error)
      }
    }
    #endif
+1250:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1251: 
+1252:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1252, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1252, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1252, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1253:         block = Block_Reserve_(block, 0, 3, True)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, 0, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1253, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1254:         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, 1254, __pyx_L4_error)
      }
    }
    #endif
+1255:         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, 1255, __pyx_L4_error)
      }
    }
    #endif
+1256:         assert Block_Length(block) == 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (3 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1256, __pyx_L4_error)
      }
    }
    #endif
+1257:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1257, __pyx_L4_error)
      }
    }
    #endif
+1258:         assert Block_Endex(block) == 0x1234 + 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1237 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1258, __pyx_L4_error)
      }
    }
    #endif
+1259:         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__12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1259, __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, 1259, __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, 1259, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (3 + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1259, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+1260:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1261: 
+1262:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1262, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1262, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1262, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1263:         block = Block_Reserve_(block, size, 3, True)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_size, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1263, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1264:         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, 1264, __pyx_L4_error)
      }
    }
    #endif
+1265:         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, 1265, __pyx_L4_error)
      }
    }
    #endif
+1266:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1266, __pyx_L4_error)
      }
    }
    #endif
+1267:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1267, __pyx_L4_error)
      }
    }
    #endif
+1268:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1268, __pyx_L4_error)
      }
    }
    #endif
+1269:         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__12, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1269, __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, 1269, __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, 1269, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1269, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1270:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1271: 
+1272:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1273:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1273, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1273, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1273, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1274:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1274, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1275:         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, 1275, __pyx_L4_error)
      }
    }
    #endif
+1276:         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, 1276, __pyx_L4_error)
      }
    }
    #endif
+1277:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1277, __pyx_L4_error)
      }
    }
    #endif
+1278:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1278, __pyx_L4_error)
      }
    }
    #endif
+1279:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1279, __pyx_L4_error)
      }
    }
    #endif
+1280:         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, 1280, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1280, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1280, __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, 1280, __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, 1280, __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, 1280, __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, 1280, __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, 1280, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1280, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1281:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1282: 
+1283:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+1284:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1284, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1284, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1284, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1285:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1285, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1286:         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, 1286, __pyx_L4_error)
      }
    }
    #endif
+1287:         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, 1287, __pyx_L4_error)
      }
    }
    #endif
+1288:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1288, __pyx_L4_error)
      }
    }
    #endif
+1289:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1289, __pyx_L4_error)
      }
    }
    #endif
+1290:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1290, __pyx_L4_error)
      }
    }
    #endif
+1291:         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, 1291, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1291, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1291, __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, 1291, __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, 1291, __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, 1291, __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, 1291, __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, 1291, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1291, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1292:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1293: 
+1294:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+1295:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1295, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1295, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1295, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1296:         block = Block_Reserve_(block, offset, 3, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, 3, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1296, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1297:         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, 1297, __pyx_L4_error)
      }
    }
    #endif
+1298:         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, 1298, __pyx_L4_error)
      }
    }
    #endif
+1299:         assert Block_Length(block) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1299, __pyx_L4_error)
      }
    }
    #endif
+1300:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1300, __pyx_L4_error)
      }
    }
    #endif
+1301:         assert Block_Endex(block) == 0x1234 + size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1301, __pyx_L4_error)
      }
    }
    #endif
+1302:         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, 1302, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1302, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1302, __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, 1302, __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, 1302, __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, 1302, __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, 1302, __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, 1302, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 3), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1302, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1303:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1304: 
+1305:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1305, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1305, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1305, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1306:         block = Block_Reserve_(block, 0, size, True)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, 0, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1306, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1307:         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, 1307, __pyx_L4_error)
      }
    }
    #endif
+1308:         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, 1308, __pyx_L4_error)
      }
    }
    #endif
+1309:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1309, __pyx_L4_error)
      }
    }
    #endif
+1310:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1310, __pyx_L4_error)
      }
    }
    #endif
+1311:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1311, __pyx_L4_error)
      }
    }
    #endif
+1312:         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, 1312, __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, 1312, __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, 1312, __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, 1312, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1312, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1313:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1314: 
+1315:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1315, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1315, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1315, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1316:         block = Block_Reserve_(block, size, size, True)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_size, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1316, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1317:         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, 1317, __pyx_L4_error)
      }
    }
    #endif
+1318:         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, 1318, __pyx_L4_error)
      }
    }
    #endif
+1319:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1319, __pyx_L4_error)
      }
    }
    #endif
+1320:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1320, __pyx_L4_error)
      }
    }
    #endif
+1321:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1321, __pyx_L4_error)
      }
    }
    #endif
+1322:         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, 1322, __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, 1322, __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, 1322, __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, 1322, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1322, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1323:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1324: 
+1325:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1326:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1326, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1326, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1326, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1327:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1327, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1328:         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, 1328, __pyx_L4_error)
      }
    }
    #endif
+1329:         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, 1329, __pyx_L4_error)
      }
    }
    #endif
+1330:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1330, __pyx_L4_error)
      }
    }
    #endif
+1331:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1331, __pyx_L4_error)
      }
    }
    #endif
+1332:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1332, __pyx_L4_error)
      }
    }
    #endif
+1333:         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, 1333, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1333, __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, 1333, __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, 1333, __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, 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;
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
        __PYX_ERR(0, 1333, __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, 1333, __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, 1333, __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, 1333, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1333, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1334:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1335: 
+1336:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+1337:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1337, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1337, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1337, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1338:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1338, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1339:         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, 1339, __pyx_L4_error)
      }
    }
    #endif
+1340:         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, 1340, __pyx_L4_error)
      }
    }
    #endif
+1341:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1341, __pyx_L4_error)
      }
    }
    #endif
+1342:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1342, __pyx_L4_error)
      }
    }
    #endif
+1343:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1343, __pyx_L4_error)
      }
    }
    #endif
+1344:         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, 1344, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1344, __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, 1344, __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, 1344, __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, 1344, __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, 1344, __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, 1344, __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, 1344, __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, 1344, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1344, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1345:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1346: 
+1347:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+1348:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1348, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1348, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1348, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1349:         block = Block_Reserve_(block, offset, size, True)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Reserve_(__pyx_v_block, __pyx_v_offset, __pyx_v_size, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1349, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1350:         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, 1350, __pyx_L4_error)
      }
    }
    #endif
+1351:         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, 1351, __pyx_L4_error)
      }
    }
    #endif
+1352:         assert Block_Length(block) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1352, __pyx_L4_error)
      }
    }
    #endif
+1353:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1353, __pyx_L4_error)
      }
    }
    #endif
+1354:         assert Block_Endex(block) == 0x1234 + size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1354, __pyx_L4_error)
      }
    }
    #endif
+1355:         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, 1355, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1355, __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, 1355, __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, 1355, __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, 1355, __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, 1355, __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, 1355, __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, 1355, __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, 1355, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + __pyx_v_size), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1355, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1356:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1357: 
+1358:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1358, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1358, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1358, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1359:         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, 1359, __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, 1359, __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, 1359, __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, 1359, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__13, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1359, __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, 1359, __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, 1359, __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, 1359, __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_1c_Block_Reserve_(__pyx_v_block, 0, SIZE_MAX, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1359, __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, 1359, __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, 1359, __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, 1359, __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, 1359, __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, 1359, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1359, __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__13 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 1359, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);
+1360:         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, 1360, __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, 1360, __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, 1360, __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, 1360, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__14, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1360, __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, 1360, __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, 1360, __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, 1360, __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_1c_Block_Reserve_(__pyx_v_block, 0, SIZE_HMAX, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1360, __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, 1360, __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, 1360, __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, 1360, __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, 1360, __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, 1360, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1360, __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__14 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(0, 1360, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__14);
  __Pyx_GIVEREF(__pyx_tuple__14);
+1361:         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, 1361, __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, 1361, __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, 1361, __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, 1361, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__15, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1361, __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, 1361, __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, 1361, __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, 1361, __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_1c_Block_Reserve_(__pyx_v_block, (__pyx_v_size + 1), 1, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1361, __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, 1361, __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, 1361, __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, 1361, __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, 1361, __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, 1361, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1361, __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__15 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(0, 1361, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__15);
  __Pyx_GIVEREF(__pyx_tuple__15);
+1362:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1363: 
 1364:     finally:
+1365:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1366: 
 1367: 
+1368: def test_Block_Delete_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_77test_Block_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_76test_Block_Delete_[] = "test_Block_Delete_()";
static PyMethodDef __pyx_mdef_7_test_c_77test_Block_Delete_ = {"test_Block_Delete_", (PyCFunction)__pyx_pw_7_test_c_77test_Block_Delete_, METH_NOARGS, __pyx_doc_7_test_c_76test_Block_Delete_};
static PyObject *__pyx_pw_7_test_c_77test_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_76test_Block_Delete_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_76test_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__187 = 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__187)) __PYX_ERR(0, 1368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__187);
  __Pyx_GIVEREF(__pyx_tuple__187);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_77test_Block_Delete_, 0, __pyx_n_s_test_Block_Delete, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__188)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Delete, __pyx_t_2) < 0) __PYX_ERR(0, 1368, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__188 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__187, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Delete, 1368, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__188)) __PYX_ERR(0, 1368, __pyx_L1_error)
 1369:     cdef:
+1370:         Block_* block = NULL
  __pyx_v_block = NULL;
+1371:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1372:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1373:         size_t start
 1374:         size_t endex
 1375:         bytearray buffer
 1376: 
+1377:     try:
  /*try:*/ {
+1378:         start = endex = 0
    __pyx_v_start = 0;
    __pyx_v_endex = 0;
+1379:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1379, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1380:         block = Block_Delete_(block, 0, 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Delete_(__pyx_v_block, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1380, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1381:         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, 1381, __pyx_L4_error)
      }
    }
    #endif
+1382:         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, 1382, __pyx_L4_error)
      }
    }
    #endif
+1383:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1383, __pyx_L4_error)
      }
    }
    #endif
+1384:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1384, __pyx_L4_error)
      }
    }
    #endif
+1385:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1385, __pyx_L4_error)
      }
    }
    #endif
+1386:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1386, __pyx_L4_error)
      }
    }
    #endif
+1387:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1388: 
+1389:         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;
+1390:             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;
+1391:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1391, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+1392:                 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, 1392, __pyx_L4_error)
+1393:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 1393, __pyx_L4_error)
        }
        __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 1393, __pyx_L4_error)
        __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_9); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1393, __pyx_L4_error)
        __pyx_v_block = __pyx_t_1;
+1394:                 block = Block_Delete_(block, start, endex - start)
        __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Delete_(__pyx_v_block, __pyx_v_start, (__pyx_v_endex - __pyx_v_start)); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1394, __pyx_L4_error)
        __pyx_v_block = __pyx_t_1;
+1395:                 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, 1395, __pyx_L4_error)
          }
        }
        #endif
+1396:                 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, 1396, __pyx_L4_error)
          }
        }
        #endif
+1397:                 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, 1397, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_10)) != 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_1c_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 + <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, 1399, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_10))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1399, __pyx_L4_error)
          }
        }
        #endif
+1400:                 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, 1400, __pyx_L4_error)
          __pyx_t_11 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 1400, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_10), __pyx_t_11) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 1400, __pyx_L4_error)
          }
        }
        #endif
+1401:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 1402: 
+1403:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1403, __pyx_L4_error)
    }
    __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 1403, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_9); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1403, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1404:         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, 1404, __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, 1404, __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, 1404, __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, 1404, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__16, __pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1404, __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, 1404, __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, 1404, __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, 1404, __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_1c_Block_Delete_(__pyx_v_block, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1404, __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, 1404, __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, 1404, __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, 1404, __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, 1404, __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, 1404, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1404, __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__16 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 1404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__16);
  __Pyx_GIVEREF(__pyx_tuple__16);
+1405:         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, 1405, __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, 1405, __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, 1405, __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, 1405, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__17, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1405, __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, 1405, __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, 1405, __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, 1405, __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_1c_Block_Delete_(__pyx_v_block, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1405, __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, 1405, __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, 1405, __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, 1405, __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, 1405, __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, 1405, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1405, __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__17 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 1405, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__17);
  __Pyx_GIVEREF(__pyx_tuple__17);
+1406:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1407: 
 1408:     finally:
+1409:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1410: 
 1411: 
+1412: def test_Block_Clear():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_79test_Block_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_78test_Block_Clear[] = "test_Block_Clear()";
static PyMethodDef __pyx_mdef_7_test_c_79test_Block_Clear = {"test_Block_Clear", (PyCFunction)__pyx_pw_7_test_c_79test_Block_Clear, METH_NOARGS, __pyx_doc_7_test_c_78test_Block_Clear};
static PyObject *__pyx_pw_7_test_c_79test_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_78test_Block_Clear(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_78test_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__189 = PyTuple_Pack(1, __pyx_n_s_block); if (unlikely(!__pyx_tuple__189)) __PYX_ERR(0, 1412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__189);
  __Pyx_GIVEREF(__pyx_tuple__189);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_79test_Block_Clear, 0, __pyx_n_s_test_Block_Clear, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__190)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Clear, __pyx_t_2) < 0) __PYX_ERR(0, 1412, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__190 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__189, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Clear, 1412, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__190)) __PYX_ERR(0, 1412, __pyx_L1_error)
 1413:     cdef:
+1414:         Block_* block = NULL
  __pyx_v_block = NULL;
 1415: 
+1416:     try:
  /*try:*/ {
+1417:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1417, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1418:         block = Block_Clear(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Clear(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1418, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1419:         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, 1419, __pyx_L4_error)
      }
    }
    #endif
+1420:         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, 1420, __pyx_L4_error)
      }
    }
    #endif
+1421:         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, 1421, __pyx_L4_error)
      }
    }
    #endif
+1422:         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, 1422, __pyx_L4_error)
      }
    }
    #endif
+1423:         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, 1423, __pyx_L4_error)
      }
    }
    #endif
+1424:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1424, __pyx_L4_error)
      }
    }
    #endif
+1425:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1425, __pyx_L4_error)
      }
    }
    #endif
+1426:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1426, __pyx_L4_error)
      }
    }
    #endif
+1427:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1428: 
+1429:         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_1c_Block_FromObject(0x1234, __pyx_t_2, 1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1429, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_v_block = __pyx_t_1;
+1430:         block = Block_Clear(block)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Clear(__pyx_v_block); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1430, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1431:         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, 1431, __pyx_L4_error)
      }
    }
    #endif
+1432:         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, 1432, __pyx_L4_error)
      }
    }
    #endif
+1433:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1433, __pyx_L4_error)
      }
    }
    #endif
+1434:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1434, __pyx_L4_error)
      }
    }
    #endif
+1435:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1435, __pyx_L4_error)
      }
    }
    #endif
+1436:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1437: 
 1438:     finally:
+1439:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1440: 
 1441: 
+1442: 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;
  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__191 = 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__191)) __PYX_ERR(0, 1442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__191);
  __Pyx_GIVEREF(__pyx_tuple__191);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_81test_Block_Get_, 0, __pyx_n_s_test_Block_Get, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__192)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Get, __pyx_t_2) < 0) __PYX_ERR(0, 1442, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__192 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__191, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Get, 1442, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__192)) __PYX_ERR(0, 1442, __pyx_L1_error)
 1443:     cdef:
+1444:         Block_* block = NULL
  __pyx_v_block = NULL;
+1445:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1446:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1447:         size_t offset
+1448:         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;
 1449: 
+1450:     try:
  /*try:*/ {
+1451:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1451, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1451, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1451, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 1452: 
+1453:         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;
+1454:             assert Block_Get_(block, offset) == data[offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Get_(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1454, __pyx_L4_error)
        __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1454, __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, 1454, __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, 1454, __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, 1454, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_10)) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1454, __pyx_L4_error)
        }
      }
      #endif
    }
 1455: 
+1456:         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, 1456, __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, 1456, __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, 1456, __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, 1456, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__18, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1456, __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, 1456, __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, 1456, __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, 1456, __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_1c_Block_Get_(__pyx_v_block, 13); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1456, __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, 1456, __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, 1456, __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, 1456, __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, 1456, __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, 1456, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1456, __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__18 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 1456, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__18);
  __Pyx_GIVEREF(__pyx_tuple__18);
+1457:         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, 1457, __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, 1457, __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, 1457, __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, 1457, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__19, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1457, __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, 1457, __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, 1457, __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, 1457, __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_1c_Block_Get_(__pyx_v_block, 99); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1457, __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, 1457, __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, 1457, __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, 1457, __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, 1457, __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, 1457, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1457, __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__19 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 1457, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__19);
  __Pyx_GIVEREF(__pyx_tuple__19);
 1458: 
 1459:     finally:
+1460:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1461: 
 1462: 
+1463: def test_Block_Get():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_83test_Block_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_82test_Block_Get[] = "test_Block_Get()";
static PyMethodDef __pyx_mdef_7_test_c_83test_Block_Get = {"test_Block_Get", (PyCFunction)__pyx_pw_7_test_c_83test_Block_Get, METH_NOARGS, __pyx_doc_7_test_c_82test_Block_Get};
static PyObject *__pyx_pw_7_test_c_83test_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_82test_Block_Get(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_82test_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__193 = 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__193)) __PYX_ERR(0, 1463, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__193);
  __Pyx_GIVEREF(__pyx_tuple__193);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_83test_Block_Get, 0, __pyx_n_s_test_Block_Get_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__194)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1463, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Get_2, __pyx_t_2) < 0) __PYX_ERR(0, 1463, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__194 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__193, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Get_2, 1463, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__194)) __PYX_ERR(0, 1463, __pyx_L1_error)
 1464:     cdef:
+1465:         Block_* block = NULL
  __pyx_v_block = NULL;
+1466:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1467:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1468:         ssize_t offset
+1469:         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;
 1470: 
+1471:     try:
  /*try:*/ {
+1472:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1472, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1472, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1472, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 1473: 
+1474:         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;
+1475:             assert Block_Get(block, offset) == data[offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1475, __pyx_L4_error)
        __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1475, __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, 1475, __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, 1475, __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, 1475, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        if (unlikely(!__pyx_t_10)) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1475, __pyx_L4_error)
        }
      }
      #endif
    }
 1476: 
+1477:         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, 1477, __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, 1477, __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, 1477, __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, 1477, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__20, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1477, __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, 1477, __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, 1477, __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, 1477, __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_1c_Block_Get(__pyx_v_block, 13); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1477, __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, 1477, __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, 1477, __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, 1477, __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, 1477, __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, 1477, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1477, __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__20 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 1477, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__20);
  __Pyx_GIVEREF(__pyx_tuple__20);
+1478:         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, 1478, __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, 1478, __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, 1478, __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, 1478, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__21, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1478, __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, 1478, __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, 1478, __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, 1478, __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_1c_Block_Get(__pyx_v_block, 99); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1478, __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, 1478, __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, 1478, __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, 1478, __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, 1478, __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, 1478, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1478, __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__21 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 1478, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__21);
  __Pyx_GIVEREF(__pyx_tuple__21);
+1479:         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, 1479, __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, 1479, __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, 1479, __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, 1479, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__22, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1479, __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, 1479, __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, 1479, __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, 1479, __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_1c_Block_Get(__pyx_v_block, -14L); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1479, __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, 1479, __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, 1479, __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, 1479, __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, 1479, __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, 1479, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1479, __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__22 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(0, 1479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__22);
  __Pyx_GIVEREF(__pyx_tuple__22);
+1480:         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, 1480, __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, 1480, __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, 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_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__23, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1480, __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, 1480, __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, 1480, __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, 1480, __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_1c_Block_Get(__pyx_v_block, -99L); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1480, __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, 1480, __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, 1480, __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, 1480, __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, 1480, __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, 1480, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1480, __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__23 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 1480, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__23);
  __Pyx_GIVEREF(__pyx_tuple__23);
 1481: 
 1482:     finally:
+1483:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1484: 
 1485: 
+1486: 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;
  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__195 = 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__195)) __PYX_ERR(0, 1486, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__195);
  __Pyx_GIVEREF(__pyx_tuple__195);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_85test_Block_Set_, 0, __pyx_n_s_test_Block_Set, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__196)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1486, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Set, __pyx_t_2) < 0) __PYX_ERR(0, 1486, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__196 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__195, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Set, 1486, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__196)) __PYX_ERR(0, 1486, __pyx_L1_error)
 1487:     cdef:
+1488:         Block_* block = NULL
  __pyx_v_block = NULL;
+1489:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1490:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1491:         size_t offset
 1492:         byte_t value
 1493:         byte_t complement
+1494:         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;
 1495: 
+1496:     try:
  /*try:*/ {
+1497:         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;
+1498:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 1498, __pyx_L4_error)
      }
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1498, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1498, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+1499:             value = Block_Get__(block, offset)
      __pyx_v_value = __pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block, __pyx_v_offset);
+1500:             complement = <byte_t>(value ^ <byte_t>0xFF)
      __pyx_v_complement = ((byte_t)(__pyx_v_value ^ ((byte_t)0xFF)));
+1501:             assert Block_Set_(block, offset, complement) == value
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Set_(__pyx_v_block, __pyx_v_offset, __pyx_v_complement); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1501, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_value) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1501, __pyx_L4_error)
        }
      }
      #endif
+1502:             assert Block_Get__(block, offset) == complement
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Get__(__pyx_v_block, __pyx_v_offset) == __pyx_v_complement) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1502, __pyx_L4_error)
        }
      }
      #endif
+1503:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
 1504: 
+1505:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1505, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1505, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1505, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+1506:         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, 1506, __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, 1506, __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, 1506, __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, 1506, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__24, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1506, __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, 1506, __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, 1506, __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, 1506, __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_1c_Block_Set_(__pyx_v_block, 13, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1506, __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, 1506, __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, 1506, __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, 1506, __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, 1506, __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, 1506, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1506, __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__24 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 1506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__24);
  __Pyx_GIVEREF(__pyx_tuple__24);
+1507:         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, 1507, __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, 1507, __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, 1507, __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, 1507, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__25, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1507, __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, 1507, __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, 1507, __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, 1507, __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_1c_Block_Set_(__pyx_v_block, 99, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1507, __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, 1507, __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, 1507, __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, 1507, __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, 1507, __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, 1507, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1507, __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__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:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1509: 
 1510:     finally:
+1511:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1512: 
 1513: 
+1514: def test_Block_Set():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_87test_Block_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_86test_Block_Set[] = "test_Block_Set()";
static PyMethodDef __pyx_mdef_7_test_c_87test_Block_Set = {"test_Block_Set", (PyCFunction)__pyx_pw_7_test_c_87test_Block_Set, METH_NOARGS, __pyx_doc_7_test_c_86test_Block_Set};
static PyObject *__pyx_pw_7_test_c_87test_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_86test_Block_Set(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_86test_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__197 = 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__197)) __PYX_ERR(0, 1514, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__197);
  __Pyx_GIVEREF(__pyx_tuple__197);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_87test_Block_Set, 0, __pyx_n_s_test_Block_Set_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__198)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1514, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Set_2, __pyx_t_2) < 0) __PYX_ERR(0, 1514, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__198 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__197, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Set_2, 1514, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__198)) __PYX_ERR(0, 1514, __pyx_L1_error)
 1515:     cdef:
+1516:         Block_* block = NULL
  __pyx_v_block = NULL;
+1517:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1518:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1519:         ssize_t offset
 1520:         byte_t value
 1521:         byte_t complement
+1522:         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;
 1523: 
+1524:     try:
  /*try:*/ {
+1525:         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;
+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_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1526, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1526, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+1527:             value = Block_Get(block, offset)
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1527, __pyx_L4_error)
      __pyx_v_value = __pyx_t_6;
+1528:             complement = <byte_t>(value ^ <byte_t>0xFF)
      __pyx_v_complement = ((byte_t)(__pyx_v_value ^ ((byte_t)0xFF)));
+1529:             assert Block_Set(block, offset, complement) == value
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Set(__pyx_v_block, __pyx_v_offset, __pyx_v_complement); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1529, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_value) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1529, __pyx_L4_error)
        }
      }
      #endif
+1530:             assert Block_Get(block, offset) == complement
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Get(__pyx_v_block, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1530, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_complement) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 1530, __pyx_L4_error)
        }
      }
      #endif
+1531:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
 1532: 
+1533:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1533, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1533, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 1533, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+1534:         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, 1534, __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, 1534, __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, 1534, __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, 1534, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__26, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1534, __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, 1534, __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, 1534, __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, 1534, __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_1c_Block_Set(__pyx_v_block, 13, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1534, __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, 1534, __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, 1534, __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, 1534, __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, 1534, __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, 1534, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1534, __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__26 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(0, 1534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__26);
  __Pyx_GIVEREF(__pyx_tuple__26);
+1535:         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, 1535, __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, 1535, __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, 1535, __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, 1535, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__27, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1535, __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, 1535, __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, 1535, __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, 1535, __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_1c_Block_Set(__pyx_v_block, 99, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1535, __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, 1535, __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, 1535, __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, 1535, __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, 1535, __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, 1535, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1535, __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__27 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 1535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__27);
  __Pyx_GIVEREF(__pyx_tuple__27);
+1536:         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, 1536, __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, 1536, __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, 1536, __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, 1536, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__28, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1536, __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, 1536, __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, 1536, __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, 1536, __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_1c_Block_Set(__pyx_v_block, -14L, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1536, __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, 1536, __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, 1536, __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, 1536, __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, 1536, __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, 1536, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1536, __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__28 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 1536, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__28);
  __Pyx_GIVEREF(__pyx_tuple__28);
+1537:         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, 1537, __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, 1537, __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, 1537, __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, 1537, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__29, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1537, __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, 1537, __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, 1537, __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, 1537, __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_1c_Block_Set(__pyx_v_block, -99L, 0x69); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1537, __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, 1537, __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, 1537, __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, 1537, __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, 1537, __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, 1537, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1537, __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__29 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 1537, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__29);
  __Pyx_GIVEREF(__pyx_tuple__29);
+1538:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1539: 
 1540:     finally:
+1541:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1542: 
 1543: 
+1544: 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;
  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__199 = 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__199)) __PYX_ERR(0, 1544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__199);
  __Pyx_GIVEREF(__pyx_tuple__199);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_89test_Block_Pop__, 0, __pyx_n_s_test_Block_Pop, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__200)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop, __pyx_t_2) < 0) __PYX_ERR(0, 1544, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__200 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__199, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop, 1544, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__200)) __PYX_ERR(0, 1544, __pyx_L1_error)
 1545:     cdef:
+1546:         Block_* block = NULL
  __pyx_v_block = NULL;
+1547:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1548:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1549:         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;
 1550:         byte_t backup
 1551: 
+1552:     try:
  /*try:*/ {
+1553:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1553, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1553, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1553, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1554:         backup = 0
    __pyx_v_backup = 0;
+1555:         block = Block_Pop__(block, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop__(__pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1555, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1556:         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, 1556, __pyx_L4_error)
      }
    }
    #endif
+1557:         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, 1557, __pyx_L4_error)
      }
    }
    #endif
+1558:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1558, __pyx_L4_error)
      }
    }
    #endif
+1559:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1559, __pyx_L4_error)
      }
    }
    #endif
+1560:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1560, __pyx_L4_error)
      }
    }
    #endif
+1561:         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, 1561, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1561, __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, 1561, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1561, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1562:         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, 1562, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_GetItemInt(__pyx_kp_b__30, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1562, __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, 1562, __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, 1562, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1562, __pyx_L4_error)
      }
    }
    #endif
+1563:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1564: 
+1565:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1565, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1566:         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, 1566, __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, 1566, __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, 1566, __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, 1566, __pyx_L4_error)
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__31, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1566, __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, 1566, __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, 1566, __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, 1566, __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_1c_Block_Pop__(__pyx_v_block, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1566, __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, 1566, __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, 1566, __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, 1566, __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, 1566, __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, 1566, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1566, __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, 1566, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__31);
  __Pyx_GIVEREF(__pyx_tuple__31);
+1567:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1568: 
 1569:     finally:
+1570:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1571: 
 1572: 
+1573: 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;
  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__201 = 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__201)) __PYX_ERR(0, 1573, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__201);
  __Pyx_GIVEREF(__pyx_tuple__201);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_91test_Block_Pop_, 0, __pyx_n_s_test_Block_Pop_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__202)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1573, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop_2, __pyx_t_2) < 0) __PYX_ERR(0, 1573, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__202 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__201, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop_2, 1573, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__202)) __PYX_ERR(0, 1573, __pyx_L1_error)
 1574:     cdef:
+1575:         Block_* block = NULL
  __pyx_v_block = NULL;
+1576:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1577:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1578:         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;
 1579:         byte_t backup
 1580:         size_t offset
 1581: 
+1582:     try:
  /*try:*/ {
+1583:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1583, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1583, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1583, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1584:         backup = 0
    __pyx_v_backup = 0;
+1585:         block = Block_Pop_(block, size - 1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop_(__pyx_v_block, (__pyx_v_size - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1585, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1586:         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, 1586, __pyx_L4_error)
      }
    }
    #endif
+1587:         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, 1587, __pyx_L4_error)
      }
    }
    #endif
+1588:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1588, __pyx_L4_error)
      }
    }
    #endif
+1589:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1589, __pyx_L4_error)
      }
    }
    #endif
+1590:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1590, __pyx_L4_error)
      }
    }
    #endif
+1591:         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, 1591, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1591, __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, 1591, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1591, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1592:         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, 1592, __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, 1592, __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, 1592, __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, 1592, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1592, __pyx_L4_error)
      }
    }
    #endif
+1593:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1594: 
+1595:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1595, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1595, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1595, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1596:         backup = 0
    __pyx_v_backup = 0;
+1597:         block = Block_Pop_(block, 0, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop_(__pyx_v_block, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1597, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1598:         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, 1598, __pyx_L4_error)
      }
    }
    #endif
+1599:         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, 1599, __pyx_L4_error)
      }
    }
    #endif
+1600:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1600, __pyx_L4_error)
      }
    }
    #endif
+1601:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1601, __pyx_L4_error)
      }
    }
    #endif
+1602:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1602, __pyx_L4_error)
      }
    }
    #endif
+1603:         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, 1603, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1603, __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, 1603, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1603, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1604:         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, 1604, __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, 1604, __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, 1604, __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, 1604, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1604, __pyx_L4_error)
      }
    }
    #endif
+1605:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1606: 
+1607:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1608:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1608, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1608, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1608, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1609:         backup = 0
    __pyx_v_backup = 0;
+1610:         block = Block_Pop_(block, offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop_(__pyx_v_block, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1610, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1611:         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, 1611, __pyx_L4_error)
      }
    }
    #endif
+1612:         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, 1612, __pyx_L4_error)
      }
    }
    #endif
+1613:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1613, __pyx_L4_error)
      }
    }
    #endif
+1614:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1614, __pyx_L4_error)
      }
    }
    #endif
+1615:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1615, __pyx_L4_error)
      }
    }
    #endif
+1616:         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, 1616, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1616, __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, 1616, __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, 1616, __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, 1616, __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, 1616, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1616, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1617:         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, 1617, __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, 1617, __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, 1617, __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, 1617, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1617, __pyx_L4_error)
      }
    }
    #endif
+1618:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1619: 
+1620:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1620, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1621:         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, 1621, __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, 1621, __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, 1621, __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, 1621, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__32, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1621, __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, 1621, __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, 1621, __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, 1621, __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_1c_Block_Pop_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1621, __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, 1621, __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, 1621, __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, 1621, __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, 1621, __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, 1621, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1621, __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__32 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 1621, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__32);
  __Pyx_GIVEREF(__pyx_tuple__32);
+1622:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1623: 
+1624:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1624, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1624, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1624, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1625:         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, 1625, __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, 1625, __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, 1625, __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, 1625, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__33, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1625, __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, 1625, __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, 1625, __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, 1625, __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_1c_Block_Pop_(__pyx_v_block, __pyx_v_size, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1625, __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, 1625, __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, 1625, __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, 1625, __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, 1625, __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, 1625, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1625, __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__33 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 1625, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__33);
  __Pyx_GIVEREF(__pyx_tuple__33);
+1626:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1627: 
 1628:     finally:
+1629:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1630: 
 1631: 
+1632: def test_Block_Pop():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_93test_Block_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_92test_Block_Pop[] = "test_Block_Pop()";
static PyMethodDef __pyx_mdef_7_test_c_93test_Block_Pop = {"test_Block_Pop", (PyCFunction)__pyx_pw_7_test_c_93test_Block_Pop, METH_NOARGS, __pyx_doc_7_test_c_92test_Block_Pop};
static PyObject *__pyx_pw_7_test_c_93test_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_92test_Block_Pop(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_92test_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__203 = 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__203)) __PYX_ERR(0, 1632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__203);
  __Pyx_GIVEREF(__pyx_tuple__203);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_93test_Block_Pop, 0, __pyx_n_s_test_Block_Pop_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__204)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Pop_3, __pyx_t_2) < 0) __PYX_ERR(0, 1632, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__204 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__203, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Pop_3, 1632, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__204)) __PYX_ERR(0, 1632, __pyx_L1_error)
 1633:     cdef:
+1634:         Block_* block = NULL
  __pyx_v_block = NULL;
+1635:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1636:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1637:         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;
 1638:         byte_t backup
 1639:         ssize_t offset
 1640: 
+1641:     try:
  /*try:*/ {
+1642:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1642, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1642, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1642, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1643:         backup = 0
    __pyx_v_backup = 0;
+1644:         block = Block_Pop(block, <ssize_t>size - 1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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, 1644, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1645:         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, 1645, __pyx_L4_error)
      }
    }
    #endif
+1646:         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, 1646, __pyx_L4_error)
      }
    }
    #endif
+1647:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1647, __pyx_L4_error)
      }
    }
    #endif
+1648:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1648, __pyx_L4_error)
      }
    }
    #endif
+1649:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1649, __pyx_L4_error)
      }
    }
    #endif
+1650:         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, 1650, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1650, __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, 1650, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1650, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1651:         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, 1651, __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, 1651, __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, 1651, __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, 1651, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1651, __pyx_L4_error)
      }
    }
    #endif
+1652:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1653: 
+1654:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1654, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1654, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1654, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1655:         backup = 0
    __pyx_v_backup = 0;
+1656:         block = Block_Pop(block, -1, &backup)  # final
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop(__pyx_v_block, -1L, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1656, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1657:         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, 1657, __pyx_L4_error)
      }
    }
    #endif
+1658:         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, 1658, __pyx_L4_error)
      }
    }
    #endif
+1659:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1659, __pyx_L4_error)
      }
    }
    #endif
+1660:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1660, __pyx_L4_error)
      }
    }
    #endif
+1661:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1661, __pyx_L4_error)
      }
    }
    #endif
+1662:         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, 1662, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 0, -1L); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1662, __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, 1662, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1662, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1663:         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, 1663, __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, 1663, __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, 1663, __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, 1663, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1663, __pyx_L4_error)
      }
    }
    #endif
+1664:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1665: 
+1666:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1666, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1666, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1666, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1667:         backup = 0
    __pyx_v_backup = 0;
+1668:         block = Block_Pop(block, 0, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop(__pyx_v_block, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1668, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1669:         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, 1669, __pyx_L4_error)
      }
    }
    #endif
+1670:         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, 1670, __pyx_L4_error)
      }
    }
    #endif
+1671:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1671, __pyx_L4_error)
      }
    }
    #endif
+1672:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1672, __pyx_L4_error)
      }
    }
    #endif
+1673:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1673, __pyx_L4_error)
      }
    }
    #endif
+1674:         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, 1674, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1674, __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, 1674, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1674, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1675:         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, 1675, __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, 1675, __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, 1675, __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, 1675, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1675, __pyx_L4_error)
      }
    }
    #endif
+1676:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1677: 
+1678:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1678, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1678, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1678, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1679:         backup = 0
    __pyx_v_backup = 0;
+1680:         block = Block_Pop(block, -<ssize_t>size, &backup)  # initial
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop(__pyx_v_block, (-((Py_ssize_t)__pyx_v_size)), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1680, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1681:         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, 1681, __pyx_L4_error)
      }
    }
    #endif
+1682:         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, 1682, __pyx_L4_error)
      }
    }
    #endif
+1683:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1683, __pyx_L4_error)
      }
    }
    #endif
+1684:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1684, __pyx_L4_error)
      }
    }
    #endif
+1685:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1685, __pyx_L4_error)
      }
    }
    #endif
+1686:         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, 1686, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1686, __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, 1686, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1686, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1687:         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, 1687, __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, 1687, __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, 1687, __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, 1687, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1687, __pyx_L4_error)
      }
    }
    #endif
+1688:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1689: 
+1690:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1691:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1691, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1691, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1691, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1692:         backup = 0
    __pyx_v_backup = 0;
+1693:         block = Block_Pop(block, offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop(__pyx_v_block, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1693, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1694:         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, 1694, __pyx_L4_error)
      }
    }
    #endif
+1695:         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, 1695, __pyx_L4_error)
      }
    }
    #endif
+1696:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1696, __pyx_L4_error)
      }
    }
    #endif
+1697:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1697, __pyx_L4_error)
      }
    }
    #endif
+1698:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1698, __pyx_L4_error)
      }
    }
    #endif
+1699:         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, 1699, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1699, __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, 1699, __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, 1699, __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, 1699, __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, 1699, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1699, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1700:         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, 1700, __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, 1700, __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, 1700, __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, 1700, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1700, __pyx_L4_error)
      }
    }
    #endif
+1701:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1702: 
+1703:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1704:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1704, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1704, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1704, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1705:         backup = 0
    __pyx_v_backup = 0;
+1706:         block = Block_Pop(block, -offset, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Pop(__pyx_v_block, (-__pyx_v_offset), (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1706, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1707:         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, 1707, __pyx_L4_error)
      }
    }
    #endif
+1708:         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, 1708, __pyx_L4_error)
      }
    }
    #endif
+1709:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1709, __pyx_L4_error)
      }
    }
    #endif
+1710:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1710, __pyx_L4_error)
      }
    }
    #endif
+1711:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1711, __pyx_L4_error)
      }
    }
    #endif
+1712:         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, 1712, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 0, (-__pyx_v_offset)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1712, __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, 1712, __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, 1712, __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, 1712, __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, 1712, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1712, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1713:         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, 1713, __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, 1713, __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, 1713, __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, 1713, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1713, __pyx_L4_error)
      }
    }
    #endif
+1714:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1715: 
+1716:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1716, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1717:         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, 1717, __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, 1717, __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, 1717, __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, 1717, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__34, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1717, __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, 1717, __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, 1717, __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, 1717, __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_1c_Block_Pop(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1717, __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, 1717, __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, 1717, __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, 1717, __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, 1717, __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, 1717, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1717, __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__34 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 1717, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__34);
  __Pyx_GIVEREF(__pyx_tuple__34);
+1718:         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, 1718, __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, 1718, __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, 1718, __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, 1718, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__35, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1718, __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, 1718, __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, 1718, __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, 1718, __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_1c_Block_Pop(__pyx_v_block, -1L, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1718, __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, 1718, __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, 1718, __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, 1718, __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, 1718, __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, 1718, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1718, __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__35 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 1718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__35);
  __Pyx_GIVEREF(__pyx_tuple__35);
+1719:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1720: 
+1721:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1721, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1721, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1721, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1722:         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, 1722, __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, 1722, __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, 1722, __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, 1722, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__36, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1722, __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, 1722, __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, 1722, __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, 1722, __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_1c_Block_Pop(__pyx_v_block, __pyx_v_size, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1722, __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, 1722, __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, 1722, __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, 1722, __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, 1722, __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, 1722, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1722, __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__36 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 1722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__36);
  __Pyx_GIVEREF(__pyx_tuple__36);
+1723:         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, 1723, __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, 1723, __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, 1723, __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, 1723, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__37, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1723, __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, 1723, __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, 1723, __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, 1723, __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_1c_Block_Pop(__pyx_v_block, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1723, __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, 1723, __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, 1723, __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, 1723, __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, 1723, __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, 1723, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1723, __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__37 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 1723, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__37);
  __Pyx_GIVEREF(__pyx_tuple__37);
+1724:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1725: 
 1726:     finally:
+1727:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1728: 
 1729: 
+1730: def test_Block_PopLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_95test_Block_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_94test_Block_PopLeft[] = "test_Block_PopLeft()";
static PyMethodDef __pyx_mdef_7_test_c_95test_Block_PopLeft = {"test_Block_PopLeft", (PyCFunction)__pyx_pw_7_test_c_95test_Block_PopLeft, METH_NOARGS, __pyx_doc_7_test_c_94test_Block_PopLeft};
static PyObject *__pyx_pw_7_test_c_95test_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_94test_Block_PopLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_94test_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__205 = 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__205)) __PYX_ERR(0, 1730, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__205);
  __Pyx_GIVEREF(__pyx_tuple__205);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_95test_Block_PopLeft, 0, __pyx_n_s_test_Block_PopLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__206)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1730, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_PopLeft, __pyx_t_2) < 0) __PYX_ERR(0, 1730, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__206 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__205, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_PopLeft, 1730, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__206)) __PYX_ERR(0, 1730, __pyx_L1_error)
 1731:     cdef:
+1732:         Block_* block = NULL
  __pyx_v_block = NULL;
+1733:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1734:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1735:         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;
 1736:         byte_t backup
 1737: 
+1738:     try:
  /*try:*/ {
+1739:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1739, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 1739, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1739, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1740:         backup = 0
    __pyx_v_backup = 0;
+1741:         block = Block_PopLeft(block, &backup)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_PopLeft(__pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1741, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1742:         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, 1742, __pyx_L4_error)
      }
    }
    #endif
+1743:         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, 1743, __pyx_L4_error)
      }
    }
    #endif
+1744:         assert Block_Length(block) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1744, __pyx_L4_error)
      }
    }
    #endif
+1745:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1745, __pyx_L4_error)
      }
    }
    #endif
+1746:         assert Block_Endex(block) == 0x1234 + size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1746, __pyx_L4_error)
      }
    }
    #endif
+1747:         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, 1747, __pyx_L4_error)
      }
      __pyx_t_3 = PySequence_GetSlice(__pyx_v_data, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1747, __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, 1747, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size - 1), __pyx_t_4) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1747, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    #endif
+1748:         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, 1748, __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, 1748, __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, 1748, __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, 1748, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (unlikely(!__pyx_t_7)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1748, __pyx_L4_error)
      }
    }
    #endif
+1749:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1750: 
+1751:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1751, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+1752:         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, 1752, __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, 1752, __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, 1752, __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, 1752, __pyx_L4_error)
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__38, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1752, __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, 1752, __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, 1752, __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, 1752, __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_1c_Block_PopLeft(__pyx_v_block, NULL); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 1752, __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, 1752, __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, 1752, __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, 1752, __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, 1752, __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, 1752, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1752, __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__38 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 1752, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__38);
  __Pyx_GIVEREF(__pyx_tuple__38);
+1753:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1754: 
 1755:     finally:
+1756:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1757: 
 1758: 
+1759: 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;
  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__207 = 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__207)) __PYX_ERR(0, 1759, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__207);
  __Pyx_GIVEREF(__pyx_tuple__207);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_97test_Block_Insert_, 0, __pyx_n_s_test_Block_Insert, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__208)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1759, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Insert, __pyx_t_2) < 0) __PYX_ERR(0, 1759, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__208 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__207, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Insert, 1759, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__208)) __PYX_ERR(0, 1759, __pyx_L1_error)
 1760:     cdef:
+1761:         Block_* block = NULL
  __pyx_v_block = NULL;
+1762:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1763:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1764:         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;
 1765:         size_t offset
 1766: 
+1767:     try:
  /*try:*/ {
+1768:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1768, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1769:         block = Block_Insert_(block, 0, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1769, __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, 1769, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert_(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1769, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1770:         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, 1770, __pyx_L4_error)
      }
    }
    #endif
+1771:         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, 1771, __pyx_L4_error)
      }
    }
    #endif
+1772:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1772, __pyx_L4_error)
      }
    }
    #endif
+1773:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1773, __pyx_L4_error)
      }
    }
    #endif
+1774:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1774, __pyx_L4_error)
      }
    }
    #endif
+1775:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1775, __pyx_L4_error)
      }
    }
    #endif
+1776:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1777: 
+1778:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1778, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1778, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1778, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1779:         block = Block_Insert_(block, 0, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1779, __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, 1779, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert_(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1779, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1780:         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, 1780, __pyx_L4_error)
      }
    }
    #endif
+1781:         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, 1781, __pyx_L4_error)
      }
    }
    #endif
+1782:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1782, __pyx_L4_error)
      }
    }
    #endif
+1783:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1783, __pyx_L4_error)
      }
    }
    #endif
+1784:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1784, __pyx_L4_error)
      }
    }
    #endif
+1785:         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__39, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1785, __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, 1785, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1785, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1786:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1787: 
+1788:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1788, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1788, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1788, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1789:         block = Block_Insert_(block, size, b'@'[0])  # after
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1789, __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, 1789, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert_(__pyx_v_block, __pyx_v_size, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1789, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1790:         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, 1790, __pyx_L4_error)
      }
    }
    #endif
+1791:         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, 1791, __pyx_L4_error)
      }
    }
    #endif
+1792:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1792, __pyx_L4_error)
      }
    }
    #endif
+1793:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1793, __pyx_L4_error)
      }
    }
    #endif
+1794:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1794, __pyx_L4_error)
      }
    }
    #endif
+1795:         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__39); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1795, __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, 1795, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1795, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1796:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1797: 
+1798:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+1799:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1799, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1799, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1799, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1800:         block = Block_Insert_(block, offset, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1800, __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, 1800, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert_(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1800, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1801:         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, 1801, __pyx_L4_error)
      }
    }
    #endif
+1802:         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, 1802, __pyx_L4_error)
      }
    }
    #endif
+1803:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1803, __pyx_L4_error)
      }
    }
    #endif
+1804:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1804, __pyx_L4_error)
      }
    }
    #endif
+1805:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1805, __pyx_L4_error)
      }
    }
    #endif
+1806:         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, 1806, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1806, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_kp_b__39); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1806, __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, 1806, __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, 1806, __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, 1806, __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, 1806, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1806, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    #endif
+1807:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1808: 
+1809:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1809, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1810:         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, 1810, __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, 1810, __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, 1810, __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, 1810, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__40, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1810, __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, 1810, __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, 1810, __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, 1810, __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_1c_Block_Insert_(__pyx_v_block, 1, 0x69); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1810, __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, 1810, __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, 1810, __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, 1810, __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, 1810, __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, 1810, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1810, __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__40 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(0, 1810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__40);
  __Pyx_GIVEREF(__pyx_tuple__40);
+1811:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1812: 
+1813:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1813, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1813, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1813, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1814:         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, 1814, __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, 1814, __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, 1814, __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, 1814, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__41, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1814, __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, 1814, __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, 1814, __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, 1814, __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_1c_Block_Insert_(__pyx_v_block, (__pyx_v_size + 1), 0x69); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1814, __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, 1814, __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, 1814, __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, 1814, __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, 1814, __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, 1814, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1814, __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__41 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 1814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__41);
  __Pyx_GIVEREF(__pyx_tuple__41);
+1815:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1816: 
 1817:     finally:
+1818:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1819: 
 1820: 
+1821: def test_Block_Insert():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_99test_Block_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_98test_Block_Insert[] = "test_Block_Insert()";
static PyMethodDef __pyx_mdef_7_test_c_99test_Block_Insert = {"test_Block_Insert", (PyCFunction)__pyx_pw_7_test_c_99test_Block_Insert, METH_NOARGS, __pyx_doc_7_test_c_98test_Block_Insert};
static PyObject *__pyx_pw_7_test_c_99test_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_98test_Block_Insert(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_98test_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__209 = 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__209)) __PYX_ERR(0, 1821, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__209);
  __Pyx_GIVEREF(__pyx_tuple__209);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_99test_Block_Insert, 0, __pyx_n_s_test_Block_Insert_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__210)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1821, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Insert_2, __pyx_t_2) < 0) __PYX_ERR(0, 1821, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__210 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__209, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Insert_2, 1821, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__210)) __PYX_ERR(0, 1821, __pyx_L1_error)
 1822:     cdef:
+1823:         Block_* block = NULL
  __pyx_v_block = NULL;
+1824:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1825:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
+1826:         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;
 1827:         ssize_t offset
 1828: 
+1829:     try:
  /*try:*/ {
+1830:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1830, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1831:         block = Block_Insert(block, 0, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1831, __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, 1831, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1831, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1832:         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, 1832, __pyx_L4_error)
      }
    }
    #endif
+1833:         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, 1833, __pyx_L4_error)
      }
    }
    #endif
+1834:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1834, __pyx_L4_error)
      }
    }
    #endif
+1835:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1835, __pyx_L4_error)
      }
    }
    #endif
+1836:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1836, __pyx_L4_error)
      }
    }
    #endif
+1837:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1837, __pyx_L4_error)
      }
    }
    #endif
+1838:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1839: 
+1840:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1840, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1841:         block = Block_Insert(block, -1, b'@'[0])  # before, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1841, __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, 1841, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, -1L, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1841, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1842:         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, 1842, __pyx_L4_error)
      }
    }
    #endif
+1843:         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, 1843, __pyx_L4_error)
      }
    }
    #endif
+1844:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1844, __pyx_L4_error)
      }
    }
    #endif
+1845:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1845, __pyx_L4_error)
      }
    }
    #endif
+1846:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1846, __pyx_L4_error)
      }
    }
    #endif
+1847:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1847, __pyx_L4_error)
      }
    }
    #endif
+1848:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1849: 
+1850:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1850, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1851:         block = Block_Insert(block, 1, b'@'[0])  # after, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1851, __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, 1851, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, 1, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1851, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1852:         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, 1852, __pyx_L4_error)
      }
    }
    #endif
+1853:         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, 1853, __pyx_L4_error)
      }
    }
    #endif
+1854:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1854, __pyx_L4_error)
      }
    }
    #endif
+1855:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1855, __pyx_L4_error)
      }
    }
    #endif
+1856:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1856, __pyx_L4_error)
      }
    }
    #endif
+1857:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1857, __pyx_L4_error)
      }
    }
    #endif
+1858:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1859: 
+1860:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1860, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1860, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1860, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1861:         block = Block_Insert(block, 0, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1861, __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, 1861, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, 0, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1861, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1862:         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, 1862, __pyx_L4_error)
      }
    }
    #endif
+1863:         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, 1863, __pyx_L4_error)
      }
    }
    #endif
+1864:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1864, __pyx_L4_error)
      }
    }
    #endif
+1865:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1865, __pyx_L4_error)
      }
    }
    #endif
+1866:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1866, __pyx_L4_error)
      }
    }
    #endif
+1867:         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__39, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1867, __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, 1867, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1867, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1868:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1869: 
+1870:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1870, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1870, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1870, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1871:         block = Block_Insert(block, -<ssize_t>size, b'@'[0])  # before
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1871, __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, 1871, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, (-((Py_ssize_t)__pyx_v_size)), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1871, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1872:         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, 1872, __pyx_L4_error)
      }
    }
    #endif
+1873:         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, 1873, __pyx_L4_error)
      }
    }
    #endif
+1874:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1874, __pyx_L4_error)
      }
    }
    #endif
+1875:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1875, __pyx_L4_error)
      }
    }
    #endif
+1876:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1876, __pyx_L4_error)
      }
    }
    #endif
+1877:         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__39, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1877, __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, 1877, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1877, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1878:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1879: 
+1880:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1880, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1880, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1880, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1881:         block = Block_Insert(block, -<ssize_t>size - 1, b'@'[0])  # before, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1881, __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, 1881, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 1881, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1882:         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, 1882, __pyx_L4_error)
      }
    }
    #endif
+1883:         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, 1883, __pyx_L4_error)
      }
    }
    #endif
+1884:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1884, __pyx_L4_error)
      }
    }
    #endif
+1885:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1885, __pyx_L4_error)
      }
    }
    #endif
+1886:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1886, __pyx_L4_error)
      }
    }
    #endif
+1887:         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__39, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1887, __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, 1887, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1887, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1888:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1889: 
+1890:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1890, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1890, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1890, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1891:         block = Block_Insert(block, <ssize_t>size, b'@'[0])  # after
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1891, __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, 1891, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, ((Py_ssize_t)__pyx_v_size), __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1891, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1892:         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, 1892, __pyx_L4_error)
      }
    }
    #endif
+1893:         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, 1893, __pyx_L4_error)
      }
    }
    #endif
+1894:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1894, __pyx_L4_error)
      }
    }
    #endif
+1895:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1895, __pyx_L4_error)
      }
    }
    #endif
+1896:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1896, __pyx_L4_error)
      }
    }
    #endif
+1897:         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__39); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1897, __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, 1897, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1897, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1898:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1899: 
+1900:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1900, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1900, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1900, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1901:         block = Block_Insert(block, <ssize_t>size + 1, b'@'[0])  # after, over
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1901, __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, 1901, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 1901, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1902:         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, 1902, __pyx_L4_error)
      }
    }
    #endif
+1903:         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, 1903, __pyx_L4_error)
      }
    }
    #endif
+1904:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1904, __pyx_L4_error)
      }
    }
    #endif
+1905:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1905, __pyx_L4_error)
      }
    }
    #endif
+1906:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1906, __pyx_L4_error)
      }
    }
    #endif
+1907:         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__39); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1907, __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, 1907, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1907, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1908:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1909: 
+1910:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+1911:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1911, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1911, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1911, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1912:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1912, __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, 1912, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1912, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1913:         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, 1913, __pyx_L4_error)
      }
    }
    #endif
+1914:         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, 1914, __pyx_L4_error)
      }
    }
    #endif
+1915:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1915, __pyx_L4_error)
      }
    }
    #endif
+1916:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1916, __pyx_L4_error)
      }
    }
    #endif
+1917:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1917, __pyx_L4_error)
      }
    }
    #endif
+1918:         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, 1918, __pyx_L4_error)
      }
      __pyx_t_2 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1918, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_kp_b__39); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1918, __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, 1918, __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, 1918, __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, 1918, __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, 1918, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1918, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    #endif
+1919:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1920: 
+1921:         offset = -<ssize_t>(size >> 1)  # half
    __pyx_v_offset = (-((Py_ssize_t)(__pyx_v_size >> 1)));
+1922:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1922, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1922, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1922, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1923:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_7 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1923, __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, 1923, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1923, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1924:         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, 1924, __pyx_L4_error)
      }
    }
    #endif
+1925:         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, 1925, __pyx_L4_error)
      }
    }
    #endif
+1926:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1926, __pyx_L4_error)
      }
    }
    #endif
+1927:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1927, __pyx_L4_error)
      }
    }
    #endif
+1928:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1928, __pyx_L4_error)
      }
    }
    #endif
+1929:         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, 1929, __pyx_L4_error)
      }
      __pyx_t_7 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1929, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_2 = PyNumber_Add(__pyx_t_7, __pyx_kp_b__39); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1929, __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, 1929, __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, 1929, __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, 1929, __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, 1929, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1929, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    #endif
+1930:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1931: 
+1932:         offset = -1  # before end
    __pyx_v_offset = -1L;
+1933:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1933, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1933, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1933, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1934:         block = Block_Insert(block, offset, b'@'[0])
    __pyx_t_6 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1934, __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, 1934, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Insert(__pyx_v_block, __pyx_v_offset, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1934, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1935:         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, 1935, __pyx_L4_error)
      }
    }
    #endif
+1936:         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, 1936, __pyx_L4_error)
      }
    }
    #endif
+1937:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1937, __pyx_L4_error)
      }
    }
    #endif
+1938:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1938, __pyx_L4_error)
      }
    }
    #endif
+1939:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1939, __pyx_L4_error)
      }
    }
    #endif
+1940:         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, 1940, __pyx_L4_error)
      }
      __pyx_t_6 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_offset); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1940, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = PyNumber_Add(__pyx_t_6, __pyx_kp_b__39); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1940, __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, 1940, __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, 1940, __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, 1940, __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, 1940, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1940, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1941:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1942: 
 1943:     finally:
+1944:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1945: 
 1946: 
+1947: def test_Block_Append():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_101test_Block_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_100test_Block_Append[] = "test_Block_Append()";
static PyMethodDef __pyx_mdef_7_test_c_101test_Block_Append = {"test_Block_Append", (PyCFunction)__pyx_pw_7_test_c_101test_Block_Append, METH_NOARGS, __pyx_doc_7_test_c_100test_Block_Append};
static PyObject *__pyx_pw_7_test_c_101test_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_100test_Block_Append(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_100test_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__211 = PyTuple_Pack(3, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size); if (unlikely(!__pyx_tuple__211)) __PYX_ERR(0, 1947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__211);
  __Pyx_GIVEREF(__pyx_tuple__211);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_101test_Block_Append, 0, __pyx_n_s_test_Block_Append, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__212)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Append, __pyx_t_2) < 0) __PYX_ERR(0, 1947, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__212 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__211, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Append, 1947, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__212)) __PYX_ERR(0, 1947, __pyx_L1_error)
 1948:     cdef:
+1949:         Block_* block = NULL
  __pyx_v_block = NULL;
+1950:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1951:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1952: 
+1953:     try:
  /*try:*/ {
+1954:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1954, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1955:         block = Block_Append(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1955, __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, 1955, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Append(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1955, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1956:         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, 1956, __pyx_L4_error)
      }
    }
    #endif
+1957:         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, 1957, __pyx_L4_error)
      }
    }
    #endif
+1958:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1958, __pyx_L4_error)
      }
    }
    #endif
+1959:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1959, __pyx_L4_error)
      }
    }
    #endif
+1960:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1960, __pyx_L4_error)
      }
    }
    #endif
+1961:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1961, __pyx_L4_error)
      }
    }
    #endif
+1962:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1963: 
+1964:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1964, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1964, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1964, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1965:         block = Block_Append(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1965, __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, 1965, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Append(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1965, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1966:         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, 1966, __pyx_L4_error)
      }
    }
    #endif
+1967:         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, 1967, __pyx_L4_error)
      }
    }
    #endif
+1968:         assert Block_Length(block) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1968, __pyx_L4_error)
      }
    }
    #endif
+1969:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1969, __pyx_L4_error)
      }
    }
    #endif
+1970:         assert Block_Endex(block) == 0x1234 + size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size) + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1970, __pyx_L4_error)
      }
    }
    #endif
+1971:         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__39); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1971, __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, 1971, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size + 1), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1971, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+1972:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 1973: 
 1974:     finally:
+1975:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 1976: 
 1977: 
+1978: def test_Block_AppendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_103test_Block_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_102test_Block_AppendLeft[] = "test_Block_AppendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_103test_Block_AppendLeft = {"test_Block_AppendLeft", (PyCFunction)__pyx_pw_7_test_c_103test_Block_AppendLeft, METH_NOARGS, __pyx_doc_7_test_c_102test_Block_AppendLeft};
static PyObject *__pyx_pw_7_test_c_103test_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_102test_Block_AppendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_102test_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__213 = PyTuple_Pack(3, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size); if (unlikely(!__pyx_tuple__213)) __PYX_ERR(0, 1978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__213);
  __Pyx_GIVEREF(__pyx_tuple__213);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_103test_Block_AppendLeft, 0, __pyx_n_s_test_Block_AppendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__214)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1978, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_AppendLeft, __pyx_t_2) < 0) __PYX_ERR(0, 1978, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__214 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__213, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_AppendLeft, 1978, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__214)) __PYX_ERR(0, 1978, __pyx_L1_error)
 1979:     cdef:
+1980:         Block_* block = NULL
  __pyx_v_block = NULL;
+1981:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+1982:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 1983: 
+1984:     try:
  /*try:*/ {
+1985:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1985, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1986:         block = Block_AppendLeft(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1986, __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, 1986, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_AppendLeft(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1986, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1987:         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, 1987, __pyx_L4_error)
      }
    }
    #endif
+1988:         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, 1988, __pyx_L4_error)
      }
    }
    #endif
+1989:         assert Block_Length(block) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1989, __pyx_L4_error)
      }
    }
    #endif
+1990:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1990, __pyx_L4_error)
      }
    }
    #endif
+1991:         assert Block_Endex(block) == 0x1234 + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1235) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1991, __pyx_L4_error)
      }
    }
    #endif
+1992:         assert Block_Eq_(block, 1, b'@') is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 1, ((byte_t const *)((char const *)"@"))) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1992, __pyx_L4_error)
      }
    }
    #endif
+1993:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 1994: 
+1995:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 1995, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 1995, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1995, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1996:         block = Block_AppendLeft(block, b'@'[0])
    __pyx_t_2 = __Pyx_GetItemInt(__pyx_kp_b__39, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1996, __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, 1996, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_AppendLeft(__pyx_v_block, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 1996, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+1997:         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, 1997, __pyx_L4_error)
      }
    }
    #endif
+1998:         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, 1998, __pyx_L4_error)
      }
    }
    #endif
+1999:         assert Block_Length(block) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 1999, __pyx_L4_error)
      }
    }
    #endif
+2000:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2000, __pyx_L4_error)
      }
    }
    #endif
+2001:         assert Block_Endex(block) == 0x1234 + 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1235 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2001, __pyx_L4_error)
      }
    }
    #endif
+2002:         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__39, __pyx_v_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2002, __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, 2002, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (1 + __pyx_v_size), __pyx_t_5) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2002, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
    #endif
+2003:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2004: 
 2005:     finally:
+2006:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2007: 
 2008: 
+2009: 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_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__215 = 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__215)) __PYX_ERR(0, 2009, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__215);
  __Pyx_GIVEREF(__pyx_tuple__215);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_105test_Block_Extend_, 0, __pyx_n_s_test_Block_Extend, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__216)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2009, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Extend, __pyx_t_2) < 0) __PYX_ERR(0, 2009, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__216 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__215, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Extend, 2009, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__216)) __PYX_ERR(0, 2009, __pyx_L1_error)
 2010:     cdef:
+2011:         Block_* block = NULL
  __pyx_v_block = NULL;
+2012:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2013:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2014:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2015:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2016: 
+2017:     try:
  /*try:*/ {
+2018:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2018, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2019:         block = Block_Extend_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2019, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2020:         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, 2020, __pyx_L4_error)
      }
    }
    #endif
+2021:         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, 2021, __pyx_L4_error)
      }
    }
    #endif
+2022:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2022, __pyx_L4_error)
      }
    }
    #endif
+2023:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2023, __pyx_L4_error)
      }
    }
    #endif
+2024:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2024, __pyx_L4_error)
      }
    }
    #endif
+2025:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2025, __pyx_L4_error)
      }
    }
    #endif
+2026:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2027: 
+2028:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2028, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2028, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2028, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2029:         block = Block_Extend_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2029, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2030:         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, 2030, __pyx_L4_error)
      }
    }
    #endif
+2031:         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, 2031, __pyx_L4_error)
      }
    }
    #endif
+2032:         assert Block_Length(block) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2032, __pyx_L4_error)
      }
    }
    #endif
+2033:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2033, __pyx_L4_error)
      }
    }
    #endif
+2034:         assert Block_Endex(block) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2034, __pyx_L4_error)
      }
    }
    #endif
+2035:         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, 2035, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2035, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2035, __pyx_L4_error)
      }
    }
    #endif
+2036:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2037: 
+2038:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2038, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2039:         block = Block_Extend_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2039, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2039, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2039, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2040:         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, 2040, __pyx_L4_error)
      }
    }
    #endif
+2041:         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, 2041, __pyx_L4_error)
      }
    }
    #endif
+2042:         assert Block_Length(block) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2042, __pyx_L4_error)
      }
    }
    #endif
+2043:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2043, __pyx_L4_error)
      }
    }
    #endif
+2044:         assert Block_Endex(block) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2044, __pyx_L4_error)
      }
    }
    #endif
+2045:         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, 2045, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2045, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2045, __pyx_L4_error)
      }
    }
    #endif
+2046:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2047: 
+2048:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2048, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2048, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2048, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2049:         block = Block_Extend_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2049, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2049, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2049, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2050:         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, 2050, __pyx_L4_error)
      }
    }
    #endif
+2051:         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, 2051, __pyx_L4_error)
      }
    }
    #endif
+2052:         assert Block_Length(block) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2052, __pyx_L4_error)
      }
    }
    #endif
+2053:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2053, __pyx_L4_error)
      }
    }
    #endif
+2054:         assert Block_Endex(block) == 0x1234 + size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size1) + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2054, __pyx_L4_error)
      }
    }
    #endif
+2055:         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, 2055, __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, 2055, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size1 + __pyx_v_size2), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2055, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+2056:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2057: 
 2058:     finally:
+2059:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2060: 
 2061: 
+2062: def test_Block_Extend():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_107test_Block_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_106test_Block_Extend[] = "test_Block_Extend()";
static PyMethodDef __pyx_mdef_7_test_c_107test_Block_Extend = {"test_Block_Extend", (PyCFunction)__pyx_pw_7_test_c_107test_Block_Extend, METH_NOARGS, __pyx_doc_7_test_c_106test_Block_Extend};
static PyObject *__pyx_pw_7_test_c_107test_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_106test_Block_Extend(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_106test_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__217 = 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__217)) __PYX_ERR(0, 2062, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__217);
  __Pyx_GIVEREF(__pyx_tuple__217);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_107test_Block_Extend, 0, __pyx_n_s_test_Block_Extend_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__218)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2062, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Extend_2, __pyx_t_2) < 0) __PYX_ERR(0, 2062, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__218 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__217, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Extend_2, 2062, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__218)) __PYX_ERR(0, 2062, __pyx_L1_error)
 2063:     cdef:
+2064:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2065:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2066:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2067:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2068:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2069:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2070: 
+2071:     try:
  /*try:*/ {
+2072:         block1 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2072, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2073: 
+2074:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2074, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2075:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2075, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2076:         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, 2076, __pyx_L4_error)
      }
    }
    #endif
+2077:         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, 2077, __pyx_L4_error)
      }
    }
    #endif
+2078:         assert Block_Length(block2) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2078, __pyx_L4_error)
      }
    }
    #endif
+2079:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2079, __pyx_L4_error)
      }
    }
    #endif
+2080:         assert Block_Endex(block2) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2080, __pyx_L4_error)
      }
    }
    #endif
+2081:         assert Block_Eq_(block2, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2081, __pyx_L4_error)
      }
    }
    #endif
+2082:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2083: 
+2084:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2084, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2084, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2084, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2085:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2085, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2086:         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, 2086, __pyx_L4_error)
      }
    }
    #endif
+2087:         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, 2087, __pyx_L4_error)
      }
    }
    #endif
+2088:         assert Block_Length(block2) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2088, __pyx_L4_error)
      }
    }
    #endif
+2089:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2089, __pyx_L4_error)
      }
    }
    #endif
+2090:         assert Block_Endex(block2) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2090, __pyx_L4_error)
      }
    }
    #endif
+2091:         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, 2091, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2091, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2091, __pyx_L4_error)
      }
    }
    #endif
+2092:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2093: 
+2094:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2095:         block1 = Block_Create(0x1234, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2095, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2095, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size2, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2095, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2096: 
+2097:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2097, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2098:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2098, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2099:         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, 2099, __pyx_L4_error)
      }
    }
    #endif
+2100:         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, 2100, __pyx_L4_error)
      }
    }
    #endif
+2101:         assert Block_Length(block2) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2101, __pyx_L4_error)
      }
    }
    #endif
+2102:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2102, __pyx_L4_error)
      }
    }
    #endif
+2103:         assert Block_Endex(block2) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2103, __pyx_L4_error)
      }
    }
    #endif
+2104:         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, 2104, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2104, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2104, __pyx_L4_error)
      }
    }
    #endif
+2105:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2106: 
+2107:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2107, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2107, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2107, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2108:         block2 = Block_Extend(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Extend(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2108, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2109:         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, 2109, __pyx_L4_error)
      }
    }
    #endif
+2110:         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, 2110, __pyx_L4_error)
      }
    }
    #endif
+2111:         assert Block_Length(block2) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2111, __pyx_L4_error)
      }
    }
    #endif
+2112:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2112, __pyx_L4_error)
      }
    }
    #endif
+2113:         assert Block_Endex(block2) == 0x1234 + size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_size1) + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2113, __pyx_L4_error)
      }
    }
    #endif
+2114:         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, 2114, __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, 2114, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, (__pyx_v_size1 + __pyx_v_size2), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2114, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    #endif
+2115:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
  }
 2116: 
 2117:     finally:
+2118:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2119:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2120: 
 2121: 
+2122: 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_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__219 = 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__219)) __PYX_ERR(0, 2122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__219);
  __Pyx_GIVEREF(__pyx_tuple__219);
/* … */
  __pyx_t_2 = __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__220)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ExtendLeft, __pyx_t_2) < 0) __PYX_ERR(0, 2122, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__220 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__219, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ExtendLeft, 2122, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__220)) __PYX_ERR(0, 2122, __pyx_L1_error)
 2123:     cdef:
+2124:         Block_* block = NULL
  __pyx_v_block = NULL;
+2125:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2126:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2127:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2128:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2129: 
+2130:     try:
  /*try:*/ {
+2131:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2131, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2132:         block = Block_ExtendLeft_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2132, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2133:         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, 2133, __pyx_L4_error)
      }
    }
    #endif
+2134:         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, 2134, __pyx_L4_error)
      }
    }
    #endif
+2135:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2135, __pyx_L4_error)
      }
    }
    #endif
+2136:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2136, __pyx_L4_error)
      }
    }
    #endif
+2137:         assert Block_Endex(block) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2137, __pyx_L4_error)
      }
    }
    #endif
+2138:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2138, __pyx_L4_error)
      }
    }
    #endif
+2139:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2140: 
+2141:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2141, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2141, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2141, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2142:         block = Block_ExtendLeft_(block, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft_(__pyx_v_block, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2142, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2143:         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, 2143, __pyx_L4_error)
      }
    }
    #endif
+2144:         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, 2144, __pyx_L4_error)
      }
    }
    #endif
+2145:         assert Block_Length(block) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2145, __pyx_L4_error)
      }
    }
    #endif
+2146:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2146, __pyx_L4_error)
      }
    }
    #endif
+2147:         assert Block_Endex(block) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2147, __pyx_L4_error)
      }
    }
    #endif
+2148:         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, 2148, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2148, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2148, __pyx_L4_error)
      }
    }
    #endif
+2149:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2150: 
+2151:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2151, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2152:         block = Block_ExtendLeft_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2152, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2152, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2152, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2153:         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, 2153, __pyx_L4_error)
      }
    }
    #endif
+2154:         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, 2154, __pyx_L4_error)
      }
    }
    #endif
+2155:         assert Block_Length(block) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2155, __pyx_L4_error)
      }
    }
    #endif
+2156:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2156, __pyx_L4_error)
      }
    }
    #endif
+2157:         assert Block_Endex(block) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2157, __pyx_L4_error)
      }
    }
    #endif
+2158:         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, 2158, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2158, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2158, __pyx_L4_error)
      }
    }
    #endif
+2159:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2160: 
+2161:         block = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2161, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2161, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2161, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2162:         block = Block_ExtendLeft_(block, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2162, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2162, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft_(__pyx_v_block, __pyx_v_size2, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2162, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2163:         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, 2163, __pyx_L4_error)
      }
    }
    #endif
+2164:         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, 2164, __pyx_L4_error)
      }
    }
    #endif
+2165:         assert Block_Length(block) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2165, __pyx_L4_error)
      }
    }
    #endif
+2166:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2166, __pyx_L4_error)
      }
    }
    #endif
+2167:         assert Block_Endex(block) == 0x1234 + size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_size2) + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2167, __pyx_L4_error)
      }
    }
    #endif
+2168:         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, 2168, __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, 2168, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size2 + __pyx_v_size1), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2168, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
    #endif
+2169:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2170: 
 2171:     finally:
+2172:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2173: 
 2174: 
+2175: def test_Block_ExtendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_111test_Block_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_110test_Block_ExtendLeft[] = "test_Block_ExtendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_111test_Block_ExtendLeft = {"test_Block_ExtendLeft", (PyCFunction)__pyx_pw_7_test_c_111test_Block_ExtendLeft, METH_NOARGS, __pyx_doc_7_test_c_110test_Block_ExtendLeft};
static PyObject *__pyx_pw_7_test_c_111test_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_110test_Block_ExtendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_110test_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__221 = 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__221)) __PYX_ERR(0, 2175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__221);
  __Pyx_GIVEREF(__pyx_tuple__221);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_111test_Block_ExtendLeft, 0, __pyx_n_s_test_Block_ExtendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__222)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ExtendLeft, __pyx_t_2) < 0) __PYX_ERR(0, 2175, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__222 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__221, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ExtendLeft, 2175, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__222)) __PYX_ERR(0, 2175, __pyx_L1_error)
 2176:     cdef:
+2177:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2178:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2179:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2180:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
+2181:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2182:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2183: 
+2184:     try:
  /*try:*/ {
+2185:         block1 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2185, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2186: 
+2187:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2187, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2188:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2188, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2189:         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, 2189, __pyx_L4_error)
      }
    }
    #endif
+2190:         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, 2190, __pyx_L4_error)
      }
    }
    #endif
+2191:         assert Block_Length(block2) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2191, __pyx_L4_error)
      }
    }
    #endif
+2192:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2192, __pyx_L4_error)
      }
    }
    #endif
+2193:         assert Block_Endex(block2) == 0x1234 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2193, __pyx_L4_error)
      }
    }
    #endif
+2194:         assert Block_Eq_(block2, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2194, __pyx_L4_error)
      }
    }
    #endif
+2195:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2196: 
+2197:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2197, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2197, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2197, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2198:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2198, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2199:         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, 2199, __pyx_L4_error)
      }
    }
    #endif
+2200:         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, 2200, __pyx_L4_error)
      }
    }
    #endif
+2201:         assert Block_Length(block2) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2201, __pyx_L4_error)
      }
    }
    #endif
+2202:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2202, __pyx_L4_error)
      }
    }
    #endif
+2203:         assert Block_Endex(block2) == 0x1234 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2203, __pyx_L4_error)
      }
    }
    #endif
+2204:         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, 2204, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2204, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, __pyx_v_size1, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2204, __pyx_L4_error)
      }
    }
    #endif
+2205:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2206: 
+2207:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2208:         block1 = Block_Create(0x1234, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2208, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2208, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size2, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2208, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
 2209: 
+2210:         block2 = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2210, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2211:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2211, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2212:         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, 2212, __pyx_L4_error)
      }
    }
    #endif
+2213:         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, 2213, __pyx_L4_error)
      }
    }
    #endif
+2214:         assert Block_Length(block2) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2214, __pyx_L4_error)
      }
    }
    #endif
+2215:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2215, __pyx_L4_error)
      }
    }
    #endif
+2216:         assert Block_Endex(block2) == 0x1234 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == (0x1234 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2216, __pyx_L4_error)
      }
    }
    #endif
+2217:         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, 2217, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2217, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, __pyx_v_size2, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2217, __pyx_L4_error)
      }
    }
    #endif
+2218:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
 2219: 
+2220:         block2 = Block_Create(0x1234, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2220, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2220, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2220, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2221:         block2 = Block_ExtendLeft(block2, block1)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_ExtendLeft(__pyx_v_block2, __pyx_v_block1); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2221, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
+2222:         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, 2222, __pyx_L4_error)
      }
    }
    #endif
+2223:         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, 2223, __pyx_L4_error)
      }
    }
    #endif
+2224:         assert Block_Length(block2) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2224, __pyx_L4_error)
      }
    }
    #endif
+2225:         assert Block_Start(block2) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2225, __pyx_L4_error)
      }
    }
    #endif
+2226:         assert Block_Endex(block2) == 0x1234 + size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_size2) + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2226, __pyx_L4_error)
      }
    }
    #endif
+2227:         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, 2227, __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, 2227, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, (__pyx_v_size2 + __pyx_v_size1), __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2227, __pyx_L4_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    #endif
+2228:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
  }
 2229: 
 2230:     finally:
+2231:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2232:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2233: 
 2234: 
+2235: 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;
  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__223 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__223)) __PYX_ERR(0, 2235, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__223);
  __Pyx_GIVEREF(__pyx_tuple__223);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_113test_Block_RotateLeft__, 0, __pyx_n_s_test_Block_RotateLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__224)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2235, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateLeft, __pyx_t_2) < 0) __PYX_ERR(0, 2235, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__224 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__223, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateLeft, 2235, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__224)) __PYX_ERR(0, 2235, __pyx_L1_error)
 2236:     cdef:
+2237:         Block_* block = NULL
  __pyx_v_block = NULL;
+2238:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2239:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2240:         size_t i
 2241: 
+2242:     try:
  /*try:*/ {
+2243:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2243, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2244:         Block_RotateLeft__(block, 3)
    __pyx_f_11cbytesparse_1c_Block_RotateLeft__(__pyx_v_block, 3);
+2245:         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, 2245, __pyx_L4_error)
      }
    }
    #endif
+2246:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2246, __pyx_L4_error)
      }
    }
    #endif
+2247:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2247, __pyx_L4_error)
      }
    }
    #endif
+2248:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2248, __pyx_L4_error)
      }
    }
    #endif
+2249:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2249, __pyx_L4_error)
      }
    }
    #endif
+2250:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2251: 
+2252:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2252, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2252, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2252, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2253:         Block_RotateLeft__(block, 0)
    __pyx_f_11cbytesparse_1c_Block_RotateLeft__(__pyx_v_block, 0);
+2254:         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, 2254, __pyx_L4_error)
      }
    }
    #endif
+2255:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2255, __pyx_L4_error)
      }
    }
    #endif
+2256:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2256, __pyx_L4_error)
      }
    }
    #endif
+2257:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2257, __pyx_L4_error)
      }
    }
    #endif
+2258:         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, 2258, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2258, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2258, __pyx_L4_error)
      }
    }
    #endif
+2259:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2260: 
+2261:         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;
+2262:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2262, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2262, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2262, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2263:             Block_RotateLeft__(block, i)
      __pyx_f_11cbytesparse_1c_Block_RotateLeft__(__pyx_v_block, __pyx_v_i);
+2264:             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, 2264, __pyx_L4_error)
        }
      }
      #endif
+2265:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2265, __pyx_L4_error)
        }
      }
      #endif
+2266:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2266, __pyx_L4_error)
        }
      }
      #endif
+2267:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2267, __pyx_L4_error)
        }
      }
      #endif
+2268:             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, 2268, __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, 2268, __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, 2268, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_i); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2268, __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, 2268, __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, 2268, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2268, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2269:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2270: 
 2271:     finally:
+2272:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2273: 
 2274: 
+2275: def test_Block_RotateLeft_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_115test_Block_RotateLeft_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_114test_Block_RotateLeft_[] = "test_Block_RotateLeft_()";
static PyMethodDef __pyx_mdef_7_test_c_115test_Block_RotateLeft_ = {"test_Block_RotateLeft_", (PyCFunction)__pyx_pw_7_test_c_115test_Block_RotateLeft_, METH_NOARGS, __pyx_doc_7_test_c_114test_Block_RotateLeft_};
static PyObject *__pyx_pw_7_test_c_115test_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_114test_Block_RotateLeft_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_114test_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__225 = 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__225)) __PYX_ERR(0, 2275, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__225);
  __Pyx_GIVEREF(__pyx_tuple__225);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_115test_Block_RotateLeft_, 0, __pyx_n_s_test_Block_RotateLeft_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__226)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2275, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateLeft_2, __pyx_t_2) < 0) __PYX_ERR(0, 2275, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__226 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__225, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateLeft_2, 2275, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__226)) __PYX_ERR(0, 2275, __pyx_L1_error)
 2276:     cdef:
+2277:         Block_* block = NULL
  __pyx_v_block = NULL;
+2278:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2279:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2280:         size_t i
 2281:         size_t k
 2282: 
+2283:     try:
  /*try:*/ {
+2284:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2284, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2285:         Block_RotateLeft_(block, 3)
    __pyx_f_11cbytesparse_1c_Block_RotateLeft_(__pyx_v_block, 3);
+2286:         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, 2286, __pyx_L4_error)
      }
    }
    #endif
+2287:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2287, __pyx_L4_error)
      }
    }
    #endif
+2288:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2288, __pyx_L4_error)
      }
    }
    #endif
+2289:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2289, __pyx_L4_error)
      }
    }
    #endif
+2290:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2290, __pyx_L4_error)
      }
    }
    #endif
+2291:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2292: 
+2293:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2293, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2293, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2293, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2294:         Block_RotateLeft_(block, 0)
    __pyx_f_11cbytesparse_1c_Block_RotateLeft_(__pyx_v_block, 0);
+2295:         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, 2295, __pyx_L4_error)
      }
    }
    #endif
+2296:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2296, __pyx_L4_error)
      }
    }
    #endif
+2297:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2297, __pyx_L4_error)
      }
    }
    #endif
+2298:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2298, __pyx_L4_error)
      }
    }
    #endif
+2299:         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, 2299, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2299, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2299, __pyx_L4_error)
      }
    }
    #endif
+2300:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2301: 
+2302:         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;
+2303:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2303, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2303, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2303, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2304:             Block_RotateLeft_(block, i)
      __pyx_f_11cbytesparse_1c_Block_RotateLeft_(__pyx_v_block, __pyx_v_i);
+2305:             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, 2305, __pyx_L4_error)
        }
      }
      #endif
+2306:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2306, __pyx_L4_error)
        }
      }
      #endif
+2307:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2307, __pyx_L4_error)
        }
      }
      #endif
+2308:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2308, __pyx_L4_error)
        }
      }
      #endif
+2309:             k = i % size
      if (unlikely(__pyx_v_size == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2309, __pyx_L4_error)
      }
      __pyx_v_k = (__pyx_v_i % __pyx_v_size);
+2310:             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, 2310, __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, 2310, __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, 2310, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2310, __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, 2310, __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, 2310, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2310, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2311:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2312: 
 2313:     finally:
+2314:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2315: 
 2316: 
+2317: 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__227 = 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__227)) __PYX_ERR(0, 2317, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__227);
  __Pyx_GIVEREF(__pyx_tuple__227);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_117test_Block_RotateRight__, 0, __pyx_n_s_test_Block_RotateRight, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__228)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2317, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateRight, __pyx_t_2) < 0) __PYX_ERR(0, 2317, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__228 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__227, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateRight, 2317, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__228)) __PYX_ERR(0, 2317, __pyx_L1_error)
 2318:     cdef:
+2319:         Block_* block = NULL
  __pyx_v_block = NULL;
+2320:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2321:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2322:         size_t i
 2323:         ssize_t k
 2324: 
+2325:     try:
  /*try:*/ {
+2326:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2326, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2327:         Block_RotateRight__(block, 3)
    __pyx_f_11cbytesparse_1c_Block_RotateRight__(__pyx_v_block, 3);
+2328:         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, 2328, __pyx_L4_error)
      }
    }
    #endif
+2329:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2329, __pyx_L4_error)
      }
    }
    #endif
+2330:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2330, __pyx_L4_error)
      }
    }
    #endif
+2331:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2331, __pyx_L4_error)
      }
    }
    #endif
+2332:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2332, __pyx_L4_error)
      }
    }
    #endif
+2333:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2334: 
+2335:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2335, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2335, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2335, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2336:         Block_RotateRight__(block, 0)
    __pyx_f_11cbytesparse_1c_Block_RotateRight__(__pyx_v_block, 0);
+2337:         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, 2337, __pyx_L4_error)
      }
    }
    #endif
+2338:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2338, __pyx_L4_error)
      }
    }
    #endif
+2339:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2339, __pyx_L4_error)
      }
    }
    #endif
+2340:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2340, __pyx_L4_error)
      }
    }
    #endif
+2341:         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, 2341, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2341, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2341, __pyx_L4_error)
      }
    }
    #endif
+2342:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2343: 
+2344:         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;
+2345:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2345, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2345, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2345, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2346:             Block_RotateRight__(block, i)
      __pyx_f_11cbytesparse_1c_Block_RotateRight__(__pyx_v_block, __pyx_v_i);
+2347:             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, 2347, __pyx_L4_error)
        }
      }
      #endif
+2348:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2348, __pyx_L4_error)
        }
      }
      #endif
+2349:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2349, __pyx_L4_error)
        }
      }
      #endif
+2350:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2350, __pyx_L4_error)
        }
      }
      #endif
+2351:             k = -<ssize_t>i
      __pyx_v_k = (-((Py_ssize_t)__pyx_v_i));
+2352:             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, 2352, __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, 2352, __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, 2352, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2352, __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, 2352, __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, 2352, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2352, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2353:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2354: 
 2355:     finally:
+2356:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2357: 
 2358: 
+2359: def test_Block_RotateRight_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_119test_Block_RotateRight_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_118test_Block_RotateRight_[] = "test_Block_RotateRight_()";
static PyMethodDef __pyx_mdef_7_test_c_119test_Block_RotateRight_ = {"test_Block_RotateRight_", (PyCFunction)__pyx_pw_7_test_c_119test_Block_RotateRight_, METH_NOARGS, __pyx_doc_7_test_c_118test_Block_RotateRight_};
static PyObject *__pyx_pw_7_test_c_119test_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_118test_Block_RotateRight_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_118test_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__229 = 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__229)) __PYX_ERR(0, 2359, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__229);
  __Pyx_GIVEREF(__pyx_tuple__229);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_119test_Block_RotateRight_, 0, __pyx_n_s_test_Block_RotateRight_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__230)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2359, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RotateRight_2, __pyx_t_2) < 0) __PYX_ERR(0, 2359, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__230 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__229, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RotateRight_2, 2359, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__230)) __PYX_ERR(0, 2359, __pyx_L1_error)
 2360:     cdef:
+2361:         Block_* block = NULL
  __pyx_v_block = NULL;
+2362:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2363:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2364:         size_t i
 2365:         ssize_t k
 2366: 
+2367:     try:
  /*try:*/ {
+2368:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2368, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2369:         Block_RotateRight_(block, 3)
    __pyx_f_11cbytesparse_1c_Block_RotateRight_(__pyx_v_block, 3);
+2370:         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, 2370, __pyx_L4_error)
      }
    }
    #endif
+2371:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2371, __pyx_L4_error)
      }
    }
    #endif
+2372:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2372, __pyx_L4_error)
      }
    }
    #endif
+2373:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2373, __pyx_L4_error)
      }
    }
    #endif
+2374:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2374, __pyx_L4_error)
      }
    }
    #endif
+2375:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2376: 
+2377:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2377, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2377, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2377, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2378:         Block_RotateRight_(block, 0)
    __pyx_f_11cbytesparse_1c_Block_RotateRight_(__pyx_v_block, 0);
+2379:         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, 2379, __pyx_L4_error)
      }
    }
    #endif
+2380:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2380, __pyx_L4_error)
      }
    }
    #endif
+2381:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2381, __pyx_L4_error)
      }
    }
    #endif
+2382:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2382, __pyx_L4_error)
      }
    }
    #endif
+2383:         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, 2383, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2383, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2383, __pyx_L4_error)
      }
    }
    #endif
+2384:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2385: 
+2386:         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;
+2387:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2387, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2387, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2387, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2388:             Block_RotateRight_(block, i)
      __pyx_f_11cbytesparse_1c_Block_RotateRight_(__pyx_v_block, __pyx_v_i);
+2389:             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, 2389, __pyx_L4_error)
        }
      }
      #endif
+2390:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2390, __pyx_L4_error)
        }
      }
      #endif
+2391:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2391, __pyx_L4_error)
        }
      }
      #endif
+2392:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2392, __pyx_L4_error)
        }
      }
      #endif
+2393:             k = -<ssize_t>(i % size)
      if (unlikely(__pyx_v_size == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero");
        __PYX_ERR(0, 2393, __pyx_L4_error)
      }
      __pyx_v_k = (-((Py_ssize_t)(__pyx_v_i % __pyx_v_size)));
+2394:             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, 2394, __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, 2394, __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, 2394, __pyx_L4_error)
        }
        __pyx_t_8 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2394, __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, 2394, __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, 2394, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2394, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      #endif
+2395:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2396: 
 2397:     finally:
+2398:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2399: 
 2400: 
+2401: def test_Block_Rotate():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_121test_Block_Rotate(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_120test_Block_Rotate[] = "test_Block_Rotate()";
static PyMethodDef __pyx_mdef_7_test_c_121test_Block_Rotate = {"test_Block_Rotate", (PyCFunction)__pyx_pw_7_test_c_121test_Block_Rotate, METH_NOARGS, __pyx_doc_7_test_c_120test_Block_Rotate};
static PyObject *__pyx_pw_7_test_c_121test_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_120test_Block_Rotate(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_120test_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__231 = 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__231)) __PYX_ERR(0, 2401, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__231);
  __Pyx_GIVEREF(__pyx_tuple__231);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_121test_Block_Rotate, 0, __pyx_n_s_test_Block_Rotate, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__232)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2401, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Rotate, __pyx_t_2) < 0) __PYX_ERR(0, 2401, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__232 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__231, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Rotate, 2401, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__232)) __PYX_ERR(0, 2401, __pyx_L1_error)
 2402:     cdef:
+2403:         Block_* block = NULL
  __pyx_v_block = NULL;
+2404:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2405:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2406:         ssize_t i
 2407:         ssize_t k
 2408: 
+2409:     try:
  /*try:*/ {
+2410:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2410, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2411:         Block_Rotate(block, 3)
    __pyx_f_11cbytesparse_1c_Block_Rotate(__pyx_v_block, 3);
+2412:         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, 2412, __pyx_L4_error)
      }
    }
    #endif
+2413:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2413, __pyx_L4_error)
      }
    }
    #endif
+2414:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2414, __pyx_L4_error)
      }
    }
    #endif
+2415:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2415, __pyx_L4_error)
      }
    }
    #endif
+2416:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2416, __pyx_L4_error)
      }
    }
    #endif
+2417:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2418: 
+2419:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2419, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2420:         Block_Rotate(block, -3)
    __pyx_f_11cbytesparse_1c_Block_Rotate(__pyx_v_block, -3L);
+2421:         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, 2421, __pyx_L4_error)
      }
    }
    #endif
+2422:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2422, __pyx_L4_error)
      }
    }
    #endif
+2423:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2423, __pyx_L4_error)
      }
    }
    #endif
+2424:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2424, __pyx_L4_error)
      }
    }
    #endif
+2425:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2425, __pyx_L4_error)
      }
    }
    #endif
+2426:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2427: 
+2428:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2428, __pyx_L4_error)
    }
    __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2428, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2428, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2429:         Block_Rotate(block, 0)
    __pyx_f_11cbytesparse_1c_Block_Rotate(__pyx_v_block, 0);
+2430:         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, 2430, __pyx_L4_error)
      }
    }
    #endif
+2431:         assert Block_Length(block) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2431, __pyx_L4_error)
      }
    }
    #endif
+2432:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2432, __pyx_L4_error)
      }
    }
    #endif
+2433:         assert Block_Endex(block) == 0x1234 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2433, __pyx_L4_error)
      }
    }
    #endif
+2434:         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, 2434, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2434, __pyx_L4_error)
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2434, __pyx_L4_error)
      }
    }
    #endif
+2435:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2436: 
+2437:         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;
+2438:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2438, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2438, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2438, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2439:             Block_Rotate(block, i)
      __pyx_f_11cbytesparse_1c_Block_Rotate(__pyx_v_block, __pyx_v_i);
+2440:             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, 2440, __pyx_L4_error)
        }
      }
      #endif
+2441:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2441, __pyx_L4_error)
        }
      }
      #endif
+2442:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2442, __pyx_L4_error)
        }
      }
      #endif
+2443:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2443, __pyx_L4_error)
        }
      }
      #endif
+2444:             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, 2444, __pyx_L4_error)
      }
      __pyx_v_k = __Pyx_mod_Py_ssize_t(__pyx_t_7, ((Py_ssize_t)__pyx_v_size));
+2445:             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, 2445, __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, 2445, __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, 2445, __pyx_L4_error)
        }
        __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2445, __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, 2445, __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, 2445, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2445, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      #endif
+2446:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
 2447: 
+2448:         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;
+2449:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2449, __pyx_L4_error)
      }
      __pyx_t_2 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 2449, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_2); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2449, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2450:             Block_Rotate(block, i)
      __pyx_f_11cbytesparse_1c_Block_Rotate(__pyx_v_block, __pyx_v_i);
+2451:             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, 2451, __pyx_L4_error)
        }
      }
      #endif
+2452:             assert Block_Length(block) == size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_size) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2452, __pyx_L4_error)
        }
      }
      #endif
+2453:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2453, __pyx_L4_error)
        }
      }
      #endif
+2454:             assert Block_Endex(block) == 0x1234 + size
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_size)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2454, __pyx_L4_error)
        }
      }
      #endif
+2455:             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, 2455, __pyx_L4_error)
      }
      __pyx_v_k = (-__Pyx_mod_Py_ssize_t(__pyx_v_i, ((Py_ssize_t)__pyx_v_size)));
+2456:             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, 2456, __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, 2456, __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, 2456, __pyx_L4_error)
        }
        __pyx_t_9 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_k); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2456, __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, 2456, __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, 2456, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_size, __pyx_t_3) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2456, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      }
      #endif
+2457:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2458: 
 2459:     finally:
+2460:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2461: 
 2462: 
+2463: def test_Block_Repeat():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_123test_Block_Repeat(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_122test_Block_Repeat[] = "test_Block_Repeat()";
static PyMethodDef __pyx_mdef_7_test_c_123test_Block_Repeat = {"test_Block_Repeat", (PyCFunction)__pyx_pw_7_test_c_123test_Block_Repeat, METH_NOARGS, __pyx_doc_7_test_c_122test_Block_Repeat};
static PyObject *__pyx_pw_7_test_c_123test_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_122test_Block_Repeat(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_122test_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__233 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__233)) __PYX_ERR(0, 2463, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__233);
  __Pyx_GIVEREF(__pyx_tuple__233);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_123test_Block_Repeat, 0, __pyx_n_s_test_Block_Repeat, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__234)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2463, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Repeat, __pyx_t_2) < 0) __PYX_ERR(0, 2463, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__234 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__233, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Repeat, 2463, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__234)) __PYX_ERR(0, 2463, __pyx_L1_error)
 2464:     cdef:
+2465:         Block_* block = NULL
  __pyx_v_block = NULL;
+2466:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2467:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2468:         size_t i
 2469: 
+2470:     try:
  /*try:*/ {
+2471:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2471, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+2472:         Block_Repeat(block, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Repeat(__pyx_v_block, 3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2472, __pyx_L4_error)
+2473:         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, 2473, __pyx_L4_error)
      }
    }
    #endif
+2474:         assert Block_Length(block) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2474, __pyx_L4_error)
      }
    }
    #endif
+2475:         assert Block_Start(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2475, __pyx_L4_error)
      }
    }
    #endif
+2476:         assert Block_Endex(block) == 0x1234
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == 0x1234) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2476, __pyx_L4_error)
      }
    }
    #endif
+2477:         assert Block_Eq_(block, 0, NULL) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, 0, NULL) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 2477, __pyx_L4_error)
      }
    }
    #endif
+2478:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 2479: 
+2480:         for i in range(4):
    for (__pyx_t_2 = 0; __pyx_t_2 < 4; __pyx_t_2+=1) {
      __pyx_v_i = __pyx_t_2;
+2481:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2481, __pyx_L4_error)
      }
      __pyx_t_3 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 2481, __pyx_L4_error)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_3); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2481, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2482:             block = Block_Repeat(block, i)
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Repeat(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2482, __pyx_L4_error)
      __pyx_v_block = __pyx_t_1;
+2483:             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, 2483, __pyx_L4_error)
        }
      }
      #endif
+2484:             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, 2484, __pyx_L4_error)
        }
      }
      #endif
+2485:             assert Block_Length(block) == (size * i)
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_size * __pyx_v_i)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2485, __pyx_L4_error)
        }
      }
      #endif
+2486:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2486, __pyx_L4_error)
        }
      }
      #endif
+2487:             assert Block_Endex(block) == 0x1234 + (size * i)
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + (__pyx_v_size * __pyx_v_i))) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2487, __pyx_L4_error)
        }
      }
      #endif
+2488:             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, 2488, __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, 2488, __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, 2488, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_size * __pyx_v_i), __pyx_t_6) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2488, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      #endif
+2489:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
  }
 2490: 
 2491:     finally:
+2492:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2493: 
 2494: 
+2495: def test_Block_RepeatToSize():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_125test_Block_RepeatToSize(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_124test_Block_RepeatToSize[] = "test_Block_RepeatToSize()";
static PyMethodDef __pyx_mdef_7_test_c_125test_Block_RepeatToSize = {"test_Block_RepeatToSize", (PyCFunction)__pyx_pw_7_test_c_125test_Block_RepeatToSize, METH_NOARGS, __pyx_doc_7_test_c_124test_Block_RepeatToSize};
static PyObject *__pyx_pw_7_test_c_125test_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_124test_Block_RepeatToSize(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_124test_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__235 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_i); if (unlikely(!__pyx_tuple__235)) __PYX_ERR(0, 2495, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__235);
  __Pyx_GIVEREF(__pyx_tuple__235);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_125test_Block_RepeatToSize, 0, __pyx_n_s_test_Block_RepeatToSize, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__236)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2495, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_RepeatToSize, __pyx_t_2) < 0) __PYX_ERR(0, 2495, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__236 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__235, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_RepeatToSize, 2495, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__236)) __PYX_ERR(0, 2495, __pyx_L1_error)
 2496:     cdef:
+2497:         Block_* block = NULL
  __pyx_v_block = NULL;
+2498:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2499:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2500:         size_t i
 2501: 
+2502:     try:
  /*try:*/ {
+2503:         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;
+2504:             block = Block_Create(0x1234, size, data)
      if (unlikely(__pyx_v_data == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
        __PYX_ERR(0, 2504, __pyx_L4_error)
      }
      __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 2504, __pyx_L4_error)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2504, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+2505:             block = Block_RepeatToSize(block, i)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_RepeatToSize(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2505, __pyx_L4_error)
      __pyx_v_block = __pyx_t_5;
+2506:             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, 2506, __pyx_L4_error)
        }
      }
      #endif
+2507:             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, 2507, __pyx_L4_error)
        }
      }
      #endif
+2508:             assert Block_Length(block) == i
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == __pyx_v_i) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2508, __pyx_L4_error)
        }
      }
      #endif
+2509:             assert Block_Start(block) == 0x1234
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2509, __pyx_L4_error)
        }
      }
      #endif
+2510:             assert Block_Endex(block) == 0x1234 + i
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_v_i)) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2510, __pyx_L4_error)
        }
      }
      #endif
+2511:             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, 2511, __pyx_L4_error)
        }
        __pyx_t_7 = __Pyx_PyInt_FromSize_t((__pyx_t_6 / __pyx_v_size)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2511, __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, 2511, __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, 2511, __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, 2511, __pyx_L4_error)
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_v_i, __pyx_t_9) == 1) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 2511, __pyx_L4_error)
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      #endif
+2512:             block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
    }
 2513: 
+2514:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2514, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+2515:         for i in range(4):
    for (__pyx_t_1 = 0; __pyx_t_1 < 4; __pyx_t_1+=1) {
      __pyx_v_i = __pyx_t_1;
+2516:             with pytest.raises(RuntimeError, match='empty'):
      /*with:*/ {
        __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pytest); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2516, __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, 2516, __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, 2516, __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, 2516, __pyx_L4_error)
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__42, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2516, __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, 2516, __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, 2516, __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, 2516, __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, 2516, __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, 2516, __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, 2516, __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, 2516, __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, 2516, __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__2, NULL);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2516, __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__42 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(0, 2516, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__42);
  __Pyx_GIVEREF(__pyx_tuple__42);
+2517:                 block = Block_RepeatToSize(block, i)
              __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_RepeatToSize(__pyx_v_block, __pyx_v_i); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 2517, __pyx_L16_error)
              __pyx_v_block = __pyx_t_5;
+2518:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2519: 
 2520:     finally:
+2521:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2522: 
 2523: 
+2524: def test_Block_Read_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_127test_Block_Read_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_126test_Block_Read_[] = "test_Block_Read_()";
static PyMethodDef __pyx_mdef_7_test_c_127test_Block_Read_ = {"test_Block_Read_", (PyCFunction)__pyx_pw_7_test_c_127test_Block_Read_, METH_NOARGS, __pyx_doc_7_test_c_126test_Block_Read_};
static PyObject *__pyx_pw_7_test_c_127test_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_126test_Block_Read_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_126test_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__237 = 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__237)) __PYX_ERR(0, 2524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__237);
  __Pyx_GIVEREF(__pyx_tuple__237);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_127test_Block_Read_, 0, __pyx_n_s_test_Block_Read, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__238)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Read, __pyx_t_2) < 0) __PYX_ERR(0, 2524, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__238 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__237, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Read, 2524, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__238)) __PYX_ERR(0, 2524, __pyx_L1_error)
 2525:     cdef:
+2526:         Block_* block = NULL
  __pyx_v_block = NULL;
+2527:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2528:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2529:         size_t start
 2530:         size_t endex
 2531:         bytearray buffer
 2532: 
+2533:     try:
  /*try:*/ {
+2534:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2534, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2534, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2534, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2535: 
+2536:         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;
+2537:             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;
+2538:                 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, 2538, __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, 2538, __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;
+2539:                 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, 2539, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_1c_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_1c_vint)-1))) __PYX_ERR(0, 2539, __pyx_L4_error)
+2540:                 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, 2540, __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, 2540, __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, 2540, __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, 2540, __pyx_L4_error)
          }
        }
        #endif
      }
    }
 2541: 
+2542:         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, 2542, __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, 2542, __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, 2542, __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, 2542, __pyx_L4_error)
      __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__43, __pyx_t_10); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2542, __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, 2542, __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, 2542, __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, 2542, __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, 2542, __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, 2542, __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, 2542, __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, 2542, __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, 2542, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2542, __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__43 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 2542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__43);
  __Pyx_GIVEREF(__pyx_tuple__43);
+2543:             Block_Read_(block, 0, SIZE_MAX, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_Read_(__pyx_v_block, 0, SIZE_MAX, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2543, __pyx_L14_error)
 2544: 
+2545:         with pytest.raises(OverflowError):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_pytest); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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, 2545, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2545, __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:;
    }
+2546:             Block_Read_(block, SIZE_MAX, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_Read_(__pyx_v_block, SIZE_MAX, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2546, __pyx_L28_error)
 2547: 
+2548:         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, 2548, __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, 2548, __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, 2548, __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, 2548, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__44, __pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2548, __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, 2548, __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, 2548, __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, 2548, __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, 2548, __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, 2548, __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, 2548, __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, 2548, __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, 2548, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2548, __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__44 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 2548, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__44);
  __Pyx_GIVEREF(__pyx_tuple__44);
+2549:             Block_Read_(block, SIZE_HMAX, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_Read_(__pyx_v_block, SIZE_HMAX, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2549, __pyx_L42_error)
 2550: 
+2551:         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, 2551, __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, 2551, __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, 2551, __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, 2551, __pyx_L4_error)
      __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__45, __pyx_t_14); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2551, __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, 2551, __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, 2551, __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, 2551, __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, 2551, __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, 2551, __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, 2551, __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, 2551, __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, 2551, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2551, __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__45 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(0, 2551, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__45);
  __Pyx_GIVEREF(__pyx_tuple__45);
+2552:             Block_Read_(block, size, 1, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_Read_(__pyx_v_block, __pyx_v_size, 1, NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2552, __pyx_L56_error)
 2553: 
 2554:     finally:
+2555:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2556: 
 2557: 
+2558: def test_Block_Write_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_129test_Block_Write_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_128test_Block_Write_[] = "test_Block_Write_()";
static PyMethodDef __pyx_mdef_7_test_c_129test_Block_Write_ = {"test_Block_Write_", (PyCFunction)__pyx_pw_7_test_c_129test_Block_Write_, METH_NOARGS, __pyx_doc_7_test_c_128test_Block_Write_};
static PyObject *__pyx_pw_7_test_c_129test_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_128test_Block_Write_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_128test_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__239 = 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__239)) __PYX_ERR(0, 2558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__239);
  __Pyx_GIVEREF(__pyx_tuple__239);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_129test_Block_Write_, 0, __pyx_n_s_test_Block_Write, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__240)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Write, __pyx_t_2) < 0) __PYX_ERR(0, 2558, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__240 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__239, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Write, 2558, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__240)) __PYX_ERR(0, 2558, __pyx_L1_error)
 2559:     cdef:
+2560:         Block_* block = NULL
  __pyx_v_block = NULL;
+2561:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2562:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2563:         size_t start
 2564:         size_t endex
 2565:         bytes buffer
 2566: 
+2567:     try:
  /*try:*/ {
+2568:         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;
+2569:             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;
+2570:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2570, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2571:                 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, 2571, __pyx_L4_error)
        }
        __pyx_t_8 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_8) && PyErr_Occurred())) __PYX_ERR(0, 2571, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_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, 2571, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2572:                 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, 2572, __pyx_L4_error)
          }
        }
        #endif
+2573:                 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, 2573, __pyx_L4_error)
          }
        }
        #endif
+2574:                 assert Block_Length(block) == endex - start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == (__pyx_v_endex - __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2574, __pyx_L4_error)
          }
        }
        #endif
+2575:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2575, __pyx_L4_error)
          }
        }
        #endif
+2576:                 assert Block_Endex(block) == 0x1234 + endex - start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == ((0x1234 + __pyx_v_endex) - __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2576, __pyx_L4_error)
          }
        }
        #endif
+2577:                 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, 2577, __pyx_L4_error)
          }
          __pyx_t_9 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_9) && PyErr_Occurred())) __PYX_ERR(0, 2577, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, (__pyx_v_endex - __pyx_v_start), __pyx_t_9) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2577, __pyx_L4_error)
          }
        }
        #endif
+2578:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 2579: 
+2580:         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;
+2581:             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;
+2582:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 2582, __pyx_L4_error)
        }
        __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 2582, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2582, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2583:                 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, 2583, __pyx_L4_error)
        }
        __pyx_t_8 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_8) && PyErr_Occurred())) __PYX_ERR(0, 2583, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_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, 2583, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+2584:                 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, 2584, __pyx_L4_error)
          }
        }
        #endif
+2585:                 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, 2585, __pyx_L4_error)
          }
        }
        #endif
+2586:                 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_1c_Block_Length(__pyx_v_block) == __pyx_t_13) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2586, __pyx_L4_error)
          }
        }
        #endif
+2587:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2587, __pyx_L4_error)
          }
        }
        #endif
+2588:                 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_1c_Block_Endex(__pyx_v_block) == (0x1234 + __pyx_t_12)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2588, __pyx_L4_error)
          }
        }
        #endif
+2589:                 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, 2589, __pyx_L4_error)
        }
        __pyx_t_14 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_start); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2589, __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, 2589, __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, 2589, __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, 2589, __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, 2589, __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, 2589, __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, 2589, __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;
+2590:                 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, 2590, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, __pyx_t_11, __pyx_t_9) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2590, __pyx_L4_error)
          }
        }
        #endif
+2591:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 2592: 
+2593:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2593, __pyx_L4_error)
    }
    __pyx_t_10 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 2593, __pyx_L4_error)
    __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_10); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2593, __pyx_L4_error)
    __pyx_v_block = __pyx_t_7;
 2594: 
+2595:         with pytest.raises(OverflowError):
    /*with:*/ {
      __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_pytest); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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, 2595, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 2595, __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:;
    }
+2596:             Block_Write_(block, SIZE_MAX, 1, NULL)
            __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Write_(__pyx_v_block, SIZE_MAX, 1, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2596, __pyx_L18_error)
 2597: 
+2598:         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, 2598, __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, 2598, __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, 2598, __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, 2598, __pyx_L4_error)
      __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple__46, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2598, __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, 2598, __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, 2598, __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, 2598, __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, 2598, __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, 2598, __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, 2598, __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, 2598, __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, 2598, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2598, __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__46 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(0, 2598, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__46);
  __Pyx_GIVEREF(__pyx_tuple__46);
+2599:             Block_Write_(block, SIZE_MAX - size, 1, NULL)
            __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Write_(__pyx_v_block, (SIZE_MAX - __pyx_v_size), 1, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 2599, __pyx_L32_error)
 2600: 
+2601:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2602: 
 2603:     finally:
+2604:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2605: 
 2606: 
+2607: 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;
  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__241 = 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__241)) __PYX_ERR(0, 2607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__241);
  __Pyx_GIVEREF(__pyx_tuple__241);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_131test_Block_ReadSlice_, 0, __pyx_n_s_test_Block_ReadSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__242)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReadSlice, __pyx_t_2) < 0) __PYX_ERR(0, 2607, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__242 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__241, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReadSlice, 2607, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__242)) __PYX_ERR(0, 2607, __pyx_L1_error)
 2608:     cdef:
+2609:         Block_* block = NULL
  __pyx_v_block = NULL;
+2610:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2611:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2612:         size_t start
 2613:         size_t endex
 2614:         bytearray buffer
 2615:         size_t num
 2616: 
+2617:     try:
  /*try:*/ {
+2618:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2618, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2618, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2618, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2619: 
+2620:         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;
+2621:             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;
+2622:                 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, 2622, __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, 2622, __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;
+2623:                 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, 2623, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_1c_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_1c_vint)-1))) __PYX_ERR(0, 2623, __pyx_L4_error)
+2624:                 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, 2624, __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, 2624, __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, 2624, __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, 2624, __pyx_L4_error)
          }
        }
        #endif
+2625:                 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, 2625, __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, 2625, __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, 2625, __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, 2625, __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, 2625, __pyx_L4_error)
          }
        }
        #endif
      }
    }
 2626: 
+2627:         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, 2627, __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, 2627, __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, 2627, __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, 2627, __pyx_L4_error)
      __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__47, __pyx_t_9); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2627, __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, 2627, __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, 2627, __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, 2627, __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, 2627, __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, 2627, __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, 2627, __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, 2627, __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, 2627, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2627, __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__47 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(0, 2627, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__47);
  __Pyx_GIVEREF(__pyx_tuple__47);
+2628:             Block_ReadSlice_(block, SIZE_MAX, SIZE_MAX, &num, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_ReadSlice_(__pyx_v_block, SIZE_MAX, SIZE_MAX, (&__pyx_v_num), NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2628, __pyx_L14_error)
 2629: 
+2630:         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, 2630, __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, 2630, __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, 2630, __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, 2630, __pyx_L4_error)
      __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__48, __pyx_t_10); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 2630, __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, 2630, __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, 2630, __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, 2630, __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, 2630, __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, 2630, __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, 2630, __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, 2630, __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, 2630, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2630, __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__48 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(0, 2630, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__48);
  __Pyx_GIVEREF(__pyx_tuple__48);
+2631:             Block_ReadSlice_(block, 0, SIZE_MAX, &num, NULL)
            __pyx_t_12 = __pyx_f_11cbytesparse_1c_Block_ReadSlice_(__pyx_v_block, 0, SIZE_MAX, (&__pyx_v_num), NULL); if (unlikely(__pyx_t_12 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 2631, __pyx_L28_error)
 2632: 
 2633:     finally:
+2634:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2635: 
 2636: 
+2637: def test_Block_ReadSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_133test_Block_ReadSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_132test_Block_ReadSlice[] = "test_Block_ReadSlice()";
static PyMethodDef __pyx_mdef_7_test_c_133test_Block_ReadSlice = {"test_Block_ReadSlice", (PyCFunction)__pyx_pw_7_test_c_133test_Block_ReadSlice, METH_NOARGS, __pyx_doc_7_test_c_132test_Block_ReadSlice};
static PyObject *__pyx_pw_7_test_c_133test_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_132test_Block_ReadSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_132test_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__243 = 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__243)) __PYX_ERR(0, 2637, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__243);
  __Pyx_GIVEREF(__pyx_tuple__243);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_133test_Block_ReadSlice, 0, __pyx_n_s_test_Block_ReadSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__244)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2637, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ReadSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 2637, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__244 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__243, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ReadSlice_2, 2637, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__244)) __PYX_ERR(0, 2637, __pyx_L1_error)
 2638:     cdef:
+2639:         Block_* block = NULL
  __pyx_v_block = NULL;
+2640:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2641:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2642:         ssize_t start
 2643:         ssize_t endex
 2644:         bytearray buffer
 2645:         size_t num
 2646: 
+2647:     try:
  /*try:*/ {
+2648:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2648, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2648, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2648, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
 2649: 
+2650:         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;
+2651:             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;
+2652:                 buffer = bytearray(size)
        __pyx_t_9 = __Pyx_PyInt_FromSize_t(__pyx_v_size); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2652, __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, 2652, __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;
+2653:                 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, 2653, __pyx_L4_error)
        __pyx_t_12 = __pyx_f_11cbytesparse_1c_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_1c_vint)-1))) __PYX_ERR(0, 2653, __pyx_L4_error)
+2654:                 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, 2654, __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, 2654, __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, 2654, __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, 2654, __pyx_L4_error)
          }
        }
        #endif
+2655:                 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, 2655, __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, 2655, __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, 2655, __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, 2655, __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, 2655, __pyx_L4_error)
          }
        }
        #endif
      }
    }
  }
 2656: 
 2657:     finally:
+2658:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2659: 
 2660: 
+2661: 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;
  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__245 = 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__245)) __PYX_ERR(0, 2661, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__245);
  __Pyx_GIVEREF(__pyx_tuple__245);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_135test_Block_GetSlice_, 0, __pyx_n_s_test_Block_GetSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__246)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2661, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_GetSlice, __pyx_t_2) < 0) __PYX_ERR(0, 2661, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__246 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__245, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_GetSlice, 2661, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__246)) __PYX_ERR(0, 2661, __pyx_L1_error)
 2662:     cdef:
+2663:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2664:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2665:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2666:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2667:         size_t start
 2668:         size_t endex
 2669:         bytes buffer
 2670: 
+2671:     try:
  /*try:*/ {
+2672:         block1 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2672, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2672, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2672, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 2673: 
+2674:         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;
+2675:             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;
+2676:                 block2 = Block_GetSlice_(block1, start, endex)
        __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_GetSlice_(__pyx_v_block1, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2676, __pyx_L4_error)
        __pyx_v_block2 = __pyx_t_2;
+2677:                 buffer = data[start:endex]
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2677, __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, 2677, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_9));
        __pyx_t_9 = 0;
+2678:                 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, 2678, __pyx_L4_error)
          }
        }
        #endif
+2679:                 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, 2679, __pyx_L4_error)
          }
        }
        #endif
+2680:                 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, 2680, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == ((size_t)__pyx_t_10)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2680, __pyx_L4_error)
          }
        }
        #endif
+2681:                 assert Block_Start(block2) == 0x1234 + start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == (0x1234 + __pyx_v_start)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2681, __pyx_L4_error)
          }
        }
        #endif
+2682:                 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, 2682, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == ((0x1234 + __pyx_v_start) + ((size_t)__pyx_t_10))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2682, __pyx_L4_error)
          }
        }
        #endif
+2683:                 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, 2683, __pyx_L4_error)
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2683, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, ((size_t)__pyx_t_10), __pyx_t_11) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2683, __pyx_L4_error)
          }
        }
        #endif
+2684:                 block2 = Block_Free(block2)
        __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
      }
    }
 2685: 
+2686:         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, 2686, __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, 2686, __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, 2686, __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, 2686, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__49, __pyx_t_9); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 2686, __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, 2686, __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, 2686, __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, 2686, __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, 2686, __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, 2686, __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, 2686, __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, 2686, __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, 2686, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 2686, __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__49 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(0, 2686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__49);
  __Pyx_GIVEREF(__pyx_tuple__49);
+2687:             Block_GetSlice_(block1, SIZE_MAX, SIZE_MAX)
            __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_GetSlice_(__pyx_v_block1, SIZE_MAX, SIZE_MAX); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2687, __pyx_L14_error)
 2688: 
+2689:         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, 2689, __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, 2689, __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, 2689, __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, 2689, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__50, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 2689, __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, 2689, __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, 2689, __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, 2689, __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, 2689, __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, 2689, __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, 2689, __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, 2689, __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, 2689, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 2689, __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__50 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(0, 2689, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__50);
  __Pyx_GIVEREF(__pyx_tuple__50);
+2690:             Block_GetSlice_(block1, 0, SIZE_MAX)
            __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_GetSlice_(__pyx_v_block1, 0, SIZE_MAX); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2690, __pyx_L28_error)
 2691: 
 2692:     finally:
+2693:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2694:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2695: 
 2696: 
+2697: def test_Block_GetSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_137test_Block_GetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_136test_Block_GetSlice[] = "test_Block_GetSlice()";
static PyMethodDef __pyx_mdef_7_test_c_137test_Block_GetSlice = {"test_Block_GetSlice", (PyCFunction)__pyx_pw_7_test_c_137test_Block_GetSlice, METH_NOARGS, __pyx_doc_7_test_c_136test_Block_GetSlice};
static PyObject *__pyx_pw_7_test_c_137test_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_136test_Block_GetSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_136test_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__247 = 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__247)) __PYX_ERR(0, 2697, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__247);
  __Pyx_GIVEREF(__pyx_tuple__247);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_137test_Block_GetSlice, 0, __pyx_n_s_test_Block_GetSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__248)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2697, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_GetSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 2697, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__248 = (PyObject*)__Pyx_PyCode_New(0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__247, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_GetSlice_2, 2697, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__248)) __PYX_ERR(0, 2697, __pyx_L1_error)
 2698:     cdef:
+2699:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2700:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2701:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2702:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2703:         ssize_t start
 2704:         ssize_t endex
 2705:         bytes buffer
 2706: 
+2707:     try:
  /*try:*/ {
+2708:         block1 = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2708, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 2708, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2708, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_2;
 2709: 
+2710:         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;
+2711:             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;
+2712:                 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;
+2713:                 block2 = Block_GetSlice(block1, start, endex)
        __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_GetSlice(__pyx_v_block1, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 2713, __pyx_L4_error)
        __pyx_v_block2 = __pyx_t_2;
+2714:                 buffer = data[start:endex]
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 2714, __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, 2714, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_11));
        __pyx_t_11 = 0;
+2715:                 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, 2715, __pyx_L4_error)
        }
        __pyx_v_start = __Pyx_mod_Py_ssize_t(__pyx_v_start, ((Py_ssize_t)__pyx_v_size));
+2716:                 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, 2716, __pyx_L4_error)
          }
        }
        #endif
+2717:                 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, 2717, __pyx_L4_error)
          }
        }
        #endif
+2718:                 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, 2718, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block2) == ((size_t)__pyx_t_12)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2718, __pyx_L4_error)
          }
        }
        #endif
+2719:                 assert Block_Start(block2) == 0x1234 + <size_t>start
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block2) == (0x1234 + ((size_t)__pyx_v_start))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2719, __pyx_L4_error)
          }
        }
        #endif
+2720:                 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, 2720, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block2) == ((0x1234 + ((size_t)__pyx_v_start)) + ((size_t)__pyx_t_12))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2720, __pyx_L4_error)
          }
        }
        #endif
+2721:                 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, 2721, __pyx_L4_error)
          __pyx_t_13 = __Pyx_PyBytes_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_13) && PyErr_Occurred())) __PYX_ERR(0, 2721, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block2, ((size_t)__pyx_t_12), __pyx_t_13) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 2721, __pyx_L4_error)
          }
        }
        #endif
+2722:                 block2 = Block_Free(block2)
        __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
      }
    }
  }
 2723: 
 2724:     finally:
+2725:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2726:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2727: 
 2728: 
+2729: 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;
  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__249 = 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__249)) __PYX_ERR(0, 2729, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__249);
  __Pyx_GIVEREF(__pyx_tuple__249);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_139test_Block_WriteSlice_, 0, __pyx_n_s_test_Block_WriteSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__250)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2729, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_WriteSlice, __pyx_t_2) < 0) __PYX_ERR(0, 2729, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__250 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__249, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_WriteSlice, 2729, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__250)) __PYX_ERR(0, 2729, __pyx_L1_error)
 2730:     cdef:
+2731:         Block_* block = NULL
  __pyx_v_block = NULL;
+2732:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2733:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2734:         size_t start
 2735:         size_t endex
 2736:         size_t num
 2737:         bytearray buffer
 2738: 
+2739:     try:
  /*try:*/ {
+2740:         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;
+2741:             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;
+2742:                 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;
+2743:                     block = Block_Create(0x1234, 0, NULL)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2743, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2744:                     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, 2744, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2744, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_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, 2744, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2745:                     buffer = bytearray()
          __pyx_t_12 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2745, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2746:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2746, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2746, __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, 2746, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2747:                     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, 2747, __pyx_L4_error)
            }
          }
          #endif
+2748:                     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, 2748, __pyx_L4_error)
            }
          }
          #endif
+2749:                     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, 2749, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2749, __pyx_L4_error)
            }
          }
          #endif
+2750:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2750, __pyx_L4_error)
            }
          }
          #endif
+2751:                     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, 2751, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2751, __pyx_L4_error)
            }
          }
          #endif
+2752:                     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, 2752, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2752, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2752, __pyx_L4_error)
            }
          }
          #endif
+2753:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
        }
      }
    }
 2754: 
+2755:         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;
+2756:             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;
+2757:                 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;
+2758:                     block = Block_Create(0x1234, size, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2758, __pyx_L4_error)
          }
          __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2758, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2758, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2759:                     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, 2759, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2759, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_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, 2759, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2760:                     buffer = bytearray(data)
          __pyx_t_12 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2760, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2761:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2761, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2761, __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, 2761, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2762:                     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, 2762, __pyx_L4_error)
            }
          }
          #endif
+2763:                     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, 2763, __pyx_L4_error)
            }
          }
          #endif
+2764:                     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, 2764, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2764, __pyx_L4_error)
            }
          }
          #endif
+2765:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2765, __pyx_L4_error)
            }
          }
          #endif
+2766:                     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, 2766, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2766, __pyx_L4_error)
            }
          }
          #endif
+2767:                     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, 2767, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2767, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2767, __pyx_L4_error)
            }
          }
          #endif
+2768:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
        }
      }
    }
 2769: 
+2770:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2770, __pyx_L4_error)
    }
    __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2770, __pyx_L4_error)
    __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2770, __pyx_L4_error)
    __pyx_v_block = __pyx_t_10;
 2771: 
+2772:         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, 2772, __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, 2772, __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, 2772, __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, 2772, __pyx_L4_error)
      __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_16, __pyx_tuple__51, __pyx_t_12); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2772, __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, 2772, __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, 2772, __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, 2772, __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, 2772, __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, 2772, __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, 2772, __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, 2772, __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, 2772, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2772, __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__51 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 2772, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__51);
  __Pyx_GIVEREF(__pyx_tuple__51);
+2773:             Block_WriteSlice_(block, SIZE_HMAX + 1, 0, 1, NULL)
            __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_WriteSlice_(__pyx_v_block, (SIZE_HMAX + 1), 0, 1, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2773, __pyx_L22_error)
 2774: 
+2775:         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, 2775, __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, 2775, __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, 2775, __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, 2775, __pyx_L4_error)
      __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__52, __pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 2775, __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, 2775, __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, 2775, __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, 2775, __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, 2775, __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, 2775, __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, 2775, __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, 2775, __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, 2775, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
            if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 2775, __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__52 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(0, 2775, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__52);
  __Pyx_GIVEREF(__pyx_tuple__52);
+2776:             Block_WriteSlice_(block, 0, SIZE_HMAX + 1, 1, NULL)
            __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_WriteSlice_(__pyx_v_block, 0, (SIZE_HMAX + 1), 1, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2776, __pyx_L36_error)
 2777: 
+2778:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 2779: 
 2780:     finally:
+2781:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2782: 
 2783: 
+2784: def test_Block_WriteSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_141test_Block_WriteSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_140test_Block_WriteSlice[] = "test_Block_WriteSlice()";
static PyMethodDef __pyx_mdef_7_test_c_141test_Block_WriteSlice = {"test_Block_WriteSlice", (PyCFunction)__pyx_pw_7_test_c_141test_Block_WriteSlice, METH_NOARGS, __pyx_doc_7_test_c_140test_Block_WriteSlice};
static PyObject *__pyx_pw_7_test_c_141test_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_140test_Block_WriteSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_140test_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__251 = 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__251)) __PYX_ERR(0, 2784, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__251);
  __Pyx_GIVEREF(__pyx_tuple__251);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_141test_Block_WriteSlice, 0, __pyx_n_s_test_Block_WriteSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__252)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2784, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_WriteSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 2784, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__252 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__251, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_WriteSlice_2, 2784, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__252)) __PYX_ERR(0, 2784, __pyx_L1_error)
 2785:     cdef:
+2786:         Block_* block = NULL
  __pyx_v_block = NULL;
+2787:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+2788:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 2789:         ssize_t start
 2790:         ssize_t endex
 2791:         size_t num
 2792:         bytearray buffer
 2793: 
+2794:     try:
  /*try:*/ {
+2795:         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;
+2796:             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;
+2797:                 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;
+2798:                     block = Block_Create(0x1234, 0, NULL)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2798, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2799:                     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, 2799, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2799, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_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, 2799, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2800:                     buffer = bytearray()
          __pyx_t_12 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2800, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2801:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2801, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2801, __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, 2801, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2802:                     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, 2802, __pyx_L4_error)
            }
          }
          #endif
+2803:                     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, 2803, __pyx_L4_error)
            }
          }
          #endif
+2804:                     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, 2804, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2804, __pyx_L4_error)
            }
          }
          #endif
+2805:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2805, __pyx_L4_error)
            }
          }
          #endif
+2806:                     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, 2806, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2806, __pyx_L4_error)
            }
          }
          #endif
+2807:                     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, 2807, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2807, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2807, __pyx_L4_error)
            }
          }
          #endif
+2808:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
        }
      }
    }
 2809: 
+2810:         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;
+2811:             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;
+2812:                 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;
+2813:                     block = Block_Create(0x1234, size, data)
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
            __PYX_ERR(0, 2813, __pyx_L4_error)
          }
          __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 2813, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_15); if (unlikely(__pyx_t_10 == ((Block_ *)NULL))) __PYX_ERR(0, 2813, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2814:                     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, 2814, __pyx_L4_error)
          }
          __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 2814, __pyx_L4_error)
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_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, 2814, __pyx_L4_error)
          __pyx_v_block = __pyx_t_10;
+2815:                     buffer = bytearray(data)
          __pyx_t_12 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2815, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_12));
          __pyx_t_12 = 0;
+2816:                     buffer[start:endex] = data[:num]
          if (unlikely(__pyx_v_data == Py_None)) {
            PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
            __PYX_ERR(0, 2816, __pyx_L4_error)
          }
          __pyx_t_12 = PySequence_GetSlice(__pyx_v_data, 0, __pyx_v_num); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 2816, __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, 2816, __pyx_L4_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+2817:                     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, 2817, __pyx_L4_error)
            }
          }
          #endif
+2818:                     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, 2818, __pyx_L4_error)
            }
          }
          #endif
+2819:                     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, 2819, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_13)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2819, __pyx_L4_error)
            }
          }
          #endif
+2820:                     assert Block_Start(block) == 0x1234
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2820, __pyx_L4_error)
            }
          }
          #endif
+2821:                     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, 2821, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_13))) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2821, __pyx_L4_error)
            }
          }
          #endif
+2822:                     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, 2822, __pyx_L4_error)
            __pyx_t_14 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(0, 2822, __pyx_L4_error)
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_13), __pyx_t_14) == 1) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 2822, __pyx_L4_error)
            }
          }
          #endif
+2823:                     block = Block_Free(block)
          __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
        }
      }
    }
  }
 2824: 
 2825:     finally:
+2826:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2827: 
 2828: 
+2829: 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;
  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__253 = 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__253)) __PYX_ERR(0, 2829, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__253);
  __Pyx_GIVEREF(__pyx_tuple__253);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_143test_Block_SetSlice_, 0, __pyx_n_s_test_Block_SetSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__254)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2829, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_SetSlice, __pyx_t_2) < 0) __PYX_ERR(0, 2829, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__254 = (PyObject*)__Pyx_PyCode_New(0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__253, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_SetSlice, 2829, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__254)) __PYX_ERR(0, 2829, __pyx_L1_error)
 2830:     cdef:
+2831:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2832:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2833:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
 2834:         size_t start1
 2835:         size_t endex1
 2836: 
+2837:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2838:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2839:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2840:         size_t start2
 2841:         size_t endex2
 2842: 
 2843:         bytearray buffer
 2844: 
+2845:     try:
  /*try:*/ {
+2846:         block2 = Block_Create(0, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2846, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2847: 
+2848:         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;
+2849:             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;
+2850:                 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;
+2851:                     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;
+2852:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2852, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2853:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2853, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2854:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2854, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2855:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__5, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2855, __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, 2855, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2856:                         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, 2856, __pyx_L4_error)
              }
            }
            #endif
+2857:                         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, 2857, __pyx_L4_error)
              }
            }
            #endif
+2858:                         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, 2858, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2858, __pyx_L4_error)
              }
            }
            #endif
+2859:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2859, __pyx_L4_error)
              }
            }
            #endif
+2860:                         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, 2860, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2860, __pyx_L4_error)
              }
            }
            #endif
+2861:                         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, 2861, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2861, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2861, __pyx_L4_error)
              }
            }
            #endif
+2862:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2863: 
+2864:         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;
+2865:             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;
+2866:                 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;
+2867:                     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;
+2868:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2868, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2868, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2868, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2869:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2869, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2870:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2870, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2871:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__5, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2871, __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, 2871, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2872:                         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, 2872, __pyx_L4_error)
              }
            }
            #endif
+2873:                         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, 2873, __pyx_L4_error)
              }
            }
            #endif
+2874:                         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, 2874, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2874, __pyx_L4_error)
              }
            }
            #endif
+2875:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2875, __pyx_L4_error)
              }
            }
            #endif
+2876:                         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, 2876, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2876, __pyx_L4_error)
              }
            }
            #endif
+2877:                         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, 2877, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2877, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2877, __pyx_L4_error)
              }
            }
            #endif
+2878:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2879: 
+2880:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
+2881:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2881, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2881, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2881, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2882: 
+2883:         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;
+2884:             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;
+2885:                 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;
+2886:                     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;
+2887:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2887, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2888:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2888, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2889:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2889, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2890:                         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, 2890, __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, 2890, __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, 2890, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2891:                         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, 2891, __pyx_L4_error)
              }
            }
            #endif
+2892:                         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, 2892, __pyx_L4_error)
              }
            }
            #endif
+2893:                         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, 2893, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2893, __pyx_L4_error)
              }
            }
            #endif
+2894:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2894, __pyx_L4_error)
              }
            }
            #endif
+2895:                         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, 2895, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2895, __pyx_L4_error)
              }
            }
            #endif
+2896:                         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, 2896, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2896, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2896, __pyx_L4_error)
              }
            }
            #endif
+2897:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2898: 
+2899:         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;
+2900:             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;
+2901:                 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;
+2902:                     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;
+2903:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2903, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2903, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2903, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2904:                         block1 = Block_SetSlice_(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2904, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2905:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2905, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2906:                         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, 2906, __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, 2906, __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, 2906, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2907:                         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, 2907, __pyx_L4_error)
              }
            }
            #endif
+2908:                         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, 2908, __pyx_L4_error)
              }
            }
            #endif
+2909:                         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, 2909, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2909, __pyx_L4_error)
              }
            }
            #endif
+2910:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2910, __pyx_L4_error)
              }
            }
            #endif
+2911:                         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, 2911, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2911, __pyx_L4_error)
              }
            }
            #endif
+2912:                         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, 2912, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2912, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2912, __pyx_L4_error)
              }
            }
            #endif
+2913:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2914: 
+2915:         block1 = Block_Free(block1)
    __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2916:         block1 = Block_Create(0, size1, data1)
    if (unlikely(__pyx_v_data1 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2916, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2916, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2916, __pyx_L4_error)
    __pyx_v_block1 = __pyx_t_1;
+2917:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
+2918:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2918, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2918, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2918, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2919: 
+2920:         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, 2920, __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, 2920, __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, 2920, __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, 2920, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple__53, __pyx_t_14); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2920, __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, 2920, __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, 2920, __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, 2920, __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, 2920, __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, 2920, __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, 2920, __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, 2920, __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, 2920, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2920, __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__53 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(0, 2920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__53);
  __Pyx_GIVEREF(__pyx_tuple__53);
+2921:             Block_SetSlice_(block1, 0, 0, block2, SIZE_HMAX + 1, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_SetSlice_(__pyx_v_block1, 0, 0, __pyx_v_block2, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2921, __pyx_L42_error)
 2922: 
+2923:         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, 2923, __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, 2923, __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, 2923, __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, 2923, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__54, __pyx_t_18); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2923, __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, 2923, __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, 2923, __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, 2923, __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, 2923, __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, 2923, __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, 2923, __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, 2923, __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, 2923, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2923, __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__54 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 2923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__54);
  __Pyx_GIVEREF(__pyx_tuple__54);
+2924:             Block_SetSlice_(block1, 0, 0, block2, 0, SIZE_HMAX + 1)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_SetSlice_(__pyx_v_block1, 0, 0, __pyx_v_block2, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2924, __pyx_L56_error)
 2925: 
+2926:         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, 2926, __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, 2926, __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, 2926, __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, 2926, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_tuple__55, __pyx_t_14); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2926, __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, 2926, __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, 2926, __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, 2926, __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, 2926, __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, 2926, __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, 2926, __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, 2926, __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, 2926, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2926, __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__55 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__55)) __PYX_ERR(0, 2926, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__55);
  __Pyx_GIVEREF(__pyx_tuple__55);
+2927:             Block_SetSlice_(block1, SIZE_HMAX + 1, 0, block2, 0, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_SetSlice_(__pyx_v_block1, (SIZE_HMAX + 1), 0, __pyx_v_block2, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2927, __pyx_L70_error)
 2928: 
+2929:         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, 2929, __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, 2929, __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, 2929, __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, 2929, __pyx_L4_error)
      __pyx_t_19 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_tuple__56, __pyx_t_18); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 2929, __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, 2929, __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, 2929, __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, 2929, __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, 2929, __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, 2929, __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, 2929, __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, 2929, __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, 2929, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0;
            if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2929, __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__56 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 2929, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__56);
  __Pyx_GIVEREF(__pyx_tuple__56);
+2930:             Block_SetSlice_(block1, 0, SIZE_HMAX + 1, block2, 0, 0)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_SetSlice_(__pyx_v_block1, 0, (SIZE_HMAX + 1), __pyx_v_block2, 0, 0); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2930, __pyx_L84_error)
 2931: 
 2932:     finally:
+2933:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+2934:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 2935: 
 2936: 
+2937: def test_Block_SetSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_145test_Block_SetSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_144test_Block_SetSlice[] = "test_Block_SetSlice()";
static PyMethodDef __pyx_mdef_7_test_c_145test_Block_SetSlice = {"test_Block_SetSlice", (PyCFunction)__pyx_pw_7_test_c_145test_Block_SetSlice, METH_NOARGS, __pyx_doc_7_test_c_144test_Block_SetSlice};
static PyObject *__pyx_pw_7_test_c_145test_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_144test_Block_SetSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_144test_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__255 = 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__255)) __PYX_ERR(0, 2937, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__255);
  __Pyx_GIVEREF(__pyx_tuple__255);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_145test_Block_SetSlice, 0, __pyx_n_s_test_Block_SetSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__256)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2937, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_SetSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 2937, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__256 = (PyObject*)__Pyx_PyCode_New(0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__255, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_SetSlice_2, 2937, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__256)) __PYX_ERR(0, 2937, __pyx_L1_error)
 2938:     cdef:
+2939:         Block_* block1 = NULL
  __pyx_v_block1 = NULL;
+2940:         bytes data1 = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data1 = __pyx_v_7_test_c_DATA1;
+2941:         size_t size1 = SIZE1
  __pyx_v_size1 = __pyx_v_7_test_c_SIZE1;
 2942:         ssize_t start1
 2943:         ssize_t endex1
 2944: 
+2945:         Block_* block2 = NULL
  __pyx_v_block2 = NULL;
+2946:         bytes data2 = DATA2
  __Pyx_INCREF(__pyx_v_7_test_c_DATA2);
  __pyx_v_data2 = __pyx_v_7_test_c_DATA2;
+2947:         size_t size2 = SIZE2
  __pyx_v_size2 = __pyx_v_7_test_c_SIZE2;
 2948:         ssize_t start2
 2949:         ssize_t endex2
 2950: 
 2951:         bytearray buffer
 2952: 
+2953:     try:
  /*try:*/ {
+2954:         block2 = Block_Create(0, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2954, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2955: 
+2956:         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;
+2957:             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;
+2958:                 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;
+2959:                     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;
+2960:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2960, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2961:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2961, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2962:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2962, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2963:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__5, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2963, __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, 2963, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2964:                         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, 2964, __pyx_L4_error)
              }
            }
            #endif
+2965:                         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, 2965, __pyx_L4_error)
              }
            }
            #endif
+2966:                         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, 2966, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2966, __pyx_L4_error)
              }
            }
            #endif
+2967:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2967, __pyx_L4_error)
              }
            }
            #endif
+2968:                         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, 2968, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2968, __pyx_L4_error)
              }
            }
            #endif
+2969:                         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, 2969, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2969, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2969, __pyx_L4_error)
              }
            }
            #endif
+2970:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2971: 
+2972:         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;
+2973:             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;
+2974:                 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;
+2975:                     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;
+2976:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 2976, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2976, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2976, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2977:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2977, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2978:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2978, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2979:                         buffer[start1:endex1] = b''[start2:endex2]
            __pyx_t_14 = PySequence_GetSlice(__pyx_kp_b__5, __pyx_v_start2, __pyx_v_endex2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2979, __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, 2979, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2980:                         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, 2980, __pyx_L4_error)
              }
            }
            #endif
+2981:                         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, 2981, __pyx_L4_error)
              }
            }
            #endif
+2982:                         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, 2982, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2982, __pyx_L4_error)
              }
            }
            #endif
+2983:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2983, __pyx_L4_error)
              }
            }
            #endif
+2984:                         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, 2984, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2984, __pyx_L4_error)
              }
            }
            #endif
+2985:                         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, 2985, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 2985, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 2985, __pyx_L4_error)
              }
            }
            #endif
+2986:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 2987: 
+2988:         block2 = Block_Free(block2)
    __pyx_v_block2 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block2);
+2989:         block2 = Block_Create(0, size2, data2)
    if (unlikely(__pyx_v_data2 == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 2989, __pyx_L4_error)
    }
    __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data2); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 2989, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0, __pyx_v_size2, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2989, __pyx_L4_error)
    __pyx_v_block2 = __pyx_t_1;
 2990: 
+2991:         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;
+2992:             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;
+2993:                 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;
+2994:                     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;
+2995:                         block1 = Block_Create(0x1234, 0, NULL)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 2995, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2996:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 2996, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+2997:                         buffer = bytearray()
            __pyx_t_14 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 2997, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+2998:                         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, 2998, __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, 2998, __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, 2998, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+2999:                         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, 2999, __pyx_L4_error)
              }
            }
            #endif
+3000:                         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, 3000, __pyx_L4_error)
              }
            }
            #endif
+3001:                         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, 3001, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3001, __pyx_L4_error)
              }
            }
            #endif
+3002:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3002, __pyx_L4_error)
              }
            }
            #endif
+3003:                         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, 3003, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3003, __pyx_L4_error)
              }
            }
            #endif
+3004:                         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, 3004, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 3004, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3004, __pyx_L4_error)
              }
            }
            #endif
+3005:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
 3006: 
+3007:         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;
+3008:             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;
+3009:                 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;
+3010:                     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;
+3011:                         block1 = Block_Create(0x1234, size1, data1)
            if (unlikely(__pyx_v_data1 == Py_None)) {
              PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
              __PYX_ERR(0, 3011, __pyx_L4_error)
            }
            __pyx_t_17 = __Pyx_PyBytes_AsUString(__pyx_v_data1); if (unlikely((!__pyx_t_17) && PyErr_Occurred())) __PYX_ERR(0, 3011, __pyx_L4_error)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size1, __pyx_t_17); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3011, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+3012:                         block1 = Block_SetSlice(block1, start1, endex1, block2, start2, endex2)
            __pyx_t_1 = __pyx_f_11cbytesparse_1c_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, 3012, __pyx_L4_error)
            __pyx_v_block1 = __pyx_t_1;
+3013:                         buffer = bytearray(data1)
            __pyx_t_14 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3013, __pyx_L4_error)
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_14));
            __pyx_t_14 = 0;
+3014:                         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, 3014, __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, 3014, __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, 3014, __pyx_L4_error)
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
+3015:                         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, 3015, __pyx_L4_error)
              }
            }
            #endif
+3016:                         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, 3016, __pyx_L4_error)
              }
            }
            #endif
+3017:                         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, 3017, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block1) == ((size_t)__pyx_t_15)) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3017, __pyx_L4_error)
              }
            }
            #endif
+3018:                         assert Block_Start(block1) == 0x1234
            #ifndef CYTHON_WITHOUT_ASSERTIONS
            if (unlikely(!Py_OptimizeFlag)) {
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block1) == 0x1234) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3018, __pyx_L4_error)
              }
            }
            #endif
+3019:                         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, 3019, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block1) == (0x1234 + ((size_t)__pyx_t_15))) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3019, __pyx_L4_error)
              }
            }
            #endif
+3020:                         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, 3020, __pyx_L4_error)
              __pyx_t_16 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_16) && PyErr_Occurred())) __PYX_ERR(0, 3020, __pyx_L4_error)
              if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block1, ((size_t)__pyx_t_15), __pyx_t_16) == 1) != 0))) {
                PyErr_SetNone(PyExc_AssertionError);
                __PYX_ERR(0, 3020, __pyx_L4_error)
              }
            }
            #endif
+3021:                         block1 = Block_Free(block1)
            __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
          }
        }
      }
    }
  }
 3022: 
 3023:     finally:
+3024:         block1 = Block_Free(block1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
/* … */
        __pyx_v_block1 = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block1);
+3025:         block2 = Block_Free(block2)
      __pyx_v_block2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3026: 
 3027: 
+3028: 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;
  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__257 = 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__257)) __PYX_ERR(0, 3028, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__257);
  __Pyx_GIVEREF(__pyx_tuple__257);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_147test_Block_DelSlice_, 0, __pyx_n_s_test_Block_DelSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__258)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3028, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_DelSlice, __pyx_t_2) < 0) __PYX_ERR(0, 3028, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__258 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__257, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_DelSlice, 3028, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__258)) __PYX_ERR(0, 3028, __pyx_L1_error)
 3029:     cdef:
+3030:         Block_* block = NULL
  __pyx_v_block = NULL;
+3031:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3032:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3033:         size_t start
 3034:         size_t endex
 3035:         bytearray buffer
 3036: 
+3037:     try:
  /*try:*/ {
+3038:         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;
+3039:             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;
+3040:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3040, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3041:                 block = Block_DelSlice_(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3041, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3042:                 buffer = bytearray()
        __pyx_t_8 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3042, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3043:                 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, 3043, __pyx_L4_error)
+3044:                 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, 3044, __pyx_L4_error)
          }
        }
        #endif
+3045:                 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, 3045, __pyx_L4_error)
          }
        }
        #endif
+3046:                 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, 3046, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3046, __pyx_L4_error)
          }
        }
        #endif
+3047:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3047, __pyx_L4_error)
          }
        }
        #endif
+3048:                 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, 3048, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3048, __pyx_L4_error)
          }
        }
        #endif
+3049:                 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, 3049, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3049, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3049, __pyx_L4_error)
          }
        }
        #endif
+3050:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 3051: 
+3052:         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;
+3053:             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;
+3054:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3054, __pyx_L4_error)
        }
        __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3054, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3054, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3055:                 block = Block_DelSlice_(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3055, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3056:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3056, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3057:                 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, 3057, __pyx_L4_error)
+3058:                 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, 3058, __pyx_L4_error)
          }
        }
        #endif
+3059:                 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, 3059, __pyx_L4_error)
          }
        }
        #endif
+3060:                 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, 3060, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3060, __pyx_L4_error)
          }
        }
        #endif
+3061:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3061, __pyx_L4_error)
          }
        }
        #endif
+3062:                 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, 3062, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3062, __pyx_L4_error)
          }
        }
        #endif
+3063:                 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, 3063, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3063, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3063, __pyx_L4_error)
          }
        }
        #endif
+3064:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 3065: 
+3066:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3066, __pyx_L4_error)
    }
    __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3066, __pyx_L4_error)
    __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3066, __pyx_L4_error)
    __pyx_v_block = __pyx_t_7;
 3067: 
+3068:         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, 3068, __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, 3068, __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, 3068, __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, 3068, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__57, __pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3068, __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, 3068, __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, 3068, __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, 3068, __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, 3068, __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, 3068, __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, 3068, __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, 3068, __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, 3068, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 3068, __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__57 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 3068, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__57);
  __Pyx_GIVEREF(__pyx_tuple__57);
+3069:             Block_DelSlice_(block, SIZE_HMAX + 1, 0)
            __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice_(__pyx_v_block, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3069, __pyx_L18_error)
 3070: 
+3071:         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, 3071, __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, 3071, __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, 3071, __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, 3071, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__58, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3071, __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, 3071, __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, 3071, __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, 3071, __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, 3071, __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, 3071, __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, 3071, __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, 3071, __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, 3071, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 3071, __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__58 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__58)) __PYX_ERR(0, 3071, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__58);
  __Pyx_GIVEREF(__pyx_tuple__58);
+3072:             Block_DelSlice_(block, 0, SIZE_HMAX + 1)
            __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice_(__pyx_v_block, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3072, __pyx_L32_error)
 3073: 
+3074:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3075: 
 3076:     finally:
+3077:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3078: 
 3079: 
+3080: def test_Block_DelSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_149test_Block_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_148test_Block_DelSlice[] = "test_Block_DelSlice()";
static PyMethodDef __pyx_mdef_7_test_c_149test_Block_DelSlice = {"test_Block_DelSlice", (PyCFunction)__pyx_pw_7_test_c_149test_Block_DelSlice, METH_NOARGS, __pyx_doc_7_test_c_148test_Block_DelSlice};
static PyObject *__pyx_pw_7_test_c_149test_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_148test_Block_DelSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_148test_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__259 = 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__259)) __PYX_ERR(0, 3080, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__259);
  __Pyx_GIVEREF(__pyx_tuple__259);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_149test_Block_DelSlice, 0, __pyx_n_s_test_Block_DelSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__260)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3080, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_DelSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 3080, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__260 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__259, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_DelSlice_2, 3080, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__260)) __PYX_ERR(0, 3080, __pyx_L1_error)
 3081:     cdef:
+3082:         Block_* block = NULL
  __pyx_v_block = NULL;
+3083:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3084:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3085:         ssize_t start
 3086:         ssize_t endex
 3087:         bytearray buffer
 3088: 
+3089:     try:
  /*try:*/ {
+3090:         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;
+3091:             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;
+3092:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3092, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3093:                 block = Block_DelSlice(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3093, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3094:                 buffer = bytearray()
        __pyx_t_8 = __Pyx_PyObject_CallNoArg(((PyObject *)(&PyByteArray_Type))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3094, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3095:                 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, 3095, __pyx_L4_error)
+3096:                 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, 3096, __pyx_L4_error)
          }
        }
        #endif
+3097:                 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, 3097, __pyx_L4_error)
          }
        }
        #endif
+3098:                 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, 3098, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3098, __pyx_L4_error)
          }
        }
        #endif
+3099:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3099, __pyx_L4_error)
          }
        }
        #endif
+3100:                 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, 3100, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3100, __pyx_L4_error)
          }
        }
        #endif
+3101:                 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, 3101, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3101, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3101, __pyx_L4_error)
          }
        }
        #endif
+3102:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 3103: 
+3104:         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;
+3105:             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;
+3106:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3106, __pyx_L4_error)
        }
        __pyx_t_11 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_11) && PyErr_Occurred())) __PYX_ERR(0, 3106, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_11); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3106, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3107:                 block = Block_DelSlice(block, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_DelSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3107, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3108:                 buffer = bytearray(data)
        __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyByteArray_Type)), __pyx_v_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3108, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_8));
        __pyx_t_8 = 0;
+3109:                 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, 3109, __pyx_L4_error)
+3110:                 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, 3110, __pyx_L4_error)
          }
        }
        #endif
+3111:                 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, 3111, __pyx_L4_error)
          }
        }
        #endif
+3112:                 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, 3112, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Length(__pyx_v_block) == ((size_t)__pyx_t_9)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3112, __pyx_L4_error)
          }
        }
        #endif
+3113:                 assert Block_Start(block) == 0x1234
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block) == 0x1234) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3113, __pyx_L4_error)
          }
        }
        #endif
+3114:                 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, 3114, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block) == (0x1234 + ((size_t)__pyx_t_9))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3114, __pyx_L4_error)
          }
        }
        #endif
+3115:                 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, 3115, __pyx_L4_error)
          __pyx_t_10 = __Pyx_PyObject_AsUString(__pyx_v_buffer); if (unlikely((!__pyx_t_10) && PyErr_Occurred())) __PYX_ERR(0, 3115, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Block_Eq_(__pyx_v_block, ((size_t)__pyx_t_9), __pyx_t_10) == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3115, __pyx_L4_error)
          }
        }
        #endif
+3116:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
  }
 3117: 
 3118:     finally:
+3119:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3120: 
 3121: 
+3122: def test_Block_Bytes():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_151test_Block_Bytes(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_150test_Block_Bytes[] = "test_Block_Bytes()";
static PyMethodDef __pyx_mdef_7_test_c_151test_Block_Bytes = {"test_Block_Bytes", (PyCFunction)__pyx_pw_7_test_c_151test_Block_Bytes, METH_NOARGS, __pyx_doc_7_test_c_150test_Block_Bytes};
static PyObject *__pyx_pw_7_test_c_151test_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_150test_Block_Bytes(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_150test_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__261 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__261)) __PYX_ERR(0, 3122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__261);
  __Pyx_GIVEREF(__pyx_tuple__261);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_151test_Block_Bytes, 0, __pyx_n_s_test_Block_Bytes, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__262)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3122, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Bytes, __pyx_t_2) < 0) __PYX_ERR(0, 3122, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__262 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__261, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Bytes, 3122, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__262)) __PYX_ERR(0, 3122, __pyx_L1_error)
 3123:     cdef:
+3124:         Block_* block = NULL
  __pyx_v_block = NULL;
+3125:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3126:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3127:         bytes buffer
 3128: 
+3129:     try:
  /*try:*/ {
+3130:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3130, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3131:         buffer = Block_Bytes(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Bytes(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3131, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_buffer = ((PyObject*)__pyx_t_2);
    __pyx_t_2 = 0;
+3132:         assert buffer == b''
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_kp_b__5, 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_1c_Block_Free(__pyx_v_block);
 3134: 
+3135:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3135, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 3135, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3135, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3136:         buffer = Block_Bytes(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Bytes(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3136, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_2));
    __pyx_t_2 = 0;
+3137:         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, 3137, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3137, __pyx_L4_error)
      }
    }
    #endif
+3138:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3139: 
 3140:     finally:
+3141:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3142: 
 3143: 
+3144: def test_Block_Bytearray():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_153test_Block_Bytearray(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_152test_Block_Bytearray[] = "test_Block_Bytearray()";
static PyMethodDef __pyx_mdef_7_test_c_153test_Block_Bytearray = {"test_Block_Bytearray", (PyCFunction)__pyx_pw_7_test_c_153test_Block_Bytearray, METH_NOARGS, __pyx_doc_7_test_c_152test_Block_Bytearray};
static PyObject *__pyx_pw_7_test_c_153test_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_152test_Block_Bytearray(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_152test_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__263 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_buffer); if (unlikely(!__pyx_tuple__263)) __PYX_ERR(0, 3144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__263);
  __Pyx_GIVEREF(__pyx_tuple__263);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_153test_Block_Bytearray, 0, __pyx_n_s_test_Block_Bytearray, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__264)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_Bytearray, __pyx_t_2) < 0) __PYX_ERR(0, 3144, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__264 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__263, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_Bytearray, 3144, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__264)) __PYX_ERR(0, 3144, __pyx_L1_error)
 3145:     cdef:
+3146:         Block_* block = NULL
  __pyx_v_block = NULL;
+3147:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3148:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3149:         bytearray buffer
 3150: 
+3151:     try:
  /*try:*/ {
+3152:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3152, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3153:         buffer = Block_Bytearray(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Bytearray(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3153, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_buffer = ((PyObject*)__pyx_t_2);
    __pyx_t_2 = 0;
+3154:         assert buffer == b''
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_v_buffer, __pyx_kp_b__5, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3154, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3154, __pyx_L4_error)
      }
    }
    #endif
+3155:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 3156: 
+3157:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3157, __pyx_L4_error)
    }
    __pyx_t_4 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 3157, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_4); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3157, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3158:         buffer = Block_Bytearray(block)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Bytearray(__pyx_v_block); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3158, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_buffer, ((PyObject*)__pyx_t_2));
    __pyx_t_2 = 0;
+3159:         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, 3159, __pyx_L4_error)
      if (unlikely(!(__pyx_t_3 != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3159, __pyx_L4_error)
      }
    }
    #endif
+3160:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3161: 
 3162:     finally:
+3163:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3164: 
 3165: 
+3166: def test_Block_View():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_155test_Block_View(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_154test_Block_View[] = "test_Block_View()";
static PyMethodDef __pyx_mdef_7_test_c_155test_Block_View = {"test_Block_View", (PyCFunction)__pyx_pw_7_test_c_155test_Block_View, METH_NOARGS, __pyx_doc_7_test_c_154test_Block_View};
static PyObject *__pyx_pw_7_test_c_155test_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_154test_Block_View(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_154test_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_1c_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__265 = 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__265)) __PYX_ERR(0, 3166, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__265);
  __Pyx_GIVEREF(__pyx_tuple__265);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_155test_Block_View, 0, __pyx_n_s_test_Block_View, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__266)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3166, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_View, __pyx_t_2) < 0) __PYX_ERR(0, 3166, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__266 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__265, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_View, 3166, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__266)) __PYX_ERR(0, 3166, __pyx_L1_error)
 3167:     cdef:
+3168:         Block_* block = NULL
  __pyx_v_block = NULL;
+3169:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3170:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3171:         bytearray buffer
 3172:         BlockView view
 3173: 
+3174:     try:
  /*try:*/ {
+3175:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3175, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3176:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3176, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3177:         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, 3177, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = (__Pyx_PyBytes_Equals(__pyx_t_2, __pyx_kp_b__5, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3177, __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, 3177, __pyx_L4_error)
      }
    }
    #endif
+3178:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3178, __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, 3178, __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;
+3179:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 3180: 
+3181:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3181, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3181, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3181, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3182:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3182, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3183:         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, 3183, __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, 3183, __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, 3183, __pyx_L4_error)
      }
    }
    #endif
+3184:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3184, __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, 3184, __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;
+3185:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3186: 
 3187:     finally:
+3188:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3189: 
 3190: 
+3191: 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_1c_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__267 = 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__267)) __PYX_ERR(0, 3191, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__267);
  __Pyx_GIVEREF(__pyx_tuple__267);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_157test_Block_ViewSlice_, 0, __pyx_n_s_test_Block_ViewSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__268)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3191, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ViewSlice, __pyx_t_2) < 0) __PYX_ERR(0, 3191, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__268 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__267, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ViewSlice, 3191, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__268)) __PYX_ERR(0, 3191, __pyx_L1_error)
 3192:     cdef:
+3193:         Block_* block = NULL
  __pyx_v_block = NULL;
+3194:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3195:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3196:         BlockView view
 3197:         size_t start
 3198:         size_t endex
 3199: 
+3200:     try:
  /*try:*/ {
+3201:         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;
+3202:             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;
+3203:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3203, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3204:                 view = Block_ViewSlice_(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_ViewSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3204, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3205:                 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, 3205, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_kp_b__5, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3205, __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, 3205, __pyx_L4_error)
          }
        }
        #endif
+3206:                 view.dispose()
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3206, __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, 3206, __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;
+3207:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 3208: 
+3209:         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;
+3210:             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;
+3211:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3211, __pyx_L4_error)
        }
        __pyx_t_12 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_12) && PyErr_Occurred())) __PYX_ERR(0, 3211, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_12); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3211, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3212:                 view = Block_ViewSlice_(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_ViewSlice_(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3212, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3213:                 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, 3213, __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, 3213, __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, 3213, __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, 3213, __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, 3213, __pyx_L4_error)
          }
        }
        #endif
+3214:                 view.dispose()
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3214, __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, 3214, __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;
+3215:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
  }
 3216: 
 3217:     finally:
+3218:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3219: 
 3220: 
+3221: def test_Block_ViewSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_159test_Block_ViewSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_158test_Block_ViewSlice[] = "test_Block_ViewSlice()";
static PyMethodDef __pyx_mdef_7_test_c_159test_Block_ViewSlice = {"test_Block_ViewSlice", (PyCFunction)__pyx_pw_7_test_c_159test_Block_ViewSlice, METH_NOARGS, __pyx_doc_7_test_c_158test_Block_ViewSlice};
static PyObject *__pyx_pw_7_test_c_159test_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_158test_Block_ViewSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_158test_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_1c_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__269 = 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__269)) __PYX_ERR(0, 3221, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__269);
  __Pyx_GIVEREF(__pyx_tuple__269);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_159test_Block_ViewSlice, 0, __pyx_n_s_test_Block_ViewSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__270)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3221, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Block_ViewSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 3221, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__270 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__269, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Block_ViewSlice_2, 3221, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__270)) __PYX_ERR(0, 3221, __pyx_L1_error)
 3222:     cdef:
+3223:         Block_* block = NULL
  __pyx_v_block = NULL;
+3224:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3225:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3226:         BlockView view
 3227:         ssize_t start
 3228:         ssize_t endex
 3229: 
+3230:     try:
  /*try:*/ {
+3231:         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;
+3232:             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;
+3233:                 block = Block_Create(0x1234, 0, NULL)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3233, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3234:                 view = Block_ViewSlice(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_ViewSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3234, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3235:                 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, 3235, __pyx_L4_error)
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = (__Pyx_PyBytes_Equals(__pyx_t_8, __pyx_kp_b__5, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 3235, __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, 3235, __pyx_L4_error)
          }
        }
        #endif
+3236:                 view.dispose()
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3236, __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, 3236, __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;
+3237:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
 3238: 
+3239:         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;
+3240:             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;
+3241:                 block = Block_Create(0x1234, size, data)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3241, __pyx_L4_error)
        }
        __pyx_t_12 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_12) && PyErr_Occurred())) __PYX_ERR(0, 3241, __pyx_L4_error)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_12); if (unlikely(__pyx_t_7 == ((Block_ *)NULL))) __PYX_ERR(0, 3241, __pyx_L4_error)
        __pyx_v_block = __pyx_t_7;
+3242:                 view = Block_ViewSlice(block, start, endex)
        __pyx_t_8 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_ViewSlice(__pyx_v_block, __pyx_v_start, __pyx_v_endex)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3242, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_XDECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_8));
        __pyx_t_8 = 0;
+3243:                 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, 3243, __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, 3243, __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, 3243, __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, 3243, __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, 3243, __pyx_L4_error)
          }
        }
        #endif
+3244:                 view.dispose()
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3244, __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, 3244, __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;
+3245:                 block = Block_Free(block)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
      }
    }
  }
 3246: 
 3247:     finally:
+3248:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3249: 
 3250: 
 3251: # =====================================================================================================================
 3252: 
+3253: def test_BlockView_basics():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_161test_BlockView_basics(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_160test_BlockView_basics[] = "test_BlockView_basics()";
static PyMethodDef __pyx_mdef_7_test_c_161test_BlockView_basics = {"test_BlockView_basics", (PyCFunction)__pyx_pw_7_test_c_161test_BlockView_basics, METH_NOARGS, __pyx_doc_7_test_c_160test_BlockView_basics};
static PyObject *__pyx_pw_7_test_c_161test_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_160test_BlockView_basics(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_160test_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_1c_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__271 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__271)) __PYX_ERR(0, 3253, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__271);
  __Pyx_GIVEREF(__pyx_tuple__271);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_161test_BlockView_basics, 0, __pyx_n_s_test_BlockView_basics, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__272)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3253, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_basics, __pyx_t_2) < 0) __PYX_ERR(0, 3253, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__272 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__271, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_basics, 3253, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__272)) __PYX_ERR(0, 3253, __pyx_L1_error)
 3254:     cdef:
+3255:         Block_* block = NULL
  __pyx_v_block = NULL;
+3256:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3257:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3258:         BlockView view
 3259: 
+3260:     try:
  /*try:*/ {
+3261:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3261, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3261, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3261, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3262:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3262, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3263:         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, 3263, __pyx_L4_error)
      }
    }
    #endif
+3264:         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, 3264, __pyx_L4_error)
      }
    }
    #endif
+3265:         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, 3265, __pyx_L4_error)
      }
    }
    #endif
+3266:         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, 3266, __pyx_L4_error)
      }
    }
    #endif
+3267:         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, 3267, __pyx_L4_error)
      }
    }
    #endif
+3268:         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, 3268, __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, 3268, __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, 3268, __pyx_L4_error)
      }
    }
    #endif
+3269:         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, 3269, __pyx_L4_error)
      }
    }
    #endif
+3270:         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, 3270, __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, 3270, __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, 3270, __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, 3270, __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, 3270, __pyx_L4_error)
      }
    }
    #endif
+3271:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3271, __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, 3271, __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;
+3272:         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, 3272, __pyx_L4_error)
      }
    }
    #endif
+3273:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3274: 
 3275:     finally:
+3276:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3277: 
 3278: 
+3279: def test_BlockView___bool__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_163test_BlockView___bool__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_162test_BlockView___bool__[] = "test_BlockView___bool__()";
static PyMethodDef __pyx_mdef_7_test_c_163test_BlockView___bool__ = {"test_BlockView___bool__", (PyCFunction)__pyx_pw_7_test_c_163test_BlockView___bool__, METH_NOARGS, __pyx_doc_7_test_c_162test_BlockView___bool__};
static PyObject *__pyx_pw_7_test_c_163test_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_162test_BlockView___bool__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_162test_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_1c_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__273 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__273)) __PYX_ERR(0, 3279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__273);
  __Pyx_GIVEREF(__pyx_tuple__273);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_163test_BlockView___bool__, 0, __pyx_n_s_test_BlockView___bool, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__274)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___bool, __pyx_t_2) < 0) __PYX_ERR(0, 3279, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__274 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__273, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___bool, 3279, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__274)) __PYX_ERR(0, 3279, __pyx_L1_error)
 3280:     cdef:
+3281:         Block_* block = NULL
  __pyx_v_block = NULL;
+3282:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3283:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3284:         BlockView view
 3285: 
+3286:     try:
  /*try:*/ {
+3287:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3287, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3288:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3288, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3289:         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, 3289, __pyx_L4_error)
      if (unlikely(!((!((!(!__pyx_t_3)) != 0)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3289, __pyx_L4_error)
      }
    }
    #endif
+3290:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3290, __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, 3290, __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;
+3291:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 3292: 
+3293:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3293, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3293, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3293, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3294:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3294, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3295:         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, 3295, __pyx_L4_error)
      if (unlikely(!((!(!__pyx_t_3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3295, __pyx_L4_error)
      }
    }
    #endif
+3296:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3296, __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, 3296, __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;
+3297:         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, 3297, __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, 3297, __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, 3297, __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, 3297, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__59, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3297, __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, 3297, __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, 3297, __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, 3297, __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, 3297, __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, 3297, __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, 3297, __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, 3297, __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, 3297, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3297, __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, 3297, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__59);
  __Pyx_GIVEREF(__pyx_tuple__59);
+3298:             bool(view)
            __pyx_t_3 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_view)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3298, __pyx_L10_error)
            (void)((!(!__pyx_t_3)));
 3299: 
 3300:     finally:
+3301:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3302: 
 3303: 
+3304: def test_BlockView___bytes__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_165test_BlockView___bytes__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_164test_BlockView___bytes__[] = "test_BlockView___bytes__()";
static PyMethodDef __pyx_mdef_7_test_c_165test_BlockView___bytes__ = {"test_BlockView___bytes__", (PyCFunction)__pyx_pw_7_test_c_165test_BlockView___bytes__, METH_NOARGS, __pyx_doc_7_test_c_164test_BlockView___bytes__};
static PyObject *__pyx_pw_7_test_c_165test_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_164test_BlockView___bytes__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_164test_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_1c_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__275 = 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__275)) __PYX_ERR(0, 3304, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__275);
  __Pyx_GIVEREF(__pyx_tuple__275);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_165test_BlockView___bytes__, 0, __pyx_n_s_test_BlockView___bytes, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__276)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3304, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___bytes, __pyx_t_2) < 0) __PYX_ERR(0, 3304, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__276 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__275, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___bytes, 3304, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__276)) __PYX_ERR(0, 3304, __pyx_L1_error)
 3305:     cdef:
+3306:         Block_* block = NULL
  __pyx_v_block = NULL;
+3307:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3308:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3309:         BlockView view
 3310:         object memview
 3311: 
+3312:     try:
  /*try:*/ {
+3313:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3313, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3313, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3313, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3314:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3314, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3315:         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, 3315, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_memview = __pyx_t_3;
    __pyx_t_3 = 0;
+3316:         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, 3316, __pyx_L4_error)
      }
    }
    #endif
+3317:         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, 3317, __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, 3317, __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, 3317, __pyx_L4_error)
      }
    }
    #endif
+3318:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3318, __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, 3318, __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;
+3319:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3320: 
 3321:     finally:
+3322:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3323: 
 3324: 
+3325: def test_BlockView_memview():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_167test_BlockView_memview(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_166test_BlockView_memview[] = "test_BlockView_memview()";
static PyMethodDef __pyx_mdef_7_test_c_167test_BlockView_memview = {"test_BlockView_memview", (PyCFunction)__pyx_pw_7_test_c_167test_BlockView_memview, METH_NOARGS, __pyx_doc_7_test_c_166test_BlockView_memview};
static PyObject *__pyx_pw_7_test_c_167test_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_166test_BlockView_memview(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_166test_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_1c_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__277 = 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__277)) __PYX_ERR(0, 3325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__277);
  __Pyx_GIVEREF(__pyx_tuple__277);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_167test_BlockView_memview, 0, __pyx_n_s_test_BlockView_memview, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__278)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_memview, __pyx_t_2) < 0) __PYX_ERR(0, 3325, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__278 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__277, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_memview, 3325, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__278)) __PYX_ERR(0, 3325, __pyx_L1_error)
 3326:     cdef:
+3327:         Block_* block = NULL
  __pyx_v_block = NULL;
+3328:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3329:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3330:         BlockView view
 3331:         object memview
 3332: 
+3333:     try:
  /*try:*/ {
+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_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3334, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3334, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3335:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3335, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3336:         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, 3336, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_memview = __pyx_t_3;
    __pyx_t_3 = 0;
+3337:         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, 3337, __pyx_L4_error)
      }
    }
    #endif
+3338:         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, 3338, __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, 3338, __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, 3338, __pyx_L4_error)
      }
    }
    #endif
+3339:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3339, __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, 3339, __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;
+3340:         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, 3340, __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, 3340, __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, 3340, __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, 3340, __pyx_L4_error)
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__60, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3340, __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, 3340, __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, 3340, __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, 3340, __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, 3340, __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, 3340, __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, 3340, __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, 3340, __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, 3340, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3340, __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, 3340, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__60);
  __Pyx_GIVEREF(__pyx_tuple__60);
+3341:             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, 3341, __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, 3341, __pyx_L10_error)
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            (void)((!(!__pyx_t_4)));
 3342: 
 3343:     finally:
+3344:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3345: 
 3346: 
+3347: def test_BlockView___len__():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_169test_BlockView___len__(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_168test_BlockView___len__[] = "test_BlockView___len__()";
static PyMethodDef __pyx_mdef_7_test_c_169test_BlockView___len__ = {"test_BlockView___len__", (PyCFunction)__pyx_pw_7_test_c_169test_BlockView___len__, METH_NOARGS, __pyx_doc_7_test_c_168test_BlockView___len__};
static PyObject *__pyx_pw_7_test_c_169test_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_168test_BlockView___len__(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_168test_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_1c_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__279 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__279)) __PYX_ERR(0, 3347, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__279);
  __Pyx_GIVEREF(__pyx_tuple__279);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_169test_BlockView___len__, 0, __pyx_n_s_test_BlockView___len, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__280)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3347, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView___len, __pyx_t_2) < 0) __PYX_ERR(0, 3347, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__280 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__279, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView___len, 3347, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__280)) __PYX_ERR(0, 3347, __pyx_L1_error)
 3348:     cdef:
+3349:         Block_* block = NULL
  __pyx_v_block = NULL;
+3350:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3351:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3352:         BlockView view
 3353: 
+3354:     try:
  /*try:*/ {
+3355:         block = Block_Create(0x1234, 0, NULL)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, 0, NULL); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3355, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3356:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3356, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2);
    __pyx_t_2 = 0;
+3357:         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, 3357, __pyx_L4_error)
      if (unlikely(!((((size_t)__pyx_t_3) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3357, __pyx_L4_error)
      }
    }
    #endif
+3358:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3358, __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, 3358, __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;
+3359:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
 3360: 
+3361:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3361, __pyx_L4_error)
    }
    __pyx_t_6 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(0, 3361, __pyx_L4_error)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_6); if (unlikely(__pyx_t_1 == ((Block_ *)NULL))) __PYX_ERR(0, 3361, __pyx_L4_error)
    __pyx_v_block = __pyx_t_1;
+3362:         view = Block_View(block)
    __pyx_t_2 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3362, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_view, ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_2));
    __pyx_t_2 = 0;
+3363:         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, 3363, __pyx_L4_error)
      if (unlikely(!((((size_t)__pyx_t_3) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3363, __pyx_L4_error)
      }
    }
    #endif
+3364:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3364, __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, 3364, __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;
+3365:         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, 3365, __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, 3365, __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, 3365, __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, 3365, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__61, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3365, __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, 3365, __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, 3365, __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, 3365, __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, 3365, __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, 3365, __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, 3365, __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, 3365, __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, 3365, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3365, __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__61 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(0, 3365, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__61);
  __Pyx_GIVEREF(__pyx_tuple__61);
+3366:             <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, 3366, __pyx_L10_error)
            (void)(((size_t)__pyx_t_3));
 3367: 
 3368:     finally:
+3369:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3370: 
 3371: 
+3372: def test_BlockView_bounds():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_171test_BlockView_bounds(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_170test_BlockView_bounds[] = "test_BlockView_bounds()";
static PyMethodDef __pyx_mdef_7_test_c_171test_BlockView_bounds = {"test_BlockView_bounds", (PyCFunction)__pyx_pw_7_test_c_171test_BlockView_bounds, METH_NOARGS, __pyx_doc_7_test_c_170test_BlockView_bounds};
static PyObject *__pyx_pw_7_test_c_171test_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_170test_BlockView_bounds(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_170test_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_1c_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__281 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__281)) __PYX_ERR(0, 3372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__281);
  __Pyx_GIVEREF(__pyx_tuple__281);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_171test_BlockView_bounds, 0, __pyx_n_s_test_BlockView_bounds, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__282)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_bounds, __pyx_t_2) < 0) __PYX_ERR(0, 3372, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__282 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__281, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_bounds, 3372, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__282)) __PYX_ERR(0, 3372, __pyx_L1_error)
 3373:     cdef:
+3374:         Block_* block = NULL
  __pyx_v_block = NULL;
+3375:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3376:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3377:         BlockView view
 3378: 
+3379:     try:
  /*try:*/ {
+3380:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3380, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3380, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3380, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3381:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3381, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3382:         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, 3382, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3382, __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, 3382, __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, 3382, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3382, __pyx_L4_error)
      }
    }
    #endif
+3383:         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, 3383, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3383, __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, 3383, __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, 3383, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3383, __pyx_L4_error)
      }
    }
    #endif
+3384:         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, 3384, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyInt_From_uint_fast64_t(__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3384, __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, 3384, __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, 3384, __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, 3384, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_6)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3384, __pyx_L4_error)
      }
    }
    #endif
+3385:         view.dispose()
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3385, __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, 3385, __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;
+3386:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3387: 
 3388:     finally:
+3389:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3390: 
 3391: 
+3392: def test_BlockView_check():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_173test_BlockView_check(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_172test_BlockView_check[] = "test_BlockView_check()";
static PyMethodDef __pyx_mdef_7_test_c_173test_BlockView_check = {"test_BlockView_check", (PyCFunction)__pyx_pw_7_test_c_173test_BlockView_check, METH_NOARGS, __pyx_doc_7_test_c_172test_BlockView_check};
static PyObject *__pyx_pw_7_test_c_173test_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_172test_BlockView_check(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_172test_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_1c_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__283 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__283)) __PYX_ERR(0, 3392, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__283);
  __Pyx_GIVEREF(__pyx_tuple__283);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_173test_BlockView_check, 0, __pyx_n_s_test_BlockView_check, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__284)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3392, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_check, __pyx_t_2) < 0) __PYX_ERR(0, 3392, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__284 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__283, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_check, 3392, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__284)) __PYX_ERR(0, 3392, __pyx_L1_error)
 3393:     cdef:
+3394:         Block_* block = NULL
  __pyx_v_block = NULL;
+3395:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3396:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3397:         BlockView view
 3398: 
+3399:     try:
  /*try:*/ {
+3400:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3400, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3400, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3400, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3401:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3401, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3402:         view.check()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_check); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3402, __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, 3402, __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;
+3403:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3403, __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, 3403, __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;
+3404:         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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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, 3404, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3404, __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_RuntimeError); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(0, 3404, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__62);
  __Pyx_GIVEREF(__pyx_tuple__62);
+3405:             view.check()
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_check); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3405, __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, 3405, __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;
+3406:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3407: 
 3408:     finally:
+3409:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3410: 
 3411: 
+3412: def test_BlockView_dispose():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_175test_BlockView_dispose(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_174test_BlockView_dispose[] = "test_BlockView_dispose()";
static PyMethodDef __pyx_mdef_7_test_c_175test_BlockView_dispose = {"test_BlockView_dispose", (PyCFunction)__pyx_pw_7_test_c_175test_BlockView_dispose, METH_NOARGS, __pyx_doc_7_test_c_174test_BlockView_dispose};
static PyObject *__pyx_pw_7_test_c_175test_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_174test_BlockView_dispose(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_174test_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_1c_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__285 = PyTuple_Pack(4, __pyx_n_s_block, __pyx_n_s_data, __pyx_n_s_size, __pyx_n_s_view); if (unlikely(!__pyx_tuple__285)) __PYX_ERR(0, 3412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__285);
  __Pyx_GIVEREF(__pyx_tuple__285);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_175test_BlockView_dispose, 0, __pyx_n_s_test_BlockView_dispose, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__286)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3412, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_BlockView_dispose, __pyx_t_2) < 0) __PYX_ERR(0, 3412, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__286 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__285, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_BlockView_dispose, 3412, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__286)) __PYX_ERR(0, 3412, __pyx_L1_error)
 3413:     cdef:
+3414:         Block_* block = NULL
  __pyx_v_block = NULL;
+3415:         bytes data = DATA1
  __Pyx_INCREF(__pyx_v_7_test_c_DATA1);
  __pyx_v_data = __pyx_v_7_test_c_DATA1;
+3416:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 3417:         BlockView view
 3418: 
+3419:     try:
  /*try:*/ {
+3420:         block = Block_Create(0x1234, size, data)
    if (unlikely(__pyx_v_data == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
      __PYX_ERR(0, 3420, __pyx_L4_error)
    }
    __pyx_t_1 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_1) && PyErr_Occurred())) __PYX_ERR(0, 3420, __pyx_L4_error)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_size, __pyx_t_1); if (unlikely(__pyx_t_2 == ((Block_ *)NULL))) __PYX_ERR(0, 3420, __pyx_L4_error)
    __pyx_v_block = __pyx_t_2;
+3421:         view = Block_View(block)
    __pyx_t_3 = ((PyObject *)__pyx_f_11cbytesparse_1c_Block_View(__pyx_v_block)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3421, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_v_view = ((struct __pyx_obj_11cbytesparse_1c_BlockView *)__pyx_t_3);
    __pyx_t_3 = 0;
+3422:         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, 3422, __pyx_L4_error)
      }
    }
    #endif
+3423:         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, 3423, __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, 3423, __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, 3423, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3423, __pyx_L4_error)
      }
    }
    #endif
+3424:         view.dispose()
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3424, __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, 3424, __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;
+3425:         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, 3425, __pyx_L4_error)
      }
    }
    #endif
+3426:         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, 3426, __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, 3426, __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, 3426, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3426, __pyx_L4_error)
      }
    }
    #endif
+3427:         view.dispose()
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_view), __pyx_n_s_dispose); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3427, __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, 3427, __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;
+3428:         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, 3428, __pyx_L4_error)
      }
    }
    #endif
+3429:         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, 3429, __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, 3429, __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, 3429, __pyx_L4_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (unlikely(!__pyx_t_5)) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3429, __pyx_L4_error)
      }
    }
    #endif
+3430:         block = Block_Free(block)
    __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
  }
 3431: 
 3432:     finally:
+3433:         block = Block_Free(block)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_block = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3434: 
 3435: 
 3436: # =====================================================================================================================
 3437: 
 3438: cdef tuple TEMPLATE_BLOCKS = (
+3439:     (2, b'234'),
  __pyx_tuple__287 = PyTuple_Pack(2, __pyx_int_2, __pyx_kp_b_234); if (unlikely(!__pyx_tuple__287)) __PYX_ERR(0, 3439, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__287);
  __Pyx_GIVEREF(__pyx_tuple__287);
/* … */
  __Pyx_INCREF(__pyx_tuple__292);
  __Pyx_XGOTREF(__pyx_v_7_test_c_TEMPLATE_BLOCKS);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_TEMPLATE_BLOCKS, __pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);
/* … */
  __pyx_tuple__292 = PyTuple_Pack(5, __pyx_tuple__287, __pyx_tuple__288, __pyx_tuple__289, __pyx_tuple__290, __pyx_tuple__291); if (unlikely(!__pyx_tuple__292)) __PYX_ERR(0, 3439, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);
+3440:     (8, b'89A'),
  __pyx_tuple__288 = PyTuple_Pack(2, __pyx_int_8, __pyx_kp_b_89A); if (unlikely(!__pyx_tuple__288)) __PYX_ERR(0, 3440, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__288);
  __Pyx_GIVEREF(__pyx_tuple__288);
+3441:     (12, b'C'),
  __pyx_tuple__289 = PyTuple_Pack(2, __pyx_int_12, __pyx_n_b_C); if (unlikely(!__pyx_tuple__289)) __PYX_ERR(0, 3441, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__289);
  __Pyx_GIVEREF(__pyx_tuple__289);
+3442:     (14, b'EF'),
  __pyx_tuple__290 = PyTuple_Pack(2, __pyx_int_14, __pyx_n_b_EF); if (unlikely(!__pyx_tuple__290)) __PYX_ERR(0, 3442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__290);
  __Pyx_GIVEREF(__pyx_tuple__290);
+3443:     (18, b'I'),
  __pyx_tuple__291 = PyTuple_Pack(2, __pyx_int_18, __pyx_n_b_I); if (unlikely(!__pyx_tuple__291)) __PYX_ERR(0, 3443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__291);
  __Pyx_GIVEREF(__pyx_tuple__291);
 3444: )
 3445: 
 3446: cdef tuple HELLO_WORLD_BLOCKS = (
+3447:     (2, b'Hello'),
  __pyx_tuple__293 = PyTuple_Pack(2, __pyx_int_2, __pyx_n_b_Hello); if (unlikely(!__pyx_tuple__293)) __PYX_ERR(0, 3447, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__293);
  __Pyx_GIVEREF(__pyx_tuple__293);
/* … */
  __Pyx_INCREF(__pyx_tuple__295);
  __Pyx_XGOTREF(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS);
  __Pyx_DECREF_SET(__pyx_v_7_test_c_HELLO_WORLD_BLOCKS, __pyx_tuple__295);
  __Pyx_GIVEREF(__pyx_tuple__295);
/* … */
  __pyx_tuple__295 = PyTuple_Pack(2, __pyx_tuple__293, __pyx_tuple__294); if (unlikely(!__pyx_tuple__295)) __PYX_ERR(0, 3447, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__295);
  __Pyx_GIVEREF(__pyx_tuple__295);
+3448:     (10, b'World!'),
  __pyx_tuple__294 = PyTuple_Pack(2, __pyx_int_10, __pyx_kp_b_World); if (unlikely(!__pyx_tuple__294)) __PYX_ERR(0, 3448, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__294);
  __Pyx_GIVEREF(__pyx_tuple__294);
 3449: )
 3450: 
 3451: 
+3452: 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;
}
 3453:     cdef:
+3454:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3455:         Block_* block = NULL
  __pyx_v_block = NULL;
+3456:         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, 3456, __pyx_L1_error)
  }
  __pyx_t_1 = PyTuple_GET_SIZE(__pyx_v_template); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3456, __pyx_L1_error)
  __pyx_v_block_count = ((size_t)__pyx_t_1);
 3457:         size_t block_index
 3458:         addr_t start
 3459:         bytes data
 3460: 
+3461:     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;
  }
+3462:         blocks = Rack_Alloc(block_count)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_block_count); if (unlikely(__pyx_t_5 == ((Rack_ *)NULL))) __PYX_ERR(0, 3462, __pyx_L3_error)
      __pyx_v_blocks = __pyx_t_5;
 3463: 
+3464:         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;
+3465:             start, data = template[block_index]
        if (unlikely(__pyx_v_template == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
          __PYX_ERR(0, 3465, __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, 3465, __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, 3465, __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, 3465, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3465, __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, 3465, __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, 3465, __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, 3465, __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, 3465, __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, 3465, __pyx_L3_error)
        __pyx_v_start = __pyx_t_14;
        __Pyx_XDECREF_SET(__pyx_v_data, ((PyObject*)__pyx_t_11));
        __pyx_t_11 = 0;
+3466:             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, 3466, __pyx_L3_error)
        }
        __pyx_t_1 = PyBytes_GET_SIZE(__pyx_v_data); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3466, __pyx_L3_error)
        if (unlikely(__pyx_v_data == Py_None)) {
          PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
          __PYX_ERR(0, 3466, __pyx_L3_error)
        }
        __pyx_t_15 = __Pyx_PyBytes_AsUString(__pyx_v_data); if (unlikely((!__pyx_t_15) && PyErr_Occurred())) __PYX_ERR(0, 3466, __pyx_L3_error)
        __pyx_t_16 = __pyx_f_11cbytesparse_1c_Block_Create(__pyx_v_start, ((size_t)__pyx_t_1), __pyx_t_15); if (unlikely(__pyx_t_16 == ((Block_ *)NULL))) __PYX_ERR(0, 3466, __pyx_L3_error)
        __pyx_v_block = __pyx_t_16;
+3467:             Rack_Set__(blocks, block_index, block)
        (void)(__pyx_f_11cbytesparse_1c_Rack_Set__(__pyx_v_blocks, __pyx_v_block_index, __pyx_v_block));
+3468:             block = NULL
        __pyx_v_block = NULL;
      }
 3469: 
+3470:         return blocks
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L7_try_return;
 3471: 
+3472:     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, 3472, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_GOTREF(__pyx_t_10);
+3473:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
+3474:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
+3475:         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, 3475, __pyx_L5_except_error)
    }
    __pyx_L5_except_error:;
 3476: 
 3477: 
+3478: 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;
}
+3479:     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;
 3480: 
 3481: 
+3482: 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;
}
+3483:     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;
 3484: 
 3485: 
+3486: 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;
}
 3487:     cdef:
 3488:         size_t offset
 3489: 
+3490:     for offset in range(Rack_Length(blocks)):
  __pyx_t_1 = __pyx_f_11cbytesparse_1c_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;
+3491:         assert Rack_Get__(blocks, offset) == NULL
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset) == NULL) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3491, __pyx_L1_error)
      }
    }
    #endif
  }
 3492: 
 3493: 
 3494: # ---------------------------------------------------------------------------------------------------------------------
 3495: 
+3496: def test_Rack_Alloc_Free():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_177test_Rack_Alloc_Free(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_176test_Rack_Alloc_Free[] = "test_Rack_Alloc_Free()";
static PyMethodDef __pyx_mdef_7_test_c_177test_Rack_Alloc_Free = {"test_Rack_Alloc_Free", (PyCFunction)__pyx_pw_7_test_c_177test_Rack_Alloc_Free, METH_NOARGS, __pyx_doc_7_test_c_176test_Rack_Alloc_Free};
static PyObject *__pyx_pw_7_test_c_177test_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_176test_Rack_Alloc_Free(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_176test_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__296 = PyTuple_Pack(2, __pyx_n_s_blocks, __pyx_n_s_block_index); if (unlikely(!__pyx_tuple__296)) __PYX_ERR(0, 3496, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__296);
  __Pyx_GIVEREF(__pyx_tuple__296);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_177test_Rack_Alloc_Free, 0, __pyx_n_s_test_Rack_Alloc_Free, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__297)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3496, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Alloc_Free, __pyx_t_2) < 0) __PYX_ERR(0, 3496, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__297 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__296, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Alloc_Free, 3496, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__297)) __PYX_ERR(0, 3496, __pyx_L1_error)
 3497:     cdef:
+3498:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3499:         size_t block_index
 3500: 
+3501:     try:
  /*try:*/ {
+3502:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3502, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3503:         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, 3503, __pyx_L4_error)
      }
    }
    #endif
+3504:         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, 3504, __pyx_L4_error)
      }
    }
    #endif
+3505:         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, 3505, __pyx_L4_error)
      }
    }
    #endif
+3506:         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, 3506, __pyx_L4_error)
      }
    }
    #endif
+3507:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3507, __pyx_L4_error)
      }
    }
    #endif
+3508:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3509: 
+3510:         blocks = Rack_Alloc(0x100)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0x100); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3510, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3511:         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, 3511, __pyx_L4_error)
      }
    }
    #endif
+3512:         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, 3512, __pyx_L4_error)
      }
    }
    #endif
+3513:         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, 3513, __pyx_L4_error)
      }
    }
    #endif
+3514:         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, 3514, __pyx_L4_error)
      }
    }
    #endif
+3515:         assert Rack_Length(blocks) == 0x100
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0x100) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3515, __pyx_L4_error)
      }
    }
    #endif
+3516:         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;
+3517:             assert Rack_Get__(blocks, block_index) == NULL
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index) == NULL) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3517, __pyx_L4_error)
        }
      }
      #endif
    }
+3518:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3519: 
 3520:     finally:
+3521:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3522: 
 3523: 
+3524: def test_Rack_ShallowCopy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_179test_Rack_ShallowCopy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_178test_Rack_ShallowCopy[] = "test_Rack_ShallowCopy()";
static PyMethodDef __pyx_mdef_7_test_c_179test_Rack_ShallowCopy = {"test_Rack_ShallowCopy", (PyCFunction)__pyx_pw_7_test_c_179test_Rack_ShallowCopy, METH_NOARGS, __pyx_doc_7_test_c_178test_Rack_ShallowCopy};
static PyObject *__pyx_pw_7_test_c_179test_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_178test_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_178test_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, 3524, __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__298 = 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__298)) __PYX_ERR(0, 3524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__298);
  __Pyx_GIVEREF(__pyx_tuple__298);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_179test_Rack_ShallowCopy, 0, __pyx_n_s_test_Rack_ShallowCopy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__299)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ShallowCopy, __pyx_t_2) < 0) __PYX_ERR(0, 3524, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__299 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__298, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ShallowCopy, 3524, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__299)) __PYX_ERR(0, 3524, __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;
};

 3525:     cdef:
+3526:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3527:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3528:         size_t size
 3529:         size_t offset
 3530: 
+3531:     try:
  /*try:*/ {
+3532:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3532, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3533:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3534: 
+3535:         blocks = Rack_ShallowCopy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_ShallowCopy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3535, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3536:         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, 3536, __pyx_L4_error)
      }
    }
    #endif
+3537:         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, 3537, __pyx_L4_error)
      }
    }
    #endif
+3538:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3538, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3538, __pyx_L4_error)
      }
    }
    #endif
+3539:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3540: 
+3541:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3542:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3543:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3544: 
+3545:         blocks = Rack_ShallowCopy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_ShallowCopy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3545, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3546:         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, 3546, __pyx_L4_error)
      }
    }
    #endif
+3547:         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, 3547, __pyx_L4_error)
      }
    }
    #endif
+3548:         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, 3548, __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, 3548, __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, 3548, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) == __pyx_f_11cbytesparse_1c_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, 3548, __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, 3548, __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, 3548, __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;
};

+3549:         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, 3549, __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, 3549, __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, 3549, __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_1c_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, 3549, __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, 3549, __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, 3549, __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;
};

+3550:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3550, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3550, __pyx_L4_error)
      }
    }
    #endif
+3551:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3552: 
 3553:     finally:
+3554:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3555:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3556: 
 3557: 
+3558: def test_Rack_Copy():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_181test_Rack_Copy(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_180test_Rack_Copy[] = "test_Rack_Copy()";
static PyMethodDef __pyx_mdef_7_test_c_181test_Rack_Copy = {"test_Rack_Copy", (PyCFunction)__pyx_pw_7_test_c_181test_Rack_Copy, METH_NOARGS, __pyx_doc_7_test_c_180test_Rack_Copy};
static PyObject *__pyx_pw_7_test_c_181test_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_180test_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_180test_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, 3558, __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__300 = 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__300)) __PYX_ERR(0, 3558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__300);
  __Pyx_GIVEREF(__pyx_tuple__300);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_181test_Rack_Copy, 0, __pyx_n_s_test_Rack_Copy, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__301)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3558, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Copy, __pyx_t_2) < 0) __PYX_ERR(0, 3558, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__301 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__300, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Copy, 3558, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__301)) __PYX_ERR(0, 3558, __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;
};

 3559:     cdef:
+3560:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3561:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3562:         size_t size
 3563:         size_t offset
 3564: 
+3565:     try:
  /*try:*/ {
+3566:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3566, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3567:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3568: 
+3569:         blocks = Rack_Copy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Copy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3569, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3570:         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, 3570, __pyx_L4_error)
      }
    }
    #endif
+3571:         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, 3571, __pyx_L4_error)
      }
    }
    #endif
+3572:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3572, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3572, __pyx_L4_error)
      }
    }
    #endif
+3573:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3574: 
+3575:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3576:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3577:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3578: 
+3579:         blocks = Rack_Copy(temp)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Copy(__pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3579, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3580:         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, 3580, __pyx_L4_error)
      }
    }
    #endif
+3581:         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, 3581, __pyx_L4_error)
      }
    }
    #endif
+3582:         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, 3582, __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, 3582, __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, 3582, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_1c_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, 3582, __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, 3582, __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, 3582, __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;
};

+3583:         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, 3583, __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, 3583, __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, 3583, __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_1c_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, 3583, __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, 3583, __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, 3583, __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;
};

+3584:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3584, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3584, __pyx_L4_error)
      }
    }
    #endif
+3585:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3586: 
 3587:     finally:
+3588:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3589:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3590: 
 3591: 
+3592: def test_Rack_FromObject():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_183test_Rack_FromObject(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_182test_Rack_FromObject[] = "test_Rack_FromObject()";
static PyMethodDef __pyx_mdef_7_test_c_183test_Rack_FromObject = {"test_Rack_FromObject", (PyCFunction)__pyx_pw_7_test_c_183test_Rack_FromObject, METH_NOARGS, __pyx_doc_7_test_c_182test_Rack_FromObject};
static PyObject *__pyx_pw_7_test_c_183test_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_182test_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_182test_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, 3592, __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__302 = 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__302)) __PYX_ERR(0, 3592, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__302);
  __Pyx_GIVEREF(__pyx_tuple__302);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_183test_Rack_FromObject, 0, __pyx_n_s_test_Rack_FromObject, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__303)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3592, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_FromObject, __pyx_t_2) < 0) __PYX_ERR(0, 3592, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__303 = (PyObject*)__Pyx_PyCode_New(0, 0, 13, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__302, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_FromObject, 3592, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__303)) __PYX_ERR(0, 3592, __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;
};

 3593:     cdef:
+3594:         Rack_* blocks = NULL
  __pyx_cur_scope->__pyx_v_blocks = NULL;
+3595:         Rack_* temp = NULL
  __pyx_cur_scope->__pyx_v_temp = NULL;
 3596:         size_t size
 3597:         size_t offset
 3598: 
+3599:     try:
  /*try:*/ {
+3600:         temp = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3600, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_temp = __pyx_t_1;
+3601:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3602: 
+3603:         blocks = Rack_FromObject((), 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_empty_tuple, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3603, __pyx_L4_error)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3604:         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, 3604, __pyx_L4_error)
      }
    }
    #endif
+3605:         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, 3605, __pyx_L4_error)
      }
    }
    #endif
+3606:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3606, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3606, __pyx_L4_error)
      }
    }
    #endif
+3607:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3608: 
+3609:         blocks = Rack_FromObject([], 0)
    __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3609, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3609, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3610:         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, 3610, __pyx_L4_error)
      }
    }
    #endif
+3611:         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, 3611, __pyx_L4_error)
      }
    }
    #endif
+3612:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3612, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3612, __pyx_L4_error)
      }
    }
    #endif
+3613:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3614: 
+3615:         blocks = Rack_FromObject(iter(()), 0)
    __pyx_t_3 = PyObject_GetIter(__pyx_empty_tuple); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3615, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3615, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3616:         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, 3616, __pyx_L4_error)
      }
    }
    #endif
+3617:         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, 3617, __pyx_L4_error)
      }
    }
    #endif
+3618:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3618, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3618, __pyx_L4_error)
      }
    }
    #endif
+3619:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3620: 
+3621:         temp = Rack_Free(temp)
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_temp);
+3622:         temp = create_template_rack()
    __pyx_cur_scope->__pyx_v_temp = __pyx_f_7_test_c_create_template_rack();
+3623:         size = Rack_Length(temp)
    __pyx_cur_scope->__pyx_v_size = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_cur_scope->__pyx_v_temp);
 3624: 
+3625:         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, 3625, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3625, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3626:         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, 3626, __pyx_L4_error)
      }
    }
    #endif
+3627:         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, 3627, __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, 3627, __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, 3627, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_1c_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, 3627, __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, 3627, __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, 3627, __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;
};

+3628:         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, 3628, __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, 3628, __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, 3628, __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_1c_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, 3628, __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, 3628, __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, 3628, __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;
};

+3629:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3629, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3629, __pyx_L4_error)
      }
    }
    #endif
+3630:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3631: 
+3632:         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, 3632, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_3, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3632, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3633:         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, 3633, __pyx_L4_error)
      }
    }
    #endif
+3634:         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, 3634, __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, 3634, __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, 3634, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_1c_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, 3634, __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, 3634, __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, 3634, __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;
};

+3635:         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, 3635, __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, 3635, __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, 3635, __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_1c_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, 3635, __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, 3635, __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, 3635, __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;
};

+3636:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3636, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3636, __pyx_L4_error)
      }
    }
    #endif
+3637:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3638: 
+3639:         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, 3639, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_4, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3639, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3640:         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, 3640, __pyx_L4_error)
      }
    }
    #endif
+3641:         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, 3641, __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, 3641, __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, 3641, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_1c_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, 3641, __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, 3641, __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, 3641, __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;
};

+3642:         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, 3642, __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, 3642, __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, 3642, __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_1c_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, 3642, __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, 3642, __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, 3642, __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;
};

+3643:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3643, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3643, __pyx_L4_error)
      }
    }
    #endif
+3644:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
 3645: 
+3646:         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, 3646, __pyx_L4_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_FromObject(__pyx_t_3, 69); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3646, __pyx_L4_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_cur_scope->__pyx_v_blocks = __pyx_t_1;
+3647:         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, 3647, __pyx_L4_error)
      }
    }
    #endif
+3648:         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, 3648, __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, 3648, __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, 3648, __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_1c_Rack_Get__(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_offset) != __pyx_f_11cbytesparse_1c_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, 3648, __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, 3648, __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, 3648, __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;
};

+3649:         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, 3649, __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, 3649, __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, 3649, __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_1c_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, 3649, __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, 3649, __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, 3649, __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;
};

+3650:         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_1c_Rack_Get_(__pyx_cur_scope->__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_8 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3650, __pyx_L4_error)
      __pyx_t_8->address = (__pyx_t_8->address - 69);
    }
+3651:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_2 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_cur_scope->__pyx_v_blocks, __pyx_cur_scope->__pyx_v_temp); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 3651, __pyx_L4_error)
      if (unlikely(!((__pyx_t_2 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3651, __pyx_L4_error)
      }
    }
    #endif
+3652:         blocks = Rack_Free(blocks)
    __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
  }
 3653: 
 3654:     finally:
+3655:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
/* … */
        __pyx_cur_scope->__pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_cur_scope->__pyx_v_blocks);
+3656:         temp = Rack_Free(temp)
      __pyx_cur_scope->__pyx_v_temp = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3657: 
 3658: 
+3659: def test_Rack_BoundSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_185test_Rack_BoundSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_184test_Rack_BoundSlice[] = "test_Rack_BoundSlice()";
static PyMethodDef __pyx_mdef_7_test_c_185test_Rack_BoundSlice = {"test_Rack_BoundSlice", (PyCFunction)__pyx_pw_7_test_c_185test_Rack_BoundSlice, METH_NOARGS, __pyx_doc_7_test_c_184test_Rack_BoundSlice};
static PyObject *__pyx_pw_7_test_c_185test_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_184test_Rack_BoundSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_184test_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__304 = PyTuple_Pack(3, __pyx_n_s_blocks, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__304)) __PYX_ERR(0, 3659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__304);
  __Pyx_GIVEREF(__pyx_tuple__304);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_185test_Rack_BoundSlice, 0, __pyx_n_s_test_Rack_BoundSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__305)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_BoundSlice, __pyx_t_2) < 0) __PYX_ERR(0, 3659, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__305 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__304, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_BoundSlice, 3659, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__305)) __PYX_ERR(0, 3659, __pyx_L1_error)
 3660:     cdef:
+3661:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3662:         addr_t start
 3663:         addr_t endex
 3664: 
+3665:     try:
  /*try:*/ {
+3666:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3666, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
 3667: 
+3668:         start, endex = Rack_BoundSlice(blocks, 0, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3669:         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, 3669, __pyx_L4_error)
      }
    }
    #endif
+3670:         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, 3670, __pyx_L4_error)
      }
    }
    #endif
 3671: 
+3672:         start, endex = Rack_BoundSlice(blocks, 0, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3673:         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, 3673, __pyx_L4_error)
      }
    }
    #endif
+3674:         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, 3674, __pyx_L4_error)
      }
    }
    #endif
 3675: 
+3676:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3677:         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, 3677, __pyx_L4_error)
      }
    }
    #endif
+3678:         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, 3678, __pyx_L4_error)
      }
    }
    #endif
 3679: 
+3680:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3681:         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, 3681, __pyx_L4_error)
      }
    }
    #endif
+3682:         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, 3682, __pyx_L4_error)
      }
    }
    #endif
 3683: 
+3684:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
+3685:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 3686: 
+3687:         start, endex = Rack_BoundSlice(blocks, 0, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3688:         assert start == Block_Start(Rack_First_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_1c_Block_Start(__pyx_f_11cbytesparse_1c_Rack_First_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3688, __pyx_L4_error)
      }
    }
    #endif
+3689:         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, 3689, __pyx_L4_error)
      }
    }
    #endif
 3690: 
+3691:         start, endex = Rack_BoundSlice(blocks, 0, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3692:         assert start == Block_Start(Rack_First_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_1c_Block_Start(__pyx_f_11cbytesparse_1c_Rack_First_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3692, __pyx_L4_error)
      }
    }
    #endif
+3693:         assert endex == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_endex == __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3693, __pyx_L4_error)
      }
    }
    #endif
 3694: 
+3695:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, ADDR_MAX)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3696:         assert start == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3696, __pyx_L4_error)
      }
    }
    #endif
+3697:         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, 3697, __pyx_L4_error)
      }
    }
    #endif
 3698: 
+3699:         start, endex = Rack_BoundSlice(blocks, ADDR_MAX, 0)
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3700:         assert start == Block_Endex(Rack_Last_(blocks))
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_v_start == __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last_(__pyx_v_blocks))) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3700, __pyx_L4_error)
      }
    }
    #endif
+3701:         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, 3701, __pyx_L4_error)
      }
    }
    #endif
  }
 3702: 
 3703:     finally:
+3704:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3705: 
 3706: 
 3707: # TODO: def test_Rack_Shift_()
 3708: 
 3709: 
 3710: # TODO: def test_Rack_Shift()
 3711: 
 3712: 
+3713: def test_Rack_Eq():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_187test_Rack_Eq(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_186test_Rack_Eq[] = "test_Rack_Eq()";
static PyMethodDef __pyx_mdef_7_test_c_187test_Rack_Eq = {"test_Rack_Eq", (PyCFunction)__pyx_pw_7_test_c_187test_Rack_Eq, METH_NOARGS, __pyx_doc_7_test_c_186test_Rack_Eq};
static PyObject *__pyx_pw_7_test_c_187test_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_186test_Rack_Eq(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_186test_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__306 = PyTuple_Pack(3, __pyx_n_s_blocks1, __pyx_n_s_blocks2, __pyx_n_s_block_index); if (unlikely(!__pyx_tuple__306)) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__306);
  __Pyx_GIVEREF(__pyx_tuple__306);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_187test_Rack_Eq, 0, __pyx_n_s_test_Rack_Eq, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__307)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Eq, __pyx_t_2) < 0) __PYX_ERR(0, 3713, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__307 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__306, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Eq, 3713, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__307)) __PYX_ERR(0, 3713, __pyx_L1_error)
 3714:     cdef:
+3715:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+3716:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
 3717:         size_t block_index
 3718: 
+3719:     try:
  /*try:*/ {
+3720:         blocks2 = create_template_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_template_rack();
 3721: 
+3722:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+3723:         assert Rack_Eq(blocks1, blocks2) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3723, __pyx_L4_error)
      if (unlikely(!((__pyx_t_1 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3723, __pyx_L4_error)
      }
    }
    #endif
+3724:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
 3725: 
+3726:         for block_index in range(Rack_Length(blocks2)):
    __pyx_t_2 = __pyx_f_11cbytesparse_1c_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;
+3727:             blocks1 = create_template_rack()
      __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+3728:             blocks1 = Rack_Pop_(blocks1, block_index, NULL)
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Pop_(__pyx_v_blocks1, __pyx_v_block_index, NULL); if (unlikely(__pyx_t_5 == ((Rack_ *)NULL))) __PYX_ERR(0, 3728, __pyx_L4_error)
      __pyx_v_blocks1 = __pyx_t_5;
+3729:             assert Rack_Eq(blocks1, blocks2) is False
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3729, __pyx_L4_error)
        if (unlikely(!((__pyx_t_1 == 0) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 3729, __pyx_L4_error)
        }
      }
      #endif
+3730:             blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
    }
  }
 3731: 
 3732:     finally:
+3733:         blocks1 = Rack_Free(blocks1)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+3734:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3735: 
 3736: 
+3737: def test_Rack_Reserve_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_189test_Rack_Reserve_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_188test_Rack_Reserve_[] = "test_Rack_Reserve_()";
static PyMethodDef __pyx_mdef_7_test_c_189test_Rack_Reserve_ = {"test_Rack_Reserve_", (PyCFunction)__pyx_pw_7_test_c_189test_Rack_Reserve_, METH_NOARGS, __pyx_doc_7_test_c_188test_Rack_Reserve_};
static PyObject *__pyx_pw_7_test_c_189test_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_188test_Rack_Reserve_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_188test_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__308 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_data, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__308)) __PYX_ERR(0, 3737, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__308);
  __Pyx_GIVEREF(__pyx_tuple__308);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_189test_Rack_Reserve_, 0, __pyx_n_s_test_Rack_Reserve, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__309)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3737, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Reserve, __pyx_t_2) < 0) __PYX_ERR(0, 3737, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__309 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__308, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Reserve, 3737, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__309)) __PYX_ERR(0, 3737, __pyx_L1_error)
 3738:     cdef:
+3739:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3740:         size_t size = 10
  __pyx_v_size = 10;
 3741:         list data
 3742:         size_t offset
 3743: 
+3744:     try:
  /*try:*/ {
+3745:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3745, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3746:         blocks = Rack_Reserve_(blocks, 0, 0)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3746, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3747:         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, 3747, __pyx_L4_error)
      }
    }
    #endif
+3748:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3748, __pyx_L4_error)
      }
    }
    #endif
+3749:         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, 3749, __pyx_L4_error)
+3750:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3751: 
+3752:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3752, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3753:         blocks = Rack_Reserve_(blocks, 0, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, 0, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3753, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3754:         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, 3754, __pyx_L4_error)
      }
    }
    #endif
+3755:         assert Rack_Length(blocks) == 3 + 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 3) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3755, __pyx_L4_error)
      }
    }
    #endif
+3756:         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, 3756, __pyx_L4_error)
+3757:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3758: 
+3759:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3759, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3760:         blocks = Rack_Reserve_(blocks, 0, 0)  # same
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3760, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3761:         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, 3761, __pyx_L4_error)
      }
    }
    #endif
+3762:         assert Rack_Length(blocks) == size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == __pyx_v_size) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3762, __pyx_L4_error)
      }
    }
    #endif
+3763:         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, 3763, __pyx_L4_error)
+3764:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3765: 
+3766:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3766, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3767:         blocks = Rack_Reserve_(blocks, 0, 3)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, 0, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3767, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3768:         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, 3768, __pyx_L4_error)
      }
    }
    #endif
+3769:         assert Rack_Length(blocks) == 3 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (3 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3769, __pyx_L4_error)
      }
    }
    #endif
+3770:         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, 3770, __pyx_L4_error)
+3771:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3772: 
+3773:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3773, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3774:         blocks = Rack_Reserve_(blocks, size, 3)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_size, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3774, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3775:         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, 3775, __pyx_L4_error)
      }
    }
    #endif
+3776:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3776, __pyx_L4_error)
      }
    }
    #endif
+3777:         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, 3777, __pyx_L4_error)
+3778:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3779: 
+3780:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+3781:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3781, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3782:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3782, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3783:         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, 3783, __pyx_L4_error)
      }
    }
    #endif
+3784:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3784, __pyx_L4_error)
      }
    }
    #endif
+3785:         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, 3785, __pyx_L4_error)
+3786:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3787: 
+3788:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+3789:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3789, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3790:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3790, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3791:         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, 3791, __pyx_L4_error)
      }
    }
    #endif
+3792:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3792, __pyx_L4_error)
      }
    }
    #endif
+3793:         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, 3793, __pyx_L4_error)
+3794:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3795: 
+3796:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+3797:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3797, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3798:         blocks = Rack_Reserve_(blocks, offset, 3)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, 3); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3798, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3799:         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, 3799, __pyx_L4_error)
      }
    }
    #endif
+3800:         assert Rack_Length(blocks) == size + 3
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 3)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3800, __pyx_L4_error)
      }
    }
    #endif
+3801:         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, 3801, __pyx_L4_error)
+3802:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3803: 
+3804:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3804, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3805:         blocks = Rack_Reserve_(blocks, 0, size)  # before
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, 0, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3805, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3806:         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, 3806, __pyx_L4_error)
      }
    }
    #endif
+3807:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3807, __pyx_L4_error)
      }
    }
    #endif
+3808:         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, 3808, __pyx_L4_error)
+3809:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3810: 
+3811:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3811, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3812:         blocks = Rack_Reserve_(blocks, size, size)  # after
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_size, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3812, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3813:         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, 3813, __pyx_L4_error)
      }
    }
    #endif
+3814:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3814, __pyx_L4_error)
      }
    }
    #endif
+3815:         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, 3815, __pyx_L4_error)
+3816:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3817: 
+3818:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+3819:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3819, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3820:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3820, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3821:         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, 3821, __pyx_L4_error)
      }
    }
    #endif
+3822:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3822, __pyx_L4_error)
      }
    }
    #endif
+3823:         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, 3823, __pyx_L4_error)
+3824:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3825: 
+3826:         offset = (size * 1) >> 2  # first quarter
    __pyx_v_offset = ((__pyx_v_size * 1) >> 2);
+3827:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3827, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3828:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3828, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3829:         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, 3829, __pyx_L4_error)
      }
    }
    #endif
+3830:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3830, __pyx_L4_error)
      }
    }
    #endif
+3831:         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, 3831, __pyx_L4_error)
+3832:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3833: 
+3834:         offset = (size * 3) >> 2  # third quarter
    __pyx_v_offset = ((__pyx_v_size * 3) >> 2);
+3835:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3835, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3836:         blocks = Rack_Reserve_(blocks, offset, size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Reserve_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3836, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3837:         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, 3837, __pyx_L4_error)
      }
    }
    #endif
+3838:         assert Rack_Length(blocks) == size + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3838, __pyx_L4_error)
      }
    }
    #endif
+3839:         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, 3839, __pyx_L4_error)
+3840:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3841: 
+3842:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_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:         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, 3843, __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, 3843, __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, 3843, __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, 3843, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__63, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3843, __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, 3843, __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, 3843, __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, 3843, __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_1c_Rack_Reserve_(__pyx_v_blocks, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3843, __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, 3843, __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, 3843, __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, 3843, __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, 3843, __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, 3843, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3843, __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__63 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 3843, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__63);
  __Pyx_GIVEREF(__pyx_tuple__63);
+3844:         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, 3844, __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, 3844, __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, 3844, __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, 3844, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__64, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3844, __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, 3844, __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, 3844, __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, 3844, __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_1c_Rack_Reserve_(__pyx_v_blocks, 0, SIZE_HMAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3844, __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, 3844, __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, 3844, __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, 3844, __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, 3844, __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, 3844, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3844, __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__64 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__64)) __PYX_ERR(0, 3844, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__64);
  __Pyx_GIVEREF(__pyx_tuple__64);
+3845:         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, 3845, __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, 3845, __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, 3845, __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, 3845, __pyx_L4_error)
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__65, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3845, __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, 3845, __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, 3845, __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, 3845, __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_1c_Rack_Reserve_(__pyx_v_blocks, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3845, __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, 3845, __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, 3845, __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, 3845, __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, 3845, __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, 3845, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 3845, __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__65 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(0, 3845, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__65);
  __Pyx_GIVEREF(__pyx_tuple__65);
+3846:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3847: 
 3848:     finally:
+3849:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3850: 
 3851: 
+3852: def test_Rack_Delete_():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_191test_Rack_Delete_(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_190test_Rack_Delete_[] = "test_Rack_Delete_()";
static PyMethodDef __pyx_mdef_7_test_c_191test_Rack_Delete_ = {"test_Rack_Delete_", (PyCFunction)__pyx_pw_7_test_c_191test_Rack_Delete_, METH_NOARGS, __pyx_doc_7_test_c_190test_Rack_Delete_};
static PyObject *__pyx_pw_7_test_c_191test_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_190test_Rack_Delete_(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_190test_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__310 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_start, __pyx_n_s_endex); if (unlikely(!__pyx_tuple__310)) __PYX_ERR(0, 3852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__310);
  __Pyx_GIVEREF(__pyx_tuple__310);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_191test_Rack_Delete_, 0, __pyx_n_s_test_Rack_Delete, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__311)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Delete, __pyx_t_2) < 0) __PYX_ERR(0, 3852, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__311 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__310, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Delete, 3852, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__311)) __PYX_ERR(0, 3852, __pyx_L1_error)
 3853:     cdef:
+3854:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3855:         size_t size = 10
  __pyx_v_size = 10;
 3856:         size_t start
 3857:         size_t endex
 3858: 
+3859:     try:
  /*try:*/ {
+3860:         start = endex = 0
    __pyx_v_start = 0;
    __pyx_v_endex = 0;
+3861:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3861, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3862:         blocks = Rack_Delete_(blocks, 0, 0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Delete_(__pyx_v_blocks, 0, 0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3862, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3863:         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, 3863, __pyx_L4_error)
      }
    }
    #endif
+3864:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3864, __pyx_L4_error)
      }
    }
    #endif
+3865:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3866: 
+3867:         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;
+3868:             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;
+3869:                 blocks = Rack_Alloc(size)
        __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3869, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_1;
+3870:                 blocks = Rack_Delete_(blocks, start, endex - start)
        __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Delete_(__pyx_v_blocks, __pyx_v_start, (__pyx_v_endex - __pyx_v_start)); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3870, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_1;
+3871:                 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, 3871, __pyx_L4_error)
          }
        }
        #endif
+3872:                 assert Rack_Length(blocks) == size - (endex - start)
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - (__pyx_v_endex - __pyx_v_start))) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 3872, __pyx_L4_error)
          }
        }
        #endif
+3873:                 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, 3873, __pyx_L4_error)
+3874:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
      }
    }
 3875: 
+3876:         blocks = Rack_Alloc(size)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(__pyx_v_size); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3876, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3877:         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, 3877, __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, 3877, __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, 3877, __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, 3877, __pyx_L4_error)
      __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_tuple__66, __pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3877, __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, 3877, __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, 3877, __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, 3877, __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_1c_Rack_Delete_(__pyx_v_blocks, 0, SIZE_MAX); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3877, __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, 3877, __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, 3877, __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, 3877, __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, 3877, __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, 3877, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 3877, __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__66 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(0, 3877, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__66);
  __Pyx_GIVEREF(__pyx_tuple__66);
+3878:         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, 3878, __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, 3878, __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, 3878, __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, 3878, __pyx_L4_error)
      __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__67, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3878, __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, 3878, __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, 3878, __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, 3878, __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_1c_Rack_Delete_(__pyx_v_blocks, (__pyx_v_size + 1), 1); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3878, __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, 3878, __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, 3878, __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, 3878, __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, 3878, __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, 3878, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 3878, __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__67 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__67)) __PYX_ERR(0, 3878, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__67);
  __Pyx_GIVEREF(__pyx_tuple__67);
+3879:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3880: 
 3881:     finally:
+3882:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3883: 
 3884: 
+3885: def test_Rack_Clear():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_193test_Rack_Clear(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_192test_Rack_Clear[] = "test_Rack_Clear()";
static PyMethodDef __pyx_mdef_7_test_c_193test_Rack_Clear = {"test_Rack_Clear", (PyCFunction)__pyx_pw_7_test_c_193test_Rack_Clear, METH_NOARGS, __pyx_doc_7_test_c_192test_Rack_Clear};
static PyObject *__pyx_pw_7_test_c_193test_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_192test_Rack_Clear(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_192test_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__312 = PyTuple_Pack(1, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__312)) __PYX_ERR(0, 3885, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__312);
  __Pyx_GIVEREF(__pyx_tuple__312);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_193test_Rack_Clear, 0, __pyx_n_s_test_Rack_Clear, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__313)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3885, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Clear, __pyx_t_2) < 0) __PYX_ERR(0, 3885, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__313 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__312, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Clear, 3885, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__313)) __PYX_ERR(0, 3885, __pyx_L1_error)
 3886:     cdef:
+3887:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 3888: 
+3889:     try:
  /*try:*/ {
+3890:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3890, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3891:         blocks = Rack_Clear(blocks)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Clear(__pyx_v_blocks); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3891, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3892:         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, 3892, __pyx_L4_error)
      }
    }
    #endif
+3893:         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, 3893, __pyx_L4_error)
      }
    }
    #endif
+3894:         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, 3894, __pyx_L4_error)
      }
    }
    #endif
+3895:         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, 3895, __pyx_L4_error)
      }
    }
    #endif
+3896:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3896, __pyx_L4_error)
      }
    }
    #endif
+3897:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3898: 
+3899:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3900:         blocks = Rack_Clear(blocks)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Clear(__pyx_v_blocks); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 3900, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+3901:         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, 3901, __pyx_L4_error)
      }
    }
    #endif
+3902:         assert Rack_Length(blocks) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3902, __pyx_L4_error)
      }
    }
    #endif
+3903:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3904: 
 3905:     finally:
+3906:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3907: 
 3908: 
+3909: def test_Rack_At_First_Last():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_195test_Rack_At_First_Last(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_194test_Rack_At_First_Last[] = "test_Rack_At_First_Last()";
static PyMethodDef __pyx_mdef_7_test_c_195test_Rack_At_First_Last = {"test_Rack_At_First_Last", (PyCFunction)__pyx_pw_7_test_c_195test_Rack_At_First_Last, METH_NOARGS, __pyx_doc_7_test_c_194test_Rack_At_First_Last};
static PyObject *__pyx_pw_7_test_c_195test_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_194test_Rack_At_First_Last(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_194test_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__314 = PyTuple_Pack(3, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset); if (unlikely(!__pyx_tuple__314)) __PYX_ERR(0, 3909, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__314);
  __Pyx_GIVEREF(__pyx_tuple__314);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_195test_Rack_At_First_Last, 0, __pyx_n_s_test_Rack_At_First_Last, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__315)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3909, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_At_First_Last, __pyx_t_2) < 0) __PYX_ERR(0, 3909, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__315 = (PyObject*)__Pyx_PyCode_New(0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__314, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_At_First_Last, 3909, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__315)) __PYX_ERR(0, 3909, __pyx_L1_error)
 3910:     cdef:
+3911:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3912:         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, 3912, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3912, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3913:         size_t offset
 3914: 
+3915:     try:
  /*try:*/ {
+3916:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 3917: 
+3918:         assert Rack_First__(blocks) == blocks.blocks[blocks.start]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_First__(__pyx_v_blocks) == (__pyx_v_blocks->blocks[__pyx_v_blocks->start])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3918, __pyx_L4_error)
      }
    }
    #endif
+3919:         assert Rack_First_(blocks) == blocks.blocks[blocks.start]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_First_(__pyx_v_blocks) == (__pyx_v_blocks->blocks[__pyx_v_blocks->start])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3919, __pyx_L4_error)
      }
    }
    #endif
 3920: 
+3921:         assert Rack_Last__(blocks) == blocks.blocks[blocks.endex - 1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Last__(__pyx_v_blocks) == (__pyx_v_blocks->blocks[(__pyx_v_blocks->endex - 1)])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3921, __pyx_L4_error)
      }
    }
    #endif
+3922:         assert Rack_Last_(blocks) == blocks.blocks[blocks.endex - 1]
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Last_(__pyx_v_blocks) == (__pyx_v_blocks->blocks[(__pyx_v_blocks->endex - 1)])) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 3922, __pyx_L4_error)
      }
    }
    #endif
 3923: 
+3924:         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;
+3925:             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_1c_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, 3925, __pyx_L4_error)
        }
      }
      #endif
+3926:             assert Rack_At_(blocks, offset) == &blocks.blocks[blocks.start + offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_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, 3926, __pyx_L4_error)
        }
      }
      #endif
    }
  }
 3927: 
 3928:     finally:
+3929:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3930: 
 3931: 
+3932: 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;
  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__316 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__316)) __PYX_ERR(0, 3932, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__316);
  __Pyx_GIVEREF(__pyx_tuple__316);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_197test_Rack_Get_, 0, __pyx_n_s_test_Rack_Get, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__317)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3932, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Get, __pyx_t_2) < 0) __PYX_ERR(0, 3932, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__317 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__316, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Get, 3932, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__317)) __PYX_ERR(0, 3932, __pyx_L1_error)
 3933:     cdef:
+3934:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3935:         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, 3935, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3935, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3936:         size_t offset
+3937:         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;
 3938: 
+3939:     try:
  /*try:*/ {
+3940:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3941:         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;
+3942:             assert Rack_Get(blocks, offset) == blocks.blocks[blocks.start + offset]
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3942, __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, 3942, __pyx_L4_error)
        }
      }
      #endif
    }
+3943:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3944: 
+3945:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3946:         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, 3946, __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, 3946, __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, 3946, __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, 3946, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__68, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3946, __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, 3946, __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, 3946, __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, 3946, __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_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size + 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3946, __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, 3946, __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, 3946, __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, 3946, __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, 3946, __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, 3946, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3946, __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__68 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(0, 3946, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__68);
  __Pyx_GIVEREF(__pyx_tuple__68);
+3947:         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, 3947, __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, 3947, __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, 3947, __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, 3947, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__69, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3947, __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, 3947, __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, 3947, __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, 3947, __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_1c_Rack_Get(__pyx_v_blocks, 99); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3947, __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, 3947, __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, 3947, __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, 3947, __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, 3947, __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, 3947, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3947, __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__69 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(0, 3947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__69);
  __Pyx_GIVEREF(__pyx_tuple__69);
+3948:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3949: 
 3950:     finally:
+3951:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3952: 
 3953: 
+3954: def test_Rack_Get():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_199test_Rack_Get(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_198test_Rack_Get[] = "test_Rack_Get()";
static PyMethodDef __pyx_mdef_7_test_c_199test_Rack_Get = {"test_Rack_Get", (PyCFunction)__pyx_pw_7_test_c_199test_Rack_Get, METH_NOARGS, __pyx_doc_7_test_c_198test_Rack_Get};
static PyObject *__pyx_pw_7_test_c_199test_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_198test_Rack_Get(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_198test_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__318 = PyTuple_Pack(4, __pyx_n_s_blocks, __pyx_n_s_size, __pyx_n_s_offset, __pyx_n_s_match); if (unlikely(!__pyx_tuple__318)) __PYX_ERR(0, 3954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__318);
  __Pyx_GIVEREF(__pyx_tuple__318);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_199test_Rack_Get, 0, __pyx_n_s_test_Rack_Get_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__319)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Get_2, __pyx_t_2) < 0) __PYX_ERR(0, 3954, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__319 = (PyObject*)__Pyx_PyCode_New(0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__318, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Get_2, 3954, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__319)) __PYX_ERR(0, 3954, __pyx_L1_error)
 3955:     cdef:
+3956:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3957:         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, 3957, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3957, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3958:         ssize_t offset
+3959:         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;
 3960: 
+3961:     try:
  /*try:*/ {
+3962:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3963:         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;
+3964:             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_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3964, __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, 3964, __pyx_L4_error)
        }
      }
      #endif
    }
+3965:         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;
+3966:             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_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3966, __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, 3966, __pyx_L4_error)
        }
      }
      #endif
    }
+3967:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 3968: 
+3969:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3970:         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, 3970, __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, 3970, __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, 3970, __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, 3970, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__70, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3970, __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, 3970, __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, 3970, __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, 3970, __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_1c_Rack_Get(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) + 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3970, __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, 3970, __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, 3970, __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, 3970, __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, 3970, __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, 3970, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3970, __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__70 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__70)) __PYX_ERR(0, 3970, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__70);
  __Pyx_GIVEREF(__pyx_tuple__70);
+3971:         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, 3971, __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, 3971, __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, 3971, __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, 3971, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__71, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3971, __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, 3971, __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, 3971, __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, 3971, __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_1c_Rack_Get(__pyx_v_blocks, 99); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3971, __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, 3971, __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, 3971, __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, 3971, __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, 3971, __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, 3971, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3971, __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__71 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 3971, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__71);
  __Pyx_GIVEREF(__pyx_tuple__71);
+3972:         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, 3972, __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, 3972, __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, 3972, __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, 3972, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__72, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3972, __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, 3972, __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, 3972, __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, 3972, __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_1c_Rack_Get(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1)); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3972, __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, 3972, __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, 3972, __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, 3972, __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, 3972, __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, 3972, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 3972, __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__72 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 3972, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__72);
  __Pyx_GIVEREF(__pyx_tuple__72);
+3973:         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, 3973, __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, 3973, __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, 3973, __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, 3973, __pyx_L4_error)
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__73, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3973, __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, 3973, __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, 3973, __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, 3973, __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_1c_Rack_Get(__pyx_v_blocks, -99L); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 3973, __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, 3973, __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, 3973, __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, 3973, __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, 3973, __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, 3973, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 3973, __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__73 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__73)) __PYX_ERR(0, 3973, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__73);
  __Pyx_GIVEREF(__pyx_tuple__73);
+3974:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 3975: 
 3976:     finally:
+3977:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 3978: 
 3979: 
+3980: 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;
  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__320 = 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__320)) __PYX_ERR(0, 3980, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__320);
  __Pyx_GIVEREF(__pyx_tuple__320);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_201test_Rack_Set_, 0, __pyx_n_s_test_Rack_Set, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__321)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3980, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Set, __pyx_t_2) < 0) __PYX_ERR(0, 3980, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__321 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__320, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Set, 3980, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__321)) __PYX_ERR(0, 3980, __pyx_L1_error)
 3981:     cdef:
+3982:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+3983:         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, 3983, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 3983, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 3984:         size_t offset
 3985:         size_t offset2
+3986:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+3987:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
+3988:         Block_* block = NULL
  __pyx_v_block = NULL;
+3989:         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;
 3990: 
+3991:     try:
  /*try:*/ {
+3992:         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;
+3993:             blocks = create_template_rack()
      __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+3994:             backup2 = Rack_Get__(blocks, offset)
      __pyx_v_backup2 = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset);
+3995:             block = Block_Copy(backup2)
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_backup2); if (unlikely(__pyx_t_6 == ((Block_ *)NULL))) __PYX_ERR(0, 3995, __pyx_L4_error)
      __pyx_v_block = __pyx_t_6;
+3996:             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;
+3997:                 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);
      }
+3998:             Rack_Set_(blocks, offset, block, &backup)
      __pyx_t_11 = __pyx_f_11cbytesparse_1c_Rack_Set_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 3998, __pyx_L4_error)
+3999:             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, 3999, __pyx_L4_error)
        }
      }
      #endif
+4000:             assert Rack_Get__(blocks, offset) == block
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_offset) == __pyx_v_block) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 4000, __pyx_L4_error)
        }
      }
      #endif
+4001:             block = NULL  # invalidate pointer
      __pyx_v_block = NULL;
+4002:             backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4003:             blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
    }
 4004: 
+4005:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4006:         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, 4006, __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, 4006, __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, 4006, __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, 4006, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__74, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4006, __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, 4006, __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, 4006, __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, 4006, __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_1c_Rack_Set_(__pyx_v_blocks, (__pyx_v_size + 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4006, __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, 4006, __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, 4006, __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, 4006, __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, 4006, __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, 4006, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4006, __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__74 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(0, 4006, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__74);
  __Pyx_GIVEREF(__pyx_tuple__74);
+4007:         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, 4007, __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, 4007, __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, 4007, __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, 4007, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__75, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4007, __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, 4007, __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, 4007, __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, 4007, __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_1c_Rack_Set_(__pyx_v_blocks, 99, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4007, __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, 4007, __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, 4007, __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, 4007, __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, 4007, __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, 4007, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 4007, __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__75 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__75)) __PYX_ERR(0, 4007, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__75);
  __Pyx_GIVEREF(__pyx_tuple__75);
+4008:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4009: 
 4010:     finally:
+4011:         backup = Block_Free(backup)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4012:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4013: 
 4014: 
+4015: def test_Rack_Set():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_203test_Rack_Set(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_202test_Rack_Set[] = "test_Rack_Set()";
static PyMethodDef __pyx_mdef_7_test_c_203test_Rack_Set = {"test_Rack_Set", (PyCFunction)__pyx_pw_7_test_c_203test_Rack_Set, METH_NOARGS, __pyx_doc_7_test_c_202test_Rack_Set};
static PyObject *__pyx_pw_7_test_c_203test_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_202test_Rack_Set(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_202test_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__322 = 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__322)) __PYX_ERR(0, 4015, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__322);
  __Pyx_GIVEREF(__pyx_tuple__322);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_203test_Rack_Set, 0, __pyx_n_s_test_Rack_Set_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__323)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4015, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Set_2, __pyx_t_2) < 0) __PYX_ERR(0, 4015, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__323 = (PyObject*)__Pyx_PyCode_New(0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__322, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Set_2, 4015, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__323)) __PYX_ERR(0, 4015, __pyx_L1_error)
 4016:     cdef:
+4017:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4018:         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, 4018, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4018, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 4019:         ssize_t offset
 4020:         size_t offset2
+4021:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4022:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
+4023:         Block_* block = NULL
  __pyx_v_block = NULL;
+4024:         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;
 4025: 
+4026:     try:
  /*try:*/ {
+4027:         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;
+4028:             blocks = create_template_rack()
      __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4029:             backup2 = Rack_Get(blocks, offset)
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4029, __pyx_L4_error)
      __pyx_v_backup2 = __pyx_t_6;
+4030:             block = Block_Copy(backup2)
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Block_Copy(__pyx_v_backup2); if (unlikely(__pyx_t_6 == ((Block_ *)NULL))) __PYX_ERR(0, 4030, __pyx_L4_error)
      __pyx_v_block = __pyx_t_6;
+4031:             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;
+4032:                 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);
      }
+4033:             Rack_Set(blocks, offset, block, &backup)
      __pyx_t_11 = __pyx_f_11cbytesparse_1c_Rack_Set(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block, (&__pyx_v_backup)); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4033, __pyx_L4_error)
+4034:             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, 4034, __pyx_L4_error)
        }
      }
      #endif
+4035:             assert Rack_Get(blocks, offset) == block
      #ifndef CYTHON_WITHOUT_ASSERTIONS
      if (unlikely(!Py_OptimizeFlag)) {
        __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_6 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4035, __pyx_L4_error)
        if (unlikely(!((__pyx_t_6 == __pyx_v_block) != 0))) {
          PyErr_SetNone(PyExc_AssertionError);
          __PYX_ERR(0, 4035, __pyx_L4_error)
        }
      }
      #endif
+4036:             block = NULL  # invalidate pointer
      __pyx_v_block = NULL;
+4037:             backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4038:             blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
    }
 4039: 
+4040:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4041:         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, 4041, __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, 4041, __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, 4041, __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, 4041, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__76, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4041, __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, 4041, __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, 4041, __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, 4041, __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_1c_Rack_Set(__pyx_v_blocks, (((Py_ssize_t)__pyx_v_size) + 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4041, __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, 4041, __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, 4041, __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, 4041, __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, 4041, __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, 4041, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4041, __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__76 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__76)) __PYX_ERR(0, 4041, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__76);
  __Pyx_GIVEREF(__pyx_tuple__76);
+4042:         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, 4042, __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, 4042, __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, 4042, __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, 4042, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__77, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4042, __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, 4042, __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, 4042, __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, 4042, __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_1c_Rack_Set(__pyx_v_blocks, 99, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4042, __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, 4042, __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, 4042, __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, 4042, __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, 4042, __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, 4042, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 4042, __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__77 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__77)) __PYX_ERR(0, 4042, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__77);
  __Pyx_GIVEREF(__pyx_tuple__77);
+4043:         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, 4043, __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, 4043, __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, 4043, __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, 4043, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_tuple__78, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4043, __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, 4043, __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, 4043, __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, 4043, __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_1c_Rack_Set(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4043, __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, 4043, __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, 4043, __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, 4043, __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, 4043, __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, 4043, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 4043, __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__78 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__78)) __PYX_ERR(0, 4043, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__78);
  __Pyx_GIVEREF(__pyx_tuple__78);
+4044:         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, 4044, __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, 4044, __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, 4044, __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, 4044, __pyx_L4_error)
      __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__79, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4044, __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, 4044, __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, 4044, __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, 4044, __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_1c_Rack_Set(__pyx_v_blocks, -99L, NULL, NULL); if (unlikely(__pyx_t_11 == ((__pyx_t_11cbytesparse_1c_vint)-1))) __PYX_ERR(0, 4044, __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, 4044, __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, 4044, __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, 4044, __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, 4044, __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, 4044, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 4044, __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__79 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__79)) __PYX_ERR(0, 4044, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__79);
  __Pyx_GIVEREF(__pyx_tuple__79);
+4045:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4046: 
 4047:     finally:
+4048:         backup = Block_Free(backup)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4049:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4050: 
 4051: 
+4052: 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;
  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__324 = 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__324)) __PYX_ERR(0, 4052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__324);
  __Pyx_GIVEREF(__pyx_tuple__324);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_205test_Rack_Pop__, 0, __pyx_n_s_test_Rack_Pop, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__325)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop, __pyx_t_2) < 0) __PYX_ERR(0, 4052, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__325 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__324, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop, 4052, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__325)) __PYX_ERR(0, 4052, __pyx_L1_error)
 4053:     cdef:
+4054:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4055:         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, 4055, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4055, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4056:         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;
+4057:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4058:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4059:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4060: 
+4061:     try:
  /*try:*/ {
+4062:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4063:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4063, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4064:         blocks = Rack_Pop__(blocks, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop__(__pyx_v_blocks, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4064, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4065:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4065, __pyx_L4_error)
      }
    }
    #endif
+4066:         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, 4066, __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, 4066, __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;
+4067:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4067, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4067, __pyx_L4_error)
      }
    }
    #endif
+4068:         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, 4068, __pyx_L4_error)
      }
    }
    #endif
+4069:         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, 4069, __pyx_L4_error)
      }
    }
    #endif
+4070:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4071:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4072:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4073: 
+4074:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4074, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4075:         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, 4075, __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, 4075, __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, 4075, __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, 4075, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__80, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4075, __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, 4075, __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, 4075, __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, 4075, __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_1c_Rack_Pop__(__pyx_v_blocks, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4075, __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, 4075, __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, 4075, __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, 4075, __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, 4075, __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, 4075, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4075, __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, 4075, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__80);
  __Pyx_GIVEREF(__pyx_tuple__80);
+4076:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4077: 
 4078:     finally:
+4079:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4080:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4081:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4082: 
 4083: 
+4084: 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;
  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__326 = 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__326)) __PYX_ERR(0, 4084, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__326);
  __Pyx_GIVEREF(__pyx_tuple__326);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_207test_Rack_Pop_, 0, __pyx_n_s_test_Rack_Pop_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__327)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4084, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop_2, __pyx_t_2) < 0) __PYX_ERR(0, 4084, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__327 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__326, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop_2, 4084, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__327)) __PYX_ERR(0, 4084, __pyx_L1_error)
 4085:     cdef:
+4086:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4087:         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, 4087, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4087, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4088:         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;
+4089:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4090:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4091:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4092:         size_t offset
 4093: 
+4094:     try:
  /*try:*/ {
+4095:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4096:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4096, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4097:         blocks = Rack_Pop_(blocks, size - 1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop_(__pyx_v_blocks, (__pyx_v_size - 1), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4097, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4098:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4098, __pyx_L4_error)
      }
    }
    #endif
+4099:         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, 4099, __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, 4099, __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;
+4100:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4100, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4100, __pyx_L4_error)
      }
    }
    #endif
+4101:         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, 4101, __pyx_L4_error)
      }
    }
    #endif
+4102:         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, 4102, __pyx_L4_error)
      }
    }
    #endif
+4103:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4104:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4105:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4106: 
+4107:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4108:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4108, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4109:         blocks = Rack_Pop_(blocks, 0, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop_(__pyx_v_blocks, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4109, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4110:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4110, __pyx_L4_error)
      }
    }
    #endif
+4111:         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, 4111, __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, 4111, __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;
+4112:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4112, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4112, __pyx_L4_error)
      }
    }
    #endif
+4113:         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, 4113, __pyx_L4_error)
      }
    }
    #endif
+4114:         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, 4114, __pyx_L4_error)
      }
    }
    #endif
+4115:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4116:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4117:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4118: 
+4119:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+4120:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4121:         backup2 = Rack_Get(blocks, offset)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, __pyx_v_offset); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4121, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4122:         blocks = Rack_Pop_(blocks, offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop_(__pyx_v_blocks, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4122, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4123:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4123, __pyx_L4_error)
      }
    }
    #endif
+4124:         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, 4124, __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, 4124, __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, 4124, __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, 4124, __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, 4124, __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;
+4125:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4125, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4125, __pyx_L4_error)
      }
    }
    #endif
+4126:         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, 4126, __pyx_L4_error)
      }
    }
    #endif
+4127:         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, 4127, __pyx_L4_error)
      }
    }
    #endif
+4128:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4129:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4130:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4131: 
+4132:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4132, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4133:         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, 4133, __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, 4133, __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, 4133, __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, 4133, __pyx_L4_error)
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__81, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4133, __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, 4133, __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, 4133, __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, 4133, __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_1c_Rack_Pop_(__pyx_v_blocks, 0, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4133, __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, 4133, __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, 4133, __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, 4133, __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, 4133, __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, 4133, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4133, __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__81 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__81)) __PYX_ERR(0, 4133, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__81);
  __Pyx_GIVEREF(__pyx_tuple__81);
+4134:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4135: 
+4136:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4137:         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, 4137, __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, 4137, __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, 4137, __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, 4137, __pyx_L4_error)
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__82, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4137, __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, 4137, __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, 4137, __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, 4137, __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_1c_Rack_Pop_(__pyx_v_blocks, __pyx_v_size, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4137, __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, 4137, __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, 4137, __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, 4137, __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, 4137, __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, 4137, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4137, __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__82 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__82)) __PYX_ERR(0, 4137, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__82);
  __Pyx_GIVEREF(__pyx_tuple__82);
+4138:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4139: 
 4140:     finally:
+4141:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4142:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4143:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4144: 
 4145: 
+4146: def test_Rack_Pop():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_209test_Rack_Pop(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_208test_Rack_Pop[] = "test_Rack_Pop()";
static PyMethodDef __pyx_mdef_7_test_c_209test_Rack_Pop = {"test_Rack_Pop", (PyCFunction)__pyx_pw_7_test_c_209test_Rack_Pop, METH_NOARGS, __pyx_doc_7_test_c_208test_Rack_Pop};
static PyObject *__pyx_pw_7_test_c_209test_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_208test_Rack_Pop(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_208test_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__328 = 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__328)) __PYX_ERR(0, 4146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__328);
  __Pyx_GIVEREF(__pyx_tuple__328);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_209test_Rack_Pop, 0, __pyx_n_s_test_Rack_Pop_3, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__329)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Pop_3, __pyx_t_2) < 0) __PYX_ERR(0, 4146, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__329 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__328, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Pop_3, 4146, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__329)) __PYX_ERR(0, 4146, __pyx_L1_error)
 4147:     cdef:
+4148:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4149:         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, 4149, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4149, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4150:         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;
+4151:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4152:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4153:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4154:         ssize_t offset
 4155: 
+4156:     try:
  /*try:*/ {
+4157:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4158:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4158, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4159:         blocks = Rack_Pop(blocks, <ssize_t>size - 1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_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, 4159, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4160:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4160, __pyx_L4_error)
      }
    }
    #endif
+4161:         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, 4161, __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, 4161, __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;
+4162:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4162, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4162, __pyx_L4_error)
      }
    }
    #endif
+4163:         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, 4163, __pyx_L4_error)
      }
    }
    #endif
+4164:         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, 4164, __pyx_L4_error)
      }
    }
    #endif
+4165:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4166:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4167:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4168: 
+4169:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4170:         backup2 = Rack_Get(blocks, size - 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4170, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4171:         blocks = Rack_Pop(blocks, -1, &backup)  # final
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop(__pyx_v_blocks, -1L, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4171, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4172:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4172, __pyx_L4_error)
      }
    }
    #endif
+4173:         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, 4173, __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, 4173, __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;
+4174:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4174, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4174, __pyx_L4_error)
      }
    }
    #endif
+4175:         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, 4175, __pyx_L4_error)
      }
    }
    #endif
+4176:         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, 4176, __pyx_L4_error)
      }
    }
    #endif
+4177:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4178:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4179:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4180: 
+4181:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4182:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4182, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4183:         blocks = Rack_Pop(blocks, 0, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop(__pyx_v_blocks, 0, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4183, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4184:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4184, __pyx_L4_error)
      }
    }
    #endif
+4185:         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, 4185, __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, 4185, __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;
+4186:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4186, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4186, __pyx_L4_error)
      }
    }
    #endif
+4187:         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, 4187, __pyx_L4_error)
      }
    }
    #endif
+4188:         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, 4188, __pyx_L4_error)
      }
    }
    #endif
+4189:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4190:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4191:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4192: 
+4193:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4194:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4194, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4195:         blocks = Rack_Pop(blocks, -<ssize_t>size, &backup)  # initial
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop(__pyx_v_blocks, (-((Py_ssize_t)__pyx_v_size)), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4195, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4196:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4196, __pyx_L4_error)
      }
    }
    #endif
+4197:         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, 4197, __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, 4197, __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;
+4198:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4198, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4198, __pyx_L4_error)
      }
    }
    #endif
+4199:         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, 4199, __pyx_L4_error)
      }
    }
    #endif
+4200:         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, 4200, __pyx_L4_error)
      }
    }
    #endif
+4201:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4202:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4203:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4204: 
+4205:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4206:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4207:         backup2 = Rack_Get(blocks, size >> 1)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size >> 1)); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4207, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4208:         blocks = Rack_Pop(blocks, offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop(__pyx_v_blocks, __pyx_v_offset, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4208, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4209:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4209, __pyx_L4_error)
      }
    }
    #endif
+4210:         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, 4210, __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, 4210, __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, 4210, __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, 4210, __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, 4210, __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;
+4211:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4211, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4211, __pyx_L4_error)
      }
    }
    #endif
+4212:         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, 4212, __pyx_L4_error)
      }
    }
    #endif
+4213:         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, 4213, __pyx_L4_error)
      }
    }
    #endif
+4214:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4215:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4216:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4217: 
+4218:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4219:         blocks =create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4220:         backup2 = Rack_Get(blocks, size - (size >> 1))
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, (__pyx_v_size - (__pyx_v_size >> 1))); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4220, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4221:         blocks = Rack_Pop(blocks, -offset, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Pop(__pyx_v_blocks, (-__pyx_v_offset), (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4221, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4222:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4222, __pyx_L4_error)
      }
    }
    #endif
+4223:         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, 4223, __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, 4223, __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, 4223, __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, 4223, __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, 4223, __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;
+4224:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4224, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4224, __pyx_L4_error)
      }
    }
    #endif
+4225:         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, 4225, __pyx_L4_error)
      }
    }
    #endif
+4226:         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, 4226, __pyx_L4_error)
      }
    }
    #endif
+4227:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4228:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4229:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4230: 
+4231:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4231, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4232:         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, 4232, __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, 4232, __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, 4232, __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, 4232, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__83, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4232, __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, 4232, __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, 4232, __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, 4232, __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_1c_Rack_Pop(__pyx_v_blocks, 0, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4232, __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, 4232, __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, 4232, __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, 4232, __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, 4232, __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, 4232, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4232, __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__83 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__83)) __PYX_ERR(0, 4232, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__83);
  __Pyx_GIVEREF(__pyx_tuple__83);
+4233:         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, 4233, __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, 4233, __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, 4233, __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, 4233, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__84, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4233, __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, 4233, __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, 4233, __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, 4233, __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_1c_Rack_Pop(__pyx_v_blocks, -1L, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4233, __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, 4233, __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, 4233, __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, 4233, __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, 4233, __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, 4233, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4233, __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__84 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(0, 4233, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__84);
  __Pyx_GIVEREF(__pyx_tuple__84);
+4234:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4235: 
+4236:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4237:         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, 4237, __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, 4237, __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, 4237, __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, 4237, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__85, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4237, __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, 4237, __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, 4237, __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, 4237, __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_1c_Rack_Pop(__pyx_v_blocks, __pyx_v_size, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4237, __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, 4237, __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, 4237, __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, 4237, __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, 4237, __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, 4237, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4237, __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__85 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__85)) __PYX_ERR(0, 4237, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__85);
  __Pyx_GIVEREF(__pyx_tuple__85);
+4238:         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, 4238, __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, 4238, __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, 4238, __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, 4238, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__86, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4238, __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, 4238, __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, 4238, __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, 4238, __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_1c_Rack_Pop(__pyx_v_blocks, ((-((Py_ssize_t)__pyx_v_size)) - 1), NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4238, __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, 4238, __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, 4238, __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, 4238, __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, 4238, __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, 4238, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 4238, __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__86 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(0, 4238, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__86);
  __Pyx_GIVEREF(__pyx_tuple__86);
+4239:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4240: 
 4241:     finally:
+4242:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4243:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4244:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4245: 
 4246: 
+4247: def test_Rack_PopLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_211test_Rack_PopLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_210test_Rack_PopLeft[] = "test_Rack_PopLeft()";
static PyMethodDef __pyx_mdef_7_test_c_211test_Rack_PopLeft = {"test_Rack_PopLeft", (PyCFunction)__pyx_pw_7_test_c_211test_Rack_PopLeft, METH_NOARGS, __pyx_doc_7_test_c_210test_Rack_PopLeft};
static PyObject *__pyx_pw_7_test_c_211test_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_210test_Rack_PopLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_210test_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__330 = 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__330)) __PYX_ERR(0, 4247, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__330);
  __Pyx_GIVEREF(__pyx_tuple__330);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_211test_Rack_PopLeft, 0, __pyx_n_s_test_Rack_PopLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__331)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4247, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_PopLeft, __pyx_t_2) < 0) __PYX_ERR(0, 4247, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__331 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__330, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_PopLeft, 4247, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__331)) __PYX_ERR(0, 4247, __pyx_L1_error)
 4248:     cdef:
+4249:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4250:         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, 4250, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4250, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4251:         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;
+4252:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4253:         Block_* backup = NULL
  __pyx_v_backup = NULL;
+4254:         Block_* backup2 = NULL
  __pyx_v_backup2 = NULL;
 4255: 
+4256:     try:
  /*try:*/ {
+4257:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4258:         backup2 = Rack_Get(blocks, 0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Get(__pyx_v_blocks, 0); if (unlikely(__pyx_t_3 == ((Block_ *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 4258, __pyx_L4_error)
    __pyx_v_backup2 = __pyx_t_3;
+4259:         blocks = Rack_PopLeft(blocks, &backup)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_PopLeft(__pyx_v_blocks, (&__pyx_v_backup)); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4259, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4260:         assert Rack_Length(blocks) == size - 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size - 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4260, __pyx_L4_error)
      }
    }
    #endif
+4261:         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, 4261, __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, 4261, __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;
+4262:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_5 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 4262, __pyx_L4_error)
      if (unlikely(!((__pyx_t_5 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4262, __pyx_L4_error)
      }
    }
    #endif
+4263:         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, 4263, __pyx_L4_error)
      }
    }
    #endif
+4264:         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, 4264, __pyx_L4_error)
      }
    }
    #endif
+4265:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4266:         backup = Block_Free(backup)
    __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4267:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4268: 
+4269:         blocks = Rack_Alloc(0)
    __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4269, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_4;
+4270:         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, 4270, __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, 4270, __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, 4270, __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, 4270, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__87, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4270, __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, 4270, __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, 4270, __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, 4270, __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_1c_Rack_PopLeft(__pyx_v_blocks, NULL); if (unlikely(__pyx_t_4 == ((Rack_ *)NULL))) __PYX_ERR(0, 4270, __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, 4270, __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, 4270, __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, 4270, __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, 4270, __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, 4270, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4270, __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__87 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__87)) __PYX_ERR(0, 4270, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__87);
  __Pyx_GIVEREF(__pyx_tuple__87);
+4271:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4272: 
 4273:     finally:
+4274:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4275:         backup = Block_Free(backup)
      __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
/* … */
        __pyx_v_backup = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_backup);
+4276:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4277: 
 4278: 
+4279: 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;
  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__332 = 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__332)) __PYX_ERR(0, 4279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__332);
  __Pyx_GIVEREF(__pyx_tuple__332);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_213test_Rack_Insert_, 0, __pyx_n_s_test_Rack_Insert, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__333)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Insert, __pyx_t_2) < 0) __PYX_ERR(0, 4279, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__333 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__332, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Insert, 4279, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__333)) __PYX_ERR(0, 4279, __pyx_L1_error)
 4280:     cdef:
+4281:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4282:         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, 4282, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4282, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4283:         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;
+4284:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4285:         Block_* block = NULL
  __pyx_v_block = NULL;
 4286:         size_t offset
 4287: 
+4288:     try:
  /*try:*/ {
+4289:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4289, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4290:         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, 4290, __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, 4290, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4290, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4291:         blocks = Rack_Insert_(blocks, 0, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert_(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4291, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4292:         block = NULL
    __pyx_v_block = NULL;
+4293:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4293, __pyx_L4_error)
      }
    }
    #endif
+4294:         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;
+4295:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4295, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4295, __pyx_L4_error)
      }
    }
    #endif
+4296:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4297:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4298: 
+4299:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4300:         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, 4300, __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, 4300, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4300, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4301:         blocks = Rack_Insert_(blocks, 0, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert_(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4301, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4302:         block = NULL
    __pyx_v_block = NULL;
+4303:         assert Rack_Length(blocks) == 1 + size
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (1 + __pyx_v_size)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4303, __pyx_L4_error)
      }
    }
    #endif
+4304:         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, 4304, __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;
+4305:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4305, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4305, __pyx_L4_error)
      }
    }
    #endif
+4306:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4307:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4308: 
+4309:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4310:         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, 4310, __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, 4310, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4310, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4311:         blocks = Rack_Insert_(blocks, size, block)  # after
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert_(__pyx_v_blocks, __pyx_v_size, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4311, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4312:         block = NULL
    __pyx_v_block = NULL;
+4313:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4313, __pyx_L4_error)
      }
    }
    #endif
+4314:         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, 4314, __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;
+4315:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4315, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4315, __pyx_L4_error)
      }
    }
    #endif
+4316:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4317:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4318: 
+4319:         offset = size >> 1  # half
    __pyx_v_offset = (__pyx_v_size >> 1);
+4320:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4321:         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, 4321, __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, 4321, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4321, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4322:         blocks = Rack_Insert_(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert_(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4322, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4323:         block = NULL
    __pyx_v_block = NULL;
+4324:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4324, __pyx_L4_error)
      }
    }
    #endif
+4325:         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, 4325, __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, 4325, __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, 4325, __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, 4325, __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, 4325, __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, 4325, __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;
+4326:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4326, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4326, __pyx_L4_error)
      }
    }
    #endif
+4327:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4328:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4329: 
+4330:         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, 4330, __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, 4330, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4330, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4331:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4331, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4332:         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, 4332, __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, 4332, __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, 4332, __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, 4332, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__88, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4332, __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, 4332, __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, 4332, __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, 4332, __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_1c_Rack_Insert_(__pyx_v_blocks, 1, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4332, __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, 4332, __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, 4332, __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, 4332, __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, 4332, __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, 4332, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 4332, __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__88 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(0, 4332, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__88);
  __Pyx_GIVEREF(__pyx_tuple__88);
+4333:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4334: 
+4335:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4336:         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, 4336, __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, 4336, __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, 4336, __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, 4336, __pyx_L4_error)
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_tuple__89, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4336, __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, 4336, __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, 4336, __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, 4336, __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_1c_Rack_Insert_(__pyx_v_blocks, (__pyx_v_size + 1), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4336, __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, 4336, __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, 4336, __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, 4336, __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, 4336, __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, 4336, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 4336, __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__89 = PyTuple_Pack(1, __pyx_builtin_IndexError); if (unlikely(!__pyx_tuple__89)) __PYX_ERR(0, 4336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__89);
  __Pyx_GIVEREF(__pyx_tuple__89);
+4337:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4338: 
 4339:     finally:
+4340:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4341:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
+4342:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4343: 
 4344: 
+4345: def test_Rack_Insert():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_215test_Rack_Insert(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_214test_Rack_Insert[] = "test_Rack_Insert()";
static PyMethodDef __pyx_mdef_7_test_c_215test_Rack_Insert = {"test_Rack_Insert", (PyCFunction)__pyx_pw_7_test_c_215test_Rack_Insert, METH_NOARGS, __pyx_doc_7_test_c_214test_Rack_Insert};
static PyObject *__pyx_pw_7_test_c_215test_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_214test_Rack_Insert(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_214test_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__334 = 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__334)) __PYX_ERR(0, 4345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__334);
  __Pyx_GIVEREF(__pyx_tuple__334);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_215test_Rack_Insert, 0, __pyx_n_s_test_Rack_Insert_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__335)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Insert_2, __pyx_t_2) < 0) __PYX_ERR(0, 4345, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__335 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__334, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Insert_2, 4345, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__335)) __PYX_ERR(0, 4345, __pyx_L1_error)
 4346:     cdef:
+4347:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4348:         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, 4348, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4348, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4349:         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;
+4350:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4351:         Block_* block = NULL
  __pyx_v_block = NULL;
 4352:         ssize_t offset
 4353: 
+4354:     try:
  /*try:*/ {
+4355:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4355, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4356:         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, 4356, __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, 4356, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4356, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4357:         blocks = Rack_Insert(blocks, 0, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4357, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4358:         block = NULL
    __pyx_v_block = NULL;
+4359:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4359, __pyx_L4_error)
      }
    }
    #endif
+4360:         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;
+4361:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4361, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4361, __pyx_L4_error)
      }
    }
    #endif
+4362:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4363:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4364: 
+4365:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4365, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4366:         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, 4366, __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, 4366, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4366, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4367:         blocks = Rack_Insert(blocks, -1, block)  # before, over
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, -1L, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4367, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4368:         block = NULL
    __pyx_v_block = NULL;
+4369:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4369, __pyx_L4_error)
      }
    }
    #endif
+4370:         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;
+4371:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4371, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4371, __pyx_L4_error)
      }
    }
    #endif
+4372:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4373:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4374: 
+4375:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4375, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4376:         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, 4376, __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, 4376, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4376, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4377:         blocks = Rack_Insert(blocks, 1, block)  # after, over
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, 1, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4377, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4378:         block = NULL
    __pyx_v_block = NULL;
+4379:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4379, __pyx_L4_error)
      }
    }
    #endif
+4380:         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;
+4381:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4381, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4381, __pyx_L4_error)
      }
    }
    #endif
+4382:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4383:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4384: 
+4385:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4386:         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, 4386, __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, 4386, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4386, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4387:         blocks = Rack_Insert(blocks, 0, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, 0, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4387, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4388:         block = NULL
    __pyx_v_block = NULL;
+4389:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4389, __pyx_L4_error)
      }
    }
    #endif
+4390:         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, 4390, __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;
+4391:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4391, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4391, __pyx_L4_error)
      }
    }
    #endif
+4392:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4393:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4394: 
+4395:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4396:         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, 4396, __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, 4396, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4396, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4397:         blocks = Rack_Insert(blocks, -<ssize_t>size, block)  # before
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, (-((Py_ssize_t)__pyx_v_size)), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4397, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4398:         block = NULL
    __pyx_v_block = NULL;
+4399:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4399, __pyx_L4_error)
      }
    }
    #endif
+4400:         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, 4400, __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;
+4401:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4401, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4401, __pyx_L4_error)
      }
    }
    #endif
+4402:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4403:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4404: 
+4405:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4406:         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, 4406, __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, 4406, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4406, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4407:         blocks = Rack_Insert(blocks, -<ssize_t>size - 1, block)  # before, over
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_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, 4407, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4408:         block = NULL
    __pyx_v_block = NULL;
+4409:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4409, __pyx_L4_error)
      }
    }
    #endif
+4410:         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, 4410, __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;
+4411:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4411, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4411, __pyx_L4_error)
      }
    }
    #endif
+4412:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4413:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4414: 
+4415:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4416:         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, 4416, __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, 4416, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4416, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4417:         blocks = Rack_Insert(blocks, <ssize_t>size, block)  # after
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, ((Py_ssize_t)__pyx_v_size), __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4417, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4418:         block = NULL
    __pyx_v_block = NULL;
+4419:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4419, __pyx_L4_error)
      }
    }
    #endif
+4420:         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, 4420, __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;
+4421:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4421, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4421, __pyx_L4_error)
      }
    }
    #endif
+4422:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4423:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4424: 
+4425:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4426:         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, 4426, __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, 4426, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4426, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4427:         blocks = Rack_Insert(blocks, <ssize_t>size + 1, block)  # after, over
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_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, 4427, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4428:         block = NULL
    __pyx_v_block = NULL;
+4429:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4429, __pyx_L4_error)
      }
    }
    #endif
+4430:         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, 4430, __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;
+4431:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4431, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4431, __pyx_L4_error)
      }
    }
    #endif
+4432:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4433:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4434: 
+4435:         offset = <ssize_t>(size >> 1)  # half
    __pyx_v_offset = ((Py_ssize_t)(__pyx_v_size >> 1));
+4436:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4437:         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, 4437, __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, 4437, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4437, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4438:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4438, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4439:         block = NULL
    __pyx_v_block = NULL;
+4440:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4440, __pyx_L4_error)
      }
    }
    #endif
+4441:         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, 4441, __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, 4441, __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, 4441, __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, 4441, __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, 4441, __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, 4441, __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;
+4442:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4442, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4442, __pyx_L4_error)
      }
    }
    #endif
+4443:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4444:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4445: 
+4446:         offset = -<ssize_t>(size >> 1)  # half
    __pyx_v_offset = (-((Py_ssize_t)(__pyx_v_size >> 1)));
+4447:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4448:         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, 4448, __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, 4448, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4448, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4449:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4449, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4450:         block = NULL
    __pyx_v_block = NULL;
+4451:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4451, __pyx_L4_error)
      }
    }
    #endif
+4452:         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, 4452, __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, 4452, __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, 4452, __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, 4452, __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, 4452, __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, 4452, __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;
+4453:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4453, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4453, __pyx_L4_error)
      }
    }
    #endif
+4454:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4455:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4456: 
+4457:         offset = -1  # before end
    __pyx_v_offset = -1L;
+4458:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4459:         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, 4459, __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, 4459, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4459, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4460:         blocks = Rack_Insert(blocks, offset, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Insert(__pyx_v_blocks, __pyx_v_offset, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4460, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4461:         block = NULL
    __pyx_v_block = NULL;
+4462:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4462, __pyx_L4_error)
      }
    }
    #endif
+4463:         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, 4463, __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, 4463, __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, 4463, __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, 4463, __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, 4463, __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, 4463, __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;
+4464:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4464, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4464, __pyx_L4_error)
      }
    }
    #endif
+4465:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4466:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4467: 
 4468:     finally:
+4469:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4470:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
+4471:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4472: 
 4473: 
+4474: def test_Rack_Append():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_217test_Rack_Append(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_216test_Rack_Append[] = "test_Rack_Append()";
static PyMethodDef __pyx_mdef_7_test_c_217test_Rack_Append = {"test_Rack_Append", (PyCFunction)__pyx_pw_7_test_c_217test_Rack_Append, METH_NOARGS, __pyx_doc_7_test_c_216test_Rack_Append};
static PyObject *__pyx_pw_7_test_c_217test_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_216test_Rack_Append(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_216test_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__336 = 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__336)) __PYX_ERR(0, 4474, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__336);
  __Pyx_GIVEREF(__pyx_tuple__336);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_217test_Rack_Append, 0, __pyx_n_s_test_Rack_Append, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__337)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4474, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Append, __pyx_t_2) < 0) __PYX_ERR(0, 4474, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__337 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__336, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Append, 4474, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__337)) __PYX_ERR(0, 4474, __pyx_L1_error)
 4475:     cdef:
+4476:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4477:         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, 4477, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4477, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4478:         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;
+4479:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4480:         Block_* block = NULL
  __pyx_v_block = NULL;
 4481:         size_t offset
 4482: 
+4483:     try:
  /*try:*/ {
+4484:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4484, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4485:         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, 4485, __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, 4485, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4485, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4486:         blocks = Rack_Append(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Append(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4486, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4487:         block = NULL
    __pyx_v_block = NULL;
+4488:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4488, __pyx_L4_error)
      }
    }
    #endif
+4489:         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;
+4490:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4490, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4490, __pyx_L4_error)
      }
    }
    #endif
+4491:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4492:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4493: 
+4494:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4495:         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, 4495, __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, 4495, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4495, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4496:         blocks = Rack_Append(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Append(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4496, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4497:         block = NULL
    __pyx_v_block = NULL;
+4498:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4498, __pyx_L4_error)
      }
    }
    #endif
+4499:         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, 4499, __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;
+4500:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4500, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4500, __pyx_L4_error)
      }
    }
    #endif
+4501:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4502:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4503: 
 4504:     finally:
+4505:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4506:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
+4507:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4508: 
 4509: 
+4510: def test_Rack_AppendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_219test_Rack_AppendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_218test_Rack_AppendLeft[] = "test_Rack_AppendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_219test_Rack_AppendLeft = {"test_Rack_AppendLeft", (PyCFunction)__pyx_pw_7_test_c_219test_Rack_AppendLeft, METH_NOARGS, __pyx_doc_7_test_c_218test_Rack_AppendLeft};
static PyObject *__pyx_pw_7_test_c_219test_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_218test_Rack_AppendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_218test_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__338 = 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__338)) __PYX_ERR(0, 4510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__338);
  __Pyx_GIVEREF(__pyx_tuple__338);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_219test_Rack_AppendLeft, 0, __pyx_n_s_test_Rack_AppendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__339)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_AppendLeft, __pyx_t_2) < 0) __PYX_ERR(0, 4510, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__339 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__338, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_AppendLeft, 4510, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__339)) __PYX_ERR(0, 4510, __pyx_L1_error)
 4511:     cdef:
+4512:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4513:         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, 4513, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4513, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
+4514:         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;
+4515:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4516:         Block_* block = NULL
  __pyx_v_block = NULL;
 4517:         size_t offset
 4518: 
+4519:     try:
  /*try:*/ {
+4520:         blocks = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4520, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4521:         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, 4521, __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, 4521, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4521, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4522:         blocks = Rack_AppendLeft(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_AppendLeft(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4522, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4523:         block = NULL
    __pyx_v_block = NULL;
+4524:         assert Rack_Length(blocks) == 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4524, __pyx_L4_error)
      }
    }
    #endif
+4525:         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;
+4526:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4526, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4526, __pyx_L4_error)
      }
    }
    #endif
+4527:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4528:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
 4529: 
+4530:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4531:         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, 4531, __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, 4531, __pyx_L4_error)
    __pyx_t_5 = __pyx_f_11cbytesparse_1c_Block_Create(0x1234, __pyx_v_7_test_c_SIZE1, __pyx_t_4); if (unlikely(__pyx_t_5 == ((Block_ *)NULL))) __PYX_ERR(0, 4531, __pyx_L4_error)
    __pyx_v_block = __pyx_t_5;
+4532:         blocks = Rack_AppendLeft(blocks, block)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_AppendLeft(__pyx_v_blocks, __pyx_v_block); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4532, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_3;
+4533:         block = NULL
    __pyx_v_block = NULL;
+4534:         assert Rack_Length(blocks) == size + 1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == (__pyx_v_size + 1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4534, __pyx_L4_error)
      }
    }
    #endif
+4535:         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, 4535, __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;
+4536:         assert Rack_Eq(blocks, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_6 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 4536, __pyx_L4_error)
      if (unlikely(!((__pyx_t_6 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4536, __pyx_L4_error)
      }
    }
    #endif
+4537:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4538:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4539: 
 4540:     finally:
+4541:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4542:         block = Block_Free(block)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
/* … */
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Block_Free(__pyx_v_block);
+4543:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4544: 
 4545: 
+4546: 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__340 = 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__340)) __PYX_ERR(0, 4546, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__340);
  __Pyx_GIVEREF(__pyx_tuple__340);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_221test_Rack_Extend_, 0, __pyx_n_s_test_Rack_Extend, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__341)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4546, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Extend, __pyx_t_2) < 0) __PYX_ERR(0, 4546, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__341 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__340, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Extend, 4546, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__341)) __PYX_ERR(0, 4546, __pyx_L1_error)
 4547:     cdef:
+4548:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4549:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4550:         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, 4550, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4550, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4551:         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, 4551, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4551, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4552:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4553: 
+4554:     try:
  /*try:*/ {
+4555:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4555, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4556:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4557:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4557, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4558:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4558, __pyx_L4_error)
      }
    }
    #endif
+4559:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4560:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4560, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4560, __pyx_L4_error)
      }
    }
    #endif
+4561:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4562:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4563:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4564: 
+4565:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4566:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4567:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4567, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4568:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4568, __pyx_L4_error)
      }
    }
    #endif
+4569:         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;
+4570:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4570, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4570, __pyx_L4_error)
      }
    }
    #endif
+4571:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4572:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4573:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4574: 
+4575:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4575, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4576:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4577:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4577, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4578:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4578, __pyx_L4_error)
      }
    }
    #endif
+4579:         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;
+4580:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4580, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4580, __pyx_L4_error)
      }
    }
    #endif
+4581:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4582:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4583:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4584: 
+4585:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4586:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4587:         blocks1 = Rack_Extend_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4587, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4588:         assert Rack_Length(blocks1) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4588, __pyx_L4_error)
      }
    }
    #endif
+4589:         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, 4589, __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;
+4590:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4590, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4590, __pyx_L4_error)
      }
    }
    #endif
+4591:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4592:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4593:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
  }
 4594: 
 4595:     finally:
+4596:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4597:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4598:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4599: 
 4600: 
+4601: def test_Rack_Extend():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_223test_Rack_Extend(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_222test_Rack_Extend[] = "test_Rack_Extend()";
static PyMethodDef __pyx_mdef_7_test_c_223test_Rack_Extend = {"test_Rack_Extend", (PyCFunction)__pyx_pw_7_test_c_223test_Rack_Extend, METH_NOARGS, __pyx_doc_7_test_c_222test_Rack_Extend};
static PyObject *__pyx_pw_7_test_c_223test_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_222test_Rack_Extend(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_222test_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__342 = 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__342)) __PYX_ERR(0, 4601, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__342);
  __Pyx_GIVEREF(__pyx_tuple__342);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_223test_Rack_Extend, 0, __pyx_n_s_test_Rack_Extend_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__343)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4601, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_Extend_2, __pyx_t_2) < 0) __PYX_ERR(0, 4601, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__343 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__342, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_Extend_2, 4601, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__343)) __PYX_ERR(0, 4601, __pyx_L1_error)
 4602:     cdef:
+4603:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4604:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4605:         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, 4605, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4605, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4606:         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, 4606, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4606, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4607:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4608: 
+4609:     try:
  /*try:*/ {
+4610:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4610, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4611:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4612:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4612, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4613:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4613, __pyx_L4_error)
      }
    }
    #endif
+4614:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4615:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4615, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4615, __pyx_L4_error)
      }
    }
    #endif
+4616:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4617:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4618:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4619: 
+4620:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4621:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4622:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4622, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4623:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4623, __pyx_L4_error)
      }
    }
    #endif
+4624:         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;
+4625:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4625, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4625, __pyx_L4_error)
      }
    }
    #endif
+4626:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4627:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4628:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4629: 
+4630:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4630, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4631:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4632:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4632, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4633:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4633, __pyx_L4_error)
      }
    }
    #endif
+4634:         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;
+4635:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4635, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4635, __pyx_L4_error)
      }
    }
    #endif
+4636:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4637:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4638:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4639: 
+4640:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4641:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4642:         blocks1 = Rack_Extend(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Extend(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4642, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4643:         assert Rack_Length(blocks1) == size1 + size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size1 + __pyx_v_size2)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4643, __pyx_L4_error)
      }
    }
    #endif
+4644:         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, 4644, __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;
+4645:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4645, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4645, __pyx_L4_error)
      }
    }
    #endif
+4646:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4647:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4648:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
  }
 4649: 
 4650:     finally:
+4651:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4652:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4653:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4654: 
 4655: 
+4656: 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__344 = 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__344)) __PYX_ERR(0, 4656, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__344);
  __Pyx_GIVEREF(__pyx_tuple__344);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_225test_Rack_ExtendLeft_, 0, __pyx_n_s_test_Rack_ExtendLeft, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__345)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4656, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ExtendLeft, __pyx_t_2) < 0) __PYX_ERR(0, 4656, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__345 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__344, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ExtendLeft, 4656, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__345)) __PYX_ERR(0, 4656, __pyx_L1_error)
 4657:     cdef:
+4658:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4659:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4660:         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, 4660, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4660, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4661:         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, 4661, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4661, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4662:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4663: 
+4664:     try:
  /*try:*/ {
+4665:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4665, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4666:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4667:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4667, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4668:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4668, __pyx_L4_error)
      }
    }
    #endif
+4669:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4670:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4670, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4670, __pyx_L4_error)
      }
    }
    #endif
+4671:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4672:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4673:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4674: 
+4675:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4676:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4677:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4677, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4678:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4678, __pyx_L4_error)
      }
    }
    #endif
+4679:         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;
+4680:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4680, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4680, __pyx_L4_error)
      }
    }
    #endif
+4681:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4682:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4683:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4684: 
+4685:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4685, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4686:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4687:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4687, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4688:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4688, __pyx_L4_error)
      }
    }
    #endif
+4689:         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;
+4690:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4690, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4690, __pyx_L4_error)
      }
    }
    #endif
+4691:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4692:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4693:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4694: 
+4695:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4696:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4697:         blocks1 = Rack_ExtendLeft_(blocks1, Rack_Length(blocks2), Rack_At_(blocks2, 0), False)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft_(__pyx_v_blocks1, __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks2), __pyx_f_11cbytesparse_1c_Rack_At_(__pyx_v_blocks2, 0), 0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4697, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4698:         assert Rack_Length(blocks1) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4698, __pyx_L4_error)
      }
    }
    #endif
+4699:         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, 4699, __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;
+4700:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4700, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4700, __pyx_L4_error)
      }
    }
    #endif
+4701:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4702:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4703:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
  }
 4704: 
 4705:     finally:
+4706:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4707:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4708:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4709: 
 4710: 
+4711: def test_Rack_ExtendLeft():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_227test_Rack_ExtendLeft(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_226test_Rack_ExtendLeft[] = "test_Rack_ExtendLeft()";
static PyMethodDef __pyx_mdef_7_test_c_227test_Rack_ExtendLeft = {"test_Rack_ExtendLeft", (PyCFunction)__pyx_pw_7_test_c_227test_Rack_ExtendLeft, METH_NOARGS, __pyx_doc_7_test_c_226test_Rack_ExtendLeft};
static PyObject *__pyx_pw_7_test_c_227test_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_226test_Rack_ExtendLeft(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_226test_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__346 = 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__346)) __PYX_ERR(0, 4711, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__346);
  __Pyx_GIVEREF(__pyx_tuple__346);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_227test_Rack_ExtendLeft, 0, __pyx_n_s_test_Rack_ExtendLeft_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__347)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4711, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_ExtendLeft_2, __pyx_t_2) < 0) __PYX_ERR(0, 4711, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__347 = (PyObject*)__Pyx_PyCode_New(0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__346, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_ExtendLeft_2, 4711, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__347)) __PYX_ERR(0, 4711, __pyx_L1_error)
 4712:     cdef:
+4713:         Rack_* blocks1 = NULL
  __pyx_v_blocks1 = NULL;
+4714:         Rack_* blocks2 = NULL
  __pyx_v_blocks2 = NULL;
+4715:         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, 4715, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4715, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size1 = ((size_t)__pyx_t_2);
+4716:         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, 4716, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4716, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size2 = ((size_t)__pyx_t_2);
+4717:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
 4718: 
+4719:     try:
  /*try:*/ {
+4720:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4720, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4721:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4722:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4722, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4723:         assert Rack_Length(blocks1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4723, __pyx_L4_error)
      }
    }
    #endif
+4724:         temp = create_rack(())
    __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4725:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4725, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4725, __pyx_L4_error)
      }
    }
    #endif
+4726:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4727:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4728:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4729: 
+4730:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4731:         blocks2 = create_rack(())
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4732:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4732, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4733:         assert Rack_Length(blocks1) == size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4733, __pyx_L4_error)
      }
    }
    #endif
+4734:         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;
+4735:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4735, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4735, __pyx_L4_error)
      }
    }
    #endif
+4736:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4737:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4738:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4739: 
+4740:         blocks1 = Rack_Alloc(0)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4740, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4741:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4742:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4742, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4743:         assert Rack_Length(blocks1) == size2
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == __pyx_v_size2) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4743, __pyx_L4_error)
      }
    }
    #endif
+4744:         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;
+4745:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4745, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4745, __pyx_L4_error)
      }
    }
    #endif
+4746:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4747:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4748:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
 4749: 
+4750:         blocks1 = create_template_rack()
    __pyx_v_blocks1 = __pyx_f_7_test_c_create_template_rack();
+4751:         blocks2 = create_hello_world_rack()
    __pyx_v_blocks2 = __pyx_f_7_test_c_create_hello_world_rack();
+4752:         blocks1 = Rack_ExtendLeft(blocks1, blocks2)
    __pyx_t_3 = __pyx_f_11cbytesparse_1c_Rack_ExtendLeft(__pyx_v_blocks1, __pyx_v_blocks2); if (unlikely(__pyx_t_3 == ((Rack_ *)NULL))) __PYX_ERR(0, 4752, __pyx_L4_error)
    __pyx_v_blocks1 = __pyx_t_3;
+4753:         assert Rack_Length(blocks1) == size2 + size1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks1) == (__pyx_v_size2 + __pyx_v_size1)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4753, __pyx_L4_error)
      }
    }
    #endif
+4754:         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, 4754, __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;
+4755:         assert Rack_Eq(blocks1, temp) is True
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      __pyx_t_4 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks1, __pyx_v_temp); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 4755, __pyx_L4_error)
      if (unlikely(!((__pyx_t_4 == 1) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4755, __pyx_L4_error)
      }
    }
    #endif
+4756:         temp = Rack_Free(temp)
    __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4757:         blocks1 = Rack_Free(blocks1)
    __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4758:         blocks2 = Rack_Free(blocks2)
    __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks2);
  }
 4759: 
 4760:     finally:
+4761:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4762:         blocks1 = Rack_Free(blocks1)
      __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
/* … */
        __pyx_v_blocks1 = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks1);
+4763:         blocks2 = Rack_Free(blocks2)
      __pyx_v_blocks2 = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4764: 
 4765: 
 4766: # TODO: Rack_Read_()
 4767: 
 4768: 
 4769: # TODO: Rack_Write_()
 4770: 
 4771: 
 4772: # TODO: Rack_ReadSlice_()
 4773: 
 4774: 
 4775: # TODO: Rack_ReadSlice()
 4776: 
 4777: 
 4778: # TODO: Rack_GetSlice_()
 4779: 
 4780: 
 4781: # TODO: Rack_GetSlice()
 4782: 
 4783: 
 4784: # TODO: Rack_WriteSlice_()
 4785: 
 4786: 
 4787: # TODO: Rack_WriteSlice()
 4788: 
 4789: 
 4790: # TODO: Rack_SetSlice_()
 4791: 
 4792: 
 4793: # TODO: Rack_SetSlice()
 4794: 
 4795: 
+4796: 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;
  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__348 = 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__348)) __PYX_ERR(0, 4796, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__348);
  __Pyx_GIVEREF(__pyx_tuple__348);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_229test_Rack_DelSlice_, 0, __pyx_n_s_test_Rack_DelSlice, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__349)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4796, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_DelSlice, __pyx_t_2) < 0) __PYX_ERR(0, 4796, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__349 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__348, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_DelSlice, 4796, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__349)) __PYX_ERR(0, 4796, __pyx_L1_error)
 4797:     cdef:
+4798:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4799:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4800:         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, 4800, __pyx_L1_error)
  }
  __pyx_t_2 = PyTuple_GET_SIZE(__pyx_t_1); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(0, 4800, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_size = ((size_t)__pyx_t_2);
 4801:         size_t start
 4802:         size_t endex
 4803:         list temp_
 4804: 
+4805:     try:
  /*try:*/ {
+4806:         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;
+4807:             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;
+4808:                 blocks = create_rack(())
        __pyx_v_blocks = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4809:                 blocks = Rack_DelSlice_(blocks, start, endex)
        __pyx_t_9 = __pyx_f_11cbytesparse_1c_Rack_DelSlice_(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4809, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_9;
+4810:                 temp = create_rack(())
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4811:                 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, 4811, __pyx_L4_error)
          }
        }
        #endif
+4812:                 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, 4812, __pyx_L4_error)
          }
        }
        #endif
+4813:                 assert Rack_Length(blocks) == 0
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4813, __pyx_L4_error)
          }
        }
        #endif
+4814:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_10 == ((int)-1))) __PYX_ERR(0, 4814, __pyx_L4_error)
          if (unlikely(!((__pyx_t_10 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4814, __pyx_L4_error)
          }
        }
        #endif
+4815:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4816:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
      }
    }
 4817: 
+4818:         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;
+4819:             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;
+4820:                 blocks = create_template_rack()
        __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4821:                 blocks = Rack_DelSlice_(blocks, start, endex)
        __pyx_t_9 = __pyx_f_11cbytesparse_1c_Rack_DelSlice_(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4821, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_9;
+4822:                 temp_ = list(TEMPLATE_BLOCKS)
        __pyx_t_1 = PySequence_List(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4822, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_XDECREF_SET(__pyx_v_temp_, ((PyObject*)__pyx_t_1));
        __pyx_t_1 = 0;
+4823:                 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, 4823, __pyx_L4_error)
+4824:                 temp = create_rack(tuple(temp_))
        __pyx_t_1 = PyList_AsTuple(__pyx_v_temp_); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4824, __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;
+4825:                 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, 4825, __pyx_L4_error)
          }
        }
        #endif
+4826:                 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, 4826, __pyx_L4_error)
          }
        }
        #endif
+4827:                 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, 4827, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == ((size_t)__pyx_t_2)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4827, __pyx_L4_error)
          }
        }
        #endif
+4828:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_10 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_10 == ((int)-1))) __PYX_ERR(0, 4828, __pyx_L4_error)
          if (unlikely(!((__pyx_t_10 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4828, __pyx_L4_error)
          }
        }
        #endif
+4829:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4830:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
      }
    }
 4831: 
+4832:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
 4833: 
+4834:         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, 4834, __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, 4834, __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, 4834, __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, 4834, __pyx_L4_error)
      __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_tuple__90, __pyx_t_1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4834, __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, 4834, __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, 4834, __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, 4834, __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, 4834, __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, 4834, __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, 4834, __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, 4834, __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, 4834, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 4834, __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__90 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__90)) __PYX_ERR(0, 4834, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__90);
  __Pyx_GIVEREF(__pyx_tuple__90);
+4835:             Rack_DelSlice_(blocks, SIZE_HMAX + 1, 0)
            __pyx_t_9 = __pyx_f_11cbytesparse_1c_Rack_DelSlice_(__pyx_v_blocks, (SIZE_HMAX + 1), 0); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4835, __pyx_L18_error)
 4836: 
+4837:         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, 4837, __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, 4837, __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, 4837, __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, 4837, __pyx_L4_error)
      __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__91, __pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 4837, __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, 4837, __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, 4837, __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, 4837, __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, 4837, __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, 4837, __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, 4837, __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, 4837, __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, 4837, __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__2, NULL);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 4837, __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__91 = PyTuple_Pack(1, __pyx_builtin_OverflowError); if (unlikely(!__pyx_tuple__91)) __PYX_ERR(0, 4837, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__91);
  __Pyx_GIVEREF(__pyx_tuple__91);
+4838:             Rack_DelSlice_(blocks, 0, SIZE_HMAX + 1)
            __pyx_t_9 = __pyx_f_11cbytesparse_1c_Rack_DelSlice_(__pyx_v_blocks, 0, (SIZE_HMAX + 1)); if (unlikely(__pyx_t_9 == ((Rack_ *)NULL))) __PYX_ERR(0, 4838, __pyx_L32_error)
 4839: 
+4840:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
  }
 4841: 
 4842:     finally:
+4843:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4844:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4845: 
 4846: 
+4847: def test_Rack_DelSlice():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_231test_Rack_DelSlice(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_230test_Rack_DelSlice[] = "test_Rack_DelSlice()";
static PyMethodDef __pyx_mdef_7_test_c_231test_Rack_DelSlice = {"test_Rack_DelSlice", (PyCFunction)__pyx_pw_7_test_c_231test_Rack_DelSlice, METH_NOARGS, __pyx_doc_7_test_c_230test_Rack_DelSlice};
static PyObject *__pyx_pw_7_test_c_231test_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_230test_Rack_DelSlice(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_230test_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__350 = 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__350)) __PYX_ERR(0, 4847, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__350);
  __Pyx_GIVEREF(__pyx_tuple__350);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_231test_Rack_DelSlice, 0, __pyx_n_s_test_Rack_DelSlice_2, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__351)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4847, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_DelSlice_2, __pyx_t_2) < 0) __PYX_ERR(0, 4847, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__351 = (PyObject*)__Pyx_PyCode_New(0, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__350, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_DelSlice_2, 4847, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__351)) __PYX_ERR(0, 4847, __pyx_L1_error)
 4848:     cdef:
+4849:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
+4850:         Rack_* temp = NULL
  __pyx_v_temp = NULL;
+4851:         size_t size = SIZE1
  __pyx_v_size = __pyx_v_7_test_c_SIZE1;
 4852:         ssize_t start
 4853:         ssize_t endex
 4854:         list temp_
 4855: 
+4856:     try:
  /*try:*/ {
+4857:         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;
+4858:             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;
+4859:                 blocks = create_rack(())
        __pyx_v_blocks = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4860:                 blocks = Rack_DelSlice(blocks, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Rack_DelSlice(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Rack_ *)NULL))) __PYX_ERR(0, 4860, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_7;
+4861:                 temp = create_rack(())
        __pyx_v_temp = __pyx_f_7_test_c_create_rack(__pyx_empty_tuple);
+4862:                 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, 4862, __pyx_L4_error)
          }
        }
        #endif
+4863:                 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, 4863, __pyx_L4_error)
          }
        }
        #endif
+4864:                 assert Rack_Length(blocks) == 0
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == 0) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4864, __pyx_L4_error)
          }
        }
        #endif
+4865:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 4865, __pyx_L4_error)
          if (unlikely(!((__pyx_t_8 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4865, __pyx_L4_error)
          }
        }
        #endif
+4866:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4867:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
      }
    }
 4868: 
+4869:         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;
+4870:             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;
+4871:                 blocks = create_template_rack()
        __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4872:                 blocks = Rack_DelSlice(blocks, start, endex)
        __pyx_t_7 = __pyx_f_11cbytesparse_1c_Rack_DelSlice(__pyx_v_blocks, __pyx_v_start, __pyx_v_endex); if (unlikely(__pyx_t_7 == ((Rack_ *)NULL))) __PYX_ERR(0, 4872, __pyx_L4_error)
        __pyx_v_blocks = __pyx_t_7;
+4873:                 temp_ = list(TEMPLATE_BLOCKS)
        __pyx_t_9 = PySequence_List(__pyx_v_7_test_c_TEMPLATE_BLOCKS); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4873, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_XDECREF_SET(__pyx_v_temp_, ((PyObject*)__pyx_t_9));
        __pyx_t_9 = 0;
+4874:                 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, 4874, __pyx_L4_error)
+4875:                 temp = create_rack(tuple(temp_))
        __pyx_t_9 = PyList_AsTuple(__pyx_v_temp_); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 4875, __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;
+4876:                 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, 4876, __pyx_L4_error)
          }
        }
        #endif
+4877:                 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, 4877, __pyx_L4_error)
          }
        }
        #endif
+4878:                 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, 4878, __pyx_L4_error)
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks) == ((size_t)__pyx_t_10)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4878, __pyx_L4_error)
          }
        }
        #endif
+4879:                 assert Rack_Eq(blocks, temp) is True
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          __pyx_t_8 = __pyx_f_11cbytesparse_1c_Rack_Eq(__pyx_v_blocks, __pyx_v_temp); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 4879, __pyx_L4_error)
          if (unlikely(!((__pyx_t_8 == 1) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4879, __pyx_L4_error)
          }
        }
        #endif
+4880:                 temp = Rack_Free(temp)
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4881:                 blocks = Rack_Free(blocks)
        __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
      }
    }
  }
 4882: 
 4883:     finally:
+4884:         temp = Rack_Free(temp)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
/* … */
        __pyx_v_temp = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_temp);
+4885:         blocks = Rack_Free(blocks)
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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_1c_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:;
  }
 4886: 
 4887: 
+4888: def test_Rack_IndexAt():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_233test_Rack_IndexAt(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_232test_Rack_IndexAt[] = "test_Rack_IndexAt()";
static PyMethodDef __pyx_mdef_7_test_c_233test_Rack_IndexAt = {"test_Rack_IndexAt", (PyCFunction)__pyx_pw_7_test_c_233test_Rack_IndexAt, METH_NOARGS, __pyx_doc_7_test_c_232test_Rack_IndexAt};
static PyObject *__pyx_pw_7_test_c_233test_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_232test_Rack_IndexAt(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_232test_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__352 = 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__352)) __PYX_ERR(0, 4888, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__352);
  __Pyx_GIVEREF(__pyx_tuple__352);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_233test_Rack_IndexAt, 0, __pyx_n_s_test_Rack_IndexAt, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__353)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4888, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexAt, __pyx_t_2) < 0) __PYX_ERR(0, 4888, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__353 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__352, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexAt, 4888, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__353)) __PYX_ERR(0, 4888, __pyx_L1_error)
 4889:     cdef:
+4890:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4891:         size_t block_count
 4892:         size_t block_index
 4893:         const Block_* block
 4894:         addr_t block_start
 4895:         addr_t block_endex
 4896:         addr_t address
 4897: 
+4898:     try:
  /*try:*/ {
+4899:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4899, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4900:         assert Rack_IndexAt(blocks, 0) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, 0) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4900, __pyx_L4_error)
      }
    }
    #endif
+4901:         assert Rack_IndexAt(blocks, ADDR_MAX) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, ADDR_MAX) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4901, __pyx_L4_error)
      }
    }
    #endif
 4902: 
+4903:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
+4904:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4905:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks);
 4906: 
+4907:         for block_index in range(block_count):
    __pyx_t_2 = __pyx_v_block_count;
    __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;
+4908:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4909:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4910:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block);
+4911:             for address in range(block_start, block_endex):
      __pyx_t_5 = __pyx_v_block_endex;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = __pyx_v_block_start; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_address = __pyx_t_7;
+4912:                 assert Rack_IndexAt(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, __pyx_v_address) == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4912, __pyx_L4_error)
          }
        }
        #endif
      }
 4913: 
+4914:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4915:             if block_index < block_count:
      __pyx_t_8 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_8) {
/* … */
      }
    }
+4916:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4917:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4918:                 for address in range(block_endex, block_start):
        __pyx_t_5 = __pyx_v_block_start;
        __pyx_t_6 = __pyx_t_5;
        for (__pyx_t_7 = __pyx_v_block_endex; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
          __pyx_v_address = __pyx_t_7;
+4919:                     assert Rack_IndexAt(blocks, address) == -1
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, __pyx_v_address) == -1L) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4919, __pyx_L4_error)
            }
          }
          #endif
        }
 4920: 
+4921:         assert Rack_IndexAt(blocks, Block_Start(Rack_First__(blocks)) - 1) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Start(__pyx_f_11cbytesparse_1c_Rack_First__(__pyx_v_blocks)) - 1)) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4921, __pyx_L4_error)
      }
    }
    #endif
+4922:         assert Rack_IndexAt(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == -1
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexAt(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last__(__pyx_v_blocks)) + 1)) == -1L) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4922, __pyx_L4_error)
      }
    }
    #endif
  }
 4923: 
 4924:     finally:
+4925:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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;
      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_1c_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:;
  }
 4926: 
 4927: 
+4928: def test_Rack_IndexStart():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_235test_Rack_IndexStart(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_234test_Rack_IndexStart[] = "test_Rack_IndexStart()";
static PyMethodDef __pyx_mdef_7_test_c_235test_Rack_IndexStart = {"test_Rack_IndexStart", (PyCFunction)__pyx_pw_7_test_c_235test_Rack_IndexStart, METH_NOARGS, __pyx_doc_7_test_c_234test_Rack_IndexStart};
static PyObject *__pyx_pw_7_test_c_235test_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_234test_Rack_IndexStart(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_234test_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__354 = 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__354)) __PYX_ERR(0, 4928, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__354);
  __Pyx_GIVEREF(__pyx_tuple__354);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_235test_Rack_IndexStart, 0, __pyx_n_s_test_Rack_IndexStart, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__355)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4928, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexStart, __pyx_t_2) < 0) __PYX_ERR(0, 4928, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__355 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__354, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexStart, 4928, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__355)) __PYX_ERR(0, 4928, __pyx_L1_error)
 4929:     cdef:
+4930:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4931:         size_t block_count
 4932:         size_t block_index
 4933:         const Block_* block
 4934:         addr_t block_start
 4935:         addr_t block_endex
 4936:         addr_t address
 4937: 
+4938:     try:
  /*try:*/ {
+4939:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4939, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4940:         assert Rack_IndexStart(blocks, 0) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, 0) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4940, __pyx_L4_error)
      }
    }
    #endif
+4941:         assert Rack_IndexStart(blocks, ADDR_MAX) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, ADDR_MAX) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4941, __pyx_L4_error)
      }
    }
    #endif
 4942: 
+4943:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
+4944:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4945:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks);
 4946: 
+4947:         for block_index in range(block_count):
    __pyx_t_2 = __pyx_v_block_count;
    __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;
+4948:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4949:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4950:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block);
+4951:             for address in range(block_start, block_endex):
      __pyx_t_5 = __pyx_v_block_endex;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = __pyx_v_block_start; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_address = __pyx_t_7;
+4952:                 assert Rack_IndexStart(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, __pyx_v_address) == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4952, __pyx_L4_error)
          }
        }
        #endif
      }
 4953: 
+4954:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4955:             if block_index < block_count:
      __pyx_t_8 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_8) {
/* … */
      }
    }
+4956:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4957:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4958:                 for address in range(block_endex, block_start):
        __pyx_t_5 = __pyx_v_block_start;
        __pyx_t_6 = __pyx_t_5;
        for (__pyx_t_7 = __pyx_v_block_endex; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
          __pyx_v_address = __pyx_t_7;
+4959:                     assert Rack_IndexStart(blocks, address) == <ssize_t>block_index
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, __pyx_v_address) == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4959, __pyx_L4_error)
            }
          }
          #endif
        }
 4960: 
+4961:         assert Rack_IndexStart(blocks, Block_Start(Rack_First__(blocks)) - 1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Start(__pyx_f_11cbytesparse_1c_Rack_First__(__pyx_v_blocks)) - 1)) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4961, __pyx_L4_error)
      }
    }
    #endif
+4962:         assert Rack_IndexStart(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == <ssize_t>block_count
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexStart(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last__(__pyx_v_blocks)) + 1)) == ((Py_ssize_t)__pyx_v_block_count)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4962, __pyx_L4_error)
      }
    }
    #endif
  }
 4963: 
 4964:     finally:
+4965:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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;
      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_1c_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:;
  }
 4966: 
 4967: 
+4968: def test_Rack_IndexEndex():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_237test_Rack_IndexEndex(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_236test_Rack_IndexEndex[] = "test_Rack_IndexEndex()";
static PyMethodDef __pyx_mdef_7_test_c_237test_Rack_IndexEndex = {"test_Rack_IndexEndex", (PyCFunction)__pyx_pw_7_test_c_237test_Rack_IndexEndex, METH_NOARGS, __pyx_doc_7_test_c_236test_Rack_IndexEndex};
static PyObject *__pyx_pw_7_test_c_237test_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_236test_Rack_IndexEndex(__pyx_self);

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

static PyObject *__pyx_pf_7_test_c_236test_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__356 = 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__356)) __PYX_ERR(0, 4968, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__356);
  __Pyx_GIVEREF(__pyx_tuple__356);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_237test_Rack_IndexEndex, 0, __pyx_n_s_test_Rack_IndexEndex, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__357)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4968, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test_Rack_IndexEndex, __pyx_t_2) < 0) __PYX_ERR(0, 4968, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__357 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__356, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_test_Rack_IndexEndex, 4968, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__357)) __PYX_ERR(0, 4968, __pyx_L1_error)
 4969:     cdef:
+4970:         Rack_* blocks = NULL
  __pyx_v_blocks = NULL;
 4971:         size_t block_count
 4972:         size_t block_index
 4973:         const Block_* block
 4974:         addr_t block_start
 4975:         addr_t block_endex
 4976:         addr_t address
 4977: 
+4978:     try:
  /*try:*/ {
+4979:         blocks = Rack_Alloc(0)
    __pyx_t_1 = __pyx_f_11cbytesparse_1c_Rack_Alloc(0); if (unlikely(__pyx_t_1 == ((Rack_ *)NULL))) __PYX_ERR(0, 4979, __pyx_L4_error)
    __pyx_v_blocks = __pyx_t_1;
+4980:         assert Rack_IndexEndex(blocks, 0) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, 0) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4980, __pyx_L4_error)
      }
    }
    #endif
+4981:         assert Rack_IndexEndex(blocks, ADDR_MAX) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, ADDR_MAX) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 4981, __pyx_L4_error)
      }
    }
    #endif
 4982: 
+4983:         blocks = Rack_Free(blocks)
    __pyx_v_blocks = __pyx_f_11cbytesparse_1c_Rack_Free(__pyx_v_blocks);
+4984:         blocks = create_template_rack()
    __pyx_v_blocks = __pyx_f_7_test_c_create_template_rack();
+4985:         block_count = Rack_Length(blocks)
    __pyx_v_block_count = __pyx_f_11cbytesparse_1c_Rack_Length(__pyx_v_blocks);
 4986: 
+4987:         for block_index in range(block_count):
    __pyx_t_2 = __pyx_v_block_count;
    __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;
+4988:             block = Rack_Get__(blocks, block_index)
      __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4989:             block_start = Block_Start(block)
      __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4990:             block_endex = Block_Endex(block)
      __pyx_v_block_endex = __pyx_f_11cbytesparse_1c_Block_Endex(__pyx_v_block);
+4991:             block_index += 1
      __pyx_v_block_index = (__pyx_v_block_index + 1);
+4992:             for address in range(block_start, block_endex):
      __pyx_t_5 = __pyx_v_block_endex;
      __pyx_t_6 = __pyx_t_5;
      for (__pyx_t_7 = __pyx_v_block_start; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
        __pyx_v_address = __pyx_t_7;
+4993:                 assert Rack_IndexEndex(blocks, address) == <ssize_t>block_index
        #ifndef CYTHON_WITHOUT_ASSERTIONS
        if (unlikely(!Py_OptimizeFlag)) {
          if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, __pyx_v_address) == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
            PyErr_SetNone(PyExc_AssertionError);
            __PYX_ERR(0, 4993, __pyx_L4_error)
          }
        }
        #endif
      }
 4994: 
+4995:             if block_index < block_count:
      __pyx_t_8 = ((__pyx_v_block_index < __pyx_v_block_count) != 0);
      if (__pyx_t_8) {
/* … */
      }
    }
+4996:                 block = Rack_Get__(blocks, block_index)
        __pyx_v_block = __pyx_f_11cbytesparse_1c_Rack_Get__(__pyx_v_blocks, __pyx_v_block_index);
+4997:                 block_start = Block_Start(block)
        __pyx_v_block_start = __pyx_f_11cbytesparse_1c_Block_Start(__pyx_v_block);
+4998:                 for address in range(block_endex, block_start):
        __pyx_t_5 = __pyx_v_block_start;
        __pyx_t_6 = __pyx_t_5;
        for (__pyx_t_7 = __pyx_v_block_endex; __pyx_t_7 < __pyx_t_6; __pyx_t_7+=1) {
          __pyx_v_address = __pyx_t_7;
+4999:                     assert Rack_IndexEndex(blocks, address) == <ssize_t>block_index
          #ifndef CYTHON_WITHOUT_ASSERTIONS
          if (unlikely(!Py_OptimizeFlag)) {
            if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, __pyx_v_address) == ((Py_ssize_t)__pyx_v_block_index)) != 0))) {
              PyErr_SetNone(PyExc_AssertionError);
              __PYX_ERR(0, 4999, __pyx_L4_error)
            }
          }
          #endif
        }
 5000: 
+5001:         assert Rack_IndexEndex(blocks, Block_Start(Rack_First__(blocks)) - 1) == 0
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Start(__pyx_f_11cbytesparse_1c_Rack_First__(__pyx_v_blocks)) - 1)) == 0) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 5001, __pyx_L4_error)
      }
    }
    #endif
+5002:         assert Rack_IndexEndex(blocks, Block_Endex(Rack_Last__(blocks)) + 1) == <ssize_t>block_count
    #ifndef CYTHON_WITHOUT_ASSERTIONS
    if (unlikely(!Py_OptimizeFlag)) {
      if (unlikely(!((__pyx_f_11cbytesparse_1c_Rack_IndexEndex(__pyx_v_blocks, (__pyx_f_11cbytesparse_1c_Block_Endex(__pyx_f_11cbytesparse_1c_Rack_Last__(__pyx_v_blocks)) + 1)) == ((Py_ssize_t)__pyx_v_block_count)) != 0))) {
        PyErr_SetNone(PyExc_AssertionError);
        __PYX_ERR(0, 5002, __pyx_L4_error)
      }
    }
    #endif
  }
 5003: 
 5004:     finally:
+5005:         blocks = Rack_Free(blocks)
  /*finally:*/ {
    /*normal exit:*/{
      __pyx_v_blocks = __pyx_f_11cbytesparse_1c_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;
      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_1c_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:;
  }
 5006: 
 5007: 
 5008: # =====================================================================================================================
 5009: 
 5010: # Rover: done by _common.py
 5011: 
 5012: 
 5013: # ---------------------------------------------------------------------------------------------------------------------
 5014: 
 5015: # Memory: done by _common.py
 5016: 
 5017: 
 5018: # =====================================================================================================================
 5019: 
 5020: # Patch all Cython tests so that they can be discovered by pytest.
 5021: # Requires cython option: binding = True
+5022: def _patch_cytest():
/* Python wrapper */
static PyObject *__pyx_pw_7_test_c_239_patch_cytest(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_7_test_c_238_patch_cytest[] = "_patch_cytest()";
static PyMethodDef __pyx_mdef_7_test_c_239_patch_cytest = {"_patch_cytest", (PyCFunction)__pyx_pw_7_test_c_239_patch_cytest, METH_NOARGS, __pyx_doc_7_test_c_238_patch_cytest};
static PyObject *__pyx_pw_7_test_c_239_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_238_patch_cytest(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
static PyObject *__pyx_pf_7_test_c_238_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, 5022, __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__358 = 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__358)) __PYX_ERR(0, 5022, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__358);
  __Pyx_GIVEREF(__pyx_tuple__358);
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_7_test_c_239_patch_cytest, 0, __pyx_n_s_patch_cytest, NULL, __pyx_n_s_test_c, __pyx_d, ((PyObject *)__pyx_codeobj__359)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5022, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_patch_cytest, __pyx_t_2) < 0) __PYX_ERR(0, 5022, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_codeobj__359 = (PyObject*)__Pyx_PyCode_New(0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__358, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_patch_cytest, 5022, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__359)) __PYX_ERR(0, 5022, __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;
};

+5023:     import functools
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_functools, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5023, __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;
+5024:     import inspect
  __pyx_t_1 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, 0, 0)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5024, __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;
 5025: 
+5026:     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, 5026, __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__94 = PyTuple_Pack(3, __pyx_n_s_func, __pyx_n_s_wrapped, __pyx_n_s_wrapped); if (unlikely(!__pyx_tuple__94)) __PYX_ERR(0, 5026, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__94);
  __Pyx_GIVEREF(__pyx_tuple__94);
/* … */
  __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__95)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5026, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_cytest = __pyx_t_1;
  __pyx_t_1 = 0;
  __pyx_codeobj__95 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__94, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_cytest, 5026, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__95)) __PYX_ERR(0, 5026, __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;
};

+5027:         @functools.wraps(func)
  if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_functools)) { __Pyx_RaiseClosureNameError("functools"); __PYX_ERR(0, 5027, __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, 5027, __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, 5027, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+5028:         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__92 = PyTuple_Pack(3, __pyx_n_s_args, __pyx_n_s_kwargs, __pyx_n_s_bound); if (unlikely(!__pyx_tuple__92)) __PYX_ERR(0, 5028, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__92);
  __Pyx_GIVEREF(__pyx_tuple__92);
/* … */
  __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__93)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5028, __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, 5027, __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__93 = (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__92, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_tests__test_c_pyx, __pyx_n_s_wrapped, 5028, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__93)) __PYX_ERR(0, 5028, __pyx_L1_error)
+5029:             bound = inspect.signature(func).bind(*args, **kwargs)
  if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_inspect)) { __Pyx_RaiseClosureNameError("inspect"); __PYX_ERR(0, 5029, __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, 5029, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (unlikely(!__pyx_cur_scope->__pyx_v_func)) { __Pyx_RaiseClosureNameError("func"); __PYX_ERR(0, 5029, __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, 5029, __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, 5029, __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, 5029, __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, 5029, __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;
+5030:             return func(*bound.args, **bound.kwargs)
  __Pyx_XDECREF(__pyx_r);
  if (unlikely(!__pyx_cur_scope->__pyx_v_func)) { __Pyx_RaiseClosureNameError("func"); __PYX_ERR(0, 5030, __pyx_L1_error) }
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_bound, __pyx_n_s_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5030, __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, 5030, __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, 5030, __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, 5030, __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, 5030, __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, 5030, __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, 5030, __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;
 5031: 
+5032:         return wrapped
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_wrapped);
  __pyx_r = __pyx_v_wrapped;
  goto __pyx_L0;
 5033: 
+5034:     g = globals()
  __pyx_t_1 = __Pyx_Globals(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5034, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_g = __pyx_t_1;
  __pyx_t_1 = 0;
+5035:     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, 5035, __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, 5035, __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, 5035, __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;
+5036:         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, 5036, __pyx_L1_error)
    __pyx_t_9 = (__pyx_t_8 != 0);
    if (__pyx_t_9) {
/* … */
    }
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+5037:             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, 5037, __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, 5037, __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, 5037, __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, 5037, __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, 5037, __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) {
/* … */
      }
+5038:                 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, 5038, __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, 5038, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
 5039: 
 5040: 
+5041: _patch_cytest()
  __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_patch_cytest); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5041, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5041, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;