Ë
    V.jL5  ã                  óD  — d dl mZ d dlmZ d dlZd dlZ	 ddlm	Z	 ej                  rd dlZ G d„ dej                  «      Z G d„ dej                  «      Zdd
„Zdd„Zdd„Z G d„ d	e«      Z G d„ dej.                  «      Z G d„ d«      Zdd„Zy# e
$ r	 ddlm	Z	 Y Œ‚w xY w)é    )ÚannotationsNé   )Ú_escape_innerc                  ó   — e Zd Zdd„Zy)Ú_HasHTMLc                ó   — y ©N© ©Úselfs    úUC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\markupsafe/__init__.pyÚ__html__z_HasHTML.__html__   s   €  #ó    N©ÚreturnÚstr)Ú__name__Ú
__module__Ú__qualname__r   r
   r   r   r   r      s   „ Ü%r   r   c                  ó   — e Zd Zdd„Zy)Ú	_TPEscapec                ó   — y r	   r
   )r   Úss     r   Ú__call__z_TPEscape.__call__   s   € ¨sr   N©r   út.Anyr   ÚMarkup)r   r   r   r   r
   r   r   r   r      s   „ Ü2r   r   r   c               óÐ   — t        | «      t        u rt        t        | «      «      S t	        | d«      rt        | j                  «       «      S t        t        t        | «      «      «      S )a¾  Replace the characters ``&``, ``<``, ``>``, ``'``, and ``"`` in
    the string with HTML-safe sequences. Use this if you need to display
    text that might contain such characters in HTML.

    If the object has an ``__html__`` method, it is called and the
    return value is assumed to already be safe for HTML.

    :param s: An object to be converted to a string and escaped.
    :return: A :class:`Markup` string with the escaped text.
    r   )Útyper   r   r   Úhasattrr   ©r   s    r   Úescaper"      sN   € ô ˆAƒw”#�~Ü”m AÓ&Ó'Ð'äˆq�*ÔÜ�a—j‘j“lÓ#Ð#ä”-¤ A£Ó'Ó(Ð(r   c               ó0   — | €
t        «       S t        | «      S )a  Like :func:`escape` but treats ``None`` as the empty string.
    Useful with optional values, as otherwise you get the string
    ``'None'`` when the value is ``None``.

    >>> escape(None)
    Markup('None')
    >>> escape_silent(None)
    Markup('')
    )r   r"   r!   s    r   Úescape_silentr$   0   s   € ð 	€yÜ‹xˆä�!‹9Ðr   c               ó<   — t        | t        «      st        | «      S | S )a¨  Convert an object to a string if it isn't already. This preserves
    a :class:`Markup` string rather than converting it back to a basic
    string, so it will still be marked as safe and won't be escaped
    again.

    >>> value = escape("<User 1>")
    >>> value
    Markup('&lt;User 1&gt;')
    >>> escape(str(value))
    Markup('&amp;lt;User 1&amp;gt;')
    >>> escape(soft_str(value))
    Markup('&lt;User 1&gt;')
    )Ú
isinstancer   r!   s    r   Úsoft_strr'   @   s   € ô �aœÔÜ�1‹vˆà€Hr   c                  ó2  ‡ — e Zd ZdZdZ	 d*	 	 	 	 	 	 	 d+ˆ fd„Zd,d„Zd-ˆ fd„Zd-d„Zd.ˆ fd„Z	d.ˆ fd„Z
d/ˆ fd	„Zd0ˆ fd
„Zd1ˆ fd„Z	 d2	 	 	 	 	 d3ˆ fd„Z	 d2	 	 	 	 	 d3ˆ fd„Z	 d4	 	 	 d5ˆ fd„Zd0d„Zd0d„Zed6d„«       Zd7ˆ fd„Zd,ˆ fd„Zd,ˆ fd„Zd,ˆ fd„Zd,ˆ fd„Zd8d9ˆ fd„Zd:d;ˆ fd„Zd:d;ˆ fd„Zd<d=ˆ fd„Zd<d=ˆ fd„Zd:d;ˆ fd„Zd<d=ˆ fd„Z 	 	 	 	 d>ˆ fd„Z!d?d@ˆ fd„Z"d,ˆ fd „Z#dAˆ fd!„Z$d,ˆ fd"„Z%dBˆ fd#„Z&dCˆ fd$„Z'dDˆ fd%„Z(dDˆ fd&„Z)dEd'„Z*	 	 	 	 dFd(„Z+dGd)„Z,ˆ xZ-S )Hr   a®  A string that is ready to be safely inserted into an HTML or XML
    document, either because it was escaped or because it was marked
    safe.

    Passing an object to the constructor converts it to text and wraps
    it to mark it safe without escaping. To escape the text, use the
    :meth:`escape` class method instead.

    >>> Markup("Hello, <em>World</em>!")
    Markup('Hello, <em>World</em>!')
    >>> Markup(42)
    Markup('42')
    >>> Markup.escape("Hello, <em>World</em>!")
    Markup('Hello &lt;em&gt;World&lt;/em&gt;!')

    This implements the ``__html__()`` interface that some frameworks
    use. Passing an object that implements ``__html__()`` will wrap the
    output of that method, marking it safe.

    >>> class Foo:
    ...     def __html__(self):
    ...         return '<a href="/foo">foo</a>'
    ...
    >>> Markup(Foo())
    Markup('<a href="/foo">foo</a>')

    This is a subclass of :class:`str`. It has the same methods, but
    escapes their arguments and returns a ``Markup`` instance.

    >>> Markup("<em>%s</em>") % ("foo & bar",)
    Markup('<em>foo &amp; bar</em>')
    >>> Markup("<em>Hello</em> ") + "<foo>"
    Markup('<em>Hello</em> &lt;foo&gt;')
    r
   c                ó„   •— t        |d«      r|j                  «       }|€t        ‰| �  | |«      S t        ‰| �  | |||«      S ©Nr   )r    r   ÚsuperÚ__new__)ÚclsÚobjectÚencodingÚerrorsÚ	__class__s       €r   r,   zMarkup.__new__z   sG   ø€ ô �6˜:Ô&Ø—_‘_Ó&ˆFàÐÜ‘7‘? 3¨Ó/Ð/ä‰w‰˜s F¨H°fÓ=Ð=r   c               ó   — | S r	   r
   r   s    r   r   zMarkup.__html__…   s   € Øˆr   c               ó¢   •— t        |t        «      st        |d«      r-| j                  t        ‰| �  | j                  |«      «      «      S t        S r*   )r&   r   r    r1   r+   Ú__add__r"   ÚNotImplemented©r   Úvaluer1   s     €r   r4   zMarkup.__add__ˆ   s=   ø€ Ü�eœSÔ!¤W¨U°JÔ%?Ø—>‘>¤%¡'¡/°$·+±+¸eÓ2DÓ"EÓFÐFäÐr   c               ó†   — t        |t        «      st        |d«      r | j                  |«      j	                  | «      S t
        S r*   )r&   r   r    r"   r4   r5   )r   r7   s     r   Ú__radd__zMarkup.__radd__Ž   s5   € Ü�eœSÔ!¤W¨U°JÔ%?Ø—;‘;˜uÓ%×-Ñ-¨dÓ3Ð3äÐr   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   ©r1   r+   Ú__mul__r6   s     €r   r<   zMarkup.__mul__”   ó   ø€ Ø�~‰~œe™g™o¨eÓ4Ó5Ð5r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   r;   r6   s     €r   Ú__rmul__zMarkup.__rmul__—   r=   r   c               ó2  •‡ — t        |t        «      rt        ˆ fd„|D «       «      }nSt        t        |«      d«      r't        |t        «      st        |‰ j                  «      }nt        |‰ j                  «      f}‰ j                  t        ‰‰ �%  |«      «      S )Nc              3  óJ   •K  — | ]  }t        |‰j                  «      –— Œ y ­wr	   )Ú_MarkupEscapeHelperr"   )Ú.0Úxr   s     €r   Ú	<genexpr>z!Markup.__mod__.<locals>.<genexpr>�   s   øè ø€ ÐMÁuÀ!Ô-¨a°·±×=Áuùs   ƒ #Ú__getitem__)
r&   Útupler    r   r   rB   r"   r1   r+   Ú__mod__r6   s   ` €r   rH   zMarkup.__mod__š   sq   ù€ Ü�eœUÔ#äÓMÁuÓMÓM‰EÜ”T˜%“[ -Ô0¼ÀEÌ3Ô9Oä'¨¨t¯{©{Ó;‰Eô )¨°·±Ó<Ð>ˆEà�~‰~œe™g™o¨eÓ4Ó5Ð5r   c               óT   •— | j                   j                  › dt        ‰| �  «       › d�S )NÚ(Ú))r1   r   r+   Ú__repr__©r   r1   s    €r   rL   zMarkup.__repr__§   s*   ø€ Ø—.‘.×)Ñ)Ð*¨!¬E©GÑ,<Ó,>Ð+?¸qÐAÐAr   c               óh   •— | j                  t        ‰| �	  t        | j                  |«      «      «      S r	   )r1   r+   ÚjoinÚmapr"   )r   Úiterabler1   s     €r   rO   zMarkup.joinª   s&   ø€ Ø�~‰~œe™g™l¬3¨t¯{©{¸HÓ+EÓFÓGÐGr   c               óh   •— t         ‰| �  ||«      D �cg c]  }| j                  |«      ‘Œ c}S c c}w r	   )r+   Úsplitr1   ©r   ÚsepÚmaxsplitÚvr1   s       €r   rS   zMarkup.split­   s3   ø€ ô ,1©7©=¸¸hÔ+GÓHÑ+G a�—‘˜qÕ!Ð+GÑHÐHùÒHó   ”/c               óh   •— t         ‰| �  ||«      D �cg c]  }| j                  |«      ‘Œ c}S c c}w r	   )r+   Úrsplitr1   rT   s       €r   rZ   zMarkup.rsplit²   s3   ø€ ô ,1©7©>¸#¸xÔ+HÓIÑ+H a�—‘˜qÕ!Ð+HÑIÐIùÒIrX   c               óf   •— t         ‰| �  |«      D �cg c]  }| j                  |«      ‘Œ c}S c c}w r	   )r+   Ú
splitlinesr1   )r   ÚkeependsrW   r1   s      €r   r\   zMarkup.splitlines·   s2   ø€ ô ,1©7Ñ+=¸hÔ+GÓHÑ+G a�—‘˜qÕ!Ð+GÑHÐHùÒHs   “.c               ó0   — ddl m}  |t        | «      «      S )uß   Convert escaped markup back into a text string. This replaces
        HTML entities with the characters they represent.

        >>> Markup("Main &raquo; <em>About</em>").unescape()
        'Main Â» <em>About</em>'
        r   )Úunescape)Úhtmlr_   r   )r   r_   s     r   r_   zMarkup.unescape¼   s   € õ 	"áœ˜D›	Ó"Ð"r   c               óä  — t        | «      }|j                  d«      x}dk7  r>|j                  d|«      x}dk(  rn&|d| › ||dz   d › �}|j                  d«      x}dk7  rŒ>|j                  d«      x}dk7  r>|j                  d|«      x}dk(  rn&|d| › ||dz   d › �}|j                  d«      x}dk7  rŒ>d	j                  |j                  «       «      }| j	                  |«      j                  «       S )
u¼   :meth:`unescape` the markup, remove tags, and normalize
        whitespace to single spaces.

        >>> Markup("Main &raquo;	<em>About</em>").striptags()
        'Main Â» About'
        z<!--éÿÿÿÿz-->Né   Ú<Ú>r   Ú )r   ÚfindrO   rS   r1   r_   )r   r7   ÚstartÚends       r   Ú	striptagszMarkup.striptagsÇ   s  € ô �D“	ˆð Ÿ
™
 6Ó*Ð*ˆu¨rÒ1à—z‘z %¨Ó/Ð/�°BÒ6Øà˜V˜e�}�o e¨C°!©G¨IÐ&6Ð%7Ð8ˆEð Ÿ
™
 6Ó*Ð*ˆu¨rÓ1ð Ÿ
™
 3›Ð'ˆu¨BÒ.Ø—z‘z # uÓ-Ð-�°"Ò4Øà˜V˜e�}�o e¨C°!©G¨IÐ&6Ð%7Ð8ˆEð	 Ÿ
™
 3›Ð'ˆu¨BÓ.ð —‘˜Ÿ™›Ó'ˆØ�~‰~˜eÓ$×-Ñ-Ó/Ð/r   c               óH   — t        |«      }|j                  | ur | |«      S |S )ztEscape a string. Calls :func:`escape` and ensures that for
        subclasses the correct type is returned.
        )r"   r1   )r-   r   Úrvs      r   r"   zMarkup.escapeæ   s'   € ô
 �A‹Yˆà�<‰<˜sÑ"Ù�r“7ˆNàˆ	r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   rF   )r   Úkeyr1   s     €r   rF   zMarkup.__getitem__ò   s   ø€ Ø�~‰~œe™gÑ1°#Ó6Ó7Ð7r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   Ú
capitalizerM   s    €r   rp   zMarkup.capitalizeõ   s   ø€ Ø�~‰~œe™gÑ0Ó2Ó3Ð3r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   ÚtitlerM   s    €r   rr   zMarkup.titleø   ó   ø€ Ø�~‰~œe™g™m›oÓ.Ð.r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   ÚlowerrM   s    €r   ru   zMarkup.lowerû   rs   r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   ÚupperrM   s    €r   rw   zMarkup.upperþ   rs   r   c               ób   •— | j                  t        ‰| �	  || j                  |«      |«      «      S r	   )r1   r+   Úreplacer"   )r   ÚoldÚnewÚcountr1   s       €r   ry   zMarkup.replace  s(   ø€ Ø�~‰~œe™g™o¨c°4·;±;¸sÓ3CÀUÓKÓLÐLr   c               ó`   •— | j                  t        ‰| �	  || j                  |«      «      «      S r	   )r1   r+   Úljustr"   ©r   ÚwidthÚfillcharr1   s      €r   r~   zMarkup.ljust  ó&   ø€ Ø�~‰~œe™g™m¨E°4·;±;¸xÓ3HÓIÓJÐJr   c               ó`   •— | j                  t        ‰| �	  || j                  |«      «      «      S r	   )r1   r+   Úrjustr"   r   s      €r   r„   zMarkup.rjust  r‚   r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Úlstrip©r   Úcharsr1   s     €r   r†   zMarkup.lstrip
  ó   ø€ Ø�~‰~œe™g™n¨UÓ3Ó4Ð4r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Úrstripr‡   s     €r   r‹   zMarkup.rstrip  r‰   r   c               ó`   •— | j                  t        ‰| �	  || j                  |«      «      «      S r	   )r1   r+   Úcenterr"   r   s      €r   r�   zMarkup.center  s&   ø€ Ø�~‰~œe™g™n¨U°D·K±KÀÓ4IÓJÓKÐKr   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Ústripr‡   s     €r   r�   zMarkup.strip  ó   ø€ Ø�~‰~œe™g™m¨EÓ2Ó3Ð3r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Ú	translate)r   Útabler1   s     €r   r’   zMarkup.translate  s   ø€ ð
 �~‰~œe™gÑ/°Ó6Ó7Ð7r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Ú
expandtabs)r   Útabsizer1   s     €r   r•   zMarkup.expandtabs  s   ø€ Ø�~‰~œe™gÑ0°Ó9Ó:Ð:r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   ÚswapcaserM   s    €r   r˜   zMarkup.swapcase   ó   ø€ Ø�~‰~œe™gÑ.Ó0Ó1Ð1r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Úzfill)r   r€   r1   s     €r   r›   zMarkup.zfill#  r�   r   c               ó>   •— | j                  t        ‰| �	  «       «      S r	   )r1   r+   ÚcasefoldrM   s    €r   r�   zMarkup.casefold&  r™   r   c               ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Úremoveprefix)r   Úprefixr1   s     €r   rŸ   zMarkup.removeprefix)  ó   ø€ Ø�~‰~œe™gÑ2°6Ó:Ó;Ð;r   c                ó@   •— | j                  t        ‰| �	  |«      «      S r	   )r1   r+   Úremovesuffix)r   Úsuffixr1   s     €r   r£   zMarkup.removesuffix,  r¡   r   c               óp   •— t         ‰| �  |«      \  }}}| j                  } ||«       ||«       ||«      fS r	   )r+   Ú	partitionr1   ©r   rU   ÚleftÚrightr-   r1   s        €r   r¦   zMarkup.partition/  s;   ø€ Ü ™7Ñ,¨SÓ1Ñˆˆc�5Ø�n‰nˆÙ�4‹y™#˜c›(¡C¨£JÐ.Ð.r   c               óp   •— t         ‰| �  |«      \  }}}| j                  } ||«       ||«       ||«      fS r	   )r+   Ú
rpartitionr1   r§   s        €r   r«   zMarkup.rpartition4  s;   ø€ Ü ™7Ñ-¨cÓ2Ñˆˆc�5Ø�n‰nˆÙ�4‹y™#˜c›(¡C¨£JÐ.Ð.r   c                óp   — t        | j                  «      }| j                  |j                  | ||«      «      S r	   ©ÚEscapeFormatterr"   r1   Úvformat)r   ÚargsÚkwargsÚ	formatters       r   ÚformatzMarkup.format9  s.   € Ü# D§K¡KÓ0ˆ	Ø�~‰~˜i×/Ñ/°°d¸FÓCÓDÐDr   c               óp   — t        | j                  «      }| j                  |j                  | d|«      «      S )Nr
   r­   )r   Úmappingr²   s      r   Ú
format_mapzMarkup.format_map=  s0   € ô
 $ D§K¡KÓ0ˆ	Ø�~‰~˜i×/Ñ/°°b¸'ÓBÓCÐCr   c               ó    — |rt        d«      ‚| S )Nz,Unsupported format specification for Markup.)Ú
ValueError)r   Úformat_specs     r   Ú__html_format__zMarkup.__html_format__E  s   € ÙÜÐKÓLÐLàˆr   )Ú NÚstrict)r.   r   r/   ú
str | Noner0   r   r   úte.Self)r   r¾   )r7   zstr | _HasHTMLr   r¾   )r7   út.SupportsIndexr   r¾   )r7   r   r   r¾   r   )rQ   zcabc.Iterable[str | _HasHTML]r   r¾   )Nrb   )rU   r½   rV   r¿   r   úlist[te.Self])F)r]   Úboolr   rÀ   )r   r   r   r¾   )rn   zt.SupportsIndex | slicer   r¾   )rb   )rz   r   r{   r   r|   r¿   r   r¾   )rf   )r€   r¿   r�   r   r   r¾   r	   )rˆ   r½   r   r¾   )r“   z#cabc.Mapping[int, str | int | None]r   r   )é   )r–   r¿   r   r¾   )r€   r¿   r   r¾   )r    r   r   r¾   )r¤   r   r   r¾   )rU   r   r   z tuple[te.Self, te.Self, te.Self])r°   r   r±   r   r   r¾   )rµ   zcabc.Mapping[str, t.Any]r   r¾   )r¹   r   r   r¾   ).r   r   r   Ú__doc__Ú	__slots__r,   r   r4   r9   r<   r?   rH   rL   rO   rS   rZ   r\   r_   rj   Úclassmethodr"   rF   rp   rr   ru   rw   ry   r~   r„   r†   r‹   r�   r�   r’   r•   r˜   r›   r�   rŸ   r£   r¦   r«   r³   r¶   rº   Ú__classcell__©r1   s   @r   r   r   T   s•  ø„ ñ!ðF €Ið MUð	>Øð	>Ø+5ð	>ØFIð	>à	õ	>óõóõ6õ6õ6õBõHð FHðIØ ðIØ3BðIà	õIð FHðJØ ðJØ3BðJà	õJð #(ðIØðIà	õIó
	#ó0ð> ò	ó ð	õ8õ4õ/õ/õ/öMöKöKö5ö5öLö4ð8à2ð8ð 
õ	8ö;õ2õ4õ2õ<õ<õ/õ
/ó
EðDà)ðDð 
ó	D÷r   c                  ó0   ‡ — e Zd ZdZdˆ fd„Zdˆ fd„Zˆ xZS )r®   )r"   c                ó0   •— || _         t        ‰| �	  «        y r	   )r"   r+   Ú__init__)r   r"   r1   s     €r   rÊ   zEscapeFormatter.__init__O  s   ø€ Ø!'ˆŒÜ‰ÑÕr   c                ó  •— t        |d«      r|j                  |«      }nSt        |d«      r.|rt        d|› dt        |«      › d�«      ‚|j	                  «       }nt
        ‰| �  |t        |«      «      }t        | j                  |«      «      S )Nrº   r   zFormat specifier z given, but z{ does not define __html_format__. A class that defines __html__ must define __html_format__ to work with format specifiers.)	r    rº   r¸   r   r   r+   Úformat_fieldr   r"   )r   r7   r¹   rl   r1   s       €r   rÌ   zEscapeFormatter.format_fieldS  s�   ø€ Ü�5Ð+Ô,Ø×&Ñ& {Ó3‰BÜ�U˜JÔ'ÙÜ Ø'¨ }°LÄÀeÃÀð NGð Góð ð
 —‘Ó!‰Bô ‘Ñ% e¬S°Ó-=Ó>ˆBÜ�4—;‘;˜r“?Ó#Ð#r   )r"   r   r   ÚNone)r7   r   r¹   r   r   r   )r   r   r   rÄ   rÊ   rÌ   rÆ   rÇ   s   @r   r®   r®   L  s   ø„ Ø€Iõ÷$ñ $r   r®   c                  óD   — e Zd ZdZdZd
d„Zdd„Zdd„Zdd„Zdd„Z	dd„Z
y	)rB   z"Helper for :meth:`Markup.__mod__`.©Úobjr"   c                ó    — || _         || _        y r	   rÏ   )r   rÐ   r"   s      r   rÊ   z_MarkupEscapeHelper.__init__j  s   € ØˆŒØ!'ˆ�r   c               óT   — | j                  | j                  |   | j                  «      S r	   )r1   rÐ   r"   )r   rn   s     r   rF   z_MarkupEscapeHelper.__getitem__n  s   € Ø�~‰~˜dŸh™h s™m¨T¯[©[Ó9Ð9r   c               óJ   — t        | j                  | j                  «      «      S r	   )r   r"   rÐ   r   s    r   Ú__str__z_MarkupEscapeHelper.__str__q  s   € Ü�4—;‘;˜tŸx™xÓ(Ó)Ð)r   c               ó\   — t        | j                  t        | j                  «      «      «      S r	   )r   r"   ÚreprrÐ   r   s    r   rL   z_MarkupEscapeHelper.__repr__t  s   € Ü�4—;‘;œt D§H¡H›~Ó.Ó/Ð/r   c               ó,   — t        | j                  «      S r	   )ÚintrÐ   r   s    r   Ú__int__z_MarkupEscapeHelper.__int__w  s   € Ü�4—8‘8‹}Ðr   c               ó,   — t        | j                  «      S r	   )ÚfloatrÐ   r   s    r   Ú	__float__z_MarkupEscapeHelper.__float__z  s   € Ü�T—X‘X‹Ðr   N)rÐ   r   r"   r   r   rÍ   )rn   r   r   r¾   r   )r   rØ   )r   rÛ   )r   r   r   rÃ   rÄ   rÊ   rF   rÔ   rL   rÙ   rÜ   r
   r   r   rB   rB   e  s(   „ Ù,à!€Ió(ó:ó*ó0óôr   rB   c                ó˜   — | dk(  r;dd l }dd l}|j                  dt        d¬«       |j                  j                  d«      S t        | «      ‚)NÚ__version__r   zŸThe '__version__' attribute is deprecated and will be removed in MarkupSafe 3.1. Use feature detection, or `importlib.metadata.version("markupsafe")`, instead.é   )Ú
stacklevelÚ
markupsafe)Úimportlib.metadataÚwarningsÚwarnÚDeprecationWarningÚmetadataÚversionÚAttributeError)ÚnameÚ	importlibrã   s      r   Ú__getattr__rë   ~  sS   € Øˆ}ÒÛ!Ûà�‰ðDô Øð 	ô 	
ð ×!Ñ!×)Ñ)¨,Ó7Ð7ä
˜Ó
Ðr   r   )r   zt.Any | Noner   r   )r   r   r   r   )ré   r   r   r   )Ú
__future__r   Úcollections.abcÚabcÚcabcÚstringÚtypingÚtÚ	_speedupsr   ÚImportErrorÚ_nativeÚTYPE_CHECKINGÚtyping_extensionsÚteÚProtocolr   r   r"   r$   r'   r   r   Ú	Formatterr®   rB   rë   r
   r   r   Ú<module>rû      s™   ðÝ "å Û Û ð'Ý(ð ‡?‚?Û"ô&ˆq�z‰zô &ô3�—
‘
ô 3ó)ó0ó ô(uˆSô uôp$�f×&Ñ&ô $÷2ñ ô2øðk ò 'ß&ð'ús   –B ÂBÂB