
    +h*                     H   d Z ddlZddlZddlmZ ddlmZ ddlmZ	 	 dZ
	 ddlZdZ
	 e
dk(  rddlmZ ddlmZ ddlmZ dZ
nddlmZ ddlmZ ddlmZ 	 ddlmZ dg diZg dZdZ G d de      Z G d de	      Zd Z eZe Z!y# e$ rZ dZ
ddlZ ej                         5   ej                  d	d
       	 ddlmc mZ n# e$ r Y nw xY wddd       n# 1 sw Y   nxY wY w xY w# e$ r* 	 ddlmZ ddlmZ ddlmZ dZ
n# e$ r	 dZ
dZeZY nw xY wY w xY w# e$ r Y w xY w)z
IPython/Jupyter Notebook progressbar decorator for iterators.
Includes a default `range` iterator printing to `stderr`.

Usage:
>>> from tqdm.notebook import trange, tqdm
>>> for i in trange(10):
...     ...
    N)escape)proxy   )tqdm       ignorez2.*The `IPython.html` package has been deprecated.*)message)HTML)FloatProgress)HBox   )ContainerWidget)FloatProgressWidget   )displayzgithub.com/)lrq3000	casperdclalexanderkuk)tqdm_notebooktnranger   trangez|IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.htmlc                   2     e Zd ZdZddZd fd	Zd Z xZS )TqdmHBoxz.`ipywidgets.HBox` with a pretty representationc                 P    t        | dd       }|i S |j                  }|| |d<   |S )Npbarascii)getattrformat_dict)selfprettyr   ds       @/var/www/html/venv/lib/python3.12/site-packages/tqdm/notebook.py_json_zTqdmHBox._json_G   s;    tVT*<I#AgJ    c                     t        | dd       }|t        t        |          S  |j                  di | j                  |      S )Nr    )r   superr   __repr__format_meterr$   )r    r!   r   	__class__s      r#   r)   zTqdmHBox.__repr__P   sE    tVT*<4133 t  74;;v#677r%   c                 D    |j                  | j                  d             y )NT)textr)   )r    pp___s       r#   _repr_pretty_zTqdmHBox._repr_pretty_V   s    
d#$r%   N)F)__name__
__module____qualname____doc__r$   r)   r1   __classcell__r+   s   @r#   r   r   E   s    88%r%   r   c                        e Zd ZdZedd       Z	 	 ddZed        Zej                  d        Z fdZ
 fdZd fd	Z fd	Zd
 Zd fd	Z xZS )r   zB
    Experimental IPython/Jupyter Notebook widget using tqdm!
    c                    t         t        t              |rt        d|      }n.t        dd      }d|_        d|_        |d|j
                  _        t               }t               }|r||_        t        |||g      }|ct        |      }	 t        |      dkD  r|dz  }d|j
                  _        ||j
                  _        d	|j
                  _        d
|j
                  _        |S # t        $ r Y Qw xY w)zY
        Manage the printing of an IPython/Jupyter Notebook progress bar widget.
        r   )minmaxr   info20px)childrenpx2zinline-flexzrow wrap)	IProgressImportErrorWARN_NOIPYWvalue	bar_stylelayoutwidthr   r   strint
ValueErrorflexr   	flex_flow)r/   totaldescncolsr   ltextrtext	containers           r#   status_printerztqdm_notebook.status_printer^   s     k**.D*DDJ#DN}$*!EKudE&:;	JEu:>TME  #DKK%*I"'4I$)3I&  s   C' '	C32C3c                    |s<|s:| j                   }|d   xs dj                  dd      |d<    | j                  di |}| j                  j                  \  }}}	| j
                  |_        |rKd|v r*t        t        t        j                  d|d            \  }
}ndt        |      }}
|
|_        |r||	_        |r|j                  d	k7  s|d
k7  r||_        |rE|j                  d	k7  r6	 | j                  j                          d| j                  j                  _        |r:| j"                  dkD  r*| j$                  st'        | j                         d| _        y y y y # t        $ r d| j                  _        Y tw xY w)N
bar_formatz{l_bar}<bar/>{r_bar}z{bar}z<bar/>z\|?<bar/>\|?r   )maxsplit dangersuccessFhiddenr   Tr'   )r   replacer*   rS   r?   nrE   mapr   resplitrF   closeAttributeErrorvisiblerG   
visibilitydelay	displayedr   )r    msgposra   rF   check_delayr"   rQ   r   rR   leftrights               r#   r   ztqdm_notebook.display   s\    5  A H2HQQ#AlO#$##(a(C!^^44tUVV
3!&"((?CRS*TUe &+e EK#  ~~)Y)-C!* T^^x//$$& 08DNN!!,4::>$..DNN#!DN 3A>;	 " /).&/s   &E E54E5c                 v    t        | d      r-| j                  j                  d   j                  j                  S y NrS   hasattrrS   r?   style	bar_color)r    s    r#   colourztqdm_notebook.colour   s2    4%>>**2.44>>> &r%   c                 n    t        | d      r)|| j                  j                  d   j                  _        y y rm   ro   )r    rr   s     r#   rs   ztqdm_notebook.colour   s.    4%:CDNN##B'--7 &r%   c                    |j                         }|j                  dt        j                        }|t        j                  u s|t        j                  |d<   d|d<   t        |j                  dd            |d<   |j                  dd      }|j                  dd      }t        t        | &  |i | | j                  s|d   s	d	 | _        y| j                  rd
n|j                  dd      | _        | j                  du rdn| j                  xs d}| j                  r| j                  |z  n| j                  }| j!                  | j"                  || j$                  | j                        | _        t)        |       | j&                  _        d| _        |r+| j.                  dk  rt1        | j&                         d| _        | j0                  | _        || _        | j                  s| j1                  d       yy)z
        Supports the usual `tqdm.tqdm` parameters as well as those listed below.

        Parameters
        ----------
        display  : Whether to call `display(self.container)` immediately
            [default: True].
        fileNTguidisableFrs   r   c                       y r2   r'   )r/   r0   s     r#   <lambda>z(tqdm_notebook.__init__.<locals>.<lambda>   s    r%   z100%rP   r   r   )ri   )copygetsysstderrstdoutboolpopr(   r   __init__rx   dispdynamic_ncolsrP   
unit_scalerN   rT   fprO   rS   r   r   rf   re   r   rs   )	r    argskwargs
file_kwargrs   display_herer   rN   r+   s	           r#   r   ztqdm_notebook.__init__   s    ZZ

3
#z'9 ZZF6N u Iu!=>yHd+zz)T2mT+T<V<<<ve}-DI  $11Vvzz'47P
 //T1Qt7K!
+/::

Z'4::,,TWWeTYY

S#DkDJJ!ODNN#!DNLL	 ||LLUL+ r%   c              #   z   K   	 t         t        |          }|D ]  }|  y #  | j                  d        xY ww)NrY   rF   )r(   r   __iter__r   )r    itobjr+   s      r#   r   ztqdm_notebook.__iter__   sF     	}d46B 		III)s   ;# ;8;c                 ^    	 t         t        |   |      S #  | j                  d        xY w)N)r]   rY   r   )r(   r   updater   )r    r]   r+   s     r#   r   ztqdm_notebook.update  s7    	4q499	 III)s    ,c                    | j                   ry t        t        |           | j                  r-| j
                  | j                  k  r| j                  dd       y | j                  r| j                  dd       y | j                  dd       y )NrY   F)rF   ri   rZ   T)ra   ri   )rx   r(   r   ra   rN   r]   r   leave)r    r+   s    r#   ra   ztqdm_notebook.close  si    <<mT(* ::$&&4::-IIeI<zz		I5	A		%	8r%   c                      y r2   r'   )r    r/   r0   s      r#   clearztqdm_notebook.clear  s    r%   c                    | j                   rt        t        |   |      S | j                  j
                  \  }}}d|_        |0||_        | j                  s| j                  d|j                  _        t        t        |   |      S )z
        Resets to 0 iterations for repeated use.

        Consider combining with `leave=True`.

        Parameters
        ----------
        total  : int or float, optional. Total to use for the new bar.
        )rN   rX   N)rx   r(   r   resetrS   r?   rF   r<   rN   rP   rG   rH   )r    rN   r/   r   r+   s       r#   r   ztqdm_notebook.reset   s{     <<3%3@@^^,,
4DH::$**"4$(!]D/e/<<r%   )NNN)NNFNT)r   r2   )r3   r4   r5   r6   staticmethodrT   r   propertyrs   setterr   r   r   ra   r   r   r7   r8   s   @r#   r   r   Z   s}     * *X %)9=2"h ? ? ]]D D+,Z	9= =r%   r   c                  &    t        t        |  fi |S )z:Shortcut for `tqdm.notebook.tqdm(range(*args), **kwargs)`.)r   range)r   r   s     r#   r   r   5  s    000r%   )"r6   r_   r}   htmlr   weakrefr   stdr   std_tqdmIPY
ipywidgetsrC   warningscatch_warningsfilterwarningsIPython.html.widgetswidgetsr   r   rB   r   r   r   objectIPython.displayr   
__author____all__rD   r   r   r   r   r'   r%   r#   <module>r      sg   
 
   "
C"91G1C'='+ EF

8$
%t %*X=H X=v1 	G	  	$X$$& 	#H##"VX99 	 	 		*  		1DMC 	CID		  s   B ,C' D C$!C7	C CC	CC		C	C$C	C$#C$'D-DDDDDDDD! D!