
    Ee                     x    d dl Z d dlZd dlmZ d dlmZmZmZmZ ddl	m
Z
 ddlmZ d ZddZd	 Zd
 Zd ZddZy)    N)memoizedproperty)ContextParameterLoaderPrimitiveParametercontext   )token_string)_debugc                     | j                   }t        t        dd       xs" t        j                  xs t
        j                  }	 t        |t        j                        }|r|d|z   z  }|S # t        $ r Y |S w xY w)Nchecked_prefix )
_old_user_agentgetattrr   r   target_prefixsysprefixr	   anaconda_anon_usage	Exception)ctxresultr   tokens       9lib/python3.12/site-packages/anaconda_anon_usage/patch.py_new_user_agentr      s{      F)40WG4I4IWSZZ VW%@%@AcEk!F M  Ms   $A) )	A65A6c                 F    | t         _        t        j                  | |       y N)r   r   _old_check_prefix)r   jsons     r   _new_check_prefixr      s    #Gfd+    c                 v    | d   }d|v rt        j                  dd|      }|| d<   t        j                  |       S )N
user_agentz aau/z ([a-z]/)([^ ]+)z \1.)resubr   _old_get_main_info_str)	info_dictua	ua_redacts      r   _new_get_main_info_strr(   "   sA    	<	 B"}FF.<	"+	,)))44r   c                      t        t        d      ry t        d       ddlm}  | j
                  t        _        t        | _        dt        _	        y )Nr   z.Applying anaconda_anon_usage cli.install patchr   )installT)
hasattrr   r
   	conda.clir*   check_prefixr   r   r   _aau_initialized)cli_installs    r   _patch_check_prefixr0   *   s:    w+,
;<0 + 8 8G0K#Gr   c                      t        t        d      ry t        d       ddlm}  | j
                  t        _        t        | _        y )Nr$   z-Applying anaconda_anon_usage conda info patchr   	main_info)r+   r   r
   r,   r3   get_main_info_strr$   r(   r2   s    r   _patch_conda_infor5   6   s2    w01
:;#%.%@%@G""8Ir   c                    t        t        dd       t        d       yt        d       t        j                  t        _        t        t              t        _        t        t        d            }|t        _
        t        xj                  |j                  d      fz  c_        d t        _        dt        _        | rt                t!                yt        d       t        j"                  fd}|t        _        y)	Nr.   z"anaconda_anon_usage already activeFz*Applying anaconda_anon_usage context patchTr   z/Deferring anaconda_anon_usage cli.install patchc                  T    t                t                t        _         | i | y r   )r5   r0   r   __init__)argskwargs_old__init__s     r   	_new_initzmain.<locals>._new_initg   s$    !+G$)&)r   )r   r   r
   r   r!   r   r   r   r   r   r   parameter_names	_set_namer   r.   r5   r0   r8   )plugin_paramr<   r;   s      @r   mainrA   A   s    w*D1=34
78 &00G */:G /56F"(G 0 01F GII "G  %G 	  	@A''	* %r   )F)r"   r   conda.auxlib.decoratorsr   conda.base.contextr   r   r   r   tokensr	   utilsr
   r   r   r(   r0   r5   rA    r   r   <module>rG      s:   
 
 
 4 T T   ,
5	$9.r   