XlĔ d Z ddlmZ ddlZddlZddlZddlZddlZddlm Z ddl mZmZm Z ddlmZ ddlmZmZ ddlmZ erdd l mZ dd lmZ ddlmZ ddlmZ ej e Z ej d ZdZ ddZ! G d d Z"dS )z7 The httplib2 algorithms ported for use with requests. )annotationsN)parsedate_tz) TYPE_CHECKING CollectionMapping)CaseInsensitiveDict) DictCacheSeparateBodyBaseCache) Serializer)Literal)PreparedRequest)HTTPResponse) BaseCachez9^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?)- 4 uristrreturntuple[str, str, str, str, str]c t | }|J | }|d |d |d |d |d fS )zParses a URI using the regex given in Appendix B of RFC 3986. (scheme, authority, path, query, fragment) = parse_uri(uri) N )URImatchgroups)r r r s u/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/pip/_vendor/cachecontrol/controller.py parse_urir ' sQ IIcNNE \\^^F1Ivay&)VAYq BB c e Zd ZdZ d+d,dZed-d Zed-d Zd.dZd/dZ d0dZ d1dZ d2d3d&Z d2d4d)Z d5d*ZdS )6CacheControllerz4An interface to see if request should cached or not.NTcacheBaseCache | Nonecache_etagsbool serializerSerializer | Nonestatus_codesCollection[int] | Nonec ~ |t n|| _ || _ |p t | _ |pd| _ d S )N) i, r r )r r$ r&