Ë
    GU h/  ã            	      ó\  — U d dl mZ d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
mZmZmZ ddlmZmZmZmZmZ ddlmZ ddlmZ ddlmZmZ dd	lmZ g d
¢Ze	eeeee   f   gef   Z e
d   Z!ddhZ" G d„ de#«      Z$ G d„ de#«      Z% G d„ de#«      Z& G d„ de«      Z'd%d„Z(	 d&	 	 	 	 	 d'd„Z)d„ d„ ejT                  ejV                  ejX                  ejZ                  ej\                  ej^                  dœZ0de1d<   d(d„Z2	 	 	 	 	 	 	 	 d)d„Z3	 	 	 	 	 	 d*d„Z4d+d „Z5d,d!„Z6 G d"„ d#«      Z7	 	 	 	 d-d$„Z8y).é    )ÚannotationsN)ÚAbstractSetÚAnyÚCallableÚLiteralÚ	TypedDictÚUnionÚcasté   )Ú
MarkerAtomÚ
MarkerListÚOpÚValueÚVariable)Úparse_marker)ÚParserSyntaxError)ÚInvalidSpecifierÚ	Specifier)Úcanonicalize_name)ÚEvaluateContextÚInvalidMarkerÚMarkerÚUndefinedComparisonÚUndefinedEnvironmentNameÚdefault_environment)ÚmetadataÚ	lock_fileÚrequirementÚextrasÚdependency_groupsc                  ó   — e Zd ZdZy)r   zE
    An invalid marker was found, users should refer to PEP 508.
    N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úI/var/www/timesheet/venv/lib/python3.12/site-packages/packaging/markers.pyr   r   !   ó   „ òr(   r   c                  ó   — e Zd ZdZy)r   zP
    An invalid operation was attempted on a value that doesn't support it.
    Nr"   r'   r(   r)   r   r   '   r*   r(   r   c                  ó   — e Zd ZdZy)r   z\
    A name was attempted to be used that does not exist inside of the
    environment.
    Nr"   r'   r(   r)   r   r   -   s   „ òr(   r   c                  ó�   — e Zd ZU ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded	<   	 ded
<   	 ded<   	 ded<   y)ÚEnvironmentÚstrÚimplementation_nameÚimplementation_versionÚos_nameÚplatform_machineÚplatform_releaseÚplatform_systemÚplatform_versionÚpython_full_versionÚplatform_python_implementationÚpython_versionÚsys_platformN)r#   r$   r%   Ú__annotations__r'   r(   r)   r.   r.   4   s†   … ØÓØ>àÓðð
 ƒLðð
 Óðð Óðð Óðð Óðð Óðð %(Ó'ðð ÓØ9àÓðr(   r.   c                óL  — t        | d   t        «      r�| d   \  }}}t        |t        «      r0|j                  dk(  r!t	        |j                  «      }t        |«      }n?t        |t        «      r/|j                  dk(  r t	        |j                  «      }t        |«      }|||f| d<   | S )z!
    Normalize extra values.
    r   Úextra)Ú
isinstanceÚtupler   Úvaluer   r   )ÚresultsÚlhsÚopÚrhsÚnormalized_extras        r)   Ú_normalize_extra_valuesrF   |   s“   € ô �'˜!‘*œeÔ$Ø˜q‘z‰ˆˆR�Ü�cœ8Ô$¨¯©°gÒ)=Ü0°·±Ó;ÐÜÐ(Ó)‰CÜ˜œXÔ&¨3¯9©9¸Ò+?Ü0°·±Ó;ÐÜÐ(Ó)ˆCØ˜"˜c�\ˆ�‰
Ø€Nr(   c                óÔ  — t        | t        t        t        f«      sJ ‚t        | t        «      r5t	        | «      dk(  r't        | d   t        t        f«      rt        | d   «      S t        | t        «      r3d„ | D «       }|rdj                  |«      S ddj                  |«      z   dz   S t        | t        «      r-dj                  | D �cg c]  }|j                  «       ‘Œ c}«      S | S c c}w )Nr   r   c              3  ó6   K  — | ]  }t        |d ¬«      –— Œ y­w)F)ÚfirstN)Ú_format_marker)Ú.0Úms     r)   ú	<genexpr>z!_format_marker.<locals>.<genexpr>�   s   è ø€ Ò@°A” ¨×/Ð/Ñ@ùs   ‚ú ú(ú))r>   Úlistr?   r/   ÚlenrJ   ÚjoinÚ	serialize)ÚmarkerrI   ÚinnerrL   s       r)   rJ   rJ   Œ   sÅ   € ô �fœt¤U¬CÐ0Ô1Ð1Ð1ô 	�6œ4Ô Ü�‹K˜1ÒÜ�v˜a‘y¤4¬ -Ô0ä˜f Q™iÓ(Ð(ä�&œ$ÔÙ@¸Ô@ˆÙØ—8‘8˜E“?Ð"à˜Ÿ™ %›Ñ(¨3Ñ.Ð.Ü	�FœEÔ	"Ø�x‰x°Ö7¨1˜Ÿ™�Ò7Ó8Ð8àˆùò 8s   ÃC%c                ó
   — | |v S ©Nr'   ©rB   rD   s     r)   ú<lambda>rZ   ©   s
   € ˜3 #˜:€ r(   c                ó
   — | |vS rX   r'   rY   s     r)   rZ   rZ   ª   s
   € ˜s¨#˜~€ r(   )Úinznot inú<z<=z==z!=z>=ú>zdict[str, Operator]Ú
_operatorsc           	     óB  — t        |t        «      r>	 t        dj                  |j	                  «       |g«      «      }|j                  | d¬«      S t        j                  |j	                  «       «      }|€t        d|›d| ›d|›d�«      ‚ || |«      S # t        $ r Y ŒNw xY w)NÚ T)Úprereleasesz
Undefined z on z and ú.)
r>   r/   r   rS   rT   Úcontainsr   r_   Úgetr   )rB   rC   rD   ÚspecÚopers        r)   Ú_eval_oprh   ´   s�   € Ü�#”sÔð	8Ü˜RŸW™W b§l¡l£n°cÐ%:Ó;Ó<ˆDð —=‘= °$�=Ó7Ð7ä&ŸN™N¨2¯<©<«>Ó:€DØ€|Ü! J¨r¨f°D¸¸¸uÀSÀGÈ1Ð"MÓNÐNá��S‹>Ðøô  ò 	Ùð	ús   ’*B Â	BÂBc                ó  — |dk(  r-t        |t        «      sJ d«       ‚t        | «      t        |«      fS |t        v rJt        |t        «      rt        | «      t        |«      fS t        | «      |D �ch c]  }t        |«      ’Œ c}fS | |fS c c}w )Nr=   zextra value must be a string)r>   r/   r   ÚMARKERS_ALLOWING_SET)rB   rD   ÚkeyÚvs       r)   Ú
_normalizerm   Ä   s’   € ð ˆg‚~Ü˜#œsÔ#ÐCÐ%CÓCÐ#Ü! #Ó&Ô(9¸#Ó(>Ð?Ð?Ø
Ô"Ñ"Ü�cœ3ÔÜ% cÓ*Ô,=¸cÓ,BÐCÐCä% cÓ*È3Ö,OÀaÔ->¸qÕ-AÒ,OÐPÐPð �ˆ8€Oùò -Ps   Á/B	c                ód  — g g}| D �]  }t        |t        t        t        f«      sJ ‚t        |t        «      r|d   j	                  t        ||«      «       ŒPt        |t        «      r™|\  }}}t        |t        «      r|j                  }||   }|j                  }	n|j                  }|j                  }||   }	t        |t        «      sJ d«       ‚t        ||	|¬«      \  }}	|d   j	                  t        |||	«      «       Œù|dv sJ ‚|dk(  s�Œ|j	                  g «       �Œ t        d„ |D «       «      S )Néÿÿÿÿzlhs must be a string)rk   )ÚandÚorrq   c              3  ó2   K  — | ]  }t        |«      –— Œ y ­wrX   )Úall)rK   Úitems     r)   rM   z$_evaluate_markers.<locals>.<genexpr>õ   s   è ø€ Ò,˜TŒs�4�yÑ,ùs   ‚)r>   rQ   r?   r/   ÚappendÚ_evaluate_markersr   r@   rm   rh   Úany)
ÚmarkersÚenvironmentÚgroupsrU   rB   rC   rD   Úenvironment_keyÚ	lhs_valueÚ	rhs_values
             r)   rv   rv   Ø   s$  € ð !#˜t€Fàó "ˆÜ˜&¤4¬´Ð"4Ô5Ð5Ð5ä�fœdÔ#Ø�2‰J×ÑÔ/°¸ÓDÕEÜ˜¤Ô&Ø!‰LˆC��Sä˜#œxÔ(Ø"%§)¡)�Ø'¨Ñ8�	ØŸI™I‘	àŸI™I�	Ø"%§)¡)�Ø'¨Ñ8�	Ü˜i¬Ô-ÐEÐ/EÓEÐ-Ü#-¨i¸ÈÔ#XÑ ˆI�yØ�2‰J×Ñœh y°"°iÓ@ÕAà˜]Ñ*Ð*Ð*Ø˜Œ~Ø—‘˜bÖ!ð-"ô0 Ñ, VÔ,Ó,Ð,r(   c                ó´   — | j                   › d| j                  › d| j                  › �}| j                  }|dk7  r||d   t	        | j
                  «      z   z  }|S )Nrc   Úfinalr   )ÚmajorÚminorÚmicroÚreleaselevelr/   Úserial)ÚinfoÚversionÚkinds      r)   Úformat_full_versionrˆ   ø   sW   € Ø—‘�˜A˜dŸj™j˜\¨¨4¯:©:¨,Ð7€GØ×Ñ€DØˆw‚Ø�4˜‘7œS §¡Ó-Ñ-Ñ-ˆØ€Nr(   c                 óð  — t        t        j                  j                  «      } t        j                  j                  }|| t
        j                  t        j                  «       t        j                  «       t        j                  «       t        j                  «       t        j                  «       t        j                  «       dj                  t        j                  «       d d «      t        j                  dœS )Nrc   é   )r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   )rˆ   ÚsysÚimplementationr†   ÚnameÚosÚplatformÚmachineÚreleaseÚsystemr9   Úpython_implementationrS   Úpython_version_tuple)Úiverr0   s     r)   r   r      sª   € Üœs×1Ñ1×9Ñ9Ó:€DÜ×,Ñ,×1Ñ1Ðà2Ø"&Ü—7‘7Ü$×,Ñ,Ó.Ü$×,Ñ,Ó.Ü#Ÿ?™?Ó,Ü$×,Ñ,Ó.Ü'×6Ñ6Ó8Ü*2×*HÑ*HÓ*JØŸ(™(¤8×#@Ñ#@Ó#BÀ2ÀAÐ#FÓGÜŸ™ñð r(   c                  óL   — e Zd Zdd„Zd	d„Zd	d„Zd
d„Zdd„Z	 	 d	 	 	 	 	 dd„Zy)r   c                ó„   — 	 t        t        |«      «      | _        y # t        $ r}t	        t        |«      «      |‚d }~ww xY wrX   )rF   Ú_parse_markerÚ_markersr   r   r/   )ÚselfrU   Úes      r)   Ú__init__zMarker.__init__  s;   € ð	/Ü3´MÀ&Ó4IÓJˆD�Møô" !ò 	/Ü¤ A£Ó'¨QÐ.ûð	/ús   ‚ œ	?¥:º?c                ó,   — t        | j                  «      S rX   )rJ   r™   ©rš   s    r)   Ú__str__zMarker.__str__,  s   € Ü˜dŸm™mÓ,Ð,r(   c                ó   — d| › d�S )Nz	<Marker('z')>r'   rž   s    r)   Ú__repr__zMarker.__repr__/  s   € Ø˜4˜& Ð$Ð$r(   c                óV   — t        | j                  j                  t        | «      f«      S rX   )ÚhashÚ	__class__r#   r/   rž   s    r)   Ú__hash__zMarker.__hash__2  s    € Ü�T—^‘^×,Ñ,¬c°$«iÐ8Ó9Ð9r(   c                ó\   — t        |t        «      st        S t        | «      t        |«      k(  S rX   )r>   r   ÚNotImplementedr/   )rš   Úothers     r)   Ú__eq__zMarker.__eq__5  s%   € Ü˜%¤Ô(Ü!Ð!ä�4‹yœC ›JÑ&Ð&r(   Nc                ó  — t        dt        «       «      }|dk(  r$|j                  t        «       t        «       ¬«       n
|dk(  rd|d<   |�|j                  |«       d|v r
|d   €d|d<   t	        | j
                  t        |«      «      S )a?  Evaluate a marker.

        Return the boolean from evaluating the given marker against the
        environment. environment is an optional argument to override all or
        part of the determined environment. The *context* parameter specifies what
        context the markers are being evaluated for, which influences what markers
        are considered valid. Acceptable values are "metadata" (for core metadata;
        default), "lock_file", and "requirement" (i.e. all other situations).

        The environment is determined from the current Python process.
        ú!dict[str, str | AbstractSet[str]]r   )r   r    r   ra   r=   )r
   r   ÚupdateÚ	frozensetrv   r™   Ú_repair_python_full_version)rš   ry   ÚcontextÚcurrent_environments       r)   ÚevaluatezMarker.evaluate;  s¥   € ô  #Ø/Ô1DÓ1Fó
Ðð �kÒ!Ø×&Ñ&Ü “{´i³kð 'õ ð ˜
Ò"Ø+-Ð Ñ(ØÐ"Ø×&Ñ& {Ô3ð Ð-Ñ-Ð2EÀgÑ2NÐ2VØ/1Ð# GÑ,ä Ø�M‰MÔ6Ð7JÓKó
ð 	
r(   )rU   r/   ÚreturnÚNone)r²   r/   )r²   Úint)r¨   r   r²   Úbool)Nr   )ry   zdict[str, str] | Noner¯   r   r²   rµ   )	r#   r$   r%   rœ   rŸ   r¡   r¥   r©   r±   r'   r(   r)   r   r     sD   „ ó/ó2-ó%ó:ó'ð .2Ø#-ð"
à*ð"
ð !ð"
ð 
ô	"
r(   r   c                ó^   — t        t        | d   «      }|j                  d«      r|› d�| d<   | S )zƒ
    Work around platform.python_version() returning something that is not PEP 440
    compliant for non-tagged Python builds.
    r7   ú+Úlocal)r
   r/   Úendswith)Úenvr7   s     r)   r®   r®   `  s=   € ô œs CÐ(=Ñ$>Ó?ÐØ×#Ñ# CÔ(Ø(;Ð'<¸EÐ%BˆÐ!Ñ"Ø€Jr(   )rA   r   r²   r   )T)rU   zlist[str] | MarkerAtom | strrI   zbool | Noner²   r/   )rB   r/   rC   r   rD   ústr | AbstractSet[str]r²   rµ   )rB   r/   rD   r»   rk   r/   r²   z"tuple[str, str | AbstractSet[str]])rx   r   ry   r«   r²   rµ   )r…   zsys._version_infor²   r/   )r²   r.   )rº   r«   r²   r«   )9Ú
__future__r   ÚoperatorrŽ   r�   r‹   Útypingr   r   r   r   r   r	   r
   Ú_parserr   r   r   r   r   r   r˜   Ú
_tokenizerr   Ú
specifiersr   r   Úutilsr   Ú__all__r/   rµ   ÚOperatorr   rj   Ú
ValueErrorr   r   r   r.   rF   rJ   ÚltÚleÚeqÚneÚgeÚgtr_   r;   rh   rm   rv   rˆ   r   r   r®   r'   r(   r)   ú<module>rÌ      s…  ðö
 #ã Û 	Û Û 
ß N× NÑ Nç @Õ @Ý 2Ý )ß 3Ý $ò€ð �S˜%  [°Ñ%5Ð 5Ñ6Ð7¸Ð=Ñ>€ØÐ@ÑA€Ø Ð"5Ð6Ð ô�Jô ô˜*ô ô˜zô ôE�)ô EóPð" @DðØ(ðØ1<ðàóñ: &Ù-Ø	�‰Ø
�+‰+Ø
�+‰+Ø
�+‰+Ø
�+‰+Ø	�‰ñ	#€
Ðó 	óð Ø	ðØ)ðØ03ðà'óð(-Øð-Ø&Gð-à	ó-ó@ó÷$K
ñ K
ð\
Ø	*ð
à&ô
r(   