+
    GŒ°i�  ã                   óž   € R t ^ RIHt ^ RIHt ^ RIHt ^RIHt	 ^RI
Ht ^RIHt RR./t. ROt ! R R	]4      t ! R R
]	4      tR t]t]tR# )zë
Sends updates to a Telegram bot.

Usage:
>>> from tqdm.contrib.telegram import tqdm, trange
>>> for i in trange(10, token='{token}', chat_id='{chat_id}'):
...     ...

![screenshot](https://tqdm.github.io/img/screenshot-telegram.gif)
)Úgetenv)Úwarn)ÚSession)Útqdm)ÚTqdmWarning)Ú
MonoWorkerzgithub.com/Ú	casperdclÚ
TelegramIOÚtqdm_telegramc                   óV   a a€ ] tR t^t oRtRtV 3R lt]R 4       tR t	R t
RtVtV ;t# )r	   z/Non-blocking file-like IO using a Telegram Bot.zhttps://api.telegram.org/botc                ó¨   <€ \         SV `  4        Wn        W n        \	        4       V n        V P                  P                  V n        V P                   R# )z-Creates a new message in the given `chat_id`.N)
ÚsuperÚ__init__ÚtokenÚchat_idr   ÚsessionÚ	__class__Ú__name__ÚtextÚ
message_id)Úselfr   r   r   s   &&&€Ú7/usr/lib/python3/dist-packages/tqdm/contrib/telegram.pyr   ÚTelegramIO.__init__   s9   ø€ ä‰ÑÔØŒ
ØŒÜ“yˆŒØ—N‘N×+Ñ+ˆŒ	Ø�Œó    c           	     ó0  € \        V R 4      '       d   V P                  #  V P                  P                  V P                  RV P
                  ,          ,           RRV P                  ,           R,           RV P                  RR/R7      P                  4       pVP                  R4      R	8X  d   \        R
\        ^R7       R# VR,          R,          V n        V P                  #   \         d+   p\        P                  ! \        T4      4        Rp?R# Rp?ii ; i)Ú_message_idz%s/sendMessager   Ú`r   Ú
parse_modeÚ
MarkdownV2©ÚdataÚ
error_codei­  z2Creation rate limit: try increasing `mininterval`.)Ú
stacklevelÚresultr   N)Úhasattrr   r   ÚpostÚAPIr   r   r   ÚjsonÚgetr   r   Ú	ExceptionÚ	tqdm_autoÚwriteÚstr)r   ÚresÚes   &  r   r   ÚTelegramIO.message_id%   sæ   € ä�4˜×'Ò'Ø×#Ñ#Ð#ð	(Ø—,‘,×#Ñ#Ø—‘Ð+¨d¯j©jÕ8Õ8Ø˜c D§I¡I�o°Õ3°YÀÇÁØ" Lð2ð $ó 3÷ 48±4³6ð ð �w‰w�|Ó$¨Ô+ÜÐIÜ ¨Q÷0ð $' x¥=°Õ#>�Ô Ø×'Ñ'Ð'øô ô 	$Ü�OŠOœC ›F×#Ò#ûð	$ús    A5C  Ã DÃ+DÄDc                óô  € V'       g   RpVP                  RR4      P                  4       pWP                  8X  d   R# V P                  pVf   R# Wn         V P	                  V P
                  P                  V P                  RV P                  ,          ,           RRV,           R,           RV P                  R	VR
R/R7      pV#   \         d+   p\        P                  ! \        T4      4        Rp?R# Rp?ii ; i)z/Replaces internal `message_id`'s text with `s`.z...ÚÚ Nz%s/editMessageTextr   r   r   r   r   r   r   )ÚreplaceÚstripr   r   Úsubmitr   r%   r&   r   r   r)   r*   r+   r,   )r   Úsr   Úfuturer.   s   &&   r   r+   ÚTelegramIO.write8   sÑ   € çØˆAØ�I‰I�d˜BÓ×%Ñ%Ó'ˆØ—	‘	Œ>ÙØ—_‘_ˆ
ØÒÙØŒ	ð	Ø—[‘[Ø—‘×!Ñ! 4§8¡8Ð.BÀTÇZÁZÕ.OÕ#OØ˜c A�g¨�m¨Y¸¿¹Ø" J°¸lðLð !ó MˆFð ˆMøô ô 	$Ü�OŠOœC ›F×#Ò#ûð	$ús   ÁA*C ÃC7ÃC2Ã2C7c                ó<  €  V P                  V P                  P                  V P                  RV P                  ,          ,           RV P
                  RV P                  /R7      pV#   \         d+   p\        P                  ! \        T4      4        Rp?R# Rp?ii ; i)zDeletes internal `message_id`.z%s/deleteMessager   r   r   N)r5   r   r%   r&   r   r   r   r)   r*   r+   r,   )r   r7   r.   s   &  r   ÚdeleteÚTelegramIO.deleteM   s}   € ð	Ø—[‘[Ø—‘×!Ñ! 4§8¡8Ð.@À4Ç:Á:Õ.MÕ#MØ §¡¨|¸T¿_¹_ÐMð !ó OˆFð ˆMøô ô 	$Ü�OŠOœC ›F×#Ò#ûð	$ús   ‚A"A& Á&BÁ1BÂB)r   r   r   r   r   )r   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r&   r   Úpropertyr   r+   r:   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r   Ú__classdict__s   @@r   r	   r	      s5   ù‡ € Ù9Ø
(€Cõð ñ(ó ð(ò$÷*	ò 	r   c                   óZ   a a€ ] tR t^Yt oRtV 3R ltV 3R ltV 3R ltV 3R ltRt	Vt
V ;t# )r
   a  
Standard `tqdm.auto.tqdm` but also sends updates to a Telegram Bot.
May take a few seconds to create (`__init__`).

- create a bot <https://core.telegram.org/bots#6-botfather>
- copy its `{token}`
- add the bot to a chat and send it a message such as `/start`
- go to <https://api.telegram.org/bot`{token}`/getUpdates> to find out
  the `{chat_id}`
- paste the `{token}` & `{chat_id}` below

>>> from tqdm.contrib.telegram import tqdm, trange
>>> for i in tqdm(iterable, token='{token}', chat_id='{chat_id}'):
...     ...
c           	     óü   <€ VP                  R4      '       gT   VP                  4       p\        VP                  R\	        R4      4      VP                  R\	        R4      4      4      V n        \        SV `  ! V/ VB  R# )zî
Parameters
----------
token  : str, required. Telegram token
    [default: ${TQDM_TELEGRAM_TOKEN}].
chat_id  : str, required. Telegram chat ID
    [default: ${TQDM_TELEGRAM_CHAT_ID}].

See `tqdm.auto.tqdm.__init__` for other parameters.
Údisabler   ÚTQDM_TELEGRAM_TOKENr   ÚTQDM_TELEGRAM_CHAT_IDN)r(   Úcopyr	   Úpopr   Útgior   r   ©r   ÚargsÚkwargsr   s   &*,€r   r   Útqdm_telegram.__init__i   sh   ø€ ð �z‰z˜)×$Ò$Ø—[‘[“]ˆFÜ"Ø—
‘
˜7¤FÐ+@Ó$AÓBØ—
‘
˜9¤fÐ-DÓ&EÓFóHˆDŒIô 	‰Ò˜$Ð) &Ô)r   c                ó*  <€ \         SV `  ! R/ VB  V P                  pVP                  R R4      '       d.   VR ,          P	                  RR4      P	                  RR4      VR &   MRVR &   V P
                  P                  V P                  ! R/ VB 4       R# )Ú
bar_formatNz<bar/>z	{bar:10u}z{bar}z{l_bar}{bar:10u}{r_bar}© )r   ÚdisplayÚformat_dictr(   r3   rM   r+   Úformat_meter)r   rP   Úfmtr   s   &, €r   rU   Útqdm_telegram.display{   s†   ø€ Ü‰ŠÑ!˜&Ò!Ø×ÑˆØ�7‰7�< ×&Ò&Ø # LÕ 1× 9Ñ 9Ø˜+ó!'ß'.¡w¨w¸Ó'Dð �Òð !:ˆC�ÑØ�	‰	�‰˜×)Ò)Ñ0¨CÑ0Ö1r   c                ó†   <€ \         SV `  ! V/ VB  V P                  '       g   V P                  P	                  R 4       R# R# )r2   N)r   ÚclearrH   rM   r+   rN   s   &*,€r   r[   Útqdm_telegram.clear…   s2   ø€ Ü‰Š�tÐ&˜vÒ&Ø�|�|ˆ|Ø�I‰I�O‰O˜BÖñ r   c                óê   <€ V P                   '       d   R # \        SV `	  4        V P                  '       g>   V P                  f   V P                  ^ 8X  g   V P
                  P                  4        R # R # R # )N)rH   r   ÚcloseÚleaveÚposrM   r:   )r   r   s   &€r   r^   Útqdm_telegram.closeŠ   sL   ø€ Ø�<�<ˆ<ÙÜ‰‰ŒØ—
—
�
˜tŸz™zÒ1°d·h±hÀ!´mØ�I‰I×ÑÖñ 7D‘
r   )rM   )r   r<   r=   r>   r?   r   rU   r[   r^   rA   rB   rC   rD   s   @@r   r
   r
   Y   s#   ù‡ € ñõ*õ$2õ ÷
õ r   c                 ó(   € \        \        V !  3/ VB # )zBShortcut for `tqdm.contrib.telegram.tqdm(range(*args), **kwargs)`.)r
   Úrange)rO   rP   s   *,r   Úttgrangerd   ’   s   € äœ ™Ñ0¨Ñ0Ð0r   N)r	   r
   rd   r   Útrange)r?   Úosr   Úwarningsr   Úrequestsr   Úautor   r*   Ústdr   Úutils_workerr   Ú
__author__Ú__all__r	   r
   rd   re   rT   r   r   Ú<module>rn      sZ   ðñ	õ Ý å å $Ý Ý $à˜k˜]Ð+€
Ú
G€ô>�ô >ôB6�Iô 6òr1ð €Ø	‚r   