�
��g� � �� � d dl Z d dlZd dlZd dlmZmZ d dlmZ d dlm Z m
Z
d dlmZ d dl
mZmZmZmZmZmZmZ d dlmZmZ d dlZd dlmZmZ d d lmZ d
dlm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z& d
dl'm(Z(m)Z) d
d
l*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0 d
dl1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z> dddddd�Z? e@e� � ZA e@d� � ZB e jC de jD � � ZE ed� � ZFejG dk rd dl
mHZH neZH G d� de� � ZIeIjJ ZK G d� de� � ZL G d� ded�� � ZMdeFd eFfd!�ZNe
d"eOd d#fd$�� � ZPe
d"eOd d#fd%�� � ZQe
d&eOd'eOd(eeOdf d)eeOdf d*eOd+eeRdf d,eOd-eOd.eOd d#fd/�� � ZSd&eOd0eOd,eOd1eOd.eOd d#fd2�ZT e
eT� � ZUeN G d3� d#� � � � ZVd4ZWd5ZX e
eW� � d6eOd eOfd7�� � aY e
eW� � d*eOd eOfd8�� � aZ e
eX� � d*eOd9e[d eOfd:�� � a\eNdDd;�� � Z]eNd eLfd<�� � Z^eNeWeWeKeKeKd=�d>eeRdf d?eeRdf d@eeRdeIf dAeeRdeIf dBeeRdeIf d dfdC�� � Z_dS )E� N)�Mapping�Sequence)�Enum)�
_CacheInfo� lru_cache)�
ip_address)�
TYPE_CHECKING�Any�NoReturn� TypedDict�TypeVar�Union�overload)�SplitResult�
uses_relative)� MultiDict�MultiDictProxy)�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�P i� � )�http�https�ws�wss�ftpa<
# any character not in the unreserved or sub-delims sets, plus %
# (validated with the additional check for pct-encoded sequences below)
[^a-z0-9\-._~!$&'()*+,;=%]
|
# % only allowed if it is part of a pct-encoded
# sequence of 2 hex digits.
%(?![0-9a-f]{2})
�_T)� � )�Selfc � � e Zd ZdZdZdS )�
UndefinedTypez4Singleton type for use with not set sentinel values.r N)�__name__�
__module__�__qualname__�__doc__�
_singleton� � �Y/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/yarl/_url.pyr>