/opt/alt/python312/lib/python3.12/site-packages/pip/_internal/utils/__pycache__
� �E��?N�� � � d Z ddlZddlZddlZddlZddlZddlZddlmZm Z m Z ddlmZ ddlm Z ddlmZmZmZmZ ddlmZ ej* e� Zeez Z ddlZeez Z ddlZeez Zd efd�Zded e e fd �Z dee d e!fd�Z"deded e!fd�Z#ded dfd�Z$ded e!fd�Z%ddedede!d dfd�Z&deded dfd�Z' ddedede e d dfd�Z(y# e$ r ej7 d� Y ��w xY w# e$ r ej7 d � Y ��w xY w)zUtilities related archives. � N)�Iterable�List�Optional)�ZipInfo)�InstallationError)�BZ2_EXTENSIONS�TAR_EXTENSIONS� XZ_EXTENSIONS�ZIP_EXTENSIONS)� ensure_dirzbz2 module is not availablezlzma module is not available�returnc �Z � t j d� } t j | � | S )zBGet the current umask which involves having to set it temporarily.r )�os�umask)�masks ��/builddir/build/BUILDROOT/alt-python312-pip-23.3.1-1.el9.x86_64/opt/alt/python312/lib/python3.12/site-packages/pip/_internal/utils/unpacking.py� current_umaskr + s � � �8�8�A�;�D��H�H�T�N��K� �pathc � � | j d� j d� } d| v r=d| v r#| j d� | j d� k sd| vr| j dd� S d| v r| j dd� S | dgS )N�/�\� � )�lstrip�find�split�r s r �split_leading_dirr 2 sz � ��;�;�s��"�"�4�(�D� �d�{� ���$�)�)�C�.�4�9�9�T�?�:�t�4�?O��z�z�#�q�!�!� ����z�z�$��"�"��b�z�r �pathsc �R � d}| D ] }t |� \ }}|s y|�|}�||k7 s� y y)zyReturns true if all the paths have the same leading path name (i.e., everything is in one subdirectory in an archive)NFT)r )r � common_prefixr �prefix�rests r �has_leading_dirr% >