Ë
    Kêj·  ã                  óä   — d dl mZ d dlZd dlZd dlZd dlmZmZ d dlm	Z	  ej                  e«      Z ej                  d¬«      	 	 	 	 	 	 dd„«       Z ej                  d¬«      dd	„«       Zdd
„Zy)é    )ÚannotationsN)Ú
specifiersÚversion©ÚRequirementé    )Úmaxsizec                óž   — | €yt        j                  | «      }t        j                  dj	                  t        t        |«      «      «      }||v S )a˜  
    Check if the given Python version matches a "Requires-Python" specifier.

    :param version_info: A 3-tuple of ints representing a Python
        major-minor-micro version to check (e.g. `sys.version_info[:3]`).

    :return: `True` if the given Python version satisfies the requirement.
        Otherwise, return `False`.

    :raises InvalidSpecifier: If `requires_python` has an invalid format.
    Tú.)r   ÚSpecifierSetr   ÚparseÚjoinÚmapÚstr)Úrequires_pythonÚversion_infoÚrequires_python_specifierÚpython_versions       úb/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/pip/_internal/utils/packaging.pyÚcheck_requires_pythonr      sH   € ð ÐàÜ *× 7Ñ 7¸Ó HÐä—]‘] 3§8¡8¬C´°\Ó,BÓ#CÓD€NØÐ6Ð6Ð6ó    i'  c                ó   — t        | «      S )z5Construct a packaging.Requirement object with cachingr   )Ú
req_strings    r   Úget_requirementr   %   s   € ô �zÓ"Ð"r   c                ó>   — t        j                   | «      }d|_        |S )zÏReturn a copy of ``req`` with its environment marker removed.

    Intended for error messages. The original is left unchanged, which
    matters because ``get_requirement`` caches and shares instances.
    N)ÚcopyÚmarker)ÚreqÚstrippeds     r   Úrequirement_without_markerr    0   s   € ô �y‰y˜‹~€HØ€H„OØ€Or   )r   z
str | Noner   ztuple[int, ...]ÚreturnÚbool)r   r   r!   r   )r   r   r!   r   )Ú
__future__r   r   Ú	functoolsÚloggingÚpip._vendor.packagingr   r   Ú"pip._vendor.packaging.requirementsr   Ú	getLoggerÚ__name__ÚloggerÚ	lru_cacher   r   r    © r   r   ú<module>r-      sˆ   ðÝ "ã Û Û ç 5Ý :à	ˆ×	Ñ	˜8Ó	$€ð €×Ñ˜RÔ ð7Øð7Ø/>ð7à	ò7ó !ð7ð. €×Ñ˜UÔ#ò#ó $ð#ôr   