ó
    ‹¤j&  ã                   ón  • S r SSKrSSKrSSKrSSKJrJrJr  SSKJ	r	  SSK
Jr  SSKJr  SSKJr  \\\\4u  rrrr\R.                  r\" S S	 5       5      r\" S
 S 5       5      r\R8                  " S5      r \(       a  SSKrO\e  \R@                  " SS9  S&S jr" SSK"J"r"   " S S5      r$ " S S5      r% " S S5      r& " S S\&5      r' " S S\&5      r( " S S\&5      r)S r*S r+S r,S  r-S! r.S" r/S# r0S$ r1S% r2g! \! a    \R@                  " 5          N€f = f! \ a    Sr NŽf = f! \# a     NŽf = f)'z*
General helpers required for `tqdm.std`.
é    N)ÚpartialÚpartialmethodÚwraps)Ú	signature©Úeast_asian_width)Úwarn©Úproxyc              #   óL   #   • U  H  n[         R                  U5      v •  M     g 7f©N©ÚCUR_OSÚ
startswith©Ú.0Úis     Ú˜C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\tqdm/utils.pyÚ	<genexpr>r      s    é € Ð?Ò+> aŒV×Ñ˜q×!Ð!Ò+>ùó   ‚"$)Úwin32Úcygwinc              #   óL   #   • U  H  n[         R                  U5      v •  M     g 7fr   r   r   s     r   r   r      s    é € ÐQÒ+P aŒV×Ñ˜q×!Ð!Ò+Pùr   )ÚaixÚlinuxÚdarwinÚfreebsdz\x1b\[[;\d]*[A-Za-z]F)Ústripc                 óp  ^^^^^	• Tc  0 mU S   S:X  a  U SS n [        S[        SS9  U(       a  X  SU 34OU 4n0 mU HY  m	T	R                  5       S-   m	[        T	5      mTR	                  UU	4S j[
        R                  R                  5        5       5        M[     U(       a  [        O[        mUUU4S jnU$ )	zt
Basic (env-only) version of [envwrap](https://github.com/tqdm/envwrap).
Install `envwrap` for config file support.
NéÿÿÿÿÚ_z*Trailing underscore in `name` is automaticé   ©Ú
stacklevelc              3   ó‚   >#   • U  H4  u  pUR                  T5      (       d  M  UTS  R                  5       U4v •  M6     g 7fr   )r   Úlower)r   ÚkÚvr   Úprefixs      €€r   r   Úenvwrap.<locals>.<genexpr>1   s7   øé € ð WÚ+=¡4 1ÀÇÁÈf×AUÓˆQˆqˆrˆU�[‰[‹]˜AÕÒ+=ùs   ƒ?£?c                 ó   >• [        U 5      R                  nTR                  5        VVs0 s H  u  p#X!;   d  M  X#_M     nnnU H—  nX   nUR                  UR                  La9  [        UR                  SUR                  45       H  n U" XB   5      XB'     MU     MY  UR                  b!  [        UR                  5      " XB   5      XB'   M‡   T	U   " XB   5      XB'   M™     T" U 40 UD6$ s  snnf ! [         a     Mu  f = f! [         a     MÈ  f = f)NÚ__args__)
r   Ú
parametersÚitemsÚ
annotationÚemptyÚgetattrÚ	ExceptionÚdefaultÚtypeÚKeyError)
ÚfuncÚparamsr'   r(   Ú	overridesÚparamÚtypÚenv_overridesÚpartÚtypess
          €€€r   ÚwrapÚenvwrap.<locals>.wrap5   s  ø€ Ü˜4“×+Ñ+ˆà&3×&9Ñ&9Ô&;ÔKÒ&;™d˜a¸q¹{“T�Q’TÑ&;ˆ	ÑKãˆAØ‘IˆEØ×Ñ u§{¡{Ò2Ü" 5×#3Ñ#3°ZÀ%×BRÑBRÐATÖU�CðÙ'*¨9©<Ó'8˜	™ò ó Vð —‘Ñ*Ü# E§M¡MÔ2°9±<Ó@�	“ðØ#(¨¢8¨I©LÓ#9�I“Lñ ñ" �DÑ&˜IÑ&Ð&ùó' Løô %ó Úðûô  ó Úðús.   ªC(¹C(Â
C.ÃC?Ã.
C<Ã;C<Ã?
DÄD)
r	   ÚDeprecationWarningÚupperÚlenÚupdateÚosÚenvironr.   r   r   )
ÚnameÚappr=   Ú	is_methodÚprefixesr>   r;   r   r<   r)   s
     `   @@@@r   ÚenvwraprJ   "   s¶   ü€ ð
 �}ØˆØˆB�x�3ƒØ�C�RˆyˆÜÐ9Ô;MÐZ[Ò\Þ*-�˜˜a ˜u�oÑ&°D°7€HØ€MÛˆØ—‘“ #Ñ%ˆÜ�‹KˆØ×Ñõ WÜ+-¯:©:×+;Ñ+;Ô+=óWö 	Wñ ö
 &�=¬7€D÷'ð. €Kó    )rJ   c                   ó(   • \ rS rSrSrSS jrS rSrg)ÚFormatReplaceéU   z>
>>> a = FormatReplace('something')
>>> f"{a:5d}"
'something'
c                 ó   • Xl         SU l        g ©Nr   )ÚreplaceÚformat_called)ÚselfrQ   s     r   Ú__init__ÚFormatReplace.__init__[   s   € ØŒØˆÕrK   c                 óD   • U =R                   S-  sl         U R                  $ )Né   ©rR   rQ   )rS   r!   s     r   Ú
__format__ÚFormatReplace.__format___   s   € Ø×Ò˜aÑÕØ�|‰|ÐrK   rX   N)Ú )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rT   rY   Ú__static_attributes__© rK   r   rM   rM   U   s   † ñô
õrK   rM   c                   ó<   • \ rS rSrSrS rS rS rS rS r	S r
S	rg
)Ú
Comparableéd   z1Assumes child has self._comparable attr/@propertyc                 ó4   • U R                   UR                   :  $ r   ©Ú_comparable©rS   Úothers     r   Ú__lt__ÚComparable.__lt__f   s   € Ø×Ñ %×"3Ñ"3Ñ3Ð3rK   c                 ó    • X:  =(       d    X:H  $ r   rb   ri   s     r   Ú__le__ÚComparable.__le__i   s   € Ø‘×0 $¡-Ð0rK   c                 ó4   • U R                   UR                   :H  $ r   rg   ri   s     r   Ú__eq__ÚComparable.__eq__l   s   € Ø×Ñ 5×#4Ñ#4Ñ4Ð4rK   c                 ó   • X:X  + $ r   rb   ri   s     r   Ú__ne__ÚComparable.__ne__o   ó   € ØÒ Ð rK   c                 ó   • X::  + $ r   rb   ri   s     r   Ú__gt__ÚComparable.__gt__r   rv   rK   c                 ó   • X:  + $ r   rb   ri   s     r   Ú__ge__ÚComparable.__ge__u   s   € ØÒÐrK   rb   N)r\   r]   r^   r_   r`   rk   rn   rq   rt   rx   r{   ra   rb   rK   r   rd   rd   d   s#   † Ù;ò4ò1ò5ò!ò!õ rK   rd   c                   ó2   • \ rS rSrS rS rS rS rS rSr	g)	ÚObjectWrapperéy   c                 ó.   • [        U R                  U5      $ r   )r1   Ú_wrapped©rS   rF   s     r   Ú__getattr__ÚObjectWrapper.__getattr__z   s   € Ü�t—}‘} dÓ+Ð+rK   c                 ó.   • [        U R                  X5      $ r   )Úsetattrr�   ©rS   rF   Úvalues      r   Ú__setattr__ÚObjectWrapper.__setattr__}   s   € Ü�t—}‘} dÓ2Ð2rK   c                 ód   •  [         R                  X5      $ ! [         a    [        X5      s $ f = f)z7Actual `self.getattr` rather than self._wrapped.getattr)Úobjectrƒ   ÚAttributeErrorr1   r‚   s     r   Úwrapper_getattrÚObjectWrapper.wrapper_getattr€   s2   € ð	'Ü×%Ñ% dÓ1Ð1øÜó 	'Ü˜4Ó&Ò&ð	'ús   ‚ —/®/c                 ó.   • [         R                  XU5      $ )z7Actual `self.setattr` rather than self._wrapped.setattr)rŒ   r‰   r‡   s      r   Úwrapper_setattrÚObjectWrapper.wrapper_setattr‡   s   € ä×!Ñ! $¨eÓ4Ð4rK   c                 ó(   • U R                  SU5        g)z$
Thin wrapper around a given object
r�   N)r‘   )rS   Úwrappeds     r   rT   ÚObjectWrapper.__init__‹   s   € ð 	×Ñ˜Z¨Õ1rK   rb   N)
r\   r]   r^   r_   rƒ   r‰   rŽ   r‘   rT   ra   rb   rK   r   r~   r~   y   s   † ò,ò3ò'ò5õ2rK   r~   c                   ó8   ^ • \ rS rSrSrU 4S jrS rS rSrU =r	$ )ÚSimpleTextIOWrapperé’   z�
Change only `.write()` of the wrapped object by encoding the passed
value and passing the result to the wrapped object's `.write()` method.
c                 óH   >• [         TU ]  U5        U R                  SU5        g )NÚencoding)ÚsuperrT   r‘   )rS   r”   rš   Ú	__class__s      €r   rT   ÚSimpleTextIOWrapper.__init__˜   s    ø€ Ü‰Ñ˜Ô!Ø×Ñ˜Z¨Õ2rK   c                 ót   • U R                   R                  UR                  U R                  S5      5      5      $ )z@
Encode `s` and pass to the wrapped object's `.write()` method.
rš   )r�   ÚwriteÚencoderŽ   )rS   Úss     r   rŸ   ÚSimpleTextIOWrapper.writeœ   s-   € ð �}‰}×"Ñ" 1§8¡8¨D×,@Ñ,@ÀÓ,LÓ#MÓNÐNrK   c                 ó6   • U R                   [        USU5      :H  $ ©Nr�   ©r�   r1   ri   s     r   rq   ÚSimpleTextIOWrapper.__eq__¢   ó   € Ø�}‰}¤¨¨z¸5Ó AÑAÐArK   rb   )
r\   r]   r^   r_   r`   rT   rŸ   rq   ra   Ú__classcell__©rœ   s   @r   r—   r—   ’   s   ø† ñõ
3òO÷Bð BrK   r—   c                   óB   ^ • \ rS rSrSr\S 5       rU 4S jrS rSr	U =r
$ )ÚDisableOnWriteErroré¦   zG
Disable the given `tqdm_instance` upon `write()` or `flush()` errors.
c                 ó.   ^ ^• [        T 5      m UU 4S jnU$ )zF
Quietly set `tqdm_instance.miniters=inf` if `func` raises `errno=5`.
c                  ó>  >•  T" U 0 UD6$ ! [          a@  nUR                  S:w  a  e  [        S5      Tl         S nAg ! [         a      S nAg f = fS nAf[
         a?  nS[        U5      ;  a  e  [        S5      Tl         S nAg ! [         a      S nAg f = fS nAff = f)Né   ÚinfÚclosed)ÚOSErrorÚerrnoÚfloatÚminitersÚReferenceErrorÚ
ValueErrorÚstr)ÚargsÚkwargsÚer6   Útqdm_instances      €€r   ÚinnerÚ7DisableOnWriteError.disable_on_exception.<locals>.inner±   s˜   ø€ ðÙ˜TÐ, VÑ,Ð,øÜó Ø—7‘7˜a“<ØðÜ-2°5«\�M×*Ñ*øÜ%ó Ýðþäó Ø¤3 q£6Ó)ØðÜ-2°5«\�M×*Ñ*øÜ%ó ÝðþðúsY   ƒ ‹
B•A§<¼
AÁAÁAÁAÁBÁBÁ.BÂ
BÂBÂBÂBÂBr
   )r¼   r6   r½   s   `` r   Údisable_on_exceptionÚ(DisableOnWriteError.disable_on_exceptionª   s   ù€ ô
 ˜mÓ,ˆö	ð" ˆrK   c                 ó  >• [         TU ]  U5        [        US5      (       a+  U R                  SU R	                  X!R
                  5      5        [        US5      (       a,  U R                  SU R	                  X!R                  5      5        g g )NrŸ   Úflush)r›   rT   Úhasattrr‘   r¿   rŸ   rÂ   )rS   r”   r¼   rœ   s      €r   rT   ÚDisableOnWriteError.__init__Ä   su   ø€ Ü‰Ñ˜Ô!Ü�7˜G×$Ñ$Ø× Ñ Ø˜×2Ñ2°=Ç-Á-ÓPôRä�7˜G×$Ñ$Ø× Ñ Ø˜×2Ñ2°=Ç-Á-ÓPõRð %rK   c                 ó6   • U R                   [        USU5      :H  $ r¤   r¥   ri   s     r   rq   ÚDisableOnWriteError.__eq__Í   r§   rK   rb   )r\   r]   r^   r_   r`   Ústaticmethodr¿   rT   rq   ra   r¨   r©   s   @r   r«   r«   ¦   s.   ø† ñð ñó ðõ2R÷Bð BrK   r«   c                   ó,   ^ • \ rS rSrSU 4S jjrSrU =r$ )ÚCallbackIOWrapperéÑ   c                 ó
  >^^• [         TU ]  U5        [        X#5      mUS:X  a(  [        T5      UU4S j5       nU R	                  SU5        gUS:X  a(  [        T5      UU4S j5       nU R	                  SU5        g[        S5      e)zc
Wrap a given `file`-like object's `read()` or `write()` to report
lengths to the given `callback`
rŸ   c                 óB   >• T" U /UQ70 UD6nT" [        U 5      5        U$ r   ©rB   )Údatar¹   rº   ÚresÚcallbackr6   s       €€r   rŸ   Ú)CallbackIOWrapper.__init__.<locals>.writeÚ   s(   ø€ á˜4Ð1 $Ò1¨&Ñ1�Ùœ˜T›Ô#Ø�
rK   Úreadc                  ó:   >• T" U 0 UD6nT" [        U5      5        U$ r   rÍ   )r¹   rº   rÎ   rÐ   r6   s      €€r   rÒ   Ú(CallbackIOWrapper.__init__.<locals>.readá   s#   ø€ á˜TÐ, VÑ,�Ùœ˜T›Ô#Ø�rK   z Can only wrap read/write methodsN)r›   rT   r1   r   r‘   r5   )rS   rÐ   ÚstreamÚmethodrŸ   rÒ   r6   rœ   s    `    @€r   rT   ÚCallbackIOWrapper.__init__Ò   sˆ   ú€ ô
 	‰Ñ˜Ô Ü�vÓ&ˆØ�WÓÜ�4‹[õó ðð × Ñ  ¨%Õ0Ø�vÓÜ�4‹[õó ðð × Ñ  ¨Õ.äÐ=Ó>Ð>rK   rb   )rÒ   )r\   r]   r^   r_   rT   ra   r¨   r©   s   @r   rÉ   rÉ   Ñ   s   ø† ÷?õ ?rK   rÉ   c                 óØ   •  SR                  U 5        g! [         a     g[         a@     U R                  5       R	                  S5      =(       d    SU :H  s $ ! [         a      gf = ff = f)Nu   â–ˆâ–‰TFzutf-ÚU8)r    ÚUnicodeEncodeErrorr2   r&   r   )rš   s    r   Ú_is_utfrÛ   ë   so   € ð
Ø×Ñ˜hÔ'ð øô ó ÙÜó ð	Ø—>‘>Ó#×.Ñ.¨vÓ6×L¸4À8Ñ;KÒLøÜó 	Úð	úðús1   ‚ ”
A) 	A)ª*AÁA)Á
A%Á!A)Á$A%Á%A)c                 óN   •  [        U R                  5      $ ! [         a     gf = f)NF)rÛ   rš   r�   )Úfps    r   Ú_supports_unicoderÞ   ù   s(   € ðÜ�r—{‘{Ó#Ð#øÜó Ùðús   ‚ —
$£$c                 óx   • [        U [        5      (       a  U  H  n[        U5      S:”  d  M    g   g[        U 5      $ )Néÿ   FT)Ú
isinstancer¸   ÚordrÞ   )r¡   Úcs     r   Ú	_is_asciirä      s7   € Ü�!”S×ÑÛˆAÜ�1‹v˜�|Ùñ ð Ü˜QÓÐrK   c                  ó   • S n U $ )zm
Return a function which returns console dimensions (width, height).
Supported: linux, osx, windows, cygwin.
c                 óz   •  SSK Jn  U" [        U SS 5      " 5       5      u  p#US-
  US-
  4$ ! [         a     gf = f)Nr   )Úget_terminal_sizeÚfilenoc                  ó   • g r   rb   rb   rK   r   Ú<lambda>Ú6_screen_shape_wrapper.<locals>.inner.<locals>.<lambda>  s   € È$rK   rW   )NN)rD   rç   r1   r2   )rÝ   rç   ÚcolsÚliness       r   r½   Ú$_screen_shape_wrapper.<locals>.inner  sG   € ð	Ý,Ù+¬G°B¸Á,Ô,OÓ,QÓR‰KˆDØ˜!‘8˜U Q™YÐ&Ð&øÜó 	Ùð	ús   ‚*- ­
:¹:rb   )r½   s    r   Ú_screen_shape_wrapperrï   	  s   € ò
ð €LrK   c                  ór   ^• [        S[        SS9  [        5       mT(       d  g[        T5      U4S j5       n U $ )zX
Return a function which returns console width.
Supported: linux, osx, windows, cygwin.
zQUse `_screen_shape_wrapper()(file)[0]` instead of `_environ_cols_wrapper()(file)`r"   r#   Nc                 ó   >• T" U 5      S   $ rP   rb   )rÝ   Úshapes    €r   r½   Ú$_environ_cols_wrapper.<locals>.inner$  s   ø€ á�R‹y˜‰|ÐrK   )r	   r@   rï   r   )r½   rò   s    @r   Ú_environ_cols_wrapperrô     sC   ø€ ô
 	ð 
,Ü-?ÈAòOä!Ó#€EÞØä
ˆ5ƒ\ôó ðð €LrK   c                  ó@   • [         R                  S:X  a	  [        c  S$ S$ )NÚntr[   z[A)rD   rF   Úcoloramarb   rK   r   Ú_term_move_uprø   +  s   € Ü—'‘'˜T“/¬Ñ(8ˆ2ÐG¸xÐGrK   c                 ó8   • [        S [        U 5       5       5      $ )Nc              3   óH   #   • U  H  n[        U5      S ;   a  SOSv •  M     g7f)ÚFWr"   rW   Nr   )r   Úchs     r   r   Ú_text_width.<locals>.<genexpr>0  s"   é € ÐIÂ&¸BÔ$ RÓ(¨DÓ0‰q°aÔ7Â&ùs   ‚ ")Úsumr¸   )r¡   s    r   Ú_text_widthrÿ   /  s   € ÜÑIÄ#ÀaÄ&ÓIÓIÐIrK   c                 ó@   • [        [        R                  SU 5      5      $ )zd
Returns the real on-screen length of a string which may contain
ANSI control codes and wide chars.
r[   )rÿ   ÚRE_ANSIÚsub)rÎ   s    r   Údisp_lenr  3  s   € ô
 ”w—{‘{ 2 tÓ,Ó-Ð-rK   c                 óT  • [        U 5      [        U 5      :X  a  U SU $ [        [        R	                  U 5      5      n[        U 5      U:”  a  U SS n [        U 5      U:”  a  M  U(       a@  [        [        R	                  U 5      5      (       a  U R                  S5      (       a  U $ U S-   $ U $ )z:
Trim a string which may contain ANSI control characters.
Nr    z[0m)rB   r  Úboolr  ÚsearchÚendswith)rÎ   ÚlengthÚansi_presents      r   Ú	disp_trimr
  ;  s‘   € ô ˆ4ƒy”H˜T“NÓ"Ø�G�Vˆ}ÐäœŸ™ tÓ,Ó-€LÜ
�4‹.˜6Ó
!Ø�C�Rˆyˆô �4‹.˜6Õ
!æœœWŸ^™^¨DÓ1×2Ñ2à—}‘} Y×/Ñ/ˆtÐE°T¸IÑ5EÐEØ€KrK   )r[   NF)3r`   rD   ÚreÚsysÚ	functoolsr   r   r   Úinspectr   Úunicodedatar   Úwarningsr	   Úweakrefr   ÚrangeÚchrr¸   Ú_rangeÚ_unichÚ_unicodeÚ_basestringÚplatformr   ÚanyÚIS_WINÚIS_NIXÚcompiler  r÷   ÚImportErrorÚinitÚ	TypeErrorrJ   ÚModuleNotFoundErrorrM   rd   r~   r—   r«   rÉ   rÛ   rÞ   rä   rï   rô   rø   rÿ   r  r
  rb   rK   r   Ú<module>r!     sg  ðñó 
Û 	Û 
ß 3Ñ 3Ý å (Ý Ý à(-¨s°C¸Ð(<Ñ %€ˆ�˜+Ø	�‰€Ù	Ñ?Ñ+>Ó?Ó	?€Ù	ÑQÑ+PÓQÓ	Q€Ø
�*Š*Ð,Ó
-€ðÞÜàÐð 	ðØ�Š˜EÒ"ô
*ðZ	Ý÷
ñ ÷ ñ  ÷*2ñ 2ô2B˜-ô Bô((B˜-ô (BôV?˜ô ?ò4òò òò ò$HòJò.óøð{ ó Ø�ŠŽðûð ó Ø‚Hðûðp ó 	Ùð	ús6   Á9D Â	D  ÂD+ Ä DÄDÄD(Ä'D(Ä+D4Ä3D4