2bi h S r SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK J r JrJrJ r Jr S\ \ S\S\\S4 4S jrS\ \ S\ \ 4S jr " S S\5 rS\S\ \ 4S jr\R, " 5 S\S\ \ 4S j5 rS\S\\ 4S jr\S:X a SSKr\R6 " 5 r\R; S5 ( d S5 e\" S\5 \" S\" \R> 5 5 \" SSS9 \" \R@ " SS\RC SS5 S 5 5 H r"\" \"SS9 M gg) zPEP 656 support. This module implements logic to detect if the currently running Python is linked against musl, and what musl version is used. N)IOIterator NamedTupleOptionalTupleffmtreturn.c t [ R " XR [ R " U5 5 5 $ N)structunpackreadcalcsize)r r s ڒ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_vendor/packaging/_musllinux.py_read_unpackedr s# ==ffV__S%9:;; c U R S5 [ U S5 nUSS [ S5 :w a gU R [ R " S5 S5 SS S .US u p#n[ R " U6 n [ X5 u pg phn [ U S- 5 H n U R XxU - - 5 U" [ X5 5 u pn US:w a M6 U R U5 [ R " U R U 5 5 R S5 nS U; a gUs $ g! [ R a gf = f! [ a gf = f! [ R a gf = f! [ R a gf = f)zDetect musl libc location by parsing the Python executable. Based on: https://gist.github.com/lyssdod/f51579ae8d93c8657a5564aefc2ffbca ELF header: https://refspecs.linuxfoundation.org/elf/gabi4+/ch4.eheader.html r 16BN s ELFHHI )IIIIHHHIIIIIIII)r r r )QQQIHHHIIQQQQQQ)r )r r musl)seekr r errortupler operator itemgetterKeyErrorrangeosfsdecoder strip)r idente_fmtp_fmtp_idxp_get_e_phoffe_phentsizee_phnumip_typep_offsetp_fileszinterpreters r _parse_ld_musl_from_elfr: s FF1Iq%( RayE*%%FF6??5!1%, 21 (e ##U+4B14L1Aq!' 7Q; wq() ).~a/G)H&Fh Q; xkk!&&"2399$?$ K <<