HEX
Server: nginx/1.24.0
System: Linux webserver 6.8.0-85-generic #85-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 18 15:26:59 UTC 2025 x86_64
User: wpuser (1002)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc
�

��hI9���ddlZddlZddlZddlZddlmZmZmZmZm	Z	m
Z
mZddlm
Z
mZmZmZgd�ZeeefZeee
eeffZeeeefZeee
eee
eefe
eeffdffZe
ee
edfeeeefZe
ee
edffZeeeefeeefgefZej8dgd��Zd	ed
edfd�ZGd
�de�Z Gd�d�Z!Gd�de!�Z"ejFdejH�Z%dddddd�Z&ded
eefd�Z'd	ed
efd�Z(dZ)Gd�de!�Z*dedeee+e	fd
ee
eeffd �Z,ejFd!�Z-d"ed
eefd#�Z.d$ed%e
edfd&ee
eefd'ee
eefd(ee
eefd"ee
ed
efd)�Z/y)*�N)�Callable�Iterator�List�Optional�SupportsInt�Tuple�Union�)�Infinity�InfinityType�NegativeInfinity�NegativeInfinityType)�parse�Version�
LegacyVersion�InvalidVersion�VERSION_PATTERN.�_Version)�epoch�release�dev�pre�post�local�version�return)rrc�N�	t|�S#t$rt|�cYSwxYw)z�
    Parse the given version string and return either a :class:`Version` object
    or a :class:`LegacyVersion` object depending on if the given version is
    a valid PEP 440 version or a legacy version.
    )rrr)rs �?/usr/lib/python3/dist-packages/pip/_vendor/packaging/version.pyrr*s,��&��w�����&��W�%�%�&�s�

�$�$c��eZdZdZy)rzF
    An invalid version was found, users should refer to PEP 440.
    N)�__name__�
__module__�__qualname__�__doc__��rrr6s��r%rc��eZdZUeeefed<defd�Zddde	fd�Z
ddde	fd�Zdede	fd�Z
ddde	fd�Zddde	fd	�Zdede	fd
�Zy)�_BaseVersion�_keyrc�,�t|j�S�N)�hashr(��selfs r�__hash__z_BaseVersion.__hash__?s���D�I�I��r%�otherc�`�t|t�stS|j|jkSr*��
isinstancer'�NotImplementedr(�r-r/s  r�__lt__z_BaseVersion.__lt__E�%���%��.�!�!��y�y�5�:�:�%�%r%c�`�t|t�stS|j|jkSr*r1r4s  r�__le__z_BaseVersion.__le__K�%���%��.�!�!��y�y�E�J�J�&�&r%c�`�t|t�stS|j|jk(Sr*r1r4s  r�__eq__z_BaseVersion.__eq__Qr9r%c�`�t|t�stS|j|jk\Sr*r1r4s  r�__ge__z_BaseVersion.__ge__Wr9r%c�`�t|t�stS|j|jkDSr*r1r4s  r�__gt__z_BaseVersion.__gt__]r6r%c�`�t|t�stS|j|jk7Sr*r1r4s  r�__ne__z_BaseVersion.__ne__cr9r%N)r r!r"r	�CmpKey�LegacyCmpKey�__annotations__�intr.�boolr5r8�objectr;r=r?rAr$r%rr'r'<s���
���$�
%�%��#��&�N�&�t�&�'�N�'�t�'�'�F�'�t�'�'�N�'�t�'�&�N�&�t�&�'�F�'�t�'r%r'c��eZdZdeddfd�Zdefd�Zdefd�Zedefd��Zedefd��Z	ede
fd	��Zedd
��Zedd��Z
edd��Zedd
��Zedd��Zedefd��Zedefd��Zedefd��Zy)rrrNc��t|�|_t|j�|_t	j
dt�y)NzZCreating a LegacyVersion has been deprecated and will be removed in the next major release)�str�_version�_legacy_cmpkeyr(�warnings�warn�DeprecationWarning)r-rs  r�__init__zLegacyVersion.__init__ks1���G���
�"�4�=�=�1��	��
�
�
0��	
r%c��|jSr*�rKr,s r�__str__zLegacyVersion.__str__us���}�}�r%c��d|�d�S)Nz<LegacyVersion('�')>r$r,s r�__repr__zLegacyVersion.__repr__xs��!�$��s�+�+r%c��|jSr*rRr,s r�publiczLegacyVersion.public{����}�}�r%c��|jSr*rRr,s r�base_versionzLegacyVersion.base_versionrYr%c��y)N���r$r,s rrzLegacyVersion.epoch�s��r%c��yr*r$r,s rrzLegacyVersion.release����r%c��yr*r$r,s rrzLegacyVersion.pre�r_r%c��yr*r$r,s rrzLegacyVersion.post�r_r%c��yr*r$r,s rrzLegacyVersion.dev�r_r%c��yr*r$r,s rrzLegacyVersion.local�r_r%c��y�NFr$r,s r�
is_prereleasezLegacyVersion.is_prerelease����r%c��yrer$r,s r�is_postreleasezLegacyVersion.is_postrelease�rgr%c��yrer$r,s r�
is_devreleasezLegacyVersion.is_devrelease�rgr%)rN)r r!r"rJrPrSrV�propertyrXr[rErrrrrrrFrfrirkr$r%rrrjs3��
��
��
����,�#�,���������c������s��������������������������t������������t���r%rz(\d+ | [a-z]+ | \.| -)�czfinal-�@)r�preview�-�rcr�sc#��K�tj|�D]B}tj||�}|r|dk(r�!|dddvr|j	d����<d|z���Dd��y�w)N�.r
�
0123456789��*�*final)�_legacy_version_component_re�split�_legacy_version_replacement_map�get�zfill)rr�parts  r�_parse_version_partsr�sk����,�2�2�1�5�
��.�2�2�4��>���t�s�{�����8�|�#��*�*�Q�-����*��
��N�s�A A"c�B�d}g}t|j��D]s}|jd�rO|dkr%|r#|ddk(r|j�|r	|ddk(r�|r#|ddk(r|j�|r	|ddk(r�|j	|��u|t|�fS)Nr]rwrxz*final-�00000000)r�lower�
startswith�pop�append�tuple)rr�partsr~s    rrLrL�s���
�E��E�$�W�]�]�_�5����?�?�3���h����b�	�Y� 6��I�I�K���b�	�Y� 6��E�"�I��3��	�	���E�"�I��3�	���T����%��,��r%a�
    v?
    (?:
        (?:(?P<epoch>[0-9]+)!)?                           # epoch
        (?P<release>[0-9]+(?:\.[0-9]+)*)                  # release segment
        (?P<pre>                                          # pre-release
            [-_\.]?
            (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview))
            [-_\.]?
            (?P<pre_n>[0-9]+)?
        )?
        (?P<post>                                         # post release
            (?:-(?P<post_n1>[0-9]+))
            |
            (?:
                [-_\.]?
                (?P<post_l>post|rev|r)
                [-_\.]?
                (?P<post_n2>[0-9]+)?
            )
        )?
        (?P<dev>                                          # dev release
            [-_\.]?
            (?P<dev_l>dev)
            [-_\.]?
            (?P<dev_n>[0-9]+)?
        )?
    )
    (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))?       # local version
c���eZdZejdezdzejejz�Zde	ddfd�Z
de	fd�Zde	fd�Ze
defd	��Ze
deed
ffd��Ze
deee	effd��Ze
deefd
��Ze
deefd��Ze
dee	fd��Ze
de	fd��Ze
de	fd��Ze
defd��Ze
defd��Ze
defd��Ze
defd��Ze
defd��Ze
defd��Zy)rz^\s*z\s*$rrNc��|jj|�}|std|�d���t|j	d�rt|j	d��ndt
d�|j	d�jd�D��t|j	d�|j	d	��t|j	d
�|j	d�xs|j	d��t|j	d
�|j	d��t|j	d����|_
t|jj|jj|jj|jj|jj |jj"�|_y)NzInvalid version: '�'rrc3�2K�|]}t|����y�wr*)rE��.0�is  r�	<genexpr>z#Version.__init__.<locals>.<genexpr>s����L�Q�#�a�&�L���rrt�pre_l�pre_n�post_l�post_n1�post_n2�dev_l�dev_nr)rrrrrr)�_regex�searchrr�grouprEr�rz�_parse_letter_version�_parse_local_versionrK�_cmpkeyrrrrrrr()r-r�matchs   rrPzVersion.__init__sR�����"�"�7�+��� �#5�g�Y�a�!@�A�A�!�/4�{�{�7�/C�#�e�k�k�'�*�+���L�%�+�+�i�*@�*F�*F�s�*K�L�L�%�e�k�k�'�&:�E�K�K��<P�Q�&����H�%�u�{�{�9�'=�'W����Y�AW��&�e�k�k�'�&:�E�K�K��<P�Q�&�u�{�{�7�';�<�	
��
���M�M����M�M�!�!��M�M����M�M����M�M����M�M���

��	r%c��d|�d�S)Nz
<Version('rUr$r,s rrVzVersion.__repr__"s���D�6��%�%r%c�Z�g}|jdk7r|j|j�d��|jdjd�|jD���|j�1|jdjd�|jD���|j
�|jd|j
���|j�|jd|j���|j�|jd	|j���dj|�S)
Nr�!rtc3�2K�|]}t|����y�wr*�rJ�r��xs  rr�z"Version.__str__.<locals>.<genexpr>-�����;��c�!�f�;�r��c3�2K�|]}t|����y�wr*r�r�s  rr�z"Version.__str__.<locals>.<genexpr>1s���� :�A��Q�� :�r�z.postz.dev�+)rr��joinrrrrr�r-r�s  rrSzVersion.__str__%s������:�:��?��L�L�D�J�J�<�q�)�*�	���S�X�X�;�d�l�l�;�;�<��8�8���L�L���� :���� :�:�;��9�9� ��L�L�5�����,�-��8�8���L�L�4����z�*�+��:�:�!��L�L�1�T�Z�Z�L�)�*��w�w�u�~�r%c�2�|jj}|Sr*)rKr)r-�_epochs  rrz
Version.epochAs���m�m�)�)���
r%.c�2�|jj}|Sr*)rKr)r-�_releases  rrzVersion.releaseFs��$(�M�M�$9�$9���r%c�2�|jj}|Sr*)rKr)r-�_pres  rrzVersion.preKs��*.�-�-�*;�*;���r%c�d�|jjr|jjdSdS�Nr
)rKrr,s rrzVersion.postPs(��(,�
�
�(:�(:�t�}�}�!�!�!�$�D��Dr%c�d�|jjr|jjdSdSr�)rKrr,s rrzVersion.devTs(��'+�}�}�'8�'8�t�}�}� � ��#�B�d�Br%c��|jjr,djd�|jjD��Sy)Nrtc3�2K�|]}t|����y�wr*r�r�s  rr�z Version.local.<locals>.<genexpr>[s����@�q�C��F�@�r�)rKrr�r,s rrz
Version.localXs1���=�=����8�8�@�D�M�M�,?�,?�@�@�@�r%c�>�t|�jdd�dS)Nr�r
r)rJrzr,s rrXzVersion.public_s���4�y���s�A�&�q�)�)r%c���g}|jdk7r|j|j�d��|jdjd�|jD���dj|�S)Nrr�rtc3�2K�|]}t|����y�wr*r�r�s  rr�z'Version.base_version.<locals>.<genexpr>lr�r�r�)rr�r�rr�s  rr[zVersion.base_versioncsZ�����:�:��?��L�L�D�J�J�<�q�)�*�	���S�X�X�;�d�l�l�;�;�<��w�w�u�~�r%c�>�|jduxs|jduSr*)rrr,s rrfzVersion.is_prereleaseps���x�x�t�#�;�t�x�x�t�';�;r%c��|jduSr*)rr,s rrizVersion.is_postreleasets���y�y��$�$r%c��|jduSr*)rr,s rrkzVersion.is_devreleasexs���x�x�t�#�#r%c�T�t|j�dk\r|jdSdS)Nr
r��lenrr,s r�majorz
Version.major|�%��"%�d�l�l�"3�q�"8�t�|�|�A��?�a�?r%c�T�t|j�dk\r|jdSdS)N�r
rr�r,s r�minorz
Version.minor�r�r%c�T�t|j�dk\r|jdSdS)N�r�rr�r,s r�microz
Version.micro�r�r%) r r!r"�re�compiler�VERBOSE�
IGNORECASEr�rJrPrVrSrlrErrrrrrrrrXr[rFrfrirkr�r�r�r$r%rrrs��
�R�Z�Z��/�1�G�;�R�Z�Z�"�-�-�=W�
X�F�
��
��
�:&�#�&����8��s�������s�C�x�������X�e�C��H�o�.�����E�h�s�m�E��E��C�X�c�]�C��C���x��}�����*��*��*��
�c�
��
��<�t�<��<��%��%��%��$�t�$��$��@�s�@��@��@�s�@��@��@�s�@��@r%r�letter�numberc��|r>|�d}|j�}|dk(rd}n|dk(rd}n
|dvrd}n|dvrd	}|t|�fS|s|rd	}|t|�fSy)
Nr�alpha�a�beta�b)rmrrorq)�rev�rr)r�rE)r�r�s  rr�r��s�����>��F������
�W���F�
�v�
��F�
�.�
.��F�
�|�
#��F��s�6�{�"�"��f����s�6�{�"�"�r%z[\._-]rc�R�|�%td�tj|�D��Sy)zR
    Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve").
    Nc3�rK�|]/}|j�s|j�n
t|����1y�wr*)�isdigitr�rE)r�r~s  rr�z'_parse_local_version.<locals>.<genexpr>�s/����
��!%����D�J�J�L�C��I�=�
�s�57)r��_local_version_separatorsrz)rs rr�r��s4��
���
�1�7�7��>�
�
�	
�r%rrrrrc��ttttjd�t|�����}|�|�	|�t
}n|�t}n|}|�t
}n|}|�t}	n|}	|�t
}
ntd�|D��}
|||||	|
fS)Nc��|dk(S)Nrr$)r�s r�<lambda>z_cmpkey.<locals>.<lambda>�s
��A��F�r%c3�TK�|] }t|t�r|dfnt|f���"y�w)r�N)r2rEr
r�s  rr�z_cmpkey.<locals>.<genexpr>�s-����
�IJ�z�!�S�)�Q��G�0@�!�/D�D�
�s�&()r��reversed�list�	itertools�	dropwhiler
r)rrrrrrr�r��_post�_dev�_locals           rr�r��s������i�)�)�*:�H�W�<M�N�O�P��H��{�t�|���/��

�������|� 0�����{�'�����}�,���
�NS�
�
���(�D�%��v�5�5r%)0�collectionsr�r�rM�typingrrrrrrr	�_structuresrrr
r�__all__�
InfiniteTypesrJrE�PrePostDevType�SubLocalType�	LocalTyperBrCrF�VersionComparisonMethod�
namedtuplerr�
ValueErrorrr'rr�r�ryr{rrLrr�bytesr�r�r�r�r$r%r�<module>r�s���
��	��P�P�P�W�W�
T���l�$8�8�9�
��}�e�C��H�o�5�6���]�C��,�-����	�
���,��#�$��&��4�5�
7�	
�
	�	
���

�	�
���s�C�x��.�.�.�)�S�
���S�%��S��/�)�*��"�
�6�<�� �%���(<�"=�>��D���"�;�!�!��C���
	&�3�	&�5�!;�<�	&��Z��+'�+'�\;�L�;�| *�r�z�z�*C�R�Z�Z�P����	�

��#���C��H�S�M��"�C��L��:��@E@�l�E@�P!��!��s�E�;�6�7�!�
�e�C��H�o��!�H'�B�J�J�y�1��	��	���(;�	�<6��<6�
�3��8�_�<6�
�%��S��/�	"�<6��5��c��?�
#�	<6�

�%��S��/�	"�<6��E�,�'�(�
<6��<6r%