ó
    [hv  ã                  ó  • S SK Jr  S SKrS SKJr  S SKJrJrJr  S SK	J
r
  S SKJr  S SKJrJr  S SKJr  S S	KJr  S S
KJrJrJr  SSKJrJrJr  SSKJrJrJr  SSKJ r   \\!\\4   r"\#\!\$4   r%\\%\!4   r&\#\'\%4   r(\#\'\!4   r)\" S5      r* " S S5      r+ " S S\5      r, " S S\5      r- " S S\\-5      r. " S S\.5      r/ " S S\\.   \-5      r0 " S S\\(   \-5      r1 " S S \\'   \-5      r2 " S! S"\\)   \-5      r3 " S# S$\\'   \-5      r4g)%é    )ÚannotationsN)Úabstractmethod)ÚCallableÚ
CollectionÚMapping)ÚAsyncExitStack)ÚIOBase)ÚIPv4AddressÚIPv6Address)ÚAddressFamily)ÚTracebackType)ÚAnyÚTypeVarÚUnioné   )ÚTypedAttributeProviderÚTypedAttributeSetÚtyped_attributeé   )Ú
ByteStreamÚListenerÚUnreliableObjectStream)Ú	TaskGroupÚT_Retvalc                  ó8   • \ rS rSrSS jr        SS jrSrg)Ú_NullAsyncContextManageré   c              ƒ  ó   #   • g 7f©N© ©Úselfs    Ú_/home/gothic/public_html/Fooocus/fooocus_env/lib/python3.13/site-packages/anyio/abc/_sockets.pyÚ
__aenter__Ú#_NullAsyncContextManager.__aenter__   s   é € Øùó   ‚c              ƒ  ó   #   • g 7fr   r    )r"   Úexc_typeÚexc_valÚexc_tbs       r#   Ú	__aexit__Ú"_NullAsyncContextManager.__aexit__!   s
   é € ð ùr&   r    N)ÚreturnÚNone)r(   ztype[BaseException] | Noner)   zBaseException | Noner*   zTracebackType | Noner-   zbool | None)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r$   r+   Ú__static_attributes__r    ó    r#   r   r      s2   † ôðà,ðð &ðð %ð	ð
 
÷r4   r   c                  ó¦   • \ rS rSr% \" 5       rS\S'   \" 5       rS\S'   \" 5       rS\S'   \" 5       r	S\S	'   \" 5       r
S\S
'   \" 5       rS\S'   Srg)ÚSocketAttributeé*   r   ÚfamilyÚSockAddrTypeÚlocal_addressÚintÚ
local_portúsocket.socketÚ
raw_socketÚremote_addressÚremote_portr    N)r/   r0   r1   r2   r   r8   Ú__annotations__r:   r<   r>   r?   r@   r3   r    r4   r#   r6   r6   *   sP   ‡ á+Ó-€FˆMÓ-á"1Ó"3€M�<Ó3á%Ó'€J�Ó'á /Ó 1€J�Ó1á#2Ó#4€N�LÓ4á&Ó(€K�Ö(r4   r6   c                  óF   • \ rS rSr\SS j5       r\\SS j5       5       rSrg)Ú_SocketProvideré9   c                ó  ^ ^^^• SSK Jm  [        R                  U 4S j[        R                  UU 4S j[        R
                  U 4S j0n T" T R                  R                  5       5      mTb  U4S jU[        R                  '   T R                  R                  [        R                  [        R                  4;   a6  U 4S jU[        R                  '   Tb  TS   mU4S	 jU[        R                  '   U$ ! [         a    S m N˜f = f)
Nr   )Úconvert_ipv6_sockaddrc                 ó0   >• T R                   R                  $ r   )Ú_raw_socketr8   r!   s   €r#   Ú<lambda>Ú2_SocketProvider.extra_attributes.<locals>.<lambda>?   s   ø€ ¨D×,<Ñ,<×,CÒ,Cr4   c                 óD   >• T " TR                   R                  5       5      $ r   ©rH   Úgetsockname)Úconvertr"   s   €€r#   rI   rJ   @   s   ø€ ±7Ø× Ñ ×,Ñ,Ó.ô4r4   c                 ó   >• T R                   $ r   )rH   r!   s   €r#   rI   rJ   C   s   ø€ °×0@Ò0@r4   c                 ó   >• T $ r   r    )Úpeernames   €r#   rI   rJ   L   s   ø€ Ár4   c                 ó>   >• T R                   R                  5       S   $ )Nr   rL   r!   s   €r#   rI   rJ   Q   s   ø€ ˜×(Ñ(×4Ñ4Ó6°qÒ9r4   r   c                 ó   >• T $ r   r    )r@   s   €r#   rI   rJ   U   s   ø€ Á+r4   )Ú_core._socketsrF   r6   r8   r:   r>   rH   ÚgetpeernameÚOSErrorr?   r   ÚAF_INETÚAF_INET6r<   r@   )r"   Ú
attributesrN   rQ   r@   s   ` @@@r#   Úextra_attributesÚ _SocketProvider.extra_attributes:   sä   û€ åEô ×"Ñ"Ô$CÜ×)Ñ)õ ,ô ×&Ñ&Ô(@ð4
ˆ
ð	Ù/6°t×7GÑ7G×7SÑ7SÓ7UÓ/VˆHð
 ÑÜ9IˆJ”×5Ñ5Ñ6ð ×Ñ×"Ñ"¤}×'<Ñ'<¼m×>TÑ>TÐ&UÓUä9ð ”×1Ñ1Ñ2ð Ñ#Ø& q™k�Ü:M�
œ?×6Ñ6Ñ7àÐøô! ó 	ØŠHð	ús   Á C5 Ã5DÄDc                ó   • g r   r    r!   s    r#   rH   Ú_SocketProvider._raw_socketY   s   € ð 	r4   r    N)r-   zMapping[Any, Callable[[], Any]])r-   r=   )	r/   r0   r1   r2   ÚpropertyrZ   r   rH   r3   r    r4   r#   rC   rC   9   s0   † Øóó ðð< Øóó ó ór4   rC   c                  ó   • \ rS rSrSrSrg)ÚSocketStreamé_   zi
Transports bytes over a socket.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
r    N©r/   r0   r1   r2   Ú__doc__r3   r    r4   r#   r`   r`   _   ó   † ôr4   r`   c                  ó<   • \ rS rSr\SS j5       r\SS j5       rSrg)ÚUNIXSocketStreamég   c              ƒ  ó   #   • g7f)zÈ
Send file descriptors along with a message to the peer.

:param message: a non-empty bytestring
:param fds: a collection of files (either numeric file descriptors or open file
    or socket objects)
Nr    )r"   ÚmessageÚfdss      r#   Úsend_fdsÚUNIXSocketStream.send_fdsh   ó   é � ùr&   c              ƒ  ó   #   • g7f)zö
Receive file descriptors along with a message from the peer.

:param msglen: length of the message to expect from the peer
:param maxfds: maximum number of file descriptors to expect from the peer
:return: a tuple of (message, file descriptors)
Nr    )r"   ÚmsglenÚmaxfdss      r#   Úreceive_fdsÚUNIXSocketStream.receive_fdsr   rm   r&   r    N)ri   Úbytesrj   zCollection[int | IOBase]r-   r.   )ro   r;   rp   r;   r-   ztuple[bytes, list[int]])r/   r0   r1   r2   r   rk   rq   r3   r    r4   r#   rf   rf   g   s(   † Øóó ðð óó ór4   rf   c                  óF   • \ rS rSrSr\SS j5       r S     S	S jjrSrg)
ÚSocketListeneré}   zq
Listens to incoming socket connections.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
c              ƒ  ó   #   • g7f)zAccept an incoming connection.Nr    r!   s    r#   ÚacceptÚSocketListener.accept„   rm   r&   Nc              ƒ  ó  #   • SSK Jn  [        5        IS h  v•N nUc  UR                  U" 5       5      I S h  v•N n U R	                  5       I S h  v•N nUR                  X5        M+   NQ N2 N! , IS h  v•N  (       d  f       g = f7f)Nr   )Úcreate_task_group)Ú r{   r   Úenter_async_contextrx   Ú
start_soon)r"   ÚhandlerÚ
task_groupr{   ÚstackÚstreams         r#   ÚserveÚSocketListener.serveˆ   sn   é € õ
 	)ä!×#Ô# uØÑ!Ø#(×#<Ñ#<Ñ=NÓ=PÓ#Q×Q�
àØ#Ÿ{™{›}×,�Ø×%Ñ% gÔ6ñ ñ	 $áQñ -÷ $×#Ö#üsT   ‚B	—A)˜B	›A/¸A+¹A/ÁA-ÁA/Á)B	Á+A/Á-A/Á/BÁ5A8Á6BÂB	r    )r-   r`   r   )r   zCallable[[SocketStream], Any]r€   zTaskGroup | Noner-   r.   )	r/   r0   r1   r2   rc   r   rx   rƒ   r3   r    r4   r#   ru   ru   }   sF   † ñð ó-ó ð-ð (,ð7à.ð7ð %ð7ð 
÷	7ð 7r4   ru   c                  ó"   • \ rS rSrSrSS jrSrg)Ú	UDPSocketé˜   zo
Represents an unconnected UDP socket.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
c              ƒ  óF   #   • U R                  XU445      I Sh  v•N $  N7f)zN
Alias for :meth:`~.UnreliableObjectSendStream.send` ((data, (host, port))).

N©Úsend)r"   ÚdataÚhostÚports       r#   ÚsendtoÚUDPSocket.sendtoŸ   s#   é € ð
 —Y‘Y ¨T lÐ3Ó4×4Ð4Ñ4ùs   ‚!š›!r    N)r‹   rs   rŒ   Ústrr�   r;   r-   r.   ©r/   r0   r1   r2   rc   rŽ   r3   r    r4   r#   r†   r†   ˜   s   † ñ÷5r4   r†   c                  ó   • \ rS rSrSrSrg)ÚConnectedUDPSocketé§   zm
Represents an connected UDP socket.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
r    Nrb   r    r4   r#   r“   r“   §   rd   r4   r“   c                  ó"   • \ rS rSrSrSS jrSrg)ÚUNIXDatagramSocketé¯   zy
Represents an unconnected Unix datagram socket.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
c              ƒ  óB   #   • U R                  X45      I Sh  v•N $  N7f)zCAlias for :meth:`~.UnreliableObjectSendStream.send` ((data, path)).Nr‰   )r"   r‹   Úpaths      r#   rŽ   ÚUNIXDatagramSocket.sendto¸   s   é € à—Y‘Y ˜|Ó,×,Ð,Ñ,ùs   ‚˜™r    N)r‹   rs   r™   r�   r-   r.   r‘   r    r4   r#   r–   r–   ¯   s   † ñ÷-r4   r–   c                  ó   • \ rS rSrSrSrg)ÚConnectedUNIXDatagramSocketé½   zv
Represents a connected Unix datagram socket.

Supports all relevant extra attributes from :class:`~SocketAttribute`.
r    Nrb   r    r4   r#   rœ   rœ   ½   rd   r4   rœ   )5Ú
__future__r   ÚsocketÚabcr   Úcollections.abcr   r   r   Ú
contextlibr   Úior	   Ú	ipaddressr
   r   r   Útypesr   Útypingr   r   r   Ú_core._typedattrr   r   r   Ú_streamsr   r   r   Ú_tasksr   r�   ÚIPAddressTypeÚtupler;   ÚIPSockAddrTyper9   rs   ÚUDPPacketTypeÚUNIXDatagramPacketTyper   r   r6   rC   r`   rf   ru   r†   r“   r–   rœ   r    r4   r#   Ú<module>r¯      s7  ðÝ "ã Ý ß 9Ñ 9Ý %Ý ß .Ý  Ý ß &Ñ &÷ñ ÷
 CÑ BÝ à�c˜;¨Ð3Ñ4€Ø�s˜C�x‘€Ø�^ SÐ(Ñ)€Ø�e˜^Ð+Ñ,€Ø˜u c˜zÑ*Ð Ù�:Ó€÷
ñ 
ô)Ð'ô )ô#Ð,ô #ôL�:˜ô ô�|ô ô,7�X˜lÑ+¨_ô 7ô65Ð& }Ñ5°ô 5ôÐ/°Ñ6¸ô ô-ØÐ1Ñ2°Oô-ôÐ"8¸Ñ"?Àõ r4   