+
    ®¾jÅë  ã                   ó²  € ^ RI t ^ RIt^ RIt^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
Ht ^ RIHt ^ RI HtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHtHt ^ RIHtHtHt ^ RIHt ^ RIHtHtH t H!t!H"t"H#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/ ]P`                  Rƒ8¼  d   ^ RIH1t1 M^ RI2H1t1 ]P`                  R„8¼  d   ^ RIH3t3 M^ RI2H3t3 ^RI4H5t5H6t6 ^RI7H8t8H9t9H:t:H;t; ^RI<H=t= ^RI>H?t? ^RI@HAtA ^RIBHCtC ^RIDHEtE ^RIFHGtG ^RIHHItIHJtJ ^RIKHLtLHMtM ](! R]N4      tO].! R4      tP] . ]Q3,          tR]P\                  ! R]+]4      tS ! R R]4      tTR…R% R& lltU ! R' R(]]4      tV ! R) R*]!]S,          ]$]S,          4      tWR+R,R-RR.RR/R R0RR1^
R2R!R3R"R4R#R5R$R6R /R7 R8 lltX]P²                  R†R9RR+R,R-RR.RR/R R0RR1^
R2R!R3R"R4R#R5R$R6R /R: R; lll4       tZ]P²                  R†R9RR+R,R-RR.RR/R R0RR1^
R2R!R3R"R4R#R5R$R6R /R< R= lll4       tZR‡R9RR+R,R-RR.RR/R R0RR1^
R2R!R3R"R4R#R5R$R6R /R> R? llltZ ! R@ RA]4      t[ ! RB RC][4      t\ ! RD RE][4      t] ! RF RG][4      t^ ! RH RI][4      t_ ! RJ RK][4      t` ! RL RM]^4      ta ! RN RO][4      tb ! RP RQ][4      tc ! RR RS][4      td ! RT RU][4      te ! RV RW][4      tf ! RX RY][4      tg ! RZ R[]'4      th]
 ! R\ R]4      4       ti ! R^ R_]?4      tj]kR`8X  Edr   ^ RIltl^ RImtm^RaInHoto ^RbIpHqtq ^RcIrHsts ^RdIHHJtJ ]s! ReRfRRg7      tr]J! RhRiRj4      tH]HPé                  RkRlRm4       Rn]o! Ro4      Rp]HRqRrRsRtRu/Rv]r]q! Rw4      .	tu^ RxIvHwtw ]w! ]u4      tx]8! RRy7      t7]j! ]]! 4       .]jPó                  4       O]`! 4       N5R.]7R/R / ;_uu_ 4       tz]zP÷                  RzR{R|7      t|]zP÷                  R}R{R|7      t}]zP÷                  R~RR|7      t~]zPþ                  '       gq   ]zEP                  ]|RR€7       ]zEP                  ]}R�R€7       ]mEP                  ! R‚4       ]lEP                  ! ^ ^d4      ^8  g   Kh  ]zEP                  ]„! ]x4      4       K‚   RRR4       R# R#   + '       g   i     R# ; i)ˆé    N)ÚABCÚabstractmethod©Údeque)Ú	dataclassÚfield)Ú	timedelta)Ú	RawIOBaseÚUnsupportedOperation)Úceil)Úmmap)Úlength_hint)ÚPathLikeÚstat)ÚEventÚRLockÚThread)ÚTracebackType)ÚAnyÚBinaryIOÚCallableÚContextManagerÚDequeÚDictÚGenericÚIterableÚListÚ
NamedTupleÚNewTypeÚOptionalÚSequenceÚTextIOÚTupleÚTypeÚTypeVarÚUnion)ÚLiteral©ÚSelf)ÚfilesizeÚget_console)ÚConsoleÚGroupÚJustifyMethodÚRenderableType)ÚHighlighter)ÚJupyterMixin)ÚLive©ÚProgressBar)ÚSpinner)Ú	StyleType)ÚColumnÚTable)ÚTextÚTextTypeÚTaskIDÚProgressTypeÚ_Ic                   óx   a a€ ] tR t^Dt oRtV3R lV 3R lltV3R lR ltV3R lR ltV3R lR	 ltR
t	Vt
V ;t# )Ú_TrackThreadz)A thread to periodically update progress.c                ó(   <€ V ^8„  d   QhRRRRRS[ /# )é   ÚprogressÚProgressÚtask_idr;   Úupdate_period©Úfloat)ÚformatÚ__classdict__s   "€ÚX/home/ralf/ical-fahrzeuge/venv/lib/python3.14/site-packages/pip/_vendor/rich/progress.pyÚ__annotate__Ú_TrackThread.__annotate__G   s"   ø€ ÷ &ñ & ð &°hð &Éuñ &ó    c                óx   <€ Wn         W n        W0n        \        4       V n        ^ V n        \        SV `  RR7       R# )r   T)ÚdaemonN)rB   rD   rE   r   ÚdoneÚ	completedÚsuperÚ__init__)ÚselfrB   rD   rE   Ú	__class__s   &&&&€rJ   rS   Ú_TrackThread.__init__G   s3   ø€ Ø ŒØŒØ*ÔÜ“GˆŒ	àˆŒÜ‰Ñ ÐÖ%rM   c                ó   <€ V ^8„  d   QhRR/# ©rA   ÚreturnN© )rH   rI   s   "€rJ   rK   rL   P   s   ø€ ÷ Sñ S�Tñ SrM   c                ó¬  € V P                   pV P                  P                  pV P                  p^ pV P                  P
                  pV! V4      '       gN   V P                  P                  P                  '       d(   V P                  pWF8w  g   KH  V! WV,
          4       TpK[  V P                  P                  V P                   V P                  RR7       R# )r   T)rQ   ÚrefreshN)
rD   rB   ÚadvancerE   rP   ÚwaitÚliveÚ
is_startedrQ   Úupdate)rT   rD   r]   rE   Úlast_completedr^   rQ   s   &      rJ   ÚrunÚ_TrackThread.runP   s™   € Ø—,‘,ˆØ—-‘-×'Ñ'ˆØ×*Ñ*ˆØˆØ�y‰y�~‰~ˆÙ�}×%Ò%¨$¯-©-×*<Ñ*<×*G×*GÐ*GØŸ™ˆIØÖ*Ù˜¨^Õ!;Ô<Ø!*’à�‰×Ñ˜TŸ\™\°T·^±^ÈTÐÖRrM   c                ó   <€ V ^8„  d   QhRR/# )rA   rY   r?   rZ   )rH   rI   s   "€rJ   rK   rL   ^   s   ø€ ÷ ñ ˜>ñ rM   c                ó&   € V P                  4        V # ©N©Ústart©rT   s   &rJ   Ú	__enter__Ú_TrackThread.__enter__^   ó   € Ø�
‰
ŒØˆrM   c                óp   <€ V ^8„  d   QhRS[ S[S[,          ,          RS[ S[,          RS[ S[,          RR/# ©rA   Úexc_typeÚexc_valÚexc_tbrY   N©r    r$   ÚBaseExceptionr   )rH   rI   s   "€rJ   rK   rL   b   sG   ø€ ÷ ñ á™4¡Õ.Õ/ðñ ™-Õ(ðñ ™Õ'ð	ð
 
ñrM   c                óZ   € V P                   P                  4        V P                  4        R # rg   )rP   ÚsetÚjoin©rT   rp   rq   rr   s   &&&&rJ   Ú__exit__Ú_TrackThread.__exit__b   s   € ð 	�	‰	�‰ŒØ�	‰	ŽrM   )rQ   rP   rB   rD   rE   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rS   rc   rk   ry   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©rU   rI   s   @@rJ   r?   r?   D   s7   ù‡ € Ù3÷&ó &÷Sð S÷ð ÷÷ ð rM   r?   TFúbar.backúbar.completeúbar.finishedú	bar.pulsec          #      ó¤  € V ^8„  d   QhR\         \        \        ,          \        \        ,          3,          R\        R\
        \        ,          R\        R\        R\
        \        ,          R\        R\
        \        . \        3,          ,          R	\        R
\        R\        R\        R\        R\        R\        R\        R\        \        ,          /# )rA   ÚsequenceÚdescriptionÚtotalrQ   Úauto_refreshÚconsoleÚ	transientÚget_timeÚrefresh_per_secondÚstyleÚcomplete_styleÚfinished_styleÚpulse_stylerE   ÚdisableÚ
show_speedrY   )r&   r!   r<   r   Ústrr    rG   ÚintÚboolr,   r   r6   )rH   s   "rJ   rK   rK   l   sõ   € ÷ I
ñ I
Ü”Hœ\Õ*¬H´\Õ,BÐBÕCðI
äðI
ô ”E�?ðI
ô ð	I
ô
 ðI
ô ”gÕðI
ô ðI
ô ”x ¤E 	Õ*Õ+ðI
ô ðI
ô ðI
ô ðI
ô ðI
ô ðI
ô ðI
ô ðI
ô  ð!I
ô" ŒlÕñ#I
rM   c              #  óp  "  € V'       d   \        R4      .M. pVP                  \        V	V
VVR7      \        VR7      \	        RR7      34       \        TRTRTRTR	TR
T;'       g    ^
RV/ pT;_uu_ 4        VP                  V VVVVR7       Rj  x€L
  RRR4       R#  L  + '       g   i     R# ; i5i)añ  Track progress by iterating over a sequence.

Args:
    sequence (Iterable[ProgressType]): A sequence (must support "len") you wish to iterate over.
    description (str, optional): Description of task show next to progress bar. Defaults to "Working".
    total: (float, optional): Total number of steps. Default is len(sequence).
    completed (int, optional): Number of steps completed so far. Defaults to 0.
    auto_refresh (bool, optional): Automatic refresh, disable to force a refresh after each iteration. Default is True.
    transient: (bool, optional): Clear the progress on exit. Defaults to False.
    console (Console, optional): Console to write to. Default creates internal Console instance.
    refresh_per_second (float): Number of times per second to refresh the progress information. Defaults to 10.
    style (StyleType, optional): Style for the bar background. Defaults to "bar.back".
    complete_style (StyleType, optional): Style for the completed bar. Defaults to "bar.complete".
    finished_style (StyleType, optional): Style for a finished bar. Defaults to "bar.finished".
    pulse_style (StyleType, optional): Style for pulsing bars. Defaults to "bar.pulse".
    update_period (float, optional): Minimum time (in seconds) between calls to update(). Defaults to 0.1.
    disable (bool, optional): Disable display of progress.
    show_speed (bool, optional): Show speed if total isn't known. Defaults to True.
Returns:
    Iterable[ProgressType]: An iterable of the values in the sequence.

ú([progress.description]{task.description}©r‘   r’   r“   r”   )r–   T)Úelapsed_when_finishedrŒ   r�   rŽ   r�   r�   r•   )r‹   rQ   rŠ   rE   N)Ú
TextColumnÚextendÚ	BarColumnÚTaskProgressColumnÚTimeRemainingColumnrC   Útrack)r‰   rŠ   r‹   rQ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   rE   r•   r–   ÚcolumnsrB   s   &&&&&&&&&&&&&&&&  rJ   r£   r£   l   sð   é € ÷T EPŒÐ>Ó	?Ñ@ÐUWð ð ‡N�NäØØ-Ø-Ø'ô	ô ¨*Ô5Ü°dÔ;ð		
ôô Ø	ðà!ðð ðð ð	ð
 ðð .×3Ð3°ðð ñ€H÷ 
ŠØ—>‘>ØØØØ#Ø'ð "ó 
÷ 	
ð 	
÷ 
‰ñ	
÷ 
�ˆüs0   ‚A5B6Á7B"ÂB ÂB"Â
B6Â B"Â"B3	Â-	B6c                   óâ  a € ] tR t^¸t o RtR0V 3R lR lltV 3R lR ltV 3R lR ltV 3R lR	 ltV 3R
 lR lt	]
V 3R lR l4       tV 3R lR ltV 3R lR lt]
V 3R lR l4       t]
V 3R lR l4       tV 3R lR ltV 3R lR ltV 3R lR ltR1V 3R lR lltV 3R lR ltR1V 3R  lR! lltR1V 3R" lR# lltV 3R$ lR% ltR2V 3R& lR' lltV 3R( lR) ltV 3R* lR+ ltV 3R, lR- ltR.tV tR/# )3Ú_Readerz9A reader that tracks progress while it's being read from.c          
      ó4   <€ V ^8„  d   QhRS[ RRRS[RS[RR/# )rA   ÚhandlerB   rC   ÚtaskÚclose_handlerY   N)r   r;   r™   )rH   rI   s   "€rJ   rK   Ú_Reader.__annotate__»   s=   ø€ ÷ ñ áðð ðñ ð	ñ
 ðð 
ñrM   c                óD   € Wn         W n        W0n        W@n        R V n        R# ©FN)r¨   rB   r©   rª   Ú_closed)rT   r¨   rB   r©   rª   s   &&&&&rJ   rS   Ú_Reader.__init__»   s    € ð ŒØ ŒØŒ	Ø(ÔØˆŽrM   c                ó   <€ V ^8„  d   QhRR/# )rA   rY   r¦   rZ   )rH   rI   s   "€rJ   rK   r«   È   s   ø€ ÷ ñ ˜9ñ rM   c                ó:   € V P                   P                  4        V # rg   )r¨   rk   rj   s   &rJ   rk   Ú_Reader.__enter__È   s   € Ø�‰×ÑÔØˆrM   c                óp   <€ V ^8„  d   QhRS[ S[S[,          ,          RS[ S[,          RS[ S[,          RR/# ro   rs   )rH   rI   s   "€rJ   rK   r«   Ì   sG   ø€ ÷ ñ á™4¡Õ.Õ/ðñ ™-Õ(ðñ ™Õ'ð	ð
 
ñrM   c                ó&   € V P                  4        R # rg   )Úcloserx   s   &&&&rJ   ry   Ú_Reader.__exit__Ì   s   € ð 	�
‰
ŽrM   c                ó    <€ V ^8„  d   QhRS[ /# ©rA   rY   )r   )rH   rI   s   "€rJ   rK   r«   Ô   s   ø€ ÷ ñ ™(ñ rM   c                ó   € V # rg   rZ   rj   s   &rJ   Ú__iter__Ú_Reader.__iter__Ô   s   € ØˆrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   )Úbytes)rH   rI   s   "€rJ   rK   r«   ×   s   ø€ ÷ ñ ™%ñ rM   c                ó�   € \        V P                  4      pV P                  P                  V P                  \        V4      R 7       V# ©©r]   )Únextr¨   rB   r]   r©   Úlen)rT   Úlines   & rJ   Ú__next__Ú_Reader.__next__×   s4   € Ü�D—K‘KÓ ˆØ�‰×Ñ˜dŸi™i´°T³ÐÔ;ØˆrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   ©r™   )rH   rI   s   "€rJ   rK   r«   Ý   s   ø€ ÷ ñ ™ñ rM   c                ó   € V P                   # rg   )r®   rj   s   &rJ   ÚclosedÚ_Reader.closedÜ   s   € à�|‰|ÐrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   ©r˜   )rH   rI   s   "€rJ   rK   r«   à   s   ø€ ÷ $ñ $™ñ $rM   c                ó6   € V P                   P                  4       # rg   )r¨   Úfilenorj   s   &rJ   rÎ   Ú_Reader.filenoà   ó   € Ø�{‰{×!Ñ!Ó#Ð#rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   r«   ã   s   ø€ ÷ $ñ $™ñ $rM   c                ó6   € V P                   P                  4       # rg   )r¨   Úisattyrj   s   &rJ   rÓ   Ú_Reader.isattyã   rÐ   rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   ©r—   )rH   rI   s   "€rJ   rK   r«   ç   ó   ø€ ÷  ñ  ‘cñ  rM   c                ó.   € V P                   P                  # rg   )r¨   Úmoderj   s   &rJ   rÙ   Ú_Reader.modeæ   ó   € à�{‰{×ÑÐrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÖ   )rH   rI   s   "€rJ   rK   r«   ë   r×   rM   c                ó.   € V P                   P                  # rg   )r¨   Únamerj   s   &rJ   rÞ   Ú_Reader.nameê   rÛ   rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   r«   î   ó   ø€ ÷ &ñ &™$ñ &rM   c                ó6   € V P                   P                  4       # rg   )r¨   Úreadablerj   s   &rJ   rã   Ú_Reader.readableî   ó   € Ø�{‰{×#Ñ#Ó%Ð%rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   r«   ñ   rá   rM   c                ó6   € V P                   P                  4       # rg   )r¨   Úseekablerj   s   &rJ   rè   Ú_Reader.seekableñ   rå   rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   r«   ô   s   ø€ ÷ ñ ™$ñ rM   c                ó   € R # )FrZ   rj   s   &rJ   ÚwritableÚ_Reader.writableô   s   € ÙrM   c                ó&   <€ V ^8„  d   QhRS[ RS[/# ©rA   ÚsizerY   ©r˜   r½   )rH   rI   s   "€rJ   rK   r«   ÷   s   ø€ ÷ ñ ™ð ¡eñ rM   c                óœ   € V P                   P                  V4      pV P                  P                  V P                  \        V4      R 7       V# r¿   )r¨   ÚreadrB   r]   r©   rÂ   )rT   rð   Úblocks   && rJ   ró   Ú_Reader.read÷   s:   € Ø—‘× Ñ  Ó&ˆØ�‰×Ñ˜dŸi™i´°U³ÐÔ<ØˆrM   c                ó:   <€ V ^8„  d   QhRS[ S[S[S[3,          /# )rA   Úb)r&   Ú	bytearrayÚ
memoryviewr   )rH   rI   s   "€rJ   rK   r«   ü   s    ø€ ÷ ñ ™%¡	©:±tÐ ;Õ<ñ rM   c                óŠ   € V P                   P                  V4      pV P                  P                  V P                  VR 7       V# r¿   )r¨   ÚreadintorB   r]   r©   )rT   r÷   Úns   && rJ   rû   Ú_Reader.readintoü   s6   € Ø�K‰K× Ñ  Ó#ˆØ�‰×Ñ˜dŸi™i°ÐÔ3ØˆrM   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rï   rñ   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ ñ ™Sð ©%ñ rM   c                óœ   € V P                   P                  V4      pV P                  P                  V P                  \        V4      R 7       V# r¿   )r¨   ÚreadlinerB   r]   r©   rÂ   )rT   rð   rÃ   s   && rJ   r   Ú_Reader.readline  s:   € Ø�{‰{×#Ñ# DÓ)ˆØ�‰×Ñ˜dŸi™i´°T³ÐÔ;ØˆrM   c                ó6   <€ V ^8„  d   QhRS[ RS[S[,          /# )rA   ÚhintrY   )r˜   r   r½   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ ñ ™cð ©4±­;ñ rM   c           	     ó¸   € V P                   P                  V4      pV P                  P                  V P                  \        \        \        V4      4      R 7       V# r¿   )r¨   Ú	readlinesrB   r]   r©   ÚsumÚmaprÂ   )rT   r  Úliness   && rJ   r  Ú_Reader.readlines  sA   € Ø—‘×%Ñ% dÓ+ˆØ�‰×Ñ˜dŸi™i´´S¼¸e³_Ó1EÐÔFØˆrM   c                ó   <€ V ^8„  d   QhRR/# rX   rZ   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ ñ �tñ rM   c                ól   € V P                   '       d   V P                  P                  4        R V n        R# )TN)rª   r¨   rµ   r®   rj   s   &rJ   rµ   Ú_Reader.close  s%   € Ø××ÐØ�K‰K×ÑÔØˆŽrM   c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[ /# )rA   ÚoffsetÚwhencerY   rÌ   )rH   rI   s   "€rJ   rK   r«     s"   ø€ ÷ ñ ™3ð ©ð ±Cñ rM   c                óŠ   € V P                   P                  W4      pV P                  P                  V P                  VR 7       V# )©rQ   )r¨   ÚseekrB   ra   r©   )rT   r  r  Úposs   &&& rJ   r  Ú_Reader.seek  s6   € Ø�k‰k×Ñ˜vÓ.ˆØ�‰×Ñ˜TŸY™Y°#ÐÔ6Øˆ
rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÌ   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ "ñ "‘cñ "rM   c                ó6   € V P                   P                  4       # rg   )r¨   Útellrj   s   &rJ   r  Ú_Reader.tell  s   € Ø�{‰{×ÑÓ!Ð!rM   c                ó&   <€ V ^8„  d   QhRS[ RS[/# )rA   ÚsrY   )r   r˜   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ ,ñ ,‘sð ,™sñ ,rM   c                ó   € \        R 4      h)Úwrite©r   )rT   r  s   &&rJ   r  Ú_Reader.write  s   € Ü" 7Ó+Ð+rM   c                ó4   <€ V ^8„  d   QhRS[ S[,          RR/# )rA   r  rY   N)r   r   )rH   rI   s   "€rJ   rK   r«     s   ø€ ÷ 1ñ 1¡©¥ð 1°$ñ 1rM   c                ó   € \        R 4      h)Ú
writelinesr  )rT   r  s   &&rJ   r!  Ú_Reader.writelines  s   € Ü" <Ó0Ð0rM   )r®   rª   r¨   rB   r©   N)T)éÿÿÿÿ)r   )r{   r|   r}   r~   r   rS   rk   ry   rº   rÄ   ÚpropertyrÉ   rÎ   rÓ   rÙ   rÞ   rã   rè   rì   ró   rû   r   r  rµ   r  r  r  r!  r€   r�   ©rI   s   @rJ   r¦   r¦   ¸   s  ø‡ € ÙC÷ò ÷ð ÷ð ÷ð ÷ð ð
 ÷ó ð÷$ð $÷$ð $ð ÷ ó ð ð ÷ ó ð ÷&ð &÷&ð &÷ð ÷ò ÷
ð ÷
ò ÷
ò ÷
ð ÷
ò ÷
"ð "÷,ð ,÷1ö 1rM   r¦   c                   óZ   a € ] tR tRt o RtV 3R lR ltV 3R lR ltV 3R lR ltR	tV t	R
# )Ú_ReadContexti  zEA utility class to handle a context for both a reader and a progress.c                ó(   <€ V ^8„  d   QhRRRS[ RR/# )rA   rB   rC   ÚreaderrY   N©r=   )rH   rI   s   "€rJ   rK   Ú_ReadContext.__annotate__"  s"   ø€ ÷ !ñ ! ð !±Rð !¸Dñ !rM   c                ó   € Wn         W n        R # rg   ©rB   r)  )rT   rB   r)  s   &&&rJ   rS   Ú_ReadContext.__init__"  s   € Ø ŒØ ŽrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   r*  )rH   rI   s   "€rJ   rK   r+  &  s   ø€ ÷ 'ñ '™2ñ 'rM   c                ój   € V P                   P                  4        V P                  P                  4       # rg   )rB   ri   r)  rk   rj   s   &rJ   rk   Ú_ReadContext.__enter__&  s%   € Ø�‰×ÑÔØ�{‰{×$Ñ$Ó&Ð&rM   c                óp   <€ V ^8„  d   QhRS[ S[S[,          ,          RS[ S[,          RS[ S[,          RR/# ro   rs   )rH   rI   s   "€rJ   rK   r+  *  sG   ø€ ÷ 8ñ 8á™4¡Õ.Õ/ð8ñ ™-Õ(ð8ñ ™Õ'ð	8ð
 
ñ8rM   c                ór   € V P                   P                  4        V P                  P                  WV4       R # rg   )rB   Ústopr)  ry   rx   s   &&&&rJ   ry   Ú_ReadContext.__exit__*  s(   € ð 	�‰×ÑÔØ�‰×Ñ˜X°Ö7rM   r-  N)
r{   r|   r}   r~   r   rS   rk   ry   r€   r�   r%  s   @rJ   r'  r'    s&   ø‡ € ÙO÷!ð !÷'ð '÷8ö 8rM   r'  rŠ   ú
Reading...rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   c                ó  € V ^8„  d   QhR\         R\        R\        R\        R\        \
        ,          R\        R\        \        . \        3,          ,          R\        R	\        R
\        R\        R\        R\        R\        \         ,          /# )rA   Úfiler‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   rY   )
r   r˜   r—   r™   r    r,   r   rG   r6   r   )rH   s   "rJ   rK   rK   4  s¬   € ÷ >*ñ >*Ü
ð>*äð>*ô ð	>*ô
 ð>*ô ”gÕð>*ô ð>*ô ”x ¤E 	Õ*Õ+ð>*ô ð>*ô ð>*ô ð>*ô ð>*ô ð>*ô ð>*ô ”HÕñ>*rM   c               ó
  € V'       d   \        R4      .M. pVP                  \        VV	V
VR7      \        4       \	        4       34       \        TRTRTRTRTRT;'       g    ^
RV/ pVP                  WVR	7      p\        Wï4      # )
aÞ  Read bytes from a file while tracking progress.

Args:
    file (Union[str, PathLike[str], BinaryIO]): The path to the file to read, or a file-like object in binary mode.
    total (int): Total number of bytes to read.
    description (str, optional): Description of task show next to progress bar. Defaults to "Reading".
    auto_refresh (bool, optional): Automatic refresh, disable to force a refresh after each iteration. Default is True.
    transient: (bool, optional): Clear the progress on exit. Defaults to False.
    console (Console, optional): Console to write to. Default creates internal Console instance.
    refresh_per_second (float): Number of times per second to refresh the progress information. Defaults to 10.
    style (StyleType, optional): Style for the bar background. Defaults to "bar.back".
    complete_style (StyleType, optional): Style for the completed bar. Defaults to "bar.complete".
    finished_style (StyleType, optional): Style for a finished bar. Defaults to "bar.finished".
    pulse_style (StyleType, optional): Style for pulsing bars. Defaults to "bar.pulse".
    disable (bool, optional): Disable display of progress.
Returns:
    ContextManager[BinaryIO]: A context manager yielding a progress reader.

r›   rœ   rŒ   r�   rŽ   r�   r�   r•   )r‹   rŠ   )rž   rŸ   r    ÚDownloadColumnr¢   rC   Ú	wrap_filer'  )r8  r‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   r¤   rB   r)  s   &&$$$$$$$$$$$   rJ   r;  r;  4  sÅ   € ÷J EPŒÐ>Ó	?Ñ@ÐUWð ð ‡N�NäØØ-Ø-Ø'ô	ô ÓÜÓ!ð		
ôô Ø	ðà!ðð ðð ð	ð
 ðð .×3Ð3°ðð ñ€Hð ×Ñ ¸{ÐÓK€FÜ˜Ó)Ð)rM   r‹   c          '      ó  € V ^8„  d   QhR\         \        R\        3,          R\         \        R,          \        R,          3,          R\        R\
        \        ,          R\
        \        ,          R	\
        \        ,          R
\
        \        ,          R\        R\        R\
        \        ,          R\        R\
        \        . \        3,          ,          R\        R\        R\        R\        R\        R\        R\        \        ,          /# )rA   r8  úPathLike[str]rÙ   ÚrtÚrÚ	bufferingÚencodingÚerrorsÚnewliner‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   rY   )r&   r—   r½   r'   r˜   r    r™   r,   r   rG   r6   r   r"   )rH   s   "rJ   rK   rK   v  s  € ÷ 	ñ 	Ü
”�_¤eÐ+Õ
,ð	ä
”˜•œw s�|Ð+Õ
,ð	ô ð	ô ”s�mð		ô
 ”S�Mð	ô ”c�]ð	ô ”C�=ð	ô ð	ô ð	ô ”gÕð	ô ð	ô ”x ¤E 	Õ*Õ+ð	ô ð	ô ð	ô  ð!	ô" ð#	ô$ ð%	ô& ð'	ô( ”FÕñ)	rM   c                ó   € R # rg   rZ   ©r8  rÙ   r@  rA  rB  rC  r‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   s   &&&&&&$$$$$$$$$$$$rJ   ÚopenrF  u  ó   € ñ, 	rM   c          '      óâ  € V ^8„  d   QhR\         \        R\        3,          R\        R,          R\        R\
        \        ,          R\
        \        ,          R\
        \        ,          R	\
        \        ,          R
\        R\        R\
        \        ,          R\        R\
        \        . \        3,          ,          R\        R\        R\        R\        R\        R\        R\        \        ,          /# )rA   r8  r=  rÙ   Úrbr@  rA  rB  rC  r‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   rY   )r&   r—   r½   r'   r˜   r    r™   r,   r   rG   r6   r   r   )rH   s   "rJ   rK   rK   �  sþ   € ÷ 	ñ 	Ü
”�_¤eÐ+Õ
,ð	ä
�$�-ð	ô ð	ô ”s�mð		ô
 ”S�Mð	ô ”c�]ð	ô ”C�=ð	ô ð	ô ð	ô ”gÕð	ô ð	ô ”x ¤E 	Õ*Õ+ð	ô ð	ô ð	ô  ð!	ô" ð#	ô$ ð%	ô& ð'	ô( ”HÕñ)	rM   c                ó   € R # rg   rZ   rE  s   &&&&&&$$$$$$$$$$$$rJ   rF  rF  Ž  rG  rM   c          )      ób  € V ^8„  d   QhR\         \        R\        3,          R\         \        R,          \        R,          \        R,          3,          R\        R\
        \        ,          R	\
        \        ,          R
\
        \        ,          R\
        \        ,          R\        R\        R\
        \        ,          R\        R\
        \        . \        3,          ,          R\        R\        R\        R\        R\        R\        R\         \        \        ,          \        \        ,          3,          /# )rA   r8  r=  rÙ   rI  r>  r?  r@  rA  rB  rC  r‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   rY   )r&   r—   r½   r'   r˜   r    r™   r,   r   rG   r6   r   r   r"   )rH   s   "rJ   rK   rK   §  s6  € ÷ S*ñ S*Ü
”�_¤eÐ+Õ
,ðS*ä
”˜•œw t�}¬g°c­lÐ:Õ
;ðS*ô ðS*ô ”s�mð	S*ô
 ”S�MðS*ô ”c�]ðS*ô ”C�=ðS*ô ðS*ô ðS*ô ”gÕðS*ô ðS*ô ”x ¤E 	Õ*Õ+ðS*ô ðS*ô ðS*ô  ð!S*ô" ð#S*ô$ ð%S*ô& ð'S*ô( Œ>œ(Õ#¤^´FÕ%;Ð;Õ<ñ)S*rM   c               ó  € V'       d   \        R4      .M. pVP                  \        VVVVR7      \        4       \	        4       34       \        TRTRT	RT
RTRT;'       g    ^
RV/ pVP                  V VVVVVVVR	7      p\        VV4      # )
aV  Read bytes from a file while tracking progress.

Args:
    path (Union[str, PathLike[str], BinaryIO]): The path to the file to read, or a file-like object in binary mode.
    mode (str): The mode to use to open the file. Only supports "r", "rb" or "rt".
    buffering (int): The buffering strategy to use, see :func:`io.open`.
    encoding (str, optional): The encoding to use when reading in text mode, see :func:`io.open`.
    errors (str, optional): The error handling strategy for decoding errors, see :func:`io.open`.
    newline (str, optional): The strategy for handling newlines in text mode, see :func:`io.open`
    total: (int, optional): Total number of bytes to read. Must be provided if reading from a file handle. Default for a path is os.stat(file).st_size.
    description (str, optional): Description of task show next to progress bar. Defaults to "Reading".
    auto_refresh (bool, optional): Automatic refresh, disable to force a refresh after each iteration. Default is True.
    transient: (bool, optional): Clear the progress on exit. Defaults to False.
    console (Console, optional): Console to write to. Default creates internal Console instance.
    refresh_per_second (float): Number of times per second to refresh the progress information. Defaults to 10.
    style (StyleType, optional): Style for the bar background. Defaults to "bar.back".
    complete_style (StyleType, optional): Style for the completed bar. Defaults to "bar.complete".
    finished_style (StyleType, optional): Style for a finished bar. Defaults to "bar.finished".
    pulse_style (StyleType, optional): Style for pulsing bars. Defaults to "bar.pulse".
    disable (bool, optional): Disable display of progress.
    encoding (str, optional): The encoding to use when reading in text mode.

Returns:
    ContextManager[BinaryIO]: A context manager yielding a progress reader.

r›   rœ   rŒ   r�   rŽ   r�   r�   r•   )rÙ   r@  rA  rB  rC  r‹   rŠ   )rž   rŸ   r    r:  r¢   rC   rF  r'  )r8  rÙ   r@  rA  rB  rC  r‹   rŠ   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   r¤   rB   r)  s   &&&&&&$$$$$$$$$$$$   rJ   rF  rF  §  sß   € ÷b EPŒÐ>Ó	?Ñ@ÐUWð ð ‡N�NäØØ-Ø-Ø'ô	ô ÓÜÓ!ð		
ôô Ø	ðà!ðð ðð ð	ð
 ðð .×3Ð3°ðð ñ€Hð �]‰]ØØØØØØØØð ó 	€Fô ˜ &Ó)Ð)rM   c                   óŠ   a € ] tR tRt o RtRtRV 3R lR lltV 3R lR ltV 3R lR	 lt]	V 3R
 lR l4       t
V 3R ltRtV tR# )ÚProgressColumniý  z3Base class for a widget to use in progress display.Nc                ó4   <€ V ^8„  d   QhRS[ S[,          RR/# )rA   Útable_columnrY   N)r    r7   )rH   rI   s   "€rJ   rK   ÚProgressColumn.__annotate__  s    ø€ ÷ 2ñ 2¡X©fÕ%5ð 2Àñ 2rM   c                ó.   € Wn         / V n        R V n        R # rg   )Ú_table_columnÚ_renderable_cacheÚ_update_time)rT   rP  s   &&rJ   rS   ÚProgressColumn.__init__  s   € Ø)ÔØMOˆÔØ-1ˆÖrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   )r7   )rH   rI   s   "€rJ   rK   rQ    s   ø€ ÷ .ñ .¡&ñ .rM   c                ó>   € V P                   ;'       g    \        4       # )z.Get a table column, used to build tasks table.)rS  r7   rj   s   &rJ   Úget_table_columnÚProgressColumn.get_table_column  s   € à×!Ñ!×-Ð-¤V£XÐ-rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# ©rA   r©   ÚTaskrY   ©r/   )rH   rI   s   "€rJ   rK   rQ    s   ø€ ÷ ñ ˜Vð ©ñ rM   c                óR  € VP                  4       pV P                  eM   VP                  '       g;    V P                  VP                  ,          w  r4W0P                  ,           V8”  d   V#  V P                  V4      pW$3V P                  VP                  &   V#   \
         d     L:i ; i)zÙCalled by the Progress object to return a renderable for the given task.

Args:
    task (Task): An object containing information regarding the task.

Returns:
    RenderableType: Anything renderable (including str).
)r�   Úmax_refreshrQ   rT  ÚidÚKeyErrorÚrender)rT   r©   Úcurrent_timeÚ	timestampÚ
renderables   &&   rJ   Ú__call__ÚProgressColumn.__call__  sž   € ð —}‘}“ˆØ×ÑÒ'°··°ð&Ø(,×(>Ñ(>¸t¿w¹wÕ(GÑ%�	ð ×/Ñ/Õ/°,Ô>Ø%Ð%ð ?ð —[‘[ Ó&ˆ
Ø+7Ð*Dˆ×Ñ˜tŸw™wÑ'ØÐøô ô Ùðús   ²B ÂB&Â%B&c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r^  )rH   rI   s   "€rJ   rK   rQ  #  s   ø€ ÷ 1ñ 1˜6ð 1¡nñ 1rM   c                ó   € R# )z"Should return a renderable object.NrZ   ©rT   r©   s   &&rJ   rc  ÚProgressColumn.render"  s   ‚ rM   c                ó6   <€ V ^8„  d   Qh/ S[ S[,          ;R&   # )rA   r`  ©r    rG   )rH   rI   s   "€rJ   rK   rQ  ý  s   ø‡ ‚ ñ ™%•Ñ'ò rM   )rT  rS  rU  rg   )r{   r|   r}   r~   r   r`  rS   rY  rg  r   rc  Ú__annotate_func__r€   r�   r%  s   @rJ   rN  rN  ý  sG   ø‡ € Ù=à#'€K÷2ò 2÷
.ð .÷ð ð. ÷1ó ð1÷M ƒ rM   rN  c                   ó`   a a€ ] tR tRt oRtR
RR/V3R lV 3R lllltV3R lR ltR	tVtV ;t	# )ÚRenderableColumni'  z„A column to insert an arbitrary column.

Args:
    renderable (RenderableType, optional): Any renderable. Defaults to empty string.
rP  Nc                ó6   <€ V ^8„  d   QhRS[ RS[S[,          /# )rA   rf  rP  )r/   r    r7   )rH   rI   s   "€rJ   rK   ÚRenderableColumn.__annotate__.  s"   ø€ ÷ 4ñ 4Ù(ð4Ù@HÉÕ@Pñ4rM   c               ó4   <€ Wn         \        SV `	  VR 7       R# ©©rP  N)rf  rR   rS   )rT   rf  rP  rU   s   &&$€rJ   rS   ÚRenderableColumn.__init__.  s   ø€ ð %ŒÜ‰Ñ lÐÖ3rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r^  )rH   rI   s   "€rJ   rK   rs  4  s   ø€ ÷ ñ ˜6ð ¡nñ rM   c                ó   € V P                   # rg   ©rf  rk  s   &&rJ   rc  ÚRenderableColumn.render4  s   € Ø�‰ÐrM   rz  )Ú ©
r{   r|   r}   r~   r   rS   rc  r€   r�   r‚   rƒ   s   @@rJ   rq  rq  '  s+   ù‡ € ññ4ØSW÷4ö 4÷÷ ð rM   rq  c                   ón   a a€ ] tR tRt oRtR
V3R lV 3R llltRV3R lR lltV3R lR ltR	tVt	V ;t
# )ÚSpinnerColumni8  aq  A column with a 'spinner' animation.

Args:
    spinner_name (str, optional): Name of spinner animation. Defaults to "dots".
    style (StyleType, optional): Style of spinner. Defaults to "progress.spinner".
    speed (float, optional): Speed factor of spinner. Defaults to 1.0.
    finished_text (TextType, optional): Text used when task is finished. Defaults to " ".
c                óX   <€ V ^8„  d   QhRS[ RS[S[,          RS[RS[RS[S[,          /# )rA   Úspinner_namer‘   ÚspeedÚfinished_textrP  )r—   r    r6   rG   r:   r7   )rH   rI   s   "€rJ   rK   ÚSpinnerColumn.__annotate__B  sG   ø€ ÷ 4ñ 4áð4ñ ™	Õ"ð4ñ ð	4ñ
  ð4ñ ™vÕ&ñ4rM   c                ó²   <€ \        WVR 7      V n        \        V\        4      '       d   \        P
                  ! V4      MTV n        \        SV `!  VR7       R# )©r‘   r‚  rv  N)	r5   ÚspinnerÚ
isinstancer—   r9   Úfrom_markuprƒ  rR   rS   )rT   r�  r‘   r‚  rƒ  rP  rU   s   &&&&&&€rJ   rS   ÚSpinnerColumn.__init__B  sO   ø€ ô ˜|ÀÔFˆŒô ˜-¬×-Ò-ô ×Ò˜]Ô+àð 	Ôô
 	‰Ñ lÐÖ3rM   c                ó@   <€ V ^8„  d   QhRS[ RS[S[,          RS[RR/# )rA   r�  Úspinner_styler‚  rY   N)r—   r    r6   rG   )rH   rI   s   "€rJ   rK   r„  R  s>   ø€ ÷ Oñ OáðOñ  ¡	Õ*ðOñ ð	Oð
 
ñOrM   c                ó*   € \        WVR7      V n        R# )a  Set a new spinner.

Args:
    spinner_name (str): Spinner name, see python -m rich.spinner.
    spinner_style (Optional[StyleType], optional): Spinner style. Defaults to "progress.spinner".
    speed (float, optional): Speed factor of spinner. Defaults to 1.0.
r†  N)r5   r‡  )rT   r�  rŒ  r‚  s   &&&&rJ   Úset_spinnerÚSpinnerColumn.set_spinnerR  s   € ô ˜|ÈÔNˆŽrM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r^  )rH   rI   s   "€rJ   rK   r„  a  s   ø€ ÷ ñ ˜6ð ¡nñ rM   c                ó˜   € VP                   '       d   V P                  pV# V P                  P                  VP	                  4       4      pV# rg   )Úfinishedrƒ  r‡  rc  r�   )rT   r©   Útexts   && rJ   rc  ÚSpinnerColumn.rendera  sJ   € ð �}�}ˆ}ð ×Ñð 	ð
 ˆð —‘×$Ñ$ T§]¡]£_Ó5ð 	ð
 ˆrM   )rƒ  r‡  )Údotsúprogress.spinnerç      ð?Ú N)r–  r—  )r{   r|   r}   r~   r   rS   rŽ  rc  r€   r�   r‚   rƒ   s   @@rJ   r  r  8  s/   ù‡ € ñ÷4õ 4÷ Oò O÷÷ ð rM   r  c                   óX   a a€ ] tR tRt oRtRV3R lV 3R llltV3R lR ltRtVtV ;t	# )	rž   ij  zA column containing text.c                ób   <€ V ^8„  d   QhRS[ RS[RS[RS[RS[S[,          RS[S[,          RR/# )	rA   Útext_formatr‘   ÚjustifyÚmarkupÚhighlighterrP  rY   N©r—   r6   r.   r™   r    r0   r7   )rH   rI   s   "€rJ   rK   ÚTextColumn.__annotate__m  sd   ø€ ÷ Lñ LáðLñ ðLñ ð	Lñ
 ðLñ ™kÕ*ðLñ ™vÕ&ðLð 
ñLrM   c                óŒ   <€ Wn         W0n        W n        W@n        WPn        \
        ST `  T;'       g    \        R R7      R7       R# )T©Úno_wraprv  N)r›  rœ  r‘   r�  rž  rR   rS   r7   )rT   r›  r‘   rœ  r�  rž  rP  rU   s   &&&&&&&€rJ   rS   ÚTextColumn.__init__m  s=   ø€ ð 'ÔØ&-ŒØŒ
ØŒØ&ÔÜ‰Ñ l×&JÐ&J´fÀTÔ6JÐÖKrM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  ©r9   )rH   rI   s   "€rJ   rK   r   }  s   ø€ ÷ ñ ˜6ð ¡dñ rM   c                óX  € V P                   P                  VR 7      pV P                  '       d.   \        P                  ! W P
                  V P                  R7      pM!\        W P
                  V P                  R7      pV P                  '       d   V P                  P                  V4       V# )©r©   ©r‘   rœ  )	r›  rH   r�  r9   r‰  r‘   rœ  rž  Ú	highlight)rT   r©   Ú_textr“  s   &&  rJ   rc  ÚTextColumn.render}  sw   € Ø× Ñ ×'Ñ'¨TÐ'Ó2ˆØ�;�;ˆ;Ü×#Ò# E·±ÀTÇ\Á\ÔR‰Dä˜§Z¡Z¸¿¹ÔFˆDØ××ÐØ×Ñ×&Ñ& tÔ,ØˆrM   )rž  rœ  r�  r‘   r›  )ÚnoneÚleftTNNr}  rƒ   s   @@rJ   rž   rž   j  s#   ù‡ € Ù#÷Lõ L÷ ÷ ð rM   rž   c                   óX   a a€ ] tR tRt oRtRV3R lV 3R llltV3R lR ltRtVtV ;t	# )	r    iˆ  aö  Renders a visual progress bar.

Args:
    bar_width (Optional[int], optional): Width of bar or None for full width. Defaults to 40.
    style (StyleType, optional): Style for the bar background. Defaults to "bar.back".
    complete_style (StyleType, optional): Style for the completed bar. Defaults to "bar.complete".
    finished_style (StyleType, optional): Style for a finished bar. Defaults to "bar.finished".
    pulse_style (StyleType, optional): Style for pulsing bars. Defaults to "bar.pulse".
c                ób   <€ V ^8„  d   QhRS[ S[,          RS[RS[RS[RS[RS[ S[,          RR/# )	rA   Ú	bar_widthr‘   r’   r“   r”   rP  rY   N)r    r˜   r6   r7   )rH   rI   s   "€rJ   rK   ÚBarColumn.__annotate__“  sZ   ø€ ÷ 4ñ 4á™C•=ð4ñ ð4ñ "ð	4ñ
 "ð4ñ ð4ñ ™vÕ&ð4ð 
ñ4rM   c                ód   <€ Wn         W n        W0n        W@n        WPn        \
        SV `  VR 7       R# ru  )r±  r‘   r’   r“   r”   rR   rS   )rT   r±  r‘   r’   r“   r”   rP  rU   s   &&&&&&&€rJ   rS   ÚBarColumn.__init__“  s1   ø€ ð #ŒØŒ
Ø,ÔØ,ÔØ&ÔÜ‰Ñ lÐÖ3rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r3   )rH   rI   s   "€rJ   rK   r²  £  s   ø€ ÷ 
ñ 
˜6ð 
¡kñ 
rM   c                ól  € \        VP                  e   \        ^ VP                  4      MR\        ^ VP                  4      V P                  f   RM\        ^V P                  4      VP
                  '       * VP                  4       V P                  V P                  V P                  V P                  R7	      # )z&Gets a progress bar widget for a task.N)	r‹   rQ   ÚwidthÚpulseÚanimation_timer‘   r’   r“   r”   )r4   r‹   ÚmaxrQ   r±  Ústartedr�   r‘   r’   r“   r”   rk  s   &&rJ   rc  ÚBarColumn.render£  s„   € äØ(,¯
©
Ò(>”#�a˜Ÿ™Ô$ÀDÜ˜!˜TŸ^™^Ó,ØŸ.™.Ò0‘$´c¸!¸T¿^¹^Ó6LØ—l‘lÔ"ØŸ=™=›?Ø—*‘*Ø×.Ñ.Ø×.Ñ.Ø×(Ñ(ô

ð 
	
rM   )r±  r’   r“   r”   r‘   )é(   r„   r…   r†   r‡   Nr}  rƒ   s   @@rJ   r    r    ˆ  s#   ù‡ € ñ÷4õ 4÷ 
÷ 
ð 
rM   r    c                   ó6   a € ] tR tRt o RtV 3R lR ltRtV tR# )ÚTimeElapsedColumni²  zRenders time elapsed.c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   ÚTimeElapsedColumn.__annotate__µ  s   ø€ ÷ :ñ :˜6ð :¡dñ :rM   c                óâ   € VP                   '       d   VP                  MVP                  pVf   \        RRR7      # \	        \        ^ \        V4      4      R7      p\        \        V4      RR7      # )zShow time elapsed.ú-:--:--úprogress.elapsed©r‘   )Úseconds)r’  Úfinished_timeÚelapsedr9   r	   rº  r˜   r—   )rT   r©   rÈ  Údeltas   &&  rJ   rc  ÚTimeElapsedColumn.renderµ  sU   € à(,¯¯¨�$×$Ò$¸4¿<¹<ˆØŠ?Ü˜	Ð);Ô<Ð<Ü¤# a¬¨W«Ó"6Ô7ˆÜ”C˜“JÐ&8Ô9Ð9rM   rZ   N©r{   r|   r}   r~   r   rc  r€   r�   r%  s   @rJ   r¿  r¿  ²  s   ø‡ € Ù÷:ö :rM   r¿  c                   ót   a a€ ] tR tRt oRtR
V3R lV 3R lllt]V3R lR l4       tV3R lR ltR	t	Vt
V ;t# )r¡   i¾  aê  Show task progress as a percentage.

Args:
    text_format (str, optional): Format for percentage display. Defaults to "[progress.percentage]{task.percentage:>3.0f}%".
    text_format_no_percentage (str, optional): Format if percentage is unknown. Defaults to "".
    style (StyleType, optional): Style of output. Defaults to "none".
    justify (JustifyMethod, optional): Text justification. Defaults to "left".
    markup (bool, optional): Enable markup. Defaults to True.
    highlighter (Optional[Highlighter], optional): Highlighter to apply to output. Defaults to None.
    table_column (Optional[Column], optional): Table Column to use. Defaults to None.
    show_speed (bool, optional): Show speed if total is unknown. Defaults to False.
c                ón   <€ V ^8„  d   QhRS[ RS[ RS[RS[RS[RS[S[,          RS[S[,          RS[R	R
/	# )rA   r›  Útext_format_no_percentager‘   rœ  r�  rž  rP  r–   rY   NrŸ  )rH   rI   s   "€rJ   rK   ÚTaskProgressColumn.__annotate__Ì  so   ø€ ÷ 
ñ 
áð
ñ $'ð
ñ ð	
ñ
 ð
ñ ð
ñ ™kÕ*ð
ñ ™vÕ&ð
ñ ð
ð 
ñ
rM   c	           	     óJ   <€ W n         W€n        \        S	V `  VVVVVVR 7       R# ))r›  r‘   rœ  r�  rž  rP  N)rÎ  r–   rR   rS   )
rT   r›  rÎ  r‘   rœ  r�  rž  rP  r–   rU   s
   &&&&&&&&&€rJ   rS   ÚTaskProgressColumn.__init__Ì  s5   ø€ ð *CÔ&Ø$ŒÜ‰ÑØ#ØØØØ#Ø%ð 	ö 	
rM   c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )rA   r‚  rY   )r    rG   r9   )rH   rI   s   "€rJ   rK   rÏ  ã  s#   ø€ ÷ Sñ S¡©%¥ð S±Tñ SrM   c                ó¤   € Vf   \        RRR7      # \        P                  ! \        V4      . ROR4      w  r#W,          p\        VR V R2RR7      # )z�Render the speed in iterations per second.

Args:
    task (Task): A Task object.

Returns:
    Text: Text object containing the task speed.
r|  zprogress.percentagerÅ  éè  z.1fz it/s)r|  u   Ã—10Â³u   Ã—10â�¶u   Ã—10â�¹u   Ã—10Â¹Â²)r9   r*   Úpick_unit_and_suffixr˜   )Úclsr‚  ÚunitÚsuffixÚ
data_speeds   &&   rJ   Úrender_speedÚTaskProgressColumn.render_speedâ  s[   € ð Š=Ü˜Ð"7Ô8Ð8Ü×4Ò4Ü�‹JÚ<Øó
‰ˆð
 •\ˆ
Ü�z #Ð& v h¨eÐ4Ð<QÔRÐRrM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   rÏ  ö  s   ø€ ÷ ñ ˜6ð ¡dñ rM   c                ó.  € VP                   fB   V P                  '       d0   T P                  VP                  ;'       g    VP                  4      # VP                   f   V P
                  MV P                  pVP                  VR7      pV P                  '       d.   \        P                  ! W0P                  V P                  R7      pM!\        W0P                  V P                  R7      pV P                  '       d   V P                  P                  V4       V# )Nr¨  r©  )r‹   r–   rÚ  Úfinished_speedr‚  rÎ  r›  rH   r�  r9   r‰  r‘   rœ  rž  rª  )rT   r©   r›  r«  r“  s   &&   rJ   rc  ÚTaskProgressColumn.renderö  sÇ   € Ø�:‰:Ò $§/§/ /Ø×$Ñ$ T×%8Ñ%8×%FÐ%F¸D¿J¹JÓGÐGà.2¯j©jÒ.@ˆD×*Ò*Àd×FVÑFVð 	ð ×"Ñ"¨Ð"Ó-ˆØ�;�;ˆ;Ü×#Ò# E·±ÀTÇ\Á\ÔR‰Dä˜§Z¡Z¸¿¹ÔFˆDØ××ÐØ×Ñ×&Ñ& tÔ,ØˆrM   )r–   rÎ  )z-[progress.percentage]{task.percentage:>3.0f}%r|  r­  r®  TNNF)r{   r|   r}   r~   r   rS   ÚclassmethodrÚ  rc  r€   r�   r‚   rƒ   s   @@rJ   r¡   r¡   ¾  s9   ù‡ € ñ÷
õ 
ð, ÷Só ðS÷&÷ ð rM   r¡   c                   ó\   a a€ ] tR tRt oRtRtR	V3R lV 3R llltV3R lR ltRtVt	V ;t
# )
r¢   i  zÿRenders estimated time remaining.

Args:
    compact (bool, optional): Render MM:SS when time remaining is less than an hour. Defaults to False.
    elapsed_when_finished (bool, optional): Render time elapsed when the task is finished. Defaults to False.
ç      à?c                ó<   <€ V ^8„  d   QhRS[ RS[ RS[S[,          /# )rA   Úcompactr�   rP  ©r™   r    r7   )rH   rI   s   "€rJ   rK   Ú TimeRemainingColumn.__annotate__  s.   ø€ ÷ 4ñ 4áð4ñ  $ð4ñ ™vÕ&ñ	4rM   c                ó@   <€ Wn         W n        \        SV `  VR 7       R# ru  )rä  r�   rR   rS   )rT   rä  r�   rP  rU   s   &&&&€rJ   rS   ÚTimeRemainingColumn.__init__  s    ø€ ð ŒØ%:Ô"Ü‰Ñ lÐÖ3rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   ræ    s   ø€ ÷ ,ñ ,˜6ð ,¡dñ ,rM   c                óÔ  € V P                   '       d"   VP                  '       d   VP                  pRpMVP                  pRpVP                  f   \        RVR7      # Vf(   \        V P                  '       d	   RVR7      # RVR7      # \        \        V4      ^<4      w  rE\        V^<4      w  rdV P                  '       d   V'       g   VR RVR 2pMVR	 RVR RVR 2p\        WsR7      # )
zShow time remaining.rÄ  zprogress.remainingr|  rÅ  z--:--rÃ  Ú02dÚ:Úd)	r�   r’  rÇ  Útime_remainingr‹   r9   rä  Údivmodr˜   )rT   r©   Ú	task_timer‘   ÚminutesrÆ  ÚhoursÚ	formatteds   &&      rJ   rc  ÚTimeRemainingColumn.render  sÛ   € à×%×%Ð%¨$¯-¯-¨-Ø×*Ñ*ˆIØ&‰Eà×+Ñ+ˆIØ(ˆEà�:‰:ÒÜ˜ %Ô(Ð(àÒÜ 4§<§< <˜ÀeÔLÐL°YÀeÔLÐLô "¤# i£.°"Ó5ÑˆÜ ¨Ó,‰ˆà�<�<ˆ<§Ø" 3˜- q¨°¨Ð6‰Ià  ˜) 1 W¨S M°°7¸3°-Ð@ˆIä�IÔ+Ð+rM   )rä  r�   )FFN)r{   r|   r}   r~   r   r`  rS   rc  r€   r�   r‚   rƒ   s   @@rJ   r¢   r¢     s*   ù‡ € ñð €K÷4õ 4÷,÷ ,ð ,rM   r¢   c                   ó6   a € ] tR tRt o RtV 3R lR ltRtV tR# )ÚFileSizeColumni6  zRenders completed filesize.c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   ÚFileSizeColumn.__annotate__9  s   ø€ ÷ :ñ :˜6ð :¡dñ :rM   c                ón   € \         P                  ! \        VP                  4      4      p\	        VRR7      # )úShow data completed.zprogress.filesizerÅ  )r*   Údecimalr˜   rQ   r9   ©rT   r©   Ú	data_sizes   && rJ   rc  ÚFileSizeColumn.render9  s)   € ä×$Ò$¤S¨¯©Ó%8Ó9ˆ	Ü�IÐ%8Ô9Ð9rM   rZ   NrË  r%  s   @rJ   rö  rö  6  s   ø‡ € Ù%÷:ö :rM   rö  c                   ó6   a € ] tR tRt o RtV 3R lR ltRtV tR# )ÚTotalFileSizeColumni?  zRenders total filesize.c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   Ú TotalFileSizeColumn.__annotate__B  s   ø€ ÷ @ñ @˜6ð @¡dñ @rM   c                óŽ   € VP                   e*   \        P                  ! \        VP                   4      4      MRp\	        VRR7      # )rú  r|  zprogress.filesize.totalrÅ  )r‹   r*   rû  r˜   r9   rü  s   && rJ   rc  ÚTotalFileSizeColumn.renderB  s4   € à9=¿¹Ò9O”H×$Ò$¤S¨¯©£_Ô5ÐUWˆ	Ü�IÐ%>Ô?Ð?rM   rZ   NrË  r%  s   @rJ   r   r   ?  s   ø‡ € Ù!÷@ö @rM   r   c                   óX   a a€ ] tR tRt oRtRV3R lV 3R llltV3R lR ltRtVtV ;t	# )	ÚMofNCompleteColumniH  a0  Renders completed count/total, e.g. '  10/1000'.

Best for bounded tasks with int quantities.

Space pads the completed count so that progress length does not change as task progresses
past powers of 10.

Args:
    separator (str, optional): Text to separate completed and total values. Defaults to "/".
c                ó6   <€ V ^8„  d   QhRS[ RS[S[,          /# )rA   Ú	separatorrP  )r—   r    r7   )rH   rI   s   "€rJ   rK   ÚMofNCompleteColumn.__annotate__T  s    ø€ ÷ 4ñ 4¡#ð 4¹8ÁFÕ;Kñ 4rM   c                ó4   <€ Wn         \        SV `	  VR 7       R# ru  )r  rR   rS   )rT   r  rP  rU   s   &&&€rJ   rS   ÚMofNCompleteColumn.__init__T  s   ø€ Ø"ŒÜ‰Ñ lÐÖ3rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   r	  X  s   ø€ ÷ 
ñ 
˜6ð 
¡dñ 
rM   c                óÞ   € \        VP                  4      pVP                  e   \        VP                  4      MRp\        \	        V4      4      p\        W$ R2 V P                   V 2RR7      # )zShow completed/total.Ú?rí  úprogress.downloadrÅ  )r˜   rQ   r‹   rÂ   r—   r9   r  )rT   r©   rQ   r‹   Útotal_widths   &&   rJ   rc  ÚMofNCompleteColumn.renderX  sa   € ä˜Ÿ™Ó'ˆ	Ø#'§:¡:Ò#9”�D—J‘J”¸sˆÜœ#˜e›*“oˆÜØ˜ a˜Ð(¨¯©Ð(8¸¸Ð@Ø%ô
ð 	
rM   )r  )Ú/Nr}  rƒ   s   @@rJ   r  r  H  s#   ù‡ € ñ	÷4õ 4÷
÷ 
ð 
rM   r  c                   óX   a a€ ] tR tRt oRtRV3R lV 3R llltV3R lR ltRtVtV ;t	# )	r:  ic  z˜Renders file size downloaded and total, e.g. '0.5/2.3 GB'.

Args:
    binary_units (bool, optional): Use binary units, KiB, MiB etc. Defaults to False.
c                ó:   <€ V ^8„  d   QhRS[ RS[S[,          RR/# )rA   Úbinary_unitsrP  rY   Nrå  )rH   rI   s   "€rJ   rK   ÚDownloadColumn.__annotate__j  s*   ø€ ÷ 4ñ 4Ù ð4Ù8@ÁÕ8Hð4à	ñ4rM   c                ó4   <€ Wn         \        SV `	  VR 7       R# ru  )r  rR   rS   )rT   r  rP  rU   s   &&&€rJ   rS   ÚDownloadColumn.__init__j  s   ø€ ð )ÔÜ‰Ñ lÐÖ3rM   c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   r  p  s   ø€ ÷ !ñ !˜6ð !¡dñ !rM   c                óà  € \        VP                  4      pVP                  e   \        VP                  4      MTpV P                  '       d   \        P
                  ! V. R
OR4      w  rEM\        P
                  ! V. ROR4      w  rEV^8X  d   ^ M^pW$,          pVRV R2 pVP                  e'   \        VP                  4      p	W”,          p
V
RV R2 pMRpV RV RV 2p\        VRR	7      pV# )z.Calculate common unit for completed and total.i   rÔ  z,.Úfr  r  r˜  r  rÅ  )	r½   ÚKiBÚMiBÚGiBÚTiBÚPiBÚEiBÚZiBÚYiB)	r½   ÚkBÚMBÚGBÚTBÚPBÚEBÚZBÚYB)r˜   rQ   r‹   r  r*   rÕ  r9   )rT   r©   rQ   Ú unit_and_suffix_calculation_baser×  rØ  Ú	precisionÚcompleted_ratioÚcompleted_strr‹   Útotal_ratioÚ	total_strÚdownload_statusÚdownload_texts   &&            rJ   rc  ÚDownloadColumn.renderp  sü   € ä˜Ÿ™Ó'ˆ	ð  $Ÿz™zÒ5ŒC�—
‘
ŒO¸9ð 	)ð ××ÐÜ#×8Ò8Ø0ÚQØó‰LˆD�&ô $×8Ò8Ø0ÚIØó‰LˆDð
  œ‘A¨ˆ	à#Õ*ˆØ*¨2¨i¨[¸¨/Ð:ˆà�:‰:Ò!Ü˜Ÿ
™
“OˆEØ�,ˆKØ& r¨)¨°A oÐ6‰IàˆIà*˜O¨1¨Y¨K°q¸¸ÐAˆÜ˜_Ð4GÔHˆØÐrM   )r  r­   r}  rƒ   s   @@rJ   r:  r:  c  s#   ù‡ € ñ÷4õ 4÷!÷ !ð !rM   r:  c                   ó6   a € ] tR tRt o RtV 3R lR ltRtV tR# )ÚTransferSpeedColumni”  z&Renders human readable transfer speed.c                ó$   <€ V ^8„  d   QhRRRS[ /# r\  r¦  )rH   rI   s   "€rJ   rK   Ú TransferSpeedColumn.__annotate__—  s   ø€ ÷ Dñ D˜6ð D¡dñ DrM   c                óÂ   € VP                   ;'       g    VP                  pVf   \        RRR7      # \        P                  ! \        V4      4      p\        V R2RR7      # )zShow data transfer speed.r  zprogress.data.speedrÅ  z/s)rÞ  r‚  r9   r*   rû  r˜   )rT   r©   r‚  rÙ  s   &&  rJ   rc  ÚTransferSpeedColumn.render—  sU   € à×#Ñ#×1Ð1 t§z¡zˆØŠ=Ü˜Ð#8Ô9Ð9Ü×%Ò%¤c¨%£jÓ1ˆ
Ü�z�l "Ð%Ð-BÔCÐCrM   rZ   NrË  r%  s   @rJ   r6  r6  ”  s   ø‡ € Ù0÷Dö DrM   r6  c                   ó4   a € ] tR tRt o Rt  V 3R ltRtV tR# )ÚProgressSamplei   z$Sample of progress for a given time.c                ó2   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   # )rA   re  rQ   rF   )rH   rI   s   "€rJ   rK   ÚProgressSample.__annotate__   s   ø‡ ‚ ñ Ññ ñ
 Ñò rM   rZ   N)r{   r|   r}   r~   r   ro  r€   r�   r%  s   @rJ   r<  r<     s   ø‡ € Ù.ð à$÷ ƒ rM   r<  c                   ó¦  a € ] tR tRt o Rt     Rt Rt ]! ]R7      t	 ]! RRRR7      t
 ]! RRRR7      t Rt ]! R RRR	7      t]! R]R
7      t V 3R lR lt]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       tV 3R lR ltV 3R ltRtV tR# )r]  i©  z}Information regarding a progress task.

This object should be considered read-only outside of the :class:`~Progress` class.

NT)Údefault_factoryF)ÚdefaultÚinitÚreprc                 ó   € \        R R7      # )rÔ  )Úmaxlenr   rZ   rM   rJ   Ú<lambda>ÚTask.<lambda>Ó  s	   € ¤¨TÕ 2rM   )r@  rB  rC  )rC  r@  c                ó    <€ V ^8„  d   QhRS[ /# r¸   rF   )rH   rI   s   "€rJ   rK   ÚTask.__annotate__Ù  s   ø€ ÷  ñ  ™%ñ  rM   c                ó"   € V P                  4       # )z(float: Get the current time, in seconds.)Ú	_get_timerj   s   &rJ   r�   ÚTask.get_timeÙ  s   € à�~‰~ÓÐrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   rI  Þ  s   ø€ ÷ +ñ +™ñ +rM   c                ó   € V P                   RJ# )z#bool: Check if the task as started.N)Ú
start_timerj   s   &rJ   r»  ÚTask.startedÝ  s   € ð �‰ dÐ*Ð*rM   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   rn  )rH   rI   s   "€rJ   rK   rI  ã  s   ø€ ÷ +ñ +™8¡E�?ñ +rM   c                ó\   € V P                   f   R# V P                   V P                  ,
          # )zPOptional[float]: Get the number of steps remaining, if a non-None total was set.N©r‹   rQ   rj   s   &rJ   Ú	remainingÚTask.remainingâ  s$   € ð �:‰:ÒÙØ�z‰z˜DŸN™NÕ*Ð*rM   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   rn  )rH   rI   s   "€rJ   rK   rI  ê  s   ø€ ÷ 1ñ 1™¡%�ñ 1rM   c                óº   € V P                   f   R# V P                  e   V P                  V P                   ,
          # V P                  4       V P                   ,
          # )z]Optional[float]: Time elapsed since task was started, or ``None`` if the task hasn't started.N)rO  Ú	stop_timer�   rj   s   &rJ   rÈ  ÚTask.elapsedé  sC   € ð �?‰?Ò"ÙØ�>‰>Ò%Ø—>‘> D§O¡OÕ3Ð3Ø�}‰}‹ §¡Õ0Ð0rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   rI  ó  s   ø€ ÷ .ñ .™$ñ .rM   c                ó   € V P                   RJ# )zCheck if the task has finished.N)rÇ  rj   s   &rJ   r’  ÚTask.finishedò  s   € ð ×!Ñ!¨Ð-Ð-rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   rF   )rH   rI   s   "€rJ   rK   rI  ø  s   ø€ ÷ ñ ™Eñ rM   c                ó¢   € V P                   '       g   R# V P                  V P                   ,          R,          p\        R\        RV4      4      pV# )zOfloat: Get progress of task as a percentage. If a None total was set, returns 0ç        ç      Y@)r‹   rQ   Úminrº  )rT   rQ   s   & rJ   Ú
percentageÚTask.percentage÷  s@   € ð �z�zˆzÙØ—^‘^ d§j¡jÕ0°EÕ9ˆ	Ü˜œs 3¨	Ó2Ó3ˆ	ØÐrM   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   rn  )rH   rI   s   "€rJ   rK   rI    s   ø€ ÷ ñ ‘x¡•ñ rM   c                ó¤  € V P                   f   R# V P                  ;_uu_ 4        V P                  pV'       g    RRR4       R# VR,          P                  V^ ,          P                  ,
          pV^ 8X  d    RRR4       R# \	        V4      p\        V4       \        R V 4       4      pWB,          pVuuRRR4       #   + '       g   i     R# ; i)z=Optional[float]: Get the estimated speed in steps per second.Nc              3   ó8   "  € T F  qP                   x € K  	  R # 5irg   r  )Ú.0Úsamples   & rJ   Ú	<genexpr>ÚTask.speed.<locals>.<genexpr>  s   é € Ð!OÁ°v×"2Ö"2Ãùó   ‚r#  )rO  Ú_lockÚ	_progressre  ÚiterrÁ   r  )rT   rB   Ú
total_timeÚiter_progressÚtotal_completedr‚  s   &     rJ   r‚  Ú
Task.speed   s›   € ð �?‰?Ò"ÙØ�Z�Z‹ZØ—~‘~ˆHßØ÷ ‰Zð " "�×/Ñ/°(¸1µ+×2GÑ2GÕGˆJØ˜QŒØ÷ ‰Zô ! ›NˆMÜ�ÔÜ!Ñ!OÁÓ!OÓOˆOØ#Õ0ˆEØ÷ �Z�Z‹Zús   ¥B>Á3B>Â1B>Â>C	c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   rn  )rH   rI   s   "€rJ   rK   rI    s   ø€ ÷ ñ ¡©¥ñ rM   c                ó    € V P                   '       d   R# V P                  pV'       g   R# V P                  pVf   R# \        W!,          4      pV# )zJOptional[float]: Get estimated time to completion, or ``None`` if no data.r_  N)r’  r‚  rT  r   )rT   r‚  rT  Úestimates   &   rJ   rî  ÚTask.time_remaining  sC   € ð �=�=ˆ=ÙØ—
‘
ˆßÙØ—N‘Nˆ	ØÒÙÜ˜	Õ)Ó*ˆØˆrM   c                ó   <€ V ^8„  d   QhRR/# rX   rZ   )rH   rI   s   "€rJ   rK   rI     s   ø€ ÷ #ñ #˜ñ #rM   c                óV   € V P                   P                  4        RV n        RV n        R# )zReset progress.N)rm  ÚclearrÇ  rÞ  rj   s   &rJ   Ú_resetÚTask._reset   s"   € à�‰×ÑÔØ!ˆÔØ"ˆÖrM   c                ó,  <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[S[,          ;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[S[S[3,          ;R&   S[S[,          ;R	&   S[S[,          ;R
&   S[S[,          ;R&   S[S[	,          ;R&   S[
;R&   # )rA   ra  rŠ   r‹   rQ   rK  rÇ  ÚvisibleÚfieldsrO  rX  rÞ  rm  rl  )r;   r—   r    rG   ÚGetTimeCallabler™   r   r   r   r<  r   )rH   rI   s   "€rJ   rK   rI  ©  sÚ   ø‡ ‚ ñ 	�Jñ ñ Ññ ñ ‘E�?Ññ ñ" Ññ# ñ( Ññ) ñ. ™E•?Ñ)ñ/ ñ4 Ññ5 ñ: ‘‘c��NÑ8ñ; ñ@ ™•ÑMñA ñF ™�ÑLñG ñL ™U•OÑ*ñM ñR ‘^Õ$ñ ñS ñZ Ñ;ò[ rM   )rÞ  rÇ  )r{   r|   r}   r~   r   rÇ  r}  r   Údictr~  rO  rX  rÞ  rm  r   rl  r�   r$  r»  rT  rÈ  r’  rb  r‚  rî  rz  ro  r€   r�   r%  s   @rJ   r]  r]  ©  s5  ø‡ € ñð Hð (ð ?ð +ð ,à%)€MØ(à€GØJá"°4Ô8€FØ?á"'°¸5ÀuÔ"M€JØNá!&¨t¸%ÀeÔ!L€IØNà&*€NØ>á',Ù2¸ÀUô(€Iñ ˜e°UÔ;€EØ÷ ð  ð ÷+ó ð+ð ÷+ó ð+ð ÷1ó ð1ð ÷.ó ð.ð ÷ó ðð ÷ó ðð" ÷ó ð÷#ð #÷o ƒ rM   r]  c                   ó0  a € ] tR tRt o RtRRRRR^
RR	R
RRRRRRRRRRR/
V 3R lR llt]V 3R lR l4       t]V 3R lR l4       t	]V 3R lR l4       t
]V 3R lR l4       t]V 3R lR l4       tV 3R lR ltV 3R lR  ltV 3R! lR" ltV 3R# lR$ ltRQV 3R% lR& lltRRR'RR(R)/V 3R* lR+ lllt]P(                  RSR,RR'RR(R)/V 3R- lR. lll4       t]P(                  RSR,RR'RR(R)/V 3R/ lR0 lll4       tRTR,RR'RR(R)/V 3R1 lR2 llltV 3R3 lR4 ltV 3R5 lR6 ltR,RR7RR8RR(RR9RR:R/V 3R; lR< lltR=RR,RR7^ R9RR(R/V 3R> lR? lltRUV 3R@ lRA lltV 3RB lRC ltV 3RD lRE ltV 3RF lRG ltV 3RH lRI ltV 3RJ lRK ltRVV 3RL lRM llt V 3RN lRO lt!RPt"V t#R# )WrC   i'  a\  Renders an auto-updating progress bar(s).

Args:
    console (Console, optional): Optional Console instance. Defaults to an internal Console instance writing to stdout.
    auto_refresh (bool, optional): Enable auto refresh. If disabled, you will need to call `refresh()`.
    refresh_per_second (Optional[float], optional): Number of times per second to refresh the progress information or None to use default (10). Defaults to None.
    speed_estimate_period: (float, optional): Period (in seconds) used to calculate the speed estimate. Defaults to 30.
    transient: (bool, optional): Clear the progress on exit. Defaults to False.
    redirect_stdout: (bool, optional): Enable redirection of stdout, so ``print`` may be used. Defaults to True.
    redirect_stderr: (bool, optional): Enable redirection of stderr. Defaults to True.
    get_time: (Callable, optional): A callable that gets the current time, or None to use Console.get_time. Defaults to None.
    disable (bool, optional): Disable progress display. Defaults to False
    expand (bool, optional): Expand tasks table to fit width. Defaults to False.
r�   NrŒ   Tr�   Úspeed_estimate_periodg      >@rŽ   FÚredirect_stdoutÚredirect_stderrr�   r•   Úexpandc                ó–   <€ V ^8„  d   QhRS[ S[S[3,          RS[S[,          RS[RS[RS[RS[RS[RS[R	S[S[,          R
S[RS[RR/# )rA   r¤   r�   rŒ   r�   r‚  rŽ   rƒ  r„  r�   r•   r…  rY   N)r&   r—   rN  r    r,   r™   rG   r  )rH   rI   s   "€rJ   rK   ÚProgress.__annotate__7  s—   ø€ ÷ "$ñ "$á™™^Ð+Õ,ð"$ñ ™'Õ"ð"$ñ ð	"$ñ
 "ð"$ñ  %ð"$ñ ð"$ñ ð"$ñ ð"$ñ ™?Õ+ð"$ñ ð"$ñ ð"$ð 
ñ"$rM   c       
   
     óì  € V^ 8”  g   Q R4       h\        4       V n        T;'       g    V P                  4       V n        W@n        W�n        W n        / V n        \        ^ 4      V n	        \        T;'       g    \        4       VVVVVV P                  R7      V n        T;'       g    V P                  P                  V n        V P                  P                   V n        V P                  P"                  V n        R# )r   zrefresh_per_second must be > 0)r�   rŒ   r�   rŽ   rƒ  r„  Úget_renderableN)r   rl  Úget_default_columnsr¤   r‚  r•   r…  Ú_tasksr;   Ú_task_indexr2   r+   r‰  r_   r�   r�   ÚprintÚlog)rT   r�   rŒ   r�   r‚  rŽ   rƒ  r„  r�   r•   r…  r¤   s   &$$$$$$$$$$*rJ   rS   ÚProgress.__init__7  sÊ   € ð " AÔ%ÐGÐ'GÓGÐ%Ü“WˆŒ
Ø×<Ð< $×":Ñ":Ó"<ˆŒØ%:Ô"àŒØŒØ*,ˆŒÜ#)¨!£9ˆÔÜØ×,Ð,œ{›}Ø%Ø1ØØ+Ø+Ø×.Ñ.ô
ˆŒ	ð !×9Ð9 D§L¡L×$9Ñ$9ˆŒØ—\‘\×'Ñ'ˆŒ
Ø—<‘<×#Ñ#ˆŽrM   c                ó4   <€ V ^8„  d   QhRS[ S[R3,          /# )rA   rY   .)r#   rN  )rH   rI   s   "€rJ   rK   r‡  \  s   ø€ ÷ 
ñ 
¡E©.¸#Ð*=Õ$>ñ 
rM   c                óP   € \        R4      \        4       \        4       \        4       3# )a  Get the default columns used for a new Progress instance:
   - a text column for the description (TextColumn)
   - the bar itself (BarColumn)
   - a text column showing completion percentage (TextColumn)
   - an estimated-time-remaining column (TimeRemainingColumn)
If the Progress instance is created without passing a columns argument,
the default columns defined here will be used.

You can also create a Progress instance using custom columns before
and/or after the defaults, as in this example:

    progress = Progress(
        SpinnerColumn(),
        *Progress.get_default_columns(),
        "Elapsed:",
        TimeElapsedColumn(),
    )

This code shows the creation of a Progress display, containing
a spinner to the left, the default columns, and a labeled elapsed
time column.
r›   )rž   r    r¡   r¢   )rÖ  s   &rJ   rŠ  ÚProgress.get_default_columns[  s(   € ô2 ÐAÓBÜ‹KÜÓ ÜÓ!ð	
ð 	
rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   )r,   )rH   rI   s   "€rJ   rK   r‡  {  s   ø€ ÷ !ñ !™ñ !rM   c                ó.   € V P                   P                  # rg   )r_   r�   rj   s   &rJ   r�   ÚProgress.consolez  s   € à�y‰y× Ñ Ð rM   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   )r   r]  )rH   rI   s   "€rJ   rK   r‡    s   ø€ ÷ .ñ .‘t™D•zñ .rM   c                ó®   € V P                   ;_uu_ 4        \        V P                  P                  4       4      uuRRR4       #   + '       g   i     R# ; i)zGet a list of Task instances.N)rl  Úlistr‹  Úvaluesrj   s   &rJ   ÚtasksÚProgress.tasks~  s.   € ð �Z�Z‹ZÜ˜Ÿ™×*Ñ*Ó,Ó-÷ �Z�Z‹Zúó   •#AÁA	c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   )r   r;   )rH   rI   s   "€rJ   rK   r‡  …  s   ø€ ÷ ,ñ ,™$™v�,ñ ,rM   c                ó®   € V P                   ;_uu_ 4        \        V P                  P                  4       4      uuRRR4       #   + '       g   i     R# ; i)zA list of task IDs.N)rl  r˜  r‹  Úkeysrj   s   &rJ   Útask_idsÚProgress.task_ids„  s.   € ð �Z�Z‹ZÜ˜Ÿ™×(Ñ(Ó*Ó+÷ �Z�Z‹Zúrœ  c                ó    <€ V ^8„  d   QhRS[ /# r¸   rÇ   )rH   rI   s   "€rJ   rK   r‡  ‹  s   ø€ ÷ Gñ G™$ñ GrM   c                ój  € V P                   ;_uu_ 4        V P                  '       g    RRR4       R# \        ;QJ d4    R V P                  P                  4        4       F  '       d   K   RM)	  RM%! R V P                  P                  4        4       4      uuRRR4       #   + '       g   i     R# ; i)z'Check if all tasks have been completed.NTc              3   ó8   "  € T F  qP                   x € K  	  R # 5irg   )r’  )rg  r©   s   & rJ   ri  Ú$Progress.finished.<locals>.<genexpr>�  s   é € ÐFÑ1E¨—}–}Ó1Eùrk  F)rl  r‹  Úallr™  rj   s   &rJ   r’  ÚProgress.finishedŠ  sf   € ð �Z�Z‹ZØ—;—;�;Ø÷ ‰Z÷ “3ÑF°·±×1CÑ1CÔ1EÓF—3—3’3ÑF°·±×1CÑ1CÔ1EÓFÓF÷ �Z�Z‹Zús   •B!³
B!¾)B!Á*,B!Â!B2	c                ó   <€ V ^8„  d   QhRR/# rX   rZ   )rH   rI   s   "€rJ   rK   r‡  ’  s   ø€ ÷ *ñ *�tñ *rM   c                óf   € V P                   '       g   V P                  P                  RR7       R# R# )zStart the progress display.T)r\   N)r•   r_   ri   rj   s   &rJ   ri   ÚProgress.start’  s"   € à�|�|ˆ|Ø�I‰I�O‰O DˆOÖ)ñ rM   c                ó   <€ V ^8„  d   QhRR/# rX   rZ   )rH   rI   s   "€rJ   rK   r‡  —  s   ø€ ÷ !ñ !�dñ !rM   c                óæ   € V P                   P                  4        V P                  P                  '       g;   V P                  P                  '       g   V P                  P                  4        R# R# R# )zStop the progress display.N)r_   r4  r�   Úis_interactiveÚ
is_jupyterr�  rj   s   &rJ   r4  ÚProgress.stop—  sH   € à�	‰	�‰ÔØ�|‰|×*×*Ð*°4·<±<×3J×3JÐ3JØ�L‰L×ÑÖ ñ 4KÑ*rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   r(   )rH   rI   s   "€rJ   rK   r‡  �  s   ø€ ÷ ñ ™4ñ rM   c                ó&   € V P                  4        V # rg   rh   rj   s   &rJ   rk   ÚProgress.__enter__�  rm   rM   c                óp   <€ V ^8„  d   QhRS[ S[S[,          ,          RS[ S[,          RS[ S[,          RR/# ro   rs   )rH   rI   s   "€rJ   rK   r‡  ¡  sG   ø€ ÷ ñ á™4¡Õ.Õ/ðñ ™-Õ(ðñ ™Õ'ð	ð
 
ñrM   c                ó&   € V P                  4        R # rg   )r4  rx   s   &&&&rJ   ry   ÚProgress.__exit__¡  s   € ð 	�	‰	ŽrM   c                óª   <€ V ^8„  d   QhRS[ S[S[,          S[S[,          3,          RS[S[,          RS[RS[S[,          RS[RS[RS[S[,          /# )rA   r‰   r‹   rQ   rD   rŠ   rE   rY   )	r&   r   r<   r!   r    rG   r˜   r;   r—   )rH   rI   s   "€rJ   rK   r‡  ©  ss   ø€ ÷ )ñ )á™¡Õ.±¹Õ0FÐFÕGð)ñ ™�ð)ñ ð	)ñ
 ™&Õ!ð)ñ ð)ñ ð)ñ 
‘,Õ	ñ)rM   c              #  óü  "  € Vf   \        \        V4      4      ;'       g    RpVf   V P                  WRVR7      pMV P                  WBVR7       V P                  P
                  '       dF   \        WV4      ;_uu_ 4       pV F   pVx € V;P                  ^,          un        K"  	  RRR4       R# V P                  p	V P                  p
V F  pVx € V	! V^4       V
! 4        K  	  R#   + '       g   i     R# ; i5i)a�  Track progress by iterating over a sequence.

Args:
    sequence (Sequence[ProgressType]): A sequence of values you want to iterate over and track progress.
    total: (float, optional): Total number of steps. Default is len(sequence).
    completed (int, optional): Number of steps completed so far. Defaults to 0.
    task_id: (TaskID): Task to track. Default is new task.
    description: (str, optional): Description of task, if new task is created.
    update_period (float, optional): Minimum time (in seconds) between calls to update(). Defaults to 0.1.

Returns:
    Iterable[ProgressType]: An iterable of values taken from the provided sequence.
NrS  )
rG   r   Úadd_taskra   r_   rŒ   r?   rQ   r]   r\   )rT   r‰   r‹   rQ   rD   rŠ   rE   Útrack_threadÚvaluer]   r\   s   &&&&&&&    rJ   r£   ÚProgress.track©  sÎ   é € ð, Š=Üœ+ hÓ/Ó0×8Ð8°DˆEàŠ?Ø—m‘m KÈ	�mÓR‰Gà�K‰K˜¸	ˆKÔBà�9‰9×!×!Ð!Ü˜d¨]×;Ô;¸|Û%�EØ’KØ ×*Ò*¨aÕ/×*ñ &÷ <Ñ;ð
 —l‘lˆGØ—l‘lˆGÛ!�Ø’Ù˜ Ô#Ù–	ó "÷ <×;Ð;üs*   ‚C<¢A	C<Á,C<Â 'C(Â'AC<Ã(C9	Ã3	C<rD   rŠ   r6  c          
      óX   <€ V ^8„  d   QhRS[ RS[S[,          RS[S[,          RS[RS[ /# )rA   r8  r‹   rD   rŠ   rY   )r   r    r˜   r;   r—   )rH   rI   s   "€rJ   rK   r‡  Ô  sM   ø€ ÷ (@ñ (@áð(@ñ ™�}ð(@ñ
 ™&Õ!ð(@ñ ð(@ñ 
ñ(@rM   c               óB  € RpVe   TpM>Ve;   V P                   ;_uu_ 4        V P                  V,          P                  pRRR4       Vf   \        R4      hVf   V P	                  WER7      pMV P                  W5R7       \        WVRR7      #   + '       g   i     LV; i)a  Track progress file reading from a binary file.

Args:
    file (BinaryIO): A file-like object opened in binary mode.
    total (int, optional): Total number of bytes to read. This must be provided unless a task with a total is also given.
    task_id (TaskID): Task to track. Default is new task.
    description (str, optional): Description of task, if new task is created.

Returns:
    BinaryIO: A readable file-like object in binary mode.

Raises:
    ValueError: When no total value can be extracted from the arguments or the task.
Nz?unable to get the total number of bytes, please specify 'total'©r‹   F©rª   )rl  r‹  r‹   Ú
ValueErrorr¸  ra   r¦   )rT   r8  r‹   rD   rŠ   Útotal_bytess   &&&$$ rJ   r;  ÚProgress.wrap_fileÔ  sŽ   € ð. (,ˆØÒØ‰KØÒ Ø——“Ø"Ÿk™k¨'Õ2×8Ñ8�÷ àÒÜØQóð ð
 Š?Ø—m‘m K�mÓC‰Gà�K‰K˜ˆKÔ3ä�t 7¸Ô?Ð?÷ —ús   ¢BÂB	r‹   c                óÌ   <€ V ^8„  d   QhRS[ S[RS[3,          RS[R,          RS[RS[S[,          RS[S[,          RS[S[,          R	S[S[,          R
S[S[,          RS[RS[/
# )rA   r8  r=  rÙ   rI  r@  rA  rB  rC  r‹   rD   rŠ   rY   )r&   r—   r½   r'   r˜   r    r;   r   )rH   rI   s   "€rJ   rK   r‡  ÿ  s”   ø€ ÷ ñ á‘C˜©%Ð/Õ0ðñ �d�mðñ ð	ñ
 ™3•-ðñ ™•ðñ ™#•ðñ ™�}ðñ ™&Õ!ðñ ðñ 
ñrM   c               ó   € R # rg   rZ   ©
rT   r8  rÙ   r@  rA  rB  rC  r‹   rD   rŠ   s
   &&&&&&&$$$rJ   rF  ÚProgress.openþ  ó   € ñ 	rM   c                óð   <€ V ^8„  d   QhRS[ S[RS[3,          RS[ S[R,          S[R,          3,          RS[RS[S[,          RS[S[,          R	S[S[,          R
S[S[,          RS[S[,          RS[RS[/
# )rA   r8  r=  rÙ   r?  r>  r@  rA  rB  rC  r‹   rD   rŠ   rY   )r&   r—   r½   r'   r˜   r    r;   r"   )rH   rI   s   "€rJ   rK   r‡    s¢   ø€ ÷ ñ á‘C˜©%Ð/Õ0ðñ ‘G˜C•L¡'¨$¥-Ð/Õ0ðñ ð	ñ
 ™3•-ðñ ™•ðñ ™#•ðñ ™�}ðñ ™&Õ!ðñ ðñ 
ñrM   c               ó   € R # rg   rZ   rÅ  s
   &&&&&&&$$$rJ   rF  rÆ    rÇ  rM   c                ó  <€ V ^8„  d   QhRS[ S[RS[3,          RS[ S[R,          S[R,          S[R,          3,          RS[RS[S[,          R	S[S[,          R
S[S[,          RS[S[,          RS[S[,          RS[RS[ S[S[3,          /
# )rA   r8  r=  rÙ   rI  r>  r?  r@  rA  rB  rC  r‹   rD   rŠ   rY   )	r&   r—   r½   r'   r˜   r    r;   r   r"   )rH   rI   s   "€rJ   rK   r‡    s¾   ø€ ÷ Kñ Ká‘C˜©%Ð/Õ0ðKñ ‘G˜D•M¡7¨4¥=±'¸#µ,Ð>Õ?ðKñ ð	Kñ
 ™3•-ðKñ ™•ðKñ ™#•ðKñ ™�}ðKñ ™&Õ!ðKñ ðKñ 
‰x™ÐÕ	 ñKrM   c               ó&  € RP                  \        VRR7      4      p
V
R9  d   \        RV: 24      hV^8H  pV
R8X  d&   V^8X  d   \        P                  ! R\
        4       RpM"V
R9   d   V^ 8X  d   \        R4      hV^8X  d   RpVf   \        V4      P                  pVf   V P                  W—R7      pMV P                  W‡R7       \        P                  ! VR	VR
7      p\        WÀVRR7      pVR9   d   \        P                  ! VVVVVR7      # V# )a«  Track progress while reading from a binary file.

Args:
    path (Union[str, PathLike[str]]): The path to the file to read.
    mode (str): The mode to use to open the file. Only supports "r", "rb" or "rt".
    buffering (int): The buffering strategy to use, see :func:`io.open`.
    encoding (str, optional): The encoding to use when reading in text mode, see :func:`io.open`.
    errors (str, optional): The error handling strategy for decoding errors, see :func:`io.open`.
    newline (str, optional): The strategy for handling newlines in text mode, see :func:`io.open`.
    total (int, optional): Total number of bytes to read. If none given, os.stat(path).st_size is used.
    task_id (TaskID): Task to track. Default is new task.
    description (str, optional): Description of task, if new task is created.

Returns:
    BinaryIO: A readable file-like object in binary mode.

Raises:
    ValueError: When an invalid mode is given.
r|  F)ÚreverseÚbrzinvalid mode zaline buffering (buffering=1) isn't supported in binary mode, the default buffer size will be usedzcan't have unbuffered text I/Or¾  rI  )r@  Tr¿  )rA  rB  rC  Úline_buffering)rÍ  r>  r?  r#  )r>  r?  )r?  r>  )rw   ÚsortedrÀ  ÚwarningsÚwarnÚRuntimeWarningr   Úst_sizer¸  ra   ÚiorF  r¦   ÚTextIOWrapper)rT   r8  rÙ   r@  rA  rB  rC  r‹   rD   rŠ   Ú_moderÎ  r¨   r)  s   &&&&&&&$$$    rJ   rF  rÆ    s  € ðB —‘œ˜t¨UÔ3Ó4ˆØÐ)Ô)Ü˜}¨T©HÐ5Ó6Ð6ð # a™ˆØ�DŒ=˜Y¨!œ^Ü�MŠMØsÜôð ‰IØ�kÔ!Ø˜AŒ~Ü Ð!AÓBÐBØ˜a”Ø�	ð Š=Ü˜“J×&Ñ&ˆEð Š?Ø—m‘m K�mÓ=‰Gà�K‰K˜ˆKÔ-ô —’˜˜t¨yÔ9ˆÜ˜ w¸TÔBˆð �;ÔÜ×#Ò#ØØ!ØØØ-ôð ð ˆrM   c                ó$   <€ V ^8„  d   QhRS[ RR/# ©rA   rD   rY   N©r;   )rH   rI   s   "€rJ   rK   r‡  k  s   ø€ ÷ 2ñ 2¡&ð 2¨Tñ 2rM   c                óÔ   € V P                   ;_uu_ 4        V P                  V,          pVP                  f   V P                  4       Vn        RRR4       R#   + '       g   i     R# ; i)zÁStart a task.

Starts a task (used when calculating elapsed time). You may need to call this manually,
if you called ``add_task`` with ``start=False``.

Args:
    task_id (TaskID): ID of task.
N)rl  r‹  rO  r�   )rT   rD   r©   s   && rJ   Ú
start_taskÚProgress.start_taskk  s>   € ð �Z�Z‹ZØ—;‘;˜wÕ'ˆDØ�‰Ò&Ø"&§-¡-£/�”÷ �Z�ZŠZús   •7AÁA'	c                ó$   <€ V ^8„  d   QhRS[ RR/# rØ  rÙ  )rH   rI   s   "€rJ   rK   r‡  y  s   ø€ ÷ *ñ *¡ð *¨Dñ *rM   c                óâ   € V P                   ;_uu_ 4        V P                  V,          pV P                  4       pVP                  f   W2n        W2n        RRR4       R#   + '       g   i     R# ; i)zfStop a task.

This will freeze the elapsed time on the task.

Args:
    task_id (TaskID): ID of task.
N)rl  r‹  r�   rO  rX  )rT   rD   r©   rd  s   &&  rJ   Ú	stop_taskÚProgress.stop_tasky  sF   € ð �Z�Z‹ZØ—;‘;˜wÕ'ˆDØŸ=™=›?ˆLØ�‰Ò&Ø".”Ø)ŒN÷ �Z�ZŠZús   •>AÁA.	rQ   r]   r}  r\   c                óž   <€ V ^8„  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[S[,          RS[S[,          RS[RS[R	R
/	# )rA   rD   r‹   rQ   r]   rŠ   r}  r\   r~  rY   N)r;   r    rG   r—   r™   r   )rH   rI   s   "€rJ   rK   r‡  ˆ  sy   ø€ ÷ ;ñ ;áð;ñ ™�ð	;ñ
 ™E•?ð;ñ ™%•ð;ñ ™c•]ð;ñ ™$•ð;ñ ð;ñ ð;ð 
ñ;rM   c               ó–  € V P                   ;_uu_ 4        V P                  V,          p	V	P                  p
Ve'   W)P                  8w  d   W)n        V	P	                  4        Ve   V	;P                  V,          un        Ve   W9n        Ve   WYn        Ve   Win        V	P                  P                  V4       V	P                  V
,
          pV P                  4       pWÀP                  ,
          pV	P                  pVP                  pV'       d"   V^ ,          P                  V8  d
   V! 4        K)  V^ 8”  d   VP                  \        WË4      4       V	P                  e;   V	P                  V	P                  8¼  d    V	P                   f   V	P"                  V	n        RRR4       V'       d   V P%                  4        R# R#   + '       g   i     L,; i)aH  Update information associated with a task.

Args:
    task_id (TaskID): Task id (returned by add_task).
    total (float, optional): Updates task.total if not None.
    completed (float, optional): Updates task.completed if not None.
    advance (float, optional): Add a value to task.completed if not None.
    description (str, optional): Change task description if not None.
    visible (bool, optional): Set visible flag if not None.
    refresh (bool): Force a refresh of progress information. Default is False.
    **fields (Any): Additional data fields required for rendering.
N)rl  r‹  rQ   r‹   rz  rŠ   r}  r~  ra   r�   r‚  rm  Úpopleftre  Úappendr<  rÇ  rÈ  r\   )rT   rD   r‹   rQ   r]   rŠ   r}  r\   r~  r©   Úcompleted_startÚupdate_completedrd  Úold_sample_timerm  rã  s   &&$$$$$$,       rJ   ra   ÚProgress.updateˆ  sN  € ð0 �Z�Z‹ZØ—;‘;˜wÕ'ˆDØ"Ÿn™nˆOàÒ  U¯j©jÔ%8Ø"”
Ø—‘”ØÒ"Ø—’ 'Õ)•ØÒ$Ø!*”ØÒ&Ø#.Ô ØÒ"Ø&”Ø�K‰K×Ñ˜vÔ&Ø#Ÿ~™~°Õ?ÐàŸ=™=›?ˆLØ*×-GÑ-GÕGˆOØŸ™ˆIà×'Ñ'ˆGß 	¨!¥× 6Ñ 6¸Ô HÙ–	Ø !Ô#Ø× Ñ ¤°Ó!OÔPà—
‘
Ò&Ø—N‘N d§j¡jÔ0Ø×&Ñ&Ò.à%)§\¡\�Ô"÷A ÷D Ø�L‰LŽNñ ÷E �Zús   •C4F8Ä
B
F8Æ8G	ri   c                óx   <€ V ^8„  d   QhRS[ RS[RS[S[,          RS[RS[S[,          RS[S[,          RS[RR	/# )
rA   rD   ri   r‹   rQ   r}  rŠ   r~  rY   N)r;   r™   r    rG   r˜   r—   r   )rH   rI   s   "€rJ   rK   r‡  Å  sg   ø€ ÷ %ñ %áð%ñ ð	%ñ
 ™�ð%ñ ð%ñ ™$•ð%ñ ™c•]ð%ñ ð%ð 
ñ%rM   c               ó€  € V P                  4       pV P                  ;_uu_ 4        V P                  V,          p	V	P                  4        V'       d   TMRV	n        Ve   W9n        WIn        Ve   WYn        V'       d   Wyn        Ve   Win	        RV	n
        RRR4       V P                  4        R#   + '       g   i     L"; i)a@  Reset a task so completed is 0 and the clock is reset.

Args:
    task_id (TaskID): ID of task.
    start (bool, optional): Start the task after reset. Defaults to True.
    total (float, optional): New total steps in task, or None to use current total. Defaults to None.
    completed (int, optional): Number of steps completed. Defaults to 0.
    visible (bool, optional): Enable display of the task. Defaults to True.
    description (str, optional): Change task description if not None. Defaults to None.
    **fields (str): Additional data fields required for rendering.
N)r�   rl  r‹  rz  rO  r‹   rQ   r}  r~  rŠ   rÇ  r\   )
rT   rD   ri   r‹   rQ   r}  rŠ   r~  rd  r©   s
   &&$$$$$,  rJ   ÚresetÚProgress.resetÅ  s‰   € ð, —}‘}“ˆØ�Z�Z‹ZØ—;‘;˜wÕ'ˆDØ�K‰KŒMß.3™l¸ˆDŒOØÒ Ø"”
Ø&ŒNØÒ"Ø&”ßØ$”ØÒ&Ø#.Ô Ø!%ˆDÔ÷ ð 	�‰Ž÷ �Zús   ¥AB-Á<B-Â-B=	c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )rA   rD   r]   rY   N)r;   rG   )rH   rI   s   "€rJ   rK   r‡  ì  s"   ø€ ÷ 1ñ 1™vð 1±ð 1¸dñ 1rM   c                óÜ  € V P                  4       pV P                  ;_uu_ 4        V P                  V,          pVP                  pV;P                  V,          un        VP                  V,
          pW0P                  ,
          pVP
                  pVP                  p	V'       d"   V^ ,          P                  V8  d
   V	! 4        K)  \        V4      R8”  d
   V	! 4        K  VP                  \        W64      4       VP                  eL   VP                  VP                  8¼  d1   VP                  f#   VP                  Vn        VP                  Vn        RRR4       R#   + '       g   i     R# ; i)z‹Advance task by a number of steps.

Args:
    task_id (TaskID): ID of task.
    advance (float): Number of steps to advance. Default is 1.
rÔ  N)r�   rl  r‹  rQ   r‚  rm  rã  re  rÂ   rä  r<  r‹   rÇ  rÈ  r‚  rÞ  )
rT   rD   r]   rd  r©   rå  ræ  rç  rm  rã  s
   &&&       rJ   r]   ÚProgress.advanceì  sõ   € ð —}‘}“ˆØ�Z�Z‹ZØ—;‘;˜wÕ'ˆDØ"Ÿn™nˆOØ�NŠN˜gÕ%�NØ#Ÿ~™~°Õ?ÐØ*×-GÑ-GÕGˆOØŸ™ˆIà×'Ñ'ˆGß 	¨!¥× 6Ñ 6¸Ô HÙ–	Ü�i“. 4Ô'Ù–	Ø×Ñœ^¨LÓKÔLà—
‘
Ò&Ø—N‘N d§j¡jÔ0Ø×&Ñ&Ò.à%)§\¡\�Ô"Ø&*§j¡j�Ô#÷) �Z�ZŠZús   ¥A=EÂ#B-EÅE+	c                ó   <€ V ^8„  d   QhRR/# rX   rZ   )rH   rI   s   "€rJ   rK   r‡  
  s   ø€ ÷  ñ  ˜ñ  rM   c                óž   € V P                   '       g;   V P                  P                  '       d   V P                  P                  4        R# R# R# )z*Refresh (render) the progress information.N)r•   r_   r`   r\   rj   s   &rJ   r\   ÚProgress.refresh
  s1   € à�|�|ˆ| §	¡	× 4× 4Ð 4Ø�I‰I×ÑÖñ !5‰|rM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   r^  )rH   rI   s   "€rJ   rK   r‡    s   ø€ ÷ ñ ¡ñ rM   c                ó4   € \        V P                  4       !  pV# )z*Get a renderable for the progress display.)r-   Úget_renderables)rT   rf  s   & rJ   r‰  ÚProgress.get_renderable  s   € ä˜D×0Ñ0Ó2Ñ3ˆ
ØÐrM   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r¸   )r   r/   )rH   rI   s   "€rJ   rK   r‡    s   ø€ ÷ ñ ¡©.Õ!9ñ rM   c              #  óL   "  € V P                  V P                  4      pVx € R# 5i)z5Get a number of renderables for the progress display.N)Úmake_tasks_tablerš  )rT   Útables   & rJ   rõ  ÚProgress.get_renderables  s   é € à×%Ñ% d§j¡jÓ1ˆØŒùs   ‚"$c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )rA   rš  rY   )r   r]  r8   )rH   rI   s   "€rJ   rK   r‡    s   ø€ ÷ ñ ¡h©t¥nð ¹ñ rM   c                óô   a€ R V P                    4       p\        P                  ! VRRRV P                  / pV F;  oSP                  '       g   K  VP
                  ! V3R lV P                    4       !   K=  	  V# )z¯Get a table to render the Progress display.

Args:
    tasks (Iterable[Task]): An iterable of Task instances, one per row of the table.

Returns:
    Table: A table instance.
c              3   ó¢   "  € T FE  p\        V\        4      '       d   \        R R7      MVP                  4       P	                  4       x € KG  	  R# 5i)Tr¢  N)rˆ  r—   r7   rY  Úcopy)rg  Ú_columns   & rJ   ri  Ú,Progress.make_tasks_table.<locals>.<genexpr>"  sI   é € ð 
ñ (�ô ˜g¤s×+Ò+ô ˜tÕ$à×-Ñ-Ó/×4Ñ4Ó6ô7ó (ùs   ‚AAÚpaddingr…  c              3   ó„   <"  € T F5  p\        V\        4      '       d   VP                  SR 7      MV! S4      x € K7  	  R# 5i)r¨  N)rˆ  r—   rH   )rg  Úcolumnr©   s   & €rJ   ri  r  /  sB   øé € ð ñ '3˜Fô  *¨&´#×6Ò6ð #ŸM™M¨t˜MÔ4á!'¨£ô.ó '3ùs   ƒ=A )r   é   )r¤   r8   Úgridr…  r}  Úadd_row)rT   rš  Útable_columnsrú  r©   s   &&  @rJ   rù  ÚProgress.make_tasks_table  so   ø€ ñ
ð  Ÿ<š<ó
ˆô —
’
˜MÐN°6ÐNÀ$Ç+Á+ÑNˆãˆDØ�|�|Š|Ø—’ôð '+§l¢lóô	ñ ð ˆrM   c                ó    <€ V ^8„  d   QhRS[ /# r¸   r^  )rH   rI   s   "€rJ   rK   r‡  :  s   ø€ ÷ )ñ )™.ñ )rM   c                óˆ   € V P                   ;_uu_ 4        V P                  4       uuRRR4       #   + '       g   i     R# ; i)z+Makes the Progress class itself renderable.N)rl  r‰  rj   s   &rJ   Ú__rich__ÚProgress.__rich__:  s#   € à�Z�Z‹ZØ×&Ñ&Ó(÷ �Z�Z‹Zús	   •0°A	c                óT   <€ V ^8„  d   QhRS[ RS[RS[S[,          RS[RS[RS[RS[/# )rA   rŠ   ri   r‹   rQ   r}  r~  rY   )r—   r™   r    rG   r˜   r   r;   )rH   rI   s   "€rJ   rK   r‡  ?  sU   ø€ ÷ )ñ )áð)ñ ð)ñ ™�ð	)ñ
 ð)ñ ð)ñ ð)ñ 
ñ)rM   c                óÊ  € V P                   ;_uu_ 4        \        V P                  VVVVVV P                  V P                   R7      pWpP                  V P                  &   V'       d   V P                  V P                  4       V P                  p\        \        V P                  4      ^,           4      V n        RRR4       V P                  4        X#   + '       g   i     L"; i)a¹  Add a new 'task' to the Progress display.

Args:
    description (str): A description of the task.
    start (bool, optional): Start the task immediately (to calculate elapsed time). If set to False,
        you will need to call `start` manually. Defaults to True.
    total (float, optional): Number of total steps in the progress if known.
        Set to None to render a pulsing animation. Defaults to 100.
    completed (int, optional): Number of steps completed so far. Defaults to 0.
    visible (bool, optional): Enable display of the task. Defaults to True.
    **fields (str): Additional data fields required for rendering.

Returns:
    TaskID: An ID you can use when calling `update`.
)r}  r~  rK  rl  N)	rl  r]  rŒ  r�   r‹  rÛ  r;   r˜   r\   )	rT   rŠ   ri   r‹   rQ   r}  r~  r©   Únew_task_indexs	   &&&&&&,  rJ   r¸  ÚProgress.add_task?  s¬   € ð0 �Z�Z‹ZÜØ× Ñ ØØØØØØŸ-™-Ø—j‘jô	ˆDð -1�K‰K˜×(Ñ(Ñ)ßØ—‘ × 0Ñ 0Ô1Ø!×-Ñ-ˆNÜ%¤c¨$×*:Ñ*:Ó&;¸aÕ&?Ó@ˆDÔ÷ ð  	�‰ŒØÐ÷# �Zús   •B#CÃC"	c                ó$   <€ V ^8„  d   QhRS[ RR/# rØ  rÙ  )rH   rI   s   "€rJ   rK   r‡  j  s   ø€ ÷ %ñ %¡6ð %¨dñ %rM   c                ó‚   € V P                   ;_uu_ 4        V P                  V RRR4       R#   + '       g   i     R# ; i)zEDelete a task if it exists.

Args:
    task_id (TaskID): A task ID.

N)rl  r‹  )rT   rD   s   &&rJ   Úremove_taskÚProgress.remove_taskj  s%   € ð �Z�Z‹ZØ—‘˜GÐ$÷ �Z�ZŠZús   •-­>	)rl  rŒ  r‹  r¤   r•   r…  r�   r_   rŽ  r�  r‚  )Nr   Nú
Working...çš™™™™™¹?rg   ©r#  NNN©r?  r#  NNN)r  )Tr`  r   T)$r{   r|   r}   r~   r   rS   rà  rŠ  r$  r�   rš  r   r’  ri   r4  rk   ry   r£   r;  ÚtypingÚoverloadrF  rÛ  rß  ra   rë  r]   r\   r‰  rõ  rù  r  r¸  r  r€   r�   r%  s   @rJ   rC   rC   '  sÃ  ø‡ € ñð"$ð &*ð"$ð "ð	"$ð
 %'ð"$ð (,ð"$ð  ð"$ð !%ð"$ð !%ð"$ð /3ð"$ð ð"$ð ÷"$ò "$ðH ÷
ó ð
ð< ÷!ó ð!ð ÷.ó ð.ð
 ÷,ó ð,ð
 ÷Gó ðG÷*ð *÷
!ð !÷ð ÷ð ÷)ò )ñV(@ð
 %)ð(@ð (÷(@ó (@ðT ‡_�_ñð  $ðð %)ðð (÷ò ó ðð ‡_�_ñð  $ðð %)ðð (÷ò ó ðñKð  $ðKð %)ðKð (÷Kó K÷Z2ð 2÷*ð *ð;ð "&ð	;ð
 &*ð;ð $(ð;ð &*ð;ð #'ð;ð ÷;ò ;ðz%ð ð	%ð
 "&ð%ð ð%ð #'ð%ð &*÷%ò %÷N1ò 1÷< ð  ÷
ð ÷
ð ÷
ð ÷B)ð )÷
)ò )÷V%ö %rM   rC   Ú__main__)ÚPanel)ÚRule)ÚSyntax)r8   a~  def loop_last(values: Iterable[T]) -> Iterable[Tuple[bool, T]]:
    """Iterate and generate a tuple with a flag for last value."""
    iter_values = iter(values)
    try:
        previous_value = next(iter_values)
    except StopIteration:
        return
    for value in iter_values:
        yield False, previous_value
        previous_value = value
    yield True, previous_valueÚpython)Úline_numbersÚfooÚbarÚbazÚ1Ú2Ú3z:Text may be printed while the progress bars are rendering.z(In fact, [i]any[/i] renderable will workzSuch as [magenta]tables[/]...zPretty printed structures...ÚtypeÚexampler“  zPretty printedz	Syntax...zGive it a try!)Úcycle)Úrecordz[red]DownloadingrÔ  r¾  z[green]Processingz[yellow]Thinkingrâ  rÀ   g333333Ó?g{®Gáz„?)é   é   )r,  é   )r  Nr   TNFNé
   r„   r…   r†   r‡   r  FTr  r  )…rÔ  Úsysr  rÐ  Úabcr   r   Úcollectionsr   Údataclassesr   r   Údatetimer	   r
   r   Úmathr   r   Úoperatorr   Úosr   r   Ú	threadingr   r   r   Útypesr   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   Úversion_infor'   Úpip._vendor.typing_extensionsr)   r|  r*   r+   r�   r,   r-   r.   r/   rž  r0   Újupyterr1   r_   r2   Úprogress_barr4   r‡  r5   r‘   r6   rú  r7   r8   r“  r9   r:   r˜   r;   r<   rG   r  r=   r?   r£   r¦   r'  r;  r  rF  rN  rq  r  rž   r    r¿  r¡   r¢   rö  r   r  r:  r6  r<  r]  rC   r{   ÚrandomÚtimeÚpanelr  Úruler  Úsyntaxr  r  Úprogress_renderablesÚ	itertoolsr*  ÚexamplesrŠ  rB   r¸  Útask1Útask2Útask3r’  ra   ÚsleepÚrandintrŽ  rÁ   rZ   rM   rJ   Ú<module>rK     sÇ  ðÛ 	Û 
Û Û ß #Ý ß (Ý ß .Ý Ý Ý  ß ß *Ñ *Ý ÷÷ ÷ ÷ ÷ ð* ×Ñ�vÔÞå5à×Ñ�wÔÞå2ç #ß BÓ BÝ $Ý !Ý Ý %Ý Ý ß  ß  á	�˜3Ó	€á�~Ó&€à˜2˜u˜9Õ%€ð ‡^‚^�D˜& (Ó+€ô%�6ô %÷PI
ôXd1ˆi˜ô d1ôN8�> "Õ% w¨r¥{ô 8ð*>*ð $ð	>*ð
 ð>*ð "&ð>*ð ð>*ð /3ð>*ð !#ð>*ð "ð>*ð !/ð>*ð !/ð>*ð )ð>*ð ÷>*ðB ‡�ñ	ð  ð	ð $ð	ð ð	ð "&ð	ð ð	ð /3ð	ð !#ð	ð "ð	ð  !/ð!	ð" !/ð#	ð$ )ð%	ð& ÷'	ó ð	ð0 ‡�ñ	ð  ð	ð $ð	ð ð	ð "&ð	ð ð	ð /3ð	ð !#ð	ð "ð	ð  !/ð!	ð" !/ð#	ð$ )ð%	ð& ÷'	ó ð	ñ0S*ð  ðS*ð $ðS*ð ðS*ð "&ðS*ð ðS*ð /3ðS*ð !#ðS*ð "ðS*ð  !/ð!S*ð" !/ð#S*ð$ )ð%S*ð& ÷'S*ð S*ôl'1�Sô '1ôT�~ô ô"/�Nô /ôd�ô ô<'
�ô '
ôT	:˜ô 	:ôE˜ô EôP-,˜.ô -,ô`:�^ô :ô@˜.ô @ô
˜ô 
ô6.�^ô .ôb	D˜.ô 	Dô%�Zô %ð ÷z#ð z#ó ðz#ôzK	%ˆ|ô K	%ð\ ˆzÕÛÛåÝÝÝáð
	"ð 	Øô€Fñ  �%˜ Ó&€EØ	‡M�M�#�s˜CÔ ð 	EÙÐ8Ó9Ø'ØØ&Ø	�˜FÐ$4Ð5ØØÙÐÓð
Ðõ  áÐ)Ó*€Há˜TÔ"€Gá	Ù‹ð
à	×	%Ñ	%Ó	'ð
ñ 	Óò
ð ð	
ð
 ÷
ò 
ð 
Ø×!Ñ!Ð"4¸DÐ!ÓAˆØ×!Ñ!Ð"5¸TÐ!ÓBˆØ×!Ñ!Ð"4¸DÐ!ÓAˆà×#×#Ð#Ø�OŠO˜E¨3ˆOÔ/Ø�OŠO˜E¨3ˆOÔ/Ø�J‹J�tÔØ�~‹~˜a Ó%¨Ö)Ø—’™T (›^Ö,ð $÷
ñ 
ñ] ÷\
÷ 
ð 
ús   Í<AQÏAQÐQÑQ	