Ë
    ÷†”jí?  ã                  óô   — d Z ddlmZ ddlZddlZddlZddlZddlmZ ddl	m
Z
 ddlmZ ddlmZmZmZmZmZmZ ddlmZmZmZmZmZ dd	lmZ dd
lmZ dd„Zdd„Zdd„Z dd„Z! G d„ d«      Z" G d„ d«      Z#y)u’   Ð�ÐµÑ�ÐºÐ¾Ð»ÑŒÐºÐ¾ ÑŽÐ·ÐµÑ€Ð±Ð¾Ñ‚-Ñ�ÐµÑ�Ñ�Ð¸Ð¹: Ð¾Ð´Ð¸Ð½ Telegram-Ð°ÐºÐºÐ°ÑƒÐ½Ñ‚ Ð»Ð¾Ð²Ñ†Ð° Ð½Ð° ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ� Ð±Ð¾Ñ‚Ð°.é    )ÚannotationsN)ÚPath)ÚOptional)ÚTelegramClient)ÚFloodWaitErrorÚPasswordHashInvalidErrorÚPhoneCodeExpiredErrorÚPhoneCodeInvalidErrorÚPhoneNumberInvalidErrorÚSessionPasswordNeededError)Údelete_session_metaÚfind_owner_by_userbot_idÚlist_session_ownersÚsave_session_metaÚsession_path)Úregister_watch_handlers)ÚAVATARS_DIRc                ó  — t        j                  ddt        | xs d«      «      }t        |«      dk(  r|d   dv rd|dd  z   }t        |«      dk(  rd|z   }t        |«      dk7  s|j	                  d«      st        d	«      ‚d
|z   S )Nú\DÚ é   r   )Ú7Ú8r   é   é
   u1   Ð£ÐºÐ°Ð¶Ð¸Ñ‚Ðµ Ð½Ð¾Ð¼ÐµÑ€ Ð² Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ðµ +7â€¦ú+)ÚreÚsubÚstrÚlenÚ
startswithÚ
ValueError)ÚrawÚdigitss     ú./var/www/api.ozpay.ru/ozpay/catcher/runtime.pyÚnormalize_tg_phoner&   !   s‡   € Ü�V‰V�E˜2œs 3¢9¨"›~Ó.€FÜ
ˆ6ƒ{�bÒ˜V A™Y¨*Ñ4Ø�v˜a˜b�zÑ!ˆÜ
ˆ6ƒ{�bÒØ�v‘ˆÜ
ˆ6ƒ{�bÒ × 1Ñ 1°#Ô 6ÜÐLÓMÐMØ�‰<Ðó    c                óœ   — | sy | j                   | j                  xs d| j                  xs d| j                  xs d| j                  xs ddœS )Nr   ©ÚidÚ
first_nameÚ	last_nameÚusernameÚphoner)   )Úmes    r%   Ú_me_payloadr0   ,   sH   € ÙØà�e‰eØ—m‘mÒ) rØ—\‘\Ò' RØ—K‘KÒ% 2Ø—‘’˜Rñð r'   c                ó@  — t        | t        «      rd| j                  › d�S t        | t        «      ryt        | t        «      ryt        | t
        «      ryt        | t        «      ryt        | «      xs | j                  j                  }d|j                  «       v ry|d d	 S )
Nu)   Telegram Ð¿Ñ€Ð¾Ñ�Ð¸Ñ‚ Ð¿Ð¾Ð´Ð¾Ð¶Ð´Ð°Ñ‚ÑŒ u    Ñ�ÐµÐº.u,   Ð�ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¹ Ð½Ð¾Ð¼ÐµÑ€ Ñ‚ÐµÐ»ÐµÑ„Ð¾Ð½Ð°u   Ð�ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¹ ÐºÐ¾Ð´u4   ÐšÐ¾Ð´ ÑƒÑ�Ñ‚Ð°Ñ€ÐµÐ», Ð·Ð°Ð¿Ñ€Ð¾Ñ�Ð¸Ñ‚Ðµ Ð½Ð¾Ð²Ñ‹Ð¹u!   Ð�ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¹ Ð¿Ð°Ñ€Ð¾Ð»ÑŒ 2FAzdatabase is lockeduJ   Ð¡ÐµÑ�Ñ�Ð¸Ñ� Ð·Ð°Ð½Ñ�Ñ‚Ð°. ÐŸÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑ�Ñ‚Ð¸Ñ‚Ðµ Ð±Ð¾Ñ‚Ð° Ð»Ð¾Ð²Ñ†Ð°.éð   )Ú
isinstancer   Úsecondsr   r
   r	   r   r   Ú	__class__Ú__name__Úlower)ÚexcÚtexts     r%   Ú_friendly_errorr:   8   sŒ   € Ü�#”~Ô&Ø:¸3¿;¹;¸-ÀxÐPÐPÜ�#Ô.Ô/Ø=Ü�#Ô,Ô-Ø(Ü�#Ô,Ô-ØEÜ�#Ô/Ô0Ø2Üˆs‹8Ò-�s—}‘}×-Ñ-€DØ˜tŸz™z›|Ñ+Ø[Ø��ˆ:Ðr'   c                óP  — | €yt        | dd «      xs dj                  «       }|r"dj                  |j                  «       «      d d S t        | dd «      ryt        | dd «      ryt        | d	d «      st        | d
d «      ryt        | dd «      st        | dd «      ryt        | dd «      ryy)Nr   Úmessageú éZ   Ústickeru   Ð¡Ñ‚Ð¸ÐºÐµÑ€Úphotou   Ð¤Ð¾Ñ‚Ð¾ÚvideoÚ
video_noteu
   Ð’Ð¸Ð´ÐµÐ¾ÚvoiceÚaudiou
   Ð�ÑƒÐ´Ð¸Ð¾Údocumentu   Ð¤Ð°Ð¹Ð»)ÚgetattrÚstripÚjoinÚsplit)r<   r9   s     r%   Ú_message_previewrJ   I   s©   € Ø€ØÜ�G˜Y¨Ó-Ò3°×:Ñ:Ó<€DÙØ�x‰x˜Ÿ
™
›Ó% c rÐ*Ð*Üˆw˜	 4Ô(ØÜˆw˜ Ô&ØÜˆw˜ Ô&¬'°'¸<ÈÔ*NØÜˆw˜ Ô&¬'°'¸7ÀDÔ*IØÜˆw˜
 DÔ)ØØr'   c                  ó–   — e Zd Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Z	dd„Z
dd	„Zdd
„Zdd„Zdd„Zdd„Zdd„Zddd„Zdd„Zdd„Zy)ÚOwnerRuntimec                óò   — t        |«      | _        || _        || _        d | _        d| _        d | _        d | _        d | _        d | _	        t        j                  «       | _        t        «       | _        d | _        y )NÚoffline)ÚintÚowner_tg_idÚapi_idÚapi_hashÚclientÚstatusr.   Úphone_code_hashr/   ÚerrorÚasyncioÚLockÚ_lockÚsetÚ_watch_seenÚ_task)ÚselfrP   rQ   rR   s       r%   Ú__init__zOwnerRuntime.__init__]   sf   € Ü˜{Ó+ˆÔØˆŒØ ˆŒØ04ˆŒØˆŒØ$(ˆŒ
Ø.2ˆÔØ"&ˆŒØ$(ˆŒ
Ü—\‘\“^ˆŒ
Ü14³ˆÔØ-1ˆ�
r'   c                ó`   — | j                   | j                  | j                  | j                  dœS )N©rT   r.   rV   r/   r`   ©r]   s    r%   ÚsnapshotzOwnerRuntime.snapshotk   s(   € à—k‘kØ—Z‘ZØ—Z‘ZØ—'‘'ñ	
ð 	
r'   c                ó´   — t        | j                  | j                  xs | j                  xs i j	                  d«      | j                  | j
                  ¬«       y )Nr.   )r.   r/   rT   )r   rP   r.   r/   ÚgetrT   ra   s    r%   Ú_persistzOwnerRuntime._persists   s@   € ÜØ×ÑØ—*‘*Ò< §¡¢¨B× 3Ñ 3°GÓ <Ø�w‰wØ—;‘;ö		
r'   c              ƒ  óþ   K  — | j                   r| j                  st        d«      ‚t        t	        | j
                  «      | j                   | j                  «      }t        || j
                  | j                  «       |S ­w)Nu8   Ð�Ðµ Ð·Ð°Ð´Ð°Ð½Ñ‹ API_ID / API_HASH Ð² catcher/config.py)rQ   rR   ÚRuntimeErrorr   r   rP   r   r[   ©r]   rS   s     r%   Ú_new_clientzOwnerRuntime._new_client{   s]   è ø€ Ø�{Š{ $§-¢-ÜÐYÓZÐZÜ¤¨T×-=Ñ-=Ó >ÀÇÁÈTÏ]É]Ó[ˆÜ ¨×(8Ñ(8¸$×:JÑ:JÔKØˆùs   ‚A;A=c              ƒ  óJ  K  — | j                   €| j                  «       ƒ d {  –—† | _         | j                   j                  «       s"| j                   j                  «       ƒ d {  –—†  t	        | j                   | j
                  | j                  «       | j                   S 7 Œ|7 Œ=­w©N)rS   ri   Úis_connectedÚconnectr   rP   r[   ra   s    r%   Úensure_clientzOwnerRuntime.ensure_client‚   sx   è ø€ Ø�;‰;ÐØ $× 0Ñ 0Ó 2×2ˆDŒKØ�{‰{×'Ñ'Ô)Ø—+‘+×%Ñ%Ó'×'Ð'Ü §¡¨T×-=Ñ-=¸t×?OÑ?OÔPØ�{‰{Ðð	 3øà'ús"   ‚ B#¢B£A B#Á#B!Á$<B#Â!B#c              ƒ  ó  K  — | j                   €y 	 | j                   j                  «       rE| j                   j                  «       ƒ d {  –—† r#| j                   j                  «       ƒ d {  –—†  n<| j                   j                  «       r"| j                   j	                  «       ƒ d {  –—†  d | _         y 7 Œk7 ŒK7 Œ# t
        $ r> 	 | j                   j	                  «       ƒ d {  –—†7   n# t
        $ r Y nw xY wY d | _         y w xY w­wrk   )rS   rl   Úis_user_authorizedÚlog_outÚ
disconnectÚ	Exceptionra   s    r%   Ú_drop_clientzOwnerRuntime._drop_clientŠ   sÒ   è ø€ Ø�;‰;ÐØð		Ø�{‰{×'Ñ'Ô)°D·K±K×4RÑ4RÓ4T×.TÐ.TØ—k‘k×)Ñ)Ó+×+Ñ+Ø—‘×)Ñ)Ô+Ø—k‘k×,Ñ,Ó.×.Ð.ð ˆ�ð /UøØ+øà.ùÜò 	ðØ—k‘k×,Ñ,Ó.×.Ò.øÜò Ùðûàˆ�ð	üsŽ   ‚D‘7B: ÁB4Á	!B: Á*B6Á+<B: Â'B8Â(B: Â,DÂ4B: Â6B: Â8B: Â:	DÃC(Ã!C$Ã"C(Ã'DÃ(	C4Ã1DÃ3C4Ã4DÃ7	DÄ DÄDc              ƒ  óD  K  — | j                   r| j                   j                  d«      sy t        t        | j                   d   «      «      }|�O|| j                  k7  r?| j                  «       ƒ d {  –—†  d | _         d | _        d | _        d| _        t        d«      ‚y y 7 Œ-­w)Nr*   Ú
logged_outue   Ð­Ñ‚Ð¾Ñ‚ Telegram-Ð°ÐºÐºÐ°ÑƒÐ½Ñ‚ ÑƒÐ¶Ðµ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ñ‘Ð½ Ñƒ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ�)
r/   rd   r   rO   rP   rt   r.   rU   rT   rg   )r]   Úothers     r%   Ú_ensure_unique_accountz#OwnerRuntime._ensure_unique_account™   s˜   è ø€ Ø�wŠw˜dŸg™gŸk™k¨$Ô/ØÜ(¬¨T¯W©W°T©]Ó);Ó<ˆØÐ ¨$×*:Ñ*:Ò!:Ø×#Ñ#Ó%×%Ð%ØˆDŒGØˆDŒJØ#'ˆDÔ Ø&ˆDŒKÜð   Gó  Hð  Hð ";ÐØ%ús   ‚A.B Á0BÁ1.B c              ƒ  ó‚  K  — | j                   4 ƒd {  –—†  	 | j                  «       ƒ d {  –—† }|j                  «       ƒ d {  –—† r[t        |j	                  «       ƒ d {  –—† «      | _        | j                  «       ƒ d {  –—†  d| _        d | _        d | _	        d | _
        nd| _        d | _        d | _        | j                  «        | j                  «       cd d d «      ƒd {  –—†  S 7 ŒÖ7 Œ¿7 Œ©7 ŒŽ7 Œo# t        $ r(}d| _        t        |«      | _        d | _        Y d }~Œgd }~ww xY w7 ŒC# 1 ƒd {  –—†7  sw Y   y xY w­w)NÚonlinerv   rV   )rY   rn   rp   r0   Úget_mer/   rx   rT   rV   r.   rU   rs   r:   re   rb   )r]   rS   r8   s      r%   ÚbootzOwnerRuntime.boot¥   s  è ø€ Ø—:‘:÷ 	#ñ 	#ðØ#×1Ñ1Ó3×3�Ø×2Ñ2Ó4×4Ð4Ü)°·±³×*?Ó@�D”GØ×5Ñ5Ó7×7Ð7Ø"*�D”KØ!%�D”JØ!%�D”JØ+/�DÕ(à".�D”KØ"�D”GØ!%�D”Jð
 �M‰MŒOØ—=‘=“?÷'	#÷ 	#ò 	#øà3øØ4øØ*?øØ7ùô ò Ø%�”Ü,¨SÓ1�”
Ø�—‘ûðúð	#ø÷ 	#÷ 	#ñ 	#üs³   ‚D?“C*”D?—D*™C4¬C,­C4ÁC.ÁC4Á!C0
Á" C4ÂC2Â6C4Â9D*ÃD?Ã$D(Ã%D?Ã,C4Ã.C4Ã0C4Ã2C4Ã4	D%Ã=D ÄD*Ä D%Ä%D*Ä(D?Ä*D<Ä0D3Ä1D<Ä8D?c              ƒ  ób  K  — | j                   4 ƒd {  –—†  | j                  �#	 | j                  j                  «       ƒ d {  –—†  d | _        | j                  dk(  rd| _        | j                  «        d d d «      ƒd {  –—†  y 7 Œq7 ŒD# t        $ r Y ŒMw xY w7 Œ# 1 ƒd {  –—†7  sw Y   y xY w­w)Nrz   rN   )rY   rS   rr   rs   rT   re   ra   s    r%   ÚshutdownzOwnerRuntime.shutdown»   s�   è ø€ Ø—:‘:÷ 		 ñ 		 Ø�{‰{Ð&ðØŸ+™+×0Ñ0Ó2×2Ð2ð ˆDŒKØ�{‰{˜hÒ&Ø'�”Ø—‘”÷		 ÷ 		 ñ 		 øð 3ùÜ ò Ùðúð			 ø÷ 		 ÷ 		 ñ 		 üsy   ‚B/“B”B/—B¥B	ÁBÁB	Á-BÁ4B/Á?BÂ B/ÂB	Â		BÂBÂBÂBÂB/ÂB,Â B#Â!B,Â(B/c              ƒ  óH  K  — t        |«      }| j                  4 ƒd {  –—†  	 | j                  «       ƒ d {  –—† }|j                  «       ƒ d {  –—† ret	        |j                  «       ƒ d {  –—† «      | _        d| _        d | _        | j                  «        | j                  «       cd d d «      ƒd {  –—†  S |j                  |«      ƒ d {  –—† }|| _        |j                  | _        d| _        d | _        d | _        | j                  «        | j                  «       cd d d «      ƒd {  –—†  S 7 �Œ7 Œû7 Œå7 ŒÊ7 Œ…7 Œm# t        $ rB}d| _        t        |«      | _        | j                  «        t!        | j                  «      |‚d }~ww xY w7 Œ`# 1 ƒd {  –—†7  sw Y   y xY w­w)Nrz   Úawaiting_coderv   )r&   rY   rn   rp   r0   r{   r/   rT   rV   re   rb   Úsend_code_requestr.   rU   rs   r:   rg   )r]   Ú	phone_rawr.   rS   Úsentr8   s         r%   Úrequest_codezOwnerRuntime.request_codeÇ   s[  è ø€ Ü" 9Ó-ˆØ—:‘:÷ 	#ñ 	#ð8Ø#×1Ñ1Ó3×3�Ø×2Ñ2Ó4×4Ð4Ü)°·±³×*?Ó@�D”GØ"*�D”KØ!%�D”JØ—M‘M”OØŸ=™=›?÷	#÷ 	#ñ 	#ð $×5Ñ5°eÓ<×<�Ø"�”
Ø'+×';Ñ';�Ô$Ø-�”Ø!�”
Ø�”ð �M‰MŒOØ—=‘=“?÷+	#÷ 	#ò 	#ùà3øØ4øØ*?øð		#øð =ùô ò 8Ø*�”Ü,¨SÓ1�”
Ø—‘”Ü" 4§:¡:Ó.°CÐ7ûð	8úð	#ø÷ 	#÷ 	#ñ 	#üsË   ‚F"žD0ŸF"¢F¤D=·D3¸D=ÁD5ÁD=Á,D7
Á-:D=Â'F"Â3D9Â4F"Â9D=ÃD;Ã1D=Ã?FÄF"Ä*FÄ+F"Ä3D=Ä5D=Ä7D=Ä9F"Ä;D=Ä=	FÅ=FÆFÆFÆF"ÆFÆFÆFÆF"c              ƒ  óª  K  — t        j                  ddt        |xs d«      «      }t        |«      dk  rt	        d«      ‚| j
                  4 ƒd {  –—†  | j                  dvrt        d«      ‚| j                  st        d«      ‚	 | j                  «       ƒ d {  –—† }|j                  | j                  || j                  ¬«      ƒ d {  –—†  t        |j                  «       ƒ d {  –—† «      | _        | j                  «       ƒ d {  –—†  d	| _        d | _        d | _        | j)                  «        | j+                  «       cd d d «      ƒd {  –—†  S 7 �Œ7 Œ»7 Œ�7 Œr7 ŒS# t"        $ r d
| _        d | _        Y ŒUt$        $ r;}t'        |«      | _        | j)                  «        t        | j                   «      |‚d }~ww xY w7 Œo# 1 ƒd {  –—†7  sw Y   y xY w­w)Nr   r   é   u#   Ð’Ð²ÐµÐ´Ð¸Ñ‚Ðµ ÐºÐ¾Ð´ Ð¸Ð· Telegram)r€   Úawaiting_passwordu(   Ð¡Ð½Ð°Ñ‡Ð°Ð»Ð° Ð·Ð°Ð¿Ñ€Ð¾Ñ�Ð¸Ñ‚Ðµ ÐºÐ¾Ð´u   Ð�Ð¾Ð¼ÐµÑ€ Ð½Ðµ Ð·Ð°Ð´Ð°Ð½)r.   ÚcoderU   rz   r‡   )r   r   r   r    r"   rY   rT   rg   r.   rn   Úsign_inrU   r0   r{   r/   rx   rV   r   rs   r:   re   rb   )r]   Úcode_rawrˆ   rS   r8   s        r%   Úsubmit_codezOwnerRuntime.submit_codeà   s”  è ø€ Ü�v‰v�e˜R¤ X¢^°Ó!4Ó5ˆÜˆt‹9�qŠ=ÜÐBÓCÐCØ—:‘:÷ 	#ñ 	#Ø�{‰{Ð"HÑHÜ"Ð#MÓNÐNØ—:’:Ü"Ð#?Ó@Ð@ð8Ø#×1Ñ1Ó3×3�Ø—n‘nØŸ*™*ØØ$(×$8Ñ$8ð %ó ÷ ð ô
 &¨F¯M©M«O×&;Ó<�”Ø×1Ñ1Ó3×3Ð3Ø&�”Ø!�”
Ø'+�Ô$ð �M‰MŒOØ—=‘=“?÷3	#÷ 	#ò 	#ùð 4øðøð
 '<øØ3ùô .ò "Ø1�”Ø!�–
Üò 8Ü,¨SÓ1�”
Ø—‘”Ü" 4§:¡:Ó.°CÐ7ûð8úð)	#ø÷ 	#÷ 	#ñ 	#üsÀ   ‚AGÁEÁGÁ1F>ÂEÂEÂ/EÃ	EÃ
EÃ&E
Ã' EÄEÄEÄ!F>Å GÅF<ÅGÅEÅEÅEÅEÅF9Å4F>Å6F9Å>6F4Æ4F9Æ9F>Æ<GÆ>GÇGÇGÇGc              ƒ  óÞ  K  — t        |xs d«      }|st        d«      ‚| j                  4 ƒd {  –—†  | j                  dk7  rt	        d«      ‚	 | j                  «       ƒ d {  –—† }|j                  |¬«      ƒ d {  –—†  t        |j                  «       ƒ d {  –—† «      | _	        | j                  «       ƒ d {  –—†  d| _        d | _        d | _        | j                  «        | j!                  «       cd d d «      ƒd {  –—†  S 7 ŒÕ7 Œ¤7 ŒŒ7 Œq7 ŒR# t        $ r;}t        |«      | _        | j                  «        t	        | j                  «      |‚d }~ww xY w7 ŒV# 1 ƒd {  –—†7  sw Y   y xY w­w)Nr   u   Ð’Ð²ÐµÐ´Ð¸Ñ‚Ðµ Ð¿Ð°Ñ€Ð¾Ð»ÑŒ 2FAr‡   u)   Ð¡ÐµÐ¹Ñ‡Ð°Ñ� Ð¿Ð°Ñ€Ð¾Ð»ÑŒ Ð½Ðµ Ð½ÑƒÐ¶ÐµÐ½)Úpasswordrz   )r   r"   rY   rT   rg   rn   r‰   r0   r{   r/   rx   rV   rU   rs   r:   re   rb   )r]   r�   rS   r8   s       r%   Úsubmit_passwordzOwnerRuntime.submit_passwordÿ   s6  è ø€ Ü�x’~ 2Ó&ˆÙÜÐ>Ó?Ð?Ø—:‘:÷ 	#ñ 	#Ø�{‰{Ð1Ò1Ü"Ð#NÓOÐOð8Ø#×1Ñ1Ó3×3�Ø—n‘n¨h�nÓ7×7Ð7Ü%¨F¯M©M«O×&;Ó<�”Ø×1Ñ1Ó3×3Ð3Ø&�”Ø!�”
Ø'+�Ô$ð
 �M‰MŒOØ—=‘=“?÷!	#÷ 	#ò 	#øð 4øØ7øØ&;øØ3ùô ò 8Ü,¨SÓ1�”
Ø—‘”Ü" 4§:¡:Ó.°CÐ7ûð8úð	#ø÷ 	#÷ 	#ñ 	#üs°   ‚-E-¯D°E-³EÁDÁ"DÁ#DÁ<D	Á=DÂD
Â DÂ:DÂ;DÃEÃ3E-Ã?EÄ E-ÄDÄ	DÄDÄDÄ	EÄ6EÅEÅEÅE-ÅE*ÅE!ÅE*Å&E-c              ƒ  ó  K  — | j                   4 ƒd {  –—†  d | _        d | _        d | _        	 | j	                  «       ƒ d {  –—† }|j                  «       ƒ d {  –—† r.t        |j                  «       ƒ d {  –—† «      | _        d| _	        nd | _        d| _	        | j                  «        | j                  «       cd d d «      ƒd {  –—†  S 7 Œ·7 Œ‹7 Œu7 ŒZ# t        $ r d | _        d| _	        Y ŒRw xY w7 Œ*# 1 ƒd {  –—†7  sw Y   y xY w­w)Nrz   rv   )rY   r.   rU   rV   rn   rp   r0   r{   r/   rT   rs   re   rb   rh   s     r%   Úcancel_loginzOwnerRuntime.cancel_login  sä   è ø€ Ø—:‘:÷ 	#ñ 	#ØˆDŒJØ#'ˆDÔ ØˆDŒJð
+Ø#×1Ñ1Ó3×3�Ø×2Ñ2Ó4×4Ð4Ü)°·±³×*?Ó@�D”GØ"*�D•Kà"�D”GØ".�D”Kð �M‰MŒOØ—=‘=“?÷!	#÷ 	#ò 	#øð
 4øØ4øØ*?ùô
 ò +Ø�”Ø*�–ð+úð	#ø÷ 	#÷ 	#ñ 	#üs�   ‚D“C”D—C2®CÁCÁCÁCÁCÁ6C
Á7#CÂC2Â9DÃC0ÃDÃCÃCÃCÃC-Ã*C2Ã,C-Ã-C2Ã0DÃ2DÃ8C;Ã9DÄ Dc              ƒ  ó¢  K  — | j                   4 ƒd {  –—†  | j                  �œ	 | j                  j                  «       rE| j                  j                  «       ƒ d {  –—† r#| j                  j	                  «       ƒ d {  –—†  n<| j                  j                  «       r"| j                  j                  «       ƒ d {  –—†  d | _        d | _        d | _        d | _        d | _	        d| _        | j                   j#                  «        t%        | j&                  «       t)        t+        | j&                  «      dz   «      }t)        t+        | j&                  «      dz   «      }||fD ]  }	 |j-                  d¬«       Œ 	 | j3                  «       ƒ d {  –—†  | j5                  «        | j7                  «       cd d d «      ƒd {  –—†  S 7 �Œ®7 �Œh7 �ŒI7 �Œ# t        j                  $ r+}t        |«      | _	        t        | j                  «      |‚d }~wt        $ r8 	 | j                  j                  «       ƒ d {  –—†7   n# t        $ r Y nw xY wY �Œ‰w xY w# t.        $ r$ |j1                  «       r|j-                  «        Y �Œt        $ r Y �Œ%w xY w7 Œü# t        $ r"}d| _        t        |«      | _	        Y d }~�Œ d }~ww xY w7 Œü# 1 ƒd {  –—†7  sw Y   y xY w­w)Nrv   z.sessionz.session-journalT)Ú
missing_okrV   )rY   rS   rl   rp   rq   rr   Úsqlite3ÚOperationalErrorr:   rV   rg   rs   r/   r.   rU   rT   r[   Úclearr   rP   r   r   ÚunlinkÚ	TypeErrorÚexistsrn   re   rb   )r]   r8   ÚpathÚjournalÚitems        r%   ÚlogoutzOwnerRuntime.logout(  sO  è ø€ Ø—:‘:÷ '	#ñ '	#Ø�{‰{Ð&ðØ—{‘{×/Ñ/Ô1¸D¿K¹K×<ZÑ<ZÓ<\×6\Ð6\Ø"Ÿk™k×1Ñ1Ó3×3Ñ3ØŸ™×1Ñ1Ô3Ø"Ÿk™k×4Ñ4Ó6×6Ð6ð ˆDŒKØˆDŒGØˆDŒJØ#'ˆDÔ ØˆDŒJØ&ˆDŒKØ×Ñ×"Ñ"Ô$Ü × 0Ñ 0Ô1Üœ T×%5Ñ%5Ó6¸ÑCÓDˆDÜœ<¨×(8Ñ(8Ó9Ð<NÑNÓOˆGØ˜w˜ò �ðØ—K‘K¨4�KÕ0ðð2Ø×(Ñ(Ó*×*Ð*ð �M‰MŒOØ—=‘=“?÷O'	#÷ '	#ò '	#ùð 7]ùØ3ùà6úÜ×/Ñ/ò <Ü!0°Ó!5�D”JÜ& t§z¡zÓ2¸Ð;ûÜ ò ðØ"Ÿk™k×4Ñ4Ó6×6Ò6øÜ$ò Ùðýðûô$ !ò &Ø—{‘{”}ØŸ™œúÜ ò Úðúð +ùÜò 2Ø%�”Ü,¨SÓ1�—
’
ûð2úðG'	#ø÷ '	#÷ '	#ñ '	#üsF  ‚K“G”K—J:¥7GÁGÁ!GÁ>GÁ?<GÂ;G
Â<GÃ B"J:Å#IÅ5J:Å8J
ÆJÆJ
ÆJ:Æ/KÆ;J8Æ<KÇGÇGÇ
GÇI
Ç &HÈI
ÈH7È0H3È1H7È6I
È7	IÉ I
ÉIÉI
ÉJ:É	I
É
J:É)JÉ6J:É9JÊJ:ÊJÊJ:ÊJ
Ê
	J5ÊJ0Ê*J:Ê0J5Ê5J:Ê8KÊ:KË KËKËKc              ƒ  ó  K  — | j                   }|�|j                  «       r| j                  dk7  rt        d«      ‚g }|j	                  |¬«      2 3 d {  –—† }|j
                  rd}n|j                  rd}nd}|j                  }t        |dd «      }d}t        |«      xr d	t        |«      j                  v}	|	r)t        t        |d
d «      xs t        |dd «      xs d«      }|j                  |j                  |j                  xs dj!                  «       xs t        |j                  «      |t        |dd «      xs dj!                  «       t#        t        |dd«      xs d«      t%        t        |dd «      «      |	|dœ«       �Œ57 �Œ16 |S ­w)Nrz   õ   Ð®Ð·ÐµÑ€Ð±Ð¾Ñ‚ Ð½Ðµ Ð² Ñ�ÐµÑ‚Ð¸)ÚlimitÚuserÚgroupÚchannelr@   r   ÚEmptyÚphoto_idr*   r-   Úunread_countr   r<   )r*   ÚtitleÚkindr-   ÚunreadÚpreviewÚ	has_photor¤   )rS   rl   rT   rg   Úiter_dialogsÚis_userÚis_groupÚentityrF   ÚboolÚtyper6   r   Úappendr*   ÚnamerG   rO   rJ   )
r]   rŸ   rS   ÚitemsÚdialogr§   r®   r@   r¤   rª   s
             r%   Úlist_dialogszOwnerRuntime.list_dialogsR  sn  è ø€ Ø—‘ˆØˆ> ×!4Ñ!4Ô!6¸$¿+¹+ÈÒ:QÜÐ@ÓAÐAØˆØ"×/Ñ/°eÐ/Ó<÷ 	ð 	�&Ø�~Š~Ø‘Ø—’Ø‘à �Ø—]‘]ˆFÜ˜F G¨TÓ2ˆEØˆHÜ˜U›ÒK¨´t¸E³{×7KÑ7KÐ(KˆIÙÜœw u¨j¸$Ó?ÒcÄ7È5ÐRVÐX\ÓC]ÒcÐacÓd�Ø�L‰LØ—i‘iØ Ÿ+™+Ò+¨×2Ñ2Ó4ÒF¼¸F¿I¹I»ØÜ$ V¨Z¸Ó>ÒDÀ"×KÑKÓMÜœg f¨n¸aÓ@ÒEÀAÓFÜ+¬G°F¸IÀtÓ,LÓMØ&Ø$ñ	ö 	ð	ùÐ<ð. ˆùs+   ‚AF
ÁFÁFÁFÁD-F
ÆFÆF
c              ƒ  ó  K  — | j                   }|�|j                  «       r| j                  dk7  rt        d«      ‚t	        j
                  dd¬«       t        | j                  › dt        |«      › d�z  }|j                  «       ra|j                  «       j                  dkD  rDt        j                  «       |j                  «       j                  z
  }|dk  r|j                  «       S 	 |j                  t        |«      t        ¬	«      ƒ d {  –—† }|s>|j                  «       r-|j                  «       j                  dkD  r|j                  «       S y 	 |j#                  |«       |S 7 ŒX# t         $ r d }Y Œcw xY w# t         $ r Y |S w xY w­w)
Nrz   rž   T)ÚparentsÚexist_okÚ_z.jpgr   i„  )Úfile)rS   rl   rT   rg   r   ÚmkdirrP   rO   Úis_fileÚstatÚst_sizeÚtimeÚst_mtimeÚ
read_bytesÚdownload_profile_photoÚbytesrs   Úwrite_bytes)r]   Úchat_idrS   ÚcacheÚageÚdatas         r%   Údialog_photozOwnerRuntime.dialog_photop  sU  è ø€ Ø—‘ˆØˆ> ×!4Ñ!4Ô!6¸$¿+¹+ÈÒ:QÜÐ@ÓAÐAÜ×Ñ $°Õ6Ü ×!1Ñ!1Ð 2°!´C¸³L°>ÀÐFÑFˆØ�=‰=Œ?˜uŸz™z›|×3Ñ3°aÒ7Ü—)‘)“+ §
¡
£× 5Ñ 5Ñ5ˆCØ�WŠ}Ø×'Ñ'Ó)Ð)ð	Ø×6Ñ6´s¸7³|Ì%Ð6ÓP×PˆDñ Ø�}‰}Œ 5§:¡:£<×#7Ñ#7¸!Ò#;Ø×'Ñ'Ó)Ð)Øð	Ø×Ñ˜dÔ#ð ˆð QùÜò 	ØŠDð	ûô ò 	ØØˆð	üsa   ‚C#FÃ&#E$ Ä	E"Ä
E$ ÄA FÅE5 Å FÅ"E$ Å$E2Å/FÅ1E2Å2FÅ5	FÅ>FÆFÆFc              ƒ  óÐ   K  — | j                   r| j                   j                  d«      st        d«      ‚| j                  t	        | j                   d   «      «      ƒ d {  –—† S 7 Œ­w)Nr*   rž   )r/   rd   rg   rÉ   rO   ra   s    r%   Ú
self_photozOwnerRuntime.self_photoˆ  sL   è ø€ Ø�wŠw˜dŸg™gŸk™k¨$Ô/ÜÐ@ÓAÐAØ×&Ñ&¤s¨4¯7©7°4©=Ó'9Ó:×:Ð:Ð:ús   ‚AA&ÁA$Á A&N)rP   rO   rQ   rO   rR   r   ÚreturnÚNone)rÌ   Údict©rÌ   rÍ   )rÌ   r   )r‚   r   rÌ   rÎ   )rŠ   r   rÌ   rÎ   )r�   r   rÌ   rÎ   )éÈ   )rŸ   rO   rÌ   z
list[dict])rÅ   rO   rÌ   úOptional[bytes])rÌ   rÑ   )r6   Ú
__module__Ú__qualname__r^   rb   re   ri   rn   rt   rx   r|   r~   r„   r‹   rŽ   r�   rœ   rµ   rÉ   rË   © r'   r%   rL   rL   \   sY   „ ó2ó
ó
óóóó
Hó#ó,
 ó#ó2#ó>#ó,#ó&(#ôTó<ô0;r'   rL   c                  ó,   — e Zd Zdd„Zdd„Zdd„Zdd„Zy)	ÚCatcherPoolc                ó`   — || _         || _        i | _        t        j                  «       | _        y rk   )rQ   rR   Ú	_sessionsrW   rX   rY   )r]   rQ   rR   s      r%   r^   zCatcherPool.__init__�  s$   € ØˆŒØ ˆŒØ24ˆŒÜ—\‘\“^ˆ�
r'   c              ƒ  ó<  K  — t        |«      }| j                  4 ƒd {  –—†  | j                  j                  |«      }|€0t	        || j
                  | j                  «      }|| j                  |<   |cd d d «      ƒd {  –—†  S 7 Œd7 Œ# 1 ƒd {  –—†7  sw Y   y xY w­wrk   )rO   rY   rØ   rd   rL   rQ   rR   )r]   rP   Úruntimes      r%   rd   zCatcherPool.get•  s†   è ø€ Ü˜+Ó&ˆØ—:‘:÷ 	ñ 	Ø—n‘n×(Ñ(¨Ó5ˆGØˆÜ& {°D·K±KÀÇÁÓO�Ø.5�—‘˜{Ñ+Ø÷	÷ 	ò 	øð 	ø÷ 	÷ 	ñ 	üsE   ‚BžBŸB¢ABÁ1BÁ=BÁ>BÂBÂBÂBÂBÂBc              ƒ  óŒ  K  — t        «       }t        dt        |«      › d�«       |D ]l  }| j                  |«      ƒ d {  –—† }	 |j	                  «       ƒ d {  –—†  t        d|› d|j
                  › �«       t        j                  d«      ƒ d {  –—†  Œn y 7 ŒX7 ŒA# t        $ r}t        d|› d|› �«       Y d }~ŒCd }~ww xY w7 Œ2­w)Nu   catcher: Ð¿Ð¾Ð´Ð½Ð¸Ð¼Ð°ÑŽ u    ÑŽÐ·ÐµÑ€Ð±Ð¾Ñ‚-Ñ�ÐµÑ�Ñ�Ð¸Ð¹zcatcher: owner z -> z boot failed: g333333Ã?)	r   Úprintr    rd   r|   rT   rs   rW   Úsleep)r]   ÚownersÚowner_idrÚ   r8   s        r%   Úboot_allzCatcherPool.boot_allž  s¼   è ø€ Ü$Ó&ˆÜÐ*¬3¨v«;¨-Ð7SÐTÔUØò 	&ˆHØ ŸH™H XÓ.×.ˆGðGØ—l‘l“n×$Ð$Ü˜¨ z°°g·n±nÐ5EÐFÔGô —-‘- Ó%×%Ñ%ñ	&Ø.øà$ùäò GÜ˜¨ z°À¸uÐE×FÑFûðGúà%úsW   ‚<C¾B¿CÁBÁBÁBÁ7CÂCÂCÂBÂ	B?Â$B:Â5CÂ:B?Â?Cc              ƒ  óN  K  — | j                   4 ƒd {  –—†  t        | j                  j                  «       «      }d d d «      ƒd {  –—†  t	        j
                  D �cg c]  }|j                  «       ‘Œ c}ddiŽƒ d {  –—†  y 7 Œq7 Œ@# 1 ƒd {  –—†7  sw Y   ŒPxY wc c}w 7 Œ#­w)NÚreturn_exceptionsT)rY   ÚlistrØ   ÚvaluesrW   Úgatherr~   )r]   r³   r›   s      r%   Úshutdown_allzCatcherPool.shutdown_allª  s‚   è ø€ Ø—:‘:÷ 	2ñ 	2Ü˜Ÿ™×.Ñ.Ó0Ó1ˆE÷	2÷ 	2ä�n‰n¸5ÖA°4˜tŸ}™}�ÒAÐZÐUYÑZ×ZÑZð	2øð 	2ø÷ 	2÷ 	2ñ 	2üâAÐZús[   ‚B%“B”B%—$B	»B%ÁBÁB%ÁBÁ5
B%Á?B#Â B%ÂB%Â	BÂBÂBÂB%N)rQ   rO   rR   r   rÌ   rÍ   )rP   rO   rÌ   rL   rÏ   )r6   rÒ   rÓ   r^   rd   rà   ræ   rÔ   r'   r%   rÖ   rÖ   Ž  s   „ ó$óó
&ô[r'   rÖ   )r#   r   rÌ   r   )rÌ   zOptional[dict])r8   ÚBaseExceptionrÌ   r   )rÌ   r   )$Ú__doc__Ú
__future__r   rW   r   r“   r¿   Úpathlibr   Útypingr   Útelethonr   Útelethon.errorsr   r   r	   r
   r   r   Údbr   r   r   r   r   Úwatchr   Úconfigr   r&   r0   r:   rJ   rL   rÖ   rÔ   r'   r%   ú<module>rñ      sl   ðñ Yå "ã Û 	Û Û Ý Ý å #÷÷ ÷õ õ *Ý óó	óó"÷&o;ñ o;÷d	[ò [r'   