§
    ö{Âc  ã            	       ó”  — d dl Z d dlmZmZmZmZmZ ddlmZm	Z	 ddl
mZmZ eed         eeef         f         Z ede¦  «        Z G d„ d	e¦  «        Z G d
„ de¦  «        Z e j        d¦  «        Z e j        d¦  «        Zdedefd„Zddœdeeef         dedefd„Zdedeeeeee         f         fd„Zdedeeef         fd„ZdS )é    N)Ú	FrozenSetÚNewTypeÚTupleÚUnionÚcasté   )ÚTagÚ	parse_tag)ÚInvalidVersionÚVersion© ÚNormalizedNamec                   ó   — e Zd ZdZdS )ÚInvalidWheelFilenamezM
    An invalid wheel filename was found, users should refer to PEP 427.
    N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ó    ú1/usr/lib/python3/dist-packages/packaging/utils.pyr   r      ó   € € € € € ðð ð ð r   r   c                   ó   — e Zd ZdZdS )ÚInvalidSdistFilenamez^
    An invalid sdist filename was found, users should refer to the packaging user guide.
    Nr   r   r   r   r   r      r   r   r   z[-_.]+z	(\d+)(.*)ÚnameÚreturnc                 ó†   — t                                d| ¦  «                             ¦   «         }t          t          |¦  «        S )Nú-)Ú_canonicalize_regexÚsubÚlowerr   r   )r   Úvalues     r   Úcanonicalize_namer#       s3   € å×#Ò# C¨Ñ.Ô.×4Ò4Ñ6Ô6€EÝ• Ñ&Ô&Ð&r   T)Ústrip_trailing_zeroÚversionr$   c                óê  — t          | t          ¦  «        r#	 t          | ¦  «        }n# t          $ r | cY S w xY w| }g }|j        dk    r|                     |j        › d�¦  «         d                     d„ |j        D ¦   «         ¦  «        }|rt          j	        dd|¦  «        }|                     |¦  «         |j
        �7|                     d                     d„ |j
        D ¦   «         ¦  «        ¦  «         |j        �|                     d	|j        › �¦  «         |j        �|                     d
|j        › �¦  «         |j        �|                     d|j        › �¦  «         d                     |¦  «        S )z�
    This is very similar to Version.__str__, but has one subtle difference
    with the way it handles the release segment.
    r   ú!ú.c              3   ó4   K  — | ]}t          |¦  «        V — Œd S ©N©Ústr©Ú.0Úxs     r   ú	<genexpr>z'canonicalize_version.<locals>.<genexpr>=   s(   è è € Ð>Ð>¨!�s 1™vœvÐ>Ð>Ð>Ð>Ð>Ð>r   z(\.0)+$Ú Nc              3   ó4   K  — | ]}t          |¦  «        V — Œd S r*   r+   r-   s     r   r0   z'canonicalize_version.<locals>.<genexpr>E   s(   è è € Ð8Ð8¨�S ™VœVÐ8Ð8Ð8Ð8Ð8Ð8r   z.postz.devú+)Ú
isinstancer,   r   r   ÚepochÚappendÚjoinÚreleaseÚrer    ÚpreÚpostÚdevÚlocal)r%   r$   ÚparsedÚpartsÚrelease_segments        r   Úcanonicalize_versionrA   &   s–  € õ �'�3ÑÔð ð	Ý˜WÑ%Ô%ˆFˆFøÝð 	ð 	ð 	àˆNˆNˆNð	øøøð ˆà€Eð „|�qÒÐØ�Š˜œÐ'Ð'Ð'Ñ(Ô(Ð(ð —h’hÐ>Ð>¨v¬~Ð>Ñ>Ô>Ñ>Ô>€OØð Båœ& ¨R°ÑAÔAˆØ	‡L‚L�Ñ!Ô!Ð!ð „zÐØ�Š�R—W’WÐ8Ð8¨V¬ZÐ8Ñ8Ô8Ñ8Ô8Ñ9Ô9Ð9ð „{ÐØ�ŠÐ*˜Vœ[Ð*Ð*Ñ+Ô+Ð+ð „zÐØ�ŠÐ(˜FœJÐ(Ð(Ñ)Ô)Ð)ð „|ÐØ�ŠÐ'˜œÐ'Ð'Ñ(Ô(Ð(à�7Š7�5‰>Œ>Ðs   —' §6µ6Úfilenamec                 ó   — |                       d¦  «        st          d| › �¦  «        ‚| d d…         } |                      d¦  «        }|dvrt          d| › �¦  «        ‚|                      d|dz
  ¦  «        }|d         }d	|v s t	          j        d
|t          j        ¦  «        €t          d| › �¦  «        ‚t          |¦  «        }t          |d         ¦  «        }|dk    r…|d         }t                               |¦  «        }|€t          d|› d| › d�¦  «        ‚t          t          t          |                     d¦  «        ¦  «        |                     d¦  «        f¦  «        }nd}t          |d         ¦  «        }	||||	fS )Nz.whlz3Invalid wheel filename (extension must be '.whl'): éüÿÿÿr   )é   é   z0Invalid wheel filename (wrong number of parts): é   r   Ú__z^[\w\d._]*$zInvalid project name: r   rF   zInvalid build number: z in 'ú'r   éÿÿÿÿ)Úendswithr   ÚcountÚsplitr9   ÚmatchÚUNICODEr#   r   Ú_build_tag_regexr   ÚBuildTagÚintÚgroupr
   )
rB   Údashesr?   Ú	name_partr   r%   Ú
build_partÚbuild_matchÚbuildÚtagss
             r   Úparse_wheel_filenamerZ   V   sª  € ð ×Ò˜VÑ$Ô$ð 
Ý"ØLÀ(ÐLÐLñ
ô 
ð 	
ð ˜˜˜Œ}€HØ�^Š^˜CÑ Ô €FØ�VÐÐÝ"ØI¸xÐIÐIñ
ô 
ð 	
ð �NŠN˜3 ¨¡
Ñ+Ô+€EØ�a”€IàˆyÐÐ�BœH ^°YÅÄ
ÑKÔKÐSÝ"Ð#F¸HÐ#FÐ#FÑGÔGÐGÝ˜YÑ'Ô'€DÝ�e˜A”hÑÔ€GØ�‚{€{Ø˜1”Xˆ
Ý&×,Ò,¨ZÑ8Ô8ˆØÐÝ&ØE¨ÐEÐE¸(ÐEÐEÐEñô ð õ •X¥ K×$5Ò$5°aÑ$8Ô$8Ñ 9Ô 9¸;×;LÒ;LÈQÑ;OÔ;OÐPÑQÔQˆˆàˆÝ�U˜2”YÑÔ€DØ�'˜5 $Ð'Ð'r   c                 ó|  — |                       d¦  «        r| d t          d¦  «         …         }n@|                       d¦  «        r| d t          d¦  «         …         }nt          d| › �¦  «        ‚|                     d¦  «        \  }}}|st          d| › �¦  «        ‚t	          |¦  «        }t          |¦  «        }||fS )Nz.tar.gzz.zipz@Invalid sdist filename (extension must be '.tar.gz' or '.zip'): r   zInvalid sdist filename: )rK   Úlenr   Ú
rpartitionr#   r   )rB   Ú	file_stemrU   ÚsepÚversion_partr   r%   s          r   Úparse_sdist_filenamera   z   sä   € Ø×Ò˜Ñ#Ô#ð 
ØÐ.¥ I¡¤˜Ð.Ô/ˆ	ˆ	Ø	×	Ò	˜6Ñ	"Ô	"ð 
Ø˜^¥ F¡¤˜|˜^Ô,ˆ	ˆ	å"ðØðð ñ
ô 
ð 	
ð $-×#7Ò#7¸Ñ#<Ô#<Ñ €Iˆs�LØð JÝ"Ð#H¸hÐ#HÐ#HÑIÔIÐIå˜YÑ'Ô'€DÝ�lÑ#Ô#€GØ�'ˆ?Ðr   )r9   Útypingr   r   r   r   r   rY   r	   r
   r%   r   r   rR   r,   rQ   r   Ú
ValueErrorr   r   Úcompiler   rP   r#   ÚboolrA   rZ   ra   r   r   r   ú<module>rf      sç  ðð
 
€	€	€	Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9à  Ð  Ð  Ð  Ð  Ð  Ð  Ð  Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,à��r”˜E # s (œOÐ+Ô,€Ø�Ð)¨3Ñ/Ô/€ðð ð ð ð ˜:ñ ô ð ðð ð ð ð ˜:ñ ô ð ð !�b”j Ñ+Ô+Ð à�2”:˜lÑ+Ô+Ð ð'˜Cð ' Nð 'ð 'ð 'ð 'ð BFð-ð -ð -Ø�7˜C�<Ô ð-Ø:>ð-àð-ð -ð -ð -ð`!(Øð!(à
ˆ>˜7 H¨i¸¬nÐ<Ô=ð!(ð !(ð !(ð !(ðH 3ð ¨5°ÀÐ1HÔ+Ið ð ð ð ð ð r   