§
    JŠtjë
  ã                  óN   — d dl mZ d dlZd dlmZ d dlmZ dgZdd„Z	 	 ddd„Z	dS )é    )ÚannotationsN)ÚIterable)ÚAnyÚlazy_importÚnameÚstrÚsourceÚ	namespaceúdict[str, Any]Úreturnr   c                óÒ   — d}||         dk    r.|dz  }|t          |¦  «        k     s
J d¦   «         ‚||         dk    °.t          ||d…         |d| g|¦  «        }t          || ¦  «        S )aN  
    Import ``name`` from ``source`` in ``namespace``.

    There are two use cases:

    - ``name`` is an object defined in ``source``;
    - ``name`` is a submodule of ``source``.

    Neither :func:`__import__` nor :func:`~importlib.import_module` does
    exactly this. :func:`__import__` is closer to the intended behavior.

    r   ú.é   z%importing from parent isn't supportedN)ÚlenÚ
__import__Úgetattr)r   r	   r
   ÚlevelÚmodules        úP/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/websockets/imports.pyÚimport_namer      sƒ   € ð €EØ
�Œ-˜3Ò
Ð
Ø�‰
ˆØ•s˜6‘{”{Ò"Ð"Ð"Ð$KÑ"Ô"Ð"ð �Œ-˜3Ò
Ð
õ ˜˜u˜v˜vœ¨	°4¸$¸ÀÑGÔG€FÝ�6˜4Ñ Ô Ð ó    Úaliasesúdict[str, str] | NoneÚdeprecated_aliasesÚNonec                ó  ‡ ‡‡‡‡‡‡— ‰€i Š‰€i Št          ‰ ¦  «        Št          ‰¦  «        Št          ‰¦  «        Š‰‰z  r
J d¦   «         ‚‰‰z  r
J d¦   «         ‚‰‰z  r
J d¦   «         ‚‰ d         Šdˆˆˆ ˆfd„}|‰ d	<   dˆˆˆfd„}|‰ d<   dS )a„  
    Provide lazy, module-level imports.

    Typical use::

        __getattr__, __dir__ = lazy_import(
            globals(),
            aliases={
                "<name>": "<source module>",
                ...
            },
            deprecated_aliases={
                ...,
            }
        )

    This function defines ``__getattr__`` and ``__dir__`` per :pep:`562`.

    Nznamespace conflictÚ__name__r   r   r   r   c                ó*  •— ‰€J ‚	 ‰|          }t          | |‰¦  «        S # t          $ r Y nw xY w‰€J ‚	 ‰|          }t          j        ‰› d| › d�t          d¬¦  «         t          | |‰¦  «        S # t          $ r Y nw xY wt          d‰›d| ›�¦  «        ‚)Nr   z is deprecatedé   )Ú
stacklevelzmodule z has no attribute )r   ÚKeyErrorÚwarningsÚwarnÚDeprecationWarningÚAttributeError)r   r	   r   r   r
   Úpackages     €€€€r   Ú__getattr__z lazy_import.<locals>.__getattr__G   sü   ø€ ØÐ"Ð"Ð"ð	8Ø˜T”]ˆFõ ˜t V¨YÑ7Ô7Ð7øõ ð 	ð 	ð 	ØˆDð	øøøð
 "Ð-Ð-Ð-ð
	8Ø'¨Ô-ˆFõ ŒMØÐ1Ð1˜TÐ1Ð1Ð1Ý"Øðñ ô ð õ
 ˜t V¨YÑ7Ô7Ð7øõ ð 	ð 	ð 	ØˆDð	øøøõ ÐL wÐLÐLÀDÐLÐLÑMÔMÐMs   ‡   
-¬-µA0 Á0
A=Á<A=r'   úIterable[str]c                 ó.   •— t          ‰‰ z  ‰z  ¦  «        S )N)Úsorted)Úaliases_setÚdeprecated_aliases_setÚnamespace_sets   €€€r   Ú__dir__zlazy_import.<locals>.__dir__a   s   ø€ Ý�m kÑ1Ð4JÑJÑKÔKÐKr   r.   )r   r   r   r   )r   r(   )Úset)	r
   r   r   r'   r.   r+   r,   r-   r&   s	   ```  @@@@r   r   r       s$  øøøøøøø€ ð0 €ØˆØÐ!ØÐå˜	‘N”N€MÝ�g‘,”,€KÝ Ð!3Ñ4Ô4Ðà˜{Ñ*Ð@Ð@Ð,@Ñ@Ô@Ð*ØÐ5Ñ5ÐKÐKÐ7KÑKÔKÐ5ØÐ3Ñ3ÐIÐIÐ5IÑIÔIÐ3à˜
Ô#€GðNð Nð Nð Nð Nð Nð Nð Nð Nð0  +€IˆmÑðLð Lð Lð Lð Lð Lð Lð Lð #€IˆiÑÐÐr   )r   r   r	   r   r
   r   r   r   )NN)r
   r   r   r   r   r   r   r   )
Ú
__future__r   r"   Úcollections.abcr   Útypingr   Ú__all__r   r   © r   r   ú<module>r5      s“   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð ð ˆ/€ð!ð !ð !ð !ð. &*Ø04ðD#ð D#ð D#ð D#ð D#ð D#ð D#r   