§
    üxIf”  ã            	       ó  — 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 G d„ de¦  «        Z e j        de j        ¦  «        Z e j        d¦  «        Z e j        d¦  «        Z e j        d¦  «        Zddœdededef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 )ÚInvalidNamezW
    An invalid distribution name; users should refer to the packaging user guide.
    N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ó    úC/var/www/piapp/venv/lib/python3.11/site-packages/packaging/utils.pyr   r      ó   € € € € € ðð ð ð r   r   c                   ó   — e Zd ZdZdS )ÚInvalidWheelFilenamezM
    An invalid wheel filename was found, users should refer to PEP 427.
    Nr   r   r   r   r   r      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)^([A-Z0-9]|[A-Z0-9][A-Z0-9._-]*[A-Z0-9])$z[-_.]+z/^([a-z0-9]|[a-z0-9]([a-z0-9-](?!--))*[a-z0-9])$z	(\d+)(.*)F)ÚvalidateÚnamer   Úreturnc                óâ   — |r,t                                | ¦  «        st          d| ›�¦  «        ‚t                               d| ¦  «                             ¦   «         }t          t          |¦  «        S )Nzname is invalid: ú-)Ú_validate_regexÚmatchr   Ú_canonicalize_regexÚsubÚlowerr   r   )r   r   Úvalues      r   Úcanonicalize_namer(   +   sg   € Øð 8�×-Ò-¨dÑ3Ô3ð 8ÝÐ6¨dÐ6Ð6Ñ7Ô7Ð7å×#Ò# C¨Ñ.Ô.×4Ò4Ñ6Ô6€EÝ• Ñ&Ô&Ð&r   c                 ó:   — t                                | ¦  «        d uS ©N)Ú_normalized_regexr#   )r   s    r   Úis_normalized_namer,   3   s   € Ý×"Ò" 4Ñ(Ô(°Ð4Ð4r   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 r*   ©Ústr©Ú.0Úxs     r   ú	<genexpr>z'canonicalize_version.<locals>.<genexpr>N   s(   è è € Ð>Ð>¨!�s 1™vœvÐ>Ð>Ð>Ð>Ð>Ð>r   z(\.0)+$Ú Nc              3   ó4   K  — | ]}t          |¦  «        V — Œd S r*   r3   r5   s     r   r8   z'canonicalize_version.<locals>.<genexpr>V   s(   è è € Ð8Ð8¨�S ™VœVÐ8Ð8Ð8Ð8Ð8Ð8r   z.postz.devú+)Ú
isinstancer4   r   r   ÚepochÚappendÚjoinÚreleaseÚrer%   ÚpreÚpostÚdevÚlocal)r.   r-   ÚparsedÚpartsÚrelease_segments        r   Úcanonicalize_versionrI   7   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                 óN  — |                       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         ¦  «        }n%# t          $ r}t          d| › �¦  «        |‚d }~ww xY w|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   z*Invalid wheel filename (invalid version): rN   zInvalid build number: z in 'ú'r   éÿÿÿÿ)Úendswithr   ÚcountÚsplitrA   r#   ÚUNICODEr(   r   r   Ú_build_tag_regexr   ÚBuildTagÚintÚgroupr
   )rJ   ÚdashesrG   Ú	name_partr   r.   ÚeÚ
build_partÚbuild_matchÚbuildÚtagss              r   Úparse_wheel_filenamerb   g   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ðÝ˜% œ(Ñ#Ô#ˆˆøÝð ð ð Ý"ØC¸ÐCÐCñ
ô 
àð	øøøøðøøøð
 �‚{€{Ø˜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 $Ð'Ð's   ÃC Ã
C<Ã$C7Ã7C<c                 óÊ  — |                       d¦  «        r| d t          d¦  «         …         }n@|                       d¦  «        r| d t          d¦  «         …         }nt          d| › �¦  «        ‚|                     d¦  «        \  }}}|st          d| › �¦  «        ‚t	          |¦  «        }	 t          |¦  «        }n%# t          $ r}t          d| › �¦  «        |‚d }~ww xY w||fS )Nz.tar.gzz.zipz@Invalid sdist filename (extension must be '.tar.gz' or '.zip'): r!   zInvalid sdist filename: z*Invalid sdist filename (invalid version): )rS   Úlenr   Ú
rpartitionr(   r   r   )rJ   Ú	file_stemr\   ÚsepÚversion_partr   r.   r]   s           r   Úparse_sdist_filenameri   ’   s,  € Ø×Ò˜Ñ#Ô#ð 
ØÐ.¥ I¡¤˜Ð.Ô/ˆ	ˆ	Ø	×	Ò	˜6Ñ	"Ô	"ð 
Ø˜^¥ F¡¤˜|˜^Ô,ˆ	ˆ	å"ðØðð ñ
ô 
ð 	
ð $-×#7Ò#7¸Ñ#<Ô#<Ñ €Iˆs�LØð JÝ"Ð#H¸hÐ#HÐ#HÑIÔIÐIå˜YÑ'Ô'€DðÝ˜,Ñ'Ô'ˆˆøÝð ð ð Ý"ØC¸ÐCÐCñ
ô 
àð	øøøøðøøøð
 �'ˆ?Ðs   Â,B< Â<
CÃCÃC)!rA   Útypingr   r   r   r   r   ra   r	   r
   r.   r   r   rY   r4   rX   r   Ú
ValueErrorr   r   r   ÚcompileÚ
IGNORECASEr"   r$   r+   rW   Úboolr(   r,   rI   rb   ri   r   r   r   ú<module>ro      sx  ðð
 
€	€	€	Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9à  Ð  Ð  Ð  Ð  Ð  Ð  Ð  Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,à��r”˜E # s (œOÐ+Ô,€Ø�Ð)¨3Ñ/Ô/€ðð ð ð ð �*ñ ô ð ðð ð ð ð ˜:ñ ô ð ðð ð ð ð ˜:ñ ô ð ð �"”*Ø0°"´-ñô €ð !�b”j Ñ+Ô+Ð Ø�B”JÐQÑRÔRÐ à�2”:˜lÑ+Ô+Ð ð 6;ð 'ð 'ð '˜Cð '¨dð '¸~ð 'ð 'ð 'ð 'ð5˜Sð 5 Tð 5ð 5ð 5ð 5ð
 BFð-ð -ð -Ø�7˜C�<Ô ð-Ø:>ð-àð-ð -ð -ð -ð`((Øð((à
ˆ>˜7 H¨i¸¬nÐ<Ô=ð((ð ((ð ((ð ((ðV 3ð ¨5°ÀÐ1HÔ+Ið ð ð ð ð ð r   