+
    šÜic˜  ã                   ó  € R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	 ^ RI
Ht ^ RIHt ^ RIHt ^ RIHt ^ RIHtHt ^ RIHtHtHt ]P2                  ! ]4      tR	R
.t. ROt^2tRtRt Rt! ! R R4      t" ! R R4      t# ! R R]$]#4      t%R# )z²Internal module to help with normalizing botocore client args.

This module (and all function/classes within this module) should be
considered internal, and *not* a public API.

N)ÚConfig)ÚEndpointCreator)ÚEndpointResolverBuiltins)ÚEndpointRulesetResolver)ÚRequestSigner)ÚUserAgentStringÚregister_feature_id)Ú$PRIORITY_ORDERED_SUPPORTED_PROTOCOLSÚensure_booleanÚis_s3_accelerate_urlÚlegacyÚregionalc                   ó  a € ] tR t^Ut o R'R ltR(R ltR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR'R ltR tR tR tR tR tR tR tR tR tR t R t!R  t"R! t#R" t$R# t%R$ t&R% t'R&t(V t)R# ))ÚClientArgsCreatorNc                óŽ   € Wn         W0n        W@n        WPn        W`n        Vf   \
        P                  ! 4       V n        R # Wpn        R # ©N)Ú_event_emitterÚ_response_parser_factoryÚ_loaderÚ_exceptions_factoryÚ_config_storer   Úfrom_environmentÚ_session_ua_creator)ÚselfÚevent_emitterÚ
user_agentÚresponse_parser_factoryÚloaderÚexceptions_factoryÚconfig_storeÚuser_agent_creators   &&&&&&&&Ú//usr/lib/python3/dist-packages/botocore/args.pyÚ__init__ÚClientArgsCreator.__init__V   s>   € ð ,ÔØ(?Ô%ØŒØ#5Ô Ø)ÔØÒ%Ü'6×'GÒ'GÓ'IˆDÖ$à'9Ö$ó    c                óÈ  € V P                  VVV	VVVV4      pVR ,          pVR,          pVR,          pVR,          pVR,          pVR,          pVR,          P                  RR4      pVR	,          pVR
,          pVR,          pVR,          pVR,          p\        P                  ! V P                  4      p\	        VP
                  VVR,          VR,          VVV
4      pVVR&   \        R"/ VB p\        V4      pVP                  VVVR,          VV P                  VP                  VP                  VP                  VP                  3VVP                  VP                  R7      pRV 2pR\         P"                  P$                  /p VP'                  VVVV R7       \         P"                  P)                  VVV R,          R7      p!\         P*                  P-                  V4      p"V P/                  VVVVVVVVVV	VVV4      p#V P0                  P3                  V4      p$V'       d   VP4                  MRp%V%Vn        RV!RVRV"RVRVRVRV P8                  RVRVRV P:                  R V#R!V$/# )#Úservice_nameÚparameter_validationÚendpoint_configÚprotocolÚconfig_kwargsÚ	s3_configÚmetadataÚ	partitionNÚsocket_optionsÚconfigured_endpoint_urlÚsigning_regionÚregion_nameÚaccount_id_endpoint_modeÚsigning_nameÚsignature_versionÚs3Úendpoint_url)
r1   r6   Úverifyr   Úmax_pool_connectionsÚproxiesÚtimeoutr.   Úclient_certÚproxies_configzcreating-serializer.Útimestamp_precision)Úprotocol_nameÚservice_modelÚserializer_kwargs)r=   Ú
serializerÚendpointÚresponse_parserr   Úrequest_signerr?   r   Úclient_configr   Úendpoint_ruleset_resolverr    © )Úcompute_client_argsÚgetÚcopyr   r   Ú
service_idr   r   Úcreate_endpointr   r8   r9   Úconnect_timeoutÚread_timeoutr;   r<   ÚbotocoreÚ	serializeÚTIMESTAMP_PRECISION_DEFAULTÚemitÚcreate_serializerÚparsersÚcreate_parserÚ_build_endpoint_resolverr   Úwith_client_configr   Ú_supplied_user_agentr   r   )&r   r?   r1   Ú	is_securer6   r7   ÚcredentialsÚscoped_configrE   Úendpoint_bridgeÚ
auth_tokenÚendpoints_ruleset_dataÚpartition_dataÚ
final_argsr&   r'   r(   r)   r*   r+   r-   r.   r/   r0   Úendpoint_region_namer2   r   ÚsignerÚ
new_configÚendpoint_creatorrB   Ú
event_namer@   rA   rC   Úruleset_resolverÚclient_ua_creatorÚsupplied_uas&   &&&&&&&&&&&&&                         r!   Úget_client_argsÚ!ClientArgsCreator.get_client_argsj   sÚ  € ð ×-Ñ-ØØØØØØØó
ˆ
ð " .Õ1ˆØ)Ð*@ÕAÐØ$Ð%6Õ7ˆØ˜jÕ)ˆØ" ?Õ3ˆØ˜{Õ+ˆ	Ø# JÕ/×3Ñ3°KÀÓFˆ	Ø#Ð$4Õ5ˆØ",Ð-FÕ"GÐØ(Ð)9Õ:ˆØ.¨}Õ=ÐØ#0Ð1KÕ#LÐ äŸ	š	 $×"5Ñ"5Ó6ˆÜØ×$Ñ$ØØ˜NÕ+ØÐ/Õ0ØØØó
ˆð (ˆ�dÑÜÑ,˜mÑ,ˆ
Ü*¨=Ó9Ðà#×3Ñ3ØØ,Ø(¨Õ8ØØ$(×$AÑ$AØ!+×!@Ñ!@Ø×&Ñ&Ø×/Ñ/°×1HÑ1HÐIØ)Ø"×.Ñ.Ø%×4Ñ4ð 4ó 
ˆð ,¨L¨>Ð:ˆ
à!¤8×#5Ñ#5×#QÑ#Qð
Ðð 	×ÑØØ"Ø'Ø/ð	 	ô 	
ô ×'Ñ'×9Ñ9ØØ Ø 1Ð2GÕ Hð :ó 
ˆ
ô
 #×*Ñ*×8Ñ8¸ÓBˆà×8Ñ8Ø"ØØØØ ØØ#ØØØØØØ$ó
Ðð" !×4Ñ4×GÑGØó
Ð÷ 3@�m×.Ò.ÀTˆØ*5ˆ
Ô'ð ˜*Ø˜Ø˜Ø˜]Ø˜fØ˜]Ø�d—l‘lØ˜ZØ˜Ø  $×":Ñ":Ø'Ð)9Ø Ð"3ð
ð 	
r$   c                óT  € VP                   pVP                  p	R p
V'       d   VP                  '       g   Rp
M(V'       d!   VP                  R4      pVe   \	        V4      p
V P                  V4      pV P                  VVR7      pVe   \        R4       V P                  VVVVVVR7      pVR,          P                  R. 4      pV P                  P                  V4      P                  4       p\        VR,          VR	,          VR
7      pRV9   d   VP                  R R7       RV9   d   VP                  R R7       Veã   VP                  VP                  VP                  VP                   VP"                  VP$                  VP&                  VP(                  VP*                  VP,                  VP.                  VP0                  VP2                  VP4                  VP6                  VP8                  VP:                  VP<                  VP>                  VP@                  R7       V PC                  V4       V PE                  V4       V PG                  V4       V PI                  V4       V PK                  V4       V PM                  V4       V PO                  V4       V PQ                  VV4       V PS                  VV4       V PU                  VV4       V P                  V4      pV PW                  V4      pV'       d   RV9   d   Vf   / pR VR&   RVRV
RVRVRV	RVRVRV PY                  Wr4      /# )TFr'   )rE   r6   ÚENDPOINT_OVERRIDE)r&   r1   r6   rY   r\   r+   r,   Útagsr1   r4   )r1   r4   r   Ú	dualstack)Úuse_dualstack_endpointÚfips)Úuse_fips_endpoint)rM   rN   r8   r9   r<   Úretriesr;   Úinject_host_prefixÚtcp_keepaliveÚuser_agent_extraÚuser_agent_appidÚ"request_min_compression_size_bytesÚdisable_request_compressionÚclient_context_paramsÚsigv4a_signing_region_setÚrequest_checksum_calculationÚresponse_checksum_validationr2   Úauth_scheme_preferencero   r&   r/   r(   r)   r*   r+   r.   )-Úendpoint_prefixÚresolved_protocolr'   rI   r
   Úcompute_s3_configÚ _compute_configured_endpoint_urlr   Ú_compute_endpoint_configr   rW   Ú	to_stringÚdictÚupdaterM   rN   r8   r9   r<   rr   r;   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r2   r}   Ú_compute_retry_configÚ_compute_connect_timeoutÚ _compute_user_agent_appid_configÚ#_compute_request_compression_configÚ)_compute_sigv4a_signing_region_set_configÚ_compute_checksum_configÚ(_compute_account_id_endpoint_mode_configÚ_compute_inject_host_prefixÚ&_compute_auth_scheme_preference_configÚ!_compute_signature_version_configÚ_is_s3_serviceÚ_compute_socket_options)r   r?   rE   r\   r1   r6   rY   r[   r&   r)   r'   Ú	raw_valuer+   r/   r(   Úendpoint_variant_tagsÚpreliminary_ua_stringr*   Úis_s3_services   &&&&&&&&           r!   rH   Ú%ClientArgsCreator.compute_client_argsæ   s;  € ð %×4Ñ4ˆØ ×2Ñ2ˆØ#Ðß ×!C×!CÐ!CØ#(Ñ ßØ%×)Ñ)Ð*@ÓAˆIØÒ$Ü'5°iÓ'@Ð$à×*Ñ*¨=Ó9ˆ	à"&×"GÑ"GØ'Ø%ð #Hó #
Ðð #Ò.ÜÐ 3Ô4à×7Ñ7Ø%Ø#Ø0ØØ+Øð 8ó 
ˆð !0°
Õ ;× ?Ñ ?ÀÈÓ KÐð !%× 8Ñ 8× KÑ KØó!
ç
‰)‹+ð 	ô Ø'¨Õ6Ø-Ð.AÕBØ,ô
ˆð
 Ð/Ô/Ø× Ñ ¸Ð Ô=ØÐ*Ô*Ø× Ñ °4Ð Ô8ØÒ$Ø× Ñ Ø -× =Ñ =Ø*×7Ñ7Ø%2×%GÑ%GØ%×-Ñ-Ø,×;Ñ;Ø%×-Ñ-Ø)×5Ñ5Ø#0×#CÑ#CØ+×9Ñ9Ø!.×!?Ñ!?Ø!.×!?Ñ!?à!×DÑDð "×=Ñ=à&3×&IÑ&Ià!×;Ñ;ð "×>Ñ>ð "×>Ñ>à)6×)OÑ)OØ'4×'KÑ'Kð; !ô ð> 	×"Ñ" =Ô1Ø×%Ñ% mÔ4Ø×-Ñ-¨mÔ<Ø×0Ñ0°Ô?Ø×6Ñ6°}ÔEØ×%Ñ% mÔ4Ø×5Ñ5°mÔDØ×(Ñ(¨¸ÔFØ×3Ñ3Ø˜=ô	
ð 	×.Ñ.¨}¸mÔLØ×*Ñ*¨=Ó9ˆ	à×+Ñ+¨LÓ9ˆç˜[Ð,AÔAØÒ Ø�	Ø26ˆIÐ.Ñ/ð ˜LØ"Ð$8Ø%Ð'>Ø˜Ø˜Ø˜]Ø˜Ø˜d×:Ñ:Øóð
ð 	
r$   c                ó”   € Ve   VP                   R8X  d3   V P                  P                  R4      pVe   V'       * VR&   R # RVR&   R # R # )NÚUNSETÚdisable_host_prefix_injectionrs   T)Ú_inject_host_prefixr   Úget_config_variable)r   rE   r*   Ú(configured_disable_host_prefix_injections   &&& r!   r�   Ú-ClientArgsCreator._compute_inject_host_prefixd  sf   € ð Ò!Ø×0Ñ0°GÔ;ð ×"Ñ"×6Ñ6Ø3óð 5ð
 8ÒCð AÔ@ð Ø(óð 7;�Ð2Ó3ñ <r$   c                ó    € Ve   V# V P                  V4      '       d   \        P                  R4       V# V P                  P	                  R4      # )Nz"Ignoring configured endpoint URLs.r6   )Ú _ignore_configured_endpoint_urlsÚloggerÚdebugr   r›   )r   rE   r6   s   &&&r!   r�   Ú2ClientArgsCreator._compute_configured_endpoint_urlw  sI   € ØÒ#ØÐà×0Ñ0°×?Ò?Ü�L‰LÐ=Ô>ØÐà×!Ñ!×5Ñ5°nÓEÐEr$   c                ó|   € V'       d   VP                   e   VP                   # V P                  P                  R4      # )NÚignore_configured_endpoint_urls)r¤   r   r›   )r   rE   s   &&r!   rŸ   Ú2ClientArgsCreator._ignore_configured_endpoint_urls�  s9   € çØ×=Ñ=ÒIà ×@Ñ@Ð@à×!Ñ!×5Ñ5Ø-ó
ð 	
r$   c                óÚ   € V P                   P                  R 4      pVeL   VP                  e>   Vf   VP                  pV# VP                  4       pVP	                  VP                  4       V# )r5   )r   r›   r5   rJ   r…   )r   rE   Ús3_configurations   && r!   r€   Ú#ClientArgsCreator.compute_s3_configŒ  sr   € Ø×-Ñ-×AÑAÀ$ÓGÐð Ò$Ø×ÑÒ+Ø#Ò+Ø'4×'7Ñ'7Ð$ð  Ðð (8×'<Ñ'<Ó'>Ð$Ø$×+Ñ+¨M×,<Ñ,<Ô=àÐr$   c                ó   € VR9   # )a  Whether the service is S3 or S3 Control.

Note that throughout this class, service_name refers to the endpoint
prefix, not the folder name of the service in botocore/data. For
S3 Control, the folder name is 's3control' but the endpoint prefix is
's3-control'.
)r5   z
s3-controlrG   )r   r&   s   &&r!   r�   Ú ClientArgsCreator._is_s3_serviceŸ  s   € ð Ð3Ñ3Ð3r$   c           
     ó¦   € R VRVRVRVRV/pVR8X  d   V P                   ! RRV/VB # VR8X  d   V P                  ! R/ VB # V P                  ! R/ VB # )	r&   r1   r6   rY   r\   r5   r+   ÚstsrG   )Ú_compute_s3_endpoint_configÚ_compute_sts_endpoint_configÚ_resolve_endpoint)r   r&   r1   r6   rY   r\   r+   Úresolve_endpoint_kwargss   &&&&&&& r!   r‚   Ú*ClientArgsCreator._compute_endpoint_config©  s†   € ð ˜LØ˜;Ø˜LØ˜Ø˜ð#
Ðð ˜4ÔØ×3Ò3ñ Ø#ðØ'>ñð ð ˜5Ô Ø×4Ò4ÑOÐ7NÑOÐOØ×%Ò%Ñ@Ð(?Ñ@Ð@r$   c                óÜ   € V P                  VR ,          V4      pV'       d   RVR &   V P                  ! R/ VB pV P                  WBR,          4       V'       d   VR ,          R8X  d   RVR &   V# )r1   Nr\   ú
aws-globalú	us-east-1rG   )Ú_should_force_s3_globalr¯   Ú!_set_region_if_custom_s3_endpoint)r   r+   r°   Úforce_s3_globalr(   s   &&,  r!   r­   Ú-ClientArgsCreator._compute_s3_endpoint_configÁ  sz   € ð ×6Ñ6Ø# MÕ2°Ió
ˆ÷ Ø59Ð# MÑ2Ø×0Ò0ÑKÐ3JÑKˆØ×.Ñ.ØÐ5FÕGô	
÷ ˜¨}Õ=ÀÔMØ-8ˆO˜MÑ*ØÐr$   c                ó€   € R pV'       d"   RV9   d   VR,          pV P                  V4       VR9   pVR 8H  ;'       d    T# )r   Úus_east_1_regional_endpoint)r´   N)Ú_validate_s3_regional_config)r   r1   r+   Ús3_regional_configÚis_global_regions   &&&  r!   rµ   Ú)ClientArgsCreator._should_force_s3_globalÖ  sN   € Ø%ÐßÐ6¸)ÔCØ!*Ð+HÕ!IÐØ×-Ñ-Ð.@ÔAà&Ð*=Ñ=ÐØ! XÑ-×BÐBÐ2BÐBr$   c                ó\   € V\         9  d!   \        P                  P                  VR 7      hR# ))Ú%s3_us_east_1_regional_endpoint_configN)ÚVALID_REGIONAL_ENDPOINTS_CONFIGrO   Ú
exceptionsÚ+InvalidS3UsEast1RegionalEndpointConfigError)r   Ú
config_vals   &&r!   r»   Ú.ClientArgsCreator._validate_s3_regional_configß  s2   € ØÔ<Ô<Ü×%Ñ%×QÑQØ6@ð Ró ð ñ =r$   c                óŒ   € VR ,          f9   VR,          f,   VP                  R4      pVR ,          VR &   VR,          VR&   R# R# R# )r0   Nr1   r5   ©Úresolve)r   r(   r\   rB   s   &&& r!   r¶   Ú3ClientArgsCreator._set_region_if_custom_s3_endpointå  sU   € ð Ð,Õ-Ò5Ø Õ.Ò6à&×.Ñ.¨tÓ4ˆHØ08Ð9IÕ0JˆOÐ,Ñ-Ø-5°mÕ-DˆO˜MÓ*ñ	 7ñ 6r$   c                ó¨   € V P                   ! R/ VB pV P                  VR ,          VR,          V4      '       d   V P                  W!R,          4       V# )r1   r6   rY   rG   )r¯   Ú_should_set_global_sts_endpointÚ_set_global_sts_endpoint)r   r°   r(   s   &, r!   r®   Ú.ClientArgsCreator._compute_sts_endpoint_configó  s\   € Ø×0Ò0ÑKÐ3JÑKˆØ×/Ñ/Ø# MÕ2Ø# NÕ3Ø÷
ò 
ð
 ×)Ñ)Ø¸Õ!Eôð Ðr$   c                óÄ   € T;'       d"    VP                  R / 4      P                  R4      pV'       g	   V'       d   R# V P                  4       R8H  ;'       d
    V\        9   # )r,   rm   Fr   )rI   Ú"_get_sts_regional_endpoints_configÚLEGACY_GLOBAL_STS_REGIONS)r   r1   r6   r(   Úhas_variant_tagss   &&&& r!   rË   Ú1ClientArgsCreator._should_set_global_sts_endpointÿ  se   € ð +÷ ð ¨×/BÑ/BØ˜ó0
ç
‰#ˆf‹+ð 	÷ ×+Ùà×3Ñ3Ó5¸ÑA÷ 9ð 9ØÔ8Ñ8ð	
r$   c                ó¦   € V P                   P                  R 4      pV'       g   RpV\        9  d!   \        P                  P                  VR7      hV# )Ústs_regional_endpointsr   )Ústs_regional_endpoints_config)r   r›   rÁ   rO   rÂ   Ú&InvalidSTSRegionalEndpointsConfigError)r   rÕ   s   & r!   rÏ   Ú4ClientArgsCreator._get_sts_regional_endpoints_config  s^   € Ø(,×(:Ñ(:×(NÑ(NØ$ó)
Ð%÷ -Ø,6Ð)à)Ü2ô3ô ×%Ñ%×LÑLØ.Kð Mó ð ð -Ð,r$   c                ó8   € V'       d   R MRpV R2VR&   RVR&   R# )ÚhttpsÚhttpz://sts.amazonaws.comr6   r´   r0   NrG   )r   r(   rY   Úschemes   &&& r!   rÌ   Ú*ClientArgsCreator._set_global_sts_endpoint  s(   € ß%‘¨6ˆØ-3¨HÐ4HÐ*Iˆ˜Ñ'Ø,7ˆÐ(Ó)r$   c                ó&   € VP                  WW44      # r   rÇ   )r   r&   r1   r6   rY   r\   s   &&&&&&r!   r¯   Ú#ClientArgsCreator._resolve_endpoint   s   € ð ×&Ñ&Ø |ó
ð 	
r$   c                óL  € \         P                  \         P                  ^3.pT;'       d    VP                  pT;'       d"    V P	                  VP                  RR4      4      pV'       g	   V'       d1   VP                  \         P                  \         P                  ^34       V# )é   rt   F)	ÚsocketÚIPPROTO_TCPÚTCP_NODELAYrt   Ú_ensure_booleanrI   ÚappendÚ
SOL_SOCKETÚSO_KEEPALIVE)r   r[   rE   r.   Úclient_keepaliveÚscoped_keepalives   &&&   r!   r‘   Ú)ClientArgsCreator._compute_socket_options,  s�   € ô "×-Ñ-¬v×/AÑ/AÀ1ÐEÐFˆØ(×HÐH¨]×-HÑ-HÐØ(÷ 
ð 
¨T×-AÑ-AØ×Ñ˜o¨uÓ5ó.
Ð÷ ×/Ø×!Ñ!¤6×#4Ñ#4´f×6IÑ6IÈ1Ð"MÔNØÐr$   c                óJ   € V P                  V4       V P                  V4       R # r   )Ú_compute_retry_max_attemptsÚ_compute_retry_mode©r   r*   s   &&r!   r†   Ú'ClientArgsCreator._compute_retry_config9  s   € Ø×(Ñ(¨Ô7Ø× Ñ  Ö/r$   c                ó  € VP                  R 4      pVeB   RV9   d   VP                  RR4       R# RV9   d    VP                  R4      pV^,           VR&   R# V P                  P                  R4      pVe   Vf   / pW!R &   WBR&   R# R# )rr   NÚtotal_max_attemptsÚmax_attempts)rI   Úpopr   r›   )r   r*   rr   Úvaluerò   s   &&   r!   rì   Ú-ClientArgsCreator._compute_retry_max_attempts=  s›   € ð  ×#Ñ# IÓ.ˆØÒØ# wÔ.Ø—‘˜N¨DÔ1ÙØ Ô(ØŸ™ NÓ3�ð 16¸µ	�Ð,Ñ-Ùð ×)Ñ)×=Ñ=¸nÓMˆØÒ#ØŠØ�Ø+2˜iÑ(Ø,8Ð(Ó)ñ	 $r$   c                óš   € VP                  R 4      pVf   / pW!R &   M	RV9   d   R# V P                  P                  R4      pVf   RpW2R&   R# )rr   NÚmodeÚ
retry_moder   ©rI   r   r›   )r   r*   rr   rø   s   &&  r!   rí   Ú%ClientArgsCreator._compute_retry_mode]  sY   € Ø×#Ñ# IÓ.ˆØŠ?ØˆGØ'.˜)Ò$Ø�wÔñ Ø×'Ñ'×;Ñ;¸LÓIˆ
ØÒØ!ˆJØ$�‹r$   c                ó†   € VP                  R 4      pVe   R# V P                  P                  R 4      pV'       d   W!R &   R# R# )rM   Nrù   )r   r*   rM   s   && r!   r‡   Ú*ClientArgsCreator._compute_connect_timeoutk  sJ   € ð (×+Ñ+Ð,=Ó>ˆØÒ&ÙØ×,Ñ,×@Ñ@Øó
ˆ÷ Ø/>Ð+Ó,ñ r$   c                ó  € VP                  R 4      pVP                  R4      pVf   V P                  P                  R 4      pV P                  V4      pW!R &   Vf   V P                  P                  R4      pM\	        V4      pW1R&   R# )rw   rx   N)rI   r   r›   Ú_validate_min_compression_sizer
   )r   r*   Úmin_sizeÚdisableds   &&  r!   r‰   Ú5ClientArgsCreator._compute_request_compression_configx  s’   € Ø ×$Ñ$Ð%IÓJˆØ ×$Ñ$Ð%BÓCˆØÒØ×)Ñ)×=Ñ=Ø4óˆHð ×6Ñ6°xÓ@ˆØ>FÐ:Ñ;àÒØ×)Ñ)×=Ñ=Ø-ó‰Hô
 & hÓ/ˆHØ7?Ð3Ó4r$   c                ó4  € ^pRpRV R2p \        V4      pY!u;8:  d   T8:  g.   M T RT RT R	2p\        P
                  P                  TR7      hT#   \        \        3 d3    T R\        T4       R2p\        P
                  P                  TR7      hi ; i)
rà   i   zInvalid value "z)" for request_min_compression_size_bytes.z$ Value must be an integer. Received z	 instead.©Ú	error_msgz Value must be between z and Ú.)ÚintÚ
ValueErrorÚ	TypeErrorÚtyperO   rÂ   ÚInvalidConfigError)r   rÿ   Úmin_allowed_min_sizeÚmax_allowed_min_sizeÚerror_msg_baseÚmsgs   &&    r!   rþ   Ú0ClientArgsCreator._validate_min_compression_sizeŽ  sÛ   € Ø ÐØ&Ðà˜h˜Zð (2ð 2ð 	ð	HÜ˜8“}ˆHð $ÖGÐ3GÖGà!Ð"Ð"9Ø'Ð(¨Ð.BÐ-CÀ1ðFð ô ×%Ñ%×8Ñ8À3Ð8ÓGÐGàˆøô œIÐ&ô 	Hà!Ð"ð #Ü  ›NÐ+¨9ð6ð ô ×%Ñ%×8Ñ8À3Ð8ÓGÐGð	Hús   ŒA ÁABc                óX   € \        V\        4      '       d   V# VP                  4       R 8H  # )Útrue)Ú
isinstanceÚboolÚlower)r   Úvals   &&r!   rä   Ú!ClientArgsCreator._ensure_boolean¦  s%   € Ü�cœ4× Ò ØˆJà—9‘9“; &Ñ(Ð(r$   c                ó–  € Vf   R # V P                  V4      ;'       g    / pVP                  pVR9   g   Vf   TpMTpV P                  VVVV
VVP                  VVR7      pVe   VP                  ;'       g    / pM/ pV P                  V4      '       d   VP                  V4       Ve   VP                  MR p\        VVVVVVV	VR7      # )N)r1   r&   r+   r\   Úclient_endpoint_urlÚlegacy_endpoint_urlrZ   r2   )Úendpoint_ruleset_datar_   r?   ÚbuiltinsÚclient_contextr   Úuse_sslÚrequested_auth_scheme)r5   r¬   )	r€   r~   Ú*compute_endpoint_resolver_builtin_defaultsÚhostry   r�   r…   r4   r   )r   r^   r_   rE   r?   ra   r1   r6   rB   rY   r\   r   rZ   r2   Ús3_config_rawÚservice_name_rawÚeprv2_region_nameÚresolver_builtinsr  Úsig_versions   &&&&&&&&&&&&&&      r!   rV   Ú*ClientArgsCreator._build_endpoint_resolver¬  s  € ð  "Ò)Ùð ×.Ñ.¨}Ó=×CÐCÀˆØ(×8Ñ8Ðð ˜}Ô,°Ò0CØ 4Ñà +ÐØ ×KÑKØ)Ø)Ø#Ø+Ø ,Ø (§¡Ø#Ø%=ð Ló 	
Ðð Ò$Ø*×@Ñ@×FÐFÀB‰NàˆNØ×ÑÐ/×0Ò0Ø×!Ñ! -Ô0ð Ò(ð ×+Ò+àð 	ô
 'Ø"8Ø)Ø'Ø&Ø)Ø'ØØ"-ô	
ð 		
r$   c	                ó,  € V'       d   Tp	MVP                  4       '       g   Tp	MR p	VP                  RR4      '       d   Rp
M>Ve'   \        V4      '       g   VP                  R4      R8g  p
MVP                  R4      R8H  p
\        P                  T\        P
                  V	R J ;'       d    VP                  R4      ;'       g    R\        P                  V	R J ;'       d    VP                  V4      ;'       g    R\        P                  V P                  VR R R7      \        P                  V P                  W4      \        P                  VP                  RR4      \        P                  T
\        P                  VP                  RR	4      \        P                   VP                  RR4      \        P"                  VP                  R
R4      \        P$                  T	\        P&                  V'       d   VP)                  R4      MR \        P*                  V/# )NÚuse_accelerate_endpointFÚaddressing_styleÚvirtualÚpathrq   )r1   r6   r(   Úuse_arn_regionTÚ$s3_disable_multiregion_access_pointsÚ
account_id)Úresolver_uses_builtin_datarI   r   ÚEPRBuiltinsÚ
AWS_REGIONÚAWS_USE_FIPSÚ$_resolve_endpoint_variant_config_varÚAWS_USE_DUALSTACKÚ_resolve_use_dualstack_endpointÚAWS_STS_USE_GLOBAL_ENDPOINTrË   ÚAWS_S3_USE_GLOBAL_ENDPOINTrµ   ÚAWS_S3_ACCELERATEÚAWS_S3_FORCE_PATH_STYLEÚAWS_S3_USE_ARN_REGIONÚAWS_S3CONTROL_USE_ARN_REGIONÚAWS_S3_DISABLE_MRAPÚSDK_ENDPOINTÚ
ACCOUNT_IDÚget_deferred_propertyÚACCOUNT_ID_ENDPOINT_MODE)r   r1   r&   r+   r\   r  r  rZ   r2   Úgiven_endpointÚforce_path_styles   &&&&&&&&&  r!   r  Ú<ClientArgsCreator.compute_endpoint_resolver_builtin_defaultsð  s  € ÷ Ø0‰Nð !×;Ñ;×=Ò=Ø0‰Nà!ˆNð �=‰=Ð2°E×:Ò:Ø$ÑØ Ò,Ô5IØ÷6
ò 6
ð  )Ÿ}™}Ð-?Ó@ÀIÑMÑà(Ÿ}™}Ð-?Ó@ÀFÑJÐô ×"Ñ" KÜ×$Ñ$à $Ð&÷ ð ð $×HÑHØ'ó÷ð ð ä×)Ñ)à $Ð&÷ ð ð $×CÑCØ ó÷ð ð ä×3Ñ3Ø×4Ñ4Ø +Ø!%Ø$(ð 5ó ô ×2Ñ2Ø×,Ñ,¨[ÓDä×)Ñ)¨9¯=©=Ø)¨5ó,ô ×/Ñ/Ð1AÜ×-Ñ-¨y¯}©}Ø  $ó0ô ×4Ñ4°i·m±mØ  %ó7ô ×+Ñ+¨Y¯]©]Ø6¸ó.ô ×$Ñ$ nÜ×"Ñ"÷ ð %0×$EÑ$EØô%ð Ü×0Ñ0Ð2Jðg4
ð 4	
r$   c                óÒ   € VP                  R 4      pVf   V P                  P                  R 4      pVe/   \        V4      \        8”  d   \
        P                  R\        4       W!R &   R# )rv   NzVThe configured value for user_agent_appid exceeds the maximum length of %d characters.)rI   r   r›   ÚlenÚUSERAGENT_APPID_MAXLENr    Úwarning)r   r*   rv   s   && r!   rˆ   Ú2ClientArgsCreator._compute_user_agent_appid_configL  sj   € Ø(×,Ñ,Ð-?Ó@ÐØÒ#Ø#×1Ñ1×EÑEØ"ó Ðð Ò(ÜÐ$Ó%Ô(>Ô>ä�N‰Nð3ä&ôð
 -=Ð(Ó)r$   c                ón   € VP                  R 4      pVf   V P                  P                  R 4      pW!R &   R# )rz   Nrù   )r   r*   rz   s   && r!   rŠ   Ú;ClientArgsCreator._compute_sigv4a_signing_region_set_config]  sD   € Ø$1×$5Ñ$5Ø'ó%
Ð!ð %Ò,Ø(,×(:Ñ(:×(NÑ(NØ+ó)Ð%ð 6OÐ1Ó2r$   c                óf   € V P                  VR \        R7       V P                  VR\        R7       R# )r{   )Ú
config_keyÚvalid_optionsr|   N)Ú_handle_checksum_configÚ)VALID_REQUEST_CHECKSUM_CALCULATION_CONFIGÚ)VALID_RESPONSE_CHECKSUM_VALIDATION_CONFIGrî   s   &&r!   r‹   Ú*ClientArgsCreator._compute_checksum_configg  s<   € Ø×$Ñ$ØØ5ÜCð 	%ô 	
ð
 	×$Ñ$ØØ5ÜCð 	%ö 	
r$   c                ó,  € VP                  V4      pVf   V P                  P                  V4      p\        V\        4      '       d   VP                  4       pWC9  d#   \        P                  P                  VVVR7      hV P                  WB4       WAV&   R # )N)rL  Úconfig_valuerM  )
rI   r   r›   r  Ústrr  rO   rÂ   ÚInvalidChecksumConfigErrorÚ%_register_checksum_config_feature_ids)r   r*   rL  rM  rô   s   &&&& r!   rN  Ú)ClientArgsCreator._handle_checksum_configs  s�   € ð ×!Ñ! *Ó-ˆØŠ=Ø×&Ñ&×:Ñ:¸:ÓFˆEä�eœS×!Ò!Ø—K‘K“MˆEàÔ%Ü×%Ñ%×@Ñ@Ø%Ø"Ø+ð Aó ð ð
 	×2Ñ2°5ÔEØ$)�jÓ!r$   c                ó–   € R pVR8X  d   RVP                  4        2pMVR8X  d   RVP                  4        2pVe   \        V4       R # R # )Nr{   ÚFLEXIBLE_CHECKSUMS_REQ_r|   ÚFLEXIBLE_CHECKSUMS_RES_)Úupperr   )r   rô   rL  Úchecksum_config_feature_ids   &&& r!   rV  Ú7ClientArgsCreator._register_checksum_config_feature_ids‰  s\   € Ø%)Ð"ØÐ7Ô7à)¨%¯+©+«-¨Ð9ñ 'ð Ð9Ô9à)¨%¯+©+«-¨Ð9ð 'ð &Ò1ÜÐ :Ö;ñ 2r$   c           	     ó†  € R pVP                  R4      pV\        P                  J d   RW&   R# VP                  V4      pVf   V P                  P	                  V4      p\        V\        4      '       d   VP                  4       pV\        9  d/   \        P                  P                  RV RV R\         R2R7      hWAV&   R# )	r2   r4   r   NzThe configured value 'z' for 'z ' is invalid. Valid values are: r  r  )rI   rO   ÚUNSIGNEDr   r›   r  rT  r  Ú%VALID_ACCOUNT_ID_ENDPOINT_MODE_CONFIGrÂ   r
  )r   r*   rL  r4   r2   s   &&   r!   rŒ   Ú:ClientArgsCreator._compute_account_id_endpoint_mode_config–  sá   € Ø/ˆ
ð *×-Ñ-Ð.AÓBÐØ¤× 1Ñ 1Ó1Ø(2ˆMÑ%Ùà#0×#4Ñ#4°ZÓ#@Ð Ø#Ò+Ø'+×'9Ñ'9×'MÑ'MØó(Ð$ô Ð.´×4Ò4Ø'?×'EÑ'EÓ'GÐ$ð %Ü8ô9ô ×%Ñ%×8Ñ8Ø2Ð3KÐ2LÈGÐT^ÐS_ð `.Ü.SÐ-TÐTUðWð 9ó ð ð
 %=�jÓ!r$   c                ó¶  € R pRpV'       d"   VP                   '       d   VP                   pRpMV P                  P                  V4      pVf   RW#&   R# \        V\        4      '       g3   \
        P                  P                  V R\        V4       RV R2R7      hRP                  R	 VP                  R4       4       4      pV'       d   \        V4      pWRV&   R# )
r}   FTNz, must be a comma-delimited string. Received z
 instead: r  r  Ú,c              3   ó–   "  € T F?  pVP                  4       '       g   K  VP                  R R4      P                  RR4      x € KA  	  R# 5i)Ú Ú Ú	N)ÚstripÚreplace)Ú.0Úitems   & r!   Ú	<genexpr>ÚKClientArgsCreator._compute_auth_scheme_preference_config.<locals>.<genexpr>Ì  s=   é € ð 
á(�Ø�z‰z�|ô 4ˆD�L‰L˜˜bÓ!×)Ñ)¨$°×3Ð3Û(ùs
   ‚A	Ÿ*A	)r}   r   r›   r  rT  rO   rÂ   r
  r	  ÚjoinÚsplitÚClientConfigString)r   rE   r*   rL  Úset_in_config_objectrô   s   &&&   r!   rŽ   Ú8ClientArgsCreator._compute_auth_scheme_preference_config´  sÝ   € ð .ˆ
Ø$Ðç˜]×A×AÐAØ!×8Ñ8ˆEØ#'Ñ à×&Ñ&×:Ñ:¸:ÓFˆEàŠ=Ø(,ˆMÑ%Ùä˜%¤×%Ò%Ü×%Ñ%×8Ñ8à!�lð # Ü $ U£˜}¨J°u°g¸Qð@ð 9ó ð ð —‘ñ 
àŸ™ CÔ(ó
ó 
ˆ÷  Ü& uÓ-ˆEà$)�jÓ!r$   c                ó¦   € V'       dI   VP                   '       d5   VP                   p\        V\        4      '       d   \        V4      VR &   R# R# R# R# )r4   N)r4   r  rT  rp  )r   rE   r*   rô   s   &&& r!   r�   Ú3ClientArgsCreator._compute_signature_version_config×  sD   € ß˜]×<×<Ð<Ø!×3Ñ3ˆEÜ˜%¤×%Ò%Ü5GÈÓ5N�Ð1Ó2ñ &ñ =‰=r$   )r   r   r   r   r   r   r   )NNN)*Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r"   ri   rH   r�   r�   rŸ   r€   r�   r‚   r­   rµ   r»   r¶   r®   rË   rÏ   rÌ   r¯   r‘   r†   rì   rí   r‡   r‰   rþ   rä   rV   r  rˆ   rŠ   r‹   rN  rV  rŒ   rŽ   r�   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r!   r   r   U   sÐ   ø‡ € ô:ô(z
òx|
ò|;ò&Fò	
ò ò&4òAò0ò*CòòEò
ò
ò-ò8ò


ôò0ò9ò@%ò?ò@ò,ò0)òB
òHZ
òx=ò"Oò

ò*ò,<ò=ò<!*÷FOð Or$   r   c                   ó   € ] tR tRtRtRtR# )ÚConfigObjectWrapperiÞ  z8Base class to mark values set via in-code Config object.rG   N)ru  rv  rw  rx  Ú__doc__ry  rG   r$   r!   r}  r}  Þ  s   † ÙBãr$   r}  c                   ó6   a a€ ] tR tRt oRV 3R lltRtVtV ;t# )rp  iä  c                ó"   <€ \         SV `  W4      # r   )ÚsuperÚ__new__)Úclsrô   Ú	__class__s   &&€r!   r‚  ÚClientConfigString.__new__å  s   ø€ Ü‰w‰˜sÓ*Ð*r$   rG   r   )ru  rv  rw  rx  r‚  ry  rz  Ú__classcell__)r„  r{  s   @@r!   rp  rp  ä  s   ù‡ € ÷+÷ +r$   rp  )zap-northeast-1z
ap-south-1zap-southeast-1zap-southeast-2r³   zca-central-1zeu-central-1z
eu-north-1z	eu-west-1z	eu-west-2z	eu-west-3z	sa-east-1r´   z	us-east-2z	us-west-1z	us-west-2)Úwhen_supportedÚwhen_required)Ú	preferredr   Úrequired)&r~  rJ   Úloggingrá   Úbotocore.exceptionsrO   Úbotocore.parsersÚbotocore.serializeÚbotocore.configr   Úbotocore.endpointr   Úbotocore.regionsr   r0  r   Úbotocore.signersr   Úbotocore.useragentr   r   Úbotocore.utilsr	   r
   r   Ú	getLoggerru  r    rÁ   rÐ   rF  rO  rP  r`  r   r}  rT  rp  rG   r$   r!   Ú<module>r–     s¬   ðñó Û Û ã Û Û Ý "Ý -Ý DÝ 4Ý *ß C÷ñ ð 
×	Ò	˜8Ó	$€ð Øð#Ð òÐ ð( Ð ð-Ð )ð-Ð )ð)Ð %÷FOñ FO÷R	ñ 	ô+˜Ð1ö +r$   