2bi " S r SSKrSSKJr SSKJr SSKJr SSKJ r J r SSKJr SSK Jr S r\R " \5 rS \ S\S\\\4 4S jrS\ S\S\4S jrS\ S\S\4S jrS\ S\S\4S jrS\S\\S4 4S jrS\\S4 S\SS4S jrg)z0Support functions for working with wheel files. N)Message)Parser)Tuple) BadZipFileZipFile)canonicalize_name)UnsupportedWheel) r wheel_zipnamereturnc [ X5 n[ X5 n[ U5 n[ XA5 X#4$ ! [ a) n[ SR U[ U5 5 5 eSnAff = f)zExtract information from the provided wheel, ensuring it meets basic standards. Returns the name of the .dist-info directory and the parsed WHEEL metadata. z{} has an invalid wheel, {}N)wheel_dist_info_dirwheel_metadata wheel_versionr formatstrcheck_compatibility)r r info_dirmetadataversiones ڋ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_internal/utils/wheel.pyparse_wheelr sj S&y7!)6) & S<CCD#a&QRRSs !1 A$$AA$sourcec U R 5 Vs1 s H o"R SS5 S iM nnU Vs/ s H oDR S5 ( d M UPM nnU( d [ S5 e[ U5 S: a) [ SR SR U5 5 5 eUS n[ U5 n[ U5 nUR U5 ( d [ SR Xh5 5 eU$ s snf s snf ) zReturns the name of the contained .dist-info directory. Raises AssertionError or UnsupportedWheel if not found, >1 found, or it doesn't match the provided name. /r r z .dist-infoz.dist-info directory not foundz)multiple .dist-info directories found: {}z, z2.dist-info directory {!r} does not start with {!r}) namelistsplitendswithr lenr joinr startswith) r r psubdirss info_dirsr info_dir_namecanonical_names r r r &