Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
_url.cpython-313.pyc541 linesDownload Raw Back to __pycache__
1�

2��j�����SSKrSSKrSSKrSSKJrJr SSKJr SSKJ	r	J3r4 SSKJr SSK
JrJrJrJrJrJrJrJr SSKJrJr SSKrSSKJrJrJr SS	KJr  S5SK!J"r"J#r#J$r$J%r%J&r&J'r'J(r( S6SK)J*r*J+r+ S7S
K,J-r-J.r.J/r/J0r0J1r1J2r2 S8SK3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?J@r@ SSKAJBrBJCrC SSKDJErE SSKFJGrG SrHSSSSSS.rJ\K"\5rL\K"S5rM\R�"S\R�5rP\"S5rQ\R�S:�aSSK
JSrS O\rS"SS\5rT\TR�rV"SS\5rW"S S!\SS"9rXS#\QS$\Q4S%jrY\9S&\ZS$S'4S(j5r[\10S&\ZS$S'4S)j5r\\11S*\ZS+\ZS,\ZS-S-\ZS-S.\ZS/\]S-S0\ZS1\ZS2\ZS$S'4S3j5r^S*\ZS4\ZS0\ZS5\ZS2\ZS$S'4S6jr_\12"\_5r`\Y"S7S'55raS8rbS9rc\13"\b5S:\ZS$\Z4S;j5qd\14"\b5S.\ZS$\Z4S<j5qe\15"\c5S.\ZS=\fS$\Z4S>j5qg\YSHS?j5rh\YS$\W4S@j5ri\Y\b\b\V\V\VSA.SB\]S-SC\]S-SD\]S-\T-SE\]S-\T-SF\]S-\T-S$S4SGjj5rjg!\Ia SrHGN�f=f)I�N)�Mapping�Sequence)�Enum)�16_CacheInfo�	lru_cache)�17ip_address)�
TYPE_CHECKING�Any�NoReturn�	TypedDict�TypeVar�Union�cast�overload)�SplitResult�
uses_relative)�	MultiDict�MultiDictProxy�istr)�under_cached_property�)�USES_AUTHORITY�SplitURLType�make_netloc�query_to_pairs�split_netloc�	split_url�unsplit_result)�normalize_path�normalize_path_segments)�Query�
QueryVariable�SimpleQuery�
get_str_query�get_str_query_from_iterable�$get_str_query_from_sequence_iterable)
�FRAGMENT_QUOTER�FRAGMENT_REQUOTER�PATH_QUOTER�
PATH_REQUOTER�PATH_SAFE_UNQUOTER�
PATH_UNQUOTER�QS_UNQUOTER�QUERY_QUOTER�QUERY_REQUOTER�QUOTER�REQUOTER�UNQUOTER�human_quote)�GetCoreSchemaHandler�GetJsonSchemaHandler)�JsonSchemaValue)�core_schemaTF�Pi��)�http�https�ws�wss�ftpa<18        # any character not in the unreserved or sub-delims sets, plus %19        # (validated with the additional check for pct-encoded sequences below)20        [^a-z0-9\-._~!$&'()*+,;=%]21    |22        # % only allowed if it is part of a pct-encoded23        # sequence of 2 hex digits.24        %(?![0-9a-f]{2})25    �_T)��)�Selfc��\rSrSrSrSrSrg)�
UndefinedType�dz4Singleton type for use with not set sentinel values.r�N)�__name__�26__module__�__qualname__�__firstlineno__�__doc__�27_singleton�__static_attributes__rF��OD:\code\apps\devtools\python\user_packages\Python313\site-packages\yarl/_url.pyrDrDds28��>��JrNrDc�L�\rSrSr%Sr\\S'\\S'\\S'\\S'\\S'Srg	)29�	CacheInfo�mzHost encoding cache.�idna_encode�idna_decoder�
host_validate�encode_hostrFN)rGrHrIrJrKr�__annotations__rMrFrNrOrQrQms#������������rNrQc���\rSrSr%\\S'S\S'\\S'\\S'\\S'\\S'\\S	'\S30-\S'\S31-\S'\S32-\S
'\S33-\S'\S34-\S'\S35-\S'\S36-\S'\S37-\S'\S38-\S'\S39-\S'\\S'\\S'\	\40\\4\S'S\S'\\S'\\S'\\S'\\S'\\S'\\S'\41\S 4\S!'\42\S 4\S"'S\S#'\\S$'\\S%'\\S&'\\S''\43\S 4\S('\44\S 4\S)'S*rg45)+�_InternalURLCache�w�_val�URL�_origin�absolute�hash�scheme�
raw_authority�	authorityN�raw_user�user�raw_password�password�raw_host�host�host_subcomponent�host_port_subcomponent�port�
explicit_port�raw_path�path�
_parsed_query�MultiDictProxy[str]�query�raw_query_string�query_string�path_qs�raw_path_qs�raw_fragment�fragment.�	raw_parts�parts�parent�raw_name�name�46raw_suffix�suffix�raw_suffixes�suffixesrF)rGrHrIrJrrW�bool�int�str�list�tuplerMrFrNrOrYrYws!��47��
�N��N�48
�I��K����N��D�j��49
��*����*���D�j���D�j��50
��*���T�z�!��$�J�&�51
��*����:���M�52
�I���c�3�h��(�(� � �����
�L������M��S�#�X�����c��?���M��M�53
�I��O��K���S��/�!��C��H�o�rNrY)�total�obj�returnc��SUlU$)N�yarl)rH)r�s rO�rewrite_moduler��s���C�N��JrN�url_strr\c��0n[U5up#pEnU(dSnO�SU;dSU;dSU;a[U5up�pzOS=n=p�UnUcU[;aSUS3n[U5eSn[	USS	9nSU;aUS54SOUUS'X�S
'U	cUcU55cUOUSU563nSUS'SUS'O<U(a[U5OUnU	(a[U	5OU	n
[
X�Xz5nX�S'X�S'U(a#[U5nU(aSU;a[U5nU(a[U5nU(a[U5nX!S'U(d	U(aSOUUS'XQS'XaS'[R[5nX.lX>lXNlX^lXnlXlU$)zParse unencoded URL.��:�@�[Nz9Invalid URL: host is required for absolute urls with the � schemeF��
validate_hostr�����rgrlrcre�.r`�/rmrrrv)rr�SCHEME_REQUIRES_HOST�57ValueError�_encode_hostr1rr*rr/r(�object�__new__r\�_scheme�_netloc�_path�_query�	_fragment�_cache)r��cacher`�netlocrnrqrwrh�usernamerfrk�msgrcre�selfs               rO�58encode_urlr��s��� "�E�,5�g�,>�)�F�D������&�=�C�6�M�S�F�]�-9�&�-A�*�H��d�)-�-�H�-�x��D��<��-�-�.�.4�X�W�>��!��o�%����D��6��*-��+�D��2�J�4��j��!%�o����� 0�!�\�T�$��q���/?�F� $�E�*��$(�E�.�!�-5�x��)�8�H�19�8�H�-�x�L� ���D�F� (�*��$0�.�!���T�"���c�T�k�!�$�'�D���u�%���$�X�.���(�O�#'�F���E�*�� %�59��$�.���>�>�#��D��L��L��J��K��N��K��KrNc��[R[5n[U5nUuUlUlUlUlUl0Ul	U$)zParse pre-encoded URL.)60r�r�r\rr�r�r�r�r�r�)r�r��vals   rO�pre_encoded_urlr��sB���>�>�#��D�61�G�62�C�JM�G�D�L�$�,��63�D�K����D�K��KrNr`rbrdrfrhrkrnrsrwc	�B�[R[5n	X	lU(aXlOXU(aJUbU[64R
U5:XaSOUnUcUcUcUOUSU3U	lO[X#XE5U	lOSU	lXilXyl	X�l650U	lU	$)z#Build a pre-encoded URL from parts.Nr�r�)r�r�r\r�r��
DEFAULT_PORTS�getrr�r�r�r�)66r`rbrdrfrhrkrnrsrwr�s67          rO�build_pre_encoded_urlr��s����>�>�#��D��L�� ��	
����=�#4�#4�V�#<�<�4�$�D��<�H�,�#'�<�4��v�Q�t�f�5E�D�L�&�t�t�B�D�L�����J��K��N��D�K��KrNr�rqc��[R[5nXlXlX%lX5lXEl0UlU$)zCreate a new URL from parts.)	r�r�r\r�r�r�r�r�r�)r`r�rnrqrwr�s      rO�from_parts_uncachedr�s7���>�>�#��D��L��L��J��K��N��D�K��KrNc���\rSrSr%Sr\\S'\\S'\\S'\\S'\\S'\\S'\4S	S68S.S\	\\69S\4S
\S\S70-SS4Sjjjr
\SSS71S72SS73SS74SSS	S.S\S\S\S75-S\S76-S\S\S77-S\S\S78-S\S\S
\SS4Sjj5rS\4SjrS\4SjrS\4S jrS\4S!jrS"\S\4S#jrS\4S$jrS"\S\4S%jrS"\S\4S&jrS"\S\4S'jrS"\S\4S(jrS)\SS4S*jrS\SS4S+jr S\4S,jr!S\"\794S-jr#S.\"\$\"S80\4-SS814S/jr%S�S0jr&S\4S1jr'S\4S2jr(S�S3jr)\*S\$4S4j5r+\*S�S5j5r,S�S6jr-\*S\4S7j5r.\*S\4S8j5r/\*S\4S9j5r0\*S\4S:j5r1\*S\S82-4S;j5r2\*S\S83-4S<j5r3\*S\S84-4S=j5r4\*S\S85-4S>j5r5\*S\S86-4S?j5r6\*S\S87-4S@j5r7\*S\S88-4SAj5r8\*S\S89-4SBj5r9\*S\S90-4SCj5r:\*S\S91-4SDj5r;\*S\4SEj5r<\*S\4SFj5r=\*S\4SGj5r>\*S\?\"\\44SHj5r@\*S�SIj5rA\*S\4SJj5rB\*S\4SKj5rC\*S\4SLj5rD\*S\4SMj5rE\*S\4SNj5rF\*S\4SOj5rG\*S\"\SP44SQj5rH\*S\"\SP44SRj5rI\*S�SSj5rJ\*S\4STj5rK\*S\4SUj5rL\*S\4SVj5rM\*S\4SWj5rN\*S\"\SP44SXj5rO\*S\"\SP44SYj5rPS�SZS[S
\SS4S\jjrQS\SS4S]jrRS\S92-SS4S^jrSS\S93-SS4S_jrTS\SS4S`jrUS\S94-SS4SajrVS	S	S	Sb.S\S
\Sc\Sd\SS495SejjrW\XS\SS4Sfj5rY\XSg\ZSS4Shj5rYSi\[Sg\[SS4SjjrY\XS\SS4Skj5r\\XSg\ZSS4Slj5r\Si\[Sg\[SS4Smjr\\XS\SS4Snj5r]\XSg\ZSS4Soj5r]Si\[Sg\[SS4Spjr]Sq\SS4Srjr^S\S96-SS4Ssjr_S	S	St.S)\Sc\Sd\SS4Sujjr`S	S	St.Sv\Sc\Sd\SS4SwjjraS�SxjrbS	Sy.S"\S
\SS4SzjjrcS\4S{jrd\e(a@\S|\fR�S}\hS\i4S~j5rj\S\k\l\k\-S}\mS\fR�4S�j5rnS�rog97S�rog98)�r\i)r�r�r�r�r�r�r�r�r�r�r�r�FN)�encoded�strictr�r�r�r�c�D�Ub[R"S5 [U5[LaU(a[	U5$[U5$[U5ULaU$[U5[LaU(d[S5e[U6$[U[5(a/U(a[	[U55$[[U55$U[LaE[R[5nS=Ul=Ul=Ul=UlUl0UlU$[)S5e)Nzstrict parameter is ignoredz$Cannot apply decoding to SplitResultr�z#Constructor parameter should be str)�warnings�warn�typer�r�r�rr��99from_parts�100isinstance�	UNDEFINEDr�r�r\r�r�r�r�r�r��	TypeError)�clsr�r�r�r�s     rOr��URL.__new__os������M�M�7�8���9���+2�?�3�'�G�101�3��G���9����J���9��#�� �!G�H�H��s�#�#��c�3���07�?�3�s�8�,�Q�Z��C��=Q�Q��)���>�>�#�&�D�VX�X�D�L�X�4�<�X�$�*�X�t�{�T�^��D�K��K��=�>�>rNr�)r`rbrdrfrhrkrnrqrsrwr�r`rbrdrfrhrkrnrqrsrwc�\�U(a'U(dU(dU(dU(a[S5eUb.[U[5(d[S[	U5<S35eU(aU(d[S5eU(aU	(a[S5eUbUbUb	UbU	bU102c[S5eU(a[U5=(d Sn	U(a[
UUUUUUUU	U1035	$[R[5nXl104Sn
U(a"[U5up4p�U
(a105[U
S	S1069OSn
OU(a[USS1079n
OSUl
U
bJUbU[RU5:XaSOUnUcUcUcU
OU
SU3Ul
O[!X4X�S5Ul
U(a[#U5OUnU(a8UR(a'SU;a[%U5nUS
S:wa
Sn[U5eX|lU(dU	(a[)U	5n	X�lU108(a[-U1095OU110Ul0UlU$)zCreates and returns a new URLz@Can't mix "authority" with "user", "password", "host" or "port".Nz$The port is required to be int, got r�z/Can't build URL with "port" but without "host".z6Only one of "query" or "query_string" should be passedz}NoneType is illegal for "scheme", "authority", "host", "path", "query_string", and "fragment" args, use empty string instead.r�Fr�Tr�rr�zCPath in a URL with authority should start with a slash ('/') if set)r�r�r�r�r�r$r�r�r�r\r�rr�r�r�r�rr)rr�r.r�r'r�r�)r�r`rbrdrfrhrkrnrqrsrwr�r��_hostr�s               rO�build�	URL.build�s	��$�$�(�d�d��S��
���J�t�S�$9�$9��B�4��:�.�PQ�R�S�S����O�P�P��\��U�V�V��N�� ��|��|��#����Q��
�111�(��/�5�2�L��(����������112�113
��~�~�c�"���� ���*6�y�*A�'�D�E�@E�L��e�<�2�E�
� ��T�:�E��D�L�����#�}�'8�'8��'@�@�t�d���|�� 0�(,��u�U�G�1�T�F�:K���*�4�5��M���$(�{�4� �d���D�L�L��d�{�%�d�+���A�w�#�~�6��!��o�%��114���'��5�L�"��6>���2�H�������rNc�"�[SU<S35e)NzInheriting a class z from URL is forbidden)r�)r�s rO�__init_subclass__�URL.__init_subclass__�s���-�c�W�4J�K�L�LrNc���UR(d6UR(a%UR(dUR(aSnOURnUR=nbRU[115R
UR5:Xa/URn[URURUS5nOURn[URXAURUR5$�Nr�)
r�r�r�r�rlr�r�r�rirrcrer)r�rnrkrhr�s     rO�__str__�URL.__str__�s����z�z�d�l�l����t�~�~��D��:�:�D��&�&�&�D�3��
�@Q�@Q��L�L�A116�9117�118�)�)�D� �����0A�0A�4��N�F��\�\�F��d�l�l�F�$�+�+�t�~�~�V�VrNc�L�URRS[U5S3$)Nz('z'))�	__class__rGr��r�s rO�__repr__�URL.__repr__�s$���.�.�)�)�*�"�S��Y�K�r�:�:rNc�6�[U5RS5$)N�ascii)r��encoder�s rO�	__bytes__�
URL.__bytes__s���4�y����(�(rN�otherc���[U5[La[$UR(dUR(aSOURnUR(dUR(aSOURnUR119UR120:H=(ad URUR:H=(aD X#:H=(a9 URUR:H=(a URUR:H$r�)r�r\�NotImplementedr�r�r�r�r�)r�r��path1�path2s    rO�__eq__�121URL.__eq__s�����;�c�!�!�!��:�:�$�,�,��D�J�J�� �;�;�5�=�=��e�k�k���L�L�E�M�M�)�
2�����
�
�-�
2���
2����u�|�|�+�
2����%�/�/�1�	122rNc�,�URRS5=ncuUR(dUR(aSOURn[	UR123URX RUR45=oRS'U$)Nr_r�)r�r�r�r�r_r�r�r�)r��retrns   rO�__hash__�URL.__hash__sl���;�;�?�?�6�*�*�C�3�"�j�j�T�\�\�3�t�z�z�D�(,����t�|�|�T�;�;����O�)�
�C�+�+�f�%��124rNc�d�[U5[La[$URUR:*$�N�r�r\r�r[�r�r�s  rO�__le__�125URL.__le__�'����;�c�!�!�!��y�y�E�J�J�&�&rNc�d�[U5[La[$URUR:$r�r�r�s  rO�__lt__�126URL.__lt__�'����;�c�!�!�!��y�y�5�:�:�%�%rNc�d�[U5[La[$URUR:�$r�r�r�s  rO�__ge__�127URL.__ge__$r�rNc�d�[U5[La[$URUR:�$r�r�r�s  rO�__gt__�128URL.__gt__)r�rNr|c�n�[U[5(d[$UR[U545$r�)r�r�r��_make_child�r�r|s  rO�__truediv__�URL.__truediv__.s,���$��$�$�!�!�����T���-�-rNc�$�URU5$r�)�update_query�r�rqs  rO�__mod__�URL.__mod__3s��� � ��'�'rNc��[UR=(d2 UR=(d UR=(d UR5$r�)r�r�r�r�r�r�s rO�__bool__�URL.__bool__6s,���D�L�L�O�D�J�J�O�$�+�+�O����P�PrNc�L�[R[UR54$r�)r�r�rr[r�s rO�__getstate__�URL.__getstate__9s���
�
�k�4�9�9�5�7�7rN�statec��USc![US[5(a	USSnOUtp#UuUlUlUlUlUl0Ulg)Nrrr[)r��dictr�r�r�r�r�r�)r�rr��unuseds    rO�__setstate__�URL.__setstate__<sV����8��129�5��8�T� :� :���(�6�"�C�!�L�C�NQ�K���d�l�D�J���T�^���rNc�l�URn[UR5nUuUS'US'US'US'g)z"Cache the netloc parts of the URL.rcrergrlN)r�rr�)r��c�	split_locs   rO�
_cache_netloc�URL._cache_netlocHs9���K�K�� ����.�	�NW�K��*�
�q��(�!�J�-��?�9KrNc��UR$)z�A check for absolute URLs.130 131Return True for absolute ones (having scheme or starting132with //), False otherwise.133 134Is is preferred to call the .absolute property instead135as it is cached.136)r^r�s rO�is_absolute�URL.is_absoluteNs���}�}�rNc��UR=ncURS:g$U[RUR5:H$)z�A check for default port.137 138Return True if port is default for specified scheme,139e.g. 'http://python.org' or 'http://python.org:80', False140otherwise.141 142Return False for relative URLs.143 144r�)rlr�r�r�r�)r��explicits  rO�is_default_port�URL.is_default_portYs@���*�*�*�H�3��<�<�2�%�%��=�,�,�T�\�\�:�:�:rNc��UR$)zmReturn an URL with scheme, host and port parts only.145 146user, password, path, query and fragment are removed.147 148)r]r�s rO�origin�149URL.originj����|�|�rNc�t�URURURURUR4$r�)r�r�r�r�r�r�s rOr[�URL._valss'�����d�l�l�D�J�J����T�^�^�T�TrNc�T�UR=n(d[S5eUR=n(d[S5eSU;a$URn[	SSX0R1505nO5UR(d$UR(dUR(dU$[X!SSS5$)zlReturn an URL with scheme, host and port parts only.151 152user, password, path, query and fragment are removed.153�URL should be absolutezURL should have schemer�Nr�)154r�r�r�rirrlr�r�r�r�)r�r�r`�encoded_hosts    rOr]�URL._originws����,�,�&��&��5�6�6��,�,�&��&��5�6�6��&�=��1�1�L� ��t�\�;M�;M�N�F����D�K�K�����K��&�"�b�"�5�5rNc��UR(d[S5e[SSURURUR1555$)zXReturn a relative part of the URL.156 157scheme, user, password, host and port are removed.158 159rr�)r�r�r�r�r�r�r�s rO�relative�URL.relative�s6���|�|��5�6�6��"�b�$�*�*�d�k�k�4�>�>�J�JrNc� �URS:g$)zqA check for absolute URLs.160 161Return True for absolute ones (having scheme or starting162with //), False otherwise.163 164r��r�r�s rOr^�URL.absolute�s���|�|�r�!�!rNc��UR$)zTScheme for absolute URLs.165 166Empty string for relative URLs or URLs starting with //167 168)r�r�s rOr`�169URL.scheme�rrNc��UR$)zAEncoded authority part of URL.170 171Empty string for relative URLs.172 173r r�s rOra�URL.raw_authority�rrNc�n�[URURURUR5$)zADecoded authority part of URL.174 175Empty string for relative URLs.176 177)rrdrfrhrkr�s rOrb�
URL.authority�s%���4�9�9�d�m�m�T�Y�Y��	�	�J�JrNc�@�UR5 URS$)z5Encoded user part of URL.178 179None if user is missing.180 181rc�r	r�r�s rOrc�URL.raw_user�s��	
�����{�{�:�&�&rNc�8�UR=ncg[U5$)z5Decoded user part of URL.182 183None if user is missing.184 185N)rcr2)r�rcs  rOrd�URL.user�s!���
�
�%�H�.����!�!rNc�@�UR5 URS$)z=Encoded password part of URL.186 187None if password is missing.188 189rer)r�s rOre�URL.raw_password�s��	
�����{�{�>�*�*rNc�8�UR=ncg[U5$)z=Decoded password part of URL.190 191None if password is missing.192 193N)rer2)r�res  rOrf�URL.password�s#��!�-�-�-�L�6����%�%rNc�@�UR5 URS$)z�Encoded host part of URL.194 195None for relative URLs.196 197When working with IPv6 addresses, use the `host_subcomponent` property instead198as it will return the host subcomponent with brackets.199rgr)r�s rOrg�URL.raw_host�s��	
�����{�{�:�&�&rNc��UR=ncgU(aUSR5(dSU;aU$[U5$)z4Decoded host part of URL.200 201None for relative URLs.202 203Nr�r�)rg�isdigit�_idna_decode�r��raws  rOrh�URL.host�s?���=�=� �C�)���3�r�7�?�?�$�$��s�204��J��C� � rNc�>�UR=ncgSU;aSUS3$U$)a�Return the host subcomponent part of URL.205 206None for relative URLs.207 208https://datatracker.ietf.org/doc/html/rfc3986#section-3.2.2209 210`IP-literal = "[" ( IPv6address / IPvFuture  ) "]"`211 212Examples:213- `http://example.com:8080` -> `example.com`214- `http://example.com:80` -> `example.com`215- `https://127.0.0.1:8443` -> `127.0.0.1`216- `https://[::1]:8443` -> `[::1]`217- `http://[::1]` -> `[::1]`218 219Nr�r��])rgr6s  rOri�URL.host_subcomponents/��$�=�=� �C�)�� �C�Z��3�%�q�z�0�S�0rNc��UR=ncgUSS:XaURS5nURnUb#U[R	UR2205:XaSU;aSUS3$U$SU;aSUSU3$USU3$)a�Return the host and port subcomponent part of URL.221 222Trailing dots are removed from the host part.223 224This value is suitable for use in the Host header of an HTTP request.225 226None for relative URLs.227 228https://datatracker.ietf.org/doc/html/rfc3986#section-3.2.2229`IP-literal = "[" ( IPv6address / IPvFuture  ) "]"`230https://datatracker.ietf.org/doc/html/rfc3986#section-3.2.3231port        = *DIGIT232 233Examples:234- `http://example.com:8080` -> `example.com:8080`235- `http://example.com:80` -> `example.com`236- `http://example.com.:80` -> `example.com`237- `https://127.0.0.1:8443` -> `127.0.0.1:8443`238- `https://[::1]:8443` -> `[::1]:8443`239- `http://[::1]` -> `[::1]`240 241Nr�r�r�r�r:z]:)rg�rstriprlr�r�r�)r�r7rks   rOrj�URL.host_port_subcomponents���0�=�=� �C�)���r�7�c�>��*�*�S�/�C��!�!���<�4�=�#4�#4�T�\�\�#B�B�!$���Q�s�e�1�:�4��4�$'�3�J��3�%�r�$�� �C�s�e�1�T�F�O�CrNc�b�UR=nbU$[RUR5$)z�Port part of URL, with scheme-based fallback.242 243None for relative URLs or URLs without explicit port and244scheme without default port substitution.245 246)rlr�r�r�)r�rls  rOrk�URL.port>s0��"�/�/�/�M�<� � �� � ����.�.rNc�@�UR5 URS$)ziPort part of URL, without scheme-based fallback.247 248None for relative URLs or URLs without explicit port.249 250rlr)r�s rOrl�URL.explicit_portJs��	
�����{�{�?�+�+rNc�b�UR(dUR(dUR$S$)z>Encoded path of URL.251 252/ for absolute URLs without path part.253 254r�)r�r�r�s rOrm�URL.raw_pathTs��"�Z�Z�t�|�|�t�z�z�D��DrNc�x�UR(a[UR5$UR(aS$S$)z>Decoded path of URL.255 256/ for absolute URLs without path part.257 258r�r�)r�r,r�r�s rOrn�URL.path]s*��-1�J�J�}�T�Z�Z�(�W�4�<�<�C�W�UW�WrNc�x�UR(a[UR5$UR(aS$S$)zcDecoded path of URL.259 260/ for absolute URLs without path part.261 262/ (%2F) and % (%25) are not decoded263 264r�r�)r�r+r�r�s rO�	path_safe�
URL.path_safefs+���:�:�%�d�j�j�1�1��l�l�s�*��*rNc�,�[UR5$)zParse query part of URL.)rr�r�s rOro�URL._parsed_queryss���d�k�k�*�*rNc�>�[[UR55$)zyA MultiDictProxy representing parsed query parameters in decoded265representation.266 267Empty value if URL has no query part.268 269)rrror�s rOrq�	URL.queryxs���i��(:�(:�;�<�<rNc��UR$)z?Encoded query part of URL.270 271Empty string if query is missing.272 273)r�r�s rOrr�URL.raw_query_string�s���{�{�rNc�R�UR(a[UR5$S$)z?Decoded query part of URL.274 275Empty string if query is missing.276 277r�)r�r-r�s rOrs�URL.query_string�s��,0�;�;�{�4�;�;�'�>�B�>rNc�b�UR=n(dUR$URSU3$)zDecoded path of URL with query.�?)rsrn�r��qs  rOrt�URL.path_qs�s2��'+�&7�&7�!7��!7�t�y�y�P�����1�Q�C�>P�PrNc���UR=n(a8UR(dUR(dURSU3$SU3$UR(dUR(dUR$S$)zEncoded path of URL with query.rSz/?r�)r�r�r�rTs  rOru�URL.raw_path_qs�s]������1��*.�*�*�D�L�L�d�j�j�\��1�#�&�V�PR�ST�RU�h�V�!�Z�Z�t�|�|�t�z�z�D��DrNc��UR$)zEEncoded fragment part of URL.278 279Empty string if fragment is missing.280 281)r�r�s rOrv�URL.raw_fragment�s���~�~�rNc�R�UR(a[UR5$S$)zEDecoded fragment part of URL.282 283Empty string if fragment is missing.284 285r�)r�r2r�s rOrw�URL.fragment�s��,0�>�>�x����'�A�r�ArN.c��URnUR(a!U(aS/USSRS5Q7$S$U(a!USS:XaS/USSRS5Q7$[URS55$)zZA tuple containing encoded *path* parts.286 287('/',) for absolute URLs if *path* is missing.288 289r�rN)r�r)r�r��splitr�)r�rns  rOrx�
URL.raw_parts�su���z�z���<�<�26�C�.�$�q�r�(�.�.��-�.�B�F�B��D��G�s�N��.�$�q�r�(�.�.��-�.�.��T�Z�Z��_�%�%rNc�:�[SUR55$)zZA tuple containing decoded *path* parts.290 291('/',) for absolute URLs if *path* is missing.292 293c3�8# �UHn[U5v� M g7fr��r2)�.0�parts  rO�	<genexpr>�URL.parts.<locals>.<genexpr>�s���?���X�d�^�^����)r�rxr�s rOry�	URL.parts�s���?����?�?�?rNc	�N�URnU(aUS:XaGUR(dUR(a#[URUR294USS5$U$UR
S5n[URUR295SRUSS5SS5$)zMA new URL with last part of path removed and cleaned up query and296fragment.297 298r�r�Nr�)r�r�r�r�r�r�r^�join)r�rnrys   rOrz�299URL.parent�s{���z�z���t�s�{��~�~����!�$�,�,����d�B��K�K��K��300�301�3����$�,�,����c�h�h�u�S�b�z�6J�B�PR�S�SrNc�l�URnUR(dUS$USSnU(aUS$S$)zThe last part of raw_parts.r�rNr�)rxr�)r�rys  rOr{�URL.raw_name�s:�������|�|���9���a�b�	��!�u�R�y�)�r�)rNc�,�[UR5$)zThe last part of parts.)r2r{r�s rOr|�URL.name�s����
�
�&�&rNc��URnURS5nSUs=:a[U5S-302:aO OXS$S$)Nr�rrr�)r{�rfind�len)r�r|�is   rOr}�URL.raw_suffix�s;���}�}���J�J�s�O���q�0�3�t�9�q�=�0�t�B�x�8�b�8rNc�,�[UR5$r�)r2r}r�s rOr~�303URL.suffix�s������(�(rNc��URnURS5(agURS5n[SUR	S5SS55$)Nr�rFc3�,# �UH304nSU-v� M g7f)r�NrF�rcr~s  rOre�#URL.raw_suffixes.<locals>.<genexpr>�s���D�0C�f�S�6�\�0C�s�r)r{�endswith�lstripr�r^r�s  rOr�URL.raw_suffixes�sK���}�}���=�=������{�{�3����D��305�306�3����0C�D�D�DrNc�:�[SUR55$)Nc3�8# �UHn[U5v� M g7fr�rbrys  rOre�URL.suffixes.<locals>.<genexpr>�s���F�4E�&�X�f�%�%�4E�rg)r�rr�s rOr��URL.suffixes�s���F�D�4E�4E�F�F�FrN�pathsz
Sequence[str]c�Z�/nSn[[U55H�upVUS:HnU(aUSS:Xa[SU<S35eU(aUO307[U5nUSU;-nUR	S5nUR5 X7(dUSS:XaUSS	OU-
nM� UR=n(a<UR	S5=n	(a$U	S308S:XaU	S	S309OU	n310U311R5 X:-
nUR=n(a!U(aUS312S:waURS5 UR5 U(aU(d([URUSRU5SS5$SR[U55nU(aUSS:waSU3n[URX�SS5$)zz313add paths to self._path, accounting for absolute vs relative paths,314keep existing, but do not create new, empty segments315Frr�zAppending path z! starting from slash is forbiddenr�r�rNr�)
�	enumerate�reversedr�r)r^�reverser�r��appendr�r�rjr )r�r�r��parsed�needs_normalize�idxrn�last�segments�old_segments�oldr�s            rOr��URL._make_child�s���316�� %��"�8�E�?�3�I�C��!�8�D���Q��3�� �%�d�X�-N�O���#�4��D�(9�D��s�d�{�*�O��z�z�#��H������$�8�A�;�"�3D�h�q�r�l�(�R�F�!4�$�J�J��D��T�Z�Z��_�%D�\�%D�(4�B�'7�2�'=�,�s��#�<�C��K�K�M��M�F��l�l�"�F�"��6�"�:��3C��M�M�"�������_��d�l�l�F�C�H�H�V�4D�b�"�M�M��x�x�/��7�8���D��G�s�N��t�f�:�D��$�,�,��b�"�=�=rNc��[U[5(d[S5eUR5nURnU(dU[317;aSUS3n[
U5e[X#URURUR5$)z&Return a new URL with scheme replaced.zInvalid scheme typez<scheme replacement is not allowed for relative URLs for the r�)r�r�r��lowerr�r�r�r�r�r�r�)r�r`�lower_schemer�r�s     rO�with_scheme�URL.with_scheme*s{���&�#�&�&��1�2�2��|�|�~�������,�*>�>�)�)5��g�?�
��S�/�!��,��318�319�D�K�K����X�XrNc�|�UcSnO8[U[5(a[U5nURnO[	S5eUR320=n(d[
S5eUR=(d Sn[XX@R5n[URX0RURUR5$)zhReturn a new URL with user replaced.321 322Autoencode user if needed.323 324Clear user/password if user is None.325 326NzInvalid user typez1user replacement is not allowed for relative URLsr�)r�r�r0rer�r�r�rirrlr�r�r�r�r�)r�rdrfr�rs     rO�	with_user�
URL.with_user9s����<��H�
��c�
"�
"��$�<�D��(�(�H��/�0�0��,�,�&��&��P�Q�Q��-�-�3����T�\�;M�;M�N���$�,�,��327�328�D�K�K����X�XrNc�z�UcO,[U[5(a[U5nO[S5eUR=n(d[S5eUR=(d SnURn[URXU5n[URX RURUR5$)zoReturn a new URL with password replaced.329 330Autoencode password if needed.331 332Clear password if argument is None.333 334zInvalid password typez5password replacement is not allowed for relative URLsr�)r�r�r0r�r�r�rirlrrcr�r�r�r�r�)r�rfr�rrks     rO�
with_password�URL.with_passwordOs������
��#�
&�
&��h�'�H��3�4�4��,�,�&��&��T�U�U��-�-�3����!�!���T�]�]�H�D�I���$�,�,��335�336�D�K�K����X�XrNc��[U[5(d[S5eUR=n(d[	S5eU(d[	S5eU(a337[USS9OSnURn[URURX45n[URX RURUR5$)z�Return a new URL with host replaced.338 339Autoencode host if needed.340 341Changing host for relative URLs is not allowed, use .join()342instead.343 344zInvalid host typez1host replacement is not allowed for relative URLszhost removing is not allowedTr�r�)r�r�r�r�r�r�rlrrcrer�r�r�r�r�)r�rhr�rrks     rO�	with_host�
URL.with_hostes����$��$�$��/�0�0��,�,�&��&��P�Q�Q���;�<�<�AE�|�D��=�2���!�!���T�]�]�D�,=�,=�|�R���$�,�,��345�346�D�K�K����X�XrNc���Ub^[U[5(d[U[5(d[S[	U535eSUs=::aS::dO [SU35eUR=n(d[S5eUR=(d Sn[URURX15n[URX RURUR5$)zPReturn a new URL with port replaced.347 348Clear port to default if None is passed.349 350z port should be int or None, got ri��z&port must be between 0 and 65535, got z1port replacement is not allowed for relative URLsr�)r�r�r�r�r�r�r�rirrcrer�r�r�r�r�)r�rkr�rs    rO�	with_port�
URL.with_portzs������$��%�%�Z��c�-B�-B��"B�4��:�,� O�P�P���&��&� �#I�$��!P�Q�Q��,�,�&��&��P�Q�Q��-�-�3����T�]�]�D�,=�,=�|�R���$�,�,��351�352�D�K�K����X�XrN)r��353keep_query�
keep_fragmentr�r�c��URnU(d%[U5nU(aSU;a[U5OUnU(aUSS:waSU3nU(aUROSnU(aUROSn[URXQXg5$)z$Return a new URL with path replaced.r�rr�r�)r�r)rr�r�r�r�)r�rnr�r�r�r�rqrws        rO�	with_path�
URL.with_path�st��������t�$�D��/2�d�{�~�d�+����D��G�s�N��t�f�:�D�)����r��%2�4�>�>����$�,�,��e�F�FrNc��gr�rFr�s  rO�354with_query�URL.with_query�s��14rN�kwargsc��gr�rF�r�r�s  rOr�r��s��<?rN�argsc��[U0UD6=(d Sn[URURURX0R3555$)a+Return a new URL with query part replaced.356 357Accepts any Mapping (e.g. dict, multidict.MultiDict instances)358or str, autoencode the argument if needed.359 360A sequence of (key, value) pairs is supported as well.361 362It also can take an arbitrary number of keyword arguments.363 364Clear query if None is passed.365 366r�)r$r�r�r�r�r�)r�r�r�rqs    rOr�r��s>���t�.�v�.�4�"��"��L�L�$�,�,��367�368�E�>�>�369�	370rNc��gr�rFr�s  rO�extend_query�URL.extend_query����36rNc��gr�rFr�s  rOr�r�����>ArNc���[U0UD6=n(dU$UR=n(aXDSS:XaUOSU3-
nOUn[URURUR371X@R5$)z�Return a new URL with query part combined with the existing.372 373This method will not remove existing query parameters.374 375Example:376>>> url = URL('http://example.com/?a=1&b=2')377>>> url.extend_query(a=3, c=4)378URL('http://example.com/?a=1&b=2&a=3&c=4')379r��&)r$r�r�r�r�r�r�)r�r�r��	new_queryrqs     rOr�r��su��+�D�;�F�;�;�	�;��K��K�K��5��
��)�s�"2�Y�!�I�;��G�E��E�"��L�L�$�,�,��380�381�E�>�>�382�	383rNc��gr�rFr�s  rOr��URL.update_query�r�rNc��gr�rFr�s  rOr�r��r�rNc��U(aU(a
Sn[U5eUnO [U5S:XaUSnO[S5eUcSnGO�U(dURnGO}[U[5(aA[UR5nURU5 [UR55nGO'[U[5(aI[UR5nUR[U55 [UR55nO�[U[[[45(a
Sn[!U5e[U["5(a|[$(a1['["[([*[[,4[.4U5n[UR5nURU5 [UR55nO[!S5e[1UR2UR4UR6XPR85$)z�Return a new URL with query part updated.384 385This method will overwrite existing query parameters.386 387Example:388>>> url = URL('http://example.com/?a=1&b=2')389>>> url.update_query(a=3, c=4)390URL('http://example.com/?a=3&b=2&c=4')391z7Either kwargs or single query parameter must be presentrrr�zAInvalid query type: bytes, bytearray and memoryview are forbiddenzRInvalid query type: only str, mapping or sequence of (key, value) pairs is allowed)r�rrr�r�rrro�updater&�itemsr�rr%�bytes�	bytearray�392memoryviewr�rr	rr�rrr#r�r�r�r�r�)	r�r�r�r��in_queryrq�qm�qstr�qss	         rOr�r��s��� ��O�� ��o�%��H�
��Y�!�^��A�w�H��V�W�W����E���K�K�E�
��'�
*�
*�+4�T�5G�5G�+H�B��I�I�h��8�����D�E�
��#�
&�
&�#,�T�-?�-?�#@�D��K�K��x�0�1�/��393�394��=�E�
��5�)�Z�"@�
A�
A�U�C��C�.� �
��(�
+�
+�395�}���U�5��d��#3�[�#@�A�B�H���*3�4�3E�3E�)F�B��I�I�h��/����396�;�E��<��
�#��L�L�$�,�,��397�398�E�>�>�399�	400rN�query_paramsc��^�[U5URR5-mT(dU$UR[	U4SjURR5555$)z4Remove some keys from query part and return new URL.c3�>># �UHupUT;dM
X4v� M g7fr�rF)rcr|�value�params_to_removes   �rOre�+URL.without_query_params.<locals>.<genexpr>s'�����#5�K�D��/�/���
�#5�s��401)�setrq�keysr�r�r�)r�r�r�s  @rO�without_query_params�URL.without_query_paramssY����|�,�t�z�z���/@�@����K������#'�:�:�#3�#3�#5��
�402�	403rNc���UcSnO+[U[5(d[S5e[U5nURU:XaU$[URURURURU5$)zxReturn a new URL with fragment replaced.404 405Autoencode fragment if needed.406 407Clear fragment to default if None is passed.408 409r�zInvalid fragment type)410r�r�r�r'r�r�r�r�r�r�)r�rwrvs   rO�
with_fragment�URL.with_fragment&sk�����L��H�c�*�*��3�4�4�*�8�4�L��>�>�\�)��K���L�L�$�,�,��411�412�D�K�K��413�	414rN)r�r�c��[U[5(d[S5eSU;a[S5e[	U5nUS;a[S5e[UR5nUR=n(a+[U5S:XaURU5 OXS'SUS	'OXS'US	S:XaSUS	'U(aUROSnU(aUROSn[URUSRU5Xg5$)415z�Return a new URL with name (last part of path) replaced.416 417Query and fragment parts are cleaned up.418 419Name is encoded if needed.420 421zInvalid name typer�zSlash in name is not allowed�r�z..�. and .. values are forbiddenrr�r�r)r�r�r�r�r)r�rxr�rrr�r�r�r�r�rj)r�r|r�r�ryr�rqrws        rO�	with_name�
URL.with_name;s����$��$�$��/�0�0��$�;��;�<�<��4� ���;���<�=�=��T�^�^�$���\�\�!�6�!��5�z�Q�����T�"� �b�	��E�!�H��"�I��Q�x�3����a��)����r��%2�4�>�>����$�,�,��������Q�QrNr~c���[U[5(d[S5eU(a	USS:XaUS:XdSU;a[SU<35eURnU(d[U<S35eUR422n[
U5nU(dXA-OUS[U5*U-nUS;a[S	5e[UR5nUR=n(a+[U5S423:XaURU5 OXFS'SUS'OXFS'USS:XaSUS'U(aUROSnU(aUROSn	[URUSR!U5X�5$)
z�Return a new URL with suffix (file extension of name) replaced.424 425Query and fragment parts are cleaned up.426 427suffix is encoded if needed.428zInvalid suffix typerr�r�zInvalid suffix z has an empty nameNr�r�rr�r�)r�r�r�r�r{r}r)rrr�rxr�r�r�r�r�r�rj)429r�r~r�r�r|�430old_suffixryr�rqrws431          rO�with_suffix�URL.with_suffixasD���&�#�&�&��1�2�2��&��)�s�*�f��m�s�f�}���v�j�9�:�:��}�}�����x�'9�:�;�;��_�_�432��V�$��$.�t�}�D�9K�C�433�O�;K�4L�v�4U���;���<�=�=��T�^�^�$���\�\�!�6�!��5�z�Q�����T�"� �b�	��E�!�H��"�I��Q�x�3����a��)����r��%2�4�>�>����$�,�,��������Q�QrNc�V�[U5[La[S5eUR=(d URnX R:wd434U[;aU$UR435=n(a6U[;a,[X#URURUR5$URnUR=n(apUSS:XaUnOPU(dSU3nOCUSS:XaUU3nO3SR/URSSQSP5U-nUSS:XaUSSnSU;a[U5OUnOUn[UUR436UU(dUR(aUROURU(dUR(aUR5$UR5$)	u'Join URLs437 438Construct a full (“absolute”) URL by combining a “base URL”439(self) with another URL (url).440 441Informally, this uses components of the base URL, in442particular the addressing scheme, the network location and443(part of) the path, to provide missing components in the444relative URL.445 446zurl should be URLrr�r�Nr�rr�)r�r\r�r��
USES_RELATIVEr�rr�r�r�r�rjryr)r��urlr`�join_netloc�	orig_path�	join_pathrns       rOrj�URL.join�st����9�C���/�0�0����,������\�\�!�V�=�%@��J��;�;�&�K�&�F�n�,D��f�3�9�9�c�j�j�#�-�-�X�X��J�J�	��	�	�!�9�!���|�s�"� ����9�+����2��#�%�#��Y�K�0���x�x� 6�$�*�*�S�b�/� 6�2� 6�7�)�C���Q�<�3�&����8�D�+.�$�;�>�$�'�D�D��D����L�L��#�s�z�z�C�J�J�t�{�{�&�#�-�-�C�M�M�447�	448�449>B�^�^�450�	451rN�r�c� �URX!S9$)zAReturn a new URL with the elements in other appended to the path.r�)r�)r�r�r�s   rO�joinpath�URL.joinpath�s�������7�7rNc���[URS5n[URS5nUR=n(aSU;aSUS3n[URS5n[452(aUceSR
SURR555n[URS5n[453(aUce[XX0R5n[URXtXV5$)	z<Return decoded human readable string for URL representation.z#/:?@[]r�r�r:z#?r�c3�r# �UH-upSR[US5[US55v� M/ g7f)z{}={}z#&+;=N)�formatr3)rc�k�vs   rOre�!URL.human_repr.<locals>.<genexpr>�s5��� 454�*���
�N�N�;�q�'�2�K��7�4K�L�L�*�s�57r�)r3rdrfrhrnr	rjrqr�rwrrlrr�)r�rdrfrhrnrsrwr�s        rO�455human_repr�URL.human_repr�s����4�9�9�i�0���t�}�}�i�8���I�I��D��3�$�;��t�f�A�;�D��4�9�9�d�+���=��#�#�#��x�x� 456��457�458�(�(�*� 459�460���t�}�}�b�1���=��'�'�'��T�T�3E�3E�F���d�l�l�F�,�Q�QrNr7�handlerc�*�0nURSSS9 U$)N�string�uri)r�r�)r�)r�r7r��field_schemas    rO�__get_pydantic_json_schema__� URL.__get_pydantic_json_schema__�s"��,.�L����X�e��<��rN�source_typec�@�[R"[R"5[R"[5/5n[R461"U[R"[R"[5U/5[R"[5S9$)N)�json_schema�
python_schema�
serialization)462r7�chain_schema�463str_schema� no_info_plain_validator_functionr\�json_or_python_schema�union_schema�is_instance_schema�$plain_serializer_function_ser_schemar�)r�r�r��from_str_schemas    rO�__get_pydantic_core_schema__� URL.__get_pydantic_core_schema__�s���*�6�6��*�*�,��@�@��E���O��4�4�+�)�6�6�$�6�6�s�;�'���*�N�N�s�S�464�465
rN)r�r�r�r�r�r��r�N)r�r\)r�rp)F)r�r\r�r\)prGrHrIrJ�	__slots__rYrWr�r�rrrDr�r��classmethodr�r!r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr	rrr�cached_propertyr[r]rr^r`rarbrcrdrerfrgrhrirjrkrlrmrnrHr�rorqrrrsrtrurvrwrxryrzr{r|r}r~rr�r�r�r�r�r�r�r�rr�r"r466r�r�r�r�r�r�rjr�r��HAS_PYDANTICr7�467CoreSchemar5r6r�r�rBr4rrMrFrNrOr\r\s�	��NQ�I���
�L�
�L��J��K��N�>G�?��"�?�
�3��U�M�9�
:�?��	?�468�t��?�469�
?�:����#����"����\��\��	\�470�D�j�\���*�
\��\��D�j�\��\��t�|�\��\��\��\�471�\��\�|M�(�M�W��W� ;�#�;�)�5�)�472�F�473�t�474��#��'�F�'�t�'�475&�F�&�t�&�476'�F�'�t�'�477&�F�&�t�&�478.��.��.�479(�U�(�u�(�Q�$�Q�8�e�K�0�8�480��<�(�5��7H�1H�+I�I�481�	
�482�X�	�T�	�;��;�"��U�l�U��U��6��6� K��"�$�"��"���������s�����K�3�K��K��'�#��*�'��'��"�c�D�j�"��"��+�c�D�j�+��+��&�#��*�&��&��'�#��*�'��'��!�c�D�j�!��!��1�3��:�1��1�*�#D��d�483�#D��#D�J�	/�c�D�j�	/��	/��,�s�T�z�,��,��E�#�E��E��X�c�X��X��484+�3�485+��486+��+�t�E�#�s�(�O�4�+��+��=��=���#�����?�c�?��?��Q��Q��Q��E�S�E��E���c�����B�#�B��B��&�5��c��?�&��&��@�u�S�#�X��@��@��T��T��*�#�*��*��'�c�'��'��9�C�9��9�487�)��)��)��E�e�C��H�o�E��E��G�%��S��/�G��G�->��->�4�->�E�->�^
Y�#�
Y�%�
Y�Y�c�D�j�Y�U�Y�,Y�c�D�j�Y�U�Y�,Y�c�Y�e�Y�*Y�c�D�j�Y�U�Y�,� �#�
G��G��	G�488�G��
G�489�G�(�4��4�%�4��4�
�?�=�?�U�?��?�490��491�s�492�u�493�&�6�%�6�E�6��6�
�A�]�A�u�A��A�494�#�495��496��497�,�6�%�6�E�6��6�
�A�]�A�u�A��A�<498�#�<499��<500��<501�|502�#�503�%�504�505�c�D�j�506�U�507�2!�#�$R��$R��	$R�508�$R�509�
$R�T!�#�'R��'R��	'R�510�'R�511�
'R�R2512�h5:�8�s�8�T�8�e�8�R�C�R�&�	�	 �)�4�4�	 �?S�	 �
�	 �513�	 �514�	�"�4�j�4��9�4�	�?S�	�
�
#�
#�	�515�	�rN�ir7c��[R"URS55$![a# URS5RS5s$f=f)Nr��idna)r�decoder��UnicodeError)r7s rOr5r5�sH��2��{�{�3�:�:�g�.�/�/���2��z�z�'�"�)�)�&�1�1�2�s�$'�*A�Ac��[R"USS9RS5$![a# URS5RS5s$f=f)NT)�uts46r�r)rr�rr
)rhs rO�_idna_encodersL��3��{�{�4�t�,�3�3�G�<�<���3��{�{�6�"�)�)�'�2�2�3�s�#&�*A�Ar�c516�|�U(a�USR5(dSU;abURS5up#n[U5nURnURS:XaU(a	SUSUS3$SUS3$U(aUSU3$U$UR
5(a�UR5nU(am[RU5=n(aQUR5UR5Sp�nUS:XdUS:Xa517SXS	;aS518n	[SU<SU<S
USU	35S	eU$[U5$![519a N�f=f)zEncode host part of URL.r�r��%�r�r:r�r�NzQ, if the value includes a username or password, use 'authority' instead of 'host'zHost z cannot contain z (at position �))
r4�	partitionr�520compressed�versionr��isasciir��NOT_REG_NAME�search�group�startr)521rhr��raw_ip�sep�zone�ip�invalidr��pos�extras522          rOr�r�sS��523��b��!�!�#�#�s�d�{� �N�N�3�/���T�&524	5��F�#�B��=�=�D��z�z�Q��-0��4�&��$��q�)�A��$��q�k�A�'*�d�V�1�T�F�#�4��4��|�|�~�~��z�z�|����)<�)<�T�)B�B�g�B� '�
�
������"��E���|������T�525�1B�8�����x�/��y��s�e�1�U�G�T���
��������9�	��	�s�D.�.526D;�:D;c�|�[R5 [R5 [R5 g)zClear all LRU caches.N)r�cache_clearr5r�rFrNrOr%r%Es(�������������rNc���[R5[R5[R5[R5[R5S.$)zReport cache statistics.)rSrTrrUrV)r�527cache_infor5r�rFrNrOr'r'MsJ��$�.�.�0�#�.�.�0�"�-�-�/�%�0�0�2�#�.�.�0��rN)�idna_encode_size�idna_decode_size�ip_address_size�host_validate_size�encode_host_sizer(r)r*r+r,c�*�U[Ld	U[La[R"S[SS9 Ub�X#4HqnUcSnM528U[LaU[LaUnM M"U[LdM-[(a.[U[5(de[U[5(de[XT5nMs U[La[n[U5"[R5q529[U5"[R5q[U5"[R5q
g)zConfigure LRU cache sizes.z�cache_configure() no longer accepts the ip_address_size or host_validate_size arguments, they are used to set the encode_host_size instead and will be removed in the future�)�530stacklevelN)r�r�r��DeprecationWarningr	r�r��max�_DEFAULT_ENCODE_SIZErr��__wrapped__r5r)r(r)r*r+r,�sizes      rO�cache_configurer5Ys����i�'�+=�Y�+N��
�
�
0�
��
	531��#�$�9�D��|�#'� �!�Y�.��y�(�'+�$�)��Y�&� �=�%�d�C�0�0�0�0�%�&6��<�<�<�<�#&�t�#>� �:��y�(�3���-�.�|�/G�/G�H�L��-�.�|�/G�/G�H�L��-�.�|�/G�/G�H�LrNr)k�re�sysr��collections.abcrr�enumr�	functoolsrr�	ipaddressr�typingr	r532rrr
rrr�urllib.parserrr�	multidictrrr�
propcache.apirr�_parserrrrrrrr�rr r�r!r"r#r$r%r&�_quotersr'r(r)r*r+r,r-r.r/r0r1r2r3�pydanticr4r5�pydantic.json_schemar6�
pydantic_corer7r�ImportErrorr��	frozensetr�r��compile�VERBOSErr?�version_inforBrDrLr�rQrYr�r�r�r�r�r�r�r�r\�_DEFAULT_IDNA_SIZEr2r5rr�r�r%r'r5rFrNrO�<module>rKs���	�533��-��+� �	�	�	�4��5�5�B����;������� �C�4�)��L�534�c��C��K�
��-�(�
�!�!F�G���z�z���J�J���
�T�]�����w����D��D��
�$�$�	��	��$�	��$�N���r��535�<��<��<��<�~��S��U������������*���D�j�	�536����*�
�����������@�����$'��03��?B��537���*�
+�538��T�T��T�n&�������2�c�2�c�2��2����3�s�3�s�3��3��� �6�s�6�4�6�C�6�!�6�r������I�����$6�#5�2;�5>�3<�
'I��D�j�'I��D�j�'I��4�Z�-�/�	'I�539�d�540�]�2�'I��D�j�=�0�
'I�541�'I��'I��u0���L��s�"H=�=I	�I	
codekingpro/portable-devtools · Team Ai