o
    éT•j§  ã                   @   s$  d Z ddlZddlmZ ddgZdPdd„Zi dd“d	d
“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd “d!d"“d#d$“d%d&“d'd(“i d)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdD“dEdF“dGdH“dIdJ“¥Zh dK£Z	dLdM„ Z
e dN¡ZdOd„ ZdS )Qz*
General functions for HTML manipulation.
é    N)Úhtml5ÚescapeÚunescapeTc                 C   sD   |   dd¡} |   dd¡} |   dd¡} |r |   dd¡} |   d	d
¡} | S )zõ
    Replace special characters "&", "<" and ">" to HTML-safe sequences.
    If the optional flag quote is true (the default), the quotation mark
    characters, both double quote (") and single quote (') characters are also
    translated.
    ú&z&amp;ú<z&lt;ú>z&gt;ú"z&quot;ú'z&#x27;)Úreplace)ÚsÚquote© r   ú$/usr/lib/python3.10/html/__init__.pyr      s   õ   ï¿½é   úé€   u   â‚¬é�   õ   Â�é‚   u   â€šéƒ   u   Æ’é„   u   â€žé…   u   â€¦é†   u   â€ é‡   u   â€¡éˆ   u   Ë†é‰   u   â€°éŠ   u   Å é‹   u   â€¹éŒ   u   Å’é�   õ   Â�éŽ   u   Å½é�   õ   Â�é�   õ   Â�é‘   u   â€˜é’   u   â€™é“   u   â€œé”   u   â€�é•   u   â€¢é–   u   â€“é—   u   â€”é˜   u   Ëœé™   u   â„¢éš   u   Å¡é›   u   â€ºéœ   u   Å“é�   õ   Â�éž   u   Å¾éŸ   u   Å¸>~   éÐý  éÑý  éÒý  éÓý  éÔý  éÕý  éÖý  é×ý  éØý  éÙý  éÚý  éÛý  éÜý  éÝý  éÞý  éßý  éàý  éáý  éâý  éãý  éäý  éåý  éæý  éçý  éèý  ééý  éêý  éëý  éìý  éíý  éîý  éïý  éþÿ  éþÿ éþÿ éþÿ éþÿ éþÿ éþÿ éþÿ éþÿ éþÿ	 éþÿ
 éþÿ éþÿ éþÿ éþÿ éþÿ éþÿ éÿÿ  éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ	 éÿÿ
 éÿÿ éÿÿ éÿÿ éÿÿ éÿÿ é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r"   r#   r%   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r5   r6   éÿÿ c                 C   sú   |   d¡} | d dkrL| d dv rt| dd …  d¡dƒ}nt| dd …  d¡ƒ}|tv r1t| S d|  kr;d	ks@n |d
krBdS |tv rHdS t|ƒS | tv rTt|  S tt| ƒd ddƒD ]}| d |… tv rxt| d |…  | |d …    S q^d|  S )Nrx   r   ú#ÚxXry   ú;rƒ   i Ø  iÿß  r”   r   Ú éÿÿÿÿr   )	ÚgroupÚintÚrstripÚ_invalid_charrefsÚ_invalid_codepointsÚchrÚ_html5ÚrangeÚlen)r   ÚnumÚxr   r   r   Ú_replace_charref[   s&   
 ÿr¥   z7&(#[0-9]+;?|#[xX][0-9a-fA-F]+;?|[^\t\n\f <&#;]{1,32};?)c                 C   s   d| vr| S t  t| ¡S )a^  
    Convert all named and numeric character references (e.g. &gt;, &#62;,
    &x3e;) in the string s to the corresponding unicode characters.
    This function uses the rules defined by the HTML 5 standard
    for both valid and invalid character references, and the list of
    HTML 5 named character references defined in html.entities.html5.
    r   )Ú_charrefÚsubr¥   )r   r   r   r   r   z   s   )T)Ú__doc__ÚreÚ_reÚhtml.entitiesr   r    Ú__all__r   r�   rž   r¥   Úcompiler¦   r   r   r   r   r   Ú<module>   sœ    
ÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ%
