JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbro h!P@s ddlZddlZddlmZdgZedZedZedZedZ edZ ed Z ed Z ed Z ed Zed ZedejZedejZedejZed ZedZGdddejZdS)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 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#c@seZdZ dZdZddddZddZd d Zd d Zd Z ddZ ddddZ ddZ d=ddZ ddZddZd=ddZd>dd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zd5d6Zd7d8Zd9d:Zd;d<Zd S)?r)ZscriptZstyle)ZtextareatitleT)convert_charrefscCs ||_|dSN)rreset)selfrr 2/opt/alt/python310/lib64/python3.10/html/parser.py__init__ss zHTMLParser.__init__cCs6 d|_d|_t|_d|_d|_d|_tj |dS)Nz???T) rawdatalasttaginteresting_normal interesting cdata_elem_support_cdata _escapable _markupbase ParserBaserr r r r r|szHTMLParser.resetcCs |j||_|ddS)Nr)rgoaheadr datar r r feeds zHTMLParser.feedcCs |ddS)N)rrr r r closeszHTMLParser.closeNcCs |jSr)_HTMLParser__starttag_textrr r r get_starttag_textszHTMLParser.get_starttag_textF escapablecCsZ||_||_|r|jstd|jtjtjB|_dStd|jtjtjB|_dS)Nz&|])z])) lowerrrrrecompile IGNORECASEASCIIr)r elemr!r r r set_cdata_modes       zHTMLParser.set_cdata_modecCst|_d|_d|_dS)NT)rrrrrr r r clear_cdata_modes zHTMLParser.clear_cdata_modecCs ||_dSr)r)r flagr r r _set_support_cdatas zHTMLParser._set_support_cdatac Cs|j}d}t|}||krU|jr;|js;|d|}|dkr:|dt||d}|dkr8td ||s8n|}n|j ||}|rI| }n|jrNn|}||kro|jrf|j rf| t|||n | ||||||}||kr{n|j}|d|rt||r||} n@|d|r||} n5|d|r||} n*|d|r||} n|d |r||} n|d |ks|r| d|d } nn| dkr|sِn|t||rn|d|r|d |kr| dnt||rn|||d dn|d|r0|}d D]} || |d r"|t| 8}nq|||d |nW|d|rF|jrF|||ddnA|||ddkr_|||d dn(|d |rq|||d dn|d|r|||d dnt d|} ||| }n|d|rt!||}|r|"d d} |#| |$} |d| d s| d } ||| }q d||dvr| |||d |||d }nu|d|rQt%||}|r|"d } |&| |$} |d| d s | d } ||| }q t'||}|r;|r:|"||dkr:|$} | |kr2|} |||d }n|d |krP| d|||d }nn||ks|r||kr|jrq|j rq| t|||n | ||||||}||d|_dS)Nr<&"z [\t\n\r\f ;]zrr7r4r6rr0rzrIrR)r rVreportrrBrXr r r rEfszHTMLParser.parse_commentrcCsD|j}|d|d}|dkrdS|r|||d||dS)Nrr0r7r)rr:rI)r rVr`rposr r r r]uszHTMLParser.parse_bogus_commentcCsH|j}t||d}|sdS|}|||d||}|S)Nr0r7)rpicloser=r>rMrRr rVrrBrXr r r rFszHTMLParser.parse_picCsd|_||}|dkr|S|j}||||_g}t||d}|}|d|_}||krt ||}|s=nS|ddd\} } } | sLd} n-| dddkr^| ddkssn| dddkrq| ddkrynn| dd} | rt | } | | | f|}||ks4||| } | dvr| \} }d |jvr| |jd } t|j|jd }n|t|j}|||||S| d r||||S|||||jvr|||S||jvr|j|d d |S) Nrrr0r4'r7")r/> rfTr )rcheck_for_whole_start_tagrtagfind_tolerantrBrRrPr"rattrfind_tolerantrappendstripZgetposcountr9r;r?rJhandle_startendtaghandle_starttagCDATA_CONTENT_ELEMENTSr(RCDATA_CONTENT_ELEMENTS)r rVendposrattrsrBrYtagmattrnamerestZ attrvaluerRlinenooffsetr r r rCs\  &(         zHTMLParser.parse_starttagcCs6|j}t||d}|}||ddkrdS|S)Nrrr7)r locatetagendrBrRrcr r r rhs z$HTMLParser.check_for_whole_start_tagcCs|j}|d|ddkrdSt||s*||d|ddkr%|dS||St||d}|}||ddkr@dSt||d}|d }| || |S)Nrr0rr7r4r) rr:rHrBr]rzrRrirPr" handle_endtagr))r rVrrBrXrtr r r rDs    zHTMLParser.parse_endtagcCs|||||dSr)ror{r rtrsr r r rns zHTMLParser.handle_startendtagcCdSrr r|r r r rozHTMLParser.handle_starttagcCr}rr )r rtr r r r{r~zHTMLParser.handle_endtagcCr}rr r r[r r r rQr~zHTMLParser.handle_charrefcCr}rr rr r r rTr~zHTMLParser.handle_entityrefcCr}rr rr r r r?r~zHTMLParser.handle_datacCr}rr rr r r rIr~zHTMLParser.handle_commentcCr}rr )r Zdeclr r r rL r~zHTMLParser.handle_declcCr}rr rr r r rM r~zHTMLParser.handle_picCr}rr rr r r rKr~zHTMLParser.unknown_decl)T)r) __name__ __module__ __qualname__rprqr rrrrrr(r)r+rrGrEr]rFrCrhrDrnror{rQrTr?rIrLrMrKr r r r rZs@     "   7  )r#rZhtmlr__all__r$rrUrSrOrArHrbr^r_riVERBOSErjrzZlocatestarttagend_tolerantZ endendtagZ endtagfindrrr r r r s6