+
    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# )zInternal 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'ID$'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3KF	#$45",-F"G()9:.}=#01K#L 		$"5"56$$N+/0
 (d,m,
*=9#33,(8$($A$A!+!@!@&&//1H1HI)"..%44 4 
 ,L>:
!8#5#5#Q#Q
 	"'/	 	 	
 ''99  12G H : 


 #**88B88" #$
" !44GG
 3@m..T*5
' *]f]dll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#( %))*@AI$'5i'@$**=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5mD((F33=	
 	..}mL**=9	++L9[,AA 	26I./ 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0G; ""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??LL=>!!55n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O7N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2I
 59#M200K3JK..5FG	
 }=M-8OM*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B2B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Q6@ 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4H089I0JO,--5m-DOM*	 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K3J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-3H4H*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/A1EF(HH]-H-H( 
 
T-A-Aou5.
 /!!6#4#4f6I6I1"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.ND1(N3 16	,- ))==nM#+2i(,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6x@>F:;))==-H
 &h/H7?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     &hZ (2 2 		H8}H $G3GG!""9'(.B-C1F  %%8838GG I& 	H!" # N+96  %%883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%    c4  J99;&((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FBN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    0N !;;==0N!N ==2E::$ ,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4imm %7 ++Y]]6. $$n""  %0$E$E% 002Jg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"  ($%(>>NN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     !!*-=&&:::FEeS!!KKME%%%@@%"+ A  
 	225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(2M%#0#4#4Z#@ #+'+'9'9'M'M($ .44'?'E'E'G$ %89 %%8823K2LGT^S_ `..S-TTU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=      
(zz| 4DLL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8E#' &&:::FE=(,M%%%%%%88!l #  $U}JugQ@ 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3E%%%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$   