
    vhd              	          U d dl Z d dlZd dlZ e j                  dd      Zi Zeeef   e	d<   ej                  j                  dd      Z e j                  ej                        Zej!                  e       e j"                  e j$                  e j&                  e j(                  e j(                  e j*                  e j,                  e j.                  dZd	d	d
ddd d dZddedz  fdZdedz  ddfdZ e j8                  d      Z G d de j<                        Z e j                  ej                        Z e jC                  e j,                         e j!                  e       e jE                   e              g Z#d Z$d Z%dedz  fdZ&y)    Nz0{levelname}:{asctime}:{name}:{lineno}: {message}{)style_logging_level_setTF_CPP_MIN_LOG_LEVEL1)CRITICALFATALERRORWARNWARNINGINFODEBUGNOTSET         )r   r	   r
   r   r   r   r   logging_levelc           	          | dv rt         t        j                  d<   y | t        vr-t	        d|  dt        t        j                                d      t        t        |          t        j                  d<   y )N)Nr   r   zAttempting to set log level "z$" which isn't one of the supported: .)_default_TF_CPP_MIN_LOG_LEVELosenviron_tf_cpp_map
ValueErrorlistkeysstr)r   s    R/opt/face_recognition/venv/lib/python3.12/site-packages/jax/_src/logging_config.py_set_TF_CPP_MIN_LOG_LEVELr   3   sw    && *GBJJ%& K'7 G 0 0 234A7 8 8 *-[-G)HBJJ%&    returnc                    t         j                         D ]@  \  }}t        j                  |      }|j	                  t
               |j                  |       B t         j                          t        |        | y t        |    }t        j                  d      t        j                  d      g}|D ]E  }|j                  |       |j                  t
               |j                  t         |j                  <   G y )Njaxjaxlib)r   itemslogging	getLoggerremoveHandler_jax_logger_handlersetLevelclearr   _nameToLevel
addHandlerlevelname)r   logger_namer.   loggerlogging_level_numroot_loggerss         r   update_logging_level_globalr4   A   s    .446 k5{+F
,-
OOE M*
"=1 ##E*G,=,=h,GH, 3f
OO%&
)*&,llv{{#3r    r#   c                       e Zd Zd Zy)_DebugHandlerFilterc                 D    t         j                  t        j                  kD  S N)_jax_loggerr.   r&   r   )self_s     r   filterz_DebugHandlerFilter.filter[   s    w}},,r    N)__name__
__module____qualname__r<    r    r   r6   r6   Z   s    -r    r6   c                     t        j                  |       }t        j                  ||j                  f       |j                  t               |j                  t         j                         y)zMakes the specified logger log everything to stderr.

  Also adds more useful debug information to the log messages, e.g. the time.

  Args:
    logger_name: the name of the logger, e.g. "jax._src.xla_bridge".
  N)	r&   r'   _debug_enabled_loggersappendr.   r-   _debug_handlerr*   r   )r0   r1   s     r   _enable_debug_loggingrE   e   sI     [)& 67N#//'-- r    c                      t         D ]+  \  } }| j                  t               | j                  |       - t         j	                          y)zDisables all debug logging enabled via `enable_debug_logging`.

  The default logging behavior will still be in effect, i.e. WARNING and above
  will be logged to stderr without extra message formatting.
  N)rB   r(   rD   r*   r+   )r1   
prev_levels     r   _disable_all_debug_loggingrH   t   s@     3  fj
(
OOJ   r    module_names_strc                 d    t                | sy | j                  d      }|D ]  }t        |        y )N,)rH   splitrE   )rI   module_namesmodule_names      r   update_debug_log_modulesrO      s5    	
!'',,! 'k+&'r    r8   )'r&   r   sys	Formatterlogging_formatterr   dictr   int__annotations__r   getr   StreamHandlerstderrr)   setFormatterr   r	   r
   r   r   r   r   r,   r   r   r4   r'   r9   Filterr6   rD   r*   	addFilterrB   rE   rH   rO   r@   r    r   <module>r\      s    	 
 &G%%6cC  &( DcN ' "

/Es K +g++CJJ7      !2 3   ]]]]OOLL]]nn	 IS4Z I3sTz 3d 3.  g&-'.. - '&&szz2    &   - .   ,. / !
!'sTz 'r    