File: //usr/local/CyberPanel/lib64/python3.10/site-packages/botocore/__pycache__/utils.cpython-310.pyc
o
�hx � @ s^ d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlZd dlZd dl
Z
d dlZd dlZd dlmZ d dlmZ d dlmZ d dlmZmZ d dlZd dlmZ d dlmZ d dlZd dlZd dl Zd dl!m"Z" d d l!m#Z# d d
l!m$Z$ d dl!m%Z% d dl!m&Z& d d
l!m'Z' d dl!m(Z( d dl!m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 d dl7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZN e�OeP�ZQdZRdZSdZTdZUdZVe�Wd�ZXeGe<e:e;fZYdgZZi dd�dd�dd�dd�d d!�d"d#�d$d%�d&d'�d(d)�d*d+�d,d-�d.d/�d0d1�d2d3�d4d5�d6d7�d8d9�i d:d;�d<d=�d>d?�d@dA�dBdC�dDdE�dFdG�dHdI�dJdK�dLdM�dNdO�dPdQ�dRdS�dTdO�dUdV�dWdX�dYdZ��i d[d\�d]d^�d_d^�d`d5�dad7�dbd?�dcdd�dedf�dgdh�didj�dkdl�dmdn�dodp�dqdZ�drds�dtdu�dvdu��i dwdx�dydj�dzd{�d|d}�d~d�d�dd�d�d��d�d��d�d��d�dl�d�d��d�d��d�d��d�d��d�d��d�d��d�d���d�dId�d���Z[ejWd�ej\d��Z]d�d�� Z^d�d�� Z_d�d�� Z`d�d�� Zad�d�� Zbd�d�� Zcd�d�� Zdd�d�� Zed�d�� Zf�dTd�d��Zgd�d�� ZhG d�d�� d�ei�ZjG d�d�� d�ei�ZkG d�d�� d��ZlG d�d�� d�el�ZmG d�d�� d��ZnG d�d�� d�el�Zo�dUd�d��Zpd�d�� Zqerfd�dZsd�dĄ ZteVfd�dƄZueVfd�dȄZvd�dʄ Zwd�d̄ Zxd�d΄ Zyd�dЄ Zz�dVd�d҄Z{�dUd�dԄZ|d�dք Z}d�d Z~G d�dڄ dڃZG d�d܄ d܃Z�d�dބ Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z� �dVd�d�Z� �dVd�d�Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z�d�d�� Z��dTd�d��Z��dTd�d��Z�d�d�� Z�d�d�� Z�G d��d � �d �Z�G �d�d� �de��Z�G �d�d� �d�Z�G �d�d� �d�Z�G �d�d� �d�Z�G �d �d
� �d
e��Z�G �d�d� �d�Z�G �d
�d� �d�Z�G �d�d� �d�Z�G �d�d� �d�Z�G �d�d� �d�Z�G �d�d� �de��Z�G �d�d� �d�Z��d�d� Z��d�d� Z��d�d� Z��dW�d �d!�Z��d"�d#� Z��d$�d%� Z��d&�d'� Z��d(�d)� Z��d*�d+� Z��d,�d-� Z��d.�d/� Z��d0�d1� Z�G �d2�d3� �d3�Z�G �d4�d5� �d5�Z�G �d6�d7� �d7�Z��d8�d9� Z�G �d:�d;� �d;�Z��d<�d=� Z�d�d�iZ�i dd�d d!��d>�d?�d$d%�d&d'�d(d)�d*d+�d,d-�d.d/�d0d1�d2d3�d:d;�d@dA�d<d=�dBdC�dDdE�dFdG�i dHdI�dJdK�dRdS�dTdO�dUdV�d[d\�d]d^��d@�dA�d`d5�dad7�dbd?�dcdd��dB�dC��dD�dE��dF�dG�dedf��dH�dI��i dgdh�didj��dJ�dK�dkdl��dL�dM�dmdn�dodp�drds�dqdZ�dvdu�dwdx��dN�dO�d�d��d�d��d�d���dP�dQ�d�d���d�d�d��dRd�d��dS��Z�dS (X � N)�datetime)�
ip_address)�Path)�
getproxies�proxy_bypass)�tzutc)�LocationParseError)�HEX_PAT)�IPV4_PAT)�IPV6_ADDRZ_PAT)�IPV6_PAT)�LS32_PAT)�UNRESERVED_PAT)�ZONE_ID_PAT)�HAS_CRT�IPV4_RE�
IPV6_ADDRZ_RE�
MD5_AVAILABLE�UNSAFE_URL_CHARS�OrderedDict�get_md5�get_tzinfo_options�json�quote�urlparse�urlsplit�
urlunsplit�zip_longest)�ClientError�ConfigNotFound�ConnectionClosedError�ConnectTimeoutError�EndpointConnectionError�HTTPClientError�InvalidDNSNameError�!InvalidEndpointConfigurationError�InvalidExpressionError�InvalidHostLabelError�InvalidIMDSEndpointError�InvalidIMDSEndpointModeError�InvalidRegionError�MetadataRetrievalError�MissingDependencyException�ReadTimeoutError�SSOTokenLoadError�UnsupportedOutpostResourceError�*UnsupportedS3AccesspointConfigurationError�UnsupportedS3ArnError�UnsupportedS3ConfigurationError�UnsupportedS3ControlArnError�&UnsupportedS3ControlConfigurationError� zhttp://169.254.169.254/zhttp://[fd00:ec2::254]/)�ipv4�ipv6z-._~z[a-z0-9][a-z0-9\-]*[a-z0-9]� dualstackzapi.mediatailor�mediatailorzapi.pricing�pricingz
api.sagemaker� sagemaker�
apigatewayzapi-gatewayzapplication-autoscalingzapplication-auto-scaling�
appstream2� appstream�autoscalingzauto-scalingzautoscaling-planszauto-scaling-plans�cez
cost-explorer�
cloudhsmv2zcloudhsm-v2�cloudsearchdomainzcloudsearch-domainzcognito-idpzcognito-identity-provider�configzconfig-service�curzcost-and-usage-report-servicezdata.iotziot-data-planez
data.jobs.iotziot-jobs-data-planezdata.mediastorezmediastore-data�datapipelinez
data-pipeline�
devicefarmzdevice-farmzdevices.iot1clickziot-1click-devices-service�
directconnectzdirect-connect� discoveryzapplication-discovery-service�dmszdatabase-migration-service�dszdirectory-service�dynamodbstreamszdynamodb-streams�elasticbeanstalkzelastic-beanstalk�elasticfilesystem�efs�elasticloadbalancingzelastic-load-balancing�elasticmapreduce�emr�elastictranscoderzelastic-transcoder�elb�elbv2zelastic-load-balancing-v2�email�seszentitlement.marketplacezmarketplace-entitlement-service�eszelasticsearch-service�events�eventbridgezcloudwatch-eventsziot-dataz
iot-jobs-dataziot1click-devicesziot1click-projectsziot-1click-projects�kinesisanalyticszkinesis-analytics�kinesisvideoz
kinesis-videoz
lex-modelszlex-model-building-servicezlex-runtimezlex-runtime-service�logszcloudwatch-logs�machinelearningzmachine-learningzmarketplace-entitlement�marketplacecommerceanalyticszmarketplace-commerce-analyticszmetering.marketplacezmarketplace-metering�meteringmarketplace�mghz
migration-hubz
models.lex�
monitoring�
cloudwatchzmturk-requester�mturkzopsworks-cm�
opsworkscmzprojects.iot1click�resourcegroupstaggingapizresource-groups-tagging-api�route53zroute-53�route53domainszroute-53-domainszruntime.lexzruntime.sagemakerzsagemaker-runtime�sdb�simpledb�secretsmanagerzsecrets-manager�serverlessrepo�serverlessapplicationrepository�servicecatalogzservice-catalog�states�sfn�
stepfunctionszstorage-gateway)�storagegatewayzstreams.dynamodb�taggingz^X-Amz-Checksum-([a-z0-9]*)$)�flagsc C s( t | t�r| S t | t�r| �� dkS dS )z~Ensures a boolean value if a string or boolean is provided
For strings, the value for True/False is case insensitive
�trueF)�
isinstance�bool�str�lower��val� r{ �D/usr/local/CyberPanel/lib/python3.10/site-packages/botocore/utils.py�ensure_boolean� s
r} c C sP | � d�}|dur|�� }|tvr|td�}tdi |���|S | � d�r&dS dS )z�Resolving IMDS endpoint mode to either IPv6 or IPv4.
ec2_metadata_service_endpoint_mode takes precedence over imds_use_ipv6.
�"ec2_metadata_service_endpoint_modeN)�mode�valid_modes�
imds_use_ipv6r7 r6 r{ )�get_config_variablerx �METADATA_ENDPOINT_MODESr) )�session�
endpoint_mode�lendpoint_mode�error_msg_kwargsr{ r{ r| �resolve_imds_endpoint_mode� s ��
r� c C s2 t | d�o| j�dd�o| j�d�dko| jdkS )z�Determines if the provided shape is the special header type jsonvalue.
:type shape: botocore.shape
:param shape: Shape to be inspected for the jsonvalue trait.
:return: True if this type is a jsonvalue, False otherwise
:rtype: Bool
�
serialization� jsonvalueF�location�header�string)�hasattrr� �get� type_name)�shaper{ r{ r| �is_json_value_header� s
���r� c C s<