MOON
Server: Apache
System: Linux vps.espica.me 5.14.0-611.54.3.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:31:24 EDT 2026 x86_64
User: solaraatech (1010)
PHP: 8.2.32
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //proc/self/root/lib64/python3.9/html/__pycache__/parser.cpython-39.opt-2.pyc
a

WpWjrW�@s�ddlZddlZddlmZdgZe�d�Ze�d�Ze�d�Ze�d�Z	e�d�Z
e�d	�Ze�d
�Ze�d�Z
e�d�Ze�d
�Ze�dej�Ze�dej�Ze�dej�Ze�d
�Ze�d�ZGdd�dej�ZdS)�N)�unescape�
HTMLParserz[&<]z
&[a-zA-Z#]z%&([a-zA-Z][-.a-zA-Z0-9]*)[^a-zA-Z0-9]z)&#(?:[0-9]+|[xX][0-9a-fA-F]+)[^0-9a-fA-F]z	<[a-zA-Z]z
</[a-zA-Z]�>z--!?>z-?>z0([a-zA-Z][^\t\n\r\f />]*)(?:[\t\n\r\f ]|/(?!>))*a{
  (
    (?<=['"\t\n\r\f /])[^\t\n\r\f />][^\t\n\r\f /=>]*  # attribute name
   )
  ([\t\n\r\f ]*=[\t\n\r\f ]*        # value indicator
    ('[^']*'                        # LITA-enclosed value
    |"[^"]*"                        # LIT-enclosed value
    |(?!['"])[^>\t\n\r\f ]*         # bare value
    )
   )?
  (?:[\t\n\r\f ]|/(?!>))*           # possibly followed by a space
a
  [a-zA-Z][^\t\n\r\f />]*           # tag name
  [\t\n\r\f /]*                     # optional whitespace before attribute name
  (?:(?<=['"\t\n\r\f /])[^\t\n\r\f />][^\t\n\r\f /=>]*  # attribute name
    (?:[\t\n\r\f ]*=[\t\n\r\f ]*    # value indicator
      (?:'[^']*'                    # LITA-enclosed value
        |"[^"]*"                    # LIT-enclosed value
        |(?!['"])[^>\t\n\r\f ]*     # bare value
       )
     )?
    [\t\n\r\f /]*                   # possibly followed by a space
   )*
   >?
aF
  <[a-zA-Z][^\t\n\r\f />\x00]*       # tag name
  (?:[\s/]*                          # optional whitespace before attribute name
    (?:(?<=['"\s/])[^\s/>][^\s/=>]*  # attribute name
      (?:\s*=+\s*                    # value indicator
        (?:'[^']*'                   # LITA-enclosed value
          |"[^"]*"                   # LIT-enclosed value
          |(?!['"])[^>\s]*           # bare value
         )
        \s*                          # possibly followed by a space
       )?(?:\s|/(?!>))*
     )*
   )?
  \s*                                # trailing whitespace
z#</\s*([a-zA-Z][-.a-zA-Z0-9:_]*)\s*>c@s�eZdZdZdZddd�dd�Zdd	�Zd
d�Zdd
�ZdZ	dd�Z
dd�dd�Zdd�Zd=dd�Z
dd�Zdd�Zd>dd�Zd?dd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�ZdS)@r)Zscript�styleZxmpZiframeZnoembedZnoframes)Ztextarea�titleTF)�convert_charrefs�	scriptingcCs||_||_|��dS�N)rr�reset)�selfrr�r�#/usr/lib64/python3.9/html/parser.py�__init__vs
zHTMLParser.__init__cCsFd|_d|_t|_d|_d|_d|_g|_d|_d|_	t
j�|�dS)N�z???Tr�)
�rawdata�lasttag�interesting_normal�interesting�
cdata_elem�_support_cdata�
_escapable�_pending�_pending_len�_parse_threshold�_markupbase�
ParserBaser
�rrrr
r
�szHTMLParser.resetcCs�|jt|�7_|j|jkr,|j�|�n~|jsB|j|7_n,|j�|�|jd�|j�7_|j��d|_t|j�}|�d�t|j�|kr�d|_nt|j�|_dS�Nrrr)	r�lenrr�appendr�join�clear�goahead)r�data�nrrr
�feed�s



zHTMLParser.feedcCs:|jr,|jd�|j�7_|j��d|_|�d�dSr)rrr!r"rr#rrrr
�close�s

zHTMLParser.closeNcCs|jSr	)�_HTMLParser__starttag_textrrrr
�get_starttag_text�szHTMLParser.get_starttag_text��	escapablecCsp|��|_||_|jdkr(t�d�|_nD|rP|jsPt�d|jtjtjB�|_nt�d|jtjtjB�|_dS)N�	plaintextz\Zz&|</%s(?=[\t\n\r\f />])z</%s(?=[\t\n\r\f />]))	�lowerrr�re�compilerr�
IGNORECASE�ASCII)r�elemr+rrr
�set_cdata_mode�s



�
�zHTMLParser.set_cdata_modecCst|_d|_d|_dS)NT)rrrrrrrr
�clear_cdata_mode�szHTMLParser.clear_cdata_modecCs
||_dSr	)r)r�flagrrr
�_set_support_cdata�szHTMLParser._set_support_cdatacCs4|j}d}t|�}||k�r�|jrv|jsv|�d|�}|dkr�|�dt||d��}|dkrpt�d��	||�sp�q�|}n*|j
�	||�}|r�|��}n|jr��q�|}||kr�|jr�|jr�|�
t|||���n|�
|||��|�||�}||kr��q�|j}|d|��r<t�||��r"|�|�}	n�|d|��r:|�|�}	nt|d|��rR|�|�}	n\|d|��rj|�|�}	nD|d	|��r�|�|�}	n,|d
|k�s�|�r�|�
d�|d
}	n�q�|	dk�r.|�sq�t�||��rԐnV|d|��r$|d|k�r�|�
d�n&t�||��r
n|�||dd���n|d|��r||}dD]*}
|�|
|d
��r8|t|
�8}�qd�q8|�||d
|��n�|d|��r�|j�r�|�||dd��n�|||d���dk�r�|�||dd��nP|d	|��r�|�||dd��n,|d|��r"|�||dd��nt d��|}	|�||	�}q|d|��r�t!�||�}|�r�|�"�dd�}|�#|�|�$�}	|d|	d
��s�|	d
}	|�||	�}qn<d||d�v�r�|�
|||d��|�||d�}�q�q|d|�rt%�||�}|�r@|�"d
�}|�&|�|�$�}	|d|	d
��s2|	d
}	|�||	�}qt'�||�}|�r�|�r�|�"�||d�k�r�|�$�}	|	|k�r�|}	|�||d
�}�q�n.|d
|k�r�|�
d�|�||d
�}n�q�qq|�r"||k�r"|j�r|j�r|�
t|||���n|�
|||��|�||�}||d�|_dS)Nr�<�&�"z[\t\n\r\f ;]z</�<!--z<?z<!r�)z--!z--�-��	<![CDATA[��	�	<!doctypezwe should not get here!z&#����;)(rrrr�find�rfind�maxr.r/�searchr�startr�handle_datarZ	updatepos�
startswith�starttagopen�match�parse_starttag�parse_endtag�
parse_comment�parse_pi�parse_html_declaration�
endtagopen�handle_comment�endswithr�unknown_declr-�handle_decl�	handle_pi�AssertionError�charref�group�handle_charref�end�	entityref�handle_entityref�
incomplete)rr\r�ir%�jZampposrLrJ�k�suffix�namerrr
r#�s�
�










zHTMLParser.goaheadcCsX|j}|||d�dkr$|�|�S|||d�dkrx|jrx|�d|d�}|dkrZdS|�||d|��|dS|||d���d	kr�|�d
|d�}|dkr�dS|�||d|��|dS|||d�d
k�rJ|�d
|d�}|dk�r�dS||ddk�r,|�||d|d��n|�||d|��|dS|�|�SdS)Nr=r:r@r>z]]>rrBr?rArr;rz<![�])	rrOrrDrUr-rVrS�parse_bogus_comment)rr`rraZgtposrrr
rQjs0

z!HTMLParser.parse_html_declarationcCs\|j}t�||d�}|s2t�||d�}|s2dS|rT|��}|�||d|��|��S)Nr=rB)r�commentcloserG�commentabruptcloserLrHrSr\)rr`�reportrrLrarrr
rO�szHTMLParser.parse_commentrcCsD|j}|�d|d�}|dkr"dS|r<|�||d|��|dS)Nrr;rBr)rrDrS)rr`rir�posrrr
rf�szHTMLParser.parse_bogus_commentcCsH|j}t�||d�}|sdS|��}|�||d|��|��}|S)Nr;rB)r�picloserGrHrWr\�rr`rrLrarrr
rP�szHTMLParser.parse_picCsd|_|�|�}|dkr|S|j}|||�|_g}t�||d�}|��}|�d���|_}||k�r t	�||�}|s~�q |�ddd�\}	}
}|
s�d}nZ|dd�dkr�|dd�ks�n|dd�dkr�|dd�kr�nn|dd�}|�rt
|�}|�|	��|f�|��}q`|||���}|dv�r�|�
�\}
}d	|jv�rz|
|j�d	�}
t|j�|j�d	�}n|t|j�}|�|||��|S|�d
��r�|�||�n^|�||�||jv�s�|j�r�|dk�s�|dk�r�|j|d
d�n||jv�r|j|dd�|S)Nrrr;r?�'rB�")r�/>�
roZnoscriptr,Fr*T)r(�check_for_whole_start_tagr�tagfind_tolerantrLr\rZr-r�attrfind_tolerantrr �stripZgetpos�countrrErIrT�handle_startendtag�handle_starttag�CDATA_CONTENT_ELEMENTSrr3�RCDATA_CONTENT_ELEMENTS)rr`�endposr�attrsrLrb�tag�m�attrname�restZ	attrvaluer\�lineno�offsetrrr
rM�sh

&�
�



����zHTMLParser.parse_starttagcCs6|j}t�||d�}|��}||ddkr2dS|S)NrrrB)r�locatetagendrLr\rlrrr
rq�sz$HTMLParser.check_for_whole_start_tagcCs�|j}|�d|d�dkrdSt�||�sT||d|d�dkrJ|dS|�|�St�||d�}|��}||ddkr�dSt�||d�}|�d��	�}|�
|�|��|S)Nrr;rrBr?r)rrDrRrLrfr�r\rrrZr-�
handle_endtagr4)rr`rrLrar|rrr
rN�s 

zHTMLParser.parse_endtagcCs|�||�|�|�dSr	)rwr��rr|r{rrr
rvszHTMLParser.handle_startendtagcCsdSr	rr�rrr
rwszHTMLParser.handle_starttagcCsdSr	r)rr|rrr
r�szHTMLParser.handle_endtagcCsdSr	r�rrdrrr
r[!szHTMLParser.handle_charrefcCsdSr	rr�rrr
r^%szHTMLParser.handle_entityrefcCsdSr	r�rr$rrr
rI)szHTMLParser.handle_datacCsdSr	rr�rrr
rS-szHTMLParser.handle_commentcCsdSr	r)rZdeclrrr
rV1szHTMLParser.handle_declcCsdSr	rr�rrr
rW5szHTMLParser.handle_picCsdSr	rr�rrr
rU8szHTMLParser.unknown_decl)T)T)r) �__name__�
__module__�__qualname__rxryrr
r&r'r(r)r3r4r6r#rQrOrfrPrMrqrNrvrwr�r[r^rIrSrVrWrUrrrr
rZs<


"

9
)r.rZhtmlr�__all__r/rr_r]rYrKrRrkrgrhrr�VERBOSErsr�Zlocatestarttagend_tolerantZ	endendtagZ
endtagfindrrrrrr
�<module>s2










�
��