ó
    ^½e±  ã                   ó¤   • S SK rSSKJr  S\R                  S\4S jrS\R                  \R                     S\4S jrS\R                  S\4S jr	g)	é    Né   )ÚMarkupÚsÚreturnc                 ó  • [        U S5      (       a  [        U R                  5       5      $ [        [        U 5      R	                  SS5      R	                  SS5      R	                  SS5      R	                  SS	5      R	                  S
S5      5      $ )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.
Ú__html__Ú&z&amp;Ú>z&gt;Ú<z&lt;Ú'z&#39;Ú"z&#34;)Úhasattrr   r   ÚstrÚreplace©r   s    Ú4/usr/lib/python3/dist-packages/markupsafe/_native.pyÚescaper      sr   € ô ˆq�*×ÑÜ�a—j‘j“lÓ#Ð#äÜˆA‹ß	‰��gÓ	ß	‰��fÓ	ß	‰��fÓ	ß	‰��gÓ	ß	‰��gÓ	óð ó    c                 ó2   • U c
  [        5       $ [        U 5      $ )zå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      s   € ð 	�yÜ‹xˆä�!‹9Ðr   c                 óF   • [        U [        5      (       d  [        U 5      $ U $ )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   )
ÚtypingÚtÚ r   ÚAnyr   ÚOptionalr   r   r   © r   r   Ú<module>r       sY   ðÛ å ðˆa�e‰eð ˜ô ð0�Q—Z‘Z §¡Ñ&ð ¨6ô ð �—‘ð ˜#õ r   