From 6c181b850e418a65ba856a1bbe2c25ad5067831a Mon Sep 17 00:00:00 2001 From: Codex Date: Mon, 1 Jun 2026 00:31:29 -0400 Subject: [PATCH 1/4] perf: use librt BytesWriter for faster small ints Route single-byte integer conversion through librt BytesWriter while sending larger integers directly to the existing fallback path, and add benchmark cases so CI can validate user-facing small integer HexBytes construction. --- benchmarks/params.py | 14 ++++++++++++-- faster_hexbytes/_utils.py | 11 +++++++++-- pyproject.toml | 2 +- setup.py | 7 +++++-- 4 files changed, 27 insertions(+), 7 deletions(-) diff --git a/benchmarks/params.py b/benchmarks/params.py index 4336c4a..959ff90 100644 --- a/benchmarks/params.py +++ b/benchmarks/params.py @@ -1,7 +1,15 @@ -from typing import Any, List, Tuple, Union -from eth_typing import HexStr +from typing import ( + Any, + List, + Tuple, + Union, +) +from eth_typing import ( + HexStr, +) import hexbytes + import faster_hexbytes Convertable = Union[bool, bytearray, bytes, int, str, memoryview] @@ -77,6 +85,8 @@ def variant_ids(base_ids: List[str], prefix: str) -> List[str]: STR_IDS: List[str] = [id for _, id in STR_CASES] INT_CASES: List[Tuple[int, str]] = [ + (1, "1"), + (255, "255"), (123456, "123456"), (0, "0"), (1, "1"), diff --git a/faster_hexbytes/_utils.py b/faster_hexbytes/_utils.py index 33e8034..a4bf69a 100644 --- a/faster_hexbytes/_utils.py +++ b/faster_hexbytes/_utils.py @@ -4,6 +4,9 @@ Union, ) +from librt.strings import ( + BytesWriter, +) unhexlify: Final = binascii.unhexlify @@ -26,10 +29,14 @@ def to_bytes(val: Union[bytes, str, bytearray, bool, int, memoryview]) -> bytes: elif isinstance(val, int): # Note that this int check must come after the bool check, because # isinstance(True, int) is True - if val < 0: + if val > 255: + return val.to_bytes(max(1, (val.bit_length() + 7) // 8), "big") + elif val < 0: raise ValueError(f"Cannot convert negative integer {val} to bytes") else: - return val.to_bytes(max(1, (val.bit_length() + 7) // 8), "big") + writer = BytesWriter() + writer.append(val) + return writer.getvalue() elif isinstance(val, memoryview): return bytes(val) else: diff --git a/pyproject.toml b/pyproject.toml index c0d288d..9ff2913 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools", "wheel", "mypy[mypyc]==2.1.0", "hexbytes==1.3.1"] +requires = ["setuptools", "wheel", "mypy[mypyc]==2.1.0", "hexbytes==1.3.1", "librt>=0.11.0"] build-backend = "setuptools.build_meta" [tool.autoflake] diff --git a/setup.py b/setup.py index f199705..071c18f 100644 --- a/setup.py +++ b/setup.py @@ -1,11 +1,13 @@ #!/usr/bin/env python import sys + +from mypyc.build import ( + mypycify, +) from setuptools import ( find_packages, setup, ) -from mypyc.build import mypycify - version = "1.3.8" hexbytes_version = "1.3.1" @@ -92,6 +94,7 @@ include_package_data=True, install_requires=[ f"hexbytes=={hexbytes_version}", + "librt>=0.11.0", "mypy_extensions>=0.4.2,<2", "typing-extensions>=4.0.0,<5", ], From 4d85606523ae0a0a9d99b273146f0f5126999c3d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 1 Jun 2026 04:32:20 +0000 Subject: [PATCH 2/4] chore: compile C files for source control --- build/__native_faster_hexbytes.c | 755 +++++++++++++--------- build/__native_faster_hexbytes.h | 1 + build/__native_internal_faster_hexbytes.h | 3 +- 3 files changed, 440 insertions(+), 319 deletions(-) diff --git a/build/__native_faster_hexbytes.c b/build/__native_faster_hexbytes.c index 137c0d6..a029866 100644 --- a/build/__native_faster_hexbytes.c +++ b/build/__native_faster_hexbytes.c @@ -17,6 +17,8 @@ #include #include #include +#include +#include #include "__native_faster_hexbytes.h" #include "__native_internal_faster_hexbytes.h" static PyMethodDef faster_hexbytesmodule_methods[] = { @@ -296,6 +298,9 @@ CPyL18: ; int CPyExec_faster_hexbytes____utils(PyObject *module) { intern_strings(); + if (import_librt_strings() < 0) { + return -1; + } PyObject* modname = NULL; modname = PyObject_GetAttrString((PyObject *)CPyModule_faster_hexbytes____utils__internal, "__name__"); CPyStatic__utils___globals = PyModule_GetDict(CPyModule_faster_hexbytes____utils__internal); @@ -409,85 +414,103 @@ PyObject *CPyDef__utils___to_bytes(PyObject *cpy_r_val) { char cpy_r_r23; char cpy_r_r24; char cpy_r_r25; - PyObject *cpy_r_r26; + CPyTagged cpy_r_r26; CPyTagged cpy_r_r27; - PyObject *cpy_r_r28; - PyObject *cpy_r_r29; - PyObject *cpy_r_r30; - PyObject *cpy_r_r31; - PyObject *cpy_r_r32; - PyObject *cpy_r_r33; - PyObject **cpy_r_r35; - PyObject *cpy_r_r36; + CPyTagged cpy_r_r28; + CPyTagged cpy_r_r29; + CPyTagged cpy_r_r30; + int64_t cpy_r_r31; + char cpy_r_r32; + int64_t cpy_r_r33; + char cpy_r_r34; + char cpy_r_r35; + char cpy_r_r36; CPyTagged cpy_r_r37; - CPyTagged cpy_r_r38; - CPyTagged cpy_r_r39; - CPyTagged cpy_r_r40; - CPyTagged cpy_r_r41; - int64_t cpy_r_r42; - char cpy_r_r43; + int64_t cpy_r_r38; + char cpy_r_r39; + int64_t cpy_r_r40; + int64_t cpy_r_r41; + CPyPtr cpy_r_r42; + void *cpy_r_r43; int64_t cpy_r_r44; char cpy_r_r45; - char cpy_r_r46; - char cpy_r_r47; + PyObject *cpy_r_r46; + PyObject *cpy_r_r47; CPyTagged cpy_r_r48; int64_t cpy_r_r49; char cpy_r_r50; int64_t cpy_r_r51; - int64_t cpy_r_r52; - CPyPtr cpy_r_r53; - void *cpy_r_r54; - int64_t cpy_r_r55; - char cpy_r_r56; - PyObject *cpy_r_r57; + char cpy_r_r52; + char cpy_r_r53; + char cpy_r_r54; + char cpy_r_r55; + PyObject *cpy_r_r56; + CPyTagged cpy_r_r57; PyObject *cpy_r_r58; PyObject *cpy_r_r59; PyObject *cpy_r_r60; PyObject *cpy_r_r61; - int32_t cpy_r_r62; - char cpy_r_r63; - char cpy_r_r64; - PyObject *cpy_r_r65; - PyObject **cpy_r_r67; - PyObject *cpy_r_r68; - PyObject *cpy_r_r69; - PyObject *cpy_r_r70; - PyObject *cpy_r_r71; - PyObject *cpy_r_r72; - PyObject *cpy_r_r73; - PyObject *cpy_r_r74; - PyObject **cpy_r_r76; + PyObject *cpy_r_r62; + PyObject *cpy_r_r63; + PyObject **cpy_r_r65; + PyObject *cpy_r_r66; + PyObject *cpy_r_r67; + CPyTagged cpy_r_r68; + int64_t cpy_r_r69; + char cpy_r_r70; + char cpy_r_r71; + char cpy_r_r72; + int64_t cpy_r_r73; + uint8_t cpy_r_r74; + char cpy_r_r75; + PyObject *cpy_r_r76; PyObject *cpy_r_r77; PyObject *cpy_r_r78; PyObject *cpy_r_r79; - PyObject *cpy_r_r80; - PyObject *cpy_r_r81; - PyObject *cpy_r_r82; - PyObject **cpy_r_r84; - PyObject *cpy_r_r85; + int32_t cpy_r_r80; + char cpy_r_r81; + char cpy_r_r82; + PyObject *cpy_r_r83; + PyObject **cpy_r_r85; PyObject *cpy_r_r86; PyObject *cpy_r_r87; - CPyPtr cpy_r_r88; - CPyPtr cpy_r_r89; - CPyPtr cpy_r_r90; - CPyPtr cpy_r_r91; - CPyPtr cpy_r_r92; - CPyPtr cpy_r_r93; - PyObject *cpy_r_r94; + PyObject *cpy_r_r88; + PyObject *cpy_r_r89; + PyObject *cpy_r_r90; + PyObject *cpy_r_r91; + PyObject *cpy_r_r92; + PyObject **cpy_r_r94; PyObject *cpy_r_r95; PyObject *cpy_r_r96; PyObject *cpy_r_r97; - PyObject **cpy_r_r99; + PyObject *cpy_r_r98; + PyObject *cpy_r_r99; PyObject *cpy_r_r100; - PyObject *cpy_r_r101; + PyObject **cpy_r_r102; + PyObject *cpy_r_r103; + PyObject *cpy_r_r104; + PyObject *cpy_r_r105; + CPyPtr cpy_r_r106; + CPyPtr cpy_r_r107; + CPyPtr cpy_r_r108; + CPyPtr cpy_r_r109; + CPyPtr cpy_r_r110; + CPyPtr cpy_r_r111; + PyObject *cpy_r_r112; + PyObject *cpy_r_r113; + PyObject *cpy_r_r114; + PyObject *cpy_r_r115; + PyObject **cpy_r_r117; + PyObject *cpy_r_r118; + PyObject *cpy_r_r119; cpy_r_r0 = PyBytes_Check(cpy_r_val); if (!cpy_r_r0) goto CPyL3; CPy_INCREF(cpy_r_val); if (likely(PyBytes_Check(cpy_r_val))) cpy_r_r1 = cpy_r_val; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 19, CPyStatic__utils___globals, "bytes", cpy_r_val); - goto CPyL63; + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 22, CPyStatic__utils___globals, "bytes", cpy_r_val); + goto CPyL80; } return cpy_r_r1; CPyL3: ; @@ -497,14 +520,14 @@ CPyL3: ; if (likely(PyUnicode_Check(cpy_r_val))) cpy_r_r3 = cpy_r_val; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 21, CPyStatic__utils___globals, "str", cpy_r_val); - goto CPyL63; + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 24, CPyStatic__utils___globals, "str", cpy_r_val); + goto CPyL80; } cpy_r_r4 = CPyDef__utils___hexstr_to_bytes(cpy_r_r3); CPy_DECREF(cpy_r_r3); if (unlikely(cpy_r_r4 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } return cpy_r_r4; CPyL7: ; @@ -514,8 +537,8 @@ CPyL7: ; if (likely(PyByteArray_Check(cpy_r_val))) cpy_r_r6 = cpy_r_val; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 23, CPyStatic__utils___globals, "bytearray", cpy_r_val); - goto CPyL63; + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 26, CPyStatic__utils___globals, "bytearray", cpy_r_val); + goto CPyL80; } cpy_r_r7 = (PyObject *)&PyBytes_Type; PyObject *cpy_r_r8[1] = {cpy_r_r6}; @@ -523,14 +546,14 @@ CPyL7: ; cpy_r_r10 = PyObject_Vectorcall(cpy_r_r7, cpy_r_r9, 1, 0); if (unlikely(cpy_r_r10 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL64; + goto CPyL81; } CPy_DECREF(cpy_r_r6); if (likely(PyBytes_Check(cpy_r_r10))) cpy_r_r11 = cpy_r_r10; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 23, CPyStatic__utils___globals, "bytes", cpy_r_r10); - goto CPyL63; + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 26, CPyStatic__utils___globals, "bytes", cpy_r_r10); + goto CPyL80; } return cpy_r_r11; CPyL12: ; @@ -542,7 +565,7 @@ CPyL12: ; cpy_r_r13 = cpy_r_val == Py_True; if (unlikely(cpy_r_r13 == 2)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } if (!cpy_r_r13) goto CPyL16; cpy_r_r14 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* b'\x01' */ @@ -557,7 +580,7 @@ CPyL17: ; return cpy_r_r15; CPyL18: ; cpy_r_r17 = PyLong_Check(cpy_r_val); - if (!cpy_r_r17) goto CPyL49; + if (!cpy_r_r17) goto CPyL66; if (likely(PyLong_Check(cpy_r_val))) cpy_r_r18 = CPyTagged_FromObject(cpy_r_val); else { @@ -565,25 +588,33 @@ CPyL18: ; } if (unlikely(cpy_r_r18 == CPY_INT_TAG)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } cpy_r_r19 = cpy_r_r18 & 1; cpy_r_r20 = cpy_r_r19 != 0; if (cpy_r_r20) goto CPyL22; - cpy_r_r21 = 0 & 1; + cpy_r_r21 = 510 & 1; cpy_r_r22 = cpy_r_r21 != 0; if (!cpy_r_r22) goto CPyL23; CPyL22: ; - cpy_r_r23 = CPyTagged_IsLt_(cpy_r_r18, 0); + cpy_r_r23 = CPyTagged_IsLt_(510, cpy_r_r18); cpy_r_r24 = cpy_r_r23; goto CPyL24; CPyL23: ; - cpy_r_r25 = (Py_ssize_t)cpy_r_r18 < (Py_ssize_t)0; + cpy_r_r25 = (Py_ssize_t)cpy_r_r18 > (Py_ssize_t)510; cpy_r_r24 = cpy_r_r25; CPyL24: ; CPyTagged_DECREF(cpy_r_r18); - if (!cpy_r_r24) goto CPyL32; - cpy_r_r26 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'Cannot convert negative integer ' */ + if (!cpy_r_r24) goto CPyL42; + if (likely(PyLong_Check(cpy_r_val))) + cpy_r_r26 = CPyTagged_FromObject(cpy_r_val); + else { + CPy_TypeError("int", cpy_r_val); cpy_r_r26 = CPY_INT_TAG; + } + if (unlikely(cpy_r_r26 == CPY_INT_TAG)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL80; + } if (likely(PyLong_Check(cpy_r_val))) cpy_r_r27 = CPyTagged_FromObject(cpy_r_val); else { @@ -591,267 +622,337 @@ CPyL24: ; } if (unlikely(cpy_r_r27 == CPY_INT_TAG)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL82; } - cpy_r_r28 = CPyTagged_Str(cpy_r_r27); + cpy_r_r28 = CPyTagged_BitLength(cpy_r_r27); CPyTagged_DECREF(cpy_r_r27); - if (unlikely(cpy_r_r28 == NULL)) { + if (unlikely(cpy_r_r28 == CPY_INT_TAG)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL82; } - cpy_r_r29 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' to bytes' */ - cpy_r_r30 = CPyStr_Build(3, cpy_r_r26, cpy_r_r28, cpy_r_r29); - CPy_DECREF(cpy_r_r28); - if (unlikely(cpy_r_r30 == NULL)) { + cpy_r_r29 = CPyTagged_Add(cpy_r_r28, 14); + CPyTagged_DECREF(cpy_r_r28); + cpy_r_r30 = CPyTagged_Rshift(cpy_r_r29, 6); + CPyTagged_DECREF(cpy_r_r29); + if (unlikely(cpy_r_r30 == CPY_INT_TAG)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL82; + } + cpy_r_r31 = cpy_r_r30 & 1; + cpy_r_r32 = cpy_r_r31 != 0; + if (cpy_r_r32) goto CPyL31; + cpy_r_r33 = 2 & 1; + cpy_r_r34 = cpy_r_r33 != 0; + if (!cpy_r_r34) goto CPyL32; +CPyL31: ; + cpy_r_r35 = CPyTagged_IsLt_(2, cpy_r_r30); + if (cpy_r_r35) { + goto CPyL33; + } else + goto CPyL83; +CPyL32: ; + cpy_r_r36 = (Py_ssize_t)cpy_r_r30 > (Py_ssize_t)2; + if (!cpy_r_r36) goto CPyL83; +CPyL33: ; + cpy_r_r37 = cpy_r_r30; + goto CPyL35; +CPyL34: ; + cpy_r_r37 = 2; +CPyL35: ; + cpy_r_r38 = cpy_r_r37 & 1; + cpy_r_r39 = cpy_r_r38 == 0; + if (!cpy_r_r39) goto CPyL37; + cpy_r_r40 = (Py_ssize_t)cpy_r_r37 >> 1; + CPyTagged_DECREF(cpy_r_r37); + cpy_r_r41 = cpy_r_r40; + goto CPyL40; +CPyL37: ; + cpy_r_r42 = cpy_r_r37 ^ 1; + cpy_r_r43 = (void *)cpy_r_r42; + cpy_r_r44 = CPyLong_AsInt64(cpy_r_r43); + cpy_r_r45 = cpy_r_r44 == -113; + if (unlikely(cpy_r_r45)) goto CPyL39; +CPyL38: ; + cpy_r_r41 = cpy_r_r44; + CPyTagged_DECREF(cpy_r_r37); + goto CPyL40; +CPyL39: ; + cpy_r_r46 = PyErr_Occurred(); + if (unlikely(cpy_r_r46 != NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL84; + } else + goto CPyL38; +CPyL40: ; + cpy_r_r47 = CPyTagged_ToBigEndianBytes(cpy_r_r26, cpy_r_r41, 0); + CPyTagged_DECREF(cpy_r_r26); + if (unlikely(cpy_r_r47 == NULL)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL80; } - cpy_r_r31 = CPyModule_builtins; - cpy_r_r32 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'ValueError' */ - cpy_r_r33 = CPyObject_GetAttr(cpy_r_r31, cpy_r_r32); - if (unlikely(cpy_r_r33 == NULL)) { + return cpy_r_r47; +CPyL42: ; + if (likely(PyLong_Check(cpy_r_val))) + cpy_r_r48 = CPyTagged_FromObject(cpy_r_val); + else { + CPy_TypeError("int", cpy_r_val); cpy_r_r48 = CPY_INT_TAG; + } + if (unlikely(cpy_r_r48 == CPY_INT_TAG)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL65; + goto CPyL80; } - PyObject *cpy_r_r34[1] = {cpy_r_r30}; - cpy_r_r35 = (PyObject **)&cpy_r_r34; - cpy_r_r36 = PyObject_Vectorcall(cpy_r_r33, cpy_r_r35, 1, 0); - CPy_DECREF(cpy_r_r33); - if (unlikely(cpy_r_r36 == NULL)) { + cpy_r_r49 = cpy_r_r48 & 1; + cpy_r_r50 = cpy_r_r49 != 0; + if (cpy_r_r50) goto CPyL45; + cpy_r_r51 = 0 & 1; + cpy_r_r52 = cpy_r_r51 != 0; + if (!cpy_r_r52) goto CPyL46; +CPyL45: ; + cpy_r_r53 = CPyTagged_IsLt_(cpy_r_r48, 0); + cpy_r_r54 = cpy_r_r53; + goto CPyL47; +CPyL46: ; + cpy_r_r55 = (Py_ssize_t)cpy_r_r48 < (Py_ssize_t)0; + cpy_r_r54 = cpy_r_r55; +CPyL47: ; + CPyTagged_DECREF(cpy_r_r48); + if (!cpy_r_r54) goto CPyL55; + cpy_r_r56 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'Cannot convert negative integer ' */ + if (likely(PyLong_Check(cpy_r_val))) + cpy_r_r57 = CPyTagged_FromObject(cpy_r_val); + else { + CPy_TypeError("int", cpy_r_val); cpy_r_r57 = CPY_INT_TAG; + } + if (unlikely(cpy_r_r57 == CPY_INT_TAG)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL80; + } + cpy_r_r58 = CPyTagged_Str(cpy_r_r57); + CPyTagged_DECREF(cpy_r_r57); + if (unlikely(cpy_r_r58 == NULL)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL80; + } + cpy_r_r59 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' to bytes' */ + cpy_r_r60 = CPyStr_Build(3, cpy_r_r56, cpy_r_r58, cpy_r_r59); + CPy_DECREF(cpy_r_r58); + if (unlikely(cpy_r_r60 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL65; + goto CPyL80; } - CPy_DECREF(cpy_r_r30); - CPy_Raise(cpy_r_r36); - CPy_DECREF(cpy_r_r36); + cpy_r_r61 = CPyModule_builtins; + cpy_r_r62 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'ValueError' */ + cpy_r_r63 = CPyObject_GetAttr(cpy_r_r61, cpy_r_r62); + if (unlikely(cpy_r_r63 == NULL)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL85; + } + PyObject *cpy_r_r64[1] = {cpy_r_r60}; + cpy_r_r65 = (PyObject **)&cpy_r_r64; + cpy_r_r66 = PyObject_Vectorcall(cpy_r_r63, cpy_r_r65, 1, 0); + CPy_DECREF(cpy_r_r63); + if (unlikely(cpy_r_r66 == NULL)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL85; + } + CPy_DECREF(cpy_r_r60); + CPy_Raise(cpy_r_r66); + CPy_DECREF(cpy_r_r66); if (unlikely(!0)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } CPy_Unreachable(); -CPyL32: ; - if (likely(PyLong_Check(cpy_r_val))) - cpy_r_r37 = CPyTagged_FromObject(cpy_r_val); - else { - CPy_TypeError("int", cpy_r_val); cpy_r_r37 = CPY_INT_TAG; - } - if (unlikely(cpy_r_r37 == CPY_INT_TAG)) { +CPyL55: ; + cpy_r_r67 = LibRTStrings_BytesWriter_internal(); + if (unlikely(cpy_r_r67 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } if (likely(PyLong_Check(cpy_r_val))) - cpy_r_r38 = CPyTagged_FromObject(cpy_r_val); + cpy_r_r68 = CPyTagged_FromObject(cpy_r_val); else { - CPy_TypeError("int", cpy_r_val); cpy_r_r38 = CPY_INT_TAG; + CPy_TypeError("int", cpy_r_val); cpy_r_r68 = CPY_INT_TAG; } - if (unlikely(cpy_r_r38 == CPY_INT_TAG)) { + if (unlikely(cpy_r_r68 == CPY_INT_TAG)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL66; - } - cpy_r_r39 = CPyTagged_BitLength(cpy_r_r38); - CPyTagged_DECREF(cpy_r_r38); - if (unlikely(cpy_r_r39 == CPY_INT_TAG)) { + goto CPyL86; + } + cpy_r_r69 = cpy_r_r68 & 1; + cpy_r_r70 = cpy_r_r69 == 0; + if (!cpy_r_r70) goto CPyL87; + cpy_r_r71 = (Py_ssize_t)cpy_r_r68 < (Py_ssize_t)512; + if (!cpy_r_r71) goto CPyL87; + cpy_r_r72 = (Py_ssize_t)cpy_r_r68 >= (Py_ssize_t)0; + if (!cpy_r_r72) goto CPyL87; + cpy_r_r73 = (Py_ssize_t)cpy_r_r68 >> 1; + CPyTagged_DECREF(cpy_r_r68); + cpy_r_r74 = cpy_r_r73; + goto CPyL63; +CPyL61: ; + CPyUInt8_Overflow(); + if (unlikely(!0)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL66; + goto CPyL80; } - cpy_r_r40 = CPyTagged_Add(cpy_r_r39, 14); - CPyTagged_DECREF(cpy_r_r39); - cpy_r_r41 = CPyTagged_Rshift(cpy_r_r40, 6); - CPyTagged_DECREF(cpy_r_r40); - if (unlikely(cpy_r_r41 == CPY_INT_TAG)) { - CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL66; - } - cpy_r_r42 = cpy_r_r41 & 1; - cpy_r_r43 = cpy_r_r42 != 0; - if (cpy_r_r43) goto CPyL38; - cpy_r_r44 = 2 & 1; - cpy_r_r45 = cpy_r_r44 != 0; - if (!cpy_r_r45) goto CPyL39; -CPyL38: ; - cpy_r_r46 = CPyTagged_IsLt_(2, cpy_r_r41); - if (cpy_r_r46) { - goto CPyL40; - } else - goto CPyL67; -CPyL39: ; - cpy_r_r47 = (Py_ssize_t)cpy_r_r41 > (Py_ssize_t)2; - if (!cpy_r_r47) goto CPyL67; -CPyL40: ; - cpy_r_r48 = cpy_r_r41; - goto CPyL42; -CPyL41: ; - cpy_r_r48 = 2; -CPyL42: ; - cpy_r_r49 = cpy_r_r48 & 1; - cpy_r_r50 = cpy_r_r49 == 0; - if (!cpy_r_r50) goto CPyL44; - cpy_r_r51 = (Py_ssize_t)cpy_r_r48 >> 1; - CPyTagged_DECREF(cpy_r_r48); - cpy_r_r52 = cpy_r_r51; - goto CPyL47; -CPyL44: ; - cpy_r_r53 = cpy_r_r48 ^ 1; - cpy_r_r54 = (void *)cpy_r_r53; - cpy_r_r55 = CPyLong_AsInt64(cpy_r_r54); - cpy_r_r56 = cpy_r_r55 == -113; - if (unlikely(cpy_r_r56)) goto CPyL46; -CPyL45: ; - cpy_r_r52 = cpy_r_r55; - CPyTagged_DECREF(cpy_r_r48); - goto CPyL47; -CPyL46: ; - cpy_r_r57 = PyErr_Occurred(); - if (unlikely(cpy_r_r57 != NULL)) { + CPy_Unreachable(); +CPyL63: ; + cpy_r_r75 = CPyBytesWriter_Append(cpy_r_r67, cpy_r_r74); + if (unlikely(cpy_r_r75 == 2)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL68; - } else - goto CPyL45; -CPyL47: ; - cpy_r_r58 = CPyTagged_ToBigEndianBytes(cpy_r_r37, cpy_r_r52, 0); - CPyTagged_DECREF(cpy_r_r37); - if (unlikely(cpy_r_r58 == NULL)) { + goto CPyL86; + } + cpy_r_r76 = LibRTStrings_BytesWriter_getvalue_internal(cpy_r_r67); + CPy_DECREF(cpy_r_r67); + if (unlikely(cpy_r_r76 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; - } - return cpy_r_r58; -CPyL49: ; - cpy_r_r59 = CPyModule_builtins; - cpy_r_r60 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'memoryview' */ - cpy_r_r61 = CPyObject_GetAttr(cpy_r_r59, cpy_r_r60); - if (unlikely(cpy_r_r61 == NULL)) { + goto CPyL80; + } + return cpy_r_r76; +CPyL66: ; + cpy_r_r77 = CPyModule_builtins; + cpy_r_r78 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'memoryview' */ + cpy_r_r79 = CPyObject_GetAttr(cpy_r_r77, cpy_r_r78); + if (unlikely(cpy_r_r79 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } - cpy_r_r62 = PyObject_IsInstance(cpy_r_val, cpy_r_r61); - CPy_DECREF(cpy_r_r61); - cpy_r_r63 = cpy_r_r62 >= 0; - if (unlikely(!cpy_r_r63)) { + cpy_r_r80 = PyObject_IsInstance(cpy_r_val, cpy_r_r79); + CPy_DECREF(cpy_r_r79); + cpy_r_r81 = cpy_r_r80 >= 0; + if (unlikely(!cpy_r_r81)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; - } - cpy_r_r64 = cpy_r_r62; - if (!cpy_r_r64) goto CPyL55; - cpy_r_r65 = (PyObject *)&PyBytes_Type; - PyObject *cpy_r_r66[1] = {cpy_r_val}; - cpy_r_r67 = (PyObject **)&cpy_r_r66; - cpy_r_r68 = PyObject_Vectorcall(cpy_r_r65, cpy_r_r67, 1, 0); - if (unlikely(cpy_r_r68 == NULL)) { + goto CPyL80; + } + cpy_r_r82 = cpy_r_r80; + if (!cpy_r_r82) goto CPyL72; + cpy_r_r83 = (PyObject *)&PyBytes_Type; + PyObject *cpy_r_r84[1] = {cpy_r_val}; + cpy_r_r85 = (PyObject **)&cpy_r_r84; + cpy_r_r86 = PyObject_Vectorcall(cpy_r_r83, cpy_r_r85, 1, 0); + if (unlikely(cpy_r_r86 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } - if (likely(PyBytes_Check(cpy_r_r68))) - cpy_r_r69 = cpy_r_r68; + if (likely(PyBytes_Check(cpy_r_r86))) + cpy_r_r87 = cpy_r_r86; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 34, CPyStatic__utils___globals, "bytes", cpy_r_r68); - goto CPyL63; - } - return cpy_r_r69; -CPyL55: ; - cpy_r_r70 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ - cpy_r_r71 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'Cannot convert ' */ - cpy_r_r72 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '{!r:{}}' */ - cpy_r_r73 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ - cpy_r_r74 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'format' */ - PyObject *cpy_r_r75[3] = {cpy_r_r72, cpy_r_val, cpy_r_r73}; - cpy_r_r76 = (PyObject **)&cpy_r_r75; - cpy_r_r77 = PyObject_VectorcallMethod(cpy_r_r74, cpy_r_r76, 9223372036854775811ULL, 0); - if (unlikely(cpy_r_r77 == NULL)) { + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "to_bytes", 41, CPyStatic__utils___globals, "bytes", cpy_r_r86); + goto CPyL80; + } + return cpy_r_r87; +CPyL72: ; + cpy_r_r88 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ + cpy_r_r89 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'Cannot convert ' */ + cpy_r_r90 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '{!r:{}}' */ + cpy_r_r91 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ + cpy_r_r92 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'format' */ + PyObject *cpy_r_r93[3] = {cpy_r_r90, cpy_r_val, cpy_r_r91}; + cpy_r_r94 = (PyObject **)&cpy_r_r93; + cpy_r_r95 = PyObject_VectorcallMethod(cpy_r_r92, cpy_r_r94, 9223372036854775811ULL, 0); + if (unlikely(cpy_r_r95 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; - } - cpy_r_r78 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' of type ' */ - cpy_r_r79 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '{:{}}' */ - cpy_r_r80 = CPy_TYPE(cpy_r_val); - cpy_r_r81 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ - cpy_r_r82 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'format' */ - PyObject *cpy_r_r83[3] = {cpy_r_r79, cpy_r_r80, cpy_r_r81}; - cpy_r_r84 = (PyObject **)&cpy_r_r83; - cpy_r_r85 = PyObject_VectorcallMethod(cpy_r_r82, cpy_r_r84, 9223372036854775811ULL, 0); - if (unlikely(cpy_r_r85 == NULL)) { + goto CPyL80; + } + cpy_r_r96 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' of type ' */ + cpy_r_r97 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '{:{}}' */ + cpy_r_r98 = CPy_TYPE(cpy_r_val); + cpy_r_r99 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ + cpy_r_r100 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'format' */ + PyObject *cpy_r_r101[3] = {cpy_r_r97, cpy_r_r98, cpy_r_r99}; + cpy_r_r102 = (PyObject **)&cpy_r_r101; + cpy_r_r103 = PyObject_VectorcallMethod(cpy_r_r100, cpy_r_r102, 9223372036854775811ULL, 0); + if (unlikely(cpy_r_r103 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL69; + goto CPyL88; } - CPy_DECREF(cpy_r_r80); - cpy_r_r86 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' to bytes' */ - cpy_r_r87 = PyList_New(5); - if (unlikely(cpy_r_r87 == NULL)) { + CPy_DECREF(cpy_r_r98); + cpy_r_r104 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ' to bytes' */ + cpy_r_r105 = PyList_New(5); + if (unlikely(cpy_r_r105 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL70; - } - cpy_r_r88 = (CPyPtr)((CPyPtr)cpy_r_r87 + offsetof(PyListObject, ob_item)); - cpy_r_r89 = *(CPyPtr *)cpy_r_r88; - CPy_INCREF(cpy_r_r71); - *(PyObject * *)cpy_r_r89 = cpy_r_r71; - cpy_r_r90 = cpy_r_r89 + 8; - *(PyObject * *)cpy_r_r90 = cpy_r_r77; - CPy_INCREF(cpy_r_r78); - cpy_r_r91 = cpy_r_r89 + 16; - *(PyObject * *)cpy_r_r91 = cpy_r_r78; - cpy_r_r92 = cpy_r_r89 + 24; - *(PyObject * *)cpy_r_r92 = cpy_r_r85; - CPy_INCREF(cpy_r_r86); - cpy_r_r93 = cpy_r_r89 + 32; - *(PyObject * *)cpy_r_r93 = cpy_r_r86; - cpy_r_r94 = PyUnicode_Join(cpy_r_r70, cpy_r_r87); - CPy_DECREF_NO_IMM(cpy_r_r87); - if (unlikely(cpy_r_r94 == NULL)) { + goto CPyL89; + } + cpy_r_r106 = (CPyPtr)((CPyPtr)cpy_r_r105 + offsetof(PyListObject, ob_item)); + cpy_r_r107 = *(CPyPtr *)cpy_r_r106; + CPy_INCREF(cpy_r_r89); + *(PyObject * *)cpy_r_r107 = cpy_r_r89; + cpy_r_r108 = cpy_r_r107 + 8; + *(PyObject * *)cpy_r_r108 = cpy_r_r95; + CPy_INCREF(cpy_r_r96); + cpy_r_r109 = cpy_r_r107 + 16; + *(PyObject * *)cpy_r_r109 = cpy_r_r96; + cpy_r_r110 = cpy_r_r107 + 24; + *(PyObject * *)cpy_r_r110 = cpy_r_r103; + CPy_INCREF(cpy_r_r104); + cpy_r_r111 = cpy_r_r107 + 32; + *(PyObject * *)cpy_r_r111 = cpy_r_r104; + cpy_r_r112 = PyUnicode_Join(cpy_r_r88, cpy_r_r105); + CPy_DECREF_NO_IMM(cpy_r_r105); + if (unlikely(cpy_r_r112 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } - cpy_r_r95 = CPyModule_builtins; - cpy_r_r96 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'TypeError' */ - cpy_r_r97 = CPyObject_GetAttr(cpy_r_r95, cpy_r_r96); - if (unlikely(cpy_r_r97 == NULL)) { + cpy_r_r113 = CPyModule_builtins; + cpy_r_r114 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'TypeError' */ + cpy_r_r115 = CPyObject_GetAttr(cpy_r_r113, cpy_r_r114); + if (unlikely(cpy_r_r115 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL71; + goto CPyL90; } - PyObject *cpy_r_r98[1] = {cpy_r_r94}; - cpy_r_r99 = (PyObject **)&cpy_r_r98; - cpy_r_r100 = PyObject_Vectorcall(cpy_r_r97, cpy_r_r99, 1, 0); - CPy_DECREF(cpy_r_r97); - if (unlikely(cpy_r_r100 == NULL)) { + PyObject *cpy_r_r116[1] = {cpy_r_r112}; + cpy_r_r117 = (PyObject **)&cpy_r_r116; + cpy_r_r118 = PyObject_Vectorcall(cpy_r_r115, cpy_r_r117, 1, 0); + CPy_DECREF(cpy_r_r115); + if (unlikely(cpy_r_r118 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL71; + goto CPyL90; } - CPy_DECREF(cpy_r_r94); - CPy_Raise(cpy_r_r100); - CPy_DECREF(cpy_r_r100); + CPy_DECREF(cpy_r_r112); + CPy_Raise(cpy_r_r118); + CPy_DECREF(cpy_r_r118); if (unlikely(!0)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "to_bytes", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL63; + goto CPyL80; } CPy_Unreachable(); -CPyL63: ; - cpy_r_r101 = NULL; - return cpy_r_r101; -CPyL64: ; +CPyL80: ; + cpy_r_r119 = NULL; + return cpy_r_r119; +CPyL81: ; CPy_DecRef(cpy_r_r6); - goto CPyL63; -CPyL65: ; - CPy_DecRef(cpy_r_r30); - goto CPyL63; -CPyL66: ; - CPyTagged_DecRef(cpy_r_r37); - goto CPyL63; -CPyL67: ; - CPyTagged_DECREF(cpy_r_r41); - goto CPyL41; -CPyL68: ; + goto CPyL80; +CPyL82: ; + CPyTagged_DecRef(cpy_r_r26); + goto CPyL80; +CPyL83: ; + CPyTagged_DECREF(cpy_r_r30); + goto CPyL34; +CPyL84: ; + CPyTagged_DecRef(cpy_r_r26); CPyTagged_DecRef(cpy_r_r37); - CPyTagged_DecRef(cpy_r_r48); - goto CPyL63; -CPyL69: ; - CPy_DecRef(cpy_r_r77); - CPy_DecRef(cpy_r_r80); - goto CPyL63; -CPyL70: ; - CPy_DecRef(cpy_r_r77); - CPy_DecRef(cpy_r_r85); - goto CPyL63; -CPyL71: ; - CPy_DecRef(cpy_r_r94); - goto CPyL63; + goto CPyL80; +CPyL85: ; + CPy_DecRef(cpy_r_r60); + goto CPyL80; +CPyL86: ; + CPy_DecRef(cpy_r_r67); + goto CPyL80; +CPyL87: ; + CPy_DECREF(cpy_r_r67); + CPyTagged_DECREF(cpy_r_r68); + goto CPyL61; +CPyL88: ; + CPy_DecRef(cpy_r_r95); + CPy_DecRef(cpy_r_r98); + goto CPyL80; +CPyL89: ; + CPy_DecRef(cpy_r_r95); + CPy_DecRef(cpy_r_r103); + goto CPyL80; +CPyL90: ; + CPy_DecRef(cpy_r_r112); + goto CPyL80; } PyObject *CPyPy__utils___to_bytes(PyObject *self, PyObject *const *args, size_t nargs, PyObject *kwnames) { @@ -962,7 +1063,7 @@ CPyL2: ; if (likely(PyUnicode_Check(cpy_r_r6))) cpy_r_r7 = cpy_r_r6; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "hexstr_to_bytes", 41, CPyStatic__utils___globals, "str", cpy_r_r6); + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "hexstr_to_bytes", 48, CPyStatic__utils___globals, "str", cpy_r_r6); goto CPyL32; } cpy_r_non_prefixed_hex = cpy_r_r7; @@ -1099,7 +1200,7 @@ CPyL29: ; if (likely(PyBytes_Check(cpy_r_r37))) cpy_r_r38 = cpy_r_r37; else { - CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "hexstr_to_bytes", 61, CPyStatic__utils___globals, "bytes", cpy_r_r37); + CPy_TypeErrorTraceback("faster_hexbytes/_utils.py", "hexstr_to_bytes", 68, CPyStatic__utils___globals, "bytes", cpy_r_r37); goto CPyL32; } return cpy_r_r38; @@ -1186,9 +1287,13 @@ char CPyDef__utils_____top_level__(void) { PyObject *cpy_r_r21; PyObject *cpy_r_r22; PyObject *cpy_r_r23; - int32_t cpy_r_r24; - char cpy_r_r25; - char cpy_r_r26; + PyObject *cpy_r_r24; + PyObject *cpy_r_r25; + PyObject *cpy_r_r26; + PyObject *cpy_r_r27; + int32_t cpy_r_r28; + char cpy_r_r29; + char cpy_r_r30; cpy_r_r0 = CPyModule_builtins; cpy_r_r1 = (PyObject *)&_Py_NoneStruct; cpy_r_r2 = cpy_r_r0 != cpy_r_r1; @@ -1197,7 +1302,7 @@ char CPyDef__utils_____top_level__(void) { cpy_r_r4 = PyImport_Import(cpy_r_r3); if (unlikely(cpy_r_r4 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL8; + goto CPyL9; } CPyModule_builtins = cpy_r_r4; CPy_INCREF(CPyModule_builtins); @@ -1213,40 +1318,51 @@ CPyL3: ; cpy_r_r12 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'faster_hexbytes/_utils.py' */ cpy_r_r13 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* '' */ cpy_r_r14 = CPyImport_ImportMany(cpy_r_r10, cpy_r_r7, cpy_r_r11, cpy_r_r12, cpy_r_r13, cpy_r_r9); - if (!cpy_r_r14) goto CPyL8; + if (!cpy_r_r14) goto CPyL9; cpy_r_r15 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ('Final', 'Union') */ cpy_r_r16 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'typing' */ cpy_r_r17 = CPyStatic__utils___globals; cpy_r_r18 = CPyImport_ImportFromMany(cpy_r_r16, cpy_r_r15, cpy_r_r15, cpy_r_r17); if (unlikely(cpy_r_r18 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL8; + goto CPyL9; } CPyModule_typing = cpy_r_r18; CPy_INCREF(CPyModule_typing); CPy_DECREF(cpy_r_r18); - cpy_r_r19 = CPyModule_binascii; - cpy_r_r20 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'unhexlify' */ - cpy_r_r21 = CPyObject_GetAttr(cpy_r_r19, cpy_r_r20); - if (unlikely(cpy_r_r21 == NULL)) { + cpy_r_r19 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* ('BytesWriter',) */ + cpy_r_r20 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'librt.strings' */ + cpy_r_r21 = CPyStatic__utils___globals; + cpy_r_r22 = CPyImport_ImportFromMany(cpy_r_r20, cpy_r_r19, cpy_r_r19, cpy_r_r21); + if (unlikely(cpy_r_r22 == NULL)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL8; + goto CPyL9; + } + CPyModule_librt___strings = cpy_r_r22; + CPy_INCREF(CPyModule_librt___strings); + CPy_DECREF(cpy_r_r22); + cpy_r_r23 = CPyModule_binascii; + cpy_r_r24 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'unhexlify' */ + cpy_r_r25 = CPyObject_GetAttr(cpy_r_r23, cpy_r_r24); + if (unlikely(cpy_r_r25 == NULL)) { + CPy_AddTraceback("faster_hexbytes/_utils.py", "", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); + goto CPyL9; } - CPyStatic__utils___unhexlify = cpy_r_r21; + CPyStatic__utils___unhexlify = cpy_r_r25; CPy_INCREF(CPyStatic__utils___unhexlify); - cpy_r_r22 = CPyStatic__utils___globals; - cpy_r_r23 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'unhexlify' */ - cpy_r_r24 = CPyDict_SetItem(cpy_r_r22, cpy_r_r23, cpy_r_r21); - CPy_DECREF(cpy_r_r21); - cpy_r_r25 = cpy_r_r24 >= 0; - if (unlikely(!cpy_r_r25)) { + cpy_r_r26 = CPyStatic__utils___globals; + cpy_r_r27 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* 'unhexlify' */ + cpy_r_r28 = CPyDict_SetItem(cpy_r_r26, cpy_r_r27, cpy_r_r25); + CPy_DECREF(cpy_r_r25); + cpy_r_r29 = cpy_r_r28 >= 0; + if (unlikely(!cpy_r_r29)) { CPy_AddTraceback("faster_hexbytes/_utils.py", "", DIFFCHECK_PLACEHOLDER, CPyStatic__utils___globals); - goto CPyL8; + goto CPyL9; } return 1; -CPyL8: ; - cpy_r_r26 = 2; - return cpy_r_r26; +CPyL9: ; + cpy_r_r30 = 2; + return cpy_r_r30; } static PyObject *CPyDunder___get__main_____new___3_HexBytes_obj(PyObject *self, PyObject *instance, PyObject *owner) { @@ -3934,6 +4050,7 @@ CPyL125: ; CPyModule_builtins = Py_None; CPyModule_binascii = Py_None; CPyModule_typing = Py_None; + CPyModule_librt___strings = Py_None; CPyModule_faster_hexbytes___main = Py_None; CPyModule_builtins = Py_None; CPyModule_typing = Py_None; @@ -3957,14 +4074,15 @@ CPyL125: ; "\t\017Cannot convert \a{!r:{}}\006format\t of type \005{:{}}\tTypeError\0020x\0020X\0010", "\002\022UnicodeDecodeError\vhex string ", "\002( may only contain [0-9a-fA-F] characters\bbinascii", - "\006\031faster_hexbytes/_utils.py\b\005Final\005Union\006typing\tunhexlify", - "\b\v__getitem__\005slice\fHexBytes(\'0x\003hex\002\')\rTYPE_CHECKING\bCallable\004cast", - "\004\boverload\rhexbytes.main\027faster_hexbytes/main.py\nmypyc_attr", - "\004\017mypy_extensions\004Self\021typing_extensions\026faster_hexbytes._utils", - "\006\bto_bytes\tBytesLike\a__new__\n_bytes_new\v__prepare__\fstaticmethod", - "\005\b__repr__\tto_0x_hex\n__reduce__\017__annotations__\026mypyc filler docstring", - "\005\a__doc__\n__module__\fnative_class\aacyclic\034allow_interpreted_subclasses", - "\003\022_HexBytesSubclass1\022_HexBytesSubclass2\022_HexBytesSubclass3", + "\006\031faster_hexbytes/_utils.py\b\005Final\005Union\006typing\vBytesWriter", + "\a\rlibrt.strings\tunhexlify\v__getitem__\005slice\fHexBytes(\'0x\003hex\002\')", + "\005\rTYPE_CHECKING\bCallable\004cast\boverload\rhexbytes.main", + "\004\027faster_hexbytes/main.py\nmypyc_attr\017mypy_extensions\004Self", + "\005\021typing_extensions\026faster_hexbytes._utils\bto_bytes\tBytesLike\a__new__", + "\006\n_bytes_new\v__prepare__\fstaticmethod\b__repr__\tto_0x_hex\n__reduce__", + "\004\017__annotations__\026mypyc filler docstring\a__doc__\n__module__", + "\004\fnative_class\aacyclic\034allow_interpreted_subclasses\022_HexBytesSubclass1", + "\002\022_HexBytesSubclass2\022_HexBytesSubclass3", "", }; const char * const CPyLit_Bytes[] = { @@ -3977,9 +4095,9 @@ CPyL125: ; const double CPyLit_Float[] = {0}; const double CPyLit_Complex[] = {0}; const int CPyLit_Tuple[] = { - 14, 1, 4, 1, 5, 1, 11, 3, 32, 32, 32, 1, 80, 2, 35, 36, 6, 44, 45, - 35, 36, 46, 47, 3, 48, 48, 13, 1, 84, 1, 50, 1, 52, 1, 55, 3, 68, 69, - 70, 1, 68 + 15, 1, 4, 1, 5, 1, 11, 3, 32, 32, 32, 1, 82, 2, 35, 36, 1, 38, 6, + 46, 47, 35, 36, 48, 49, 3, 50, 50, 13, 1, 87, 1, 52, 1, 54, 1, 57, 3, + 70, 71, 72, 1, 70 }; const int CPyLit_FrozenSet[] = {0}; CPyModule *CPyModule_faster_hexbytes__internal = NULL; @@ -3997,6 +4115,7 @@ CPyL125: ; PyObject *CPyStatic__utils___globals; CPyModule *CPyModule_binascii; CPyModule *CPyModule_typing; + CPyModule *CPyModule_librt___strings; int CPyExec_faster_hexbytes____utils(PyObject *module); PyObject *CPyInit_faster_hexbytes____utils(void); PyObject *CPyInitOnly_faster_hexbytes____utils(void); diff --git a/build/__native_faster_hexbytes.h b/build/__native_faster_hexbytes.h index b579ab1..d62322b 100644 --- a/build/__native_faster_hexbytes.h +++ b/build/__native_faster_hexbytes.h @@ -2,6 +2,7 @@ #define MYPYC_NATIVE_faster_hexbytes_H #include #include +#include "strings/librt_strings.h" #ifndef MYPYC_DECLARED_tuple_T3OOO #define MYPYC_DECLARED_tuple_T3OOO typedef struct tuple_T3OOO { diff --git a/build/__native_internal_faster_hexbytes.h b/build/__native_internal_faster_hexbytes.h index 33b17cf..c2ed9e1 100644 --- a/build/__native_internal_faster_hexbytes.h +++ b/build/__native_internal_faster_hexbytes.h @@ -6,7 +6,7 @@ int CPyGlobalsInit(void); -extern PyObject *CPyStatics[91]; +extern PyObject *CPyStatics[94]; extern const char * const CPyLit_Str[]; extern const char * const CPyLit_Bytes[]; extern const char * const CPyLit_Int[]; @@ -29,6 +29,7 @@ extern CPyModule *CPyModule_faster_hexbytes____utils; extern PyObject *CPyStatic__utils___globals; extern CPyModule *CPyModule_binascii; extern CPyModule *CPyModule_typing; +extern CPyModule *CPyModule_librt___strings; extern int CPyExec_faster_hexbytes____utils(PyObject *module); extern PyObject *CPyInit_faster_hexbytes____utils(void); extern PyObject *CPyInitOnly_faster_hexbytes____utils(void); From e52a5757a190042ab181e9a53f69afda0bf45b98 Mon Sep 17 00:00:00 2001 From: BobTheBuidler <70677534+BobTheBuidler@users.noreply.github.com> Date: Mon, 1 Jun 2026 00:32:51 -0400 Subject: [PATCH 3/4] Update params.py --- benchmarks/params.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/benchmarks/params.py b/benchmarks/params.py index 959ff90..7740751 100644 --- a/benchmarks/params.py +++ b/benchmarks/params.py @@ -85,12 +85,10 @@ def variant_ids(base_ids: List[str], prefix: str) -> List[str]: STR_IDS: List[str] = [id for _, id in STR_CASES] INT_CASES: List[Tuple[int, str]] = [ - (1, "1"), - (255, "255"), - (123456, "123456"), (0, "0"), (1, "1"), (255, "255"), + (123456, "123456"), (2**8, "2**8"), (2**16, "2**16"), (2**32, "2**32"), From 944d62d693ee49201f61152191dbee83a9e01a3e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 1 Jun 2026 05:00:02 +0000 Subject: [PATCH 4/4] Update benchmark results [skip ci] --- benchmarks/results/_utils.md | 278 +++++----- benchmarks/results/main.md | 968 ++++++++++++++++++----------------- 2 files changed, 625 insertions(+), 621 deletions(-) diff --git a/benchmarks/results/_utils.md b/benchmarks/results/_utils.md index 1017884..e926f3c 100644 --- a/benchmarks/results/_utils.md +++ b/benchmarks/results/_utils.md @@ -1,141 +1,143 @@ -#### [faster_hexbytes._utils](https://github.com/BobTheBuidler/faster-hexbytes/blob/master/faster_hexbytes/_utils.py) - [view benchmarks](https://github.com/BobTheBuidler/faster-hexbytes/blob/master/benchmarks/test__utils_benchmarks.py) +#### [faster_hexbytes._utils](https://github.com/BobTheBuidler/faster-hexbytes/blob/perf/librt-byteswriter-small-int/faster_hexbytes/_utils.py) - [view benchmarks](https://github.com/BobTheBuidler/faster-hexbytes/blob/perf/librt-byteswriter-small-int/benchmarks/test__utils_benchmarks.py) | Function | Reference Mean | Faster Mean | % Change | Speedup (%) | x Faster | Faster | |----------|---------------|-------------|----------|-------------|----------|--------| -| `hexstr_to_bytes['']` | 0.00019644287946139 | 6.495729684777529e-05 | 66.93% | 202.42% | 3.02x | ✅ | -| `hexstr_to_bytes['0x'+'0'*128]` | 0.0003529677502780531 | 0.00020624066366245532 | 41.57% | 71.14% | 1.71x | ✅ | -| `hexstr_to_bytes['0x'+'00'*64]` | 0.0003514155588447089 | 0.00020694175200823938 | 41.11% | 69.81% | 1.70x | ✅ | -| `hexstr_to_bytes['0x'+'00ff'*16]` | 0.00032373017696021633 | 0.00017412525199111847 | 46.21% | 85.92% | 1.86x | ✅ | -| `hexstr_to_bytes['0x'+'0123456789abcdef'*8]` | 0.0003505364365945207 | 0.0002030489246717799 | 42.07% | 72.64% | 1.73x | ✅ | -| `hexstr_to_bytes['0x'+'1'*64]` | 0.0003216146881088739 | 0.00017373795072843143 | 45.98% | 85.11% | 1.85x | ✅ | -| `hexstr_to_bytes['0x'+'1234567890abcdef'*8]` | 0.0003516763430271054 | 0.00020372640807668504 | 42.07% | 72.62% | 1.73x | ✅ | -| `hexstr_to_bytes['0x'+'a'*128]` | 0.0003514517659901016 | 0.00020363389668845035 | 42.06% | 72.59% | 1.73x | ✅ | -| `hexstr_to_bytes['0x'+'a1b2c3d4'*8]` | 0.0003251220747601722 | 0.00017366878989093665 | 46.58% | 87.21% | 1.87x | ✅ | -| `hexstr_to_bytes['0x'+'b'*2048]` | 0.0013746646610867184 | 0.001176144267705912 | 14.44% | 16.88% | 1.17x | ✅ | -| `hexstr_to_bytes['0x'+'badc0ffee0ddf00d'*4]` | 0.00032534808168562993 | 0.0001765741737486686 | 45.73% | 84.26% | 1.84x | ✅ | -| `hexstr_to_bytes['0x'+'beef'*16]` | 0.00032256620791441365 | 0.00017582960405916108 | 45.49% | 83.45% | 1.83x | ✅ | -| `hexstr_to_bytes['0x'+'c'*1024]` | 0.0008511116794081612 | 0.0006871574657442356 | 19.26% | 23.86% | 1.24x | ✅ | -| `hexstr_to_bytes['0x'+'cafebabe'*8]` | 0.0003227280667315245 | 0.00017527864528752349 | 45.69% | 84.12% | 1.84x | ✅ | -| `hexstr_to_bytes['0x'+'d'*512]` | 0.0005711890887641091 | 0.0004001285552449447 | 29.95% | 42.75% | 1.43x | ✅ | -| `hexstr_to_bytes['0x'+'dead'*16]` | 0.0003239070265406756 | 0.0001725778035440179 | 46.72% | 87.69% | 1.88x | ✅ | -| `hexstr_to_bytes['0x'+'e'*256]` | 0.0004352873495572084 | 0.00027232667205646195 | 37.44% | 59.84% | 1.60x | ✅ | -| `hexstr_to_bytes['0x'+'f'*128]` | 0.0003498033935466496 | 0.00019876120423529327 | 43.18% | 75.99% | 1.76x | ✅ | -| `hexstr_to_bytes['0x'+'f'*64]` | 0.000322604738486375 | 0.00017410604227753625 | 46.03% | 85.29% | 1.85x | ✅ | -| `hexstr_to_bytes['0x'+'facefeed'*8]` | 0.0003214240954340531 | 0.00017674437266484798 | 45.01% | 81.86% | 1.82x | ✅ | -| `hexstr_to_bytes['0x'+'ff'*32]` | 0.00032149330195811265 | 0.0001763916154655729 | 45.13% | 82.26% | 1.82x | ✅ | -| `hexstr_to_bytes['0x'+'ff00'*16]` | 0.00032532167696305007 | 0.00017701535439531177 | 45.59% | 83.78% | 1.84x | ✅ | -| `hexstr_to_bytes['0x']` | 0.00023279402241423942 | 6.20497929092587e-05 | 73.35% | 275.17% | 3.75x | ✅ | -| `hexstr_to_bytes['0x0']` | 0.00032728040396720213 | 0.0001683257438760077 | 48.57% | 94.43% | 1.94x | ✅ | -| `hexstr_to_bytes['0x1']` | 0.00032553633577693037 | 0.00016867895281810763 | 48.18% | 92.99% | 1.93x | ✅ | -| `hexstr_to_bytes['0x1234']` | 0.00029593792251447125 | 0.0001504111601290559 | 49.17% | 96.75% | 1.97x | ✅ | -| `hexstr_to_bytes['0xCAFEBABE']` | 0.00030038117158767523 | 0.0001534519901198782 | 48.91% | 95.75% | 1.96x | ✅ | -| `hexstr_to_bytes['0xabcdef']` | 0.00029934435409137785 | 0.00015230001694162352 | 49.12% | 96.55% | 1.97x | ✅ | -| `hexstr_to_bytes['0xdeadbeef']` | 0.0003003054186192815 | 0.00015307100031361788 | 49.03% | 96.19% | 1.96x | ✅ | -| `hexstr_to_bytes['deadbeef']` | 0.00024300962705553627 | 0.00013050685568528517 | 46.30% | 86.20% | 1.86x | ✅ | -| `to_bytes['']` | 0.00030878506589023875 | 7.482688638624503e-05 | 75.77% | 312.67% | 4.13x | ✅ | -| `to_bytes['0x'+'00'*64]` | 0.00048357433510890803 | 0.000213471280823453 | 55.86% | 126.53% | 2.27x | ✅ | -| `to_bytes['0x'+'a'*128]` | 0.0004727453651847345 | 0.00021033321446559778 | 55.51% | 124.76% | 2.25x | ✅ | -| `to_bytes['0x'+'ff'*32]` | 0.00045107256925182624 | 0.00018235008562638298 | 59.57% | 147.37% | 2.47x | ✅ | -| `to_bytes['0x']` | 0.000346962634039524 | 7.281808872207676e-05 | 79.01% | 376.48% | 4.76x | ✅ | -| `to_bytes['0x1234']` | 0.0004252787563290974 | 0.00015792049968585273 | 62.87% | 169.30% | 2.69x | ✅ | -| `to_bytes['0xCAFEBABE']` | 0.00042653225277073834 | 0.00016125316451101333 | 62.19% | 164.51% | 2.65x | ✅ | -| `to_bytes['0xabcdef']` | 0.00042794149096414986 | 0.0001594577287126986 | 62.74% | 168.37% | 2.68x | ✅ | -| `to_bytes['0xdeadbeef']` | 0.00042118152524342034 | 0.00016110630744872308 | 61.75% | 161.43% | 2.61x | ✅ | -| `to_bytes['abc']` | 0.00041606796124672257 | 0.0001741472019960864 | 58.14% | 138.92% | 2.39x | ✅ | -| `to_bytes['deadbeef']` | 0.0003548291542657172 | 0.0001394173981480237 | 60.71% | 154.51% | 2.55x | ✅ | -| `to_bytes[0-9]` | 7.326692163842691e-05 | 4.312279425778047e-05 | 41.14% | 69.90% | 1.70x | ✅ | -| `to_bytes[0]` | 0.0008184973157015487 | 9.545222859380437e-05 | 88.34% | 757.49% | 8.57x | ✅ | -| `to_bytes[123456]` | 0.0008433932484742206 | 9.628996618377352e-05 | 88.58% | 775.89% | 8.76x | ✅ | -| `to_bytes[2**16]` | 0.0008493706658185709 | 9.893530525144082e-05 | 88.35% | 758.51% | 8.59x | ✅ | -| `to_bytes[2**256-1]` | 0.000890452348774017 | 0.0001451750412692737 | 83.70% | 513.36% | 6.13x | ✅ | -| `to_bytes[2**32]` | 0.0008619724324800008 | 0.00011866713142676003 | 86.23% | 626.38% | 7.26x | ✅ | -| `to_bytes[2**64]` | 0.0008659655676622983 | 0.00013098282426154327 | 84.87% | 561.13% | 6.61x | ✅ | -| `to_bytes[2**8]` | 0.0008434945981070839 | 9.58237451301293e-05 | 88.64% | 780.26% | 8.80x | ✅ | -| `to_bytes[4-byte pattern]` | 7.685787092547474e-05 | 4.3444300399474914e-05 | 43.47% | 76.91% | 1.77x | ✅ | -| `to_bytes[False]` | 0.00025328986964969364 | 5.101201141834279e-05 | 79.86% | 396.53% | 4.97x | ✅ | -| `to_bytes[True]` | 0.00025883040936765196 | 5.249965854669928e-05 | 79.72% | 393.01% | 4.93x | ✅ | -| `to_bytes[all byte values]` | 7.42432316367819e-05 | 4.410294235049843e-05 | 40.60% | 68.34% | 1.68x | ✅ | -| `to_bytes[alternating 0x00/0xff]` | 7.498655157810199e-05 | 4.473584616101414e-05 | 40.34% | 67.62% | 1.68x | ✅ | -| `to_bytes[alternating 0xaa/0x55]` | 7.534113593064687e-05 | 4.4325742448733996e-05 | 41.17% | 69.97% | 1.70x | ✅ | -| `to_bytes[ascii sentence]` | 7.464495962927722e-05 | 4.446316926032503e-05 | 40.43% | 67.88% | 1.68x | ✅ | -| `to_bytes[b'']` | 7.400258269601201e-05 | 4.428319338697018e-05 | 40.16% | 67.11% | 1.67x | ✅ | -| `to_bytes[b'\\x00'*32]` | 7.511282603042046e-05 | 4.0366622937453126e-05 | 46.26% | 86.08% | 1.86x | ✅ | -| `to_bytes[b'\\x00\\xff\\x00\\xff']` | 7.502538163810024e-05 | 4.3659396639947825e-05 | 41.81% | 71.84% | 1.72x | ✅ | -| `to_bytes[b'\\x01'*100]` | 7.40548962257152e-05 | 4.27783718296735e-05 | 42.23% | 73.11% | 1.73x | ✅ | -| `to_bytes[b'\\x01'*2048]` | 7.510791149385825e-05 | 4.394666382229839e-05 | 41.49% | 70.91% | 1.71x | ✅ | -| `to_bytes[b'\\x01\\x02\\x03']` | 7.487090353384641e-05 | 4.345853389188559e-05 | 41.96% | 72.28% | 1.72x | ✅ | -| `to_bytes[b'\\x10\\x20\\x30\\x40\\x50']` | 7.459258749240445e-05 | 4.3600023321501735e-05 | 41.55% | 71.08% | 1.71x | ✅ | -| `to_bytes[b'\\x7f'*8]` | 7.521541941448402e-05 | 4.3377889784566246e-05 | 42.33% | 73.40% | 1.73x | ✅ | -| `to_bytes[b'\\x80'*8]` | 7.42081562500114e-05 | 4.37439225129289e-05 | 41.05% | 69.64% | 1.70x | ✅ | -| `to_bytes[b'\\xde\\xad\\xbe\\xef']` | 7.464818254334002e-05 | 4.461086963327299e-05 | 40.24% | 67.33% | 1.67x | ✅ | -| `to_bytes[b'\\xff'*64]` | 7.562187954707116e-05 | 4.3194719492856936e-05 | 42.88% | 75.07% | 1.75x | ✅ | -| `to_bytes[b'a'*1024]` | 7.499354063519866e-05 | 4.399575691314128e-05 | 41.33% | 70.46% | 1.70x | ✅ | -| `to_bytes[b'abc']` | 7.04222644640539e-05 | 4.382471334061572e-05 | 37.77% | 60.69% | 1.61x | ✅ | -| `to_bytes[bytearray(0-9)]` | 0.00031204805919586993 | 0.0001488714955185173 | 52.29% | 109.61% | 2.10x | ✅ | -| `to_bytes[bytearray(4-byte pattern)]` | 0.0003170470876185367 | 0.00014941735073168135 | 52.87% | 112.19% | 2.12x | ✅ | -| `to_bytes[bytearray(all byte values)]` | 0.00032047490279113374 | 0.00014947657215017457 | 53.36% | 114.40% | 2.14x | ✅ | -| `to_bytes[bytearray(alternating 0x00/0xff)]` | 0.00031606668601325433 | 0.00014861508917204513 | 52.98% | 112.67% | 2.13x | ✅ | -| `to_bytes[bytearray(alternating 0xaa/0x55)]` | 0.0003131745563500016 | 0.00014946709924073672 | 52.27% | 109.53% | 2.10x | ✅ | -| `to_bytes[bytearray(ascii sentence)]` | 0.00031905988227760943 | 0.00014870647510843517 | 53.39% | 114.56% | 2.15x | ✅ | -| `to_bytes[bytearray(b'')]` | 0.00029271104594656 | 0.00012528528855154934 | 57.20% | 133.64% | 2.34x | ✅ | -| `to_bytes[bytearray(b'\\x00'*32)]` | 0.0003184609803035545 | 0.00014849213657120764 | 53.37% | 114.46% | 2.14x | ✅ | -| `to_bytes[bytearray(b'\\x00\\xff\\x00\\xff')]` | 0.00031687342426159126 | 0.00014653980175619982 | 53.75% | 116.24% | 2.16x | ✅ | -| `to_bytes[bytearray(b'\\x01'*100)]` | 0.00031361465193372996 | 0.00014892629464912226 | 52.51% | 110.58% | 2.11x | ✅ | -| `to_bytes[bytearray(b'\\x01'*2048)]` | 0.0003853181267766132 | 0.0002039755432890079 | 47.06% | 88.90% | 1.89x | ✅ | -| `to_bytes[bytearray(b'\\x01\\x02\\x03')]` | 0.0003103272103426381 | 0.00014562782308710193 | 53.07% | 113.10% | 2.13x | ✅ | -| `to_bytes[bytearray(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0003149645775455534 | 0.00014664162107572254 | 53.44% | 114.79% | 2.15x | ✅ | -| `to_bytes[bytearray(b'\\x7f'*8)]` | 0.00031463625948193765 | 0.00014968681793570322 | 52.43% | 110.20% | 2.10x | ✅ | -| `to_bytes[bytearray(b'\\x80'*8)]` | 0.00031487121692773444 | 0.00014918776109085154 | 52.62% | 111.06% | 2.11x | ✅ | -| `to_bytes[bytearray(b'\\xde\\xad\\xbe\\xef')]` | 0.0003161534545146471 | 0.00014695030583510666 | 53.52% | 115.14% | 2.15x | ✅ | -| `to_bytes[bytearray(b'\\xff'*64)]` | 0.0003175418841569365 | 0.0001483955973792854 | 53.27% | 113.98% | 2.14x | ✅ | -| `to_bytes[bytearray(b'a'*1024)]` | 0.0003791165749899262 | 0.00019031639384053974 | 49.80% | 99.20% | 1.99x | ✅ | -| `to_bytes[bytearray(b'abc')]` | 0.00031263754450427435 | 0.00014764912021509794 | 52.77% | 111.74% | 2.12x | ✅ | -| `to_bytes[bytearray(long alternating)]` | 0.00038255358310636673 | 0.00018955445054953207 | 50.45% | 101.82% | 2.02x | ✅ | -| `to_bytes[bytearray(mixed pattern)]` | 0.0003128751880775172 | 0.000149160208297759 | 52.33% | 109.76% | 2.10x | ✅ | -| `to_bytes[bytearray(multiples of 0x10)]` | 0.00031565258190485544 | 0.00014972072325344018 | 52.57% | 110.83% | 2.11x | ✅ | -| `to_bytes[bytearray(palindrome ascii)]` | 0.00031441981307517574 | 0.00014641040968855576 | 53.43% | 114.75% | 2.15x | ✅ | -| `to_bytes[bytearray(palindrome numeric)]` | 0.00032036187975301134 | 0.00014666936608506804 | 54.22% | 118.42% | 2.18x | ✅ | -| `to_bytes[bytearray(palindrome)]` | 0.000318117374482948 | 0.00014596916676487052 | 54.11% | 117.93% | 2.18x | ✅ | -| `to_bytes[bytearray(repeated 0-9)]` | 0.0003174551476193486 | 0.00014769999813557985 | 53.47% | 114.93% | 2.15x | ✅ | -| `to_bytes[bytearray(single 0xff)]` | 0.00031732635424709476 | 0.0001477350331987794 | 53.44% | 114.79% | 2.15x | ✅ | -| `to_bytes[bytearray(single null byte)]` | 0.000316029865829652 | 0.00014833972686563665 | 53.06% | 113.04% | 2.13x | ✅ | -| `to_bytes[bytearray(two patterns)]` | 0.00031439355947160576 | 0.00014820923084078386 | 52.86% | 112.13% | 2.12x | ✅ | -| `to_bytes[long alternating]` | 7.565879577187713e-05 | 4.4380441035676064e-05 | 41.34% | 70.48% | 1.70x | ✅ | -| `to_bytes[memoryview(0-9)]` | 0.00046700791429927173 | 0.00019893663668405794 | 57.40% | 134.75% | 2.35x | ✅ | -| `to_bytes[memoryview(4-byte pattern)]` | 0.0004684738424593133 | 0.00020072549895980347 | 57.15% | 133.39% | 2.33x | ✅ | -| `to_bytes[memoryview(all byte values)]` | 0.00047347044044183473 | 0.00019793474044703076 | 58.19% | 139.21% | 2.39x | ✅ | -| `to_bytes[memoryview(alternating 0x00/0xff)]` | 0.00046608364964864624 | 0.0001999158198617208 | 57.11% | 133.14% | 2.33x | ✅ | -| `to_bytes[memoryview(alternating 0xaa/0x55)]` | 0.0004691240093137176 | 0.00019579906297945878 | 58.26% | 139.59% | 2.40x | ✅ | -| `to_bytes[memoryview(ascii sentence)]` | 0.00046723677053793 | 0.00019894839717653765 | 57.42% | 134.85% | 2.35x | ✅ | -| `to_bytes[memoryview(b'')]` | 0.00044326091314123673 | 0.00017135741173451683 | 61.34% | 158.68% | 2.59x | ✅ | -| `to_bytes[memoryview(b'\\x00'*32)]` | 0.0004656492193646715 | 0.0001977941274092441 | 57.52% | 135.42% | 2.35x | ✅ | -| `to_bytes[memoryview(b'\\x00\\xff\\x00\\xff')]` | 0.00046820653134189185 | 0.0001950519539144441 | 58.34% | 140.04% | 2.40x | ✅ | -| `to_bytes[memoryview(b'\\x01'*100)]` | 0.0004578742631580452 | 0.00019902451426269873 | 56.53% | 130.06% | 2.30x | ✅ | -| `to_bytes[memoryview(b'\\x01'*2048)]` | 0.0005431064582209022 | 0.00027429045115029817 | 49.50% | 98.00% | 1.98x | ✅ | -| `to_bytes[memoryview(b'\\x01\\x02\\x03')]` | 0.0004746460264603286 | 0.00019515121612264302 | 58.88% | 143.22% | 2.43x | ✅ | -| `to_bytes[memoryview(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.00047049502605379045 | 0.0001989293879395045 | 57.72% | 136.51% | 2.37x | ✅ | -| `to_bytes[memoryview(b'\\x7f'*8)]` | 0.00047297455746295137 | 0.00020020052567035839 | 57.67% | 136.25% | 2.36x | ✅ | -| `to_bytes[memoryview(b'\\x80'*8)]` | 0.0004661381347655785 | 0.0001977721937610561 | 57.57% | 135.69% | 2.36x | ✅ | -| `to_bytes[memoryview(b'\\xde\\xad\\xbe\\xef')]` | 0.000475866639367873 | 0.00019838023233434892 | 58.31% | 139.88% | 2.40x | ✅ | -| `to_bytes[memoryview(b'\\xff'*64)]` | 0.0004640652424539114 | 0.00019801095735658882 | 57.33% | 134.36% | 2.34x | ✅ | -| `to_bytes[memoryview(b'a'*1024)]` | 0.0005290354247787011 | 0.00027044197771726176 | 48.88% | 95.62% | 1.96x | ✅ | -| `to_bytes[memoryview(b'abc')]` | 0.00046462843607928946 | 0.00019809617162884328 | 57.36% | 134.55% | 2.35x | ✅ | -| `to_bytes[memoryview(long alternating)]` | 0.0005374968471997391 | 0.00026079508786266026 | 51.48% | 106.10% | 2.06x | ✅ | -| `to_bytes[memoryview(mixed pattern)]` | 0.0004694295000003288 | 0.00019994549790791497 | 57.41% | 134.78% | 2.35x | ✅ | -| `to_bytes[memoryview(multiples of 0x10)]` | 0.00047296788751841556 | 0.0001976254753074072 | 58.22% | 139.33% | 2.39x | ✅ | -| `to_bytes[memoryview(palindrome ascii)]` | 0.00047269168090196536 | 0.00019644276265607587 | 58.44% | 140.63% | 2.41x | ✅ | -| `to_bytes[memoryview(palindrome numeric)]` | 0.0004775149216170798 | 0.00019860145580637517 | 58.41% | 140.44% | 2.40x | ✅ | -| `to_bytes[memoryview(palindrome)]` | 0.00047464715529392434 | 0.00019797744968059206 | 58.29% | 139.75% | 2.40x | ✅ | -| `to_bytes[memoryview(repeated 0-9)]` | 0.00047198931326988174 | 0.0001981199180923481 | 58.02% | 138.23% | 2.38x | ✅ | -| `to_bytes[memoryview(single 0xff)]` | 0.00047740314656371326 | 0.00019541969729723954 | 59.07% | 144.30% | 2.44x | ✅ | -| `to_bytes[memoryview(single null byte)]` | 0.0004763883982809673 | 0.00019837738716156283 | 58.36% | 140.14% | 2.40x | ✅ | -| `to_bytes[memoryview(two patterns)]` | 0.00047076291279634047 | 0.00019782871064248287 | 57.98% | 137.96% | 2.38x | ✅ | -| `to_bytes[mixed pattern]` | 7.433400237217843e-05 | 4.416972908103791e-05 | 40.58% | 68.29% | 1.68x | ✅ | -| `to_bytes[multiples of 0x10]` | 7.448276259285625e-05 | 4.4462736227940045e-05 | 40.30% | 67.52% | 1.68x | ✅ | -| `to_bytes[palindrome ascii]` | 7.419455415637496e-05 | 4.529647805855474e-05 | 38.95% | 63.80% | 1.64x | ✅ | -| `to_bytes[palindrome numeric]` | 7.335299128099313e-05 | 4.441205663294083e-05 | 39.45% | 65.16% | 1.65x | ✅ | -| `to_bytes[palindrome]` | 7.387515049966695e-05 | 4.4417108739489796e-05 | 39.88% | 66.32% | 1.66x | ✅ | -| `to_bytes[repeated 0-9]` | 7.457500185123571e-05 | 4.4487488907469295e-05 | 40.35% | 67.63% | 1.68x | ✅ | -| `to_bytes[single 0xff]` | 7.415718950211383e-05 | 4.366795065436579e-05 | 41.11% | 69.82% | 1.70x | ✅ | -| `to_bytes[single null byte]` | 7.404199345906247e-05 | 4.5111983056306066e-05 | 39.07% | 64.13% | 1.64x | ✅ | -| `to_bytes[two patterns]` | 7.57256964662003e-05 | 4.372590613582403e-05 | 42.26% | 73.18% | 1.73x | ✅ | +| `hexstr_to_bytes['']` | 0.00017824694375778046 | 6.772750954601463e-05 | 62.00% | 163.18% | 2.63x | ✅ | +| `hexstr_to_bytes['0x'+'0'*128]` | 0.0003647010799681903 | 0.000203047226938572 | 44.33% | 79.61% | 1.80x | ✅ | +| `hexstr_to_bytes['0x'+'00'*64]` | 0.0003402229421429378 | 0.0002035767140783228 | 40.16% | 67.12% | 1.67x | ✅ | +| `hexstr_to_bytes['0x'+'00ff'*16]` | 0.000311305683289576 | 0.00017986796501188464 | 42.22% | 73.07% | 1.73x | ✅ | +| `hexstr_to_bytes['0x'+'0123456789abcdef'*8]` | 0.00033395376923050607 | 0.00020156843208869976 | 39.64% | 65.68% | 1.66x | ✅ | +| `hexstr_to_bytes['0x'+'1'*64]` | 0.00030837182152349034 | 0.00017984085716937247 | 41.68% | 71.47% | 1.71x | ✅ | +| `hexstr_to_bytes['0x'+'1234567890abcdef'*8]` | 0.0003374278671429138 | 0.00020086028154507165 | 40.47% | 67.99% | 1.68x | ✅ | +| `hexstr_to_bytes['0x'+'a'*128]` | 0.00033121653807553975 | 0.0002073916411044047 | 37.38% | 59.71% | 1.60x | ✅ | +| `hexstr_to_bytes['0x'+'a1b2c3d4'*8]` | 0.00031205265689064567 | 0.00018238961798790394 | 41.55% | 71.09% | 1.71x | ✅ | +| `hexstr_to_bytes['0x'+'b'*2048]` | 0.0013331550942146193 | 0.0011539774799529474 | 13.44% | 15.53% | 1.16x | ✅ | +| `hexstr_to_bytes['0x'+'badc0ffee0ddf00d'*4]` | 0.00030843883271274014 | 0.00017958823767049125 | 41.78% | 71.75% | 1.72x | ✅ | +| `hexstr_to_bytes['0x'+'beef'*16]` | 0.00031021788672168957 | 0.000180644900734038 | 41.77% | 71.73% | 1.72x | ✅ | +| `hexstr_to_bytes['0x'+'c'*1024]` | 0.0008310690989008978 | 0.000653138609581404 | 21.41% | 27.24% | 1.27x | ✅ | +| `hexstr_to_bytes['0x'+'cafebabe'*8]` | 0.00031467840146236074 | 0.0001801342360415368 | 42.76% | 74.69% | 1.75x | ✅ | +| `hexstr_to_bytes['0x'+'d'*512]` | 0.000548532296659291 | 0.0003814711266187349 | 30.46% | 43.79% | 1.44x | ✅ | +| `hexstr_to_bytes['0x'+'dead'*16]` | 0.00031180323069745483 | 0.00018067285635597167 | 42.06% | 72.58% | 1.73x | ✅ | +| `hexstr_to_bytes['0x'+'e'*256]` | 0.00041256399520527877 | 0.0002566293001547568 | 37.80% | 60.76% | 1.61x | ✅ | +| `hexstr_to_bytes['0x'+'f'*128]` | 0.0003362706241462122 | 0.00020187346832036817 | 39.97% | 66.57% | 1.67x | ✅ | +| `hexstr_to_bytes['0x'+'f'*64]` | 0.0003114251569078612 | 0.00017993469470929384 | 42.22% | 73.08% | 1.73x | ✅ | +| `hexstr_to_bytes['0x'+'facefeed'*8]` | 0.0003103833396696841 | 0.00017980510283850063 | 42.07% | 72.62% | 1.73x | ✅ | +| `hexstr_to_bytes['0x'+'ff'*32]` | 0.00030753748577686614 | 0.00018001364256666809 | 41.47% | 70.84% | 1.71x | ✅ | +| `hexstr_to_bytes['0x'+'ff00'*16]` | 0.00031230455678770715 | 0.00018121809553038522 | 41.97% | 72.34% | 1.72x | ✅ | +| `hexstr_to_bytes['0x']` | 0.00021199361051708326 | 6.43569735074015e-05 | 69.64% | 229.40% | 3.29x | ✅ | +| `hexstr_to_bytes['0x0']` | 0.0003074635840624241 | 0.000172994187532593 | 43.74% | 77.73% | 1.78x | ✅ | +| `hexstr_to_bytes['0x1']` | 0.00030984234724534625 | 0.0001717583639848375 | 44.57% | 80.39% | 1.80x | ✅ | +| `hexstr_to_bytes['0x1234']` | 0.00028863433556666144 | 0.00015683674069394892 | 45.66% | 84.03% | 1.84x | ✅ | +| `hexstr_to_bytes['0xCAFEBABE']` | 0.00028956005932665287 | 0.0001578878890317013 | 45.47% | 83.40% | 1.83x | ✅ | +| `hexstr_to_bytes['0xabcdef']` | 0.0002930372714210554 | 0.00015708914745128983 | 46.39% | 86.54% | 1.87x | ✅ | +| `hexstr_to_bytes['0xdeadbeef']` | 0.0002897082000575275 | 0.00015911829025826412 | 45.08% | 82.07% | 1.82x | ✅ | +| `hexstr_to_bytes['deadbeef']` | 0.00023409378730822127 | 0.00013942669238477267 | 40.44% | 67.90% | 1.68x | ✅ | +| `to_bytes['']` | 0.0002859828824970705 | 6.853431167619037e-05 | 76.04% | 317.28% | 4.17x | ✅ | +| `to_bytes['0x'+'00'*64]` | 0.0004470255564437362 | 0.0002077680071722129 | 53.52% | 115.16% | 2.15x | ✅ | +| `to_bytes['0x'+'a'*128]` | 0.0004380833268967648 | 0.0002017726408002895 | 53.94% | 117.12% | 2.17x | ✅ | +| `to_bytes['0x'+'ff'*32]` | 0.0004047838884378813 | 0.0001770185321797157 | 56.27% | 128.67% | 2.29x | ✅ | +| `to_bytes['0x']` | 0.00031805408617923575 | 6.467036626138192e-05 | 79.67% | 391.81% | 4.92x | ✅ | +| `to_bytes['0x1234']` | 0.00039653305118889017 | 0.00015819193977052414 | 60.11% | 150.67% | 2.51x | ✅ | +| `to_bytes['0xCAFEBABE']` | 0.00040173346236140105 | 0.0001569037493267967 | 60.94% | 156.04% | 2.56x | ✅ | +| `to_bytes['0xabcdef']` | 0.0003932323030901722 | 0.00015749604448649185 | 59.95% | 149.68% | 2.50x | ✅ | +| `to_bytes['0xdeadbeef']` | 0.0003997802285228614 | 0.00015807583954152563 | 60.46% | 152.90% | 2.53x | ✅ | +| `to_bytes['abc']` | 0.00038043419591173803 | 0.000176178353660664 | 53.69% | 115.94% | 2.16x | ✅ | +| `to_bytes['deadbeef']` | 0.00034039720153392457 | 0.00013990397740828718 | 58.90% | 143.31% | 2.43x | ✅ | +| `to_bytes[0-9]` | 8.025133436638232e-05 | 5.046609436844017e-05 | 37.11% | 59.02% | 1.59x | ✅ | +| `to_bytes[0]` | 0.0007498384708586966 | 9.126758034937529e-05 | 87.83% | 721.58% | 8.22x | ✅ | +| `to_bytes[123456]` | 0.0007846081705548426 | 0.00010298598534000878 | 86.87% | 661.86% | 7.62x | ✅ | +| `to_bytes[1]` | 0.0007489368532246623 | 9.012804629370214e-05 | 87.97% | 730.97% | 8.31x | ✅ | +| `to_bytes[2**16]` | 0.0007849839658730064 | 0.000103982608645329 | 86.75% | 654.92% | 7.55x | ✅ | +| `to_bytes[2**256-1]` | 0.0008168591588632871 | 0.00014138143297034623 | 82.69% | 477.77% | 5.78x | ✅ | +| `to_bytes[2**32]` | 0.0008058773948245101 | 0.00011689991125684823 | 85.49% | 589.37% | 6.89x | ✅ | +| `to_bytes[2**64]` | 0.0008165258418839946 | 0.00013286841182745586 | 83.73% | 514.54% | 6.15x | ✅ | +| `to_bytes[2**8]` | 0.0007797857970562351 | 9.95105086739109e-05 | 87.24% | 683.62% | 7.84x | ✅ | +| `to_bytes[255]` | 0.0007311849218405539 | 9.388705195871606e-05 | 87.16% | 678.79% | 7.79x | ✅ | +| `to_bytes[4-byte pattern]` | 9.615938171107487e-05 | 4.910950538807578e-05 | 48.93% | 95.81% | 1.96x | ✅ | +| `to_bytes[False]` | 0.0002467231849005877 | 5.088637884541278e-05 | 79.38% | 384.85% | 4.85x | ✅ | +| `to_bytes[True]` | 0.00024724084973140836 | 5.1933464355117996e-05 | 78.99% | 376.07% | 4.76x | ✅ | +| `to_bytes[all byte values]` | 8.125636462486339e-05 | 5.026485145500223e-05 | 38.14% | 61.66% | 1.62x | ✅ | +| `to_bytes[alternating 0x00/0xff]` | 8.0838441520225e-05 | 4.9661619148116915e-05 | 38.57% | 62.78% | 1.63x | ✅ | +| `to_bytes[alternating 0xaa/0x55]` | 8.0554179737394e-05 | 4.917827693170896e-05 | 38.95% | 63.80% | 1.64x | ✅ | +| `to_bytes[ascii sentence]` | 8.137157554917153e-05 | 4.9489509155898825e-05 | 39.18% | 64.42% | 1.64x | ✅ | +| `to_bytes[b'']` | 7.671389115538475e-05 | 4.929810366290145e-05 | 35.74% | 55.61% | 1.56x | ✅ | +| `to_bytes[b'\\x00'*32]` | 7.854594135681193e-05 | 4.934754654735178e-05 | 37.17% | 59.17% | 1.59x | ✅ | +| `to_bytes[b'\\x00\\xff\\x00\\xff']` | 8.149091618114123e-05 | 4.934142006415855e-05 | 39.45% | 65.16% | 1.65x | ✅ | +| `to_bytes[b'\\x01'*100]` | 8.125311443122969e-05 | 5.0480104655242234e-05 | 37.87% | 60.96% | 1.61x | ✅ | +| `to_bytes[b'\\x01'*2048]` | 8.113784382263239e-05 | 4.975896200737478e-05 | 38.67% | 63.06% | 1.63x | ✅ | +| `to_bytes[b'\\x01\\x02\\x03']` | 7.879479843303363e-05 | 4.997862743853839e-05 | 36.57% | 57.66% | 1.58x | ✅ | +| `to_bytes[b'\\x10\\x20\\x30\\x40\\x50']` | 8.011448265756222e-05 | 5.024688599344324e-05 | 37.28% | 59.44% | 1.59x | ✅ | +| `to_bytes[b'\\x7f'*8]` | 7.816441504338827e-05 | 4.975518150401966e-05 | 36.35% | 57.10% | 1.57x | ✅ | +| `to_bytes[b'\\x80'*8]` | 8.028872879131923e-05 | 5.051018977823147e-05 | 37.09% | 58.96% | 1.59x | ✅ | +| `to_bytes[b'\\xde\\xad\\xbe\\xef']` | 8.047988346019068e-05 | 4.996543819930689e-05 | 37.92% | 61.07% | 1.61x | ✅ | +| `to_bytes[b'\\xff'*64]` | 7.928260383438547e-05 | 5.0465376557563375e-05 | 36.35% | 57.10% | 1.57x | ✅ | +| `to_bytes[b'a'*1024]` | 7.981301759674913e-05 | 4.9409250557818885e-05 | 38.09% | 61.53% | 1.62x | ✅ | +| `to_bytes[b'abc']` | 7.784445035142161e-05 | 5.047293845478116e-05 | 35.16% | 54.23% | 1.54x | ✅ | +| `to_bytes[bytearray(0-9)]` | 0.00030838328562884893 | 0.00014070645801527614 | 54.37% | 119.17% | 2.19x | ✅ | +| `to_bytes[bytearray(4-byte pattern)]` | 0.0002976222483620416 | 0.0001437008946611311 | 51.72% | 107.11% | 2.07x | ✅ | +| `to_bytes[bytearray(all byte values)]` | 0.00029743445424528886 | 0.00014028314178102504 | 52.84% | 112.02% | 2.12x | ✅ | +| `to_bytes[bytearray(alternating 0x00/0xff)]` | 0.0002975082432512669 | 0.00014031089740646749 | 52.84% | 112.04% | 2.12x | ✅ | +| `to_bytes[bytearray(alternating 0xaa/0x55)]` | 0.0002967874886362687 | 0.0001398273262308872 | 52.89% | 112.25% | 2.12x | ✅ | +| `to_bytes[bytearray(ascii sentence)]` | 0.00029844181717779216 | 0.0001422333944149906 | 52.34% | 109.83% | 2.10x | ✅ | +| `to_bytes[bytearray(b'')]` | 0.00027267282503432374 | 0.00012360858652375693 | 54.67% | 120.59% | 2.21x | ✅ | +| `to_bytes[bytearray(b'\\x00'*32)]` | 0.0002935996840463067 | 0.000142273855041505 | 51.54% | 106.36% | 2.06x | ✅ | +| `to_bytes[bytearray(b'\\x00\\xff\\x00\\xff')]` | 0.00029601180025213083 | 0.00014297260985224634 | 51.70% | 107.04% | 2.07x | ✅ | +| `to_bytes[bytearray(b'\\x01'*100)]` | 0.00029535191531060434 | 0.00013921812897606454 | 52.86% | 112.15% | 2.12x | ✅ | +| `to_bytes[bytearray(b'\\x01'*2048)]` | 0.00035769959942664727 | 0.00017961781811611551 | 49.79% | 99.14% | 1.99x | ✅ | +| `to_bytes[bytearray(b'\\x01\\x02\\x03')]` | 0.00029624306269996606 | 0.00014375457927467674 | 51.47% | 106.08% | 2.06x | ✅ | +| `to_bytes[bytearray(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0002965897732385143 | 0.00013952323716504695 | 52.96% | 112.57% | 2.13x | ✅ | +| `to_bytes[bytearray(b'\\x7f'*8)]` | 0.00029728877777795255 | 0.00014211737995361196 | 52.20% | 109.19% | 2.09x | ✅ | +| `to_bytes[bytearray(b'\\x80'*8)]` | 0.00029683183214062323 | 0.000144245192235647 | 51.41% | 105.78% | 2.06x | ✅ | +| `to_bytes[bytearray(b'\\xde\\xad\\xbe\\xef')]` | 0.00029508527418871524 | 0.00014440589332748 | 51.06% | 104.34% | 2.04x | ✅ | +| `to_bytes[bytearray(b'\\xff'*64)]` | 0.0003028046464379236 | 0.00014253750459629507 | 52.93% | 112.44% | 2.12x | ✅ | +| `to_bytes[bytearray(b'a'*1024)]` | 0.0003461581296361431 | 0.0001817014699192528 | 47.51% | 90.51% | 1.91x | ✅ | +| `to_bytes[bytearray(b'abc')]` | 0.00029129354008298726 | 0.0001455483057125578 | 50.03% | 100.14% | 2.00x | ✅ | +| `to_bytes[bytearray(long alternating)]` | 0.0003486504959774435 | 0.00018361389487428785 | 47.34% | 89.88% | 1.90x | ✅ | +| `to_bytes[bytearray(mixed pattern)]` | 0.0002968823835227226 | 0.00014491138970072444 | 51.19% | 104.87% | 2.05x | ✅ | +| `to_bytes[bytearray(multiples of 0x10)]` | 0.0002958111668139279 | 0.0001413468825563888 | 52.22% | 109.28% | 2.09x | ✅ | +| `to_bytes[bytearray(palindrome ascii)]` | 0.0002965557037597915 | 0.00014340615438103698 | 51.64% | 106.79% | 2.07x | ✅ | +| `to_bytes[bytearray(palindrome numeric)]` | 0.00029685680413801027 | 0.00014310985289004672 | 51.79% | 107.43% | 2.07x | ✅ | +| `to_bytes[bytearray(palindrome)]` | 0.00029640466255266725 | 0.0001419664338729252 | 52.10% | 108.79% | 2.09x | ✅ | +| `to_bytes[bytearray(repeated 0-9)]` | 0.0002971204020340079 | 0.0001433972668027986 | 51.74% | 107.20% | 2.07x | ✅ | +| `to_bytes[bytearray(single 0xff)]` | 0.00029970135419804235 | 0.00014476487419261885 | 51.70% | 107.03% | 2.07x | ✅ | +| `to_bytes[bytearray(single null byte)]` | 0.0002982111902627482 | 0.00014479598763225912 | 51.45% | 105.95% | 2.06x | ✅ | +| `to_bytes[bytearray(two patterns)]` | 0.0002960937458034573 | 0.000139773054089373 | 52.79% | 111.84% | 2.12x | ✅ | +| `to_bytes[long alternating]` | 8.142307204126759e-05 | 4.9594857926145456e-05 | 39.09% | 64.18% | 1.64x | ✅ | +| `to_bytes[memoryview(0-9)]` | 0.00045443862238119523 | 0.00018202019130253414 | 59.95% | 149.66% | 2.50x | ✅ | +| `to_bytes[memoryview(4-byte pattern)]` | 0.00046334042133480414 | 0.0001763980450355822 | 61.93% | 162.67% | 2.63x | ✅ | +| `to_bytes[memoryview(all byte values)]` | 0.00045675239400948356 | 0.00017594926823153657 | 61.48% | 159.59% | 2.60x | ✅ | +| `to_bytes[memoryview(alternating 0x00/0xff)]` | 0.00045736576473372567 | 0.00018080120285990104 | 60.47% | 152.97% | 2.53x | ✅ | +| `to_bytes[memoryview(alternating 0xaa/0x55)]` | 0.0004509778599365411 | 0.00018044977800249991 | 59.99% | 149.92% | 2.50x | ✅ | +| `to_bytes[memoryview(ascii sentence)]` | 0.0004581398470701279 | 0.0001785283495832585 | 61.03% | 156.62% | 2.57x | ✅ | +| `to_bytes[memoryview(b'')]` | 0.00043878763623870994 | 0.00015893120284539859 | 63.78% | 176.09% | 2.76x | ✅ | +| `to_bytes[memoryview(b'\\x00'*32)]` | 0.0004541142576886085 | 0.00017931715896214335 | 60.51% | 153.25% | 2.53x | ✅ | +| `to_bytes[memoryview(b'\\x00\\xff\\x00\\xff')]` | 0.0004704406727623384 | 0.0001820372914221811 | 61.30% | 158.43% | 2.58x | ✅ | +| `to_bytes[memoryview(b'\\x01'*100)]` | 0.00045713721249392234 | 0.0001818995497595937 | 60.21% | 151.31% | 2.51x | ✅ | +| `to_bytes[memoryview(b'\\x01'*2048)]` | 0.0005047417289374748 | 0.00023158690489512431 | 54.12% | 117.95% | 2.18x | ✅ | +| `to_bytes[memoryview(b'\\x01\\x02\\x03')]` | 0.00045510036549837744 | 0.0001831870604263156 | 59.75% | 148.43% | 2.48x | ✅ | +| `to_bytes[memoryview(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0004606531178900361 | 0.00018210637658511283 | 60.47% | 152.96% | 2.53x | ✅ | +| `to_bytes[memoryview(b'\\x7f'*8)]` | 0.0004551441260849797 | 0.00018160253163877752 | 60.10% | 150.63% | 2.51x | ✅ | +| `to_bytes[memoryview(b'\\x80'*8)]` | 0.0004565246412945507 | 0.0001824052520425918 | 60.04% | 150.28% | 2.50x | ✅ | +| `to_bytes[memoryview(b'\\xde\\xad\\xbe\\xef')]` | 0.0004561669918221619 | 0.00018191063432565263 | 60.12% | 150.76% | 2.51x | ✅ | +| `to_bytes[memoryview(b'\\xff'*64)]` | 0.0004566474897958326 | 0.00017869256057910762 | 60.87% | 155.55% | 2.56x | ✅ | +| `to_bytes[memoryview(b'a'*1024)]` | 0.0004942318024875892 | 0.00022480096124222486 | 54.52% | 119.85% | 2.20x | ✅ | +| `to_bytes[memoryview(b'abc')]` | 0.0004619685955574089 | 0.0001826550027351397 | 60.46% | 152.92% | 2.53x | ✅ | +| `to_bytes[memoryview(long alternating)]` | 0.0004999406282566757 | 0.00023144306232150813 | 53.71% | 116.01% | 2.16x | ✅ | +| `to_bytes[memoryview(mixed pattern)]` | 0.00045757891121270765 | 0.00017717437131546969 | 61.28% | 158.26% | 2.58x | ✅ | +| `to_bytes[memoryview(multiples of 0x10)]` | 0.0004572759617137581 | 0.00018073281896570245 | 60.48% | 153.01% | 2.53x | ✅ | +| `to_bytes[memoryview(palindrome ascii)]` | 0.0004560341674291531 | 0.00017698004559604544 | 61.19% | 157.68% | 2.58x | ✅ | +| `to_bytes[memoryview(palindrome numeric)]` | 0.0004573846353829457 | 0.00017593542891526 | 61.53% | 159.97% | 2.60x | ✅ | +| `to_bytes[memoryview(palindrome)]` | 0.0004560858682525198 | 0.000180316017811413 | 60.46% | 152.94% | 2.53x | ✅ | +| `to_bytes[memoryview(repeated 0-9)]` | 0.0004585096681939486 | 0.00017840089001431358 | 61.09% | 157.01% | 2.57x | ✅ | +| `to_bytes[memoryview(single 0xff)]` | 0.00046287174499548003 | 0.00017856809069619444 | 61.42% | 159.21% | 2.59x | ✅ | +| `to_bytes[memoryview(single null byte)]` | 0.00045821052689182744 | 0.000177613746244635 | 61.24% | 157.98% | 2.58x | ✅ | +| `to_bytes[memoryview(two patterns)]` | 0.0004573054942999865 | 0.00017856603707689102 | 60.95% | 156.10% | 2.56x | ✅ | +| `to_bytes[mixed pattern]` | 8.349178023356622e-05 | 4.88655259569285e-05 | 41.47% | 70.86% | 1.71x | ✅ | +| `to_bytes[multiples of 0x10]` | 8.118147360118264e-05 | 5.0110784065809884e-05 | 38.27% | 62.00% | 1.62x | ✅ | +| `to_bytes[palindrome ascii]` | 8.169188237271946e-05 | 5.01841221162063e-05 | 38.57% | 62.78% | 1.63x | ✅ | +| `to_bytes[palindrome numeric]` | 8.129551641591308e-05 | 4.869694072246799e-05 | 40.10% | 66.94% | 1.67x | ✅ | +| `to_bytes[palindrome]` | 7.943416056415191e-05 | 4.974588558453941e-05 | 37.37% | 59.68% | 1.60x | ✅ | +| `to_bytes[repeated 0-9]` | 8.079514340601276e-05 | 4.874980517245824e-05 | 39.66% | 65.73% | 1.66x | ✅ | +| `to_bytes[single 0xff]` | 7.872493264206853e-05 | 4.723237809839963e-05 | 40.00% | 66.68% | 1.67x | ✅ | +| `to_bytes[single null byte]` | 7.805060129814345e-05 | 4.8292253421752046e-05 | 38.13% | 61.62% | 1.62x | ✅ | +| `to_bytes[two patterns]` | 8.18932700760052e-05 | 4.827191341229127e-05 | 41.06% | 69.65% | 1.70x | ✅ | diff --git a/benchmarks/results/main.md b/benchmarks/results/main.md index 421192c..c7db1f6 100644 --- a/benchmarks/results/main.md +++ b/benchmarks/results/main.md @@ -1,486 +1,488 @@ -#### [faster_hexbytes.main](https://github.com/BobTheBuidler/faster-hexbytes/blob/master/faster_hexbytes/main.py) - [view benchmarks](https://github.com/BobTheBuidler/faster-hexbytes/blob/master/benchmarks/test_main_benchmarks.py) +#### [faster_hexbytes.main](https://github.com/BobTheBuidler/faster-hexbytes/blob/perf/librt-byteswriter-small-int/faster_hexbytes/main.py) - [view benchmarks](https://github.com/BobTheBuidler/faster-hexbytes/blob/perf/librt-byteswriter-small-int/benchmarks/test_main_benchmarks.py) | Function | Reference Mean | Faster Mean | % Change | Speedup (%) | x Faster | Faster | |----------|---------------|-------------|----------|-------------|----------|--------| -| `hexbytes_getitem_index[-1-0-9]` | 0.00026189427649082246 | 0.00027140078253598245 | -3.63% | -3.50% | 0.96x | ❌ | -| `hexbytes_getitem_index[-1-4-byte pattern]` | 0.0002666325504014904 | 0.00027396966893883503 | -2.75% | -2.68% | 0.97x | ❌ | -| `hexbytes_getitem_index[-1-all byte values]` | 0.000254895379603802 | 0.000271051704117737 | -6.34% | -5.96% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-alternating 0x00/0xff]` | 0.00025908442174379535 | 0.0002748392737471128 | -6.08% | -5.73% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-alternating 0xaa/0x55]` | 0.00025755803526930713 | 0.0002723230367583796 | -5.73% | -5.42% | 0.95x | ❌ | -| `hexbytes_getitem_index[-1-ascii sentence]` | 0.0002575103795972878 | 0.0002724502225868428 | -5.80% | -5.48% | 0.95x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x00'*32]` | 0.0002532791368969786 | 0.00027115264962007896 | -7.06% | -6.59% | 0.93x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x00\\xff\\x00\\xff']` | 0.00025774549700709225 | 0.00027387645072500175 | -6.26% | -5.89% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x01'*100]` | 0.00025734625076707723 | 0.0002746429134731567 | -6.72% | -6.30% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x01'*2048]` | 0.0002579319057376879 | 0.0002733961234265995 | -6.00% | -5.66% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x01\\x02\\x03']` | 0.00025910258930499075 | 0.00027384127282721626 | -5.69% | -5.38% | 0.95x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00026217289427048484 | 0.0002735915675083527 | -4.36% | -4.17% | 0.96x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x7f'*8]` | 0.00026364984611245356 | 0.00027345056342253465 | -3.72% | -3.58% | 0.96x | ❌ | -| `hexbytes_getitem_index[-1-b'\\x80'*8]` | 0.00025882428346905097 | 0.0002733699640610409 | -5.62% | -5.32% | 0.95x | ❌ | -| `hexbytes_getitem_index[-1-b'\\xde\\xad\\xbe\\xef']` | 0.0002593448411078391 | 0.0002753373101289579 | -6.17% | -5.81% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-b'\\xff'*64]` | 0.00025922949055570194 | 0.00027099325796757344 | -4.54% | -4.34% | 0.96x | ❌ | -| `hexbytes_getitem_index[-1-b'a'*1024]` | 0.0002571486254797726 | 0.00027379435568906555 | -6.47% | -6.08% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-b'abc']` | 0.0002532932240248594 | 0.00027232612709091015 | -7.51% | -6.99% | 0.93x | ❌ | -| `hexbytes_getitem_index[-1-long alternating]` | 0.0002589540886330445 | 0.00027454672203722653 | -6.02% | -5.68% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-mixed pattern]` | 0.0002566061587227587 | 0.0002730599777605236 | -6.41% | -6.03% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-multiples of 0x10]` | 0.0002598042952312619 | 0.00027626620492131386 | -6.34% | -5.96% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-palindrome ascii]` | 0.0002566773878129841 | 0.00027198117643933983 | -5.96% | -5.63% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-palindrome numeric]` | 0.0002561855743112775 | 0.00027213639590662023 | -6.23% | -5.86% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-palindrome]` | 0.00026092681405622795 | 0.00027403699705158443 | -5.02% | -4.78% | 0.95x | ❌ | -| `hexbytes_getitem_index[-1-repeated 0-9]` | 0.0002585808492072608 | 0.0002744270571983787 | -6.13% | -5.77% | 0.94x | ❌ | -| `hexbytes_getitem_index[-1-two patterns]` | 0.00025654822643922273 | 0.0002739243332348559 | -6.77% | -6.34% | 0.94x | ❌ | -| `hexbytes_getitem_index[0-0-9]` | 0.00025503548214748624 | 0.0002656588116819792 | -4.17% | -4.00% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-4-byte pattern]` | 0.0002556909705718971 | 0.0002695735224414503 | -5.43% | -5.15% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-all byte values]` | 0.0002599778032236565 | 0.0002656021051263057 | -2.16% | -2.12% | 0.98x | ❌ | -| `hexbytes_getitem_index[0-alternating 0x00/0xff]` | 0.0002529257499997945 | 0.00026705569863358077 | -5.59% | -5.29% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-alternating 0xaa/0x55]` | 0.0002549518138118416 | 0.00026848593145541367 | -5.31% | -5.04% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-ascii sentence]` | 0.0002593662302048601 | 0.00026632170892523864 | -2.68% | -2.61% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-b'\\x00'*32]` | 0.0002578068014845792 | 0.0002662505863757408 | -3.28% | -3.17% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-b'\\x00\\xff\\x00\\xff']` | 0.00025270067920753794 | 0.0002651661668900299 | -4.93% | -4.70% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-b'\\x01'*100]` | 0.0002563644611608681 | 0.0002668734686037404 | -4.10% | -3.94% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-b'\\x01'*2048]` | 0.00025692685994859263 | 0.0002661244201073687 | -3.58% | -3.46% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-b'\\x01\\x02\\x03']` | 0.0002673867277699161 | 0.0002651486857288576 | 0.84% | 0.84% | 1.01x | ✅ | -| `hexbytes_getitem_index[0-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00025441703898869633 | 0.00026866977261624423 | -5.60% | -5.30% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-b'\\x7f'*8]` | 0.0002589632252512174 | 0.00026640451990291963 | -2.87% | -2.79% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-b'\\x80'*8]` | 0.0002564944753825588 | 0.0002670824768653803 | -4.13% | -3.96% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-b'\\xde\\xad\\xbe\\xef']` | 0.0002578824807640968 | 0.0002678536286096272 | -3.87% | -3.72% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-b'\\xff'*64]` | 0.00025547668205111527 | 0.00026627132873271607 | -4.23% | -4.05% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-b'a'*1024]` | 0.00025808412655248063 | 0.00026596258877198647 | -3.05% | -2.96% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-b'abc']` | 0.0002555832298303034 | 0.0002678804729527553 | -4.81% | -4.59% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-long alternating]` | 0.00025173502636225954 | 0.00026661002503554755 | -5.91% | -5.58% | 0.94x | ❌ | -| `hexbytes_getitem_index[0-mixed pattern]` | 0.00025708234839561434 | 0.00026819582089949035 | -4.32% | -4.14% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-multiples of 0x10]` | 0.00025352936939764984 | 0.0002677584033822946 | -5.61% | -5.31% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-palindrome ascii]` | 0.0002581744529804659 | 0.00026581083973345205 | -2.96% | -2.87% | 0.97x | ❌ | -| `hexbytes_getitem_index[0-palindrome numeric]` | 0.00025429278311681 | 0.00026618935091145805 | -4.68% | -4.47% | 0.96x | ❌ | -| `hexbytes_getitem_index[0-palindrome]` | 0.00025576016325878025 | 0.0002705503476590888 | -5.78% | -5.47% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-repeated 0-9]` | 0.00024407723988541252 | 0.0002671211709144697 | -9.44% | -8.63% | 0.91x | ❌ | -| `hexbytes_getitem_index[0-single 0xff]` | 0.00025599029622869044 | 0.0002690924307979077 | -5.12% | -4.87% | 0.95x | ❌ | -| `hexbytes_getitem_index[0-single null byte]` | 0.0002571158626955777 | 0.0002729060654808098 | -6.14% | -5.79% | 0.94x | ❌ | -| `hexbytes_getitem_index[0-two patterns]` | 0.0002573089425264948 | 0.00026444517404946514 | -2.77% | -2.70% | 0.97x | ❌ | -| `hexbytes_getitem_index[1-0-9]` | 0.0002555895325088166 | 0.00026784873344027336 | -4.80% | -4.58% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-4-byte pattern]` | 0.0002541884662041276 | 0.00027000522297606353 | -6.22% | -5.86% | 0.94x | ❌ | -| `hexbytes_getitem_index[1-all byte values]` | 0.00025292173198501234 | 0.0002659894007508949 | -5.17% | -4.91% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-alternating 0x00/0xff]` | 0.00025606422569176423 | 0.0002683458507290305 | -4.80% | -4.58% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-alternating 0xaa/0x55]` | 0.000254985751332282 | 0.00026759180369298463 | -4.94% | -4.71% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-ascii sentence]` | 0.0002538162137471036 | 0.00026731850348815785 | -5.32% | -5.05% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\x00'*32]` | 0.0002566713955248796 | 0.0002663930075346633 | -3.79% | -3.65% | 0.96x | ❌ | -| `hexbytes_getitem_index[1-b'\\x00\\xff\\x00\\xff']` | 0.0002541740017810099 | 0.00026752785760701697 | -5.25% | -4.99% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\x01'*100]` | 0.0002564912167480116 | 0.0002688503697423269 | -4.82% | -4.60% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\x01'*2048]` | 0.0002548079018528473 | 0.0002687053335278618 | -5.45% | -5.17% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\x01\\x02\\x03']` | 0.00025207357925128497 | 0.00026643182241327433 | -5.70% | -5.39% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0002527051406211931 | 0.0002680277171012953 | -6.06% | -5.72% | 0.94x | ❌ | -| `hexbytes_getitem_index[1-b'\\x7f'*8]` | 0.0002550778918848682 | 0.0002701251615423875 | -5.90% | -5.57% | 0.94x | ❌ | -| `hexbytes_getitem_index[1-b'\\x80'*8]` | 0.00025528325616247467 | 0.00026797574811674227 | -4.97% | -4.74% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-b'\\xde\\xad\\xbe\\xef']` | 0.000253358876375061 | 0.00026886094553136143 | -6.12% | -5.77% | 0.94x | ❌ | -| `hexbytes_getitem_index[1-b'\\xff'*64]` | 0.00025568110669369685 | 0.0002660245212172851 | -4.05% | -3.89% | 0.96x | ❌ | -| `hexbytes_getitem_index[1-b'a'*1024]` | 0.00024944746820417554 | 0.0002674123857455996 | -7.20% | -6.72% | 0.93x | ❌ | -| `hexbytes_getitem_index[1-b'abc']` | 0.00025141019614432033 | 0.00026751424500186954 | -6.41% | -6.02% | 0.94x | ❌ | -| `hexbytes_getitem_index[1-long alternating]` | 0.00025690247037432043 | 0.0002690752983739161 | -4.74% | -4.52% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-mixed pattern]` | 0.0002544673791106561 | 0.00026835530127643264 | -5.46% | -5.18% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-multiples of 0x10]` | 0.00025579967952744285 | 0.00026664785468392293 | -4.24% | -4.07% | 0.96x | ❌ | -| `hexbytes_getitem_index[1-palindrome ascii]` | 0.00025560042129431235 | 0.00026847241452849027 | -5.04% | -4.79% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-palindrome numeric]` | 0.0002540021602328736 | 0.0002661858121794704 | -4.80% | -4.58% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-palindrome]` | 0.00025558037083811216 | 0.00026788876412257493 | -4.82% | -4.59% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-repeated 0-9]` | 0.00025362307702951153 | 0.0002669564119239964 | -5.26% | -4.99% | 0.95x | ❌ | -| `hexbytes_getitem_index[1-two patterns]` | 0.00025339324899052045 | 0.0002692245792260105 | -6.25% | -5.88% | 0.94x | ❌ | -| `hexbytes_getitem_index[2-0-9]` | 0.0002566459752566059 | 0.00026565815740118366 | -3.51% | -3.39% | 0.97x | ❌ | -| `hexbytes_getitem_index[2-4-byte pattern]` | 0.00025351077325733005 | 0.0002667196392518097 | -5.21% | -4.95% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-all byte values]` | 0.00025325794066779545 | 0.00026241486630545043 | -3.62% | -3.49% | 0.97x | ❌ | -| `hexbytes_getitem_index[2-alternating 0x00/0xff]` | 0.00025535424864764545 | 0.00026670836685589 | -4.45% | -4.26% | 0.96x | ❌ | -| `hexbytes_getitem_index[2-alternating 0xaa/0x55]` | 0.00025480186834627404 | 0.00026751225794412333 | -4.99% | -4.75% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-ascii sentence]` | 0.0002525432669526393 | 0.0002667273903408839 | -5.62% | -5.32% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\x00'*32]` | 0.0002557487471209463 | 0.0002665968398938479 | -4.24% | -4.07% | 0.96x | ❌ | -| `hexbytes_getitem_index[2-b'\\x00\\xff\\x00\\xff']` | 0.0002550123927914793 | 0.0002675534141824995 | -4.92% | -4.69% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\x01'*100]` | 0.00025498966372864703 | 0.00026805249503154057 | -5.12% | -4.87% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\x01'*2048]` | 0.00025509179661077603 | 0.00026631936745298275 | -4.40% | -4.22% | 0.96x | ❌ | -| `hexbytes_getitem_index[2-b'\\x01\\x02\\x03']` | 0.00025490771276300597 | 0.0002691351216761413 | -5.58% | -5.29% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\x10\\x20\\x30\\x40\\x50']` | 0.000254258061874682 | 0.000268294426933456 | -5.52% | -5.23% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\x7f'*8]` | 0.0002526814805541391 | 0.0002677973823606954 | -5.98% | -5.64% | 0.94x | ❌ | -| `hexbytes_getitem_index[2-b'\\x80'*8]` | 0.0002531296756282209 | 0.00026477237191368993 | -4.60% | -4.40% | 0.96x | ❌ | -| `hexbytes_getitem_index[2-b'\\xde\\xad\\xbe\\xef']` | 0.0002535464993138942 | 0.00026803281794241413 | -5.71% | -5.40% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'\\xff'*64]` | 0.0002562745615040809 | 0.0002687575467794821 | -4.87% | -4.64% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'a'*1024]` | 0.00025388192084070774 | 0.00026851500241743684 | -5.76% | -5.45% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-b'abc']` | 0.0002529836096021805 | 0.00026661843661539975 | -5.39% | -5.11% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-long alternating]` | 0.0002556337976642374 | 0.000264912131045856 | -3.63% | -3.50% | 0.96x | ❌ | -| `hexbytes_getitem_index[2-mixed pattern]` | 0.0002526934514067096 | 0.00026843210650797495 | -6.23% | -5.86% | 0.94x | ❌ | -| `hexbytes_getitem_index[2-multiples of 0x10]` | 0.0002507102908484582 | 0.00026835007135200985 | -7.04% | -6.57% | 0.93x | ❌ | -| `hexbytes_getitem_index[2-palindrome ascii]` | 0.00025457786684913503 | 0.0002671100877510187 | -4.92% | -4.69% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-palindrome numeric]` | 0.0002554216866514455 | 0.00026883511511082396 | -5.25% | -4.99% | 0.95x | ❌ | -| `hexbytes_getitem_index[2-palindrome]` | 0.000254303096799468 | 0.0002695865617693516 | -6.01% | -5.67% | 0.94x | ❌ | -| `hexbytes_getitem_index[2-repeated 0-9]` | 0.0002522866446968685 | 0.00026794232410777823 | -6.21% | -5.84% | 0.94x | ❌ | -| `hexbytes_getitem_index[2-two patterns]` | 0.00025323512632848515 | 0.0002680961090857574 | -5.87% | -5.54% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-0-9]` | 0.0002551472363422718 | 0.0002658467995766605 | -4.19% | -4.02% | 0.96x | ❌ | -| `hexbytes_getitem_index[3-4-byte pattern]` | 0.0002547872306693507 | 0.0002688735744100136 | -5.53% | -5.24% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-all byte values]` | 0.00025473521656063186 | 0.0002687970224080623 | -5.52% | -5.23% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-alternating 0x00/0xff]` | 0.00025532031160793457 | 0.00026653434778122165 | -4.39% | -4.21% | 0.96x | ❌ | -| `hexbytes_getitem_index[3-alternating 0xaa/0x55]` | 0.00025788280583328516 | 0.0002659888206162975 | -3.14% | -3.05% | 0.97x | ❌ | -| `hexbytes_getitem_index[3-ascii sentence]` | 0.0002540857815890754 | 0.0002686947979937534 | -5.75% | -5.44% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-b'\\x00'*32]` | 0.00025277890165141146 | 0.00026887297132846837 | -6.37% | -5.99% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-b'\\x00\\xff\\x00\\xff']` | 0.00025484506131435297 | 0.0002699721228358867 | -5.94% | -5.60% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-b'\\x01'*100]` | 0.000255391991206785 | 0.00026454481463965946 | -3.58% | -3.46% | 0.97x | ❌ | -| `hexbytes_getitem_index[3-b'\\x01'*2048]` | 0.0002542395056845746 | 0.00026660805868608826 | -4.86% | -4.64% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00025148873714465257 | 0.0002666752435984023 | -6.04% | -5.69% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-b'\\x7f'*8]` | 0.0002540396394571414 | 0.00026851423027831917 | -5.70% | -5.39% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-b'\\x80'*8]` | 0.00025442509143583727 | 0.0002677699047637354 | -5.25% | -4.98% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-b'\\xde\\xad\\xbe\\xef']` | 0.0002525803152331954 | 0.00026744310264678893 | -5.88% | -5.56% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-b'\\xff'*64]` | 0.0002535989240864943 | 0.0002667988255377891 | -5.21% | -4.95% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-b'a'*1024]` | 0.00025283393217280037 | 0.00026932224444456215 | -6.52% | -6.12% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-long alternating]` | 0.0002556035890975717 | 0.00026742332942100185 | -4.62% | -4.42% | 0.96x | ❌ | -| `hexbytes_getitem_index[3-mixed pattern]` | 0.0002574378533609326 | 0.00026820909600863647 | -4.18% | -4.02% | 0.96x | ❌ | -| `hexbytes_getitem_index[3-multiples of 0x10]` | 0.0002547018548342518 | 0.0002698850512739142 | -5.96% | -5.63% | 0.94x | ❌ | -| `hexbytes_getitem_index[3-palindrome ascii]` | 0.00025608172817861264 | 0.00026824529459916333 | -4.75% | -4.53% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-palindrome numeric]` | 0.00025685901074139764 | 0.00026925056320794015 | -4.82% | -4.60% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-palindrome]` | 0.0002551061640130424 | 0.0002679436459293698 | -5.03% | -4.79% | 0.95x | ❌ | -| `hexbytes_getitem_index[3-repeated 0-9]` | 0.0002562463525492139 | 0.00026723048349941566 | -4.29% | -4.11% | 0.96x | ❌ | -| `hexbytes_getitem_index[3-two patterns]` | 0.00025436689702997597 | 0.0002692881447090677 | -5.87% | -5.54% | 0.94x | ❌ | -| `hexbytes_getitem_index[4-0-9]` | 0.0002551656805521345 | 0.00026857374106758553 | -5.25% | -4.99% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-4-byte pattern]` | 0.00025599406241830165 | 0.0002674528714318261 | -4.48% | -4.28% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-all byte values]` | 0.000256170714808964 | 0.0002678767442545478 | -4.57% | -4.37% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-alternating 0x00/0xff]` | 0.00025602196681514156 | 0.0002679750828367929 | -4.67% | -4.46% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-alternating 0xaa/0x55]` | 0.0002557622248135854 | 0.0002676455582584374 | -4.65% | -4.44% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-ascii sentence]` | 0.0002567900769826448 | 0.0002690141590904018 | -4.76% | -4.54% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-b'\\x00'*32]` | 0.000256222077539487 | 0.0002665311491359238 | -4.02% | -3.87% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-b'\\x01'*100]` | 0.0002566758442783704 | 0.0002674106615957978 | -4.18% | -4.01% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-b'\\x01'*2048]` | 0.0002534104465375739 | 0.00026728807613225617 | -5.48% | -5.19% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0002562072580114802 | 0.0002667435395299031 | -4.11% | -3.95% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-b'\\x7f'*8]` | 0.0002567332113487267 | 0.00026796658177610555 | -4.38% | -4.19% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-b'\\x80'*8]` | 0.0002528508022042359 | 0.00026745763578802035 | -5.78% | -5.46% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-b'\\xff'*64]` | 0.0002570357701487207 | 0.0002667424763838262 | -3.78% | -3.64% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-b'a'*1024]` | 0.00025667839358674575 | 0.0002659844335569583 | -3.63% | -3.50% | 0.97x | ❌ | -| `hexbytes_getitem_index[4-long alternating]` | 0.00025444741079714043 | 0.00026911502891069974 | -5.76% | -5.45% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-mixed pattern]` | 0.00025452460677071034 | 0.00026786315163661187 | -5.24% | -4.98% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-multiples of 0x10]` | 0.00025425623777477953 | 0.00026922879741889344 | -5.89% | -5.56% | 0.94x | ❌ | -| `hexbytes_getitem_index[4-palindrome ascii]` | 0.00025820028259199173 | 0.00026843432110204785 | -3.96% | -3.81% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-palindrome numeric]` | 0.0002563178652651945 | 0.00026604918359271056 | -3.80% | -3.66% | 0.96x | ❌ | -| `hexbytes_getitem_index[4-palindrome]` | 0.0002556747965099116 | 0.00027051018654717626 | -5.80% | -5.48% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-repeated 0-9]` | 0.0002539212029777194 | 0.0002665413944786627 | -4.97% | -4.73% | 0.95x | ❌ | -| `hexbytes_getitem_index[4-two patterns]` | 0.00025770780796062677 | 0.00026843494439990155 | -4.16% | -4.00% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-0-9]` | 0.00025624612190470997 | 0.00026649533448243736 | -4.00% | -3.85% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-4-byte pattern]` | 0.0002556345442935873 | 0.0002619148298042463 | -2.46% | -2.40% | 0.98x | ❌ | -| `hexbytes_getitem_index[5-all byte values]` | 0.0002537861545498548 | 0.00026845170026799117 | -5.78% | -5.46% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-alternating 0x00/0xff]` | 0.00025623681544804645 | 0.0002669389771941398 | -4.18% | -4.01% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-alternating 0xaa/0x55]` | 0.0002553881405847542 | 0.0002668657326172105 | -4.49% | -4.30% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-ascii sentence]` | 0.0002538308118107529 | 0.0002676315338567551 | -5.44% | -5.16% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-b'\\x00'*32]` | 0.0002558302270631931 | 0.00026667082239524017 | -4.24% | -4.07% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-b'\\x01'*100]` | 0.0002582354470118903 | 0.0002677705661114109 | -3.69% | -3.56% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-b'\\x01'*2048]` | 0.00025436542056880206 | 0.00026698609434945965 | -4.96% | -4.73% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-b'\\x7f'*8]` | 0.0002542378022921669 | 0.00026766221841672134 | -5.28% | -5.02% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-b'\\x80'*8]` | 0.0002565125183437363 | 0.00026510692940829575 | -3.35% | -3.24% | 0.97x | ❌ | -| `hexbytes_getitem_index[5-b'\\xff'*64]` | 0.0002578052021408273 | 0.0002673383513021549 | -3.70% | -3.57% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-b'a'*1024]` | 0.0002547166906165478 | 0.00026948393010922466 | -5.80% | -5.48% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-long alternating]` | 0.0002540045519547073 | 0.00026554740756712 | -4.54% | -4.35% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-mixed pattern]` | 0.0002513284672952962 | 0.00026702206019309357 | -6.24% | -5.88% | 0.94x | ❌ | -| `hexbytes_getitem_index[5-multiples of 0x10]` | 0.00025735883462568504 | 0.0002674917579535558 | -3.94% | -3.79% | 0.96x | ❌ | -| `hexbytes_getitem_index[5-palindrome ascii]` | 0.00025341852894725356 | 0.000266142922869192 | -5.02% | -4.78% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-palindrome]` | 0.00025589730255090874 | 0.00026831208660737355 | -4.85% | -4.63% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-repeated 0-9]` | 0.0002539709658937277 | 0.0002687093786026102 | -5.80% | -5.48% | 0.95x | ❌ | -| `hexbytes_getitem_index[5-two patterns]` | 0.00025373706040115736 | 0.000268377765485519 | -5.77% | -5.46% | 0.95x | ❌ | -| `hexbytes_getitem_slice[slice(-3,None)-0-9]` | 0.0008380878369094842 | 0.0005581861493710479 | 33.40% | 50.14% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-4-byte pattern]` | 0.0008424263191477138 | 0.0005645236070988582 | 32.99% | 49.23% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-all byte values]` | 0.0008393124687788537 | 0.0005572243331496028 | 33.61% | 50.62% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-alternating 0x00/0xff]` | 0.0008430859593770015 | 0.0005622259107472764 | 33.31% | 49.96% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-alternating 0xaa/0x55]` | 0.0008394037014790145 | 0.0005511212151087644 | 34.34% | 52.31% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-ascii sentence]` | 0.0008486485490036268 | 0.0005527091016004304 | 34.87% | 53.54% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'']` | 0.000804195152707056 | 0.0005299418960526587 | 34.10% | 51.75% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x00'*32]` | 0.0008440802416443177 | 0.0005580660339397197 | 33.88% | 51.25% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x00\\xff\\x00\\xff']` | 0.0008409972538586227 | 0.0005590277980131077 | 33.53% | 50.44% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01'*100]` | 0.0008445261299014156 | 0.0005575897252961806 | 33.98% | 51.46% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01'*2048]` | 0.0008332973979250123 | 0.0005637128400763744 | 32.35% | 47.82% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01\\x02\\x03']` | 0.0008394210219118738 | 0.0005613710273309955 | 33.12% | 49.53% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0008348940043070429 | 0.0005616046682023443 | 32.73% | 48.66% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x7f'*8]` | 0.0008444312198475456 | 0.0005614392840520855 | 33.51% | 50.40% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\x80'*8]` | 0.0008375480348111926 | 0.0005586936882258928 | 33.29% | 49.91% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\xde\\xad\\xbe\\xef']` | 0.0008445447272714817 | 0.000557178400443935 | 34.03% | 51.58% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'\\xff'*64]` | 0.0008466247070007829 | 0.0005576632160148374 | 34.13% | 51.82% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'a'*1024]` | 0.0008135641040762935 | 0.0005621950304679191 | 30.90% | 44.71% | 1.45x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-b'abc']` | 0.0008418677177287628 | 0.0005626313273530037 | 33.17% | 49.63% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-long alternating]` | 0.0008398337524139582 | 0.0005615047608687852 | 33.14% | 49.57% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-mixed pattern]` | 0.0008434877872517899 | 0.0005611430989623395 | 33.47% | 50.32% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-multiples of 0x10]` | 0.000834145998150403 | 0.0005627699395700051 | 32.53% | 48.22% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-palindrome ascii]` | 0.0008436928239417676 | 0.0005628550896355072 | 33.29% | 49.90% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-palindrome numeric]` | 0.0008510227425323962 | 0.0005616420011083101 | 34.00% | 51.52% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-palindrome]` | 0.0008446872732030553 | 0.0005611142769678897 | 33.57% | 50.54% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-repeated 0-9]` | 0.0008455800182574698 | 0.0005641254224523587 | 33.29% | 49.89% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-single 0xff]` | 0.0008087923220190855 | 0.0005343988504155982 | 33.93% | 51.35% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-single null byte]` | 0.000801915017257186 | 0.0005304868438662113 | 33.85% | 51.17% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(-3,None)-two patterns]` | 0.0008470521324047481 | 0.0005613431628826866 | 33.73% | 50.90% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-0-9]` | 0.0008446180541460622 | 0.0005658212327919118 | 33.01% | 49.27% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-4-byte pattern]` | 0.0008518562057275858 | 0.000567901910810758 | 33.33% | 50.00% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-all byte values]` | 0.0008507102124868405 | 0.0005656032107968269 | 33.51% | 50.41% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-alternating 0x00/0xff]` | 0.0008504478082542427 | 0.0005643509783511412 | 33.64% | 50.69% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-alternating 0xaa/0x55]` | 0.0008468675751751695 | 0.0005603810601964725 | 33.83% | 51.12% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-ascii sentence]` | 0.0008442925068855029 | 0.0005767673859400145 | 31.69% | 46.38% | 1.46x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'']` | 0.0008212952466776929 | 0.0005464771567465004 | 33.46% | 50.29% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x00'*32]` | 0.0008255985239726872 | 0.0005696192399991961 | 31.01% | 44.94% | 1.45x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x00\\xff\\x00\\xff']` | 0.0008533133913409836 | 0.0005677066461635432 | 33.47% | 50.31% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x01'*100]` | 0.0008476801055333022 | 0.0005650921830140164 | 33.34% | 50.01% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x01'*2048]` | 0.0008188496111630879 | 0.0005702618783380574 | 30.36% | 43.59% | 1.44x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x01\\x02\\x03']` | 0.0008496132575473603 | 0.0005709261641003806 | 32.80% | 48.81% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0008393121202418585 | 0.0005655477856742455 | 32.62% | 48.41% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x7f'*8]` | 0.0008518772812781795 | 0.0005505382318427335 | 35.37% | 54.74% | 1.55x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\x80'*8]` | 0.0008484864216762608 | 0.0005603473316513349 | 33.96% | 51.42% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\xde\\xad\\xbe\\xef']` | 0.0008579541580782334 | 0.000564170953554882 | 34.24% | 52.07% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'\\xff'*64]` | 0.0008501974973879269 | 0.0005706068784840971 | 32.89% | 49.00% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'a'*1024]` | 0.0008478313292761478 | 0.0005727335779274566 | 32.45% | 48.03% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-b'abc']` | 0.000851755021033339 | 0.0005681251681458887 | 33.30% | 49.92% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-long alternating]` | 0.0008522307147850567 | 0.0005694059001122057 | 33.19% | 49.67% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-mixed pattern]` | 0.000857016085385779 | 0.0005674444351864188 | 33.79% | 51.03% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-multiples of 0x10]` | 0.0008567393878626262 | 0.0005642242716482224 | 34.14% | 51.84% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-palindrome ascii]` | 0.0008538722445033079 | 0.0005687058528524955 | 33.40% | 50.14% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-palindrome numeric]` | 0.0008474512745409287 | 0.0005655418231922142 | 33.27% | 49.85% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-palindrome]` | 0.0008536569106217537 | 0.0005715764227521833 | 33.04% | 49.35% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-repeated 0-9]` | 0.0008508356885095242 | 0.0005662670151874062 | 33.45% | 50.25% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-single 0xff]` | 0.0008144374126447191 | 0.0005344767956706058 | 34.37% | 52.38% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-single null byte]` | 0.0008124488157467669 | 0.000538635530729635 | 33.70% | 50.83% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(0,3)-two patterns]` | 0.0008498006005187267 | 0.0005715370832392943 | 32.74% | 48.69% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-0-9]` | 0.000842533585151856 | 0.0005659119930349992 | 32.83% | 48.88% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-4-byte pattern]` | 0.0008415810374795094 | 0.0005653610493239391 | 32.82% | 48.86% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-all byte values]` | 0.0008480150105361078 | 0.0005741357895593512 | 32.30% | 47.70% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-alternating 0x00/0xff]` | 0.0008521853117450253 | 0.0005719866347482905 | 32.88% | 48.99% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-alternating 0xaa/0x55]` | 0.0008478577122825994 | 0.0005652733184674969 | 33.33% | 49.99% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-ascii sentence]` | 0.0008523266100362683 | 0.0005685602674381519 | 33.29% | 49.91% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'']` | 0.0008079659474534738 | 0.0005478895617413756 | 32.19% | 47.47% | 1.47x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x00'*32]` | 0.0008502481902288852 | 0.0005639755187051306 | 33.67% | 50.76% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x00\\xff\\x00\\xff']` | 0.0008536932617400216 | 0.0005667609695694725 | 33.61% | 50.63% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x01'*100]` | 0.000841553751314898 | 0.0005712285839016784 | 32.12% | 47.32% | 1.47x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x01'*2048]` | 0.0008501662214526004 | 0.0005671668011525566 | 33.29% | 49.90% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x01\\x02\\x03']` | 0.0008575291318298098 | 0.0005622063705979824 | 34.44% | 52.53% | 1.53x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0008414631571695879 | 0.0005621388704784281 | 33.20% | 49.69% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x7f'*8]` | 0.0008456334771752594 | 0.0005676068098474282 | 32.88% | 48.98% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\x80'*8]` | 0.0008458291475977905 | 0.0005724047056090379 | 32.33% | 47.77% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\xde\\xad\\xbe\\xef']` | 0.0008537101523055756 | 0.0005654311843741231 | 33.77% | 50.98% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'\\xff'*64]` | 0.0008614073613079546 | 0.0005672067675686106 | 34.15% | 51.87% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'a'*1024]` | 0.0008560765087717452 | 0.0005689567700069716 | 33.54% | 50.46% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-b'abc']` | 0.0008504530821406928 | 0.0005666705455088929 | 33.37% | 50.08% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-long alternating]` | 0.0008481076534730021 | 0.0005613531400816698 | 33.81% | 51.08% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-mixed pattern]` | 0.000849877337706773 | 0.0005713086992884744 | 32.78% | 48.76% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-multiples of 0x10]` | 0.000844778973115217 | 0.0005643587755344653 | 33.19% | 49.69% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-palindrome ascii]` | 0.000850131391680576 | 0.0005643026635098675 | 33.62% | 50.65% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-palindrome numeric]` | 0.0008425944664339402 | 0.0005605822081647218 | 33.47% | 50.31% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-palindrome]` | 0.0008681213555562661 | 0.0005646534796412187 | 34.96% | 53.74% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-repeated 0-9]` | 0.0008478754630125428 | 0.0005648263331409399 | 33.38% | 50.11% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-single 0xff]` | 0.0008132161939269876 | 0.0005469155613804619 | 32.75% | 48.69% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-single null byte]` | 0.0008119113728110045 | 0.0005481513903381104 | 32.49% | 48.12% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(1,6)-two patterns]` | 0.0008464773950049753 | 0.000564706830095675 | 33.29% | 49.90% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-0-9]` | 0.0008304257773023808 | 0.0005519248707334393 | 33.54% | 50.46% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-4-byte pattern]` | 0.0008426337082985066 | 0.0005581378847646955 | 33.76% | 50.97% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-all byte values]` | 0.000819171844576467 | 0.0005589927598434787 | 31.76% | 46.54% | 1.47x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-alternating 0x00/0xff]` | 0.0008369133181813431 | 0.0005508217384680401 | 34.18% | 51.94% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-alternating 0xaa/0x55]` | 0.0008350725486637317 | 0.0005535757431966278 | 33.71% | 50.85% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-ascii sentence]` | 0.0008410875704530274 | 0.0005439542874084489 | 35.33% | 54.62% | 1.55x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'']` | 0.0008013558748959945 | 0.0005346503015895229 | 33.28% | 49.88% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x00'*32]` | 0.0008331167551897938 | 0.0005497050234581903 | 34.02% | 51.56% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x00\\xff\\x00\\xff']` | 0.000847475750853936 | 0.0005614153767853493 | 33.75% | 50.95% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x01'*100]` | 0.0008353564901448011 | 0.0005530338077406732 | 33.80% | 51.05% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x01'*2048]` | 0.0010067666649645633 | 0.0007435465688514424 | 26.15% | 35.40% | 1.35x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x01\\x02\\x03']` | 0.0007966549294500826 | 0.0005337026410440836 | 33.01% | 49.27% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0008425158549338519 | 0.0005567824814573626 | 33.91% | 51.32% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x7f'*8]` | 0.0008413565285094437 | 0.0005547233878760838 | 34.07% | 51.67% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\x80'*8]` | 0.0008334303199652405 | 0.000553694772953865 | 33.56% | 50.52% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\xde\\xad\\xbe\\xef']` | 0.0008376630025580651 | 0.0005573633889195754 | 33.46% | 50.29% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'\\xff'*64]` | 0.00083472606792875 | 0.0005538125462608352 | 33.65% | 50.72% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'a'*1024]` | 0.0009468548560384395 | 0.0007068480285125941 | 25.35% | 33.95% | 1.34x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-b'abc']` | 0.0007929218789597881 | 0.0005307949763585161 | 33.06% | 49.38% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-long alternating]` | 0.0009510763701552487 | 0.0006846591593183069 | 28.01% | 38.91% | 1.39x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-mixed pattern]` | 0.0008378080327589557 | 0.0005596246745274016 | 33.20% | 49.71% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-multiples of 0x10]` | 0.0008371879691788865 | 0.0005540507100076196 | 33.82% | 51.10% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-palindrome ascii]` | 0.0008357989888703389 | 0.0005745668216849711 | 31.26% | 45.47% | 1.45x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-palindrome numeric]` | 0.000843581187606906 | 0.0005612788903722514 | 33.46% | 50.30% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-palindrome]` | 0.0008274191596642442 | 0.0005509853291609858 | 33.41% | 50.17% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-repeated 0-9]` | 0.0008382929837762897 | 0.0005613091336827817 | 33.04% | 49.35% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-single 0xff]` | 0.0007983757820387168 | 0.000538618062998233 | 32.54% | 48.23% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-single null byte]` | 0.0008003510993647514 | 0.0005360198056872744 | 33.03% | 49.31% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(2,None)-two patterns]` | 0.0008351033550839329 | 0.000542910452199771 | 34.99% | 53.82% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-0-9]` | 0.000816007747926277 | 0.0005436698914220955 | 33.37% | 50.09% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-4-byte pattern]` | 0.0008270549079957895 | 0.0005584740565903123 | 32.47% | 48.09% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-all byte values]` | 0.0008308788108110261 | 0.0005579217295015754 | 32.85% | 48.92% | 1.49x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-alternating 0x00/0xff]` | 0.0008662139779732373 | 0.0005442913715197398 | 37.16% | 59.15% | 1.59x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-alternating 0xaa/0x55]` | 0.0007849509117890093 | 0.0005414814440079216 | 31.02% | 44.96% | 1.45x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-ascii sentence]` | 0.0008146018277855163 | 0.0005327220652566756 | 34.60% | 52.91% | 1.53x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'']` | 0.0007878547355327463 | 0.0005203029848909561 | 33.96% | 51.42% | 1.51x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x00'*32]` | 0.000825146581650324 | 0.0005425135909067352 | 34.25% | 52.10% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x00\\xff\\x00\\xff']` | 0.0008320317874144465 | 0.0005419727894211377 | 34.86% | 53.52% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x01'*100]` | 0.0008210065645797708 | 0.0005410515164229298 | 34.10% | 51.74% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x01'*2048]` | 0.000996021471185636 | 0.0007409965708777438 | 25.60% | 34.42% | 1.34x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x01\\x02\\x03']` | 0.0008300446270320758 | 0.0005400375216677528 | 34.94% | 53.70% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0008298812771837818 | 0.0005472190996184117 | 34.06% | 51.65% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x7f'*8]` | 0.0007938203573249419 | 0.0005370496542332604 | 32.35% | 47.81% | 1.48x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\x80'*8]` | 0.0008127944875612382 | 0.0005343011676936225 | 34.26% | 52.12% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\xde\\xad\\xbe\\xef']` | 0.000830181192113833 | 0.0005370684274247562 | 35.31% | 54.58% | 1.55x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'\\xff'*64]` | 0.0008200100092598074 | 0.0005218230737601 | 36.36% | 57.14% | 1.57x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'a'*1024]` | 0.0009367313488840553 | 0.000650968089226894 | 30.51% | 43.90% | 1.44x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-b'abc']` | 0.0008287000367656533 | 0.0005449974190117289 | 34.23% | 52.06% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-long alternating]` | 0.0009355951503304413 | 0.0006910294943430671 | 26.14% | 35.39% | 1.35x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-mixed pattern]` | 0.0008190023693467288 | 0.0005450373478521724 | 33.45% | 50.27% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-multiples of 0x10]` | 0.0008206102627256055 | 0.0005392509542050624 | 34.29% | 52.18% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-palindrome ascii]` | 0.0008212642560868431 | 0.0005414836874323865 | 34.07% | 51.67% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-palindrome numeric]` | 0.0008196089067991197 | 0.0005399200181216394 | 34.12% | 51.80% | 1.52x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-palindrome]` | 0.0008246317761710243 | 0.0005340547404607173 | 35.24% | 54.41% | 1.54x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-repeated 0-9]` | 0.0008157035659747385 | 0.0005426407611031056 | 33.48% | 50.32% | 1.50x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-single 0xff]` | 0.00078145962589332 | 0.0005094845448776864 | 34.80% | 53.38% | 1.53x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-single null byte]` | 0.0007856208530073729 | 0.0005150425258475823 | 34.44% | 52.54% | 1.53x | ✅ | -| `hexbytes_getitem_slice[slice(None,None)-two patterns]` | 0.000819237956775173 | 0.0005416077385469525 | 33.89% | 51.26% | 1.51x | ✅ | -| `hexbytes_new['']` | 0.0007431413972397145 | 0.0003115355502482409 | 58.08% | 138.54% | 2.39x | ✅ | -| `hexbytes_new['0x'+'00'*64]` | 0.0009253990419444807 | 0.000470327413793051 | 49.18% | 96.76% | 1.97x | ✅ | -| `hexbytes_new['0x'+'a'*128]` | 0.0009257369038461586 | 0.00045730426220541527 | 50.60% | 102.43% | 2.02x | ✅ | -| `hexbytes_new['0x'+'ff'*32]` | 0.0008845475794301428 | 0.0004256464920791739 | 51.88% | 107.81% | 2.08x | ✅ | -| `hexbytes_new['0x']` | 0.0007890316696076307 | 0.00030855788861436936 | 60.89% | 155.72% | 2.56x | ✅ | -| `hexbytes_new['0x1234']` | 0.0008728998818761805 | 0.00045660853591676653 | 47.69% | 91.17% | 1.91x | ✅ | -| `hexbytes_new['0xCAFEBABE']` | 0.0008592789513069614 | 0.00040283572723567146 | 53.12% | 113.31% | 2.13x | ✅ | -| `hexbytes_new['0xabcdef']` | 0.0008682175626693473 | 0.0004050112875604657 | 53.35% | 114.37% | 2.14x | ✅ | -| `hexbytes_new['0xdeadbeef']` | 0.0008705949269160502 | 0.0004045729588421311 | 53.53% | 115.19% | 2.15x | ✅ | -| `hexbytes_new['abc']` | 0.0008621534577342096 | 0.0004305394134049848 | 50.06% | 100.25% | 2.00x | ✅ | -| `hexbytes_new['deadbeef']` | 0.0007792408835118206 | 0.0004004417175452977 | 48.61% | 94.60% | 1.95x | ✅ | -| `hexbytes_new[0-9]` | 0.00043904182127827877 | 0.0002516255144311188 | 42.69% | 74.48% | 1.74x | ✅ | -| `hexbytes_new[0]` | 0.0012793463989507069 | 0.00034588959269397354 | 72.96% | 269.87% | 3.70x | ✅ | -| `hexbytes_new[123456]` | 0.0012406539645775912 | 0.0003411427837015774 | 72.50% | 263.68% | 3.64x | ✅ | -| `hexbytes_new[2**16]` | 0.0013118258789478583 | 0.0003387406770615856 | 74.18% | 287.27% | 3.87x | ✅ | -| `hexbytes_new[2**256-1]` | 0.0013649550963682371 | 0.0004233661212109969 | 68.98% | 222.41% | 3.22x | ✅ | -| `hexbytes_new[2**32]` | 0.0013215687083326427 | 0.00038353570522649266 | 70.98% | 244.58% | 3.45x | ✅ | -| `hexbytes_new[2**64]` | 0.0013443185843642316 | 0.0004187721889464882 | 68.85% | 221.01% | 3.21x | ✅ | -| `hexbytes_new[2**8]` | 0.0012786813611475292 | 0.00035068589888551354 | 72.57% | 264.62% | 3.65x | ✅ | -| `hexbytes_new[4-byte pattern]` | 0.0004439756285836856 | 0.00025768197010232595 | 41.96% | 72.30% | 1.72x | ✅ | -| `hexbytes_new[False]` | 0.0006384083947189016 | 0.00027607273828392096 | 56.76% | 131.25% | 2.31x | ✅ | -| `hexbytes_new[True]` | 0.0006424832755947699 | 0.0002741022189796109 | 57.34% | 134.40% | 2.34x | ✅ | -| `hexbytes_new[all byte values]` | 0.0004424954348626596 | 0.00025815018857148125 | 41.66% | 71.41% | 1.71x | ✅ | -| `hexbytes_new[alternating 0x00/0xff]` | 0.00044035301809341364 | 0.0002549615478772042 | 42.10% | 72.71% | 1.73x | ✅ | -| `hexbytes_new[alternating 0xaa/0x55]` | 0.00044098896940208976 | 0.00025499412647770036 | 42.18% | 72.94% | 1.73x | ✅ | -| `hexbytes_new[ascii sentence]` | 0.0004332141993874914 | 0.0002534067667769387 | 41.51% | 70.96% | 1.71x | ✅ | -| `hexbytes_new[b'']` | 0.0004417283800735241 | 0.00026162711232813037 | 40.77% | 68.84% | 1.69x | ✅ | -| `hexbytes_new[b'\\x00'*32]` | 0.0004390423912838541 | 0.00025386670541231477 | 42.18% | 72.94% | 1.73x | ✅ | -| `hexbytes_new[b'\\x00\\xff\\x00\\xff']` | 0.00045001142661017747 | 0.00025728123672537925 | 42.83% | 74.91% | 1.75x | ✅ | -| `hexbytes_new[b'\\x01'*100]` | 0.00043959781343324916 | 0.00025447894926214446 | 42.11% | 72.74% | 1.73x | ✅ | -| `hexbytes_new[b'\\x01'*2048]` | 0.0005867259573427874 | 0.00036825671297956896 | 37.24% | 59.33% | 1.59x | ✅ | -| `hexbytes_new[b'\\x01\\x02\\x03']` | 0.0004485117870163965 | 0.00025694010977173434 | 42.71% | 74.56% | 1.75x | ✅ | -| `hexbytes_new[b'\\x10\\x20\\x30\\x40\\x50']` | 0.0004488987559843121 | 0.0002557404466069673 | 43.03% | 75.53% | 1.76x | ✅ | -| `hexbytes_new[b'\\x7f'*8]` | 0.0004409858060811055 | 0.00025382476900004706 | 42.44% | 73.74% | 1.74x | ✅ | -| `hexbytes_new[b'\\x80'*8]` | 0.0004389657600926013 | 0.0002637233309557457 | 39.92% | 66.45% | 1.66x | ✅ | -| `hexbytes_new[b'\\xde\\xad\\xbe\\xef']` | 0.0004509488806108016 | 0.0002562213516030816 | 43.18% | 76.00% | 1.76x | ✅ | -| `hexbytes_new[b'\\xff'*64]` | 0.0004439633749415708 | 0.0002566825232420606 | 42.18% | 72.96% | 1.73x | ✅ | -| `hexbytes_new[b'a'*1024]` | 0.000536727853548875 | 0.0003215131017877447 | 40.10% | 66.94% | 1.67x | ✅ | -| `hexbytes_new[b'abc']` | 0.0004437155054469797 | 0.0002588859125451105 | 41.65% | 71.39% | 1.71x | ✅ | -| `hexbytes_new[bytearray(0-9)]` | 0.000712533412500788 | 0.0003660933482102078 | 48.62% | 94.63% | 1.95x | ✅ | -| `hexbytes_new[bytearray(4-byte pattern)]` | 0.0007367254778693612 | 0.000380290561012033 | 48.38% | 93.73% | 1.94x | ✅ | -| `hexbytes_new[bytearray(all byte values)]` | 0.0007254382219710377 | 0.0003869978821016303 | 46.65% | 87.45% | 1.87x | ✅ | -| `hexbytes_new[bytearray(alternating 0x00/0xff)]` | 0.0007260892714169202 | 0.0003744077302840765 | 48.44% | 93.93% | 1.94x | ✅ | -| `hexbytes_new[bytearray(alternating 0xaa/0x55)]` | 0.0007134605086324924 | 0.00037723002839822604 | 47.13% | 89.13% | 1.89x | ✅ | -| `hexbytes_new[bytearray(ascii sentence)]` | 0.0007049408423687398 | 0.0003764385709555494 | 46.60% | 87.27% | 1.87x | ✅ | -| `hexbytes_new[bytearray(b'')]` | 0.0007003536409528713 | 0.00035984639856625794 | 48.62% | 94.63% | 1.95x | ✅ | -| `hexbytes_new[bytearray(b'\\x00'*32)]` | 0.0007154516678622225 | 0.0003671069670900468 | 48.69% | 94.89% | 1.95x | ✅ | -| `hexbytes_new[bytearray(b'\\x00\\xff\\x00\\xff')]` | 0.0007202271960928128 | 0.0003792841614912783 | 47.34% | 89.89% | 1.90x | ✅ | -| `hexbytes_new[bytearray(b'\\x01'*100)]` | 0.0007281019879523836 | 0.00037678108922644776 | 48.25% | 93.24% | 1.93x | ✅ | -| `hexbytes_new[bytearray(b'\\x01'*2048)]` | 0.0009287973486837736 | 0.0005789177250150068 | 37.67% | 60.44% | 1.60x | ✅ | -| `hexbytes_new[bytearray(b'\\x01\\x02\\x03')]` | 0.0007315856169562779 | 0.00038351055953709 | 47.58% | 90.76% | 1.91x | ✅ | -| `hexbytes_new[bytearray(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0007280785702481197 | 0.00037889786420170255 | 47.96% | 92.16% | 1.92x | ✅ | -| `hexbytes_new[bytearray(b'\\x7f'*8)]` | 0.000714610388557482 | 0.00037225716215225665 | 47.91% | 91.97% | 1.92x | ✅ | -| `hexbytes_new[bytearray(b'\\x80'*8)]` | 0.0007108291217904945 | 0.0003793446960818736 | 46.63% | 87.38% | 1.87x | ✅ | -| `hexbytes_new[bytearray(b'\\xde\\xad\\xbe\\xef')]` | 0.0007249900691730668 | 0.00038219719372138494 | 47.28% | 89.69% | 1.90x | ✅ | -| `hexbytes_new[bytearray(b'\\xff'*64)]` | 0.000719151191361429 | 0.0003741049845295102 | 47.98% | 92.23% | 1.92x | ✅ | -| `hexbytes_new[bytearray(b'a'*1024)]` | 0.0008732747908849523 | 0.0005128717710163521 | 41.27% | 70.27% | 1.70x | ✅ | -| `hexbytes_new[bytearray(b'abc')]` | 0.0007197254591525233 | 0.0003842967112826229 | 46.61% | 87.28% | 1.87x | ✅ | -| `hexbytes_new[bytearray(long alternating)]` | 0.0008729634167398983 | 0.0005154388079745212 | 40.96% | 69.36% | 1.69x | ✅ | -| `hexbytes_new[bytearray(mixed pattern)]` | 0.0007257328926180231 | 0.00037599392491431867 | 48.19% | 93.02% | 1.93x | ✅ | -| `hexbytes_new[bytearray(multiples of 0x10)]` | 0.0007120790221899122 | 0.0003696026206758348 | 48.10% | 92.66% | 1.93x | ✅ | -| `hexbytes_new[bytearray(palindrome ascii)]` | 0.0007197687791317018 | 0.0003885773693428999 | 46.01% | 85.23% | 1.85x | ✅ | -| `hexbytes_new[bytearray(palindrome numeric)]` | 0.0007201099134030248 | 0.0003727271355988933 | 48.24% | 93.20% | 1.93x | ✅ | -| `hexbytes_new[bytearray(palindrome)]` | 0.0007145352343631346 | 0.00037091328262549983 | 48.09% | 92.64% | 1.93x | ✅ | -| `hexbytes_new[bytearray(repeated 0-9)]` | 0.0007182394436151361 | 0.00038478922472728465 | 46.43% | 86.66% | 1.87x | ✅ | -| `hexbytes_new[bytearray(single 0xff)]` | 0.0007183759094954145 | 0.000386217972971638 | 46.24% | 86.00% | 1.86x | ✅ | -| `hexbytes_new[bytearray(single null byte)]` | 0.0007293231822258012 | 0.00037327550597468485 | 48.82% | 95.38% | 1.95x | ✅ | -| `hexbytes_new[bytearray(two patterns)]` | 0.0007212317994087215 | 0.0003913503747962566 | 45.74% | 84.29% | 1.84x | ✅ | -| `hexbytes_new[long alternating]` | 0.000539982053287366 | 0.00031740433418760085 | 41.22% | 70.12% | 1.70x | ✅ | -| `hexbytes_new[memoryview(0-9)]` | 0.0008853528296916782 | 0.00043815457286207836 | 50.51% | 102.06% | 2.02x | ✅ | -| `hexbytes_new[memoryview(4-byte pattern)]` | 0.0008641039268276023 | 0.00044554240476211553 | 48.44% | 93.94% | 1.94x | ✅ | -| `hexbytes_new[memoryview(all byte values)]` | 0.0008564771715810668 | 0.0004445498010161545 | 48.10% | 92.66% | 1.93x | ✅ | -| `hexbytes_new[memoryview(alternating 0x00/0xff)]` | 0.0008945098714436695 | 0.00043287969582176723 | 51.61% | 106.64% | 2.07x | ✅ | -| `hexbytes_new[memoryview(alternating 0xaa/0x55)]` | 0.0008922690770639855 | 0.0004381179562393996 | 50.90% | 103.66% | 2.04x | ✅ | -| `hexbytes_new[memoryview(ascii sentence)]` | 0.000852478120286459 | 0.00043164760307050435 | 49.37% | 97.49% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'')]` | 0.0008746003800184759 | 0.00041990201508743054 | 51.99% | 108.29% | 2.08x | ✅ | -| `hexbytes_new[memoryview(b'\\x00'*32)]` | 0.000870106773055537 | 0.00042542454479580004 | 51.11% | 104.53% | 2.05x | ✅ | -| `hexbytes_new[memoryview(b'\\x00\\xff\\x00\\xff')]` | 0.0008747189021150824 | 0.00044545989541945337 | 49.07% | 96.36% | 1.96x | ✅ | -| `hexbytes_new[memoryview(b'\\x01'*100)]` | 0.0008776350934399411 | 0.0004453257916847003 | 49.26% | 97.08% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'\\x01'*2048)]` | 0.0010412300546262427 | 0.0006393952217794576 | 38.59% | 62.85% | 1.63x | ✅ | -| `hexbytes_new[memoryview(b'\\x01\\x02\\x03')]` | 0.0008873207814759359 | 0.0004462598788306774 | 49.71% | 98.83% | 1.99x | ✅ | -| `hexbytes_new[memoryview(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0008863431914309187 | 0.0004495551058773553 | 49.28% | 97.16% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'\\x7f'*8)]` | 0.0008662944544652223 | 0.0004389033936171204 | 49.34% | 97.38% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'\\x80'*8)]` | 0.0008683490168901294 | 0.000440222312499534 | 49.30% | 97.25% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'\\xde\\xad\\xbe\\xef')]` | 0.00088620274380174 | 0.00044895881686886303 | 49.34% | 97.39% | 1.97x | ✅ | -| `hexbytes_new[memoryview(b'\\xff'*64)]` | 0.0008782249800004717 | 0.0004330846313983804 | 50.69% | 102.78% | 2.03x | ✅ | -| `hexbytes_new[memoryview(b'a'*1024)]` | 0.0010355683517532493 | 0.0005798213522066419 | 44.01% | 78.60% | 1.79x | ✅ | -| `hexbytes_new[memoryview(b'abc')]` | 0.0008896101827268281 | 0.0004467935158878267 | 49.78% | 99.11% | 1.99x | ✅ | -| `hexbytes_new[memoryview(long alternating)]` | 0.0010185012939951728 | 0.0005843985520896898 | 42.62% | 74.28% | 1.74x | ✅ | -| `hexbytes_new[memoryview(mixed pattern)]` | 0.0008717395896259064 | 0.0004319074117645097 | 50.45% | 101.83% | 2.02x | ✅ | -| `hexbytes_new[memoryview(multiples of 0x10)]` | 0.000881240700977236 | 0.0004400389076785009 | 50.07% | 100.26% | 2.00x | ✅ | -| `hexbytes_new[memoryview(palindrome ascii)]` | 0.0008678413476306931 | 0.00044553307607272333 | 48.66% | 94.79% | 1.95x | ✅ | -| `hexbytes_new[memoryview(palindrome numeric)]` | 0.0008670263203625054 | 0.0004486676719242086 | 48.25% | 93.24% | 1.93x | ✅ | -| `hexbytes_new[memoryview(palindrome)]` | 0.0008673036979446866 | 0.0004322907923545487 | 50.16% | 100.63% | 2.01x | ✅ | -| `hexbytes_new[memoryview(repeated 0-9)]` | 0.0008641644727591185 | 0.00044487415344774154 | 48.52% | 94.25% | 1.94x | ✅ | -| `hexbytes_new[memoryview(single 0xff)]` | 0.0008634354190641255 | 0.00045104218142658184 | 47.76% | 91.43% | 1.91x | ✅ | -| `hexbytes_new[memoryview(single null byte)]` | 0.0008604679640609314 | 0.0004503350623592435 | 47.66% | 91.07% | 1.91x | ✅ | -| `hexbytes_new[memoryview(two patterns)]` | 0.0008627379730456606 | 0.0004343670300406733 | 49.65% | 98.62% | 1.99x | ✅ | -| `hexbytes_new[mixed pattern]` | 0.00043680900875162705 | 0.00025608164033495066 | 41.37% | 70.57% | 1.71x | ✅ | -| `hexbytes_new[multiples of 0x10]` | 0.00043914948955066103 | 0.0002677114453629741 | 39.04% | 64.04% | 1.64x | ✅ | -| `hexbytes_new[palindrome ascii]` | 0.00043779802952068634 | 0.00025233129766885886 | 42.36% | 73.50% | 1.74x | ✅ | -| `hexbytes_new[palindrome numeric]` | 0.0004494289136383592 | 0.00025669681120829227 | 42.88% | 75.08% | 1.75x | ✅ | -| `hexbytes_new[palindrome]` | 0.0004463547306104147 | 0.00025335128804225717 | 43.24% | 76.18% | 1.76x | ✅ | -| `hexbytes_new[repeated 0-9]` | 0.000436283845984357 | 0.00025741874961045436 | 41.00% | 69.48% | 1.69x | ✅ | -| `hexbytes_new[single 0xff]` | 0.00044501298942299525 | 0.0002579713231282363 | 42.03% | 72.50% | 1.73x | ✅ | -| `hexbytes_new[single null byte]` | 0.00044456202009324 | 0.00025741045517306386 | 42.10% | 72.71% | 1.73x | ✅ | -| `hexbytes_new[two patterns]` | 0.0004364112262015784 | 0.00025633162031539025 | 41.26% | 70.25% | 1.70x | ✅ | -| `hexbytes_repr[0-9]` | 0.0003351256430094208 | 0.0001607988855272431 | 52.02% | 108.41% | 2.08x | ✅ | -| `hexbytes_repr[4-byte pattern]` | 0.0012676063719434638 | 0.0004283810165286352 | 66.21% | 195.91% | 2.96x | ✅ | -| `hexbytes_repr[all byte values]` | 0.0012628553066263103 | 0.0004275756467592409 | 66.14% | 195.35% | 2.95x | ✅ | -| `hexbytes_repr[alternating 0x00/0xff]` | 0.0005355616866688217 | 0.00020749006188023722 | 61.26% | 158.11% | 2.58x | ✅ | -| `hexbytes_repr[alternating 0xaa/0x55]` | 0.0005350384252399617 | 0.00020708277245344483 | 61.30% | 158.37% | 2.58x | ✅ | -| `hexbytes_repr[ascii sentence]` | 0.00044639764016613344 | 0.00018877343711559897 | 57.71% | 136.47% | 2.36x | ✅ | -| `hexbytes_repr[b'']` | 0.00024884317651251636 | 0.00012735785145888116 | 48.82% | 95.39% | 1.95x | ✅ | -| `hexbytes_repr[b'\\x00'*32]` | 0.00041188283202868713 | 0.0001822705966960122 | 55.75% | 125.97% | 2.26x | ✅ | -| `hexbytes_repr[b'\\x00\\xff\\x00\\xff']` | 0.00031313683912993393 | 0.0001555831731449621 | 50.31% | 101.27% | 2.01x | ✅ | -| `hexbytes_repr[b'\\x01'*100]` | 0.0006590215530925827 | 0.0002417983777387544 | 63.31% | 172.55% | 2.73x | ✅ | -| `hexbytes_repr[b'\\x01'*2048]` | 0.007673075297700177 | 0.0022551288239286123 | 70.61% | 240.25% | 3.40x | ✅ | -| `hexbytes_repr[b'\\x01\\x02\\x03']` | 0.00031019177284089195 | 0.0001518143447012215 | 51.06% | 104.32% | 2.04x | ✅ | -| `hexbytes_repr[b'\\x10\\x20\\x30\\x40\\x50']` | 0.00031555811267019475 | 0.00015457690973989522 | 51.01% | 104.14% | 2.04x | ✅ | -| `hexbytes_repr[b'\\x7f'*8]` | 0.00032857861002502084 | 0.00015865886747802683 | 51.71% | 107.10% | 2.07x | ✅ | -| `hexbytes_repr[b'\\x80'*8]` | 0.00032867583820537274 | 0.00015808422494821109 | 51.90% | 107.91% | 2.08x | ✅ | -| `hexbytes_repr[b'\\xde\\xad\\xbe\\xef']` | 0.0003116624789152507 | 0.00015303672816500952 | 50.90% | 103.65% | 2.04x | ✅ | -| `hexbytes_repr[b'\\xff'*64]` | 0.0005356238299488241 | 0.0002068356317469947 | 61.38% | 158.96% | 2.59x | ✅ | -| `hexbytes_repr[b'a'*1024]` | 0.004015533148580596 | 0.001202555009712114 | 70.05% | 233.92% | 3.34x | ✅ | -| `hexbytes_repr[b'abc']` | 0.00030785880903728676 | 0.00015069926476770298 | 51.05% | 104.29% | 2.04x | ✅ | -| `hexbytes_repr[long alternating]` | 0.004011068650607378 | 0.0012416214583803628 | 69.05% | 223.05% | 3.23x | ✅ | -| `hexbytes_repr[mixed pattern]` | 0.0010264574575536889 | 0.0003550924490778404 | 65.41% | 189.07% | 2.89x | ✅ | -| `hexbytes_repr[multiples of 0x10]` | 0.0003345135082860133 | 0.0001582472557602847 | 52.69% | 111.39% | 2.11x | ✅ | -| `hexbytes_repr[palindrome ascii]` | 0.00032416646785550474 | 0.00015748436204059423 | 51.42% | 105.84% | 2.06x | ✅ | -| `hexbytes_repr[palindrome numeric]` | 0.0003170981981041966 | 0.00015488032808999404 | 51.16% | 104.74% | 2.05x | ✅ | -| `hexbytes_repr[palindrome]` | 0.0003725988425430587 | 0.00016781011699786559 | 54.96% | 122.04% | 2.22x | ✅ | -| `hexbytes_repr[repeated 0-9]` | 0.0006620393484098505 | 0.00024133436979099088 | 63.55% | 174.32% | 2.74x | ✅ | -| `hexbytes_repr[single 0xff]` | 0.0003026888565749414 | 0.00014766941464853107 | 51.21% | 104.98% | 2.05x | ✅ | -| `hexbytes_repr[single null byte]` | 0.00030302025714454907 | 0.00014363858623620972 | 52.60% | 110.96% | 2.11x | ✅ | -| `hexbytes_repr[two patterns]` | 0.0005321001966160301 | 0.00020330909598401112 | 61.79% | 161.72% | 2.62x | ✅ | -| `hexbytes_to_0x_hex[0-9]` | 0.0001848159735755281 | 0.00015055276433042057 | 18.54% | 22.76% | 1.23x | ✅ | -| `hexbytes_to_0x_hex[4-byte pattern]` | 0.00045748461848471074 | 0.0004154986663784676 | 9.18% | 10.10% | 1.10x | ✅ | -| `hexbytes_to_0x_hex[all byte values]` | 0.0004506692619093791 | 0.0004137674521154044 | 8.19% | 8.92% | 1.09x | ✅ | -| `hexbytes_to_0x_hex[alternating 0x00/0xff]` | 0.0002424043945860918 | 0.0002011190454980549 | 17.03% | 20.53% | 1.21x | ✅ | -| `hexbytes_to_0x_hex[alternating 0xaa/0x55]` | 0.0002389713325455672 | 0.00019928754353768446 | 16.61% | 19.91% | 1.20x | ✅ | -| `hexbytes_to_0x_hex[ascii sentence]` | 0.00022458778174676392 | 0.00017985311517064564 | 19.92% | 24.87% | 1.25x | ✅ | -| `hexbytes_to_0x_hex[b'']` | 0.00011702139294185506 | 0.00011984685993879338 | -2.41% | -2.36% | 0.98x | ❌ | -| `hexbytes_to_0x_hex[b'\\x00'*32]` | 0.00020550269603065812 | 0.00016942584842378567 | 17.56% | 21.29% | 1.21x | ✅ | -| `hexbytes_to_0x_hex[b'\\x00\\xff\\x00\\xff']` | 0.000182518613811703 | 0.0001441490030874641 | 21.02% | 26.62% | 1.27x | ✅ | -| `hexbytes_to_0x_hex[b'\\x01'*100]` | 0.00027892760410980666 | 0.00023700144186674963 | 15.03% | 17.69% | 1.18x | ✅ | -| `hexbytes_to_0x_hex[b'\\x01'*2048]` | 0.002250497191010489 | 0.0022383426292129044 | 0.54% | 0.54% | 1.01x | ✅ | -| `hexbytes_to_0x_hex[b'\\x01\\x02\\x03']` | 0.00018270751662909958 | 0.0001432856462705324 | 21.58% | 27.51% | 1.28x | ✅ | -| `hexbytes_to_0x_hex[b'\\x10\\x20\\x30\\x40\\x50']` | 0.00018571598948086484 | 0.0001455187408887642 | 21.64% | 27.62% | 1.28x | ✅ | -| `hexbytes_to_0x_hex[b'\\x7f'*8]` | 0.00018655553406173275 | 0.00014833692201671368 | 20.49% | 25.76% | 1.26x | ✅ | -| `hexbytes_to_0x_hex[b'\\x80'*8]` | 0.00018846128520256944 | 0.00016051520796187747 | 14.83% | 17.41% | 1.17x | ✅ | -| `hexbytes_to_0x_hex[b'\\xde\\xad\\xbe\\xef']` | 0.0001819484939241377 | 0.00014593684648665146 | 19.79% | 24.68% | 1.25x | ✅ | -| `hexbytes_to_0x_hex[b'\\xff'*64]` | 0.00023863448290374267 | 0.00019978191300760423 | 16.28% | 19.45% | 1.19x | ✅ | -| `hexbytes_to_0x_hex[b'a'*1024]` | 0.0012685936918045797 | 0.0011902649545952665 | 6.17% | 6.58% | 1.07x | ✅ | -| `hexbytes_to_0x_hex[b'abc']` | 0.00017976612628426341 | 0.0001437476823253229 | 20.04% | 25.06% | 1.25x | ✅ | -| `hexbytes_to_0x_hex[long alternating]` | 0.001238479142153042 | 0.0012264348849026479 | 0.97% | 0.98% | 1.01x | ✅ | -| `hexbytes_to_0x_hex[mixed pattern]` | 0.00038591069955093074 | 0.0003464731353819748 | 10.22% | 11.38% | 1.11x | ✅ | -| `hexbytes_to_0x_hex[multiples of 0x10]` | 0.00018472758983143164 | 0.00015012588946240312 | 18.73% | 23.05% | 1.23x | ✅ | -| `hexbytes_to_0x_hex[palindrome ascii]` | 0.00017914110898564002 | 0.00014823735956059078 | 17.25% | 20.85% | 1.21x | ✅ | -| `hexbytes_to_0x_hex[palindrome numeric]` | 0.00017934047906652682 | 0.0001445813733191535 | 19.38% | 24.04% | 1.24x | ✅ | -| `hexbytes_to_0x_hex[palindrome]` | 0.0001982020710908784 | 0.0001589954721303299 | 19.78% | 24.66% | 1.25x | ✅ | -| `hexbytes_to_0x_hex[repeated 0-9]` | 0.0002738834744350133 | 0.00023512712246858482 | 14.15% | 16.48% | 1.16x | ✅ | -| `hexbytes_to_0x_hex[single 0xff]` | 0.00017425192029352628 | 0.00013854239100124908 | 20.49% | 25.78% | 1.26x | ✅ | -| `hexbytes_to_0x_hex[single null byte]` | 0.0001759067030820024 | 0.0001386622954651251 | 21.17% | 26.86% | 1.27x | ✅ | -| `hexbytes_to_0x_hex[two patterns]` | 0.00023842470349730367 | 0.00019833768492263617 | 16.81% | 20.21% | 1.20x | ✅ | +| `hexbytes_getitem_index[-1-0-9]` | 0.00024274722743912924 | 0.00024402983198894935 | -0.53% | -0.53% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-4-byte pattern]` | 0.0002443588016582274 | 0.0002451778129012107 | -0.34% | -0.33% | 1.00x | ❌ | +| `hexbytes_getitem_index[-1-all byte values]` | 0.00024388529793015247 | 0.0002454523250895358 | -0.64% | -0.64% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-alternating 0x00/0xff]` | 0.0002386051979691528 | 0.00024424256487340894 | -2.36% | -2.31% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-alternating 0xaa/0x55]` | 0.00024184824740232152 | 0.0002443088884787033 | -1.02% | -1.01% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-ascii sentence]` | 0.0002424600638301363 | 0.00024568155984031433 | -1.33% | -1.31% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x00'*32]` | 0.00024105527142830824 | 0.00024494020793932957 | -1.61% | -1.59% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x00\\xff\\x00\\xff']` | 0.00024030604542130233 | 0.00024670706866410476 | -2.66% | -2.59% | 0.97x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x01'*100]` | 0.00024221737781339675 | 0.00024353858849983086 | -0.55% | -0.54% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x01'*2048]` | 0.00024205226398973776 | 0.0002455777773265731 | -1.46% | -1.44% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x01\\x02\\x03']` | 0.00024067479003330445 | 0.00024353739728717413 | -1.19% | -1.18% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00024147766151260257 | 0.00024187077154886214 | -0.16% | -0.16% | 1.00x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x7f'*8]` | 0.00024155739656725093 | 0.0002467773401535137 | -2.16% | -2.12% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-b'\\x80'*8]` | 0.00024126882840490966 | 0.0002443235293538248 | -1.27% | -1.25% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'\\xde\\xad\\xbe\\xef']` | 0.00024056261168555634 | 0.0002452658023083391 | -1.96% | -1.92% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-b'\\xff'*64]` | 0.0002444070399412452 | 0.0002467263310111084 | -0.95% | -0.94% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-b'a'*1024]` | 0.00024276881895244026 | 0.00024914959311710106 | -2.63% | -2.56% | 0.97x | ❌ | +| `hexbytes_getitem_index[-1-b'abc']` | 0.00024257470324881217 | 0.0002437243447772874 | -0.47% | -0.47% | 1.00x | ❌ | +| `hexbytes_getitem_index[-1-long alternating]` | 0.0002413398393408029 | 0.0002451184224375983 | -1.57% | -1.54% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-mixed pattern]` | 0.0002399570541716433 | 0.0002449609638515085 | -2.09% | -2.04% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-multiples of 0x10]` | 0.0002428893738282055 | 0.00024474742890997207 | -0.76% | -0.76% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-palindrome ascii]` | 0.0002426428741778502 | 0.00024473523259529084 | -0.86% | -0.85% | 0.99x | ❌ | +| `hexbytes_getitem_index[-1-palindrome numeric]` | 0.00024049300194766652 | 0.00024421554713757813 | -1.55% | -1.52% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-palindrome]` | 0.00024300469279262202 | 0.000247644299878758 | -1.91% | -1.87% | 0.98x | ❌ | +| `hexbytes_getitem_index[-1-repeated 0-9]` | 0.0002446796030823656 | 0.00025410090242020014 | -3.85% | -3.71% | 0.96x | ❌ | +| `hexbytes_getitem_index[-1-two patterns]` | 0.00024164093970128645 | 0.0002443201373726874 | -1.11% | -1.10% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-0-9]` | 0.0002373230335972145 | 0.00024427169115386494 | -2.93% | -2.84% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-4-byte pattern]` | 0.0002401301154030429 | 0.0002395199570495146 | 0.25% | 0.25% | 1.00x | ✅ | +| `hexbytes_getitem_index[0-all byte values]` | 0.00023949413786849804 | 0.0002389724185533429 | 0.22% | 0.22% | 1.00x | ✅ | +| `hexbytes_getitem_index[0-alternating 0x00/0xff]` | 0.00023700101924962555 | 0.0002388938097022217 | -0.80% | -0.79% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-alternating 0xaa/0x55]` | 0.00023647115625730826 | 0.00024255289334332145 | -2.57% | -2.51% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-ascii sentence]` | 0.00023355870293123934 | 0.00024096489009610306 | -3.17% | -3.07% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-b'\\x00'*32]` | 0.00023724258455217888 | 0.00024034840857358613 | -1.31% | -1.29% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-b'\\x00\\xff\\x00\\xff']` | 0.0002392683924550901 | 0.00024270024052746545 | -1.43% | -1.41% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-b'\\x01'*100]` | 0.00023860739474901746 | 0.00024357958557238448 | -2.08% | -2.04% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-b'\\x01'*2048]` | 0.00023675231907898737 | 0.000241569061708023 | -2.03% | -1.99% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-b'\\x01\\x02\\x03']` | 0.0002393824171977817 | 0.00024273278443743854 | -1.40% | -1.38% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00023920135199782984 | 0.00024007818343386216 | -0.37% | -0.37% | 1.00x | ❌ | +| `hexbytes_getitem_index[0-b'\\x7f'*8]` | 0.00023729805582233847 | 0.00024318529017976982 | -2.48% | -2.42% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-b'\\x80'*8]` | 0.00023904692550380223 | 0.00024044340298187954 | -0.58% | -0.58% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-b'\\xde\\xad\\xbe\\xef']` | 0.00023692652148627776 | 0.00024521813185508697 | -3.50% | -3.38% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-b'\\xff'*64]` | 0.00023748533246575228 | 0.00024250461108401392 | -2.11% | -2.07% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-b'a'*1024]` | 0.00023821897186932802 | 0.00024298179376632293 | -2.00% | -1.96% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-b'abc']` | 0.00023752241466585785 | 0.0002446348284343441 | -2.99% | -2.91% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-long alternating]` | 0.00025481646620506456 | 0.00024239826663396662 | 4.87% | 5.12% | 1.05x | ✅ | +| `hexbytes_getitem_index[0-mixed pattern]` | 0.00022292156412062137 | 0.00024308850222715898 | -9.05% | -8.30% | 0.92x | ❌ | +| `hexbytes_getitem_index[0-multiples of 0x10]` | 0.000236439495073723 | 0.00024758903699803353 | -4.72% | -4.50% | 0.95x | ❌ | +| `hexbytes_getitem_index[0-palindrome ascii]` | 0.0002672378510878796 | 0.0002423820644810418 | 9.30% | 10.25% | 1.10x | ✅ | +| `hexbytes_getitem_index[0-palindrome numeric]` | 0.00023860888491934214 | 0.0002416457174127029 | -1.27% | -1.26% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-palindrome]` | 0.0002386902188564322 | 0.00024227572982786591 | -1.50% | -1.48% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-repeated 0-9]` | 0.00023379806088243564 | 0.00024218195255477624 | -3.59% | -3.46% | 0.97x | ❌ | +| `hexbytes_getitem_index[0-single 0xff]` | 0.00024044787618048954 | 0.000245545010868794 | -2.12% | -2.08% | 0.98x | ❌ | +| `hexbytes_getitem_index[0-single null byte]` | 0.000240933275822454 | 0.00024238354009757662 | -0.60% | -0.60% | 0.99x | ❌ | +| `hexbytes_getitem_index[0-two patterns]` | 0.00023100239869867112 | 0.00024235886629104993 | -4.92% | -4.69% | 0.95x | ❌ | +| `hexbytes_getitem_index[1-0-9]` | 0.00023167348287973078 | 0.00024127166939045552 | -4.14% | -3.98% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-4-byte pattern]` | 0.00023593706425457944 | 0.0002385359008604886 | -1.10% | -1.09% | 0.99x | ❌ | +| `hexbytes_getitem_index[1-all byte values]` | 0.00023518342523335742 | 0.00023962304728463953 | -1.89% | -1.85% | 0.98x | ❌ | +| `hexbytes_getitem_index[1-alternating 0x00/0xff]` | 0.0002332335234161764 | 0.00024147119759314434 | -3.53% | -3.41% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-alternating 0xaa/0x55]` | 0.00023247566184281005 | 0.00024080829591945836 | -3.58% | -3.46% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-ascii sentence]` | 0.00023388730995256118 | 0.00024098629483862305 | -3.04% | -2.95% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\x00'*32]` | 0.00023255327388169673 | 0.00024294217327327998 | -4.47% | -4.28% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-b'\\x00\\xff\\x00\\xff']` | 0.00023215901620337866 | 0.00024034342411764187 | -3.53% | -3.41% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\x01'*100]` | 0.00023242413055727404 | 0.00024001308997545484 | -3.27% | -3.16% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\x01'*2048]` | 0.0002317985700513005 | 0.0002400614517239711 | -3.56% | -3.44% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\x01\\x02\\x03']` | 0.00023398438424979416 | 0.00024333020159730552 | -3.99% | -3.84% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00023421684293834533 | 0.00023968389896501595 | -2.33% | -2.28% | 0.98x | ❌ | +| `hexbytes_getitem_index[1-b'\\x7f'*8]` | 0.00023359020354352255 | 0.000240512607267307 | -2.96% | -2.88% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\x80'*8]` | 0.00022784071497445005 | 0.00024043189255229194 | -5.53% | -5.24% | 0.95x | ❌ | +| `hexbytes_getitem_index[1-b'\\xde\\xad\\xbe\\xef']` | 0.000233530460686363 | 0.00024086614484216412 | -3.14% | -3.05% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'\\xff'*64]` | 0.00023288748282955721 | 0.00024003164438486275 | -3.07% | -2.98% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'a'*1024]` | 0.00023272111006517306 | 0.0002396113512141154 | -2.96% | -2.88% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-b'abc']` | 0.00023323814329266802 | 0.00024303583489618358 | -4.20% | -4.03% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-long alternating]` | 0.00023252730942227698 | 0.00024147972928860724 | -3.85% | -3.71% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-mixed pattern]` | 0.00023297766650842833 | 0.00024047849086105623 | -3.22% | -3.12% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-multiples of 0x10]` | 0.00023244832773093146 | 0.00024037110903245913 | -3.41% | -3.30% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-palindrome ascii]` | 0.00023267225011686451 | 0.00024145541061828613 | -3.77% | -3.64% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-palindrome numeric]` | 0.00023131689801403642 | 0.0002442388682150961 | -5.59% | -5.29% | 0.95x | ❌ | +| `hexbytes_getitem_index[1-palindrome]` | 0.00023201580754830133 | 0.00024035180866355745 | -3.59% | -3.47% | 0.97x | ❌ | +| `hexbytes_getitem_index[1-repeated 0-9]` | 0.00023218914215485174 | 0.0002412163872722854 | -3.89% | -3.74% | 0.96x | ❌ | +| `hexbytes_getitem_index[1-two patterns]` | 0.00023234175164112592 | 0.00024421134505583057 | -5.11% | -4.86% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-0-9]` | 0.00023510425954587807 | 0.00024021718774825814 | -2.17% | -2.13% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-4-byte pattern]` | 0.00023719200278624677 | 0.00023923115347465295 | -0.86% | -0.85% | 0.99x | ❌ | +| `hexbytes_getitem_index[2-all byte values]` | 0.00023765861702270205 | 0.00023741156239394455 | 0.10% | 0.10% | 1.00x | ✅ | +| `hexbytes_getitem_index[2-alternating 0x00/0xff]` | 0.0002342217514523631 | 0.00024045614979834425 | -2.66% | -2.59% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-alternating 0xaa/0x55]` | 0.00023548141615807402 | 0.00024189734904408907 | -2.72% | -2.65% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-ascii sentence]` | 0.0002384980154673577 | 0.00024271316334451373 | -1.77% | -1.74% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-b'\\x00'*32]` | 0.0002317980813761193 | 0.00024301376740363398 | -4.84% | -4.62% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-b'\\x00\\xff\\x00\\xff']` | 0.00023213479092697961 | 0.00024188533946214338 | -4.20% | -4.03% | 0.96x | ❌ | +| `hexbytes_getitem_index[2-b'\\x01'*100]` | 0.0002388775469630276 | 0.0002399313410800185 | -0.44% | -0.44% | 1.00x | ❌ | +| `hexbytes_getitem_index[2-b'\\x01'*2048]` | 0.0002362896294003394 | 0.00024045868736580016 | -1.76% | -1.73% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-b'\\x01\\x02\\x03']` | 0.00023145811155181434 | 0.00024412958343490124 | -5.47% | -5.19% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00023380564126913473 | 0.00024020582528351433 | -2.74% | -2.66% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-b'\\x7f'*8]` | 0.0002319148661452708 | 0.00023988143594252118 | -3.44% | -3.32% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-b'\\x80'*8]` | 0.00023496305329452112 | 0.00024068566336667897 | -2.44% | -2.38% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-b'\\xde\\xad\\xbe\\xef']` | 0.00023154340090210236 | 0.0002433684866366095 | -5.11% | -4.86% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-b'\\xff'*64]` | 0.00023178729300469183 | 0.00024190833895421372 | -4.37% | -4.18% | 0.96x | ❌ | +| `hexbytes_getitem_index[2-b'a'*1024]` | 0.00023270666565973686 | 0.00024148544670137042 | -3.77% | -3.64% | 0.96x | ❌ | +| `hexbytes_getitem_index[2-b'abc']` | 0.00023239692150993902 | 0.000243739843180375 | -4.88% | -4.65% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-long alternating]` | 0.00023369839284028337 | 0.0002390694781573885 | -2.30% | -2.25% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-mixed pattern]` | 0.00023221096920027104 | 0.00023614653778533657 | -1.69% | -1.67% | 0.98x | ❌ | +| `hexbytes_getitem_index[2-multiples of 0x10]` | 0.00023398067238952818 | 0.0002418989035934538 | -3.38% | -3.27% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-palindrome ascii]` | 0.00023245588107981253 | 0.00023876597067319988 | -2.71% | -2.64% | 0.97x | ❌ | +| `hexbytes_getitem_index[2-palindrome numeric]` | 0.0002337842929291996 | 0.00023711476678712045 | -1.42% | -1.40% | 0.99x | ❌ | +| `hexbytes_getitem_index[2-palindrome]` | 0.00023167364974224647 | 0.000244578146677533 | -5.57% | -5.28% | 0.95x | ❌ | +| `hexbytes_getitem_index[2-repeated 0-9]` | 0.0002339034018504549 | 0.0002373013061912843 | -1.45% | -1.43% | 0.99x | ❌ | +| `hexbytes_getitem_index[2-two patterns]` | 0.00023200078302426297 | 0.00023408515347672564 | -0.90% | -0.89% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-0-9]` | 0.0002354789627875649 | 0.00024048920734463986 | -2.13% | -2.08% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-4-byte pattern]` | 0.00023825056660150586 | 0.00023955166511490053 | -0.55% | -0.54% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-all byte values]` | 0.00023911564452524383 | 0.00023868057581034294 | 0.18% | 0.18% | 1.00x | ✅ | +| `hexbytes_getitem_index[3-alternating 0x00/0xff]` | 0.00023607610417135703 | 0.0002403082970761022 | -1.79% | -1.76% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-alternating 0xaa/0x55]` | 0.0002421417965220977 | 0.0002396452682632534 | 1.03% | 1.04% | 1.01x | ✅ | +| `hexbytes_getitem_index[3-ascii sentence]` | 0.0002361577567124752 | 0.00024003652197908168 | -1.64% | -1.62% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'\\x00'*32]` | 0.0002316976491200599 | 0.00023857917182893757 | -2.97% | -2.88% | 0.97x | ❌ | +| `hexbytes_getitem_index[3-b'\\x00\\xff\\x00\\xff']` | 0.00023536387393260566 | 0.00023952744668642479 | -1.77% | -1.74% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'\\x01'*100]` | 0.00023649656320075453 | 0.00024227508964722806 | -2.44% | -2.39% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'\\x01'*2048]` | 0.0002356921296716625 | 0.0002381207153859707 | -1.03% | -1.02% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0002349676041230066 | 0.00024025848717365683 | -2.25% | -2.20% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'\\x7f'*8]` | 0.00023384377579891495 | 0.00023963205830549207 | -2.48% | -2.42% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'\\x80'*8]` | 0.00024282402028166005 | 0.00023915679423703353 | 1.51% | 1.53% | 1.02x | ✅ | +| `hexbytes_getitem_index[3-b'\\xde\\xad\\xbe\\xef']` | 0.00023627455953805488 | 0.00023947985616973598 | -1.36% | -1.34% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-b'\\xff'*64]` | 0.00023479755331767737 | 0.00023956561802798007 | -2.03% | -1.99% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-b'a'*1024]` | 0.0002349200598909954 | 0.0002384498584923797 | -1.50% | -1.48% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-long alternating]` | 0.00023577719200362882 | 0.00023854272452274023 | -1.17% | -1.16% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-mixed pattern]` | 0.00023542265327397715 | 0.00024071046429395053 | -2.25% | -2.20% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-multiples of 0x10]` | 0.0002362912581413626 | 0.00024142498045971587 | -2.17% | -2.13% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-palindrome ascii]` | 0.00023655382607728898 | 0.00023764764885645463 | -0.46% | -0.46% | 1.00x | ❌ | +| `hexbytes_getitem_index[3-palindrome numeric]` | 0.00023612743722111571 | 0.00024158052167472973 | -2.31% | -2.26% | 0.98x | ❌ | +| `hexbytes_getitem_index[3-palindrome]` | 0.0002370776361154492 | 0.0002382702107094213 | -0.50% | -0.50% | 0.99x | ❌ | +| `hexbytes_getitem_index[3-repeated 0-9]` | 0.00023731998304540685 | 0.00023848447499232424 | -0.49% | -0.49% | 1.00x | ❌ | +| `hexbytes_getitem_index[3-two patterns]` | 0.00023622268871956352 | 0.00023850164761969364 | -0.96% | -0.96% | 0.99x | ❌ | +| `hexbytes_getitem_index[4-0-9]` | 0.00023360764709949485 | 0.00023944781822568404 | -2.50% | -2.44% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-4-byte pattern]` | 0.0002370214651458563 | 0.00023419585951069458 | 1.19% | 1.21% | 1.01x | ✅ | +| `hexbytes_getitem_index[4-all byte values]` | 0.00023671429846249797 | 0.00023518936702682374 | 0.64% | 0.65% | 1.01x | ✅ | +| `hexbytes_getitem_index[4-alternating 0x00/0xff]` | 0.00023391361720542748 | 0.0002384670019917384 | -1.95% | -1.91% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-alternating 0xaa/0x55]` | 0.00023272496251958697 | 0.0002390601946246378 | -2.72% | -2.65% | 0.97x | ❌ | +| `hexbytes_getitem_index[4-ascii sentence]` | 0.00023257002991697724 | 0.0002369467765128514 | -1.88% | -1.85% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-b'\\x00'*32]` | 0.000236088667611077 | 0.0002363940557300802 | -0.13% | -0.13% | 1.00x | ❌ | +| `hexbytes_getitem_index[4-b'\\x01'*100]` | 0.00023293598181362625 | 0.00023733080395442601 | -1.89% | -1.85% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-b'\\x01'*2048]` | 0.0002337797529306582 | 0.00024165272043826015 | -3.37% | -3.26% | 0.97x | ❌ | +| `hexbytes_getitem_index[4-b'\\x10\\x20\\x30\\x40\\x50']` | 0.00023347229088813569 | 0.00023889632304164695 | -2.32% | -2.27% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-b'\\x7f'*8]` | 0.0002335073781116952 | 0.00023800378214652035 | -1.93% | -1.89% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-b'\\x80'*8]` | 0.00023390196162835356 | 0.0002398471993552469 | -2.54% | -2.48% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-b'\\xff'*64]` | 0.00023563741842828087 | 0.00023622540470534097 | -0.25% | -0.25% | 1.00x | ❌ | +| `hexbytes_getitem_index[4-b'a'*1024]` | 0.000236459463111209 | 0.00023708296125421767 | -0.26% | -0.26% | 1.00x | ❌ | +| `hexbytes_getitem_index[4-long alternating]` | 0.00023356098201284008 | 0.00024116828383360543 | -3.26% | -3.15% | 0.97x | ❌ | +| `hexbytes_getitem_index[4-mixed pattern]` | 0.00023344503498241953 | 0.00023285483301591363 | 0.25% | 0.25% | 1.00x | ✅ | +| `hexbytes_getitem_index[4-multiples of 0x10]` | 0.00023324395889135516 | 0.00024290240651309058 | -4.14% | -3.98% | 0.96x | ❌ | +| `hexbytes_getitem_index[4-palindrome ascii]` | 0.00023384283172042916 | 0.0002311824530849875 | 1.14% | 1.15% | 1.01x | ✅ | +| `hexbytes_getitem_index[4-palindrome numeric]` | 0.0002337186060906876 | 0.00023669002810275538 | -1.27% | -1.26% | 0.99x | ❌ | +| `hexbytes_getitem_index[4-palindrome]` | 0.00023360030704653963 | 0.00023825773359625521 | -1.99% | -1.95% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-repeated 0-9]` | 0.00023202694300279833 | 0.00023644334315412054 | -1.90% | -1.87% | 0.98x | ❌ | +| `hexbytes_getitem_index[4-two patterns]` | 0.00023286365552186653 | 0.00023508166993971695 | -0.95% | -0.94% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-0-9]` | 0.00023208520000167577 | 0.00023914945929932684 | -3.04% | -2.95% | 0.97x | ❌ | +| `hexbytes_getitem_index[5-4-byte pattern]` | 0.00023693556385742098 | 0.00023690603689597708 | 0.01% | 0.01% | 1.00x | ✅ | +| `hexbytes_getitem_index[5-all byte values]` | 0.00023762330956412817 | 0.00023478448902926278 | 1.19% | 1.21% | 1.01x | ✅ | +| `hexbytes_getitem_index[5-alternating 0x00/0xff]` | 0.00023253228849335494 | 0.00023811940976781407 | -2.40% | -2.35% | 0.98x | ❌ | +| `hexbytes_getitem_index[5-alternating 0xaa/0x55]` | 0.00023204148124049545 | 0.0002387145557185672 | -2.88% | -2.80% | 0.97x | ❌ | +| `hexbytes_getitem_index[5-ascii sentence]` | 0.00023651539329334827 | 0.0002328513276384771 | 1.55% | 1.57% | 1.02x | ✅ | +| `hexbytes_getitem_index[5-b'\\x00'*32]` | 0.00023295007593970377 | 0.00023642436293504324 | -1.49% | -1.47% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-b'\\x01'*100]` | 0.00023310976307144198 | 0.00023515674468928835 | -0.88% | -0.87% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-b'\\x01'*2048]` | 0.00023202209138310317 | 0.0002384023604017215 | -2.75% | -2.68% | 0.97x | ❌ | +| `hexbytes_getitem_index[5-b'\\x7f'*8]` | 0.00023281469574276266 | 0.00023616365406848203 | -1.44% | -1.42% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-b'\\x80'*8]` | 0.00023255835829824153 | 0.00023790969983065346 | -2.30% | -2.25% | 0.98x | ❌ | +| `hexbytes_getitem_index[5-b'\\xff'*64]` | 0.0002348685999047489 | 0.00023515239756887002 | -0.12% | -0.12% | 1.00x | ❌ | +| `hexbytes_getitem_index[5-b'a'*1024]` | 0.00023184810393771398 | 0.00023941296734060057 | -3.26% | -3.16% | 0.97x | ❌ | +| `hexbytes_getitem_index[5-long alternating]` | 0.00023469402686078343 | 0.0002381742587228311 | -1.48% | -1.46% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-mixed pattern]` | 0.00023583600827405184 | 0.00023595569197226433 | -0.05% | -0.05% | 1.00x | ❌ | +| `hexbytes_getitem_index[5-multiples of 0x10]` | 0.000233325586302983 | 0.00023736821061043885 | -1.73% | -1.70% | 0.98x | ❌ | +| `hexbytes_getitem_index[5-palindrome ascii]` | 0.00023557268346749126 | 0.00023794375123719117 | -1.01% | -1.00% | 0.99x | ❌ | +| `hexbytes_getitem_index[5-palindrome]` | 0.00023134483185417633 | 0.00023851588556708778 | -3.10% | -3.01% | 0.97x | ❌ | +| `hexbytes_getitem_index[5-repeated 0-9]` | 0.00023532697906031145 | 0.00023558111581283543 | -0.11% | -0.11% | 1.00x | ❌ | +| `hexbytes_getitem_index[5-two patterns]` | 0.0002357808404100733 | 0.00023624241594405985 | -0.20% | -0.20% | 1.00x | ❌ | +| `hexbytes_getitem_slice[slice(-3,None)-0-9]` | 0.0007552087993723757 | 0.0005035078853484469 | 33.33% | 49.99% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-4-byte pattern]` | 0.0007570370438813683 | 0.0005469708306221323 | 27.75% | 38.41% | 1.38x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-all byte values]` | 0.0007561990794844683 | 0.0005033745292937258 | 33.43% | 50.23% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-alternating 0x00/0xff]` | 0.0007564489354600619 | 0.0005002566924272985 | 33.87% | 51.21% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-alternating 0xaa/0x55]` | 0.0007575083843159839 | 0.0005018777500002863 | 33.75% | 50.93% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-ascii sentence]` | 0.0007501316787565844 | 0.0005077212014573875 | 32.32% | 47.74% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'']` | 0.0007221344921448474 | 0.00048051879386421225 | 33.46% | 50.28% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x00'*32]` | 0.0007436681869656197 | 0.0005003741792331006 | 32.72% | 48.62% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x00\\xff\\x00\\xff']` | 0.0007524823721115432 | 0.0004986749278508535 | 33.73% | 50.90% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01'*100]` | 0.0007586815708683384 | 0.0005015183714156964 | 33.90% | 51.28% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01'*2048]` | 0.0007511027515526659 | 0.0005357336623666368 | 28.67% | 40.20% | 1.40x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x01\\x02\\x03']` | 0.0007477579563554077 | 0.0005052009305622402 | 32.44% | 48.01% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0007540601318611407 | 0.0005008921703139416 | 33.57% | 50.54% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x7f'*8]` | 0.0007513019704961526 | 0.0005030006782126436 | 33.05% | 49.36% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\x80'*8]` | 0.0007546848739412186 | 0.0005028066242400632 | 33.38% | 50.09% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\xde\\xad\\xbe\\xef']` | 0.0007533076096422293 | 0.000502950730153782 | 33.23% | 49.78% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'\\xff'*64]` | 0.0007468755548739607 | 0.0004999952053956877 | 33.06% | 49.38% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'a'*1024]` | 0.0007476060963770567 | 0.000506746013135917 | 32.22% | 47.53% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-b'abc']` | 0.0007524326481894316 | 0.0005078236600820059 | 32.51% | 48.17% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-long alternating]` | 0.0007543396917082651 | 0.0005030797251743777 | 33.31% | 49.94% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-mixed pattern]` | 0.0007519155270897317 | 0.0005006371153476612 | 33.42% | 50.19% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-multiples of 0x10]` | 0.0007538367202842782 | 0.0005416284958103208 | 28.15% | 39.18% | 1.39x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-palindrome ascii]` | 0.0007538091123962086 | 0.0005037686220548676 | 33.17% | 49.63% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-palindrome numeric]` | 0.0007512601774695642 | 0.0005168914043759348 | 31.20% | 45.34% | 1.45x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-palindrome]` | 0.0007500530992959223 | 0.0004994718256788652 | 33.41% | 50.17% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-repeated 0-9]` | 0.0007742050902094686 | 0.0005062474294111654 | 34.61% | 52.93% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-single 0xff]` | 0.000722341320588234 | 0.00048249104236042136 | 33.20% | 49.71% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-single null byte]` | 0.000721675448963344 | 0.00048229334425799213 | 33.17% | 49.63% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(-3,None)-two patterns]` | 0.0007584584744628435 | 0.0005050048681588608 | 33.42% | 50.19% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-0-9]` | 0.0007683983084485842 | 0.0005021878976315463 | 34.64% | 53.01% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-4-byte pattern]` | 0.0007682640656123846 | 0.0005065669954487273 | 34.06% | 51.66% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-all byte values]` | 0.0007708970188386107 | 0.0005064558969549377 | 34.30% | 52.21% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-alternating 0x00/0xff]` | 0.0007739349228930025 | 0.0005030072494955978 | 35.01% | 53.86% | 1.54x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-alternating 0xaa/0x55]` | 0.0007692011488507842 | 0.0005032222157250743 | 34.58% | 52.86% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-ascii sentence]` | 0.0007659415231851768 | 0.0005044239820674283 | 34.14% | 51.84% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'']` | 0.0007313740439563084 | 0.0004911854987871066 | 32.84% | 48.90% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x00'*32]` | 0.0007625384021384276 | 0.000506729798159963 | 33.55% | 50.48% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x00\\xff\\x00\\xff']` | 0.000756653332586951 | 0.0005025635570189583 | 33.58% | 50.56% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x01'*100]` | 0.0007672585034952588 | 0.0005045503552476409 | 34.24% | 52.07% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x01'*2048]` | 0.0007694105786547182 | 0.0005042436470888108 | 34.46% | 52.59% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x01\\x02\\x03']` | 0.0007760900481380996 | 0.0005081267191318669 | 34.53% | 52.74% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0007629865968337556 | 0.0005037964836044842 | 33.97% | 51.45% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x7f'*8]` | 0.0007649580884159669 | 0.0005041129271650033 | 34.10% | 51.74% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\x80'*8]` | 0.0007665253787308408 | 0.0005045961253310499 | 34.17% | 51.91% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\xde\\xad\\xbe\\xef']` | 0.0007571935188303817 | 0.0005000643037766151 | 33.96% | 51.42% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'\\xff'*64]` | 0.0007580912225709302 | 0.0005079238941283905 | 33.00% | 49.25% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'a'*1024]` | 0.000762206819611075 | 0.0005123505725158143 | 32.78% | 48.77% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-b'abc']` | 0.0008085940398421699 | 0.0005031057229625507 | 37.78% | 60.72% | 1.61x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-long alternating]` | 0.0007656539882974852 | 0.0005061574618138693 | 33.89% | 51.27% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-mixed pattern]` | 0.0007666534598083335 | 0.0005052904228716186 | 34.09% | 51.73% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-multiples of 0x10]` | 0.0007667880266992266 | 0.000502650690608015 | 34.45% | 52.55% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-palindrome ascii]` | 0.0007670040595625855 | 0.0005066039418316377 | 33.95% | 51.40% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-palindrome numeric]` | 0.0007774453393144235 | 0.0005083131069434453 | 34.62% | 52.95% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-palindrome]` | 0.0007630130285494073 | 0.0005052585634316703 | 33.78% | 51.01% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-repeated 0-9]` | 0.0007686075849771887 | 0.0005034289414150619 | 34.50% | 52.67% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-single 0xff]` | 0.0007349138271066517 | 0.0004912058278051052 | 33.16% | 49.61% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-single null byte]` | 0.0007367613966816704 | 0.0004918808878947426 | 33.24% | 49.78% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(0,3)-two patterns]` | 0.0007775526860089106 | 0.0005041366491297661 | 35.16% | 54.23% | 1.54x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-0-9]` | 0.0007666561314554037 | 0.0005057539969198515 | 34.03% | 51.59% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-4-byte pattern]` | 0.0007672161342710039 | 0.0005191228596216879 | 32.34% | 47.79% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-all byte values]` | 0.0007699484398425938 | 0.0005078450253992342 | 34.04% | 51.61% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-alternating 0x00/0xff]` | 0.0007690745859425932 | 0.0005037570688546641 | 34.50% | 52.67% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-alternating 0xaa/0x55]` | 0.0007708791502266081 | 0.0005060095074077734 | 34.36% | 52.34% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-ascii sentence]` | 0.0007690223738127535 | 0.0005068192756069014 | 34.10% | 51.74% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'']` | 0.0007378444766763428 | 0.0004903645237884231 | 33.54% | 50.47% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x00'*32]` | 0.0007801107680013047 | 0.000510306224144605 | 34.59% | 52.87% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x00\\xff\\x00\\xff']` | 0.0007706866817472456 | 0.0005091016942448291 | 33.94% | 51.38% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x01'*100]` | 0.0007698163615215447 | 0.0005067704227375724 | 34.17% | 51.91% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x01'*2048]` | 0.0007650989194048876 | 0.0005102683657928777 | 33.31% | 49.94% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x01\\x02\\x03']` | 0.0007645180070878311 | 0.0005164819301576863 | 32.44% | 48.02% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0007664863144674464 | 0.0005212740010613365 | 31.99% | 47.04% | 1.47x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x7f'*8]` | 0.0008142611913114468 | 0.0005101124915744808 | 37.35% | 59.62% | 1.60x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\x80'*8]` | 0.000770651576469533 | 0.0005087252347921686 | 33.99% | 51.49% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\xde\\xad\\xbe\\xef']` | 0.0007696667204716211 | 0.0005040447498656266 | 34.51% | 52.70% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'\\xff'*64]` | 0.0007625726822281015 | 0.0005105521441811621 | 33.05% | 49.36% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'a'*1024]` | 0.0007644985569908452 | 0.0005107300535941423 | 33.19% | 49.69% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-b'abc']` | 0.0007680849269249498 | 0.0005109037652504424 | 33.48% | 50.34% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-long alternating]` | 0.0007658994044221603 | 0.0005033440110700541 | 34.28% | 52.16% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-mixed pattern]` | 0.000768955421726253 | 0.0005082253015950997 | 33.91% | 51.30% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-multiples of 0x10]` | 0.0007700343103720825 | 0.0005054958038064868 | 34.35% | 52.33% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-palindrome ascii]` | 0.0007611623262243023 | 0.0005117201020089682 | 32.77% | 48.75% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-palindrome numeric]` | 0.0007647641070020693 | 0.0005062554849120618 | 33.80% | 51.06% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-palindrome]` | 0.0007705647530685572 | 0.0005088609590135869 | 33.96% | 51.43% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-repeated 0-9]` | 0.0007701055051147719 | 0.000504367853456094 | 34.51% | 52.69% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-single 0xff]` | 0.0007370520879954632 | 0.0004918188798221837 | 33.27% | 49.86% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-single null byte]` | 0.0007372722441800334 | 0.0004902205771532583 | 33.51% | 50.40% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(1,6)-two patterns]` | 0.0007723066047823834 | 0.0005062108680044081 | 34.45% | 52.57% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-0-9]` | 0.0007541187781202154 | 0.0005027630861623846 | 33.33% | 49.99% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-4-byte pattern]` | 0.0007912992294558164 | 0.000530119774129724 | 33.01% | 49.27% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-all byte values]` | 0.0007858551686835157 | 0.0005315163237614773 | 32.36% | 47.85% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-alternating 0x00/0xff]` | 0.0007463746782798412 | 0.0005032308126559352 | 32.58% | 48.32% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-alternating 0xaa/0x55]` | 0.0007509996883712564 | 0.0005173128736212475 | 31.12% | 45.17% | 1.45x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-ascii sentence]` | 0.0007430478609182664 | 0.0004957281450800112 | 33.28% | 49.89% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'']` | 0.0007250706399109304 | 0.00048438700359530246 | 33.19% | 49.69% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x00'*32]` | 0.0007498682933531576 | 0.0005004500080063268 | 33.26% | 49.84% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x00\\xff\\x00\\xff']` | 0.0007583027243241571 | 0.0005039550246226497 | 33.54% | 50.47% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x01'*100]` | 0.0007453624577293968 | 0.0005017555864493906 | 32.68% | 48.55% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x01'*2048]` | 0.0009388016862547137 | 0.0006287386677545343 | 33.03% | 49.32% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x01\\x02\\x03']` | 0.0007233278949258002 | 0.0004827907676146764 | 33.25% | 49.82% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0007593667293475367 | 0.0005019825311020107 | 33.89% | 51.27% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x7f'*8]` | 0.0007550094322090281 | 0.000499203613797121 | 33.88% | 51.24% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\x80'*8]` | 0.0007542784843994306 | 0.0005064505393298387 | 32.86% | 48.93% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\xde\\xad\\xbe\\xef']` | 0.0007560000464754682 | 0.0005251861737245499 | 30.53% | 43.95% | 1.44x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'\\xff'*64]` | 0.0007504877727976645 | 0.0005058789213314925 | 32.59% | 48.35% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'a'*1024]` | 0.0008633088503527906 | 0.000626699866751125 | 27.41% | 37.75% | 1.38x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-b'abc']` | 0.000720151427092856 | 0.0004829060256382426 | 32.94% | 49.13% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-long alternating]` | 0.0009059783049590332 | 0.0005957360990744816 | 34.24% | 52.08% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-mixed pattern]` | 0.0007476851284617134 | 0.0005054466940744665 | 32.40% | 47.93% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-multiples of 0x10]` | 0.0007399629084665175 | 0.0005044022574237364 | 31.83% | 46.70% | 1.47x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-palindrome ascii]` | 0.0007547253209030246 | 0.0005018320915293474 | 33.51% | 50.39% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-palindrome numeric]` | 0.000756134310262083 | 0.000503866970328451 | 33.36% | 50.07% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-palindrome]` | 0.0007630241489681448 | 0.0004994626063012299 | 34.54% | 52.77% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-repeated 0-9]` | 0.0007478378925295373 | 0.0005075965739777354 | 32.12% | 47.33% | 1.47x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-single 0xff]` | 0.0007239922063836876 | 0.0004839946958206721 | 33.15% | 49.59% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-single null byte]` | 0.0007225343314160217 | 0.0004820066825960389 | 33.29% | 49.90% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(2,None)-two patterns]` | 0.0007488874278267181 | 0.0005068099075112375 | 32.32% | 47.76% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-0-9]` | 0.0007327978365969977 | 0.00048395257516118637 | 33.96% | 51.42% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-4-byte pattern]` | 0.0008138762049583428 | 0.0004947676525982924 | 39.21% | 64.50% | 1.64x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-all byte values]` | 0.0007515556332028824 | 0.0004923392114389165 | 34.49% | 52.65% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-alternating 0x00/0xff]` | 0.0007349903824808652 | 0.0005138432993032826 | 30.09% | 43.04% | 1.43x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-alternating 0xaa/0x55]` | 0.0007383309545117131 | 0.0005200939952840454 | 29.56% | 41.96% | 1.42x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-ascii sentence]` | 0.0007301063398728716 | 0.00048283842272486615 | 33.87% | 51.21% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'']` | 0.00071399836403654 | 0.00046159769809402243 | 35.35% | 54.68% | 1.55x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x00'*32]` | 0.0007837984232325521 | 0.00048335207397915217 | 38.33% | 62.16% | 1.62x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x00\\xff\\x00\\xff']` | 0.0007384474554378138 | 0.0004853684275432508 | 34.27% | 52.14% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x01'*100]` | 0.0007313023249996363 | 0.0004936925118181113 | 32.49% | 48.13% | 1.48x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x01'*2048]` | 0.0008725979700539473 | 0.0006335159646987776 | 27.40% | 37.74% | 1.38x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x01\\x02\\x03']` | 0.0007387454794820631 | 0.0004900164282907336 | 33.67% | 50.76% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x10\\x20\\x30\\x40\\x50']` | 0.0007377376123679695 | 0.00048765593566483677 | 33.90% | 51.28% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x7f'*8]` | 0.0007281043670349184 | 0.0005134501792711461 | 29.48% | 41.81% | 1.42x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\x80'*8]` | 0.0007329481026935012 | 0.00048763247832629095 | 33.47% | 50.31% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\xde\\xad\\xbe\\xef']` | 0.0007455653744295298 | 0.0004868815863509701 | 34.70% | 53.13% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'\\xff'*64]` | 0.0007287594610847005 | 0.0005215673324076097 | 28.43% | 39.72% | 1.40x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'a'*1024]` | 0.0008418661631762908 | 0.0005777017507091948 | 31.38% | 45.73% | 1.46x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-b'abc']` | 0.0007360147509568947 | 0.000490057899172727 | 33.42% | 50.19% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-long alternating]` | 0.000846363082123537 | 0.0006139801523809256 | 27.46% | 37.85% | 1.38x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-mixed pattern]` | 0.0007333361209611165 | 0.0004869431847225879 | 33.60% | 50.60% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-multiples of 0x10]` | 0.0007355309320765405 | 0.00048099038679633974 | 34.61% | 52.92% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-palindrome ascii]` | 0.0007323107877643212 | 0.0004868363079671412 | 33.52% | 50.42% | 1.50x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-palindrome numeric]` | 0.0007354292108035588 | 0.000485605967647442 | 33.97% | 51.45% | 1.51x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-palindrome]` | 0.0007334489396148581 | 0.00048247903220869796 | 34.22% | 52.02% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-repeated 0-9]` | 0.0007341762060321683 | 0.0004937204965717326 | 32.75% | 48.70% | 1.49x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-single 0xff]` | 0.0007126143722645633 | 0.00046474296430301984 | 34.78% | 53.34% | 1.53x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-single null byte]` | 0.0007089015308178174 | 0.00046541409187453325 | 34.35% | 52.32% | 1.52x | ✅ | +| `hexbytes_getitem_slice[slice(None,None)-two patterns]` | 0.0007338101743748118 | 0.0005350825923876228 | 27.08% | 37.14% | 1.37x | ✅ | +| `hexbytes_new['']` | 0.0006757268623394059 | 0.0002864376626027422 | 57.61% | 135.91% | 2.36x | ✅ | +| `hexbytes_new['0x'+'00'*64]` | 0.0008946495711523556 | 0.0004376374203561509 | 51.08% | 104.43% | 2.04x | ✅ | +| `hexbytes_new['0x'+'a'*128]` | 0.0008776543380016198 | 0.00042890473057653023 | 51.13% | 104.63% | 2.05x | ✅ | +| `hexbytes_new['0x'+'ff'*32]` | 0.0008419182740207142 | 0.0004004594622518755 | 52.43% | 110.24% | 2.10x | ✅ | +| `hexbytes_new['0x']` | 0.0007356388981188673 | 0.00028063624855487846 | 61.85% | 162.13% | 2.62x | ✅ | +| `hexbytes_new['0x1234']` | 0.0008233267632249901 | 0.00036698768202359427 | 55.43% | 124.35% | 2.24x | ✅ | +| `hexbytes_new['0xCAFEBABE']` | 0.0008293931319446458 | 0.0003715214849822568 | 55.21% | 123.24% | 2.23x | ✅ | +| `hexbytes_new['0xabcdef']` | 0.0008303245686786095 | 0.00037563874738529896 | 54.76% | 121.04% | 2.21x | ✅ | +| `hexbytes_new['0xdeadbeef']` | 0.0008295289551225057 | 0.0003725005913611729 | 55.09% | 122.69% | 2.23x | ✅ | +| `hexbytes_new['abc']` | 0.0007902732121974855 | 0.0003996609748916747 | 49.43% | 97.74% | 1.98x | ✅ | +| `hexbytes_new['deadbeef']` | 0.0007222896193509182 | 0.00035243764853171784 | 51.21% | 104.94% | 2.05x | ✅ | +| `hexbytes_new[0-9]` | 0.00039427913989671973 | 0.00025245725638331826 | 35.97% | 56.18% | 1.56x | ✅ | +| `hexbytes_new[0]` | 0.0012169286202520974 | 0.00030016523665545486 | 75.33% | 305.42% | 4.05x | ✅ | +| `hexbytes_new[123456]` | 0.0012757070107074617 | 0.0003070781245664983 | 75.93% | 315.43% | 4.15x | ✅ | +| `hexbytes_new[1]` | 0.0012166749135809666 | 0.0003065926194553385 | 74.80% | 296.84% | 3.97x | ✅ | +| `hexbytes_new[2**16]` | 0.0012578837008865363 | 0.0003104935583488901 | 75.32% | 305.12% | 4.05x | ✅ | +| `hexbytes_new[2**256-1]` | 0.0013189467655632186 | 0.00034371215807159084 | 73.94% | 283.74% | 3.84x | ✅ | +| `hexbytes_new[2**32]` | 0.0013018812039991493 | 0.00032914669986853454 | 74.72% | 295.53% | 3.96x | ✅ | +| `hexbytes_new[2**64]` | 0.001302048005348502 | 0.0003333898766433999 | 74.39% | 290.55% | 3.91x | ✅ | +| `hexbytes_new[2**8]` | 0.0012550787858970126 | 0.00030584598818215563 | 75.63% | 310.36% | 4.10x | ✅ | +| `hexbytes_new[255]` | 0.0011954873905667333 | 0.0003039199353360293 | 74.58% | 293.36% | 3.93x | ✅ | +| `hexbytes_new[4-byte pattern]` | 0.0004077265179385041 | 0.0002655092995311831 | 34.88% | 53.56% | 1.54x | ✅ | +| `hexbytes_new[False]` | 0.0005611155551768242 | 0.0002525845380607691 | 54.99% | 122.15% | 2.22x | ✅ | +| `hexbytes_new[True]` | 0.0005806372098836791 | 0.0002524368663572057 | 56.52% | 130.01% | 2.30x | ✅ | +| `hexbytes_new[all byte values]` | 0.0004105019155093366 | 0.000261423272055102 | 36.32% | 57.03% | 1.57x | ✅ | +| `hexbytes_new[alternating 0x00/0xff]` | 0.00039413577708907125 | 0.0002578053879356885 | 34.59% | 52.88% | 1.53x | ✅ | +| `hexbytes_new[alternating 0xaa/0x55]` | 0.0003954508447525606 | 0.00025766728511843233 | 34.84% | 53.47% | 1.53x | ✅ | +| `hexbytes_new[ascii sentence]` | 0.00037857946337647606 | 0.00025333503942911675 | 33.08% | 49.44% | 1.49x | ✅ | +| `hexbytes_new[b'']` | 0.0003899572442889041 | 0.0002532656372966542 | 35.05% | 53.97% | 1.54x | ✅ | +| `hexbytes_new[b'\\x00'*32]` | 0.0003924281415103086 | 0.0002523721397854785 | 35.69% | 55.50% | 1.55x | ✅ | +| `hexbytes_new[b'\\x00\\xff\\x00\\xff']` | 0.00039495446068807735 | 0.0002528964666497517 | 35.97% | 56.17% | 1.56x | ✅ | +| `hexbytes_new[b'\\x01'*100]` | 0.000391957381402419 | 0.0002559295439003873 | 34.70% | 53.15% | 1.53x | ✅ | +| `hexbytes_new[b'\\x01'*2048]` | 0.0004867585736740973 | 0.0003954753250743763 | 18.75% | 23.08% | 1.23x | ✅ | +| `hexbytes_new[b'\\x01\\x02\\x03']` | 0.00041828977403168875 | 0.0002609970485473097 | 37.60% | 60.27% | 1.60x | ✅ | +| `hexbytes_new[b'\\x10\\x20\\x30\\x40\\x50']` | 0.00039794182935158374 | 0.0002537143672303283 | 36.24% | 56.85% | 1.57x | ✅ | +| `hexbytes_new[b'\\x7f'*8]` | 0.0003932649674600911 | 0.0002562126081683494 | 34.85% | 53.49% | 1.53x | ✅ | +| `hexbytes_new[b'\\x80'*8]` | 0.0003950294775680181 | 0.000254878586168808 | 35.48% | 54.99% | 1.55x | ✅ | +| `hexbytes_new[b'\\xde\\xad\\xbe\\xef']` | 0.00038970042756281814 | 0.00025289808630679384 | 35.10% | 54.09% | 1.54x | ✅ | +| `hexbytes_new[b'\\xff'*64]` | 0.0003914056944218838 | 0.0002592227734909088 | 33.77% | 50.99% | 1.51x | ✅ | +| `hexbytes_new[b'a'*1024]` | 0.00043451784588528075 | 0.000286695150231192 | 34.02% | 51.56% | 1.52x | ✅ | +| `hexbytes_new[b'abc']` | 0.00039257206761529796 | 0.0002531453326740037 | 35.52% | 55.08% | 1.55x | ✅ | +| `hexbytes_new[bytearray(0-9)]` | 0.0006124712182870674 | 0.0003540280363231784 | 42.20% | 73.00% | 1.73x | ✅ | +| `hexbytes_new[bytearray(4-byte pattern)]` | 0.0006477888165436574 | 0.0003481264171590058 | 46.26% | 86.08% | 1.86x | ✅ | +| `hexbytes_new[bytearray(all byte values)]` | 0.000642999333775989 | 0.0003477452524366286 | 45.92% | 84.91% | 1.85x | ✅ | +| `hexbytes_new[bytearray(alternating 0x00/0xff)]` | 0.0006188601923075983 | 0.00034561497490038194 | 44.15% | 79.06% | 1.79x | ✅ | +| `hexbytes_new[bytearray(alternating 0xaa/0x55)]` | 0.0006200846054815008 | 0.0003486709496978191 | 43.77% | 77.84% | 1.78x | ✅ | +| `hexbytes_new[bytearray(ascii sentence)]` | 0.0006052648879151714 | 0.00034540888329836187 | 42.93% | 75.23% | 1.75x | ✅ | +| `hexbytes_new[bytearray(b'')]` | 0.0006002437189352231 | 0.00033707778589123607 | 43.84% | 78.07% | 1.78x | ✅ | +| `hexbytes_new[bytearray(b'\\x00'*32)]` | 0.000616555321700709 | 0.0003520501777533288 | 42.90% | 75.13% | 1.75x | ✅ | +| `hexbytes_new[bytearray(b'\\x00\\xff\\x00\\xff')]` | 0.0006139784021679136 | 0.000344170050200092 | 43.94% | 78.39% | 1.78x | ✅ | +| `hexbytes_new[bytearray(b'\\x01'*100)]` | 0.0006186835300124554 | 0.00035874146498229045 | 42.02% | 72.46% | 1.72x | ✅ | +| `hexbytes_new[bytearray(b'\\x01'*2048)]` | 0.000817567222130206 | 0.00047695461392420805 | 41.66% | 71.41% | 1.71x | ✅ | +| `hexbytes_new[bytearray(b'\\x01\\x02\\x03')]` | 0.0006154507360308289 | 0.00035139010124358603 | 42.91% | 75.15% | 1.75x | ✅ | +| `hexbytes_new[bytearray(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0006191420559849898 | 0.00034814546961074033 | 43.77% | 77.84% | 1.78x | ✅ | +| `hexbytes_new[bytearray(b'\\x7f'*8)]` | 0.0006135069701761334 | 0.00034374036380349177 | 43.97% | 78.48% | 1.78x | ✅ | +| `hexbytes_new[bytearray(b'\\x80'*8)]` | 0.0006172677544749998 | 0.0003439546319112817 | 44.28% | 79.46% | 1.79x | ✅ | +| `hexbytes_new[bytearray(b'\\xde\\xad\\xbe\\xef')]` | 0.0006123897878992944 | 0.000344775986867035 | 43.70% | 77.62% | 1.78x | ✅ | +| `hexbytes_new[bytearray(b'\\xff'*64)]` | 0.00061181419599081 | 0.00037429812244123533 | 38.82% | 63.46% | 1.63x | ✅ | +| `hexbytes_new[bytearray(b'a'*1024)]` | 0.0007583407535095519 | 0.00044578671225107105 | 41.22% | 70.11% | 1.70x | ✅ | +| `hexbytes_new[bytearray(b'abc')]` | 0.0006127626160871806 | 0.0003551521444978806 | 42.04% | 72.54% | 1.73x | ✅ | +| `hexbytes_new[bytearray(long alternating)]` | 0.0007665586101033531 | 0.00045455322938130275 | 40.70% | 68.64% | 1.69x | ✅ | +| `hexbytes_new[bytearray(mixed pattern)]` | 0.000610747635794808 | 0.00034362983211189596 | 43.74% | 77.73% | 1.78x | ✅ | +| `hexbytes_new[bytearray(multiples of 0x10)]` | 0.0006274673475686194 | 0.00035233222639498784 | 43.85% | 78.09% | 1.78x | ✅ | +| `hexbytes_new[bytearray(palindrome ascii)]` | 0.0006203933854736917 | 0.00034926231232588535 | 43.70% | 77.63% | 1.78x | ✅ | +| `hexbytes_new[bytearray(palindrome numeric)]` | 0.0006281356449930259 | 0.00034516999790426046 | 45.05% | 81.98% | 1.82x | ✅ | +| `hexbytes_new[bytearray(palindrome)]` | 0.0006193607864198372 | 0.0003409341009270737 | 44.95% | 81.67% | 1.82x | ✅ | +| `hexbytes_new[bytearray(repeated 0-9)]` | 0.0006105675030450814 | 0.0003566012531329629 | 41.60% | 71.22% | 1.71x | ✅ | +| `hexbytes_new[bytearray(single 0xff)]` | 0.0006243015723598404 | 0.0003525810070049527 | 43.52% | 77.07% | 1.77x | ✅ | +| `hexbytes_new[bytearray(single null byte)]` | 0.0006334905953279831 | 0.00035370224144276114 | 44.17% | 79.10% | 1.79x | ✅ | +| `hexbytes_new[bytearray(two patterns)]` | 0.0006118393060310949 | 0.0003470846172180828 | 43.27% | 76.28% | 1.76x | ✅ | +| `hexbytes_new[long alternating]` | 0.000438537111470511 | 0.00030257233397878194 | 31.00% | 44.94% | 1.45x | ✅ | +| `hexbytes_new[memoryview(0-9)]` | 0.0007567725796076832 | 0.0003924772385746912 | 48.14% | 92.82% | 1.93x | ✅ | +| `hexbytes_new[memoryview(4-byte pattern)]` | 0.0008077953663027752 | 0.00038547429368560564 | 52.28% | 109.56% | 2.10x | ✅ | +| `hexbytes_new[memoryview(all byte values)]` | 0.0008315145693367354 | 0.00038509501095845903 | 53.69% | 115.92% | 2.16x | ✅ | +| `hexbytes_new[memoryview(alternating 0x00/0xff)]` | 0.0007582859937493858 | 0.0004077587759999293 | 46.23% | 85.96% | 1.86x | ✅ | +| `hexbytes_new[memoryview(alternating 0xaa/0x55)]` | 0.0007568627832812452 | 0.0004077705044787185 | 46.12% | 85.61% | 1.86x | ✅ | +| `hexbytes_new[memoryview(ascii sentence)]` | 0.0007645686368665454 | 0.00037980704468413786 | 50.32% | 101.30% | 2.01x | ✅ | +| `hexbytes_new[memoryview(b'')]` | 0.0007455003275086465 | 0.00036710227844584994 | 50.76% | 103.08% | 2.03x | ✅ | +| `hexbytes_new[memoryview(b'\\x00'*32)]` | 0.0007587607396732215 | 0.000392199187669549 | 48.31% | 93.46% | 1.93x | ✅ | +| `hexbytes_new[memoryview(b'\\x00\\xff\\x00\\xff')]` | 0.000770436079969657 | 0.00037974118754953185 | 50.71% | 102.88% | 2.03x | ✅ | +| `hexbytes_new[memoryview(b'\\x01'*100)]` | 0.0007661529368499241 | 0.0003944896909703347 | 48.51% | 94.21% | 1.94x | ✅ | +| `hexbytes_new[memoryview(b'\\x01'*2048)]` | 0.0009547358321886169 | 0.0005168406898175577 | 45.87% | 84.73% | 1.85x | ✅ | +| `hexbytes_new[memoryview(b'\\x01\\x02\\x03')]` | 0.0007743104620150349 | 0.0003785397520208228 | 51.11% | 104.55% | 2.05x | ✅ | +| `hexbytes_new[memoryview(b'\\x10\\x20\\x30\\x40\\x50')]` | 0.0007573627950497105 | 0.00038034026597357303 | 49.78% | 99.13% | 1.99x | ✅ | +| `hexbytes_new[memoryview(b'\\x7f'*8)]` | 0.0007749602339917103 | 0.00039756107967663427 | 48.70% | 94.93% | 1.95x | ✅ | +| `hexbytes_new[memoryview(b'\\x80'*8)]` | 0.0007746764858419722 | 0.0003795627558234577 | 51.00% | 104.10% | 2.04x | ✅ | +| `hexbytes_new[memoryview(b'\\xde\\xad\\xbe\\xef')]` | 0.0007698903299287942 | 0.0003789449632532138 | 50.78% | 103.17% | 2.03x | ✅ | +| `hexbytes_new[memoryview(b'\\xff'*64)]` | 0.0007680442144552532 | 0.00038484190058662917 | 49.89% | 99.57% | 2.00x | ✅ | +| `hexbytes_new[memoryview(b'a'*1024)]` | 0.0009132535832550592 | 0.0004884688834297247 | 46.51% | 86.96% | 1.87x | ✅ | +| `hexbytes_new[memoryview(b'abc')]` | 0.0007692440312996923 | 0.00038151819060564717 | 50.40% | 101.63% | 2.02x | ✅ | +| `hexbytes_new[memoryview(long alternating)]` | 0.0009043270689989371 | 0.0005176032074971454 | 42.76% | 74.71% | 1.75x | ✅ | +| `hexbytes_new[memoryview(mixed pattern)]` | 0.0007724383599057907 | 0.00038208789643990096 | 50.53% | 102.16% | 2.02x | ✅ | +| `hexbytes_new[memoryview(multiples of 0x10)]` | 0.0007517019802046745 | 0.00037903708310018617 | 49.58% | 98.32% | 1.98x | ✅ | +| `hexbytes_new[memoryview(palindrome ascii)]` | 0.0007624536620900125 | 0.0003810918032561783 | 50.02% | 100.07% | 2.00x | ✅ | +| `hexbytes_new[memoryview(palindrome numeric)]` | 0.0007697682250572004 | 0.00038160940641682585 | 50.43% | 101.72% | 2.02x | ✅ | +| `hexbytes_new[memoryview(palindrome)]` | 0.0007734001754671287 | 0.0003816855415824967 | 50.65% | 102.63% | 2.03x | ✅ | +| `hexbytes_new[memoryview(repeated 0-9)]` | 0.0007742774579296356 | 0.00039568282779353864 | 48.90% | 95.68% | 1.96x | ✅ | +| `hexbytes_new[memoryview(single 0xff)]` | 0.0007760311711783374 | 0.0003825895705402092 | 50.70% | 102.84% | 2.03x | ✅ | +| `hexbytes_new[memoryview(single null byte)]` | 0.0007766776757844862 | 0.000383927456739053 | 50.57% | 102.30% | 2.02x | ✅ | +| `hexbytes_new[memoryview(two patterns)]` | 0.0007698373555549714 | 0.00038446451426360175 | 50.06% | 100.24% | 2.00x | ✅ | +| `hexbytes_new[mixed pattern]` | 0.00038554818940996145 | 0.0002585175122270597 | 32.95% | 49.14% | 1.49x | ✅ | +| `hexbytes_new[multiples of 0x10]` | 0.00039372591755894765 | 0.0002515022908489314 | 36.12% | 56.55% | 1.57x | ✅ | +| `hexbytes_new[palindrome ascii]` | 0.00039063303038727385 | 0.0002537979211950569 | 35.03% | 53.91% | 1.54x | ✅ | +| `hexbytes_new[palindrome numeric]` | 0.0003874545945491492 | 0.0002540461906209328 | 34.43% | 52.51% | 1.53x | ✅ | +| `hexbytes_new[palindrome]` | 0.00039169927534612005 | 0.0002539203701985864 | 35.17% | 54.26% | 1.54x | ✅ | +| `hexbytes_new[repeated 0-9]` | 0.0003795282706829242 | 0.00025580453603372993 | 32.60% | 48.37% | 1.48x | ✅ | +| `hexbytes_new[single 0xff]` | 0.0003859970045429942 | 0.00024895598905295556 | 35.50% | 55.05% | 1.55x | ✅ | +| `hexbytes_new[single null byte]` | 0.00038487339021401414 | 0.00025433954913401535 | 33.92% | 51.32% | 1.51x | ✅ | +| `hexbytes_new[two patterns]` | 0.0003867354362082136 | 0.00025811951886790395 | 33.26% | 49.83% | 1.50x | ✅ | +| `hexbytes_repr[0-9]` | 0.00029959352317876975 | 0.00014942699180256716 | 50.12% | 100.49% | 2.00x | ✅ | +| `hexbytes_repr[4-byte pattern]` | 0.0012792396849693201 | 0.0004587719425050826 | 64.14% | 178.84% | 2.79x | ✅ | +| `hexbytes_repr[all byte values]` | 0.00131135990653054 | 0.00039855865848797294 | 69.61% | 229.03% | 3.29x | ✅ | +| `hexbytes_repr[alternating 0x00/0xff]` | 0.0005118083946341282 | 0.00020029622738241824 | 60.86% | 155.53% | 2.56x | ✅ | +| `hexbytes_repr[alternating 0xaa/0x55]` | 0.0005078799864326981 | 0.00020051824398301257 | 60.52% | 153.28% | 2.53x | ✅ | +| `hexbytes_repr[ascii sentence]` | 0.0004263916103603112 | 0.00018787240829353476 | 55.94% | 126.96% | 2.27x | ✅ | +| `hexbytes_repr[b'']` | 0.0002115422549363835 | 0.00012362494603093227 | 41.56% | 71.12% | 1.71x | ✅ | +| `hexbytes_repr[b'\\x00'*32]` | 0.00038189426107722226 | 0.00017282544153595674 | 54.75% | 120.97% | 2.21x | ✅ | +| `hexbytes_repr[b'\\x00\\xff\\x00\\xff']` | 0.00027471610308603145 | 0.00014692647767539226 | 46.52% | 86.98% | 1.87x | ✅ | +| `hexbytes_repr[b'\\x01'*100]` | 0.0006494205202591896 | 0.00023554920572903997 | 63.73% | 175.70% | 2.76x | ✅ | +| `hexbytes_repr[b'\\x01'*2048]` | 0.008286006438031243 | 0.0022387614660581106 | 72.98% | 270.12% | 3.70x | ✅ | +| `hexbytes_repr[b'\\x01\\x02\\x03']` | 0.00027147270089629877 | 0.00015606798492217243 | 42.51% | 73.95% | 1.74x | ✅ | +| `hexbytes_repr[b'\\x10\\x20\\x30\\x40\\x50']` | 0.0002885530401732882 | 0.00014468700468453445 | 49.86% | 99.43% | 1.99x | ✅ | +| `hexbytes_repr[b'\\x7f'*8]` | 0.0003004871983814337 | 0.00014895343342753275 | 50.43% | 101.73% | 2.02x | ✅ | +| `hexbytes_repr[b'\\x80'*8]` | 0.0003029744063809596 | 0.00014830753870716937 | 51.05% | 104.29% | 2.04x | ✅ | +| `hexbytes_repr[b'\\xde\\xad\\xbe\\xef']` | 0.0002745177017957475 | 0.00014560984637681788 | 46.96% | 88.53% | 1.89x | ✅ | +| `hexbytes_repr[b'\\xff'*64]` | 0.0005072829690531657 | 0.00020216666305993637 | 60.15% | 150.92% | 2.51x | ✅ | +| `hexbytes_repr[b'a'*1024]` | 0.004312928135373927 | 0.0011808534628166042 | 72.62% | 265.24% | 3.65x | ✅ | +| `hexbytes_repr[b'abc']` | 0.0002727876953682159 | 0.00014656403788171444 | 46.27% | 86.12% | 1.86x | ✅ | +| `hexbytes_repr[long alternating]` | 0.0043202824870679155 | 0.0012312239652141023 | 71.50% | 250.89% | 3.51x | ✅ | +| `hexbytes_repr[mixed pattern]` | 0.0010522169269917012 | 0.0003347721254189027 | 68.18% | 214.31% | 3.14x | ✅ | +| `hexbytes_repr[multiples of 0x10]` | 0.0003008010938296631 | 0.0001514536251905896 | 49.65% | 98.61% | 1.99x | ✅ | +| `hexbytes_repr[palindrome ascii]` | 0.0002873395124134867 | 0.0001467843109990857 | 48.92% | 95.76% | 1.96x | ✅ | +| `hexbytes_repr[palindrome numeric]` | 0.00027914156083997196 | 0.00014556348380869604 | 47.85% | 91.77% | 1.92x | ✅ | +| `hexbytes_repr[palindrome]` | 0.0003375358900492239 | 0.00016098900322602806 | 52.30% | 109.66% | 2.10x | ✅ | +| `hexbytes_repr[repeated 0-9]` | 0.0006501625482989165 | 0.000235285968840488 | 63.81% | 176.33% | 2.76x | ✅ | +| `hexbytes_repr[single 0xff]` | 0.0002735791100531874 | 0.00014397520425989387 | 47.37% | 90.02% | 1.90x | ✅ | +| `hexbytes_repr[single null byte]` | 0.0002838991438898751 | 0.00014343852364450356 | 49.48% | 97.92% | 1.98x | ✅ | +| `hexbytes_repr[two patterns]` | 0.0005087105650582929 | 0.0002014985807802961 | 60.39% | 152.46% | 2.52x | ✅ | +| `hexbytes_to_0x_hex[0-9]` | 0.0001696691535712596 | 0.00014470246121641063 | 14.71% | 17.25% | 1.17x | ✅ | +| `hexbytes_to_0x_hex[4-byte pattern]` | 0.0004241125893996703 | 0.00039398154506570054 | 7.10% | 7.65% | 1.08x | ✅ | +| `hexbytes_to_0x_hex[all byte values]` | 0.0004242815013237549 | 0.00039414083807559803 | 7.10% | 7.65% | 1.08x | ✅ | +| `hexbytes_to_0x_hex[alternating 0x00/0xff]` | 0.00022540181175336973 | 0.00019994785683894833 | 11.29% | 12.73% | 1.13x | ✅ | +| `hexbytes_to_0x_hex[alternating 0xaa/0x55]` | 0.00022352949814556604 | 0.00020684251765393068 | 7.47% | 8.07% | 1.08x | ✅ | +| `hexbytes_to_0x_hex[ascii sentence]` | 0.00020994831580044664 | 0.00017358498714729165 | 17.32% | 20.95% | 1.21x | ✅ | +| `hexbytes_to_0x_hex[b'']` | 0.00010782766622310241 | 0.00011613675875707743 | -7.71% | -7.15% | 0.93x | ❌ | +| `hexbytes_to_0x_hex[b'\\x00'*32]` | 0.0001873465884131832 | 0.00016450653953599363 | 12.19% | 13.88% | 1.14x | ✅ | +| `hexbytes_to_0x_hex[b'\\x00\\xff\\x00\\xff']` | 0.00016566248681252745 | 0.00014198072167124993 | 14.30% | 16.68% | 1.17x | ✅ | +| `hexbytes_to_0x_hex[b'\\x01'*100]` | 0.0002604077999481321 | 0.0002301707456738541 | 11.61% | 13.14% | 1.13x | ✅ | +| `hexbytes_to_0x_hex[b'\\x01'*2048]` | 0.0022209063459836136 | 0.0021952476725281096 | 1.16% | 1.17% | 1.01x | ✅ | +| `hexbytes_to_0x_hex[b'\\x01\\x02\\x03']` | 0.00016262265139749946 | 0.00014054220250173222 | 13.58% | 15.71% | 1.16x | ✅ | +| `hexbytes_to_0x_hex[b'\\x10\\x20\\x30\\x40\\x50']` | 0.00016592915441181384 | 0.00014140525989240948 | 14.78% | 17.34% | 1.17x | ✅ | +| `hexbytes_to_0x_hex[b'\\x7f'*8]` | 0.00016798833980059382 | 0.00014389215448107597 | 14.34% | 16.75% | 1.17x | ✅ | +| `hexbytes_to_0x_hex[b'\\x80'*8]` | 0.00016819273017962998 | 0.0001474111228017236 | 12.36% | 14.10% | 1.14x | ✅ | +| `hexbytes_to_0x_hex[b'\\xde\\xad\\xbe\\xef']` | 0.0001633914862691051 | 0.00014947149830766217 | 8.52% | 9.31% | 1.09x | ✅ | +| `hexbytes_to_0x_hex[b'\\xff'*64]` | 0.00022490817937400332 | 0.0002054671067661237 | 8.64% | 9.46% | 1.09x | ✅ | +| `hexbytes_to_0x_hex[b'a'*1024]` | 0.001239408638462126 | 0.0012295493644223507 | 0.80% | 0.80% | 1.01x | ✅ | +| `hexbytes_to_0x_hex[b'abc']` | 0.00016220902775084903 | 0.00014054371900904517 | 13.36% | 15.42% | 1.15x | ✅ | +| `hexbytes_to_0x_hex[long alternating]` | 0.0012165693345622126 | 0.0011895184372755024 | 2.22% | 2.27% | 1.02x | ✅ | +| `hexbytes_to_0x_hex[mixed pattern]` | 0.00035950989290920246 | 0.000331624781692773 | 7.76% | 8.41% | 1.08x | ✅ | +| `hexbytes_to_0x_hex[multiples of 0x10]` | 0.00016945285543767542 | 0.00014447925412473643 | 14.74% | 17.29% | 1.17x | ✅ | +| `hexbytes_to_0x_hex[palindrome ascii]` | 0.00016719680874020083 | 0.00014195066944818561 | 15.10% | 17.79% | 1.18x | ✅ | +| `hexbytes_to_0x_hex[palindrome numeric]` | 0.00016601891379309795 | 0.00014958715595937756 | 9.90% | 10.98% | 1.11x | ✅ | +| `hexbytes_to_0x_hex[palindrome]` | 0.00017913633949957368 | 0.0001542625880544688 | 13.89% | 16.12% | 1.16x | ✅ | +| `hexbytes_to_0x_hex[repeated 0-9]` | 0.000259529736665216 | 0.00022971358780467292 | 11.49% | 12.98% | 1.13x | ✅ | +| `hexbytes_to_0x_hex[single 0xff]` | 0.00016429192631240488 | 0.0001452142547070488 | 11.61% | 13.14% | 1.13x | ✅ | +| `hexbytes_to_0x_hex[single null byte]` | 0.00017049370439271958 | 0.00013780615178223693 | 19.17% | 23.72% | 1.24x | ✅ | +| `hexbytes_to_0x_hex[two patterns]` | 0.00022824379746080233 | 0.00020072992106455784 | 12.05% | 13.71% | 1.14x | ✅ |