Ë
    :É„j[  ã                   óx   — d dl Z d dlZd dlmZmZ ddlmZmZ ddlm	Z	  ej                  e«      Z G d„ d«      Zy)	é    N)ÚOptionalÚTypeé   )ÚTCPÚTCPAbridgedé   )Ú
DataCenterc                   óv   — e Zd ZdZdefdedededededed	ee	   d
dfd„Z
dd„Zdd„Zded
dfd„Zd
ee   fd„Zy)Ú
Connectioné   FÚdc_idÚ	test_modeÚipv6Úalt_portÚproxyÚmediaÚprotocol_factoryÚreturnNc                 óœ   — || _         || _        || _        || _        || _        || _        || _        t        |||||«      | _        d | _	        y ©N)
r   r   r   r   r   r   r   r	   ÚaddressÚprotocol)Úselfr   r   r   r   r   r   r   s           úU/var/www/html/GAP/venv/lib/python3.12/site-packages/pyrogram/connection/connection.pyÚ__init__zConnection.__init__!   sQ   € ð ˆŒ
Ø"ˆŒØˆŒ	Ø ˆŒØˆŒ
ØˆŒ
Ø 0ˆÔä! %¨°D¸(ÀEÓJˆŒØ'+ˆ�ó    c              ƒ   óâ  K  — t        t        j                  «      D ]Å  }| j                  | j                  | j
                  ¬«      | _        	 t        j                  d«       | j                  j                  | j                  «      ƒ d {  –—†  t        j                  d| j                  rdnd| j                  | j                  rdnd| j                  rd«        y d	«        y  t        j                  d«       t&        ‚7 Œu# t        $ rb}t        j                  d
|«       | j                  j!                  «       ƒ d {  –—†7   t#        j$                  d«      ƒ d {  –—†7   Y d }~�ŒKd }~ww xY w­w)N)r   r   zConnecting...zConnected! %s DC%s%s - IPv%sÚTestÚ
Productionz (media)Ú Ú6Ú4z+Unable to connect due to network issues: %sr   z"Connection failed! Trying again...)Úranger   ÚMAX_CONNECTION_ATTEMPTSr   r   r   r   ÚlogÚinfoÚconnectr   r   r   r   ÚOSErrorÚwarningÚcloseÚasyncioÚsleepÚConnectionError)r   Ú_Úes      r   r'   zConnection.connect6   s  è ø€ Ü”z×9Ñ9Ó:ò 	"ˆAØ ×1Ñ1°t·y±yÈÏ
É
Ð1ÓSˆDŒMðÜ—‘˜Ô)Ø—m‘m×+Ñ+¨D¯L©LÓ9×9Ð9ô —‘Ð7Ø#'§>¢>™°|ØŸ™Ø'+§z¢z™°rØ $§	¢	˜ô	4ñ
 ð 03ô	4ñ
 ð!	"ô$ �K‰KÐ<Ô=Ü!Ð!ð :ùÜò 'Ü—‘ÐIÈ1ÔMØ—m‘m×)Ñ)Ó+×+Ñ+Ü—m‘m AÓ&×&×&ûð'üs[   ‚A	E/Á=DÂ	C?Â
DÂA1E/Ã?DÄ	E,Ä
3E'Ä=E Ä>E'ÅEÅE'Å!E/Å'E,Å,E/c              ƒ   ó~   K  — | j                   j                  «       ƒ d {  –—†  t        j                  d«       y 7 Œ­w)NÚDisconnected)r   r*   r%   r&   ©r   s    r   r*   zConnection.closeL   s-   è ø€ Ø�m‰m×!Ñ!Ó#×#Ð#Ü�‰�Õ ð 	$ús   ‚= ;¡=Údatac              ƒ   óV   K  — | j                   j                  |«      ƒ d {  –—†  y 7 Œ­wr   )r   Úsend)r   r3   s     r   r5   zConnection.sendP   s   è ø€ Ø�m‰m× Ñ  Ó&×&Ò&ús   ‚)¡'¢)c              ƒ   óR   K  — | j                   j                  «       ƒ d {  –—† S 7 Œ­wr   )r   Úrecvr2   s    r   r7   zConnection.recvS   s   è ø€ Ø—]‘]×'Ñ'Ó)×)Ð)Ð)ús   ‚' %¡')r   N)Ú__name__Ú
__module__Ú__qualname__r$   r   ÚintÚboolÚdictr   r   r   r'   r*   Úbytesr5   r   r7   © r   r   r   r      s”   „ ØÐð Ø&1ñ,àð,ð ð,ð ð	,ð
 ð,ð ð,ð ð,ð ˜s™)ð,ð 
ó,ó*"ó,!ð'˜uð '¨ó 'ð*˜H U™Oô *r   r   )r+   ÚloggingÚtypingr   r   Ú	transportr   r   Úsession.internalsr	   Ú	getLoggerr8   r%   r   r?   r   r   ú<module>rE      s2   ðó( Û ß !ç 'Ý *à€g×Ñ˜Ó!€÷6*ò 6*r   