Ë
    ˜šãjôx  ã            	       ó  — d dl Z d dlZd dlZd dlZd dlZd dlmZmZmZm	Z	m
Z
mZmZmZmZmZmZ ddlmZ ddlmZmZmZ eeef   Zeeeef   Z ede¬«      Zeeegef   Z G d„ d	e«      Z G d
„ de j>                  ¬«      Z  G d„ de «      Z! G d„ de!«      Z"dedeegef   dedeegef   fd„Z# G d„ de!«      Z$ ejJ                  d«      Z&dede
e   fd„Z'dedefd„Z(de
e   de
e   dee
e   e
e   f   fd„Z) G d„ de «      Z*y) é    N)ÚCallableÚDictÚIterableÚIteratorÚListÚOptionalÚPatternÚSetÚTupleÚTypeVarÚUnioné   )Úcanonicalize_version)ÚLegacyVersionÚVersionÚparseÚVersionTypeVar)Úboundc                   ó   — e Zd ZdZy)ÚInvalidSpecifierzH
    An invalid specifier was found, users should refer to PEP 440.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úr/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/specifiers.pyr   r   !   s   „ òr   r   c            	       óœ  — e Zd Zej                  defd„«       Zej                  defd„«       Zej                  de	de
fd„«       Zej                  de	de
fd„«       Zej                  dee
   fd„«       Zej                   de
dd	fd
„«       Zej                  ddedee
   de
fd„«       Zej                  	 ddee   dee
   dee   fd„«       Zy	)ÚBaseSpecifierÚreturnc                  ó   — y)zŽ
        Returns the str representation of this Specifier like object. This
        should be representative of the Specifier itself.
        Nr   ©Úselfs    r   Ú__str__zBaseSpecifier.__str__(   ó   � r   c                  ó   — y)zF
        Returns a hash value for this Specifier like object.
        Nr   r"   s    r   Ú__hash__zBaseSpecifier.__hash__/   r%   r   Úotherc                  ó   — y)zq
        Returns a boolean representing whether or not the two Specifier like
        objects are equal.
        Nr   ©r#   r(   s     r   Ú__eq__zBaseSpecifier.__eq__5   r%   r   c                  ó   — y)zu
        Returns a boolean representing whether or not the two Specifier like
        objects are not equal.
        Nr   r*   s     r   Ú__ne__zBaseSpecifier.__ne__<   r%   r   c                  ó   — y)zg
        Returns whether or not pre-releases as a whole are allowed by this
        specifier.
        Nr   r"   s    r   ÚprereleaseszBaseSpecifier.prereleasesC   r%   r   ÚvalueNc                  ó   — y)zd
        Sets whether or not pre-releases as a whole are allowed by this
        specifier.
        Nr   ©r#   r0   s     r   r/   zBaseSpecifier.prereleasesJ   r%   r   Úitemr/   c                  ó   — y)zR
        Determines if the given item is contained within this specifier.
        Nr   ©r#   r3   r/   s      r   ÚcontainszBaseSpecifier.containsQ   r%   r   Úiterablec                  ó   — y)z•
        Takes an iterable of items and filters them so that only items which
        are contained within this specifier are allowed in it.
        Nr   )r#   r7   r/   s      r   ÚfilterzBaseSpecifier.filterW   r%   r   ©N)r   r   r   ÚabcÚabstractmethodÚstrr$   Úintr'   ÚobjectÚboolr+   r-   Úabstractpropertyr   r/   Úsetterr6   r   r   r9   r   r   r   r   r   '   sU  „ Ø×Ñð˜ò ó ðð 	×Ñð˜#ò ó ðð
 	×Ñð˜Fð  tò ó ðð 	×Ñð˜Fð  tò ó ðð 	×Ñð˜X d™^ò ó ðð ×Ñð ð ¨$ò ó ðð 	×Ññ˜Sð ¨x¸©~ð Èò ó ðð
 	×ÑàPTñØ  Ñ0ðØ?GÈ¹~ðà	�.Ñ	!òó ñr   r   )Ú	metaclassc                   ó¤  — e Zd ZU i Zeeef   ed<   ee   ed<   ddedee	   ddfd„Z
defd„Zdefd	„Zedeeef   fd
„«       Zdefd„Zdede	fd„Zdede	fd„Zdedefd„Zdedefd„Zedefd„«       Zedefd„«       Zedee	   fd„«       Zej:                  de	ddfd„«       Zdede	fd„Z	 ddedee	   de	fd„Z	 dde e!   dee	   de e!   fd„Z"y)Ú_IndividualSpecifierÚ
_operatorsÚ_regexNÚspecr/   r    c                 óð   — | j                   j                  |«      }|st        d|› d�«      ‚|j                  d«      j	                  «       |j                  d«      j	                  «       f| _        || _        y )NzInvalid specifier: 'ú'ÚoperatorÚversion)rG   Úsearchr   ÚgroupÚstripÚ_specÚ_prereleases)r#   rH   r/   Úmatchs       r   Ú__init__z_IndividualSpecifier.__init__f   sm   € Ø—‘×"Ñ" 4Ó(ˆÙÜ"Ð%9¸$¸¸qÐ#AÓBÐBð �K‰K˜
Ó#×)Ñ)Ó+Ø�K‰K˜	Ó"×(Ñ(Ó*ð'
ˆŒ
ð (ˆÕr   c                 óœ   — | j                   �d| j                  ›�nd}dj                  | j                  j                  t        | «      |«      S )Nú, prereleases=Ú z<{}({!r}{})>)rQ   r/   ÚformatÚ	__class__r   r=   ©r#   Úpres     r   Ú__repr__z_IndividualSpecifier.__repr__s   sP   € ð × Ñ Ð,ð ˜T×-Ñ-Ð0Ñ1àð 	ð ×$Ñ$ T§^¡^×%<Ñ%<¼cÀ$»iÈÓMÐMr   c                 ó4   —  dj                   | j                  Ž S )Nz{}{})rW   rP   r"   s    r   r$   z_IndividualSpecifier.__str__|   s   € Øˆv�}‰}˜dŸj™jÐ)Ð)r   c                 óP   — | j                   d   t        | j                   d   «      fS )Nr   r   )rP   r   r"   s    r   Ú_canonical_specz$_IndividualSpecifier._canonical_spec   s#   € à�z‰z˜!‰}Ô2°4·:±:¸a±=ÓAÐAÐAr   c                 ó,   — t        | j                  «      S r:   )Úhashr^   r"   s    r   r'   z_IndividualSpecifier.__hash__ƒ   s   € Ü�D×(Ñ(Ó)Ð)r   r(   c                 óî   — t        |t        «      r	 | j                  t        |«      «      }nt        || j                  «      st        S | j
                  |j
                  k(  S # t        $ r	 t        cY S w xY wr:   )Ú
isinstancer=   rX   r   ÚNotImplementedr^   r*   s     r   r+   z_IndividualSpecifier.__eq__†   sg   € Ü�eœSÔ!ð&ØŸ™¤s¨5£zÓ2‘ô ˜E 4§>¡>Ô2Ü!Ð!à×#Ñ# u×'<Ñ'<Ñ<Ð<øô $ò &Ü%Ò%ð&úó   ’A" Á"A4Á3A4c                 óî   — t        |t        «      r	 | j                  t        |«      «      }nt        || j                  «      st        S | j
                  |j
                  k7  S # t        $ r	 t        cY S w xY wr:   )rb   r=   rX   r   rc   rP   r*   s     r   r-   z_IndividualSpecifier.__ne__‘   sc   € Ü�eœSÔ!ð&ØŸ™¤s¨5£zÓ2‘ô ˜E 4§>¡>Ô2Ü!Ð!à�z‰z˜UŸ[™[Ñ(Ð(øô $ò &Ü%Ò%ð&úrd   Úopc                 ó>   — t        | d| j                  |   › �«      }|S )NÚ	_compare_)ÚgetattrrF   )r#   rf   Úoperator_callables      r   Ú_get_operatorz"_IndividualSpecifier._get_operatorœ   s+   € Ü.5Ø�I˜dŸo™o¨bÑ1Ð2Ð3ó/
Ðð !Ð r   rL   c                 óH   — t        |t        t        f«      st        |«      }|S r:   )rb   r   r   r   ©r#   rL   s     r   Ú_coerce_versionz$_IndividualSpecifier._coerce_version¢   s   € Ü˜'¤M´7Ð#;Ô<Ü˜G“nˆGØˆr   c                 ó    — | j                   d   S )Nr   ©rP   r"   s    r   rK   z_IndividualSpecifier.operator§   ó   € à�z‰z˜!‰}Ðr   c                 ó    — | j                   d   S )Nr   rp   r"   s    r   rL   z_IndividualSpecifier.version«   rq   r   c                 ó   — | j                   S r:   ©rQ   r"   s    r   r/   z _IndividualSpecifier.prereleases¯   s   € à× Ñ Ð r   r0   c                 ó   — || _         y r:   rt   r2   s     r   r/   z _IndividualSpecifier.prereleases³   ó
   € à!ˆÕr   r3   c                 ó$   — | j                  |«      S r:   ©r6   ©r#   r3   s     r   Ú__contains__z!_IndividualSpecifier.__contains__·   ó   € Ø�}‰}˜TÓ"Ð"r   c                 óº   — |€| j                   }| j                  |«      }|j                  r|sy| j                  | j                  «      } ||| j
                  «      S ©NF)r/   rn   Úis_prereleaserk   rK   rL   )r#   r3   r/   Únormalized_itemrj   s        r   r6   z_IndividualSpecifier.containsº   s_   € ð
 ÐØ×*Ñ*ˆKð ×.Ñ.¨tÓ4ˆð
 ×(Ò(±Øð /3×.@Ñ.@ÀÇÁÓ.OÐÙ  °$·,±,Ó?Ð?r   r7   c              #   ó  K  — d}g }d|�|ndi}|D ]Y  }| j                  |«      } | j                  |fi |¤ŽsŒ(|j                  r |s| j                  s|j	                  |«       ŒTd}|–— Œ[ |s|r|D ]  }|–— Œ y y y ­w)NFr/   T)rn   r6   r~   r/   Úappend)r#   r7   r/   ÚyieldedÚfound_prereleasesÚkwrL   Úparsed_versions           r   r9   z_IndividualSpecifier.filterÑ   s«   è ø€ ð ˆØÐà¨KÐ,C™[ÈÐNˆð  ò 	"ˆGØ!×1Ñ1°'Ó:ˆNàˆt�}‰}˜^Ñ2¨rÓ2ð "×/Ò/Ù 4×#3Ò#3à%×,Ñ,¨WÕ5ð #�GØ!“Mð	"ñ( Ñ,Ø,ò �Ø“ñð -ˆwùs   ‚6A?¹AA?©rV   Nr:   )#r   r   r   rF   r   r=   Ú__annotations__r	   r   r@   rS   r[   r$   Úpropertyr   r^   r>   r'   r?   r+   r-   ÚCallableOperatorrk   ÚUnparsedVersionÚParsedVersionrn   rK   rL   r/   rB   rz   r6   r   r   r9   r   r   r   rE   rE   a   sÃ  … à!#€J��S˜#�X‘Ó#Ø�C‰LÓñ(˜Sð (°H¸T±Nð (Èdó (ðN˜#ó Nð*˜ó *ð ðB  s¨C x¡ò Bó ðBð*˜#ó *ð	=˜Fð 	= tó 	=ð	)˜Fð 	) tó 	)ð! ð !Ð(8ó !ð ð ¸=ó ð
 ð˜#ò ó ðð ð˜ò ó ðð ð!˜X d™^ò !ó ð!ð ×Ñð" ð "¨$ò "ó ð"ð# ð #¨ó #ð DHñ@Ø#ð@Ø2:¸4±.ð@à	ó@ð0 QUñ!Ø  Ñ0ð!Ø?GÈ¹~ð!à	�.Ñ	!ô!r   rE   c                   ó2  ‡ — e Zd ZdZ ej
                  dez   dz   ej                  ej                  z  «      Zdddddd	d
œZ	dde
dee   ddfˆ fd„Zdedefd„Zdede
defd„Zdede
defd„Zdede
defd„Zdede
defd„Zdede
defd„Zdede
defd„Zˆ xZS )ÚLegacySpecifieraÛ  
        (?P<operator>(==|!=|<=|>=|<|>))
        \s*
        (?P<version>
            [^,;\s)]* # Since this is a "legacy" specifier, and the version
                      # string can be just about anything, we match everything
                      # except for whitespace, a semi-colon for marker support,
                      # a closing paren since versions can be enclosed in
                      # them, and a comma since it's a version separator.
        )
        ú^\s*ú\s*$ÚequalÚ	not_equalÚless_than_equalÚgreater_than_equalÚ	less_thanÚgreater_than)ú==ú!=ú<=ú>=ú<ú>NrH   r/   r    c                 óZ   •— t         ‰| �  ||«       t        j                  dt        «       y )NzZCreating a LegacyVersion has been deprecated and will be removed in the next major release)ÚsuperrS   ÚwarningsÚwarnÚDeprecationWarning)r#   rH   r/   rX   s      €r   rS   zLegacySpecifier.__init__  s&   ø€ Ü‰Ñ˜˜{Ô+ä�‰ð0äõ	
r   rL   c                 óN   — t        |t        «      st        t        |«      «      }|S r:   )rb   r   r=   rm   s     r   rn   zLegacySpecifier._coerce_version  s   € Ü˜'¤=Ô1Ü#¤C¨£LÓ1ˆGØˆr   Úprospectivec                 ó*   — || j                  |«      k(  S r:   ©rn   ©r#   r¢   rH   s      r   Ú_compare_equalzLegacySpecifier._compare_equal  ó   € Ø˜d×2Ñ2°4Ó8Ñ8Ð8r   c                 ó*   — || j                  |«      k7  S r:   r¤   r¥   s      r   Ú_compare_not_equalz"LegacySpecifier._compare_not_equal  r§   r   c                 ó*   — || j                  |«      k  S r:   r¤   r¥   s      r   Ú_compare_less_than_equalz(LegacySpecifier._compare_less_than_equal"  r§   r   c                 ó*   — || j                  |«      k\  S r:   r¤   r¥   s      r   Ú_compare_greater_than_equalz+LegacySpecifier._compare_greater_than_equal%  s   € ð ˜d×2Ñ2°4Ó8Ñ8Ð8r   c                 ó*   — || j                  |«      k  S r:   r¤   r¥   s      r   Ú_compare_less_thanz"LegacySpecifier._compare_less_than*  ó   € Ø˜T×1Ñ1°$Ó7Ñ7Ð7r   c                 ó*   — || j                  |«      kD  S r:   r¤   r¥   s      r   Ú_compare_greater_thanz%LegacySpecifier._compare_greater_than-  r°   r   r†   )r   r   r   Ú
_regex_strÚreÚcompileÚVERBOSEÚ
IGNORECASErG   rF   r=   r   r@   rS   rŠ   r   rn   r¦   r©   r«   r­   r¯   r²   Ú__classcell__)rX   s   @r   r�   r�   õ   s!  ø„ ð
€Jð ˆR�Z‰Z˜ *Ñ,¨wÑ6¸¿
¹
ÀRÇ]Á]Ñ8RÓS€Fð ØØØ"ØØñ€Jñ
˜Sð 
°H¸T±Nð 
Èdõ 
ð ð ¸=ó ð
9¨-ð 9¸sð 9Àtó 9ð9¨mð 9À3ð 9È4ó 9ð9°Mð 9Èð 9ÐQUó 9ð9Ø(ð9Ø03ð9à	ó9ð
8¨mð 8À3ð 8È4ó 8ð8°ð 8Àcð 8Èd÷ 8r   r�   ÚfnÚ	Specifierr    c           	      ól   ‡ — t        j                  ‰ «      dddt        dt        dt        fˆ fd„«       }|S )Nr#   rº   r¢   rH   r    c                 ó:   •— t        |t        «      sy ‰| ||«      S r}   )rb   r   )r#   r¢   rH   r¹   s      €r   Úwrappedz)_require_version_compare.<locals>.wrapped4  s   ø€ ä˜+¤wÔ/ØÙ�$˜ TÓ*Ð*r   )Ú	functoolsÚwrapsr‹   r=   r@   )r¹   r½   s   ` r   Ú_require_version_comparerÀ   1  sC   ø€ ô ‡_�_�RÓð+�kð +´ð +ÄSð +ÌTô +ó ð+ð
 €Nr   c            	       ó°  — e Zd ZdZ ej
                  dez   dz   ej                  ej                  z  «      Zdddddd	d
ddœZ	e
dededefd„«       Ze
dededefd„«       Ze
dededefd„«       Ze
dededefd„«       Ze
dededefd„«       Ze
dededefd„«       Ze
dededefd„«       Zdededefd„Zedefd„«       Zej2                  deddfd„«       Zy)rº   a  
        (?P<operator>(~=|==|!=|<=|>=|<|>|===))
        (?P<version>
            (?:
                # The identity operators allow for an escape hatch that will
                # do an exact string match of the version you wish to install.
                # This will not be parsed by PEP 440 and we cannot determine
                # any semantic meaning from it. This operator is discouraged
                # but included entirely as an escape hatch.
                (?<====)  # Only match for the identity operator
                \s*
                [^\s]*    # We just match everything, except for whitespace
                          # since we are only testing for strict identity.
            )
            |
            (?:
                # The (non)equality operators allow for wild card and local
                # versions to be specified so we have to define these two
                # operators separately to enable that.
                (?<===|!=)            # Only match for equals and not equals

                \s*
                v?
                (?:[0-9]+!)?          # epoch
                [0-9]+(?:\.[0-9]+)*   # release
                (?:                   # pre release
                    [-_\.]?
                    (a|b|c|rc|alpha|beta|pre|preview)
                    [-_\.]?
                    [0-9]*
                )?
                (?:                   # post release
                    (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*)
                )?

                # You cannot use a wild card and a dev or local version
                # together so group them with a | and make them optional.
                (?:
                    (?:[-_\.]?dev[-_\.]?[0-9]*)?         # dev release
                    (?:\+[a-z0-9]+(?:[-_\.][a-z0-9]+)*)? # local
                    |
                    \.\*  # Wild card syntax of .*
                )?
            )
            |
            (?:
                # The compatible operator requires at least two digits in the
                # release segment.
                (?<=~=)               # Only match for the compatible operator

                \s*
                v?
                (?:[0-9]+!)?          # epoch
                [0-9]+(?:\.[0-9]+)+   # release  (We have a + instead of a *)
                (?:                   # pre release
                    [-_\.]?
                    (a|b|c|rc|alpha|beta|pre|preview)
                    [-_\.]?
                    [0-9]*
                )?
                (?:                                   # post release
                    (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*)
                )?
                (?:[-_\.]?dev[-_\.]?[0-9]*)?          # dev release
            )
            |
            (?:
                # All other operators only allow a sub set of what the
                # (non)equality operators do. Specifically they do not allow
                # local versions to be specified nor do they allow the prefix
                # matching wild cards.
                (?<!==|!=|~=)         # We have special cases for these
                                      # operators so we want to make sure they
                                      # don't match here.

                \s*
                v?
                (?:[0-9]+!)?          # epoch
                [0-9]+(?:\.[0-9]+)*   # release
                (?:                   # pre release
                    [-_\.]?
                    (a|b|c|rc|alpha|beta|pre|preview)
                    [-_\.]?
                    [0-9]*
                )?
                (?:                                   # post release
                    (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*)
                )?
                (?:[-_\.]?dev[-_\.]?[0-9]*)?          # dev release
            )
        )
        rŽ   r�   Ú
compatibler�   r‘   r’   r“   r”   r•   Ú	arbitrary)ú~=r–   r—   r˜   r™   rš   r›   ú===r¢   rH   r    c           
      óì   — dj                  t        t        j                  t        t        |«      «      «      d d «      }|dz  } | j                  d«      ||«      xr  | j                  d«      ||«      S )Nú.éÿÿÿÿú.*r™   r–   )ÚjoinÚlistÚ	itertoolsÚ	takewhileÚ_is_not_suffixÚ_version_splitrk   )r#   r¢   rH   Úprefixs       r   Ú_compare_compatiblezSpecifier._compare_compatible©  s{   € ð —‘Ü”×$Ñ$¤^´^ÀDÓ5IÓJÓKÈCÈRÐPó
ˆð
 	�$‰ˆà'ˆt×!Ñ! $Ó'¨°TÓ:ò 
Ð?W¸t×?QÑ?QÐRVÓ?WØ˜ó@
ð 	
r   c                 ó8  — |j                  d«      rYt        |j                  «      }t        |d d «      }t        t	        |«      «      }|d t        |«       }t        ||«      \  }}||k(  S t        |«      }|j                  st        |j                  «      }||k(  S )NrÉ   éþÿÿÿ)Úendswithr   ÚpublicrÏ   r=   ÚlenÚ_pad_versionÚlocal)	r#   r¢   rH   Ú
split_specÚsplit_prospectiveÚshortened_prospectiveÚpadded_specÚpadded_prospectiveÚspec_versions	            r   r¦   zSpecifier._compare_equal¿  s®   € ð �=‰=˜Ôä! +×"4Ñ"4Ó5ˆKô (¨¨S¨b¨	Ó2ˆJô
 !/¬s°;Ó/?Ó @Ðð
 %6Ð6G¼¸J»Ð$HÐ!ô /;ØÐ1ó/Ñ+ˆKÐ+ð &¨Ñ4Ð4ô # 4›=ˆLð
  ×%Ò%Ü% k×&8Ñ&8Ó9�à ,Ñ.Ð.r   c                 ó(   — | j                  ||«       S r:   )r¦   r¥   s      r   r©   zSpecifier._compare_not_equalç  s   € à×&Ñ& {°DÓ9Ð9Ð9r   c                 óD   — t        |j                  «      t        |«      k  S r:   ©r   rÕ   r¥   s      r   r«   z"Specifier._compare_less_than_equalë  s   € ô �{×)Ñ)Ó*¬g°d«mÑ;Ð;r   c                 óD   — t        |j                  «      t        |«      k\  S r:   rá   r¥   s      r   r­   z%Specifier._compare_greater_than_equaló  s   € ô �{×)Ñ)Ó*¬g°d«mÑ;Ð;r   Úspec_strc                 ó®   — t        |«      }||k  sy|j                  s8|j                  r,t        |j                  «      t        |j                  «      k(  ryy©NFT)r   r~   Úbase_version©r#   r¢   rã   rH   s       r   r¯   zSpecifier._compare_less_thaný  sT   € ô
 �xÓ ˆð
 ˜TÒ!Øð ×!Ò! k×&?Ò&?Ü�{×/Ñ/Ó0´G¸D×<MÑ<MÓ4NÒNØð
 r   c                 ó  — t        |«      }||kD  sy|j                  s8|j                  r,t        |j                  «      t        |j                  «      k(  ry|j                  �,t        |j                  «      t        |j                  «      k(  ryyrå   )r   Úis_postreleaseræ   rØ   rç   s       r   r²   zSpecifier._compare_greater_than  sƒ   € ô
 �xÓ ˆð
 ˜TÒ!Øð ×"Ò" {×'AÒ'AÜ�{×/Ñ/Ó0´G¸D×<MÑ<MÓ4NÒNØð ×ÑÐ(Ü�{×/Ñ/Ó0´G¸D×<MÑ<MÓ4NÒNØð
 r   c                 óh   — t        |«      j                  «       t        |«      j                  «       k(  S r:   )r=   Úlowerr¥   s      r   Ú_compare_arbitraryzSpecifier._compare_arbitrary7  s&   € Ü�;Ó×%Ñ%Ó'¬3¨t«9¯?©?Ó+<Ñ<Ð<r   c                 ó¼   — | j                   �| j                   S | j                  \  }}|dv r1|dk(  r|j                  d«      r|d d }t        |«      j                  ryy)N)r–   r™   r˜   rÄ   rÅ   r–   rÉ   rÓ   TF)rQ   rP   rÔ   r   r~   )r#   rK   rL   s      r   r/   zSpecifier.prereleases:  sl   € ð
 ×ÑÐ(Ø×$Ñ$Ð$ð
 !ŸJ™JÑˆ�'ØÐ6Ñ6ð ˜4Ò G×$4Ñ$4°TÔ$:Ø! # 2˜,�ô �W‹~×+Ò+Øàr   r0   Nc                 ó   — || _         y r:   rt   r2   s     r   r/   zSpecifier.prereleasesS  rv   r   )r   r   r   r³   r´   rµ   r¶   r·   rG   rF   rÀ   r‹   r=   r@   rÑ   r¦   r©   r«   r­   r¯   r²   r   rì   rˆ   r/   rB   r   r   r   rº   rº   =  sÙ  „ ð[€Jðz ˆR�Z‰Z˜ *Ñ,¨wÑ6¸¿
¹
ÀRÇ]Á]Ñ8RÓS€Fð ØØØØ"ØØØñ	€Jð ð
¨}ð 
ÀCð 
ÈDò 
ó ð
ð* ð%/¨-ð %/¸sð %/Àtò %/ó ð%/ðN ð:¨mð :À3ð :È4ò :ó ð:ð ð<°Mð <Èð <ÐQUò <ó ð<ð ð<Ø(ð<Ø03ð<à	ò<ó ð<ð ð¨mð Àsð Ètò ó ðð2 ð°ð È#ð ÐRVò ó ðð>=¨gð =¸Sð =ÀTó =ð ð˜Tò ó ðð0 ×Ñð" ð "¨$ò "ó ñ"r   z^([0-9]+)((?:a|b|c|rc)[0-9]+)$rL   c                 óÆ   — g }| j                  d«      D ]J  }t        j                  |«      }|r |j                  |j	                  «       «       Œ:|j                  |«       ŒL |S )NrÇ   )ÚsplitÚ_prefix_regexrM   ÚextendÚgroupsr�   )rL   Úresultr3   rR   s       r   rÏ   rÏ   [  sW   € Ø€FØ—‘˜cÓ"ò  ˆÜ×$Ñ$ TÓ*ˆÙØ�M‰M˜%Ÿ,™,›.Õ)à�M‰M˜$Õð ð €Mr   Úsegmentc                 ó.   ‡ — t        ˆ fd„dD «       «       S )Nc              3   ó@   •K  — | ]  }‰j                  |«      –— Œ y ­wr:   )Ú
startswith)Ú.0rÐ   rõ   s     €r   ú	<genexpr>z!_is_not_suffix.<locals>.<genexpr>g  s!   øè ø€ ò Ø'-ˆ×Ñ˜6×"ñùs   ƒ)ÚdevÚaÚbÚrcÚpost)Úany)rõ   s   `r   rÎ   rÎ   f  s"   ø€ Üó Ø1Pôó ð ð r   ÚleftÚrightc                 óž  — g g }}|j                  t        t        j                  d„ | «      «      «       |j                  t        t        j                  d„ |«      «      «       |j                  | t	        |d   «      d  «       |j                  |t	        |d   «      d  «       |j                  ddgt        dt	        |d   «      t	        |d   «      z
  «      z  «       |j                  ddgt        dt	        |d   «      t	        |d   «      z
  «      z  «       t        t        j                  |Ž «      t        t        j                  |Ž «      fS )Nc                 ó"   — | j                  «       S r:   ©Úisdigit©Úxs    r   ú<lambda>z_pad_version.<locals>.<lambda>p  s   € ¸¿¹»€ r   c                 ó"   — | j                  «       S r:   r  r  s    r   r	  z_pad_version.<locals>.<lambda>q  s   € ¸!¿)¹)»+€ r   r   r   Ú0)r�   rË   rÌ   rÍ   rÖ   ÚinsertÚmaxÚchain)r  r  Ú
left_splitÚright_splits       r   r×   r×   l  s"  € Ø  "�€Jð ×Ñ”dœ9×.Ñ.Ñ/DÀdÓKÓLÔMØ×Ñ”tœI×/Ñ/Ñ0EÀuÓMÓNÔOð ×Ñ�dœ3˜z¨!™}Ó-Ð/Ð0Ô1Ø×Ñ�uœS ¨Q¡Ó0Ð2Ð3Ô4ð ×Ñ�a˜#˜¤ Q¬¨K¸©NÓ(;¼cÀ*ÈQÁ-Ó>PÑ(PÓ!QÑQÔRØ×Ñ�q˜3˜%¤# a¬¨Z¸©]Ó);¼cÀ+ÈaÁ.Ó>QÑ)QÓ"RÑRÔSä”—‘ *Ð-Ó.´´Y·_±_ÀkÐ5RÓ0SÐTÐTr   c                   óH  — e Zd Z	 ddedee   ddfd„Zdefd„Zdefd„Zde	fd„Z
d	ed ef   dd fd
„Zd	edefd„Zd	edefd„Zde	fd„Zdee   fd„Zedee   fd„«       Zej,                  deddfd„«       Zdedefd„Z	 ddedee   defd„Z	 ddee   dee   dee   fd„Zy)ÚSpecifierSetNÚ
specifiersr/   r    c                 ó`  — |j                  d«      D �cg c]#  }|j                  «       sŒ|j                  «       ‘Œ% }}t        «       }|D ]  }	 |j                  t	        |«      «       Œ t        |«      | _        || _	        y c c}w # t
        $ r |j                  t        |«      «       Y Œbw xY w)Nú,)
rð   rO   ÚsetÚaddrº   r   r�   Ú	frozensetÚ_specsrQ   )r#   r  r/   ÚsÚsplit_specifiersÚparsedÚ	specifiers          r   rS   zSpecifierSet.__init__  sŸ   € ð 0:×/?Ñ/?ÀÓ/DÖR¨!ÈÏÉÍ	˜AŸG™G�IÐRÐÐRô -0«EˆØ)ò 	7ˆIð7Ø—
‘
œ9 YÓ/Õ0ð	7ô   Ó'ˆŒð (ˆÕùò! Søô $ò 7Ø—
‘
œ?¨9Ó5Ö6ð7ús   ”BªBÁBÂ#B-Â,B-c                 ór   — | j                   �d| j                  ›�nd}dj                  t        | «      |«      S )NrU   rV   z<SpecifierSet({!r}{})>)rQ   r/   rW   r=   rY   s     r   r[   zSpecifierSet.__repr__—  sD   € ð × Ñ Ð,ð ˜T×-Ñ-Ð0Ñ1àð 	ð (×.Ñ.¬s°4«y¸#Ó>Ð>r   c                 óX   — dj                  t        d„ | j                  D «       «      «      S )Nr  c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr:   )r=   ©rù   r  s     r   rú   z'SpecifierSet.__str__.<locals>.<genexpr>¡  s   è ø€ Ò;¨!œs 1ŸvÑ;ùs   ‚)rÊ   Úsortedr  r"   s    r   r$   zSpecifierSet.__str__   s    € Ø�x‰xœÑ;¨t¯{©{Ô;Ó;Ó<Ð<r   c                 ó,   — t        | j                  «      S r:   )r`   r  r"   s    r   r'   zSpecifierSet.__hash__£  ó   € Ü�D—K‘KÓ Ð r   r(   c                 óâ  — t        |t        «      rt        |«      }nt        |t        «      st        S t        «       }t	        | j
                  |j
                  z  «      |_        | j                  €|j                  �|j                  |_        |S | j                  �|j                  €| j                  |_        |S | j                  |j                  k(  r| j                  |_        |S t        d«      ‚)NzFCannot combine SpecifierSets with True and False prerelease overrides.)rb   r=   r  rc   r  r  rQ   Ú
ValueError)r#   r(   r  s      r   Ú__and__zSpecifierSet.__and__¦  sã   € Ü�eœSÔ!Ü  Ó'‰EÜ˜E¤<Ô0Ü!Ð!ä “Nˆ	Ü$ T§[¡[°5·<±<Ñ%?Ó@ˆ	Ôà×ÑÐ$¨×);Ñ);Ð)GØ%*×%7Ñ%7ˆIÔ"ð Ðð ×ÑÐ*¨u×/AÑ/AÐ/IØ%)×%6Ñ%6ˆIÔ"ð Ðð ×Ñ %×"4Ñ"4Ò4Ø%)×%6Ñ%6ˆIÔ"ð Ðô ðóð r   c                 ó¶   — t        |t        t        f«      rt        t        |«      «      }nt        |t        «      st        S | j
                  |j
                  k(  S r:   ©rb   r=   rE   r  rc   r  r*   s     r   r+   zSpecifierSet.__eq__½  óC   € Ü�eœcÔ#7Ð8Ô9Ü ¤ U£Ó,‰EÜ˜E¤<Ô0Ü!Ð!à�{‰{˜eŸl™lÑ*Ð*r   c                 ó¶   — t        |t        t        f«      rt        t        |«      «      }nt        |t        «      st        S | j
                  |j
                  k7  S r:   r)  r*   s     r   r-   zSpecifierSet.__ne__Å  r*  r   c                 ó,   — t        | j                  «      S r:   )rÖ   r  r"   s    r   Ú__len__zSpecifierSet.__len__Í  s   € Ü�4—;‘;ÓÐr   c                 ó,   — t        | j                  «      S r:   )Úiterr  r"   s    r   Ú__iter__zSpecifierSet.__iter__Ð  r$  r   c                 ó„   — | j                   �| j                   S | j                  sy t        d„ | j                  D «       «      S )Nc              3   ó4   K  — | ]  }|j                   –— Œ y ­wr:   ©r/   r!  s     r   rú   z+SpecifierSet.prereleases.<locals>.<genexpr>ã  s   è ø€ Ò6 Q�1—=•=Ñ6ùs   ‚)rQ   r  r   r"   s    r   r/   zSpecifierSet.prereleasesÓ  s?   € ð
 ×ÑÐ(Ø×$Ñ$Ð$ð
 �{Š{Øô Ñ6¨$¯+©+Ô6Ó6Ð6r   r0   c                 ó   — || _         y r:   rt   r2   s     r   r/   zSpecifierSet.prereleaseså  rv   r   r3   c                 ó$   — | j                  |«      S r:   rx   ry   s     r   rz   zSpecifierSet.__contains__é  r{   r   c                 óÀ   ‡‡— t        ‰t        t        f«      st        ‰«      Š‰€| j                  Š‰s‰j
                  ryt        ˆˆfd„| j                  D «       «      S )NFc              3   óD   •K  — | ]  }|j                  ‰‰¬ «      –— Œ y­w)r3  Nrx   )rù   r  r3   r/   s     €€r   rú   z(SpecifierSet.contains.<locals>.<genexpr>  s   øè ø€ ÒRÀ�1—:‘:˜d°�:×<ÑRùs   ƒ )rb   r   r   r   r/   r~   Úallr  r5   s    ``r   r6   zSpecifierSet.containsì  sW   ù€ ô
 ˜$¤´Ð 8Ô9Ü˜“;ˆDð
 ÐØ×*Ñ*ˆKñ ˜t×1Ò1Øô ÔRÀdÇkÁkÔRÓRÐRr   r7   c                 ó�  — |€| j                   }| j                  r/| j                  D ]  }|j                  |t        |«      ¬«      }Œ  |S g }g }|D ]k  }t	        |t
        t        f«      st        |«      }n|}t	        |t
        «      rŒ8|j                  r|s|rŒI|j                  |«       Œ[|j                  |«       Œm |s|r|€|S |S )Nr3  )
r/   r  r9   r@   rb   r   r   r   r~   r�   )r#   r7   r/   rH   Úfilteredrƒ   r3   r…   s           r   r9   zSpecifierSet.filter	  sÛ   € ð ÐØ×*Ñ*ˆKð
 �;Š;ØŸ™ò P�ØŸ;™; x¼TÀ+Ó=N˜;ÓO‘ðPàˆOð
 .0ˆHØ68Ðð
 !ò *�ä! $¬¼Ð(@ÔAÜ%*¨4£[‘Nà%)�Nô ˜n¬mÔ<Øð "×/Ò/¹Ú#Ø)×0Ñ0°Õ6à—O‘O DÕ)ð#*ñ* Ñ 1°kÐ6IØ(Ð(àˆOr   r†   r:   )r   r   r   r=   r   r@   rS   r[   r$   r>   r'   r   r'  r?   r+   r-   r-  r   rE   r0  rˆ   r/   rB   rŠ   rz   r6   r   r   r9   r   r   r   r  r  ~  sc  „ àBFñ(Øð(Ø19¸$±ð(à	ó(ð0?˜#ó ?ð=˜ó =ð!˜#ó !ð˜U >°3Ð#6Ñ7ð ¸Nó ð.+˜Fð + tó +ð+˜Fð + tó +ð ˜ó  ð!˜(Ð#7Ñ8ó !ð ð7˜X d™^ò 7ó ð7ð" ×Ñð" ð "¨$ò "ó ð"ð# ð #°Tó #ð DHñSØ#ðSØ2:¸4±.ðSà	óSð< QUñ3Ø  Ñ0ð3Ø?GÈ¹~ð3à	�.Ñ	!ô3r   r  )+r;   r¾   rÌ   r´   rž   Útypingr   r   r   r   r   r   r	   r
   r   r   r   Úutilsr   rL   r   r   r   r‹   r=   rŠ   r   r@   r‰   r&  r   ÚABCMetar   rE   r�   rÀ   rº   rµ   rñ   rÏ   rÎ   r×   r  r   r   r   ú<module>r>     s{  ðó
 Û Û Û 	Û ÷÷ ÷ ñ õ (ß 2Ñ 2à�g˜}Ð,Ñ-€Ø˜ °Ð3Ñ4€ÙÐ)°ÔA€Ø˜]¨CÐ0°$Ð6Ñ7Ð ô�zô ô7˜cŸk™kõ 7ôtQ˜=ô Qôh98Ð*ô 98ðx	Ø�+˜}¨cÐ2°DÐ8Ñ9ð	àˆ{˜M¨3Ð/°Ð5Ñ6ó	ôX"Ð$ô X"ðv �—
‘
Ð<Ó=€ð˜Cð  D¨¡Ió ð˜Cð  Dó ðU�t˜C‘yð U¨¨c©ð U°u¸TÀ#¹YÈÈSÉ	Ð=QÑ7Ró Uô$~�=õ ~r   