+
    Žf©jl  ã                  ó¬  a € 0 t $ ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
Ht ^ RIHtHt ^ RIHt ^RIHtHtHt ]P*                  ! ]4      t]! ]P2                  ! 4       4      t]! ]RR4      tR	]R
&   R R ltR R ltR R lt R R lt!. ROt"]PF                  ! R4      e   ]"PI                  R4       RR R llt%R R lt&R R lt'R R lt(R# )é    )ÚannotationsN)ÚCallable)ÚInvalidSchemeCombinationÚUserInstallationInvalid)ÚSCHEME_KEYSÚScheme)Úrunning_under_virtualenv)Úchange_rootÚget_major_minor_versionÚis_osx_frameworkÚget_preferred_schemezCallable[[str], str] | NoneÚ_PREFERRED_SCHEME_APIc               ó   € V ^8„  d   QhRR/# )é   ÚreturnÚbool© )Úformats   "Ú]/var/www/html/bestweb/venv/lib/python3.14/site-packages/pip/_internal/locations/_sysconfig.pyÚ__annotate__r   !   s   € ÷ ñ ¨$ñ ó    c                 óf   € R\         9   ;'       d"    \        4       '       * ;'       d    \        4       # )ax  Check for Apple's ``osx_framework_library`` scheme.

Python distributed by Apple's Command Line Tools has this special scheme
that's used when:

* This is a framework build.
* We are installing into the system prefix.

This does not account for ``pip install --prefix`` (also means we're not
installing to the system prefix), which should use ``posix_prefix``, but
logic here means ``_infer_prefix()`` outputs ``osx_framework_library``. But
since ``prefix`` is not available for ``sysconfig.get_default_scheme()``,
which is the stdlib replacement for ``_infer_prefix()``, presumably Apple
wouldn't be able to magically switch between ``osx_framework_library`` and
``posix_prefix``. ``_infer_prefix()`` returning ``osx_framework_library``
means its behavior is consistent whether we use the stdlib implementation
or our own, and we deal with this special case in ``get_scheme()`` instead.
Úosx_framework_library)Ú_AVAILABLE_SCHEMESr	   r   r   r   r   Ú _should_use_osx_framework_prefixr   !   s5   € ð( 	 Ô#5Ñ5÷ 	ð 	Ü(Ó*Ô*÷	ð 	äÓðr   c               ó   € V ^8„  d   QhRR/# ©r   r   Ústrr   )r   s   "r   r   r   ;   s   € ÷ ñ �sñ r   c                 óØ  € \         '       d   \        R4      # \        4       '       d   R# \        P                  P                   R\
        P                   2p V \        9   d   V # \        P                  P                  \        9   d   \        P                  P                  # \
        P                   R2pV\        9   d   V# \
        P                  \        9   d   \
        P                  # R# )aý  Try to find a prefix scheme for the current platform.

This tries:

* A special ``osx_framework_library`` for Python distributed by Apple's
  Command Line Tools, when not running in a virtual environment.
* Implementation + OS, used by PyPy on Windows (``pypy_nt``).
* Implementation without OS, used by PyPy on POSIX (``pypy``).
* OS + "prefix", used by CPython on POSIX (``posix_prefix``).
* Just the OS name, used by CPython on Windows (``nt``).

If none of the above works, fall back to ``posix_prefix``.
Úprefixr   Ú_Ú_prefixÚposix_prefix)r   r   ÚsysÚimplementationÚnameÚosr   )Úimplementation_suffixedÚsuffixeds     r   Ú_infer_prefixr*   ;   s°   € ÷ ÓÜ$ XÓ.Ð.Ü'×)Ò)Ù&Ü!$×!3Ñ!3×!8Ñ!8Ð 9¸¼2¿7¹7¸)ÐDÐØÔ"4Ô4Ø&Ð&Ü
×Ñ×ÑÔ"4Ô4Ü×!Ñ!×&Ñ&Ð&Ü—'‘'�˜'Ð"€HØÔ%Ô%ØˆÜ	‡w�wÔ$Ô$Ü�w‰wˆÙr   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   Z   s   € ÷ ñ �Sñ r   c                 óä   € \         '       d   \        R4      # \        4       '       d   \        4       '       g   Rp M\        P                   R2p V \
        9   d   V # R\
        9  d   \        4       hR# )z3Try to find a user scheme for the current platform.ÚuserÚosx_framework_userÚ_userÚ
posix_user)r   r   r	   r'   r&   r   r   ©r)   s    r   Ú_infer_userr2   Z   s]   € çÓÜ$ VÓ,Ð,Ü×ÒÔ":×"<Ò"<Ø'‰ä—g‘g�Y˜eÐ$ˆØÔ%Ô%ØˆØÔ-Ô-Ü%Ó'Ð'Ùr   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   i   s   € ÷ ñ �Sñ r   c                 ót   € \         '       d   \        R4      # \        P                   R2p V \        9   d   V # R# )z,Try to find a home for the current platform.ÚhomeÚ_homeÚ
posix_home)r   r'   r&   r   r1   s    r   Ú_infer_homer8   i   s4   € çÓÜ$ VÓ,Ð,Ü—'‘'�˜%Ð €HØÔ%Ô%ØˆÙr   Úuserbasec               ó4   € V ^8„  d   QhRRRRRRRRRRR	RR
R/# )r   Ú	dist_namer   r-   r   r5   z
str | NoneÚrootÚisolatedr    r   r   r   )r   s   "r   r   r   €   sW   € ÷ Kñ KØðKà
ðKð ðKð ð	Kð
 ðKð ðKð ñKr   c                óÎ  € V'       d   V'       d   \        RR4      hV'       d   V'       d   \        RR4      hVe   \        4       pMV'       d   \        4       pM
\        4       pVe
   VR8X  d   RpVe   \         Uu/ uF  qwVbK  	  ppMVe   \         Uu/ uF  qwVbK  	  ppM/ p\
        P                  ! WhR7      p	\        4       '       d}   V'       d"   VP                  R\        P                  4      p
M VP                  R\        P                  4      p
R	\        4        2p\        P                  P                  V
R
RV4      V	R
&   M
V '       g   Rp \        V	R,          V	R,          \        P                  P                  V	R
,          V 4      V	R,          V	R,          R7      pVe2   / p\          F  p\#        V\%        WÎ4      4      WÞ&   K  	  \        R/ VB pV# u upi u upi )a0  
Get the "scheme" corresponding to the input parameters.

:param dist_name: the name of the package to retrieve the scheme for, used
    in the headers scheme path
:param user: indicates to use the "user" scheme
:param home: indicates to use the "home" scheme
:param root: root under which other directories are re-based
:param isolated: ignored, but kept for distutils compatibility (where
    this controls whether the user-site pydistutils.cfg is honored)
:param prefix: indicates to use the "prefix" scheme and provides the
    base directory for the same
z--userz--prefixz--homer   r#   )ÚschemeÚvarsr9   ÚbaseÚpythonÚincludeÚsiteÚUNKNOWNÚplatlibÚpurelibÚscriptsÚdata)rF   rG   ÚheadersrH   rI   r   )r   r8   r2   r*   Ú
_HOME_KEYSÚ	sysconfigÚ	get_pathsr	   Úgetr$   r    r   r'   ÚpathÚjoinr   r   r
   Úgetattr)r;   r-   r5   r<   r=   r    Úscheme_nameÚkÚ	variablesÚpathsrA   Ú	python_xyr?   Úconverted_keysÚkeys   &&&&&&         r   Ú
get_schemerY   €   sž  € ÷* —Ü& x°Ó<Ð<ß—Ü& x°Ó<Ð<àÒÜ!“m‰ß	Ü!“m‰ä#“oˆð
 Ò˜kÐ-DÔDØ$ˆàÒÝ&0Ó1¡j ˜’W¡jˆ	Ð1ˆ	Ø	Ò	Ý(2Ó3©
 1˜’Y©
ˆ	Ð3ˆ	àˆ	ä×Ò {ÔC€Eô  ×!Ò!ßØ—=‘= ¬S¯Z©ZÓ8‰Dà—=‘= ¬¯©Ó4ˆDØÔ4Ó6Ð7Ð8ˆ	ÜŸ7™7Ÿ<™<¨¨i¸ÀÓKˆˆiÒßØˆ	äØ�iÕ Ø�iÕ Ü—‘—‘˜U 9Õ-¨yÓ9Ø�iÕ Ø�6�]ô€Fð ÒØˆßˆCÜ"-¨d´G¸FÓ4HÓ"IˆNÓñ äÑ)˜.Ñ)ˆØ€MùòG 2ùâ3s   Á>GÂG"c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   Î   s   € ÷ ,ñ ,˜ñ ,r   c                 ó®   € \         P                  R ,          R8X  d   \         P                  R,          R8X  d   R# \        P                  ! 4       R,          # ):Né   NÚdarwin:Né   Nz/System/Library/z/usr/local/binrH   )r$   Úplatformr    rL   rM   r   r   r   Úget_bin_prefixr`   Î   s:   € ä
‡|�|�BÕ˜8Ô#¬¯
©
°3­Ð;MÔ(MÙÜ×ÒÓ  Õ+Ð+r   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   Õ   ó   € ÷ ,ñ ,�Sñ ,r   c                 ó:   € \         P                  ! 4       R ,          # )rG   ©rL   rM   r   r   r   Úget_purelibre   Õ   ó   € Ü×ÒÓ  Õ+Ð+r   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   Ù   rb   r   c                 ó:   € \         P                  ! 4       R ,          # )rF   rd   r   r   r   Úget_platlibri   Ù   rf   r   )Úinstalled_baserA   Úinstalled_platbaseÚplatbaser    Úexec_prefix)FNNFN))Ú__conditional_annotations__Ú
__future__r   Úloggingr'   r$   rL   Úcollections.abcr   Úpip._internal.exceptionsr   r   Úpip._internal.models.schemer   r   Úpip._internal.utils.virtualenvr	   rA   r
   r   r   Ú	getLoggerÚ__name__ÚloggerÚsetÚget_scheme_namesr   rQ   r   Ú__annotations__r   r*   r2   r8   rK   Úget_config_varÚappendrY   r`   re   ri   )rn   s   @r   Ú<module>r}      s½   øðß "Ð "ã Û 	Û 
Û Ý $ç Vß ;Ý Cç HÑ Hà	×	Ò	˜8Ó	$€ñ ˜×3Ò3Ó5Ó6Ð á5<ØÐ% tó6Ð Ð2ó õ
õ4õ>õò€
ð ×Ò˜JÓ'Ò3Ø×Ñ�jÔ!÷Kõ\,õ,÷,r   