o
    à›hî!  ã                   @   sà   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„ Zdd„ Zedkrndej	vrVej
dkrDd dlZe ejd  ¡Zeejjƒejd < n
ejd  d	 ejd < edƒ ejd = z	e ejd
¡ W n	 eyh   Y nw eƒ  dS dS )é    Nc               
      sÚ  t tjƒ} | jd u rttjdƒ t_}t 	|j
¡ ddlm} ddlm}m‰m} ddlm}m}m} | jd urjtjdkrWt t ¡ ¡t ¡ krLt ¡  t ¡ dkrWt d¡ tjtjtjfD ]
}|d uri| 
¡  q_| jrxˆj jt ˆj!ƒO  _| j"d ur�| j"ˆ_"ˆj#dd� ˆ $d	¡ | j%|_&| jd u r¢t' (t )d
¡d¡ *d¡|_&i }	z| +| j,| j¡\}
}W n  t-yÐ } z| jd u r¾‚ ddt.|ƒ i}	W Y d }~nd }~ww |
|dœ|	d< | jd u�rqz| +¡ \}}W n t-�y } zddt.|ƒ i}	W Y d }~nd }~ww ||dœ|	d< ˆ /d| j| 0|	¡¡ z>| 1¡ }z1| 2d ¡ | 3d| jf¡ | 4dd¡}z| 5| 6|	¡ (d¡¡ W | 
¡  n| 
¡  w W | 7|¡ n| 7|¡ w W n t-�ya   ˆ 8d¡ Y nw d|	v �rqˆ 9d¡ t d¡ t :d¡‰ ˆ d u�rÂˆ /dˆ | 0|	¡¡ ‡ ‡fdd„}z&tˆ dƒ�}t 	|¡ t;| 6|	¡|d� W d   ƒ n	1 �s¬w   Y  W n t-�yÁ   ˆ 8d¡ Y nw | jd u �rÍ| <d ¡ t 	|j=¡ t 	|j=¡ | >¡  ˆ /d!¡ | ?¡  ˆ /d"¡ d S )#NÚwr   )Úadapter)ÚjsonÚlogÚsockets)ÚclientsÚserversÚsessionsÚposixzdebugpy.adapter)Úprefixz$debugpy.adapter startup environment:é    ÚhexÚasciiÚerrorz%Can't listen for client connections: )ÚhostÚportÚclientz%Can't listen for server connections: Úserverz<Sending endpoints info to debug server at localhost:{0}:
{1}ú	127.0.0.1Úwbzutf-8z-Error sending endpoints info to debug server:z#Couldn't set up endpoints; exiting.é   ZDEBUGPY_ADAPTER_ENDPOINTSz$Writing endpoints info to {0!r}:
{1}c                      sB   ˆ  dˆ ¡ zt ˆ ¡ W d S  ty    ˆjdˆ dd� Y d S w )Nz%Listener ports closed; deleting {0!r}zFailed to delete {0!r}Úwarning)Úlevel)ÚinfoÚosÚremoveÚ	ExceptionZswallow_exception© ©Zlistener_filer   r   úNc:\Users\shubh\Videos\agent\nova\Lib\site-packages\debugpy/adapter/__main__.pyÚdelete_listener_filek   s   ÿÿz"main.<locals>.delete_listener_file)Úfilez%Error writing endpoints info to file:ÚstdiozAAll debug servers disconnected; waiting for remaining sessions...z'All debug sessions have ended; exiting.)@Ú_parse_argvÚsysÚargvr   Úopenr   ÚdevnullÚstderrÚatexitÚregisterÚcloseÚdebugpyr   Zdebugpy.commonr   r   r   Zdebugpy.adapterr   r   r	   Ú
for_serverÚnameZgetsidÚgetpidZsetsidZforkÚexitÚstdinÚstdoutÚ
log_stderrZlevelsÚsetZLEVELSZlog_dirZto_fileZdescribe_environmentZserver_access_tokenZaccess_tokenÚcodecsÚencodeÚurandomÚdecodeZserver   r   Ústrr   ÚreprZcreate_clientÚ
settimeoutÚconnectÚmakefileÚwriteÚdumpsZclose_socketZreraise_exceptionr   ÚgetenvÚprintZClientZstop_servingZwait_until_disconnectedZwait_until_ended)Úargsr(   r   r   r   r   r   r	   r"   Z	endpointsZclient_hostZclient_portÚexcZserver_hostZserver_portÚsockZsock_ior    Úfr   r   r   Úmain   s°   




€



€ý€ÿý
ÿ




ÿ	
þ€ÿ

rF   c                 C   sÊ   t  ¡ }|jdtdt jd� |jdtd ddd� |jdtdd	d
d� |jdtdd� |jdtdd� |jdtddd� |jdddd� | | dd … ¡}|jd u rc|jrY| 	d¡ |j
d urc| 	d¡ |S )Nz--for-serverZPORT)ÚtypeÚmetavarÚhelpz--portz;start the adapter in debugServer mode on the specified port)rG   ÚdefaultrH   rI   z--hostr   ZHOSTz;start the adapter in debugServer mode on the specified hostz--access-tokenz%access token expected from the server)rG   rI   z--server-access-tokenz#access token expected by the serverz	--log-dirÚDIRz/enable logging and use DIR to save adapter logsz--log-stderrÚ
store_truezenable logging to stderr)ÚactionrI   r   z--log-stderr requires --portz--for-server requires --port)ÚargparseÚArgumentParserÚadd_argumentÚintZSUPPRESSr9   Ú
parse_argsr   r3   r   r-   )r%   ÚparserrB   r   r   r   r#   ‹   sP   
ÿûûÿÿüÿ



r#   Ú__main__r,   Úntz/../../Ú )rN   r)   r5   Úlocaler   r$   rF   r#   Ú__name__Úmodulesr.   ÚpathlibÚPathÚpathZwindows_pathr9   ÚparentÚ
__import__Ú	setlocaleÚLC_ALLr   r   r   r   r   Ú<module>   s0   {5

ü
Õ