
    =Og0                     b    	 d dl Z  G d d          Z G d de          Z G d de          ZdS )    Nc                   <    e Zd Z	 d	dZd Zd Zd Zd Zd Zd Z	dS )
VersionNc                 8    |r|                      |           d S d S Nparseselfvstrings     */usr/lib64/python3.11/distutils/version.py__init__zVersion.__init__&   ,     	 JJw	  	     c                 @    | j         j        dt          |           dS )Nz ('z'))	__class____name__strr
   s    r   __repr__zVersion.__repr__*   s"    "n555s4yyyyAAr   c                 N    |                      |          }|t          u r|S |dk    S Nr   _cmpNotImplementedr
   othercs      r   __eq__zVersion.__eq__-   ,    IIeHAvr   c                 N    |                      |          }|t          u r|S |dk     S r   r   r   s      r   __lt__zVersion.__lt__3   ,    IIeH1ur   c                 N    |                      |          }|t          u r|S |dk    S r   r   r   s      r   __le__zVersion.__le__9   r   r   c                 N    |                      |          }|t          u r|S |dk    S r   r   r   s      r   __gt__zVersion.__gt__?   r"   r   c                 N    |                      |          }|t          u r|S |dk    S r   r   r   s      r   __ge__zVersion.__ge__E   r   r   r   )
r   
__module____qualname__r   r   r   r!   r$   r&   r(    r   r   r   r      s               B B B            r   r   c                   ^    e Zd Z	  ej        dej        ej        z            Zd Zd Z	d Z
dS )StrictVersionz)^(\d+) \. (\d+) (\. (\d+))? ([ab](\d+))?$c                    | j                             |          }|st          d|z            |                    ddddd          \  }}}}}|r+t	          t          t          |||g                    | _        n,t	          t          t          ||g                    dz   | _        |r|d         t          |          f| _        d S d | _        d S )	Nzinvalid version number '%s'               )r   r   )	
version_rematch
ValueErrorgrouptuplemapintversion
prerelease)r
   r   r5   majorminorpatchr<   prerelease_nums           r   r   zStrictVersion.parse   s    %%g.. 	F:WDEEE KK1aA&& 	:uj.  	B S5%*?!@!@AADLL S5%.!9!9::TADL 	#)!}c..A.ABDOOO"DOOOr   c                 R   | j         d         dk    r6d                    t          t          | j         dd                             }n-d                    t          t          | j                             }| j        r+|| j        d         z   t          | j        d                   z   }|S )Nr0   r   .r/   )r;   joinr9   r   r<   r	   s     r   __str__zStrictVersion.__str__   s    <?ahhs3QqS(9::;;GGhhs35566G? 	M 22S9K5L5LLGr   c                    t          |t                    rt          |          }nt          |t                    st          S | j        |j        k    r| j        |j        k     rdS dS | j        s	|j        sdS | j        r	|j        sdS | j        s	|j        rdS | j        r-|j        r(| j        |j        k    rdS | j        |j        k     rdS dS d S d S )Nr/   r   )
isinstancer   r-   r   r;   r<   r
   r   s     r   r   zStrictVersion._cmp   s	   eS!! 	"!%((EEE=11 	"!!<5=(( |em++rq  	+(8 	+1o 	+e&6 	+2/ 
	+e&6 
	+1o 	+%"2 	+%"222q5#333rq	+ 	+ 	+ 	+r   N)r   r)   r*   recompileVERBOSEASCIIr4   r   rD   r   r+   r   r   r-   r-   ]   sk        !F HJ13 3J# # #&
 
 
"+ "+ "+ "+ "+r   r-   c                   \    e Zd Z	  ej        dej                  ZddZd Zd Z	d Z
d ZdS )	LooseVersionz(\d+ | [a-z]+ | \.)Nc                 8    |r|                      |           d S d S r   r   r	   s     r   r   zLooseVersion.__init__0  r   r   c                     || _         d | j                            |          D             }t          |          D ](\  }}	 t	          |          ||<   # t
          $ r Y %w xY w|| _        d S )Nc                 "    g | ]}|r|d k    
|S )rB   r+   ).0xs     r   
<listcomp>z&LooseVersion.parse.<locals>.<listcomp>:  s0     1 1 1A!"1'(Cxx '/xxr   )r   component_resplit	enumerater:   r6   r;   )r
   r   
componentsiobjs        r   r   zLooseVersion.parse5  s     1 1!2!8!8!A!A 1 1 1

++ 	 	FAs #C
1    "s   A
A! A!c                     | j         S r   )r   r   s    r   rD   zLooseVersion.__str__E  s
    |r   c                 &    dt          |           z  S )NzLooseVersion ('%s'))r   r   s    r   r   zLooseVersion.__repr__I  s    $s4yy00r   c                     t          |t                    rt          |          }nt          |t                    st          S | j        |j        k    rdS | j        |j        k     rdS | j        |j        k    rdS d S )Nr   rF   r/   )rG   r   rN   r   r;   rH   s     r   r   zLooseVersion._cmpM  s    eS!! 	" ''EEE<00 	"!!<5=((1<%-''2<%-''1 ('r   r   )r   r)   r*   rI   rJ   rK   rU   r   r   rD   r   r   r+   r   r   rN   rN     s        > 2:4bjAAL       
" " "   1 1 1    r   rN   )rI   r   r-   rN   r+   r   r   <module>r^      s   & 
			* * * * * * * *|k+ k+ k+ k+ k+W k+ k+ k+`K K K K KG K K K K Kr   