
    q"h[                     P   S SK r S SKrS SKrS SKrS SKJrJrJrJrJ	r	J
r
  S SKJr  S SKJr  SSKJrJrJrJrJr  / SQrS\4S	 jrSS
 jr " S S\5      r\R4                  " SS9S\4S j5       rS\4S jrS\\\      S\4S jrS\S\4S jrS\S\S\4S jr S\!S\S\S\4S jr"g)    N)ListLiteralOptionalProtocolTypecast)
deprecated)	strtobool   )BaseDistributionBaseEnvironmentFilesystemWheelMemoryWheelWheel)	r   r   r   r   r   get_default_environmentget_environmentget_wheel_distributionselect_backendreturnc                  \   [         R                  S:  a  g[        R                  " [        [
        5         [        [        [        R                  S   5      5      sSSS5        $ ! , (       d  f       O= f[         R                  S:  a  gSSK
n [        [        U R                  SS5      5      $ )a  Whether to use the ``importlib.metadata`` or ``pkg_resources`` backend.

By default, pip uses ``importlib.metadata`` on Python 3.11+, and
``pkg_resources`` otherwise. Up to Python 3.13, This can be
overridden by a couple of ways:

* If environment variable ``_PIP_USE_IMPORTLIB_METADATA`` is set, it
  dictates whether ``importlib.metadata`` is used, for Python <3.14.
* On Python 3.11, 3.12 and 3.13, Python distributors can patch
  ``importlib.metadata`` to add a global constant
  ``_PIP_USE_IMPORTLIB_METADATA = False``. This makes pip use
  ``pkg_resources`` (unless the user set the aforementioned environment
  variable to *True*).

On Python 3.14+, the ``pkg_resources`` backend cannot be used.
)      T_PIP_USE_IMPORTLIB_METADATANr      Fr   )sysversion_info
contextlibsuppressKeyError
ValueErrorboolr
   osenvironimportlib.metadatagetattrmetadata	importlibs    Q/var/www/html/env/lib/python3.13/site-packages/pip/_internal/metadata/__init__.py_should_use_importlib_metadatar+      s{    " 7"			Xz	2Ibjj)FGHI 
3	2	2 '! 	**,I4PQQs   %A$$
A2c                      [         R                  S:  a  g SS Kn [        U R                  S5      (       a  g [        SSSSS9  g )	Nr   r   r   z7Using the pkg_resources metadata backend is deprecated.zpto use the default importlib.metadata backend, by unsetting the _PIP_USE_IMPORTLIB_METADATA environment variablez26.3i4  )reasonreplacementgone_inissue)r   r   r%   hasattrr'   r	   r(   s    r*   )_emit_pkg_resources_deprecation_if_neededr2   :   sL    
'! 	y!!#@AA 	 HP     c                   @    \ rS rSr% S\S'   \\   \S'   \\   \S'   Srg)BackendS   z%Literal["importlib", "pkg_resources"]NAMEDistributionEnvironment N)	__name__
__module____qualname____firstlineno____annotations__r   r   r   __static_attributes__r:   r3   r*   r5   r5   S   s    
11'((o&&r3   r5   )maxsizec                      [        5       (       a  SSKJn   [        [        U 5      $ [        5         SSKJn  [        [        U5      $ )Nr   r(   )pkg_resources)r+    r)   r   r5   r2   rC   )r)   rC   s     r*   r   r   Y   s1    %''GY''-/''r3   c                  F    [        5       R                  R                  5       $ )zGet the default representation for the current environment.

This returns an Environment instance from the chosen backend. The default
Environment instance should be built from ``sys.path`` and may use caching
to share instance state across calls.
)r   r9   defaultr:   r3   r*   r   r   g   s     ''//11r3   pathsc                 H    [        5       R                  R                  U 5      $ )a  Get a representation of the environment specified by ``paths``.

This returns an Environment instance from the chosen backend based on the
given import paths. The backend must build a fresh instance representing
the state of installed distributions when this function is called.
)r   r9   
from_paths)rG   s    r*   r   r   q   s     ''22599r3   	directoryc                 H    [        5       R                  R                  U 5      $ )zGet the distribution metadata representation in the specified directory.

This returns a Distribution instance from the chosen backend based on
the given on-disk ``.dist-info`` directory.
)r   r8   from_directory)rJ   s    r*   get_directory_distributionrM   {   s     ((77	BBr3   wheelcanonical_namec                 H    [        5       R                  R                  X5      $ )zGet the representation of the specified wheel's distribution metadata.

This returns a Distribution instance from the chosen backend based on
the given wheel's ``.dist-info`` directory.

:param canonical_name: Normalized project name of the given wheel.
)r   r8   
from_wheel)rN   rO   s     r*   r   r      s     ((33EJJr3   metadata_contentsfilenamec                 L    [        5       R                  R                  U UU5      $ )a  Get the dist representation of the specified METADATA file contents.

This returns a Distribution instance from the chosen backend sourced from the data
in `metadata_contents`.

:param metadata_contents: Contents of a METADATA file within a dist, or one served
                          via PEP 658.
:param filename: Filename for the dist this metadata represents.
:param canonical_name: Normalized project name of the given dist.
)r   r8   from_metadata_file_contents)rR   rS   rO   s      r*   get_metadata_distributionrV      s)     ((DD r3   )r   N)#r   	functoolsr#   r   typingr   r   r   r   r   r   pip._internal.utils.deprecationr	   pip._internal.utils.miscr
   baser   r   r   r   r   __all__r"   r+   r2   r5   	lru_cacher   r   strr   rM   r   bytesrV   r:   r3   r*   <module>r`      s      	 
 @ @ 6 . X X
R RB2'h ' T"
( 
( #
(2 2:8DI. :? :C# C2B CK% K KAQ K  	r3   