+
    ¬žBi°  ã                   óÄ   € R t ^ RIt^ RIt^ RIHt  ^ RIHtHtHtH	t	 ^RIHt  ! R R]P                  4      tR tR t]R]3R	 l4       t]R
 4       tR#   ]
 d     L@i ; i)zB
Helper functionality for interoperability with stdlib `logging`.
N)Úcontextmanager)ÚIteratorÚListÚOptionalÚType)Útqdmc                   ó>   a a€ ] tR t^t o]3V 3R lltR tRtVtV ;t	# )Ú_TqdmLoggingHandlerc                ó0   <€ \         SV `  4        Wn        R # ©N)ÚsuperÚ__init__Ú
tqdm_class)Úselfr   Ú	__class__s   &&€Ú9/usr/lib/python3.14/site-packages/tqdm/contrib/logging.pyr   Ú_TqdmLoggingHandler.__init__   s   ø€ ô 	‰ÑÔØ$Žó    c                óê   €  V P                  V4      pV P                  P                  W P                  R 7       V P	                  4        R#   \
        \        3 d    h  T P                  T4        R# ; i))ÚfileN)Úformatr   ÚwriteÚstreamÚflushÚKeyboardInterruptÚ
SystemExitÚhandleError)r   ÚrecordÚmsgs   && r   ÚemitÚ_TqdmLoggingHandler.emit   s\   € ð	%Ø—+‘+˜fÓ%ˆCØO‰O×!Ñ! #¯K©KÐ!Ô8ØJ‰JŽLøÜ!¤:Ð.ô 	Øð	%Ø×Ñ˜V×$ús   ‚AA Á$A2)r   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ústd_tqdmr   r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   Ú__classdict__s   @@r   r	   r	      s   ù‡ € ð ÷%÷%ò %r   r	   c                 ó    € \        V \        P                  4      ;'       d.    V P                  \        P
                  \        P                  09   # r   )Ú
isinstanceÚloggingÚStreamHandlerr   ÚsysÚstdoutÚstderr)Úhandlers   &r   Ú_is_console_logging_handlerr2   #   s:   € Üw¤× 5Ñ 5Ó6÷ ;ð ;Ø—‘¤3§:¡:¬s¯z©zÐ":Ñ:ð<r   c                 óB   € V  F  p\        V4      '       g   K  Vu # 	  R # r   )r2   )Úhandlersr1   s   & r   Ú(_get_first_found_console_logging_handlerr5   (   s   € ÛˆÜ& w×/Ô/ØŠNó r   c              #  ó&  "  € V f   \         P                  .p V  Uu. uF  q"P                  NK  	  pp V  F  p\        V4      p\	        VP                  4      pVe-   VP                  VP                  4       VP                  Vn        VP                   Uu. uF  p\        V4      '       d   K  VNK  	  upV.,           Vn        K‘  	  Rx € \        W4       F  w  r'Wrn        K  	  R# u upi u upi   \        Y4       F  w  r'Yrn        K  	  i ; i5i)a™  
Context manager redirecting console logging to `tqdm.write()`, leaving
other logging handlers (e.g. log files) unaffected.

Parameters
----------
loggers  : list, optional
  Which handlers to redirect (default: [logging.root]).
tqdm_class  : optional

Example
-------
```python
import logging
from tqdm import trange
from tqdm.contrib.logging import logging_redirect_tqdm

LOG = logging.getLogger(__name__)

if __name__ == '__main__':
    logging.basicConfig(level=logging.INFO)
    with logging_redirect_tqdm():
        for i in trange(9):
            if i == 4:
                LOG.info("console logging redirected to `tqdm.write()`")
    # logging restored
```
N)
r,   Úrootr4   r	   r5   ÚsetFormatterÚ	formatterr   r2   Úzip)Úloggersr   ÚloggerÚoriginal_handlers_listÚtqdm_handlerÚorig_handlerr1   Úoriginal_handlerss   &&      r   Úlogging_redirect_tqdmrA   .   sø   é € ðD ‚Ü—<‘<.ˆÙ<CÓD¹G°&Ÿoœo¹GÐÐDð0ÛˆFÜ.¨zÓ:ˆLÜCÀFÇOÁOÓTˆLØÒ'Ø×)Ñ)¨,×*@Ñ*@ÔAØ&2×&9Ñ&9Ô#à'-§¢ó=Ù'6˜GÜ2°7×;÷ ¡ñ=à@L¸~õNˆFŽOñ ó 	ä),¨WÖ)MÑ%ˆFØ/ŽOó *Nùò Eùò=øô
 *-¨WÖ)MÑ%ˆFØ/ŽOò *Nüs?   ‚DœC(°D³A#C2 ÂC-Â.C-Â4C2 Ã!DÃ-C2 Ã2DÄDc            	   /  ó@  "  € VP                  4       pVP                  RR4      pVP                  R\        4      pV! V / VB ;_uu_ 4       p\        W4R7      ;_uu_ 4        Vx € RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i5i)a@  
Convenience shortcut for:
```python
with tqdm_class(*args, **tqdm_kwargs) as pbar:
    with logging_redirect_tqdm(loggers=loggers, tqdm_class=tqdm_class):
        yield pbar
```

Parameters
----------
tqdm_class  : optional, (default: tqdm.std.tqdm).
loggers  : optional, list.
**tqdm_kwargs  : passed to `tqdm_class`.
r;   Nr   )r;   r   )ÚcopyÚpopr%   rA   )ÚargsÚkwargsÚtqdm_kwargsr;   r   Úpbars   *,    r   Útqdm_logging_redirectrI   c   st   é € ð, —+‘+“-€KØo‰o˜i¨Ó.€GØ—‘ ¬xÓ8€JÙ	TÐ	)˜[×	)Ò	)¨TÜ"¨7×JÖJØŠJ÷ K÷ 
*Ñ	)ßJ×Jú÷ 
*×	)Ð	)üs6   ‚A	BÁB
Á A7	Á%B
Á-
BÁ7BÂB
Â
B	Â	B)Ú__doc__r,   r.   Ú
contextlibr   Útypingr   r   r   r   ÚImportErrorÚstdr   r%   r-   r	   r2   r5   rA   rI   © r   r   Ú<module>rP      s…   ðñó Û 
Ý %ð	ß5Ó5õ #ô%˜'×/Ñ/ô %ò&<ò
ð àØó10ó ð10ðh ñó òøðu ô 	Ùð	ús   ’A ÁAÁA