+
    
�iŒ  ã                  óì   € R t ^ RIHt ^ RIt^ RIHt ^ RIHt ^ RIH	t	 ^ RI
Ht ^ RIHt ^ RIHt ^R	IHt ^R
IHt ]! R4      t]]R3,          tR R ltR R ltR R ltR tR tR tR tR tR tR# )aS  Helper code used to generate ``requires.txt`` files in the egg-info directory.

The ``requires.txt`` file has an specific format:
    - Environment markers need to be part of the section headers and
      should not be part of the requirement spec itself.

See https://setuptools.pypa.io/en/latest/deprecated/python_eggs.html#requires-txt
)ÚannotationsN)Údefaultdict)ÚMapping)Úfilterfalse)ÚTypeVar)Úyield_lines)ÚRequirement)Ú_reqs)Ú
_StrOrIterÚ_Tc               ó$   € V ^8„  d   QhRRRRRR/# )é   Úinstall_requiresr
   Úextras_requireúMapping[str, _StrOrIter]Úreturnú&tuple[list[str], dict[str, list[str]]]© )Úformats   "ÚA/usr/lib/python3/dist-packages/setuptools/command/_requirestxt.pyÚ__annotate__r      s)   € ÷ Hñ HØ ðHØ2JðHà+ñHó    c                ó.   € \        V4      p\        W4      # )z‡Given values for ``install_requires`` and ``extras_require``
create modified versions in a way that can be written in ``requires.txt``
)Ú_convert_extras_requirementsÚ"_move_install_requirements_markers)r   r   Úextrass   && r   Ú_preparer      s   € ô *¨.Ó9€FÜ-Ð.>ÓGÐGr   c               ó    € V ^8„  d   QhRRRR/# )r   r   r   r   z'defaultdict[str, _Ordered[Requirement]]r   )r   s   "r   r   r   '   s   € ÷ ñ Ø,ðà,ñr   c                ó(  € \         \        \        \        ,          3,          ! \        4      pV P                  4        FQ  w  r#W,           \        P                  ! V4       F*  pW\        V4      ,           ,          P                  V4       K,  	  KS  	  V# )z�
Convert requirements in `extras_require` of the form
`"extra": ["barbazquux; {marker}"]` to
`"extra:{marker}": ["barbazquux"]`.
)
r   ÚstrÚ_Orderedr   ÚdictÚitemsr	   ÚparseÚ_suffix_forÚ
setdefault)r   ÚoutputÚsectionÚvÚrs   &    r   r   r   '   sj   € ô œœh¤{Õ3Ð3Ö4´TÓ:€FØ$×*Ñ*Ö,‰
ˆàŽÜ—’˜Q–ˆAØœ[¨›^Õ+Õ,×7Ñ7¸Ö:ó  ñ -ð €Mr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r
   r   z#Mapping[str, _Ordered[Requirement]]r   r   r   )r   s   "r   r   r   9   s$   € ÷ 4ñ 4Ø ð4Ø2Uð4à+ñ4r   c                ón  € \        \        P                  ! V 4      4      p\        \        V4      p\        \        V4      p\        \        \        V4      4      pV F5  pVR\        VP                  4      ,           ,          P                  V4       K7  	  \        R VP                  4        4       4      pWW3# )a  
The ``requires.txt`` file has an specific format:
    - Environment markers need to be part of the section headers and
      should not be part of the requirement spec itself.

Move requirements in ``install_requires`` that are using environment
markers ``extras_require``.
Ú:c              3  ó�   "  € T F<  w  rV\        \        P                  R  \        \        V4       4       4      4      3x € K>  	  R# 5i)c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5i©N)r   )Ú.0r)   s   & r   Ú	<genexpr>Ú?_move_install_requirements_markers.<locals>.<genexpr>.<genexpr>R   s   é € ÐBÑ/A¨!œs 1Ÿv˜vÓ/Aùs   ‚N)Úlistr!   ÚfromkeysÚmapÚ
_clean_req)r0   Úkr(   s   &  r   r1   Ú5_move_install_requirements_markers.<locals>.<genexpr>P   s;   é € ð ñ +‰DˆAð 
ŒD”—‘ÑB¬s´:¸qÔ/AÓBÓBÓCÕDÛ*ùs   ‚AA)r3   r	   r#   ÚfilterÚ
_no_markerr   r5   r   Úmarkerr%   r!   r"   )r   r   Ú	inst_reqsÚsimple_reqsÚcomplex_reqsÚsimple_install_requiresr)   Úexpanded_extrass   &&      r   r   r   9   s›   € ô ”U—[’[Ð!1Ó2Ó3€IÜœ YÓ/€KÜœz¨9Ó5€LÜ"¤3¤s¨KÓ#8Ó9ÐãˆØ�sœS §¡›]Õ*Õ+×6Ñ6°qÖ9ñ ô ñ ð #×(Ñ(Ô*óó €Oð #Ð3Ð3r   c                ób   € V P                   '       d   R\        V P                   4      ,           # R# )z;Return the 'extras_require' suffix for a given requirement.r,   Ú )r;   r   ©Úreqs   &r   r$   r$   Y   s"   € à$'§J§J Jˆ3”�S—Z‘Z“Õ Ð6°BÐ6r   c                ó<   € \        \        V 4      4      pRVn        V# )z=Given a Requirement, remove environment markers and return itN)r   r   r;   )rD   r)   s   & r   r6   r6   ^   s   € ä”C˜“HÓ€AØ€A„HØ€Hr   c                ó$   € V P                   '       * # r/   )r;   rC   s   &r   r:   r:   e   s   € Ø�z‰zŒ>Ðr   c                ó‚   € \        T;'       g    R4      pR  p\        V\        V4      4      pV P                  V4       R# )c                ó   € V R ,           # )Ú
r   )Úlines   &r   Ú	append_crÚ&_write_requirements.<locals>.append_crl   s   € Ø�d�{Ðr   Nr   )r   r5   ÚsortedÚ
writelines)ÚstreamÚreqsÚlinesrK   s   &&  r   Ú_write_requirementsrR   i   s7   € Ü˜Ÿ
˜
 Ó#€Eòô �	œ6 %›=Ó)€EØ
×Ñ�eÖr   c           	     ó¤  € V P                   p\        P                  ! 4       p\        VP                  ;'       g    RVP
                  ;'       g    / 4      w  rV\        WE4       \        V4       F>  pVP                  R P                  ! R/ \        4       B 4       \        WFV,          4       K@  	  V P                  RW$P                  4       4       R# )z
[{extra}]
ÚrequirementsNr   )ÚdistributionÚioÚStringIOr   r   r   rR   rM   Úwriter   ÚvarsÚwrite_or_delete_fileÚgetvalue)ÚcmdÚbasenameÚfilenameÚdistÚdatar   r   Úextras   &&&     r   Úwrite_requirementsrb   s   s¡   € Ø×Ñ€DÜ�;Š;‹=€DÜ'/Ø×Ñ×#Ð#  T×%8Ñ%8×%>Ð%>¸Bó(Ñ$Ðô ˜Ô/Ü˜Ö'ˆØ�
‰
�?×)Ò)Ñ3¬D«FÑ3Ô4Ü˜D°Õ"7Ö8ñ (ð ×Ñ˜^¨X·}±}³ÖGr   c                ó®   € \         P                  ! 4       p\        W0P                  P                  4       V P                  R W#P                  4       4       R# )zsetup-requirementsN)rV   rW   rR   rU   Úsetup_requiresrZ   r[   )r\   r]   r^   r`   s   &&& r   Úwrite_setup_requirementsre   €   s8   € Ü�;Š;‹=€DÜ˜×.Ñ.×=Ñ=Ô>Ø×ÑÐ1°8¿]¹]»_ÖMr   )Ú__doc__Ú
__future__r   rV   Úcollectionsr   Úcollections.abcr   Ú	itertoolsr   Útypingr   Újaraco.textr   Úpackaging.requirementsr   rB   r	   r
   r   r!   r    r   r   r   r$   r6   r:   rR   rb   re   r   r   r   Ú<module>rn      ss   ðñõ #ã 	Ý #Ý #Ý !Ý å #Ý .å Ý ñ ˆTƒ]€Ø��D��>€õHõõ$4ò@7ò
òòò
HôNr   