
    eXf\                        d dl Z d dlZd dlZd dlmZmZmZ d dl	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mZ ddlmZmZmZ  G d de          Z eej        ej        z             Z ed	                                           Z! ed
                                           Z" ed                                           Z# ed                                           Z$ ed                                           Z% ed                                           Z& ed                                           Z' ed          Z(e ee(          ez   z  Z) e
e ee)          z             Z* e*d          Z+e*Z,  ed          d          Z-e'e-z   Z.e, ee%e,z             z   Z/ e! ee/          z   e"z   d          Z0 eej1        e j2        e j3        z            Z4 eej1        e j2        e j3        z            Z5e4e5z  Z6  e
e6 ee%e6z             z   dd          d          Z7 ee#e7z   e$z   e7z            Z8e89                    d              ee8          d          Z:e:9                    d              e e                      d          Z ej9        d            e&Z;e;ez   Z<e: ee<          z   Z=e. ee<          z   Z>e+ ee0          z   e>e=z  z   Z?ee?z   ez   Z@e@A                    d            G d d          ZBdS )     N)ListOptionalSet)
CombineLiteralr   ParseExceptionRegexWord
ZeroOrMoreoriginalTextFor	stringEndstringStart   )MARKER_EXPRMarker)LegacySpecifier	SpecifierSpecifierSetc                       e Zd ZdZdS )InvalidRequirementzJ
    An invalid requirement was found, users should refer to PEP 508.
    N)__name__
__module____qualname____doc__     b/var/www/html/Qu*py/bism/lib/python3.11/site-packages/setuptools/_vendor/packaging/requirements.pyr   r      s           r   r   [](),;@z-_.namez[^ ]+urlextrasF)
joinStringadjacent	_raw_specc                     |j         pdS )N )r*   slts      r   <lambda>r1   @   s    Q[->B r   	specifierc                     |d         S )Nr   r   r-   s      r   r1   r1   C   s
    AaD r   markerc                 D    t          | |j        |j                           S )N)r   _original_start_original_endr-   s      r   r1   r1   G   s    F1Q.@ABB r   zx[]c                   :    e Zd ZdZdeddfdZdefdZdefdZdS )RequirementzParse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.
    requirement_stringreturnNc                    	 t                               |          }nA# t          $ r4}t          d||j        |j        dz            d|j                   d }~ww xY w|j        | _        |j        rt          j	        
                    |j                  }|j        dk    r8t          j	                            |          |j        k    rt          d          n3|j        r|j        r|j        s|j        st          d|j                   |j        | _        nd | _        t          |j        r|j                                        ng           | _        t#          |j                  | _        |j        r|j        nd | _        d S )NzParse error at "   z": filezInvalid URL givenzInvalid URL: )REQUIREMENTparseStringr   r   locmsgr%   r&   urllibparseurlparsescheme
urlunparsenetlocsetr'   asListr   r2   r4   )selfr:   reqe
parsed_urls        r   __init__zRequirement.__init__d   s   	))*<==CC 	 	 	$W$6ququqy7H$IWWPQPUWW  	
 	7 	..sw77J F**<**:66#'AA,-@AAA B ' DJ,= D%D.8.?D ))B)B)BCCC'*wDHHDH #3:$MCJ$5$5$7$7$72 N N'3CM'B'B7:z)Kts    
A/AAc                    | j         g}| j        r@d                    t          | j                            }|                    d| d           | j        r'|                    t          | j                             | j        r9|                    d| j                    | j        r|                    d           | j        r|                    d| j                    d                    |          S )Nr"   r   r   z@  z; r,   )	r%   r'   joinsortedappendr2   strr&   r4   )rK   partsformatted_extrass      r   __str__zRequirement.__str__}   s     I;; 	2"xxt{(;(;<<LL0-000111> 	.LLT^,,---8 	"LLdh))){ "S!!!; 	-LL+dk++,,,wwu~~r   c                     d|  dS )Nz<Requirement('z')>r   )rK   s    r   __repr__zRequirement.__repr__   s    )))))r   )r   r   r   r   rU   rO   rX   rZ   r   r   r   r9   r9   W   s|         L3 L4 L L L L2    (*# * * * * * *r   r9   )Crestringurllib.parserC   typingr   r   	TOptionalr   setuptools.extern.pyparsingr   r   Lr   r	   r
   r   r   r   r   markersr   r   
specifiersr   r   r   
ValueErrorr   ascii_lettersdigitsALPHANUMsuppressLBRACKETRBRACKETLPARENRPARENCOMMA	SEMICOLONATPUNCTUATIONIDENTIFIER_END
IDENTIFIERNAMEEXTRAURIURLEXTRAS_LISTEXTRAS
_regex_strVERBOSE
IGNORECASEVERSION_PEP440VERSION_LEGACYVERSION_ONEVERSION_MANY_VERSION_SPECsetParseActionVERSION_SPECMARKER_SEPARATORMARKERVERSION_AND_MARKERURL_AND_MARKERNAMED_REQUIREMENTr?   r@   r9   r   r   r   <module>r      sj  
 
			      3 3 3 3 3 3 3 3 3 3                        ) ( ( ( ( ( ( ( @ @ @ @ @ @ @ @ @ @        4$v}4551S66??1S66??	
3			
3			#AcFFOO	QsVV__d5kkZZ44x?@WX

> : ::;;
z&eeHooe3hjj///
5(XXk**
*X
5x	@	@y+RZ"--GHH12:3MNN~-ww**U[0111cE    &</&8LHII   >> ? ? ?-}--k::   00 1 1 1,ookkmm,,X66  BB    	K	'!HHV$4$44 xx'''88F+++~@R/RS --	9      ;* ;* ;* ;* ;* ;* ;* ;* ;* ;*r   