§
    §	Êj)  ã                   óš   — d Z ddlZddlmZ ddlmZmZmZmZm	Z	m
Z
mZ ddlmZ ddlmZ dedefd	„Zedefd
„¦   «         Zdefd„Zg d¢ZdS )a�  
Caching and compatibility wrapper for standard library ``importlib.metadata``.

This module caches ``entry_points()`` to avoid reloading entry points from disk on every call.
It also normalizes minor differences across python versions 3.10+. References to issues:

- https://github.com/open-telemetry/opentelemetry-python/pull/4735
- https://github.com/open-telemetry/opentelemetry-python/pull/5203
é    N)Úcache)ÚDistributionÚ
EntryPointÚEntryPointsÚPackageNotFoundErrorÚdistributionsÚrequiresÚversion)Úentry_points)ÚAnyÚepsÚreturnc                 ó$  ‡ — t          ‰ t          ¦  «        r‰ S t          ‰ t          ¦  «        rDt          t          j                             t                               ‰ ¦  «        ¦  «        ¦  «        S t          ˆ fd„‰ j        D ¦   «         ¦  «        S )Nc              3   óN   •K  — | ]}‰                      |¬ ¦  «        D ]}|V — ŒŒ dS ))ÚgroupN)Úselect)Ú.0r   Úepr   s      €úVC:\Projects\Muse2API\.venv\Lib\site-packages\opentelemetry/util/_importlib_metadata.pyú	<genexpr>z#_as_entry_points.<locals>.<genexpr>(   s>   øè è € ÐTÐT˜e¸C¿JºJÈU¸JÑ<SÔ<SÐTÐT°b�rÐTÐTÐTÐTÐTÐTÐTó    )Ú
isinstancer   ÚdictÚ	itertoolsÚchainÚfrom_iterableÚvaluesÚgroups)r   s   `r   Ú_as_entry_pointsr      s~   ø€ å�#•{Ñ#Ô#ð Øˆ
õ
 �#•tÑÔð LÝ�9œ?×8Ò8½¿ºÀSÑ9IÔ9IÑJÔJÑKÔKÐKåÐTÐTÐTÐT s¤zÐTÑTÔTÑTÔTÐTr   c                  ó8   — t          t          ¦   «         ¦  «        S )N)r   Úoriginal_entry_points© r   r   Ú_original_entry_points_cachedr#   +   s   € åÕ1Ñ3Ô3Ñ4Ô4Ð4r   c                  ó4   —  t          ¦   «         j        di | ¤ŽS )Nr"   )r#   r   )Úparamss    r   r   r   0   s"   € Ø1Õ(Ñ*Ô*Ô1Ð;Ð;°FÐ;Ð;Ð;r   )r   r   r   r   r   r   r	   r
   )Ú__doc__r   Ú	functoolsr   Úimportlib.metadatar   r   r   r   r   r	   r
   r   r!   Útypingr   r   r#   Ú__all__r"   r   r   ú<module>r+      s/  ððð ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð EÐ DÐ DÐ DÐ DÐ DØ Ð Ð Ð Ð Ð ðU˜#ð U +ð Uð Uð Uð Uð ð5 {ð 5ð 5ð 5ñ „ð5ð<˜kð <ð <ð <ð <ð	ð 	ð 	€€€r   