
    
3j	                         S SK r S SKJrJrJrJrJr  \" / SQ5      r\ R                  " S5      r
S\S\\\4   4S jrS\\\4   S\\\   \\   4   4S	 jrS
\\   S\\\   \\   4   4S jrg)    N)DictListOptionalTuplecast)sha1sha224sha384sha256sha512md5z"(?P<name>.+)\[(?P<extras>[^\]]+)\]fragment_stringreturnc                     U R                  S5      n  [        S U R                  S5       5       5      $ ! [         a    [        SU  35      ef = f)z;Takes a fragment string nd returns a dict of the components#c           	   3      #    U  H:  n[        [        [        [        4   [        UR	                  S 5      5      5      v   M<     g7f)=N)r   r   strtuplesplit).0key_value_strings     O/home/wildlama/miniconda3/lib/python3.13/site-packages/requirements/fragment.py	<genexpr>!parse_fragment.<locals>.<genexpr>"   s<      0. ScDsCx%0@0F0Fs0K*LMM.s   AA&zInvalid fragment string )lstripdictr   
ValueError)r   s    r   parse_fragmentr       sb    %,,S1OG 0#))#.0 0 	0 G3O3DEFFGs	    4 Adc                 r    U R                  5        H#  nUR                  5       [        ;   d  M  XU   4s  $    g)z=Returns the first matching hashlib name and value from a dict)NN)keyslowerHASH_ALGORITHMS)r!   keys     r   get_hash_infor'   (   s1    vvx99;/)#;      eggc                     U bj  [         R                  U 5      nUbR  UR                  S5      nUR                  S5      nX#R                  S5       Vs/ s H  oDR	                  5       PM     sn4$ U / 4$ s  snf )Nnameextras,)extras_require_searchsearchgroupr   strip)r)   matchr+   r,   extras        r   parse_extras_requirer4   1   so    
%,,S1;;v&D[[*F\\#5FG5FE++-5FGGG7N Hs   A2)retypingr   r   r   r   r   setr%   compiler.   r   r    r'   r4    r(   r   <module>r:      s   & 
 4 4 MN

#HI GC GDcN GT#s(^ hsmXc].J(K hsm hsmT#Y6N0O r(   