+
    NjI                     J    ^ RI HtHt ^RIHtHt R R ltR R ltR R ltR	# )
    )AnyUnion)decodeencodec                0    V ^8  d   QhR\         R\        /#    labelreturn)strbytes)formats   "M/data/cameron/venvs/serve_omidlab/lib/python3.14/site-packages/idna/compat.py__annotate__r      s     
 
3 
5 
    c                    \        V 4      # )aK  Compatibility shim for :rfc:`3490` ``ToASCII``.

Delegates to :func:`idna.encode` (IDNA 2008). Provided to ease porting
of code written against the legacy :mod:`encodings.idna` API; new code
should call :func:`idna.encode` directly.

:param label: The label or domain to encode.
:returns: The encoded form as ASCII :class:`bytes`.
)r   r
   s   &r   ToASCIIr           %=r   c                R    V ^8  d   QhR\         \        \        3,          R\        /# r   )r   r   	bytearrayr   )r   s   "r   r   r      s$     
 
U5)+, 
 
r   c                    \        V 4      # )a=  Compatibility shim for :rfc:`3490` ``ToUnicode``.

Delegates to :func:`idna.decode` (IDNA 2008). Provided to ease porting
of code written against the legacy :mod:`encodings.idna` API; new code
should call :func:`idna.decode` directly.

:param label: The label or domain to decode.
:returns: The decoded Unicode form.
)r   r   s   &r   	ToUnicoder      r   r   c                (    V ^8  d   QhR\         RR/# )r	   sr   N)r   )r   s   "r   r   r       s     	N 	N 	N 	Nr   c                    \        R4      h)a   Stub for :rfc:`3491` Nameprep, which is not used by IDNA 2008.

IDNA 2008 (:rfc:`5891`) replaces Nameprep with the per-codepoint
validity classes from :rfc:`5892`; this function exists only to
return a clear error if legacy code attempts to call it.

:raises NotImplementedError: Always.
z,IDNA 2008 does not utilise nameprep protocol)NotImplementedError)r   s   &r   nameprepr       s     L
MMr   N)	typingr   r   corer   r   r   r   r    r   r   <module>r"      s      

	Nr   