� !A?hK ��X�ddlZddlZddlZddlZddlZddlZddlZddlmZm Z ddl m Z m Z ddl mZeejefZd�Zd�Zd�Zd �Zd �Zejdejd �d ���Zejd���Ze�ej��ejd�����ZdS)�N)�Union�Optional�)�ResourceReader� Traversable)� wrap_specc�:�tt|����S)z3 Get a Traversable resource from a package )� from_package� get_package)�packages �H/opt/alt/python-internal/lib64/python3.11/importlib/resources/_common.py�filesrs�� � �G�,�,� -� -�-�c�d�|j}t|jdd��}|�dS||j��S)z? Return the package's loader if it's a ResourceReader. �get_resource_readerN)�__spec__�getattr�loader�name�r �spec�readers r rrs<�� � �D� �T�[�"7�� >� >�F� �~��t� �6�$�)� � �rc�b�t|tj��r|ntj|��S)N)� isinstance�types� ModuleType� importlib� import_module)�cands r �resolver *s*���d�E�$4�5�5� X�4�4�9�;R�SW�;X�;X�Xrc�p�t|��}t|��j�t|�d����|S)z�Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. Nz is not a package)r r�submodule_search_locations� TypeError)r �resolveds r r r /s>�� �w���H�����5�=��7�7�7�7�8�8�8� �Orc��t|��}|j�|j��}|���S)z= Return a Traversable object for the given package. )rrrrrrs r r r ;s6�� �W� � �D� �[� ,� ,�T�Y� 7� 7�F� �<�<�>�>�r�)� _os_removec#�~K�tj|���\}} tj||����tj|��n#tj|��wxYw~t j|��V� ||��dS#t$rYdSwxYw# ||��w#t$rYwwxYwxYw)N��suffix)�tempfile�mkstemp�os�write�close�pathlib�Path�FileNotFoundError)rr*r'�fd�raw_paths r � _tempfiler5Es������#�6�2�2�2�L�B�� � � �H�R����� "� "� "� �H�R�L�L�L�L��B�H�R�L�L�L�L���� ��l�8�$�$�$�$�$� � �J�x� � � � � �� � � � � �D�D� ����� � �J�x� � � � �� � � � � �D� ������sR�A�B�A%�%B� B � B�B�B<� B,�+B<�, B9�6B<�8B9�9B<c�8�t|j|j���S)zu Given a Traversable object, return that object as a path on the local file system in a context manager. r))r5� read_bytesr��paths r �as_filer:\s�� �T�_�T�Y� 7� 7� 7�7rc#�K�|V�dS)z7 Degenerate behavior for pathlib.Path objects. N�r8s r �_r=es���� �J�J�J�J�Jr)r&)r-r0r+� functools� contextlibrr�typingrr�abcrr� _adaptersrr�str�Packagerrr r r �contextmanager�remover5�singledispatchr:�registerr1r=r<rr �rIs��� � � � ����������������� � � � �����"�"�"�"�"�"�"�"�,�,�,�,�,�,�,�,� � � � � � � �� �#�%� &��.�.�.����"Y�Y�Y� � � ���� ����I��������, ��8�8���8� ���'�,��� ������ ����r