2026-02-09T03:07:22,361 Created temporary directory: /tmp/pip-ephem-wheel-cache-4jynjzms 2026-02-09T03:07:22,363 Created temporary directory: /tmp/pip-build-tracker-cenlgby8 2026-02-09T03:07:22,364 Initialized build tracking at /tmp/pip-build-tracker-cenlgby8 2026-02-09T03:07:22,364 Created build tracker: /tmp/pip-build-tracker-cenlgby8 2026-02-09T03:07:22,365 Entered build tracker: /tmp/pip-build-tracker-cenlgby8 2026-02-09T03:07:22,365 Created temporary directory: /tmp/pip-wheel-5qoe4tci 2026-02-09T03:07:22,368 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-02-09T03:07:22,371 Created temporary directory: /tmp/pip-ephem-wheel-cache-0lh7_kac 2026-02-09T03:07:22,393 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-09T03:07:22,396 2 location(s) to search for versions of denial: 2026-02-09T03:07:22,396 * https://pypi.org/simple/denial/ 2026-02-09T03:07:22,396 * https://www.piwheels.org/simple/denial/ 2026-02-09T03:07:22,397 Fetching project page and analyzing links: https://pypi.org/simple/denial/ 2026-02-09T03:07:22,398 Getting page https://pypi.org/simple/denial/ 2026-02-09T03:07:22,399 Found index url https://pypi.org/simple 2026-02-09T03:07:22,610 Fetched page https://pypi.org/simple/denial/ as application/vnd.pypi.simple.v1+json 2026-02-09T03:07:22,614 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/61/fd/56b55c1e33da2ce134bc4245ddbd3b403dcbc9c0e0ee1ae4a36afa07b64a/denial-0.0.1-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,615 Found link https://files.pythonhosted.org/packages/97/0a/6cca99a7ce3fd94df6bf7637cce70d14e4b504941215d2392e6343bee13a/denial-0.0.1.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.1 2026-02-09T03:07:22,616 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/ab/da/4159b77cac27a1e876c05ea1e6cd8fcd2c0158212b04fe6a84f45ba6f169/denial-0.0.2-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,617 Found link https://files.pythonhosted.org/packages/c7/ce/2a883bdd4cc81d984a566d0eaf85f7b8cafc0dd0252811e2af0a3cce6d5c/denial-0.0.2.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.2 2026-02-09T03:07:22,618 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/4a/d3/5974fed873c16489b70c8aa0397144a45947936591b0eff91ec176c001a1/denial-0.0.3-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,619 Found link https://files.pythonhosted.org/packages/de/be/2d2a2b960deb2b22b32b7c5ef60a7143204991536852b1cb4b5d1f02d89c/denial-0.0.3.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.3 2026-02-09T03:07:22,619 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/92/78/cd8cff3a16f8f36b4c0696f0c9919adc9fe7b710ca1f3762fbc9131255ef/denial-0.0.4-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,620 Found link https://files.pythonhosted.org/packages/cd/d5/93eeb81d212039a09f4f693bad301dc1628ec3ad93e63989724226c52834/denial-0.0.4.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.4 2026-02-09T03:07:22,621 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/25/0c/a1bccbfc49d634d326eac04ef9246c6519ae6ad35ba15ef3adcbfe562244/denial-0.0.5-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,622 Found link https://files.pythonhosted.org/packages/6a/18/f7390368bca46092bdcaa555d6d4f0ebd30a731519bd1acc72bde0cf0095/denial-0.0.5.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.5 2026-02-09T03:07:22,623 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/51/b5/6a7f2c27faee77fa3021b7358c0a7ba910b2b5343b4c4abd00d8b0583564/denial-0.0.6-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,624 Found link https://files.pythonhosted.org/packages/4f/5e/f09969e58b443ca5c059a57f268b55f07653bfcfb62bf4ffe10062b94338/denial-0.0.6.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.6 2026-02-09T03:07:22,625 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/1f/c7/66217994b1690c40b3327d2ae8b441c736dfc5305581bb488fd38a8484f9/denial-0.0.7-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,625 Found link https://files.pythonhosted.org/packages/25/47/ae0b9b6015a7529fba5fbef0f845d2b1c421d8b0aec8e08c46610823dfb7/denial-0.0.7.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.7 2026-02-09T03:07:22,626 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/bc/15/e51d4ce7a7433a304895cf94ebe55717715084c6369540f58d146517a93b/denial-0.0.8-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,627 Found link https://files.pythonhosted.org/packages/62/68/1b2de7166981e32021af7f977c12b609b61ae478e489a9d556ac198a119d/denial-0.0.8.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.8 2026-02-09T03:07:22,627 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/bf/02/df402e5c743e883188ea474b771cf2ca1ebeeef4781baf8cc9ead5a40f6f/denial-0.0.9-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,628 Found link https://files.pythonhosted.org/packages/bf/9e/f197d4b416ee11eb46f15dce9f2ba5b17cadccedeec9bd272e3dcd868681/denial-0.0.9.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.9 2026-02-09T03:07:22,629 Skipping link: No binaries permitted for denial: https://files.pythonhosted.org/packages/94/2b/38573b19784aa69a624e1e414b903634e9d9970a2c4e58e722040e0af329/denial-0.0.10-py3-none-any.whl (from https://pypi.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,630 Found link https://files.pythonhosted.org/packages/57/75/1223a15200316fe1194dc92954dc682c748bf7714e831c8d6a5d4870c7af/denial-0.0.10.tar.gz (from https://pypi.org/simple/denial/) (requires-python:>=3.8), version: 0.0.10 2026-02-09T03:07:22,631 Fetching project page and analyzing links: https://www.piwheels.org/simple/denial/ 2026-02-09T03:07:22,632 Getting page https://www.piwheels.org/simple/denial/ 2026-02-09T03:07:22,633 Found index url https://www.piwheels.org/simple 2026-02-09T03:07:22,786 Fetched page https://www.piwheels.org/simple/denial/ as text/html 2026-02-09T03:07:22,788 Skipping link: No binaries permitted for denial: https://www.piwheels.org/simple/denial/denial-0.0.4-py3-none-any.whl#sha256=29ae5383f2a5e381ffecb6a322e3d4cf19a7ae6a422586afe224f0b35c776374 (from https://www.piwheels.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,789 Skipping link: No binaries permitted for denial: https://www.piwheels.org/simple/denial/denial-0.0.3-py3-none-any.whl#sha256=8998381c579e19fa25d356224c5348d28eae45b0130ffd0b5dd4106c87f4c0ff (from https://www.piwheels.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,790 Skipping link: No binaries permitted for denial: https://www.piwheels.org/simple/denial/denial-0.0.2-py3-none-any.whl#sha256=378df24b5592b2bc6395d7ab682ee94fa8be66447fd46bb4fe2a7df266833dd7 (from https://www.piwheels.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,790 Skipping link: No binaries permitted for denial: https://www.piwheels.org/simple/denial/denial-0.0.1-py3-none-any.whl#sha256=11313da6632eb2b3f451406d4b7fe1856fadd97613452f99b5570b9dd4328d61 (from https://www.piwheels.org/simple/denial/) (requires-python:>=3.8) 2026-02-09T03:07:22,791 Skipping link: not a file: https://www.piwheels.org/simple/denial/ 2026-02-09T03:07:22,792 Skipping link: not a file: https://pypi.org/simple/denial/ 2026-02-09T03:07:22,811 Given no hashes to check 1 links for project 'denial': discarding no candidates 2026-02-09T03:07:22,829 Collecting denial==0.0.5 2026-02-09T03:07:22,832 Created temporary directory: /tmp/pip-unpack-71sb9z2b 2026-02-09T03:07:23,042 Downloading denial-0.0.5.tar.gz (8.3 kB) 2026-02-09T03:07:23,075 Added denial==0.0.5 from https://files.pythonhosted.org/packages/6a/18/f7390368bca46092bdcaa555d6d4f0ebd30a731519bd1acc72bde0cf0095/denial-0.0.5.tar.gz to build tracker '/tmp/pip-build-tracker-cenlgby8' 2026-02-09T03:07:23,080 Created temporary directory: /tmp/pip-build-env-0m5yty_p 2026-02-09T03:07:23,084 Installing build dependencies: started 2026-02-09T03:07:23,086 Running command pip subprocess to install build dependencies 2026-02-09T03:07:24,434 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-02-09T03:07:25,217 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-02-09T03:07:25,240 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-09T03:07:26,925 Collecting setuptools==68.0.0 2026-02-09T03:07:26,935 Downloading https://www.piwheels.org/simple/setuptools/setuptools-68.0.0-py3-none-any.whl (804 kB) 2026-02-09T03:07:27,012 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 804.0/804.0 kB 11.9 MB/s eta 0:00:00 2026-02-09T03:07:30,153 Installing collected packages: setuptools 2026-02-09T03:07:32,369 Successfully installed setuptools-68.0.0 2026-02-09T03:07:32,637 Installing build dependencies: finished with status 'done' 2026-02-09T03:07:32,644 Getting requirements to build wheel: started 2026-02-09T03:07:32,645 Running command Getting requirements to build wheel 2026-02-09T03:07:33,131 /tmp/pip-build-env-0m5yty_p/overlay/local/lib/python3.11/dist-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. 2026-02-09T03:07:33,131 config = read_configuration(filepath, True, ignore_option_errors, dist) 2026-02-09T03:07:33,496 running egg_info 2026-02-09T03:07:33,500 writing denial.egg-info/PKG-INFO 2026-02-09T03:07:33,503 writing dependency_links to denial.egg-info/dependency_links.txt 2026-02-09T03:07:33,505 writing requirements to denial.egg-info/requires.txt 2026-02-09T03:07:33,506 writing top-level names to denial.egg-info/top_level.txt 2026-02-09T03:07:33,519 reading manifest file 'denial.egg-info/SOURCES.txt' 2026-02-09T03:07:33,520 adding license file 'LICENSE' 2026-02-09T03:07:33,522 writing manifest file 'denial.egg-info/SOURCES.txt' 2026-02-09T03:07:33,637 Getting requirements to build wheel: finished with status 'done' 2026-02-09T03:07:33,645 Installing backend dependencies: started 2026-02-09T03:07:33,646 Running command pip subprocess to install backend dependencies 2026-02-09T03:07:34,830 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-02-09T03:07:35,622 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-02-09T03:07:35,646 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-09T03:07:36,201 Collecting wheel 2026-02-09T03:07:36,208 Using cached wheel-0.46.3-py3-none-any.whl (30 kB) 2026-02-09T03:07:36,390 Collecting packaging>=24.0 2026-02-09T03:07:36,397 Using cached packaging-26.0-py3-none-any.whl (74 kB) 2026-02-09T03:07:38,982 Installing collected packages: packaging, wheel 2026-02-09T03:07:39,325 Creating /tmp/pip-build-env-0m5yty_p/normal/local/bin 2026-02-09T03:07:39,327 changing mode of /tmp/pip-build-env-0m5yty_p/normal/local/bin/wheel to 755 2026-02-09T03:07:39,341 Successfully installed packaging-26.0 wheel-0.46.3 2026-02-09T03:07:39,575 Installing backend dependencies: finished with status 'done' 2026-02-09T03:07:39,577 Created temporary directory: /tmp/pip-modern-metadata-mgel7yvm 2026-02-09T03:07:39,579 Preparing metadata (pyproject.toml): started 2026-02-09T03:07:39,580 Running command Preparing metadata (pyproject.toml) 2026-02-09T03:07:40,056 /tmp/pip-build-env-0m5yty_p/overlay/local/lib/python3.11/dist-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. 2026-02-09T03:07:40,056 config = read_configuration(filepath, True, ignore_option_errors, dist) 2026-02-09T03:07:40,449 /tmp/pip-build-env-0m5yty_p/normal/local/lib/python3.11/dist-packages/wheel/bdist_wheel.py:4: FutureWarning: The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command, and will be removed in a future release. Please update to setuptools v70.1 or later which contains an integrated version of this command. 2026-02-09T03:07:40,450 warn( 2026-02-09T03:07:40,492 running dist_info 2026-02-09T03:07:40,497 creating /tmp/pip-modern-metadata-mgel7yvm/denial.egg-info 2026-02-09T03:07:40,501 writing /tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/PKG-INFO 2026-02-09T03:07:40,503 writing dependency_links to /tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/dependency_links.txt 2026-02-09T03:07:40,505 writing requirements to /tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/requires.txt 2026-02-09T03:07:40,506 writing top-level names to /tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/top_level.txt 2026-02-09T03:07:40,508 writing manifest file '/tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/SOURCES.txt' 2026-02-09T03:07:40,521 reading manifest file '/tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/SOURCES.txt' 2026-02-09T03:07:40,523 adding license file 'LICENSE' 2026-02-09T03:07:40,524 writing manifest file '/tmp/pip-modern-metadata-mgel7yvm/denial.egg-info/SOURCES.txt' 2026-02-09T03:07:40,526 creating '/tmp/pip-modern-metadata-mgel7yvm/denial-0.0.5.dist-info' 2026-02-09T03:07:40,677 Preparing metadata (pyproject.toml): finished with status 'done' 2026-02-09T03:07:40,682 Source in /tmp/pip-wheel-5qoe4tci/denial_c0e2a3a341274099bae0db12186ed2b0 has version 0.0.5, which satisfies requirement denial==0.0.5 from https://files.pythonhosted.org/packages/6a/18/f7390368bca46092bdcaa555d6d4f0ebd30a731519bd1acc72bde0cf0095/denial-0.0.5.tar.gz 2026-02-09T03:07:40,683 Removed denial==0.0.5 from https://files.pythonhosted.org/packages/6a/18/f7390368bca46092bdcaa555d6d4f0ebd30a731519bd1acc72bde0cf0095/denial-0.0.5.tar.gz from build tracker '/tmp/pip-build-tracker-cenlgby8' 2026-02-09T03:07:40,690 Created temporary directory: /tmp/pip-unpack-4nh3spfl 2026-02-09T03:07:40,690 Building wheels for collected packages: denial 2026-02-09T03:07:40,696 Created temporary directory: /tmp/pip-wheel-64cegkw5 2026-02-09T03:07:40,697 Destination directory: /tmp/pip-wheel-64cegkw5 2026-02-09T03:07:40,699 Building wheel for denial (pyproject.toml): started 2026-02-09T03:07:40,700 Running command Building wheel for denial (pyproject.toml) 2026-02-09T03:07:41,153 /tmp/pip-build-env-0m5yty_p/overlay/local/lib/python3.11/dist-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. 2026-02-09T03:07:41,153 config = read_configuration(filepath, True, ignore_option_errors, dist) 2026-02-09T03:07:41,520 /tmp/pip-build-env-0m5yty_p/normal/local/lib/python3.11/dist-packages/wheel/bdist_wheel.py:4: FutureWarning: The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command, and will be removed in a future release. Please update to setuptools v70.1 or later which contains an integrated version of this command. 2026-02-09T03:07:41,521 warn( 2026-02-09T03:07:41,561 running bdist_wheel 2026-02-09T03:07:41,577 running build 2026-02-09T03:07:41,578 running build_py 2026-02-09T03:07:41,582 creating build 2026-02-09T03:07:41,582 creating build/lib 2026-02-09T03:07:41,583 creating build/lib/denial 2026-02-09T03:07:41,584 copying denial/sentinel_type.py -> build/lib/denial 2026-02-09T03:07:41,586 copying denial/__init__.py -> build/lib/denial 2026-02-09T03:07:41,588 copying denial/inner.py -> build/lib/denial 2026-02-09T03:07:41,589 running egg_info 2026-02-09T03:07:41,593 writing denial.egg-info/PKG-INFO 2026-02-09T03:07:41,595 writing dependency_links to denial.egg-info/dependency_links.txt 2026-02-09T03:07:41,596 writing requirements to denial.egg-info/requires.txt 2026-02-09T03:07:41,597 writing top-level names to denial.egg-info/top_level.txt 2026-02-09T03:07:41,603 reading manifest file 'denial.egg-info/SOURCES.txt' 2026-02-09T03:07:41,605 adding license file 'LICENSE' 2026-02-09T03:07:41,607 writing manifest file 'denial.egg-info/SOURCES.txt' 2026-02-09T03:07:41,609 copying denial/py.typed -> build/lib/denial 2026-02-09T03:07:41,617 installing to build/bdist.linux-armv7l/wheel 2026-02-09T03:07:41,618 running install 2026-02-09T03:07:41,642 running install_lib 2026-02-09T03:07:41,646 creating build/bdist.linux-armv7l 2026-02-09T03:07:41,647 creating build/bdist.linux-armv7l/wheel 2026-02-09T03:07:41,648 creating build/bdist.linux-armv7l/wheel/denial 2026-02-09T03:07:41,649 copying build/lib/denial/sentinel_type.py -> build/bdist.linux-armv7l/wheel/denial 2026-02-09T03:07:41,651 copying build/lib/denial/__init__.py -> build/bdist.linux-armv7l/wheel/denial 2026-02-09T03:07:41,653 copying build/lib/denial/py.typed -> build/bdist.linux-armv7l/wheel/denial 2026-02-09T03:07:41,654 copying build/lib/denial/inner.py -> build/bdist.linux-armv7l/wheel/denial 2026-02-09T03:07:41,656 running install_egg_info 2026-02-09T03:07:41,660 Copying denial.egg-info to build/bdist.linux-armv7l/wheel/denial-0.0.5-py3.11.egg-info 2026-02-09T03:07:41,889 running install_scripts 2026-02-09T03:07:41,905 creating build/bdist.linux-armv7l/wheel/denial-0.0.5.dist-info/WHEEL 2026-02-09T03:07:41,907 creating '/tmp/pip-wheel-64cegkw5/.tmp-4pvm9rlf/denial-0.0.5-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2026-02-09T03:07:41,910 adding 'denial/__init__.py' 2026-02-09T03:07:41,911 adding 'denial/inner.py' 2026-02-09T03:07:41,912 adding 'denial/py.typed' 2026-02-09T03:07:41,913 adding 'denial/sentinel_type.py' 2026-02-09T03:07:41,915 adding 'denial-0.0.5.dist-info/LICENSE' 2026-02-09T03:07:41,918 adding 'denial-0.0.5.dist-info/METADATA' 2026-02-09T03:07:41,919 adding 'denial-0.0.5.dist-info/WHEEL' 2026-02-09T03:07:41,920 adding 'denial-0.0.5.dist-info/top_level.txt' 2026-02-09T03:07:41,921 adding 'denial-0.0.5.dist-info/RECORD' 2026-02-09T03:07:41,922 removing build/bdist.linux-armv7l/wheel 2026-02-09T03:07:42,046 Building wheel for denial (pyproject.toml): finished with status 'done' 2026-02-09T03:07:42,051 Created wheel for denial: filename=denial-0.0.5-py3-none-any.whl size=7874 sha256=1f618bcbf89efe18ce28b23e16406e0743d608452c75f5ab93c332fec94b89cf 2026-02-09T03:07:42,053 Stored in directory: /tmp/pip-ephem-wheel-cache-0lh7_kac/wheels/53/71/c7/9674e94fcef4983be8a259ea1809223776f4c80853b5add34a 2026-02-09T03:07:42,064 Successfully built denial 2026-02-09T03:07:42,068 Removed build tracker: '/tmp/pip-build-tracker-cenlgby8'