Ë
    Ü_ËiÕ  ã                  óF   — d Z ddlmZ ddlZddlmZmZ 	 d	 	 	 	 	 	 	 dd„Zy)zAzure helpers.é    )ÚannotationsN)ÚAnyÚOptionalc                ó  — ddl m}m} d}|dz  }|d| › �z  }|r|d|› �z  }ddd	œ} |||¬
«      }	  |||¬«      5 }|j                  }	|j	                  «       j                  d«      }
d d d «       	dk7  rd}t        |«      ‚	 t        j                  
«      }dD ]'  }|j                  |«      rŒd}|||
fz  }t        |«      ‚ |S # 1 sw Y   Œ_xY w# t        $ r}d|z  }t        |«      d ‚d }~ww xY w# t        $ r t        d«      d ‚w xY w)Nr   )ÚRequestÚurlopenz5http://169.254.169.254/metadata/identity/oauth2/tokenz?api-version=2018-02-01z
&resource=z&client_id=Útruezapplication/json)ÚMetadataÚAccept)Úheaders)ÚtimeoutÚutf8z'Failed to acquire IMDS access token: %séÈ   z$Failed to acquire IMDS access token.z*Azure IMDS response must be in JSON format)Úaccess_tokenÚ
expires_inz0Azure IMDS response must contain %s, but was %s.)Úurllib.requestr   r   ÚstatusÚreadÚdecodeÚ	ExceptionÚ
ValueErrorÚjsonÚloadsÚget)ÚresourceÚ	client_idr   r   r   Úurlr   ÚrequestÚresponser   ÚbodyÚeÚmsgÚdataÚkeys                  úY/var/www/pod-logistic/pod-api/venv/lib/python3.12/site-packages/pymongo/_azure_helpers.pyÚ_get_azure_responser&      sK  € ÷ 0à
A€CØÐ$Ñ$€CØˆZ˜�zÐ"Ñ"€CÙØ�˜Y˜KÐ(Ñ(ˆØ!Ð-?Ñ@€GÙ�c 7Ô+€Gð(Ù�W gÔ.ð 	2°(Ø—_‘_ˆFØ—=‘=“?×)Ñ)¨&Ó1ˆD÷	2ð �‚}Ø4ˆÜ˜‹oÐðQÜ�z‰z˜$Óˆð .ò "ˆØ�x‰x˜�}ØDˆCØ˜˜d˜Ñ#ˆCÜ˜S“/Ð!ð	"ð €K÷+	2ð 	2ûô ò (Ø7¸!Ñ;ˆÜ˜‹o 4Ð'ûð(ûô ò QÜÐEÓFÈDÐPðQús:   ²
C ¼,CÁ(C ÂC4 ÃCÃC Ã	C1ÃC,Ã,C1Ã4D
)Né   )r   Ústrr   zOptional[str]r   ÚfloatÚreturnzdict[str, Any])Ú__doc__Ú
__future__r   r   Útypingr   r   r&   © ó    r%   ú<module>r0      s?   ðñ Ý "ã ß  ð FGð#Øð#Ø+ð#Ø=Bð#àô#r/   