§
    cŠtjÀ3  ã                  ó>  — d dl mZ d dlmZ d dlZd dlZ	 ddlm	Z	 n# e
$ r	 ddlm	Z	 Y nw xY w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dS )é    )ÚannotationsNé   )Ú_escape_innerc                  ó   — e Zd Zdd„ZdS )Ú_HasHTMLÚreturnÚstrc               ó   — d S ©N© ©Úselfs    úQ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/markupsafe/__init__.pyÚ__html__z_HasHTML.__html__   ó   € € € ó    N©r   r	   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s   € € € € € Ø%Ð%Ð%Ð%Ð%Ð%r   r   c                  ó   — e Zd Zdd„ZdS )Ú	_TPEscapeÚsút.Anyr   ÚMarkupc               ó   — d S r   r   )r   r   s     r   Ú__call__z_TPEscape.__call__   r   r   N©r   r   r   r   )r   r   r   r   r   r   r   r   r      s   € € € € € Ø2Ð2Ð2Ð2Ð2Ð2r   r   r   r   r   r   c               ó  — t          | ¦  «        t          u rt          t          | ¦  «        ¦  «        S t	          | d¦  «        r!t          |                      ¦   «         ¦  «        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#      sm   € õ ˆA�w„w•#€~€~Ý•m AÑ&Ô&Ñ'Ô'Ð'åˆq�*ÑÔð $Ý�a—j’j‘l”lÑ#Ô#Ð#å•-¥ A¡¤Ñ'Ô'Ñ(Ô(Ð(r   út.Any | Nonec               ó@   — | €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Œxˆå�!‰9Œ9Ðr   r	   c               óN   — 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Œvˆà€Hr   c                  ó   ‡ — e Zd ZdZdZ	 dWdXˆ fd„ZdYd„ZdZˆ fd„ZdZd„Zd[ˆ fd„Z	d[ˆ fd„Z
d\ˆ fd„Zd]ˆ fd„Zd^ˆ fd„Z	 d_d`ˆ fd „Z	 d_d`ˆ fd!„Z	 dadbˆ fd%„Zd]d&„Zd]d'„Zedcd)„¦   «         Zddˆ fd,„ZdYˆ fd-„ZdYˆ fd.„ZdYˆ fd/„ZdYˆ fd0„Zdedfˆ fd4„Zdgdhˆ fd8„Zdgdhˆ fd9„Zdidjˆ fd;„Zdidjˆ fd<„Zdgdhˆ fd=„Zdidjˆ fd>„Z dkˆ fdA„Z!dldmˆ fdD„Z"dYˆ fdE„Z#dnˆ fdF„Z$dYˆ fdG„Z%doˆ fdI„Z&dpˆ fdK„Z'dqˆ fdM„Z(dqˆ fdN„Z)drdQ„Z*dsdT„Z+dtdV„Z,ˆ xZ-S )ur   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   Ú NÚstrictÚobjectr   Úencodingú
str | NoneÚerrorsr	   r   úte.Selfc                óÜ   •— t          |d¦  «        r|                     ¦   «         }|€"t          ¦   «                              | |¦  «        S t          ¦   «                              | |||¦  «        S ©Nr   )r!   r   ÚsuperÚ__new__)Úclsr-   r.   r0   Ú	__class__s       €r   r5   zMarkup.__new__z   s`   ø€ õ �6˜:Ñ&Ô&ð 	'Ø—_’_Ñ&Ô&ˆFàÐÝ‘7”7—?’? 3¨Ñ/Ô/Ð/å‰wŒw�Š˜s F¨H°fÑ=Ô=Ð=r   c               ó   — | S r   r   r   s    r   r   zMarkup.__html__…   s   € Øˆr   Úvalueústr | _HasHTMLc               óê   •— t          |t          ¦  «        st          |d¦  «        rG|                      t	          ¦   «                              |                      |¦  «        ¦  «        ¦  «        S t          S r3   )r(   r	   r!   r7   r4   Ú__add__r#   ÚNotImplemented©r   r9   r7   s     €r   r<   zMarkup.__add__ˆ   s\   ø€ Ý�e�SÑ!Ô!ð 	G¥W¨U°JÑ%?Ô%?ð 	GØ—>’>¥%¡'¤'§/¢/°$·+²+¸eÑ2DÔ2DÑ"EÔ"EÑFÔFÐFåÐr   c               óª   — t          |t          ¦  «        st          |d¦  «        r(|                      |¦  «                             | ¦  «        S t
          S r3   )r(   r	   r!   r#   r<   r=   )r   r9   s     r   Ú__radd__zMarkup.__radd__Ž   sK   € Ý�e�SÑ!Ô!ð 	4¥W¨U°JÑ%?Ô%?ð 	4Ø—;’;˜uÑ%Ô%×-Ò-¨dÑ3Ô3Ð3åÐr   út.SupportsIndexc               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   ©r7   r4   Ú__mul__r>   s     €r   rD   zMarkup.__mul__”   ó%   ø€ Ø�~Š~�e™gœgŸošo¨eÑ4Ô4Ñ5Ô5Ð5r   c               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   rC   r>   s     €r   Ú__rmul__zMarkup.__rmul__—   rE   r   c               óŒ  •‡ — t          |t          ¦  «        rt          ˆ fd„|D ¦   «         ¦  «        }n^t          t          |¦  «        d¦  «        r+t          |t          ¦  «        st          |‰ j        ¦  «        }nt          |‰ j        ¦  «        f}‰                      t          ¦   «          	                    |¦  «        ¦  «        S )Nc              3  óB   •K  — | ]}t          |‰j        ¦  «        V — Œd S r   )Ú_MarkupEscapeHelperr#   )Ú.0Úxr   s     €r   ú	<genexpr>z!Markup.__mod__.<locals>.<genexpr>�   s0   øè è € ÐMÐMÀ!Õ-¨a°´Ñ=Ô=ÐMÐMÐMÐMÐMÐMr   Ú__getitem__)
r(   Útupler!   r    r	   rJ   r#   r7   r4   Ú__mod__r>   s   ` €r   rP   zMarkup.__mod__š   s®   øø€ Ý�e�UÑ#Ô#ð 	?åÐMÐMÐMÐMÀuÐMÑMÔMÑMÔMˆEˆEÝ•T˜%‘[”[ -Ñ0Ô0ð 	?½ÀEÍ3Ñ9OÔ9Oð 	?å'¨¨t¬{Ñ;Ô;ˆEˆEõ )¨°´Ñ<Ô<Ð>ˆEà�~Š~�e™gœgŸošo¨eÑ4Ô4Ñ5Ô5Ð5r   c               ód   •— | j         j        › dt          ¦   «                              ¦   «         › d�S )Nú(ú))r7   r   r4   Ú__repr__©r   r7   s    €r   rT   zMarkup.__repr__§   s/   ø€ Ø”.Ô)ÐAÐA­E©G¬G×,<Ò,<Ñ,>Ô,>ÐAÐAÐAÐAr   Úiterableúcabc.Iterable[str | _HasHTML]c               ó’   •— |                       t          ¦   «                              t          | j        |¦  «        ¦  «        ¦  «        S r   )r7   r4   ÚjoinÚmapr#   )r   rV   r7   s     €r   rY   zMarkup.joinª   s1   ø€ Ø�~Š~�e™gœgŸlšl­3¨t¬{¸HÑ+EÔ+EÑFÔFÑGÔGÐGr   éÿÿÿÿÚsepÚmaxsplitúlist[te.Self]c               ób   •‡ — ˆ fd„t          ¦   «                              ||¦  «        D ¦   «         S )Nc                ó:   •— g | ]}‰                      |¦  «        ‘ŒS r   ©r7   ©rK   Úvr   s     €r   ú
<listcomp>z Markup.split.<locals>.<listcomp>°   ó%   ø€ ÐHÐHÐH a�—’˜qÑ!Ô!ÐHÐHÐHr   )r4   Úsplit©r   r\   r]   r7   s   `  €r   rf   zMarkup.split­   s3   øø€ ð IÐHÐHÐH­5©7¬7¯=ª=¸¸hÑ+GÔ+GÐHÑHÔHÐHr   c               ób   •‡ — ˆ fd„t          ¦   «                              ||¦  «        D ¦   «         S )Nc                ó:   •— g | ]}‰                      |¦  «        ‘ŒS r   ra   rb   s     €r   rd   z!Markup.rsplit.<locals>.<listcomp>µ   s%   ø€ ÐIÐIÐI a�—’˜qÑ!Ô!ÐIÐIÐIr   )r4   Úrsplitrg   s   `  €r   rj   zMarkup.rsplit²   s3   øø€ ð JÐIÐIÐI­5©7¬7¯>ª>¸#¸xÑ+HÔ+HÐIÑIÔIÐIr   FÚkeependsÚboolc               ó`   •‡ — ˆ fd„t          ¦   «                              |¦  «        D ¦   «         S )Nc                ó:   •— g | ]}‰                      |¦  «        ‘ŒS r   ra   rb   s     €r   rd   z%Markup.splitlines.<locals>.<listcomp>º   re   r   )r4   Ú
splitlines)r   rk   r7   s   ` €r   ro   zMarkup.splitlines·   s3   øø€ ð IÐHÐHÐH­5©7¬7×+=Ò+=¸hÑ+GÔ+GÐHÑHÔHÐHr   c               ó>   — 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)Úhtmlrq   r	   )r   rq   s     r   rq   zMarkup.unescape¼   s,   € ð 	"Ð!Ð!Ð!Ð!Ð!àˆx�˜D™	œ	Ñ"Ô"Ð"r   c               ól  — t          | ¦  «        }|                     d¦  «        x}dk    rQ|                     d|¦  «        x}dk    rn4|d|…         › ||dz   d…         › �}|                     d¦  «        x}dk    °Q|                     d¦  «        x}dk    rQ|                     d|¦  «        x}dk    rn4|d|…         › ||dz   d…         › �}|                     d¦  «        x}dk    °Qd	                     |                     ¦   «         ¦  «        }|                      |¦  «                             ¦   «         S )
u¼   :meth:`unescape` the markup, remove tags, and normalize
        whitespace to single spaces.

        >>> Markup("Main &raquo;	<em>About</em>").striptags()
        'Main Â» About'
        z<!--r[   z-->Né   ú<ú>r   ú )r	   ÚfindrY   rf   r7   rq   )r   r9   ÚstartÚends       r   Ú	striptagszMarkup.striptagsÇ   sH  € õ �D‘	”	ˆð Ÿ
š
 6Ñ*Ô*Ð*ˆu¨rÒ1Ð1à—z’z %¨Ñ/Ô/Ð/�°BÒ6Ð6Øà˜V˜e˜V”}Ð8 e¨C°!©G¨I¨IÔ&6Ð8Ð8ˆEð Ÿ
š
 6Ñ*Ô*Ð*ˆu¨rÒ1Ð1ð Ÿ
š
 3™œÐ'ˆu¨BÒ.Ð.Ø—z’z # uÑ-Ô-Ð-�°"Ò4Ð4Øà˜V˜e˜V”}Ð8 e¨C°!©G¨I¨IÔ&6Ð8Ð8ˆEð	 Ÿ
š
 3™œÐ'ˆu¨BÒ.Ð.ð —’˜Ÿš™œÑ'Ô'ˆØ�~Š~˜eÑ$Ô$×-Ò-Ñ/Ô/Ð/r   r   c               óL   — t          |¦  «        }|j        | ur | |¦  «        S |S )ztEscape a string. Calls :func:`escape` and ensures that for
        subclasses the correct type is returned.
        )r#   r7   )r6   r   Úrvs      r   r#   zMarkup.escapeæ   s.   € õ
 �A‰YŒYˆàŒ<˜sÐ"Ð"Ø�3�r‘7”7ˆNàˆ	r   Úkeyút.SupportsIndex | slicec               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   rN   )r   r~   r7   s     €r   rN   zMarkup.__getitem__ò   s'   ø€ Ø�~Š~�e™gœg×1Ò1°#Ñ6Ô6Ñ7Ô7Ð7r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   Ú
capitalizerU   s    €r   r‚   zMarkup.capitalizeõ   s%   ø€ Ø�~Š~�e™gœg×0Ò0Ñ2Ô2Ñ3Ô3Ð3r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   ÚtitlerU   s    €r   r„   zMarkup.titleø   ó!   ø€ Ø�~Š~�e™gœgŸmšm™oœoÑ.Ô.Ð.r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   ÚlowerrU   s    €r   r‡   zMarkup.lowerû   r…   r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   ÚupperrU   s    €r   r‰   zMarkup.upperþ   r…   r   ÚoldÚnewÚcountc               ó–   •— |                       t          ¦   «                              ||                      |¦  «        |¦  «        ¦  «        S r   )r7   r4   Úreplacer#   )r   rŠ   r‹   rŒ   r7   s       €r   rŽ   zMarkup.replace  s5   ø€ Ø�~Š~�e™gœgŸošo¨c°4·;²;¸sÑ3CÔ3CÀUÑKÔKÑLÔLÐLr   rw   ÚwidthÚfillcharc               ó”   •— |                       t          ¦   «                              ||                      |¦  «        ¦  «        ¦  «        S r   )r7   r4   Úljustr#   ©r   r�   r�   r7   s      €r   r’   zMarkup.ljust  ó3   ø€ Ø�~Š~�e™gœgŸmšm¨E°4·;²;¸xÑ3HÔ3HÑIÔIÑJÔJÐJr   c               ó”   •— |                       t          ¦   «                              ||                      |¦  «        ¦  «        ¦  «        S r   )r7   r4   Úrjustr#   r“   s      €r   r–   zMarkup.rjust  r”   r   Úcharsc               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Úlstrip©r   r—   r7   s     €r   r™   zMarkup.lstrip
  ó%   ø€ Ø�~Š~�e™gœgŸnšn¨UÑ3Ô3Ñ4Ô4Ð4r   c               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Úrstriprš   s     €r   r�   zMarkup.rstrip  r›   r   c               ó”   •— |                       t          ¦   «                              ||                      |¦  «        ¦  «        ¦  «        S r   )r7   r4   Úcenterr#   r“   s      €r   rŸ   zMarkup.center  s3   ø€ Ø�~Š~�e™gœgŸnšn¨U°D·K²KÀÑ4IÔ4IÑJÔJÑKÔKÐKr   c               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Ústriprš   s     €r   r¡   zMarkup.strip  ó%   ø€ Ø�~Š~�e™gœgŸmšm¨EÑ2Ô2Ñ3Ô3Ð3r   Útableú#cabc.Mapping[int, str | int | None]c               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Ú	translate)r   r£   r7   s     €r   r¦   zMarkup.translate  s)   ø€ ð
 �~Š~�e™gœg×/Ò/°Ñ6Ô6Ñ7Ô7Ð7r   é   Útabsizec               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Ú
expandtabs)r   r¨   r7   s     €r   rª   zMarkup.expandtabs  s'   ø€ Ø�~Š~�e™gœg×0Ò0°Ñ9Ô9Ñ:Ô:Ð:r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   ÚswapcaserU   s    €r   r¬   zMarkup.swapcase   ó%   ø€ Ø�~Š~�e™gœg×.Ò.Ñ0Ô0Ñ1Ô1Ð1r   c               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Úzfill)r   r�   r7   s     €r   r¯   zMarkup.zfill#  r¢   r   c               ój   •— |                       t          ¦   «                              ¦   «         ¦  «        S r   )r7   r4   ÚcasefoldrU   s    €r   r±   zMarkup.casefold&  r­   r   Úprefixc               ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Úremoveprefix)r   r²   r7   s     €r   r´   zMarkup.removeprefix)  ó'   ø€ Ø�~Š~�e™gœg×2Ò2°6Ñ:Ô:Ñ;Ô;Ð;r   Úsuffixc                ól   •— |                       t          ¦   «                              |¦  «        ¦  «        S r   )r7   r4   Úremovesuffix)r   r¶   r7   s     €r   r¸   zMarkup.removesuffix,  rµ   r   ú tuple[te.Self, te.Self, te.Self]c               óœ   •— t          ¦   «                              |¦  «        \  }}}| j        } ||¦  «         ||¦  «         ||¦  «        fS r   )r4   Ú	partitionr7   ©r   r\   ÚleftÚrightr6   r7   s        €r   r»   zMarkup.partition/  sM   ø€ Ý ™7œ7×,Ò,¨SÑ1Ô1Ñˆˆc�5ØŒnˆØˆs�4‰yŒy˜#˜#˜c™(œ( C C¨¡J¤JÐ.Ð.r   c               óœ   •— t          ¦   «                              |¦  «        \  }}}| j        } ||¦  «         ||¦  «         ||¦  «        fS r   )r4   Ú
rpartitionr7   r¼   s        €r   rÀ   zMarkup.rpartition4  sM   ø€ Ý ™7œ7×-Ò-¨cÑ2Ô2Ñˆˆc�5ØŒnˆØˆs�4‰yŒy˜#˜#˜c™(œ( C C¨¡J¤JÐ.Ð.r   ÚargsÚkwargsc                ó~   — t          | j        ¦  «        }|                      |                     | ||¦  «        ¦  «        S r   ©ÚEscapeFormatterr#   r7   Úvformat)r   rÁ   rÂ   Ú	formatters       r   ÚformatzMarkup.format9  s5   € Ý# D¤KÑ0Ô0ˆ	Ø�~Š~˜i×/Ò/°°d¸FÑCÔCÑDÔDÐDr   Úmappingúcabc.Mapping[str, t.Any]c               ó~   — t          | j        ¦  «        }|                      |                     | d|¦  «        ¦  «        S )Nr   rÄ   )r   rÉ   rÇ   s      r   Ú
format_mapzMarkup.format_map=  s7   € õ
 $ D¤KÑ0Ô0ˆ	Ø�~Š~˜i×/Ò/°°b¸'ÑBÔBÑCÔCÐCr   Úformat_specc               ó(   — |rt          d¦  «        ‚| S )Nz,Unsupported format specification for Markup.)Ú
ValueError)r   rÍ   s     r   Ú__html_format__zMarkup.__html_format__E  s   € Øð 	MÝÐKÑLÔLÐLàˆr   )r+   Nr,   )r-   r   r.   r/   r0   r	   r   r1   )r   r1   )r9   r:   r   r1   )r9   rA   r   r1   )r9   r   r   r1   r   )rV   rW   r   r1   )Nr[   )r\   r/   r]   rA   r   r^   )F)rk   rl   r   r^   )r   r   r   r1   )r~   r   r   r1   )r[   )rŠ   r	   r‹   r	   rŒ   rA   r   r1   )rw   )r�   rA   r�   r	   r   r1   r   )r—   r/   r   r1   )r£   r¤   r   r	   )r§   )r¨   rA   r   r1   )r�   rA   r   r1   )r²   r	   r   r1   )r¶   r	   r   r1   )r\   r	   r   r¹   )rÁ   r   rÂ   r   r   r1   )rÉ   rÊ   r   r1   )rÍ   r	   r   r1   ).r   r   r   Ú__doc__Ú	__slots__r5   r   r<   r@   rD   rG   rP   rT   rY   rf   rj   ro   rq   r{   Úclassmethodr#   rN   r‚   r„   r‡   r‰   rŽ   r’   r–   r™   r�   rŸ   r¡   r¦   rª   r¬   r¯   r±   r´   r¸   r»   rÀ   rÈ   rÌ   rÐ   Ú__classcell__ra   s   @r   r   r   T   s  ø€ € € € € ð!ð !ðF €Ið MUð	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>ðð ð ð ðð ð ð ð ð ðð ð ð ð6ð 6ð 6ð 6ð 6ð 6ð6ð 6ð 6ð 6ð 6ð 6ð6ð 6ð 6ð 6ð 6ð 6ðBð Bð Bð Bð Bð BðHð Hð Hð Hð Hð Hð FHðIð Ið Ið Ið Ið Ið Ið FHðJð Jð Jð Jð Jð Jð Jð #(ðIð Ið Ið Ið Ið Ið Ið
	#ð 	#ð 	#ð 	#ð0ð 0ð 0ð 0ð> ð	ð 	ð 	ñ „[ð	ð8ð 8ð 8ð 8ð 8ð 8ð4ð 4ð 4ð 4ð 4ð 4ð/ð /ð /ð /ð /ð /ð/ð /ð /ð /ð /ð /ð/ð /ð /ð /ð /ð /ðMð Mð Mð Mð Mð Mð MðKð Kð Kð Kð Kð Kð KðKð Kð Kð Kð Kð Kð Kð5ð 5ð 5ð 5ð 5ð 5ð 5ð5ð 5ð 5ð 5ð 5ð 5ð 5ðLð Lð Lð Lð Lð Lð Lð4ð 4ð 4ð 4ð 4ð 4ð 4ð8ð 8ð 8ð 8ð 8ð 8ð;ð ;ð ;ð ;ð ;ð ;ð ;ð2ð 2ð 2ð 2ð 2ð 2ð4ð 4ð 4ð 4ð 4ð 4ð2ð 2ð 2ð 2ð 2ð 2ð<ð <ð <ð <ð <ð <ð<ð <ð <ð <ð <ð <ð/ð /ð /ð /ð /ð /ð
/ð /ð /ð /ð /ð /ð
Eð Eð Eð EðDð 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#   r#   r   r   ÚNonec                óV   •— || _         t          ¦   «                              ¦   «          d S r   )r#   r4   Ú__init__)r   r#   r7   s     €r   rØ   zEscapeFormatter.__init__O  s&   ø€ Ø!'ˆŒÝ‰Œ×ÒÑÔÐÐÐr   r9   r   rÍ   r	   c                ó†  •— t          |d¦  «        r|                     |¦  «        }nyt          |d¦  «        r:|r#t          d|› dt          |¦  «        › d�¦  «        ‚|                     ¦   «         }n/t          ¦   «                              |t          |¦  «        ¦  «        }t          |                      |¦  «        ¦  «        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   r4   Úformat_fieldr	   r#   )r   r9   rÍ   r}   r7   s       €r   rÚ   zEscapeFormatter.format_fieldS  sÓ   ø€ Ý�5Ð+Ñ,Ô,ð 	?Ø×&Ò& {Ñ3Ô3ˆBˆBÝ�U˜JÑ'Ô'ð 	?Øð Ý ðG¨ð Gð GÅÀeÁÄð Gð Gð Gñô ð ð
 —’Ñ!Ô!ˆBˆBõ ‘”×%Ò% e­S°Ñ-=Ô-=Ñ>Ô>ˆBÝ�4—;’;˜r‘?”?Ñ#Ô#Ð#r   )r#   r   r   rÖ   )r9   r   rÍ   r	   r   r	   )r   r   r   rÒ   rØ   rÚ   rÔ   ra   s   @r   rÅ   rÅ   L  s`   ø€ € € € € Ø€Iðð ð ð ð ð ð$ð $ð $ð $ð $ð $ð $ð $ð $ð $r   rÅ   c                  óF   — 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
dS )rJ   z"Helper for :meth:`Markup.__mod__`.©Úobjr#   rÝ   r   r#   r   r   rÖ   c                ó"   — || _         || _        d S r   rÜ   )r   rÝ   r#   s      r   rØ   z_MarkupEscapeHelper.__init__j  s   € ØˆŒØ!'ˆŒˆˆr   r~   r1   c               óN   — |                       | j        |         | j        ¦  «        S r   )r7   rÝ   r#   )r   r~   s     r   rN   z_MarkupEscapeHelper.__getitem__n  s   € Ø�~Š~˜dœh sœm¨T¬[Ñ9Ô9Ð9r   r	   c               óP   — t          |                      | j        ¦  «        ¦  «        S r   )r	   r#   rÝ   r   s    r   Ú__str__z_MarkupEscapeHelper.__str__q  s   € Ý�4—;’;˜tœxÑ(Ô(Ñ)Ô)Ð)r   c               ój   — t          |                      t          | j        ¦  «        ¦  «        ¦  «        S r   )r	   r#   ÚreprrÝ   r   s    r   rT   z_MarkupEscapeHelper.__repr__t  s$   € Ý�4—;’;�t D¤H™~œ~Ñ.Ô.Ñ/Ô/Ð/r   Úintc               ó*   — t          | j        ¦  «        S r   )rä   rÝ   r   s    r   Ú__int__z_MarkupEscapeHelper.__int__w  s   € Ý�4”8‰}Œ}Ðr   Úfloatc               ó*   — t          | j        ¦  «        S r   )rç   rÝ   r   s    r   Ú	__float__z_MarkupEscapeHelper.__float__z  s   € Ý�T”X‰ŒÐr   N)rÝ   r   r#   r   r   rÖ   )r~   r   r   r1   r   )r   rä   )r   rç   )r   r   r   rÑ   rÒ   rØ   rN   rá   rT   ræ   ré   r   r   r   rJ   rJ   e  s—   € € € € € Ø,Ð,à!€Ið(ð (ð (ð (ð:ð :ð :ð :ð*ð *ð *ð *ð0ð 0ð 0ð 0ðð ð ð ðð ð ð ð ð r   rJ   Únamec                óª   — | dk    r?dd l }dd l}|                     dt          d¬¦  «         |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)rê   Ú	importlibrñ   s      r   Ú__getattr__rø   ~  sr   € Øˆ}ÒÐØ!Ð!Ð!Ð!Øˆˆˆà�ŠðDõ Øð 	ñ 	
ô 	
ð 	
ð Ô!×)Ò)¨,Ñ7Ô7Ð7å
˜Ñ
Ô
Ðr   r   )r   r$   r   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Å   rJ   rø   r   r   r   ú<module>r     sÝ  ðØ "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø €€€Ø Ð Ð Ð ð'Ø(Ð(Ð(Ð(Ð(Ð(Ð(øØð 'ð 'ð 'Ø&Ð&Ð&Ð&Ð&Ð&Ð&Ð&ð'øøøð „?ð #Ø"Ð"Ð"Ð"ð&ð &ð &ð &ð &ˆqŒzñ &ô &ð &ð3ð 3ð 3ð 3ð 3�”
ñ 3ô 3ð 3ð)ð )ð )ð )ð0ð ð ð ð ð ð ð ð(uð uð uð uð uˆSñ uô uð uðp$ð $ð $ð $ð $�fÔ&ñ $ô $ð $ð2ð ð ð ð ñ ô ð ð2ð ð ð ð ð s   – �+ª+