File: //usr/local/CyberCP/lib64/python3.10/site-packages/botocore/__pycache__/handlers.cpython-310.pyc
o
�h�� � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z ddl
Z
ddlZ
ddl
mZ ddl
mZmZmZmZmZmZmZmZmZmZmZ ddlmZmZmZ ddlmZ ddlm Z m!Z!m"Z" dd l#m$Z$ dd
l%m&Z&m'Z'm(Z( ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/ ddl
m0Z0 dd
l
m1Z1 ddl
m2Z2 ddlm3Z3 ddl)m4Z4 ddl)m5Z5 ddl)m6Z6 e�7e8�Z9e:� Z;e:� Z<e�=d�Z>dZ?dZ@e�=d�Ae?e@g��ZBdZCe�=d�ZDdd� ZEdd� ZFdd� ZGdd � ZHd!d"� ZId#d$� ZJd%d&� ZKd'd(� ZLd)d*� ZMd+d,� ZNd-d.� ZOd/d0� ZPd1d2� ZQd�d4d5�ZRd6d7� ZSd8d9� ZTd:d;� ZUG d<d=� d=�ZVd>d?� ZWd@dA� ZXdBdC� ZYdDdE� ZZdFdG� Z[dHdI� Z\dJdK� Z]dLdM� Z^dNdO� Z_dPdQ� Z`dRdS� ZadTdU� ZbdVdW� ZcdXdY� ZddZd[� Zed\d]� Zfd^d_� Zgd`da� Zhdbdc� Ziddde� Zjdfdg� Zkdhdi� Zldjdk� Zmdldm� Zndndo� Zodpdq� Zpdrds� Zqdtdu� Zrdvdw� Zsdxdy� Ztdzd{� ZuG d|d}� d}�ZvG d~d� d�ZwG d�d�� d��Zxd�d�� Zyd�d�� Zzd�d�� Z{d�d�� Z|d�d�� Z}d�d�� Z~d�d�� Zd�d�� Z�d�d�� Z�g d�eEf�d�ewd��f�d�ete<f�d�ete<f�d�e(f�d�e'f�d�emf�d�ezf�d�e{f�d�e_f�d�eKf�d�eNf�d�eaf�d�eLf�d�eOf�d�e}f�d�eof�d�eof�d�eof�d�eXf�d�eXf�d�edf�d�edf�d�edf�d�e~f�d�eWf�d�eWf�d�e�f�d�eFf�d�eUf�d�egf�d�ehf�d�e,f�d�e-f�d�eGf�d�e,f�d�eGf�d�eif�d�eif�d�e]f�d�e|f�d�elf�d�eHe;f�d�eHe;f�d�eHe;f�d�eTf�d�eTf�d�eTf�d�eTf�d�eTf�d�eTf�d�eJf�d�ePf�d�ePf�d�ePf�d�ePf�d�eQf�d�ePf�d�ePf�d�ePf�d�eQf�d�ePf�d�ePf�d�ebf�d�ebf�d�eef�d�eff�d�ef�d�e�f�d�epf�d�eqf�d�erf�d�enf�d�ed�dՃj�f�d�ed׃j�f�d�ed׃j�f�d�ej� f�d�ekf�d�ecd܃f�d�ecd܃f�d�ed߃j�f�d�ed�j�f�d�ed�j�f�d�ed�j�f�d�ecd�f�d�ed�d�g d��j�f�d�e&f�d�e^f�d�e^f�d�e^f�d�e^f�d�e^f�d�ed�j�f�d�ed�j�f�d�ed�j�f�d�ed�j�f�d�ed�j�f�d�e^f�d�e^f�d�ed�j�f�d�ed�j�f�d�e^f�d�e^f�d�ed�j�f�d�ed�j�f�d�eyf�Z�eue�� dS )�z_Builtin event handlers.
This module contains builtin handlers for events emitted by botocore.
� N)�BytesIO)�utils)�ETree�OrderedDict�
XMLParseError�ensure_bytes�get_md5�json�quote�unquote�unquote_str�urlsplit�
urlunsplit)�AppendParamDocumentation�AutoPopulatedParam�HideParamFromOperations)�VALID_HOST_LABEL_RE)�AliasConflictParameterError�ParamValidationError�UnsupportedTLSVersionWarning)�EndpointResolverBuiltins)�add_generate_db_auth_token�add_generate_presigned_post�add_generate_presigned_url)�
SAFE_CHARS� ArnParser� conditionally_calculate_checksum�conditionally_calculate_md5�percent_encode�switch_host_with_param)�retryhandler)� translate)�
MD5_AVAILABLE)�MissingServiceIdError)�hyphenize_service_id)�is_global_accesspoint)�SERVICE_NAME_ALIASESz^[a-zA-Z0-9.\-_]{1,255}$z]^arn:(aws).*:(s3|s3-object-lambda):[a-z\-0-9]*:[0-9]{12}:accesspoint[/:][a-zA-Z0-9\-.]{1,63}$zt^arn:(aws).*:s3-outposts:[a-z\-0-9]+:[0-9]{12}:outpost[/:][a-zA-Z0-9\-]{1,63}[/:]accesspoint[/:][a-zA-Z0-9\-]{1,63}$�|)�s3zs3-outpostszs3-object-lambda� s3expressz\?versionId=[^\s]+$c K s t �| | �S �N)r&