
    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Zddl	Z	ddl
Z
ddlZddlmZ ddlmZ  ee      j#                         j$                  Z ed      Zej*                  j-                  dedz        Zerej0                  sJ ej*                  j3                  e      Zeej6                  ej8                  <   ej0                  j;                  e       dd	Z G d
 d      Zd Z ddZ!e"dk(  r e# e!             y)zGIndependent live-profile verification with all network creation denied.    )annotationsN)Path)SimpleNamespacez)/home/cube/.hermes/profiles/dualcoachtestverified_network_probe_v3network_probe_v3.pyc                d    t        j                  | j                               j                         S N)hashlibsha256
read_bytes	hexdigest)paths    _.omo/evidence/task26/task26-telegram-network-probe-v3-e788f5d5/independent_verify_no_network.pydigestr      s!    >>$//+,6688    c                  &    e Zd ZddZd Zd Zd Zy)FakeBotc                d    t        |j                  d      d         | _        || _        g | _        y )N:r   )int	partitionbot_idusernamecalls)selftokenr   s      r   __init__zFakeBot.__init__!   s*    %//#.q12  "
r   c                D   K   | j                   j                  d       | S w)Nenterr   appendr   s    r   
__aenter__zFakeBot.__aenter__&   s     

'"s    c                B   K   | j                   j                  d       y w)Nexitr    )r   _argss     r   	__aexit__zFakeBot.__aexit__*   s     

&!s   c                   K   | j                   j                  d       t        | j                  | j                        S w)Nget_me)idr   )r   r!   r   r   r   r"   s    r   r)   zFakeBot.get_me-   s-     

(#$++FFs   =?N)r   strr   r+   )__name__
__module____qualname__r   r#   r'   r)    r   r   r   r       s    #
"Gr   r   c                     t        d      )Nz0network access forbidden in independent verifier)AssertionError)r&   _kwargss     r   deniedr3   2   s    
K
LLr   c                    t         j                  t              t         j                  t              } t	        t
        j                        }g dfd}t        j                  t        j                  }fd}t        t         d      }t        j                  d d  }t        j                         }	 |t        _        t        t        _        t        t         d|       t!        t"        dz        dt!        t              ddgt        _        t%        j&                  |      5   t        t         d             }d d d        t        _        |t        _        t        t         d|       |t        _        d	k7  rt)        d
      t+        j,                  |j/                               }	|	j1                  d      dk7  rt)        d      t3              dk7  sd	   j4                  g dk7  rt)        d      j6                  |j/                         v rt)        d      t	        t
        j                        |k7  rt)        d      t         j                  t              }
| |
k7  rt)        d      dddt!        j8                        j:                  j<                  j>                  dddd	   j4                  |
tA        t"        dz        d}t"        dz  }t        jB                  |t
        jD                  t
        jF                  z  t
        jH                  z  d      }t        jJ                  |t+        jL                  |dd      dz   jO                                t        jP                  |       t        jR                  |       tU        t+        jL                  |d             y	# 1 sw Y   hxY w# t        _        |t        _        t        t         d|       |t        _        w xY w) Nc                V    t        | j                        }j                  |       |S r	   )r   r   r!   )r   botbindingbotss     r   factoryzmain.<locals>.factory<   s&    eW--.C
r   c                     | r| d   n|j                  dt        j                        }|t        j                  k7  r
t	                 | i |S )Nr   family)getsocketAF_INETAF_UNIXr3   )argskwargsr;   
old_sockets      r   local_only_socketzmain.<locals>.local_only_socketD   s@     afjj6>>&JV^^#H4*6**r   production_bot_factoryr   z	--profilez	--timeout10mainr   z%offline main-path verification failedstatusREADY_TELEGRAM_TRANSPORTz+offline main path did not produce readiness   )r   r)   r%   z%probe called an unexpected bot methodztoken leaked to outputz!probe mutated process environmentzlive authority changedz)task26-network-probe-v3-independent-proofPASS_INDEPENDENT_NO_NETWORKTF)schemarG   network_deniedprofileconfig_sha256
env_sha256configured_usernamebot_id_bound_from_token_prefixtoken_printedenvironment_unchanged	bot_callsauthority_sha256probe_sha256zindependent-proof.jsoni  ),r   )	sort_keys
separators
)rX   )r   r+   returnr   )+mload_profile_bindingPROFILEauthority_hashesdictosenvironr=   create_connectiongetattrsysargvioStringIOr3   setattrr+   ROOT
contextlibredirect_stdoutRuntimeErrorjsonloadsgetvaluer<   lenr   r   rM   rN   rO   r   r   openO_WRONLYO_CREATO_EXCLwritedumpsencodefsynccloseprint)before_authority
before_envr9   old_connectionrC   old_factoryold_argvoutputcodedocumentafter_authorityprooftargetfdr7   r8   rB   s                 @@@r   rF   rF   6   s   $$W-G))'2bjj!JD
 J--N+ !56Kxx{H[[]F)#) +W5,,-L
 ''/%71f%'D 0 ##1 +[9qyBCCzz&//+,H||H!;;HII
4yA~a*EEBCC}}))344BJJ:%>??((1O?*344=/w' ..((&//*.!%!W]]+t&;;<E ,,F	rzz1BII=u	EBHH
TZZ*ELTTV HHRLHHRL	$**Ud
+,Y 0/ ##1 +[9s%   5A-N+ "N8N+ N(#N+ +4O__main__)r   r   r[   r+   )r[   r   )$__doc__
__future__r   rk   r
   importlib.util	importlibrg   rn   ra   r=   re   pathlibr   typesr   __file__resolveparentrj   r^   utilspec_from_file_locationSPECloadermodule_from_specr\   modulesnameexec_moduler   r   r3   rF   r,   
SystemExitr/   r   r   <module>r      s    M "    	  	  
  !H~&&
:
;~~--(=!=  NN##D)DII     9G G$MNb z
TV
 r   