+
    BV-jh  ã                  óf   € R t ^ RIHt ^ RIHt ^ RIHt ^ RIHt	 ^ RIH
t
 ^ RIHt  ! R R4      tR# )	z`Represents a wheel file and provides access to the various parts of the
name that have meaning.
)Úannotations)ÚIterable)ÚTag)ÚInvalidWheelFilename)Úparse_wheel_filenamec                  óV   € ] tR t^tRtR R ltR R ltR R ltR R	 ltR
 R lt	Rt
R# )ÚWheelzA wheel filec               ó    € V ^8„  d   QhRRRR/# )é   ÚfilenameÚstrÚreturnÚNone© )Úformats   "Úk/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pip/_internal/models/wheel.pyÚ__annotate__ÚWheel.__annotate__   s   € ÷ 	%ñ 	% ð 	%¨ñ 	%ó    c                	óÔ   € Wn          \        V4      pTw  T n        q@n        T n        \        T4      T n	        R#   \         d#   p\        TP                  ^ ,          4      RhRp?ii ; i)é    N)
r   r   Ú_PackagingInvalidWheelFilenamer   ÚargsÚnameÚ	build_tagÚ	file_tagsr   Úversion)Úselfr   Ú
wheel_infoÚeÚ_versions   &&   r   Ú__init__ÚWheel.__init__   s]   € Ø Œð	<Ü-¨hÓ7ˆJð ?IÑ;ˆŒ	�8œ^¨T¬^Ü˜8“}ˆŽøô	 .ô 	<Ü& q§v¡v¨a¥yÓ1°tÐ;ûð	<ús   ˆ: ºA'ÁA"Á"A'c               ó   € V ^8„  d   QhRR/# )r
   r   z	list[str]r   )r   s   "r   r   r       s   € ÷ :ñ :¨ñ :r   c                ó:   € \        R V P                   4       4      # )z4Return the wheel's tags as a sorted list of strings.c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5i©N)r   )Ú.0Útags   & r   Ú	<genexpr>Ú0Wheel.get_formatted_file_tags.<locals>.<genexpr>"   s   é € Ð9©. 3”c˜#—h�h«.ùs   ‚)Úsortedr   )r   s   &r   Úget_formatted_file_tagsÚWheel.get_formatted_file_tags    s   € äÑ9¨$¯.ª.Ó9Ó9Ð9r   c               ó    € V ^8„  d   QhRRRR/# )r
   Útagsú	list[Tag]r   Úintr   )r   s   "r   r   r   $   s   € ÷ ñ  ið °Cñ r   c                ót   a €  \        V 3R l\        V4       4       4      #   \         d    \        4       hi ; i)aœ  Return the lowest index that one of the wheel's file_tag combinations
achieves in the given list of supported tags.

For example, if there are 8 supported tags and one of the file tags
is first in the list, then return 0.

:param tags: the PEP 425 tags to check the wheel against, in order
    with most preferred first.

:raises ValueError: If none of the wheel's file tags match one of
    the supported tags.
c              3  óR   <"  € T F  w  rVSP                   9   g   K  Vx € K  	  R # 5ir&   )r   )r'   ÚiÚtr   s   &  €r   r)   Ú*Wheel.support_index_min.<locals>.<genexpr>2   s    øé € ÐM¡o™d˜a¸¸d¿n¹nÑ9LŸš£oùs   ƒ'�
')ÚnextÚ	enumerateÚStopIterationÚ
ValueError©r   r/   s   f&r   Úsupport_index_minÚWheel.support_index_min$   s4   ø€ ð	ÜÔM¤i°¤oÓMÓMÐMøÜô 	Ü“,Ðð	ús   ƒ! ¡7c               ó$   € V ^8„  d   QhRRRRRR/# )r
   r/   r0   Útag_to_priorityzdict[Tag, int]r   r1   r   )r   s   "r   r   r   6   s$   € ÷ 
ñ 
Øð
Ø0>ð
à	ñ
r   c                óB   a€ \        V3R lV P                   4       4      # )aX  Return the priority of the most preferred tag that one of the wheel's file
tag combinations achieves in the given list of supported tags using the given
tag_to_priority mapping, where lower priorities are more-preferred.

This is used in place of support_index_min in some cases in order to avoid
an expensive linear scan of a large list of tags.

:param tags: the PEP 425 tags to check the wheel against.
:param tag_to_priority: a mapping from tag to priority of that tag, where
    lower is more preferred.

:raises ValueError: If none of the wheel's file tags match one of
    the supported tags.
c              3  óF   <"  € T F  qS9   g   K  SV,          x € K  	  R # 5ir&   r   )r'   r(   r?   s   & €r   r)   Ú0Wheel.find_most_preferred_tag.<locals>.<genexpr>G   s$   øé € ð 
Ù,: SÀ_Ñ>TÔ ˆO˜C× Ò «Nùs   ƒ!�!)Úminr   )r   r/   r?   s   &&fr   Úfind_most_preferred_tagÚWheel.find_most_preferred_tag6   s#   ø€ ô" ô 
Ø,0¯NªNó
ó 
ð 	
r   c               ó    € V ^8„  d   QhRRRR/# )r
   r/   zIterable[Tag]r   Úboolr   )r   s   "r   r   r   K   s   € ÷ 3ñ 3˜mð 3°ñ 3r   c                óB   € V P                   P                  V4      '       * # )z~Return whether the wheel is compatible with one of the given tags.

:param tags: the PEP 425 tags to check the wheel against.
)r   Ú
isdisjointr;   s   &&r   Ú	supportedÚWheel.supportedK   s   € ð
 —>‘>×,Ñ,¨TÓ2Ô2Ð2r   )r   r   r   r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r!   r,   r<   rD   rJ   Ú__static_attributes__r   r   r   r   r      s#   † Ùõ	%õ:õõ$
÷*3ñ 3r   r   N)rP   Ú
__future__r   Úcollections.abcr   Úpip._vendor.packaging.tagsr   Úpip._vendor.packaging.utilsr   r   r   Úpip._internal.exceptionsr   r   r   r   Ú<module>rW      s,   ðñõ #å $å *õõ =å 9÷>3ó >3r   