Ë
    Ü_Ëi‘  ã                  ó  — 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m	Z	m
Z
mZ ddlmZ ddlmZ dZ e
de	d	ef   ¬
«      Zdd„Z	 	 	 	 	 	 	 	 dd„Zej(                  dk\  rej*                  Zej,                  Zydd„Zdd„Zy)z2Miscellaneous pieces that need to be synchronized.é    )ÚannotationsN)ÚAnyÚCallableÚTypeVarÚcast)ÚOperationFailure)Ú_REAUTHENTICATION_REQUIRED_CODEFÚF.)Úboundc                ó0   ‡ — dˆ fd„}t        t        |«      S )Nc               Ÿ  óŽ  •K  — |j                  dd«      }ddlm} ddlm} 	  ‰| i |¤Žƒ d {  –—† S 7 Œ# t
        $ r„}|r‚ |j                  t        k(  rhd }| D ],  }t        ||«      r|} nt        ||«      sŒ |j                  } n |r|j                  d¬«      ƒ d {  –—†7   n‚  ‰| i |¤Žƒ d {  –—†7  cY d }~S ‚ d }~ww xY w­w)NÚ	no_reauthFr   )ÚAsyncConnection)Ú_BulkWriteContextT)Úreauthenticate)ÚpopÚpymongo.asynchronous.poolr   Úpymongo.messager   r   Úcoder	   Ú
isinstanceÚconnÚauthenticate)	ÚargsÚkwargsr   r   r   Úexcr   ÚargÚfuncs	           €ú_/var/www/pod-logistic/pod-api/venv/lib/python3.12/site-packages/pymongo/asynchronous/helpers.pyÚinnerz_handle_reauth.<locals>.inner)   sÑ   øè ø€ Ø—J‘J˜{¨EÓ2ˆ	Ý=Ý5ð	Ù˜tÐ. vÑ.×.Ð.Ð.ùÜò 	ÙØØ�x‰xÔ:Ò:ð �Øò �CÜ! # Ô7Ø"˜ÙÜ! #Ð'8Õ9Ø"Ÿx™x˜Ùðñ Ø×+Ñ+¸4Ð+Ó@×@Ò@àÙ! 4Ð2¨6Ñ2×2Ð2Õ2Øûð)	üs`   ƒC£5 ®3¯5 ²C³5 µ	C¾9B=Á8&B=ÂB!ÂB=Â1B4Â2B=Â6CÂ7CÂ<B=Â=CÃC)r   r   r   r   Úreturnr   )r   r
   )r   r   s   ` r   Ú_handle_reauthr!   (   s   ø€ õô: ”�5‹>Ðó    c              ‹  ó¨   K  — t         s0t        j                  «       } |j                  | |fi |¤Žƒ d {  –—† S t	        j                  | |fi |¤ŽS 7 Œ­w)N)Ú_IS_SYNCÚasyncioÚget_running_loopÚgetaddrinfoÚsocket)ÚhostÚportr   Úloops       r   Ú_getaddrinfor,   I   sS   è ø€ õ Ü×'Ñ'Ó)ˆØ%�T×%Ñ% d¨DÑ;°FÑ;×;Ð;ä×!Ñ! $¨Ñ7°Ñ7Ð7ð <ús   ‚2A´AµA)é   é
   c              ƒ  ó>   K  — | j                  «       ƒ d{  –—† S 7 Œ­w)úiCompatibility function until we drop 3.9 support: https://docs.python.org/3/library/functions.html#anext.N)Ú	__anext__©Úclss    r   Úanextr4   `   s   è ø€ à—]‘]“_×$Ð$Ð$ús   ‚–—c                ó"   — | j                  «       S )r0   )Ú	__aiter__r2   s    r   Úaiterr7   d   s   € à�}‰}‹Ðr"   )r   r
   r    r
   )r)   r   r*   r   r   r   r    zlist[tuple[socket.AddressFamily, socket.SocketKind, int, str, tuple[str, int] | tuple[str, int, int, int] | tuple[int, bytes]]])r3   r   r    r   )Ú__doc__Ú
__future__r   r%   Úbuiltinsr(   ÚsysÚtypingr   r   r   r   Úpymongo.errorsr   Úpymongo.helpers_sharedr	   r$   r
   r!   r,   Úversion_infor4   r7   © r"   r   ú<module>rA      s£   ðñ 9Ý "ã Û Û Û 
÷ó õõ Cà€ñ ˆC�x  S Ñ)Ô*€óðB8Ø
ð8Øð8Ø$'ð8ðó8ð$ ×Ñ�wÒØ�N‰N€EØ�N‰N�Eó%ôr"   