ó
    Ñ]j9  ã                  ó.  • S SK Jr  S SKrS SKrS SKrS SKJr  S SKJr  S SKJ	r	  S SKJ
r
  \R                  " SS5      r\R                  r " S	 S
\	5      r\\
\\4   S4   r\
\\\4   r\\\\4   S4   rSS jr\R*                   S     SS jj5       rg)é    )ÚannotationsN)Ú	Generator)ÚMutableMapping)Ú
NamedTuple)ÚUnionÚ_UnsetÚUNSETc                  ó.   • \ rS rSr% S\S'   SrS\S'   Srg)ÚVaré   ÚstrÚnameÚ Údefault© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__r   Ú__static_attributes__r   ó    ÚR/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pre_commit/envcontext.pyr   r      s   ‡ Ø
ƒIØ€GˆSÖr   r   .c                ó:   ^• SR                  U4S jU  5       5      $ )Nr   c              3  óž   >#   • U  HB  n[        U[        5      (       a&  TR                  UR                  UR                  5      OUv •  MD     g 7f©N)Ú
isinstancer   Úgetr   r   )Ú.0ÚpartÚenvs     €r   Ú	<genexpr>Úformat_env.<locals>.<genexpr>   s<   øé € ð âˆDô -7°t¼S×,AÑ,Aˆ�‰�—	‘	˜4Ÿ<™<Ô(ÀtÔKÚùs   ƒA
A)Újoin)Úpartsr!   s    `r   Ú
format_envr&      s!   ø€ Ø�7‰7ô áóó ð r   c              #  ó„  #   • Uc  [         R                  OUn[        U5      nU  HJ  u  pEU[        L a  UR	                  US5        M"  [        U[        5      (       a  [        XS5      X$'   MF  XRU'   ML      Sv •  UR                  5         UR                  U5        g! UR                  5         UR                  U5        f = f7f)a…  In this context, `os.environ` is modified according to `patch`.

`patch` is an iterable of 2-tuples (key, value):
    `key`: string
    `value`:
        - string: `environ[key] == value` inside the context.
        - UNSET: `key not in environ` inside the context.
        - template: A template is a tuple of strings and Var which will be
          replaced with the previous environment
N)
ÚosÚenvironÚdictr	   Úpopr   Útupler&   ÚclearÚupdate)ÚpatchÚ_envr!   ÚbeforeÚkÚvs         r   Ú
envcontextr4       s•   é € ð ™Œ"�*Š*¨$€CÜ�#‹Y€Fã‰ˆØ”Š:Ø�G‰G�A�tÖÜ˜œ5×!Ñ!Ü Ó*ˆC‹Fà�‹Fñ ðÛà�	‰	ŒØ�
‰
�6Õøð 	�	‰	ŒØ�
‰
�6Õüs   ‚A1C Á4B Á8"C Â#B=Â=C )r%   ÚSubstitutionTr!   zMutableMapping[str, str]Úreturnr   r   )r/   ÚPatchesTr0   zMutableMapping[str, str] | Noner6   zGenerator[None])Ú
__future__r   Ú
contextlibÚenumr(   Úcollections.abcr   r   Útypingr   r   ÚEnumr   r	   r   r,   r   r5   ÚValueTr7   r&   Úcontextmanagerr4   r   r   r   Ú<module>r@      sÂ   ðÝ "ã Û Û 	Ý %Ý *Ý Ý à	�Š�8˜WÓ	%€Ø�‰€ôˆ*ô ð
 �e˜C ˜H‘o sÐ*Ñ+€Ø	ˆs�F˜MÐ)Ñ	*€Ø��s˜F�{Ñ# SÐ(Ñ)€ôð ×Ñð 15ðØðà-ðð ôó ñr   