§
    ¡”jc‘ ã                   ó¾  — d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZ d dlmZ d dlmZmZ dQd„Z G d„ d¦  «        Zd	„ Z G d
„ d¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z  G d„ de¦  «        Z! G d„ de¦  «        Z" G d„ de¦  «        Z# G d „ d!e¦  «        Z$ G d"„ d#e¦  «        Z% G d$„ d%e¦  «        Z& G d&„ d'e¦  «        Z' G d(„ d)e¦  «        Z( G d*„ d+e¦  «        Z) G d,„ d-e¦  «        Z* G d.„ d/e¦  «        Z+ G d0„ d1e¦  «        Z, G d2„ d3e¦  «        Z- G d4„ d5e¦  «        Z. G d6„ d7e¦  «        Z/ G d8„ d9e¦  «        Z0i d:e“d;e“d<e“d=e“d>e“d?e“d@e “dAe!“dBe"“dCe#“dDe$“dEe%“dFe&“dGe'“dHe(“dIe)“dJe*“e+e,e-e.e/e0dKœ¥Z1dL„ Z2dRdP„Z3dNS )Sé   )Úinputstream)ÚReparseErrorÚTokenÚadjust_foreign_attributesÚadjust_mathml_attributesÚadjust_svg_attributesÚascii_upper_to_lowerÚcdata_elementsÚheading_elementsÚhtml_integration_point_elementsÚ&mathml_text_integration_point_elementsÚ
namespacesÚrcdata_elementsÚspace_charactersÚspecial_elements)ÚHTMLTokenizer)ÚMarkerÚTreeBuilderTc                 ó8   —  t          |¦  «        j        | fi |¤ŽS )uÔ  Parse an HTML document into a tree.

    :param document:
        The document to parse as a HTML string, filename, file-like object.
    :type document:
        :class:`str`, :class:`bytes`, :class:`pathlib.Path` or
        :term:`file object`
    :param bool namespace_html_elements:
        Whether or not to namespace HTML elements.

    Extra parameters can be provided to define possible encodings if the
    document is given as :class:`bytes`.

    :param override_encoding: Forced encoding provided by user agent.
    :type override_encoding: str or bytes
    :param transport_encoding: Encoding provided by transport layout.
    :type transport_encoding: str or bytes
    :param same_origin_parent_encoding: Parent document encoding.
    :type same_origin_parent_encoding: str or bytes
    :param likely_encoding: Possible encoding provided by user agent.
    :type likely_encoding: str or bytes
    :param default_encoding: Encoding used as fallback.
    :type default_encoding: str or bytes

    :returns: :class:`xml.etree.ElementTree.Element`.

    Example:

    >>> from tinyhtml5 import parse
    >>> parse('<html><body><p>This is a doc</p></body></html>')
    <Element '{http://www.w3.org/1999/xhtml}html' at â€¦>

    )Ú
HTMLParserÚparse)ÚdocumentÚnamespace_html_elementsÚkwargss      ú_/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/tinyhtml5/parser.pyr   r      s)   € ðD 5�:Ð-Ñ.Ô.Ô4°XÐHÐHÀÐHÐHÐHó    c                   ó†   — e Zd ZdZdd„Zdd„Zd„ Zed„ ¦   «         Zd	„ Z	d
„ Z
d„ Zdd„Zdd„Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )r   z]HTML parser.

    Generate a tree structure from a stream of (possibly malformed) HTML.

    Tc                 ó’   ‡ — t          |¦  «        ‰ _        g ‰ _        ˆ fd„t                               ¦   «         D ¦   «         ‰ _        d S )Nc                 ó:   •— i | ]\  }}| |‰‰j         ¦  «        “ŒS © )Útree)Ú.0ÚnameÚclsÚselfs      €r   ú
<dictcomp>z'HTMLParser.__init__.<locals>.<dictcomp>E   s-   ø€ ÐSÐSÐS±i°d¸C�t˜S˜S  t¤yÑ1Ô1ÐSÐSÐSr   )r   r!   ÚerrorsÚ_phasesÚitemsÚphases)r%   r   s   ` r   Ú__init__zHTMLParser.__init__B   sA   ø€ ÝÐ 7Ñ8Ô8ˆŒ	ØˆŒØSÐSÐSÐSÅ7Ç=Â=Á?Ä?ÐSÑSÔSˆŒˆˆr   NFc                 ó  — || _         || _        t          |fd| i|¤Ž| _        |                      ¦   «          	 |                      ¦   «          d S # t          $ r, |                      ¦   «          |                      ¦   «          Y d S w xY w)NÚparser)Ú	containerÚ	scriptingr   Ú	tokenizerÚresetÚ	main_loopr   )r%   Ústreamr.   r/   r   s        r   Ú_parsezHTMLParser._parseG   s•   € Ø"ˆŒØ"ˆŒÝ& vÐEÐE°dÐE¸fÐEÐEˆŒØ�
Š
‰Œˆð	Ø�NŠNÑÔÐÐÐøÝð 	ð 	ð 	Ø�JŠJ‰LŒLˆLØ�NŠNÑÔÐÐÐÐð	øøøs   ¸A Á2BÂBc                 ó  — | j                              ¦   «          d| _        g | _        d| _        | j        r­| j        t          v r| j        j        | j        _	        nH| j        t          v r| j        j        | j        _	        n#| j        dk    r| j        j        | j        _	        n	 | j        d         | _        | j                             ¦   «          |                      ¦   «          n| j        d         | _        d | _        d | _        d| _        d S )NFz	no quirksÚ	plaintextúbefore htmlÚinitialT)r!   r1   Úfirst_start_tagr'   Úcompatibility_moder.   r
   r0   Úrcdata_stateÚstater   Úrawtext_stateÚplaintext_stater*   ÚphaseÚ_insert_html_elementÚreset_insertion_modeÚ
last_phaseÚbefore_rcdata_phaseÚframeset_ok©r%   s    r   r1   zHTMLParser.resetR   sù   € ØŒ	�ŠÑÔÐØ$ˆÔØˆŒØ"-ˆÔàŒ>ð 	0ØŒ~¥Ð/Ð/Ø'+¤~Ô'B�”Ô$Ð$Ø”¥?Ð2Ð2Ø'+¤~Ô'C�”Ô$Ð$Ø” ;Ò.Ð.Ø'+¤~Ô'E�”Ô$Ð$ð Øœ ]Ô3ˆDŒJØŒJ×+Ò+Ñ-Ô-Ð-Ø×%Ò%Ñ'Ô'Ð'Ð'àœ YÔ/ˆDŒJàˆŒà#'ˆÔ àˆÔÐÐr   c                 ó^   — t          | d¦  «        r| j        j        j        d         j        S dS )z†Name of the character encoding that was used to decode the input stream.

        :obj:`None` if that is not determined yet.

        r0   é    N)Úhasattrr0   r3   Úencodingr#   rE   s    r   rI   zHTMLParser.encodingo   s6   € õ �4˜Ñ%Ô%ð 	:Ø”>Ô(Ô1°!Ô4Ô9Ð9ð	:ð 	:r   c                 ó¶   — |j         |j        f}|t          d         dfk    r0d|j        v o&|j        d                              t
          ¦  «        dv S |t          v S )NÚmathmlúannotation-xmlrI   )z	text/htmlzapplication/xhtml+xml)Ú	namespacer#   r   Ú
attributesÚ	translater	   r   ©r%   ÚelementÚ	full_names      r   Úis_html_integration_pointz$HTMLParser.is_html_integration_pointy   sl   € ØÔ&¨¬Ð5ˆ	Ø� HÔ-Ð/?Ð@Ò@Ð@à˜gÔ0Ð0ð 7ØÔ" :Ô.×8Ò8Õ9MÑNÔNØ6ð7ð8ð Õ;Ð;Ð;r   c                 ó0   — |j         |j        f}|t          v S ©N)rM   r#   r   rP   s      r   Ú is_mathml_text_integration_pointz+HTMLParser.is_mathml_text_integration_point‚   s   € ØÔ&¨¬Ð5ˆ	ØÕBÐBÐBr   c                 ó  — | j         D �]¹}d }|}|��q|}| j        j        r| j        j        d         nd }|r|j        nd }|r|j        nd }|d         }|t
          j        k    r4|                      |d         |                     di ¦  «        ¦  «         d }�nêt          | j        j        ¦  «        dk    sÕ|| j        j
        k    sÅ|                      |¦  «        rC|t
          j        k    r|d         t          ddg¦  «        vs‡|t
          j        t
          j        fv sm|t           d	         k    r"|d
k    r|t
          j        k    r|d         dk    s:|                      |¦  «        r-|t
          j        t
          j        t
          j        fv r| j        }n| j        d         }|t
          j        k    r|                     |¦  «        }n½|t
          j        k    r|                     |¦  «        }n—|t
          j        k    r|                     |¦  «        }nq|t
          j        k    r|                     |¦  «        }nK|t
          j        k    r|                     |¦  «        }n%|t
          j        k    r|                     |¦  «        }|�­q|t
          j        k    r.|d         r&|d         s|                      dd|d         i¦  «         �Œ»d}	g }
|	rD|
                     | j        ¦  «         | j                             ¦   «         }	|	r| j        |
vsJ ‚|	°Bd S d S )NéÿÿÿÿÚtypeÚdataÚdatavarsrG   r#   ÚmglyphÚ
malignmarkrK   rL   Úsvgúin foreign contentÚselfClosingÚselfClosingAcknowledgedz&non-void-element-with-trailing-solidusT)r0   r!   Úopen_elementsrM   r#   r   ÚPARSE_ERRORÚparse_errorÚgetÚlenÚdefault_namespacerV   Ú	START_TAGÚ	frozensetÚ
CHARACTERSÚSPACE_CHARACTERSr   rS   r?   r*   Úprocess_charactersÚprocess_space_charactersÚprocess_start_tagÚEND_TAGÚprocess_end_tagÚCOMMENTÚprocess_commentÚDOCTYPEÚprocess_doctypeÚappendÚprocess_eof)r%   ÚtokenÚprevious_tokenÚ	new_tokenÚcurrent_nodeÚcurrent_node_namespaceÚcurrent_node_namerY   r?   Ú	reprocessr*   s              r   r2   zHTMLParser.main_loop†   s`  € Ø”^ð 3	6ñ 3	6ˆEØ!ˆNØˆIØÑ'Ø!*�à37´9Ô3JÐT�D”IÔ+¨BÔ/Ð/ÐPTð ð /;ÐD�LÔ*Ð*Àð 'à9EÐ$O LÔ$5Ð$5È4Ð!à  Ô(�à�5Ô,Ò,Ð,Ø×$Ò$ Y¨vÔ%6¸	¿ºÀjÐRTÑ8UÔ8UÑVÔVÐVØ $�I‘Iå˜DœIÔ3Ñ4Ô4¸Ò9Ð9Ø.°$´)Ô2MÒMÐMØ×>Ò>¸|ÑLÔLð Nà¥5¤?Ò2Ð2Ø  œ=µ	¸8À\Ð:RÑ0SÔ0SÐSÐSØ¥5Ô#3µUÔ5KÐ"LÐLÐLØ/µ:¸hÔ3GÒGÐGØ*Ð.>Ò>Ð>Ø¥¤Ò0Ð0Ø˜vœ¨%Ò/Ð/Ø×7Ò7¸ÑEÔEð 0ØJNÝ!œO­UÔ-=Ý!Ô2ðS4ð K4ð K4ð !%¤
˜˜à $¤Ð,@Ô A˜à�uÔ/Ò/Ð/Ø$)×$<Ò$<¸YÑ$GÔ$G˜	˜	Ø¥Ô!7Ò7Ð7Ø$)×$BÒ$BÀ9Ñ$MÔ$M˜	˜	Ø¥¤Ò0Ð0Ø$)×$;Ò$;¸IÑ$FÔ$F˜	˜	Ø¥¤Ò.Ð.Ø$)×$9Ò$9¸)Ñ$DÔ$D˜	˜	Ø¥¤Ò.Ð.Ø$)×$9Ò$9¸)Ñ$DÔ$D˜	˜	Ø¥¤Ò.Ð.Ø$)×$9Ò$9¸)Ñ$DÔ$D˜	ðU Ñ'ðX �œÒ'Ð'¨N¸=Ô,IÐ'Ø&Ð'@ÔAð (à× Ò Ø<Ø˜^¨FÔ3Ð4ñ6ô 6ð 6ùð
 ˆ	ØˆØð 	0Ø�MŠM˜$œ*Ñ%Ô%Ð%Øœ
×.Ò.Ñ0Ô0ˆIØð 0Ø”z¨Ð/Ð/Ð/Ð/ð	 ð 	0ð 	0ð 	0ð 	0ð 	0r   c                 óR   —  | j         |fi |¤Ž | j                             |¦  «        S )zvParse a HTML document into a well-formed tree.

        If ``full_tree`` is ``True``, return the whole tree.

        )r4   r!   Úget_document)r%   r3   Ú	full_treer   s       r   r   zHTMLParser.parseÅ   s4   € ð 	ˆŒ�FÐ%Ð%˜fÐ%Ð%Ð%ØŒy×%Ò% iÑ0Ô0Ð0r   Údivc                 óT   —  | j         |fd|i|¤Ž | j                             ¦   «         S )u‡   Parse a HTML fragment into a well-formed tree fragment.

        ``container`` is the tag name of the fragmentâ€™s container.

        r.   )r4   r!   Úget_fragment)r%   r3   r.   r   s       r   Úparse_fragmentzHTMLParser.parse_fragmentÎ   s7   € ð 	ˆŒ�FÐ:Ð: iÐ:°6Ð:Ð:Ð:ØŒy×%Ò%Ñ'Ô'Ð'r   c                 ó€   — |€i }| j                              | j        j                             ¦   «         ||f¦  «         d S rU   )r'   ru   r0   r3   Úposition)r%   Ú	errorcoder[   s      r   rd   zHTMLParser.parse_error×   sA   € ØÐØˆHØŒ×Ò˜DœNÔ1×:Ò:Ñ<Ô<¸iÈÐRÑSÔSÐSÐSÐSr   c                 ó0   — t          |t          ¦  «         d S rU   )Úadjust_attributesr   ©r%   rw   s     r   r   z#HTMLParser.adjust_mathml_attributesÜ   s   € Ý˜%Õ!9Ñ:Ô:Ð:Ð:Ð:r   c                 ó0   — t          |t          ¦  «         d S rU   )r‰   r   rŠ   s     r   r   z HTMLParser.adjust_svg_attributesß   s   € Ý˜%Õ!6Ñ7Ô7Ð7Ð7Ð7r   c                 ó0   — t          |t          ¦  «         d S rU   )r‰   r   rŠ   s     r   r   z$HTMLParser.adjust_foreign_attributesâ   s   € Ý˜%Õ!:Ñ;Ô;Ð;Ð;Ð;r   c                 ój  — d}ddddddddddd	d	d
ddœ}| j         j        d d d…         D ]‚}|j        }d }|| j         j        d         k    r| j        sJ ‚d}| j        }|dv r	| j        sJ ‚|s|j        | j         j        k    rŒX||v r| j        ||                  } n|r| j        d	         } nŒƒ|| _        d S )NFú	in selectúin cellúin rowúin table bodyú
in captionúin column groupúin tableúin bodyúin framesetúbefore head)ÚselectÚtdÚthÚtrÚtbodyÚtheadÚtfootÚcaptionÚcolgroupÚtableÚheadÚbodyÚframesetÚhtmlrX   rG   T)r˜   r    r¢   r¥   )r!   rb   r#   r.   rM   rg   r*   r?   )r%   ÚlastÚ	new_modesÚnodeÚ	node_nameÚ	new_phases         r   rA   zHTMLParser.reset_insertion_modeå   s  € ð ˆà!ØØØØ$Ø$Ø$Ø#Ø)ØØØØ%Ø!ð
ð 
ˆ	ð  ”IÔ+¨D¨D¨b¨DÔ1ð 	ð 	ˆDØœ	ˆIØˆIØ�t”yÔ.¨qÔ1Ò1Ð1Ø”~Ð%Ð%Ð%Ø�Ø œN�	àÐBÐBÐBØ”~Ð%Ð%Ð%àð ˜DœN¨d¬iÔ.IÒIÐIØà˜IÐ%Ð%Ø œK¨	°)Ô(<Ô=�	Ø�Øð Ø œK¨	Ô2�	Ø�ðð ˆŒ
ˆ
ˆ
r   c                 óè   — |dv sJ ‚| j                              |¦  «         |dk    r| j        j        | j        _        n| j        j        | j        _        | j        | _        | j        d         | _        d S )N)ÚRAWTEXTÚRCDATAr¬   Útext)	r!   Úinsert_elementr0   r=   r<   r;   r?   Úoriginal_phaser*   )r%   rw   Úcontent_types      r   Úparse_rcdata_rawtextzHTMLParser.parse_rcdata_rawtext  sr   € àÐ4Ð4Ð4Ð4Ð4àŒ	× Ò  Ñ'Ô'Ð'à˜9Ò$Ð$Ø#'¤>Ô#?ˆDŒNÔ Ð à#'¤>Ô#>ˆDŒNÔ à"œjˆÔà”[ Ô(ˆŒ
ˆ
ˆ
r   ©T©NF)F)r�   rU   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r+   r4   r1   ÚpropertyrI   rS   rV   r2   r   r„   rd   r   r   r   rA   r²   r    r   r   r   r   ;   s1  € € € € € ðð ðTð Tð Tð Tð
	ð 	ð 	ð 	ð ð  ð  ð: ð:ð :ñ „Xð:ð<ð <ð <ðCð Cð Cð=0ð =0ð =0ð~1ð 1ð 1ð 1ð(ð (ð (ð (ðTð Tð Tð Tð
;ð ;ð ;ð8ð 8ð 8ð<ð <ð <ð)ð )ð )ðV)ð )ð )ð )ð )r   r   c                 ó   — d„ | D ¦   «         S )Nc                 óT   — i | ]%\  }}t          |t          ¦  «        r|fn|D ]}||“ŒŒ&S r    )Ú
isinstanceÚstr)r"   ÚkeysÚvalueÚkeys       r   r&   zdispatch.<locals>.<dictcomp>!  sZ   € ð ð ð áˆD�%Ý)¨$µÑ4Ô4Ð>�T�G�G¸$ðð ð ð 	ˆUðð ð ð r   r    )r)   s    r   ÚdispatchrÁ      s#   € ðð à ðñ ô ð r   c                   óL   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ ZdS )ÚPhasez?Base class for helper that implements each phase of processing.)Ú__end_tag_cacheÚ__start_tag_cacher-   r!   c                 ó>   — || _         || _        i | _        i | _        d S rU   )r-   r!   Ú_Phase__start_tag_cacheÚ_Phase__end_tag_cache)r%   r-   r!   s      r   r+   zPhase.__init__,  s&   € ØˆŒØˆŒ	Ø!#ˆÔØ!ˆÔÐÐr   c                 ó   — t           ‚rU   )ÚNotImplementedErrorrE   s    r   rv   zPhase.process_eof2  s   € Ý!Ð!r   c                 ó\   — | j                              || j         j        d         ¦  «         d S )NrX   ©r!   Úinsert_commentrb   rŠ   s     r   rr   zPhase.process_comment5  s,   € ð 	Œ	× Ò  ¨¬	Ô(?ÀÔ(CÑDÔDÐDÐDÐDr   c                 ó:   — | j                              d¦  «         d S )Nzunexpected-doctype©r-   rd   rŠ   s     r   rt   zPhase.process_doctype:  s   € ØŒ×ÒÐ 4Ñ5Ô5Ð5Ð5Ð5r   c                 óF   — | j                              |d         ¦  «         d S ©NrZ   ©r!   Úinsert_textrŠ   s     r   rl   zPhase.process_characters=  ó"   € ØŒ	×Ò˜e FœmÑ,Ô,Ð,Ð,Ð,r   c                 óF   — | j                              |d         ¦  «         d S rÑ   rÒ   rŠ   s     r   rm   zPhase.process_space_characters@  rÔ   r   c                 óì  — |d         }|| j         v r| j         |         }nÊ| j                             |t          | ¦  «        j        ¦  «        x}| j         |<   t          | j         ¦  «        t          | j        ¦  «        dz  k    rf| j                              t          t          | j         ¦  «        ¦  «        ¦  «         t          | j         ¦  «        t          | j        ¦  «        dz  k    °f || |¦  «        S ©Nr#   gš™™™™™ñ?)	rÇ   Ústart_tag_handlerre   rY   Ústart_tag_otherrf   ÚpopÚnextÚiter©r%   rw   r#   Úfunctions       r   rn   zPhase.process_start_tagC  sí   € Ø�VŒ}ˆð �4Ô)Ð)Ð)ØÔ-¨dÔ3ˆHˆHà6:Ô6L×6PÒ6PØ•d˜4‘j”jÔ0ñ72ô 72ð 2ˆH�tÔ-¨dÑ3õ �dÔ,Ñ-Ô-µ°DÔ4JÑ0KÔ0KÈcÑ0QÒQÐQàÔ&×*Ò*­4µ°TÔ5KÑ0LÔ0LÑ+MÔ+MÑNÔNÐNõ �dÔ,Ñ-Ô-µ°DÔ4JÑ0KÔ0KÈcÑ0QÒQÐQð ˆx˜˜eÑ$Ô$Ð$r   c                 ó(  — | j         j        s&|d         dk    r| j                              d¦  «         |d                              ¦   «         D ]8\  }}|| j        j        d         j        vr|| j        j        d         j        |<   Œ9d| j         _        d S )Nr#   r¥   znon-html-rootrZ   rG   F)r-   r9   rd   r)   r!   rb   rN   ©r%   rw   Úattrr¿   s       r   Ústart_tag_htmlzPhase.start_tag_htmlR  sš   € ØŒ{Ô*ð 	5¨u°V¬}ÀÒ/FÐ/FØŒK×#Ò# OÑ4Ô4Ð4ð ! œ=×.Ò.Ñ0Ô0ð 	Dð 	D‰KˆD�%Ø˜4œ9Ô2°1Ô5Ô@Ð@Ð@Ø>C�”	Ô'¨Ô*Ô5°dÑ;øØ&+ˆŒÔ#Ð#Ð#r   c                 óì  — |d         }|| j         v r| j         |         }nÊ| j                             |t          | ¦  «        j        ¦  «        x}| j         |<   t          | j         ¦  «        t          | j        ¦  «        dz  k    rf| j                              t          t          | j         ¦  «        ¦  «        ¦  «         t          | j         ¦  «        t          | j        ¦  «        dz  k    °f || |¦  «        S r×   )	rÈ   Úend_tag_handlerre   rY   Úend_tag_otherrf   rÚ   rÛ   rÜ   rÝ   s       r   rp   zPhase.process_end_tag\  sí   € Ø�VŒ}ˆð �4Ô'Ð'Ð'ØÔ+¨DÔ1ˆHˆHà48Ô4H×4LÒ4LØ•d˜4‘j”jÔ.ñ50ô 50ð 0ˆH�tÔ+¨DÑ1õ �dÔ*Ñ+Ô+­c°$Ô2FÑ.GÔ.GÈ#Ñ.MÒMÐMàÔ$×(Ò(­­d°4Ô3GÑ.HÔ.HÑ)IÔ)IÑJÔJÐJõ �dÔ*Ñ+Ô+­c°$Ô2FÑ.GÔ.GÈ#Ñ.MÒMÐMð ˆx˜˜eÑ$Ô$Ð$r   N)rµ   r¶   r·   r¸   Ú	__slots__r+   rv   rr   rt   rl   rm   rn   râ   rp   r    r   r   rÃ   rÃ   (  s©   € € € € € ØIÐIØJ€Ið"ð "ð "ð"ð "ð "ðEð Eð Eð
6ð 6ð 6ð-ð -ð -ð-ð -ð -ð%ð %ð %ð,ð ,ð ,ð%ð %ð %ð %ð %r   rÃ   c                   óR   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	S )
ÚInitialPhasec                 ó   — d S rU   r    rŠ   s     r   rm   z%InitialPhase.process_space_characterso  ó   € Øˆr   c                 óP   — | j                              || j         j        ¦  «         d S rU   ©r!   rÍ   r   rŠ   s     r   rr   zInitialPhase.process_commentr  ó%   € ØŒ	× Ò  ¨¬	Ô(:Ñ;Ô;Ð;Ð;Ð;r   c                 óˆ  — |d         }|d         }|d         }|d         }|dk    s
|€|� |dk    r| j                              d¦  «         |€d}| j                             |¦  «         |dk    r|                     t
          ¦  «        }|rV|d         dk    sJ|                     d	¦  «        s5|d
v s1|                     d¦  «        r|�|r%|                     ¦   «         dk    rd| j         _        n8|                     d¦  «        s|                     d¦  «        r|�d| j         _        | j         j	        d         | j         _
        d S )Nr#   ÚpublicIdÚsystemIdÚcorrectr¥   zabout:legacy-compatzunknown-doctypeÚ )7z*+//silmaril//dtd html pro v0r11 19970101//z4-//advasoft ltd//dtd html 3.0 aswedit + extensions//z*-//as//dtd html 3.0 aswedit + extensions//z-//ietf//dtd html 2.0 level 1//z-//ietf//dtd html 2.0 level 2//z&-//ietf//dtd html 2.0 strict level 1//z&-//ietf//dtd html 2.0 strict level 2//z-//ietf//dtd html 2.0 strict//z-//ietf//dtd html 2.0//z-//ietf//dtd html 2.1e//z-//ietf//dtd html 3.0//z-//ietf//dtd html 3.2 final//z-//ietf//dtd html 3.2//z-//ietf//dtd html 3//z-//ietf//dtd html level 0//z-//ietf//dtd html level 1//z-//ietf//dtd html level 2//z-//ietf//dtd html level 3//z"-//ietf//dtd html strict level 0//z"-//ietf//dtd html strict level 1//z"-//ietf//dtd html strict level 2//z"-//ietf//dtd html strict level 3//z-//ietf//dtd html strict//z-//ietf//dtd html//z(-//metrius//dtd metrius presentational//z5-//microsoft//dtd internet explorer 2.0 html strict//z.-//microsoft//dtd internet explorer 2.0 html//z0-//microsoft//dtd internet explorer 2.0 tables//z5-//microsoft//dtd internet explorer 3.0 html strict//z.-//microsoft//dtd internet explorer 3.0 html//z0-//microsoft//dtd internet explorer 3.0 tables//z#-//netscape comm. corp.//dtd html//z*-//netscape comm. corp.//dtd strict html//z*-//o'reilly and associates//dtd html 2.0//z3-//o'reilly and associates//dtd html extended 1.0//z;-//o'reilly and associates//dtd html extended relaxed 1.0//zN-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//zE-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//z$-//spyglass//dtd html 2.0 extended//z+-//sq//dtd html 2.0 hotmetal + extensions//z--//sun microsystems corp.//dtd hotjava html//z4-//sun microsystems corp.//dtd hotjava strict html//z-//w3c//dtd html 3 1995-03-24//z-//w3c//dtd html 3.2 draft//z-//w3c//dtd html 3.2 final//z-//w3c//dtd html 3.2//z-//w3c//dtd html 3.2s draft//z-//w3c//dtd html 4.0 frameset//z#-//w3c//dtd html 4.0 transitional//z(-//w3c//dtd html experimental 19960712//z&-//w3c//dtd html experimental 970421//z-//w3c//dtd w3 html//z-//w3o//dtd w3 html 3.0//z#-//webtechs//dtd mozilla html 2.0//z-//webtechs//dtd mozilla html//)z$-//w3o//dtd w3 html strict 3.0//en//z"-/w3c/dtd html 4.0 transitional/enr¥   )z -//w3c//dtd html 4.01 frameset//z$-//w3c//dtd html 4.01 transitional//z:http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtdÚquirks)z -//w3c//dtd xhtml 1.0 frameset//z$-//w3c//dtd xhtml 1.0 transitional//zlimited quirksr7   )r-   rd   r!   Úinsert_doctyperO   r	   Ú
startswithÚlowerr:   r*   r?   )r%   rw   r#   Ú	public_idÚ	system_idrñ   s         r   rt   zInitialPhase.process_doctypeu  s¦  € Ø�VŒ}ˆØ˜*Ô%ˆ	Ø˜*Ô%ˆ	Ø˜	Ô"ˆà�FŠNˆN˜iÐ3ØÐ&¨9Ð8MÒ+MÐ+MØŒK×#Ò#Ð$5Ñ6Ô6Ð6àÐØˆIàŒ	× Ò  Ñ'Ô'Ð'à˜Š?ˆ?Ø!×+Ò+Õ,@ÑAÔAˆIàð L	>˜5 œ=¨FÒ2Ð2Ø×$Ò$ð88ñ99ô 99ð 3ðv ð &ð &ð &ð ×%Ò%ð=ñ>ô >ð&ð Ð!Øð "Ø(ŸšÑ0Ô0ØLò Mð  Mà-5ˆDŒKÔ*Ð*Ø×"Ò"ð9ñ:ô :ð 	>ð ×#Ò#ð;ñ<ô <ð	>ð Ð#Ø-=ˆDŒKÔ*à œKÔ.¨}Ô=ˆŒÔÐÐr   c                 óV   — d| j         _        | j         j        d         | j         _        d S )Nró   r7   )r-   r:   r*   r?   rE   s    r   Úanything_elsezInitialPhase.anything_else×  s&   € Ø)1ˆŒÔ&Ø œKÔ.¨}Ô=ˆŒÔÐÐr   c                 ób   — | j                              d¦  «         |                      ¦   «          |S )Nzexpected-doctype-but-got-chars©r-   rd   rú   rŠ   s     r   rl   zInitialPhase.process_charactersÛ  s0   € ØŒ×ÒÐ @ÑAÔAÐAØ×ÒÑÔÐØˆr   c                 ót   — | j                              dd|d         i¦  «         |                      ¦   «          |S )Nz"expected-doctype-but-got-start-tagr#   rü   rŠ   s     r   rn   zInitialPhase.process_start_tagà  sD   € ØŒ×ÒØ0°6¸5À¼=Ð2Iñ	Kô 	Kð 	Kà×ÒÑÔÐØˆr   c                 ót   — | j                              dd|d         i¦  «         |                      ¦   «          |S )Nz expected-doctype-but-got-end-tagr#   rü   rŠ   s     r   rp   zInitialPhase.process_end_tagæ  sD   € ØŒ×ÒØ.°¸¸v¼Ð0Gñ	Iô 	Ið 	Ià×ÒÑÔÐØˆr   c                 ób   — | j                              d¦  «         |                      ¦   «          dS )Nzexpected-doctype-but-got-eofTrü   rE   s    r   rv   zInitialPhase.process_eofì  s0   € ØŒ×ÒÐ >Ñ?Ô?Ð?Ø×ÒÑÔÐØˆtr   N)rµ   r¶   r·   Útupleræ   rm   rr   rt   rú   rl   rn   rp   rv   r    r   r   rè   rè   l  s›   € € € € € Ø�‘”€Iðð ð ð<ð <ð <ð`>ð `>ð `>ðD>ð >ð >ðð ð ð
ð ð ðð ð ðð ð ð ð r   rè   c                   óL   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ ZdS )	ÚBeforeHtmlPhasec                 óŽ   — | j                              t          dd¦  «        ¦  «         | j        j        d         | j        _        d S )Nr¥   rh   r—   )r!   Úinsert_rootÚimplied_tag_tokenr-   r*   r?   rE   s    r   r@   z$BeforeHtmlPhase._insert_html_elementõ  s=   € ØŒ	×ÒÕ/°¸ÑDÔDÑEÔEÐEØ œKÔ.¨}Ô=ˆŒÔÐÐr   c                 ó.   — |                       ¦   «          dS ©NT©r@   rE   s    r   rv   zBeforeHtmlPhase.process_eofù  s   € Ø×!Ò!Ñ#Ô#Ð#Øˆtr   c                 óP   — | j                              || j         j        ¦  «         d S rU   rì   rŠ   s     r   rr   zBeforeHtmlPhase.process_commentý  rí   r   c                 ó   — d S rU   r    rŠ   s     r   rm   z(BeforeHtmlPhase.process_space_characters   rê   r   c                 ó.   — |                       ¦   «          |S rU   r  rŠ   s     r   rl   z"BeforeHtmlPhase.process_characters  s   € Ø×!Ò!Ñ#Ô#Ð#Øˆr   c                 ó^   — |d         dk    rd| j         _        |                      ¦   «          |S )Nr#   r¥   T)r-   r9   r@   rŠ   s     r   rn   z!BeforeHtmlPhase.process_start_tag  s2   € Ø�Œ=˜FÒ"Ð"Ø*.ˆDŒKÔ'Ø×!Ò!Ñ#Ô#Ð#Øˆr   c                 óŒ   — |d         dvr%| j                              dd|d         i¦  «         d S |                      ¦   «          |S )Nr#   ©r¢   r£   r¥   Úbrzunexpected-end-tag-before-html)r-   rd   r@   rŠ   s     r   rp   zBeforeHtmlPhase.process_end_tag  sb   € Ø�Œ=Ð >Ð>Ð>ØŒK×#Ò#Ø0°6¸5À¼=Ð2IñKô Kð Kð Kð Kð ×%Ò%Ñ'Ô'Ð'ØˆLr   N)rµ   r¶   r·   r   ræ   r@   rv   rr   rm   rl   rn   rp   r    r   r   r  r  ò  sˆ   € € € € € Ø�‘”€Ið>ð >ð >ðð ð ð<ð <ð <ðð ð ðð ð ðð ð ðð ð ð ð r   r  c                   ó�   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Z ed	efd
e	fg¦  «        Z edefg¦  «        ZdS )ÚBeforeHeadPhasec                 óL   — |                       t          dd¦  «        ¦  «         dS )Nr¢   rh   T©Ústart_tag_headr  rE   s    r   rv   zBeforeHeadPhase.process_eof  s&   € Ø×ÒÕ-¨f°kÑBÔBÑCÔCÐCØˆtr   c                 ó   — d S rU   r    rŠ   s     r   rm   z(BeforeHeadPhase.process_space_characters  rê   r   c                 óL   — |                       t          dd¦  «        ¦  «         |S ©Nr¢   rh   r  rŠ   s     r   rl   z"BeforeHeadPhase.process_characters   ó&   € Ø×ÒÕ-¨f°kÑBÔBÑCÔCÐCØˆr   c                 óL   — | j         j        d                              |¦  «        S ©Nr•   ©r-   r*   rn   rŠ   s     r   râ   zBeforeHeadPhase.start_tag_html$  ó    € ØŒ{Ô! )Ô,×>Ò>¸uÑEÔEÐEr   c                 óª   — | j                              |¦  «         | j         j        d         | j         _        | j        j        d         | j        _        d S )NrX   úin head)r!   r¯   rb   Úhead_elementr-   r*   r?   rŠ   s     r   r  zBeforeHeadPhase.start_tag_head'  sF   € ØŒ	× Ò  Ñ'Ô'Ð'Ø!%¤Ô!8¸Ô!<ˆŒ	ÔØ œKÔ.¨yÔ9ˆŒÔÐÐr   c                 óL   — |                       t          dd¦  «        ¦  «         |S r  r  rŠ   s     r   rÙ   zBeforeHeadPhase.start_tag_other,  r  r   c                 óL   — |                       t          dd¦  «        ¦  «         |S r  r  rŠ   s     r   Úend_tag_imply_headz"BeforeHeadPhase.end_tag_imply_head0  r  r   c                 óL   — | j                              dd|d         i¦  «         d S )Nzend-tag-after-implied-rootr#   rÏ   rŠ   s     r   rå   zBeforeHeadPhase.end_tag_other4  s*   € ØŒ×ÒÐ <¸vÀuÈVÄ}Ð>UÑVÔVÐVÐVÐVr   r¥   r¢   r  N)rµ   r¶   r·   r   ræ   rv   rm   rl   râ   r  rÙ   r"  rå   rÁ   rØ   rä   r    r   r   r  r    sá   € € € € € Ø�‘”€Iðð ð ðð ð ðð ð ðFð Fð Fð:ð :ð :ð
ð ð ðð ð ðWð Wð Wð !˜Ø	�Ð Ø	�Ð ð"ñ ô Ðð
 �hØ	'Ð);Ð<ð ñ ô €O€O€Or   r  c                   óä   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Z edefdefdefdefdefde	fde
fdefg¦  «        Z edefdefg¦  «        ZdS )ÚInHeadPhasec                 ó.   — |                       ¦   «          dS r  ©rú   rE   s    r   rv   zInHeadPhase.process_eofE  ó   € Ø×ÒÑÔÐØˆtr   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   rl   zInHeadPhase.process_charactersI  ó   € Ø×ÒÑÔÐØˆr   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   zInHeadPhase.start_tag_htmlM  r  r   c                 ó:   — | j                              d¦  «         d S )Nz!two-heads-are-not-better-than-onerÏ   rŠ   s     r   r  zInHeadPhase.start_tag_headP  s   € ØŒ×ÒÐ CÑDÔDÐDÐDÐDr   c                 ó€   — | j                              |¦  «         | j         j                             ¦   «          d|d<   d S ©NTra   ©r!   r¯   rb   rÚ   rŠ   s     r   Ústart_tag_base_link_commandz'InHeadPhase.start_tag_base_link_commandS  ó@   € ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ø+/ˆÐ'Ñ(Ð(Ð(r   c                 ó~  — | j                              |¦  «         | j         j                             ¦   «          d|d<   |d         }| j        j        j        j        d         dk    rÑd|v r,| j        j        j                             |d         ¦  «         d S d|v rŸd|v r�|d          	                    ¦   «         d	k    r�t          j        |d                              d
¦  «        ¦  «        }t          j        |¦  «        }|                     ¦   «         }| j        j        j                             |¦  «         d S d S d S d S d S )NTra   rZ   r   Ú	tentativeÚcharsetÚcontentz
http-equivzcontent-typezutf-8)r!   r¯   rb   rÚ   r-   r0   r3   rI   Úchange_encodingrö   r   ÚEncodingBytesÚencodeÚContentAttributeParserr   )r%   rw   rN   rZ   r-   Úcodecs         r   Ústart_tag_metazInHeadPhase.start_tag_metaX  sC  € ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ø+/ˆÐ'Ñ(à˜6”]ˆ
ØŒ;Ô Ô'Ô0°Ô3°{ÒBÐBØ˜JÐ&Ð&Ø”Ô%Ô,×<Ò<¸ZÈ	Ô=RÑSÔSÐSÐSÐSØ˜zÐ)Ð)Ø *Ð,Ð,Ø˜\Ô*×0Ò0Ñ2Ô2°nÒDÐDõ
 #Ô0°¸IÔ1F×1MÒ1MÈgÑ1VÔ1VÑWÔW�Ý$Ô;¸DÑAÔA�ØŸš™œ�Ø”Ô%Ô,×<Ò<¸UÑCÔCÐCÐCÐCð CÐBð *Ð)Ø,Ð,ØDÐDr   c                 ó<   — | j                              |d¦  «         d S )Nr­   ©r-   r²   rŠ   s     r   Ústart_tag_titlezInHeadPhase.start_tag_titlem  s    € ØŒ×(Ò(¨°Ñ9Ô9Ð9Ð9Ð9r   c                 ó<   — | j                              |d¦  «         d S ©Nr¬   r=  rŠ   s     r   Ústart_tag_noframes_stylez$InHeadPhase.start_tag_noframes_stylep  s    € àŒ×(Ò(¨°	Ñ:Ô:Ð:Ð:Ð:r   c                 óÄ   — | j         j        r| j                              |d¦  «         d S | j                             |¦  «         | j         j        d         | j         _        d S )Nr¬   úin head noscript)r-   r/   r²   r!   r¯   r*   r?   rŠ   s     r   Ústart_tag_noscriptzInHeadPhase.start_tag_noscriptt  s_   € ØŒ;Ô ð 	GØŒK×,Ò,¨U°IÑ>Ô>Ð>Ð>Ð>àŒI×$Ò$ UÑ+Ô+Ð+Ø $¤Ô 2Ð3EÔ FˆDŒKÔÐÐr   c                 óÞ   — | j                              |¦  «         | j        j        j        | j        j        _        | j        j        | j        _        | j        j        d         | j        _        d S )Nr®   )	r!   r¯   r-   r0   Úscript_data_stater<   r?   r°   r*   rŠ   s     r   Ústart_tag_scriptzInHeadPhase.start_tag_script{  sV   € ØŒ	× Ò  Ñ'Ô'Ð'Ø&*¤kÔ&;Ô&MˆŒÔÔ#Ø%)¤[Ô%6ˆŒÔ"Ø œKÔ.¨vÔ6ˆŒÔÐÐr   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   rÙ   zInHeadPhase.start_tag_other�  r*  r   c                 ó¾   — | j         j        j                             ¦   «         }|j        dk    sJ d|j        › �¦   «         ‚| j         j        d         | j         _        d S )Nr¢   zExpected head got ú
after head©r-   r!   rb   rÚ   r#   r*   r?   ©r%   rw   r¨   s      r   Úend_tag_headzInHeadPhase.end_tag_head…  s[   € ØŒ{ÔÔ-×1Ò1Ñ3Ô3ˆØŒy˜FÒ"Ð"Ð"Ð$D¸¼Ð$DÐ$DÑ"Ô"Ð"Ø œKÔ.¨|Ô<ˆŒÔÐÐr   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   Úend_tag_html_body_brz InHeadPhase.end_tag_html_body_brŠ  r*  r   c                 óL   — | j                              dd|d         i¦  «         d S ©Núunexpected-end-tagr#   rÏ   rŠ   s     r   rå   zInHeadPhase.end_tag_otherŽ  ó*   € ØŒ×ÒÐ 4°v¸uÀV¼}Ð6MÑNÔNÐNÐNÐNr   c                 óJ   — |                       t          d¦  «        ¦  «         d S )Nr¢   )rM  r  rE   s    r   rú   zInHeadPhase.anything_else‘  s%   € Ø×ÒÕ+¨FÑ3Ô3Ñ4Ô4Ð4Ð4Ð4r   r¥   Útitle)ÚnoframesÚstyleÚnoscriptÚscript)ÚbaseÚbasefontÚbgsoundÚcommandÚlinkÚmetar¢   )r  r¥   r£   N)rµ   r¶   r·   r   ræ   rv   rl   râ   r  r0  r;  r>  rA  rD  rG  rÙ   rM  rO  rå   rú   rÁ   rØ   rä   r    r   r   r%  r%  A  s‘  € € € € € Ø�‘”€Iðð ð ðð ð ðFð Fð FðEð Eð Eð0ð 0ð 0ð
Dð Dð Dð*:ð :ð :ð;ð ;ð ;ðGð Gð Gð7ð 7ð 7ðð ð ð=ð =ð =ð
ð ð ðOð Oð Oð5ð 5ð 5ð !˜Ø	�Ð Ø	�/Ð"Ø	Ð 8Ð9Ø	Ð'Ð(Ø	Ð#Ð$Ø	;Ø	$ð	&à	�Ð Ø	�Ð ð
"ñ 
ô 
Ðð �hØ	�ÐØ	Ð!5Ð6ð ñ ô €O€O€Or   r%  c                   ó´   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Z ede	fde
fdefg¦  «        Z edefdefg¦  «        ZdS )ÚInHeadNoscriptPhasec                 ób   — | j                              d¦  «         |                      ¦   «          dS )Nzeof-in-head-noscriptTrü   rE   s    r   rv   zInHeadNoscriptPhase.process_eof©  s0   € ØŒ×ÒÐ 6Ñ7Ô7Ð7Ø×ÒÑÔÐØˆtr   c                 óL   — | j         j        d                              |¦  «        S ©Nr  )r-   r*   rr   rŠ   s     r   rr   z#InHeadNoscriptPhase.process_comment®  ó    € ØŒ{Ô! )Ô,×<Ò<¸UÑCÔCÐCr   c                 ób   — | j                              d¦  «         |                      ¦   «          |S )Nzchar-in-head-noscriptrü   rŠ   s     r   rl   z&InHeadNoscriptPhase.process_characters±  s0   € ØŒ×ÒÐ 7Ñ8Ô8Ð8Ø×ÒÑÔÐØˆr   c                 óL   — | j         j        d                              |¦  «        S rd  ©r-   r*   rm   rŠ   s     r   rm   z,InHeadNoscriptPhase.process_space_characters¶  ó    € ØŒ{Ô! )Ô,×EÒEÀeÑLÔLÐLr   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   z"InHeadNoscriptPhase.start_tag_html¹  r  r   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   r0  z/InHeadNoscriptPhase.start_tag_base_link_command¼  r  r   c                 óL   — | j                              dd|d         i¦  «         d S ©Núunexpected-start-tagr#   rÏ   rŠ   s     r   Ústart_tag_head_noscriptz+InHeadNoscriptPhase.start_tag_head_noscript¿  ó*   € ØŒ×ÒÐ 6¸ÀÀvÄÐ8OÑPÔPÐPÐPÐPr   c                 ót   — | j                              dd|d         i¦  «         |                      ¦   «          |S ©Nzunexpected-inhead-noscript-tagr#   rü   rŠ   s     r   rÙ   z#InHeadNoscriptPhase.start_tag_otherÂ  óD   € ØŒ×ÒØ,¨v°u¸V´}Ð.Eñ	Gô 	Gð 	Gà×ÒÑÔÐØˆr   c                 ó¾   — | j         j        j                             ¦   «         }|j        dk    sJ d|j        › �¦   «         ‚| j         j        d         | j         _        d S )NrX  zExpected noscript got r  rK  rL  s      r   Úend_tag_noscriptz$InHeadNoscriptPhase.end_tag_noscriptÈ  s[   € ØŒ{ÔÔ-×1Ò1Ñ3Ô3ˆØŒy˜JÒ&Ð&Ð&Ð(LÀÄÐ(LÐ(LÑ&Ô&Ð&Ø œKÔ.¨yÔ9ˆŒÔÐÐr   c                 ót   — | j                              dd|d         i¦  «         |                      ¦   «          |S rr  rü   rŠ   s     r   Ú
end_tag_brzInHeadNoscriptPhase.end_tag_brÍ  rs  r   c                 óL   — | j                              dd|d         i¦  «         d S rQ  rÏ   rŠ   s     r   rå   z!InHeadNoscriptPhase.end_tag_otherÓ  rS  r   c                 óJ   — |                       t          d¦  «        ¦  «         d S )NrX  )ru  r  rE   s    r   rú   z!InHeadNoscriptPhase.anything_elseÖ  s%   € à×ÒÕ/°
Ñ;Ô;Ñ<Ô<Ð<Ð<Ð<r   r¥   )r[  r\  r^  r_  rV  rW  )r¢   rX  rX  r  N)rµ   r¶   r·   r   ræ   rv   rr   rl   rm   râ   r0  ro  rÙ   ru  rw  rå   rú   rÁ   rØ   rä   r    r   r   ra  ra  ¦  s=  € € € € € Ø�‘”€Iðð ð ð
Dð Dð Dðð ð ð
Mð Mð MðFð Fð FðFð Fð FðQð Qð Qðð ð ð:ð :ð :ð
ð ð ðOð Oð Oð=ð =ð =ð !˜Ø	�Ð Ø	EØ	$ð	&à	Ð6Ð7ð	"ñ ô Ðð �hØ	Ð%Ð&Ø	ˆzÐð ñ ô €O€O€Or   ra  c                   ó´   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Z edefdefde	fde
fdefg¦  «        Z edefg¦  «        ZdS )ÚAfterHeadPhasec                 ó.   — |                       ¦   «          dS r  r'  rE   s    r   rv   zAfterHeadPhase.process_eofê  r(  r   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   rl   z!AfterHeadPhase.process_charactersî  r*  r   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   zAfterHeadPhase.start_tag_htmlò  r  r   c                 óŠ   — d| j         _        | j                             |¦  «         | j         j        d         | j         _        d S )NFr•   )r-   rD   r!   r¯   r*   r?   rŠ   s     r   Ústart_tag_bodyzAfterHeadPhase.start_tag_bodyõ  s<   € Ø"'ˆŒÔØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨yÔ9ˆŒÔÐÐr   c                 ór   — | j                              |¦  «         | j        j        d         | j        _        d S )Nr–   )r!   r¯   r-   r*   r?   rŠ   s     r   Ústart_tag_framesetz!AfterHeadPhase.start_tag_framesetú  s2   € ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨}Ô=ˆŒÔÐÐr   c                 ór  — | j                              dd|d         i¦  «         | j        j                             | j        j        ¦  «         | j         j        d                              |¦  «         | j        j        d d d…         D ]/}|j        dk    r"| j        j         	                    |¦  «          d S Œ0d S )Nz#unexpected-start-tag-out-of-my-headr#   r  rX   r¢   )
r-   rd   r!   rb   ru   r  r*   rn   r#   ÚremoverL  s      r   Ústart_tag_from_headz"AfterHeadPhase.start_tag_from_headþ  sÄ   € ØŒ×ÒØ1°F¸EÀ&¼MÐ3Jñ	Lô 	Lð 	LàŒ	Ô×&Ò& t¤yÔ'=Ñ>Ô>Ð>ØŒÔ˜9Ô%×7Ò7¸Ñ>Ô>Ð>Ø”IÔ+¨D¨D¨b¨DÔ1ð 	ð 	ˆDØŒy˜FÒ"Ð"Ø”	Ô'×.Ò.¨tÑ4Ô4Ð4Ø��ð #ð	ð 	r   c                 óL   — | j                              dd|d         i¦  «         d S rm  rÏ   rŠ   s     r   r  zAfterHeadPhase.start_tag_head  rp  r   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   rÙ   zAfterHeadPhase.start_tag_other  r*  r   c                 ó.   — |                       ¦   «          |S rU   r'  rŠ   s     r   rO  z#AfterHeadPhase.end_tag_html_body_br  r*  r   c                 óL   — | j                              dd|d         i¦  «         d S rQ  rÏ   rŠ   s     r   rå   zAfterHeadPhase.end_tag_other  rS  r   c                 ó¦   — | j                              t          dd¦  «        ¦  «         | j        j        d         | j        _        d| j        _        d S )Nr£   rh   r•   T)r!   r¯   r  r-   r*   r?   rD   rE   s    r   rú   zAfterHeadPhase.anything_else  sG   € ØŒ	× Ò Õ!2°6¸;Ñ!GÔ!GÑHÔHÐHØ œKÔ.¨yÔ9ˆŒÔØ"&ˆŒÔÐÐr   r¥   r£   r¤   )	rZ  r[  r\  r^  r_  rV  rY  rW  rU  r¢   )r£   r¥   r  N)rµ   r¶   r·   r   ræ   rv   rl   râ   r€  r‚  r…  r  rÙ   rO  rå   rú   rÁ   rØ   rä   r    r   r   r{  r{  ç  s/  € € € € € Ø�‘”€Iðð ð ðð ð ðFð Fð Fð:ð :ð :ð
>ð >ð >ðð ð ðQð Qð Qðð ð ðð ð ðOð Oð Oð'ð 'ð 'ð
 !˜Ø	�Ð Ø	�Ð Ø	Ð'Ð(ð
Ø0ð	2à	�Ð ð"ñ ô Ðð �hØ	Ð!5Ð6ð ñ ô €O€O€Or   r{  c                   óÈ  ‡ — e Zd ZdZˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)d(„ Z*d)„ Z+d*„ Z,d+„ Z-d,„ Z.d-„ Z/d.„ Z0d/„ Z1d0„ Z2d1„ Z3d2„ Z4d3„ Z5d4„ Z6 e7g d5e8j9        f‘d6ef‘d7ef‘d8ef‘d9ef‘e:ef‘d:ef‘d;ef‘d<ef‘d=ef‘d>ef‘d?ef‘d@ef‘dAef‘dBef‘dCef‘dDef‘dEef‘dFef‘dGef‘dHef‘dIef‘dJe f‘dKe!f‘dLe"f‘dMe#f‘dNe$f‘dOe&f‘dPe'f‘dQe%f‘dRe(f‘dSe)f‘dTe*f‘¦  «        Z; e7d7e-fd5e.fdUe/fd;e0fdVe,fdWe1fe:e2fdXe3fdBe4fdYe5fg
¦  «        Z<ˆ xZ=S )ZÚInBodyPhase)rm   c                 óR   •—  t          ¦   «         j        |i |¤Ž | j        | _        d S rU   )Úsuperr+   Ú process_space_characters_non_prerm   ©r%   Úargsr   Ú	__class__s      €r   r+   zInBodyPhase.__init__-  s0   ø€ Ø�‰ŒÔ˜$Ð) &Ð)Ð)Ð)à(,Ô(MˆÔ%Ð%Ð%r   c                 ób   — |j         |j         k    o|j        |j        k    o|j        |j        k    S rU   )r#   rM   rN   )r%   Únode1Únode2s      r   Úis_matching_formatting_elementz*InBodyPhase.is_matching_formatting_element2  s7   € àŒJ˜%œ*Ò$ð 1ØŒO˜uœÒ.ð1àÔ Ô 0Ò0ð	2r   c                 óÖ  — | j                              |¦  «         | j         j        d         }g }| j         j        d d d…         D ]8}|t          u r n,|                      ||¦  «        r|                     |¦  «         Œ9t          |¦  «        dk    sJ ‚t          |¦  «        dk    r%| j         j                             |d         ¦  «         | j         j                             |¦  «         d S )NrX   é   )	r!   r¯   rb   Úactive_formatting_elementsr   r–  ru   rf   r„  )r%   rw   rQ   Úmatching_elementsr¨   s        r   Úadd_formatting_elementz"InBodyPhase.add_formatting_element8  só   € ØŒ	× Ò  Ñ'Ô'Ð'Ø”)Ô)¨"Ô-ˆàÐØ”IÔ8¸¸¸2¸Ô>ð 	/ð 	/ˆDØ•vˆ~ˆ~Ø�Ø×4Ò4°T¸7ÑCÔCð /Ø!×(Ò(¨Ñ.Ô.Ð.øåÐ$Ñ%Ô%¨Ò*Ð*Ð*Ð*ÝÐ Ñ!Ô! QÒ&Ð&ØŒIÔ0×7Ò7Ð8IÈ"Ô8MÑNÔNÐNØŒ	Ô,×3Ò3°GÑ<Ô<Ð<Ð<Ð<r   c                 ó    — t          d¦  «        }| j        j        d d d…         D ](}|j        |vr| j                             d¦  «          d S Œ)d S )N)ÚddÚdtÚliÚprœ   r™   rž   rš   r�   r›   r£   r¥   rX   z expected-closing-tag-but-got-eof)ri   r!   rb   r#   r-   rd   )r%   Úallowed_elementsr¨   s      r   rv   zInBodyPhase.process_eofI  ss   € Ý$ð &ñ ô Ðð ”IÔ+¨D¨D¨b¨DÔ1ð 	ð 	ˆDØŒyÐ 0Ð0Ð0Ø”×'Ò'Ð(JÑKÔKÐKØ��ð 1ð	ð 	r   c                 óT  — |d         }| j         | _        |                     d¦  «        rG| j        j        d         j        dv r.| j        j        d                              ¦   «         s
|dd …         }|r5| j                             ¦   «          | j                             |¦  «         d S d S )NrZ   ú
rX   )ÚpreÚlistingÚtextarear   )	r�  rm   rõ   r!   rb   r#   Úhas_contentÚ&reconstruct_active_formatting_elementsrÓ   )r%   rw   rZ   s      r   Ú%process_space_characters_drop_newlinez1InBodyPhase.process_space_characters_drop_newlineT  s³   € ð �VŒ}ˆØ(,Ô(MˆÔ%Ø�OŠO˜DÑ!Ô!ð 	ØŒIÔ# BÔ'Ô,Ð0NÐNÐNØ”IÔ+¨BÔ/×;Ò;Ñ=Ô=ð Oà˜˜˜”8ˆDØð 	(ØŒI×<Ò<Ñ>Ô>Ð>ØŒI×!Ò! $Ñ'Ô'Ð'Ð'Ð'ð	(ð 	(r   c                 ó
  — |d         dk    rd S | j                              ¦   «          | j                              |d         ¦  «         | j        j        r-t          d„ |d         D ¦   «         ¦  «        rd| j        _        d S d S d S )NrZ   ú c              3   ó(   K  — | ]}|t           vV — Œd S rU   ©r   ©r"   Úchars     r   ú	<genexpr>z1InBodyPhase.process_characters.<locals>.<genexpr>h  sA   è è € ð +Hð +HØ15�Õ,Ð,ð+Hð +Hð +Hð +Hð +Hð +Hr   F)r!   r¨  rÓ   r-   rD   ÚanyrŠ   s     r   rl   zInBodyPhase.process_charactersa  s­   € Ø�Œ=˜HÒ$Ð$àˆFØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	×Ò˜e FœmÑ,Ô,Ð,àŒ;Ô"ð 	,¥sð +Hð +HØ9>¸v¼ð+Hñ +Hô +Hñ (Hô (Hð 	,à&+ˆDŒKÔ#Ð#Ð#ð	,ð 	,ð 	,ð 	,r   c                 óx   — | j                              ¦   «          | j                              |d         ¦  «         d S rÑ   )r!   r¨  rÓ   rŠ   s     r   r�  z,InBodyPhase.process_space_characters_non_prel  s6   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	×Ò˜e FœmÑ,Ô,Ð,Ð,Ð,r   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   Ústart_tag_process_in_headz%InBodyPhase.start_tag_process_in_headp  r  r   c                 óŽ  — | j                              dddi¦  «         t          | j        j        ¦  «        dk    s| j        j        d         j        dk    r| j         j        sJ ‚d S d| j         _        |d                              ¦   «         D ]8\  }}|| j        j        d         j	        vr|| j        j        d         j	        |<   Œ9d S )Nrn  r#   r£   r   FrZ   )
r-   rd   rf   r!   rb   r#   r.   rD   r)   rN   rà   s       r   r€  zInBodyPhase.start_tag_bodys  sÒ   € ØŒ×ÒÐ 6¸ÀÐ8HÑIÔIÐIÝ�”	Ô'Ñ(Ô(¨AÒ-Ð-Ø”	Ô'¨Ô*Ô/°6Ò9Ð9Ø”;Ô(Ð(Ð(Ð(Ð(Ð(à&+ˆDŒKÔ#Ø$ Vœ}×2Ò2Ñ4Ô4ð Hð H‘��eØ˜tœyÔ6°qÔ9ÔDÐDÐDØBG�D”IÔ+¨AÔ.Ô9¸$Ñ?øðHð Hr   c                 ó¢  — | j                              dddi¦  «         t          | j        j        ¦  «        dk    s| j        j        d         j        dk    r| j         j        sJ ‚d S | j         j        sd S | j        j        d         j        r:| j        j        d         j         	                    | j        j        d         ¦  «         | j        j        d         j        dk    r9| j        j         
                    ¦   «          | j        j        d         j        dk    °9| j                             |¦  «         | j         j        d         | j         _        d S )	Nrn  r#   r¤   r   r£   rX   r¥   r–   )r-   rd   rf   r!   rb   r#   r.   rD   ÚparentÚremove_childrÚ   r¯   r*   r?   rŠ   s     r   r‚  zInBodyPhase.start_tag_frameset~  s:  € ØŒ×ÒÐ 6¸ÀÐ8LÑMÔMÐMÝ�”	Ô'Ñ(Ô(¨AÒ-Ð-Ø”	Ô'¨Ô*Ô/°6Ò9Ð9Ø”;Ô(Ð(Ð(Ð(Ð(Ð(Ø”Ô(ð 		BØˆDàŒyÔ& qÔ)Ô0ð 0Ø”	Ô'¨Ô*Ô1×>Ò>Ø”IÔ+¨AÔ.ñ0ô 0ð 0à”)Ô)¨"Ô-Ô2°fÒ<Ð<Ø”	Ô'×+Ò+Ñ-Ô-Ð-ð ”)Ô)¨"Ô-Ô2°fÒ<Ð<àŒI×$Ò$ UÑ+Ô+Ð+Ø $¤Ô 2°=Ô AˆDŒKÔÐÐr   c                 ó¶   — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              |¦  «         d S ©Nr   Úbutton©Úvariant)r!   Úelement_in_scopeÚ	end_tag_pr  r¯   rŠ   s     r   Ústart_tag_close_pzInBodyPhase.start_tag_close_pŽ  sV   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óæ   — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              |¦  «         d| j        _        | j        | _        d S )Nr   r»  r¼  F)	r!   r¾  r¿  r  r¯   r-   rD   r©  rm   rŠ   s     r   Ústart_tag_pre_listingz!InBodyPhase.start_tag_pre_listing“  sk   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ	× Ò  Ñ'Ô'Ð'Ø"'ˆŒÔØ(,Ô(RˆÔ%Ð%Ð%r   c                 óD  — | j         j        r| j                             dddi¦  «         d S | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              |¦  «         | j         j        d         | j         _        d S )Nrn  r#   Úformr   r»  r¼  rX   )	r!   Úform_elementr-   rd   r¾  r¿  r  r¯   rb   rŠ   s     r   Ústart_tag_formzInBodyPhase.start_tag_formš  sœ   € ØŒ9Ô!ð 	AØŒK×#Ò#Ð$:¸VÀVÐ<LÑMÔMÐMÐMÐMàŒy×)Ò)¨#°xÐ)Ñ@Ô@ð 7Ø—’Õ0°Ñ5Ô5Ñ6Ô6Ð6ØŒI×$Ò$ UÑ+Ô+Ð+Ø%)¤YÔ%<¸RÔ%@ˆDŒIÔ"Ð"Ð"r   c                 óö  — d| j         _        dgddgddgdœ}||d                  }t          | j        j        ¦  «        D ]W}|j        |v r3| j         j                             t          |j        ¦  «        ¦  «          n|j	        t          v r|j        dvr nŒX| j                             dd	¬
¦  «        r,| j         j                             t          d¦  «        ¦  «         | j                             |¦  «         d S )NFrŸ  rž  r�  )rŸ  rž  r�  r#   )Úaddressr�   r   r   r»  r¼  )r-   rD   Úreversedr!   rb   r#   r?   rp   r  Ú
name_tupler   r¾  r¯   )r%   rw   Ústop_names_mapÚ
stop_namesr¨   s        r   Ústart_tag_list_itemzInBodyPhase.start_tag_list_item£  s	  € Ø"'ˆŒÔà!% ¨t°T¨lÀ4ÈÀ,ÐOÐOˆØ# E¨&¤MÔ2ˆ
Ý˜TœYÔ4Ñ5Ô5ð 	ð 	ˆDØŒy˜JÐ&Ð&Ø”Ô!×1Ò1Ý% d¤iÑ0Ô0ñ2ô 2ð 2à�Ø”Õ#3Ð3Ð3Ø”IÐ%<Ð<Ð<Ø�øàŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	FØŒKÔ×-Ò-Õ.?ÀÑ.DÔ.DÑEÔEÐEàŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óö   — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              |¦  «         | j        j        j        | j        j        _        d S rº  )	r!   r¾  r¿  r  r¯   r-   r0   r>   r<   rŠ   s     r   Ústart_tag_plaintextzInBodyPhase.start_tag_plaintext¶  sk   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ	× Ò  Ñ'Ô'Ð'Ø&*¤kÔ&;Ô&KˆŒÔÔ#Ð#Ð#r   c                 ót  — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j         j        d         j        t          v rA| j                             dd|d         i¦  «         | j         j         	                    ¦   «          | j          
                    |¦  «         d S )Nr   r»  r¼  rX   rn  r#   )r!   r¾  r¿  r  rb   r#   r   r-   rd   rÚ   r¯   rŠ   s     r   Ústart_tag_headingzInBodyPhase.start_tag_heading¼  s¨   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ9Ô" 2Ô&Ô+Õ/?Ð?Ð?ØŒK×#Ò#Ð$:¸VÀUÈ6Ä]Ð<SÑTÔTÐTØŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óÎ  — | j                              d¦  «        }|rš| j                             ddddœ¦  «         |                      t          d¦  «        ¦  «         || j         j        v r| j         j                             |¦  «         || j         j        v r| j         j                             |¦  «         | j          	                    ¦   «          |  
                    |¦  «         d S )NÚaú$unexpected-start-tag-implies-end-tag©Ú	startNameÚendName)r!   Ú%element_in_active_formatting_elementsr-   rd   Úend_tag_formattingr  rb   r„  r™  r¨  r›  )r%   rw   Úafe_a_elements      r   Ústart_tag_azInBodyPhase.start_tag_aÄ  sç   € Øœ	×GÒGÈÑLÔLˆØð 	KØŒK×#Ò#Ø6Ø!¨cÐ2Ð2ñ4ô 4ð 4ð ×#Ò#Õ$5°cÑ$:Ô$:Ñ;Ô;Ð;Ø ¤	Ô 7Ð7Ð7Ø”	Ô'×.Ò.¨}Ñ=Ô=Ð=Ø ¤	Ô DÐDÐDØ”	Ô4×;Ò;¸MÑJÔJÐJØŒ	×8Ò8Ñ:Ô:Ð:Ø×#Ò# EÑ*Ô*Ð*Ð*Ð*r   c                 ób   — | j                              ¦   «          |                      |¦  «         d S rU   )r!   r¨  r›  rŠ   s     r   Ústart_tag_formattingz InBodyPhase.start_tag_formattingÒ  s0   € ØŒ	×8Ò8Ñ:Ô:Ð:Ø×#Ò# EÑ*Ô*Ð*Ð*Ð*r   c                 óH  — | j                              ¦   «          | j                              d¦  «        rY| j                             ddddœ¦  «         |                      t          d¦  «        ¦  «         | j                              ¦   «          |                      |¦  «         d S )NÚnobrrÔ  rÕ  )r!   r¨  r¾  r-   rd   rp   r  r›  rŠ   s     r   Ústart_tag_nobrzInBodyPhase.start_tag_nobrÖ  s£   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ9×%Ò% fÑ-Ô-ð 	?ØŒK×#Ò#Ø6Ø$°Ð8Ð8ñ:ô :ð :ð × Ò Õ!2°6Ñ!:Ô!:Ñ;Ô;Ð;àŒI×<Ò<Ñ>Ô>Ð>Ø×#Ò# EÑ*Ô*Ð*Ð*Ð*r   c                 ó<  — | j                              d¦  «        rB| j                             ddddœ¦  «         |                      t          d¦  «        ¦  «         |S | j                              ¦   «          | j                              |¦  «         d| j        _        d S )Nr»  rÔ  rÕ  F)	r!   r¾  r-   rd   rp   r  r¨  r¯   rD   rŠ   s     r   Ústart_tag_buttonzInBodyPhase.start_tag_buttoná  s    € ØŒ9×%Ò% hÑ/Ô/ð 		,ØŒK×#Ò#Ø6Ø&°8Ð<Ð<ñ>ô >ð >ð × Ò Õ!2°8Ñ!<Ô!<Ñ=Ô=Ð=ØˆLàŒI×<Ò<Ñ>Ô>Ð>ØŒI×$Ò$ UÑ+Ô+Ð+Ø&+ˆDŒKÔ#Ð#Ð#r   c                 óÌ   — | j                              ¦   «          | j                              |¦  «         | j         j                             t
          ¦  «         d| j        _        d S r´   )r!   r¨  r¯   r™  ru   r   r-   rD   rŠ   s     r   Ústart_tag_applet_marquee_objectz+InBodyPhase.start_tag_applet_marquee_objectí  sU   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô,×3Ò3µFÑ;Ô;Ð;Ø"'ˆŒÔÐÐr   c                 ó  — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              ¦   «          d| j        _        | j                             |d¦  «         d S )Nr   r»  r¼  Fr¬   )r!   r¾  r¿  r  r¨  r-   rD   r²   rŠ   s     r   Ústart_tag_xmpzInBodyPhase.start_tag_xmpó  sv   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ	×8Ò8Ñ:Ô:Ð:Ø"'ˆŒÔØŒ×(Ò(¨°	Ñ:Ô:Ð:Ð:Ð:r   c                 ó&  — | j         j        dk    r>| j                             dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                             |¦  «         d| j         _        | j         j        d         | j         _	        d S )Nró   r   r»  r¼  Fr”   )
r-   r:   r!   r¾  rp   r  r¯   rD   r*   r?   rŠ   s     r   Ústart_tag_tablezInBodyPhase.start_tag_tableú  s†   € ØŒ;Ô)¨XÒ5Ð5ØŒy×)Ò)¨#°xÐ)Ñ@Ô@ð =Ø×$Ò$Õ%6°sÑ%;Ô%;Ñ<Ô<Ð<ØŒ	× Ò  Ñ'Ô'Ð'Ø"'ˆŒÔØ œKÔ.¨zÔ:ˆŒÔÐÐr   c                 óÊ   — | j                              ¦   «          | j                              |¦  «         | j         j                             ¦   «          d|d<   d| j        _        d S )NTra   F)r!   r¨  r¯   rb   rÚ   r-   rD   rŠ   s     r   Ústart_tag_void_formattingz%InBodyPhase.start_tag_void_formatting  s^   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ø+/ˆÐ'Ñ(Ø"'ˆŒÔÐÐr   c                 óÐ   — | j         j        }|                      |¦  «         d|d         v r8|d         d                              t          ¦  «        dk    r|| j         _        d S d S d S )NrY   rZ   Úhidden)r-   rD   rê  rO   r	   )r%   rw   rD   s      r   Ústart_tag_inputzInBodyPhase.start_tag_input	  sp   € Ø”kÔ-ˆØ×&Ò& uÑ-Ô-Ð-Ø�e˜F”mÐ#Ð#Ø�f”˜fÔ%×/Ò/Õ0DÑEÔEÈÒQÐQà&1ˆDŒKÔ#Ð#Ð#ð $Ð#ØQÐQr   c                 ó€   — | j                              |¦  «         | j         j                             ¦   «          d|d<   d S r.  r/  rŠ   s     r   Ústart_tag_param_sourcez"InBodyPhase.start_tag_param_source  r1  r   c                 ó  — | j                              dd¬¦  «        r"|                      t          d¦  «        ¦  «         | j                              |¦  «         | j         j                             ¦   «          d|d<   d| j        _        d S )Nr   r»  r¼  Tra   F)	r!   r¾  r¿  r  r¯   rb   rÚ   r-   rD   rŠ   s     r   Ústart_tag_hrzInBodyPhase.start_tag_hr  s‚   € ØŒ9×%Ò% c°8Ð%Ñ<Ô<ð 	3Ø�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ø+/ˆÐ'Ñ(Ø"'ˆŒÔÐÐr   c           	      ó¦   — | j                              ddddœ¦  «         |                      t          dd|d         |d         ¬¦  «        ¦  «         d S )	Nzunexpected-start-tag-treated-asÚimageÚimg©ÚoriginalNameÚnewNamerh   rZ   r`   ©rN   Úself_closing)r-   rd   rn   r  rŠ   s     r   Ústart_tag_imagezInBodyPhase.start_tag_image  ss   € àŒ×ÒØ-Ø$°Ð7Ð7ñ	9ô 	9ð 	9ð 	×ÒÕ0Ø�;¨5°¬=Ø˜}Ô-ð /ñ  /ô  /ñ 	0ô 	0ð 	0ð 	0ð 	0r   c           	      óf  — | j                              dddi¦  «         | j        j        rd S i }d|d         v r|d         d         |d<   |                      t          dd|¬¦  «        ¦  «         |                      t          d	d¦  «        ¦  «         |                      t          d
d¦  «        ¦  «         d|d         v r|d         d         }nd}|                      t          j        |dœ¦  «         |d          	                    ¦   «         }d|v r|d= d|v r|d= d|d<   |                      t          dd||d         ¬¦  «        ¦  «         |  
                    t          d
¦  «        ¦  «         |                      t          d	d¦  «        ¦  «         |  
                    t          d¦  «        ¦  «         d S )Nzdeprecated-tagr#   ÚisindexÚactionrZ   rÄ  rh   )rN   ÚhrÚlabelÚpromptz3This is a searchable index. Enter search keywords: ©rY   rZ   Úinputr`   rø  )r-   rd   r!   rÅ  rn   r  rl   r   rj   Úcopyrp   )r%   rw   Ú
form_attrsr   rN   s        r   Ústart_tag_isindexzInBodyPhase.start_tag_isindex'  sæ  € ØŒ×ÒÐ 0°6¸9Ð2EÑFÔFÐFØŒ9Ô!ð 	ØˆFØˆ
Ø�u˜V”}Ð$Ð$Ø#(¨¤=°Ô#:ˆJ�xÑ Ø×ÒÝ˜f k¸jÐIÑIÔIñ	Kô 	Kð 	Kà×ÒÕ0°°{ÑCÔCÑDÔDÐDØ×ÒÕ0°¸+ÑFÔFÑGÔGÐGà�u˜V”}Ð$Ð$Ø˜6”] 8Ô,ˆFˆFàJˆFØ×Ò­Ô)9À6Ð JÐ JÑKÔKÐKØ˜6”]×'Ò'Ñ)Ô)ˆ
Ø�zÐ!Ð!Ø˜8Ð$Ø�zÐ!Ð!Ø˜8Ð$Ø&ˆ
�6ÑØ×ÒÕ0Ø�[¨ZØ˜}Ô-ð /ñ  /ô  /ñ 	0ô 	0ð 	0ð 	×ÒÕ.¨wÑ7Ô7Ñ8Ô8Ð8Ø×ÒÕ0°°{ÑCÔCÑDÔDÐDØ×ÒÕ.¨vÑ6Ô6Ñ7Ô7Ð7Ð7Ð7r   c                 óª   — | j                              |¦  «         | j        j        j        | j        j        _        | j        | _        d| j        _        d S r´   )	r!   r¯   r-   r0   r;   r<   r©  rm   rD   rŠ   s     r   Ústart_tag_textareazInBodyPhase.start_tag_textareaE  sH   € ØŒ	× Ò  Ñ'Ô'Ð'Ø&*¤kÔ&;Ô&HˆŒÔÔ#Ø(,Ô(RˆÔ%Ø"'ˆŒÔÐÐr   c                 óH   — d| j         _        |                      |¦  «         d S r´   )r-   rD   Ústart_tag_rawtextrŠ   s     r   Ústart_tag_iframezInBodyPhase.start_tag_iframeK  s&   € Ø"'ˆŒÔØ×Ò˜uÑ%Ô%Ð%Ð%Ð%r   c                 óv   — | j         j        r|                      |¦  «         d S |                      |¦  «         d S rU   )r-   r/   r	  rÙ   rŠ   s     r   rD  zInBodyPhase.start_tag_noscriptO  sC   € ØŒ;Ô ð 	(Ø×"Ò" 5Ñ)Ô)Ð)Ð)Ð)à× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 ó<   — | j                              |d¦  «         d S r@  r=  rŠ   s     r   r	  zInBodyPhase.start_tag_rawtextU  s    € ØŒ×(Ò(¨°	Ñ:Ô:Ð:Ð:Ð:r   c                 ó  — | j         j        d         j        dk    r,| j        j                             t          d¦  «        ¦  «         | j                              ¦   «          | j        j                              |¦  «         d S ©NrX   Úoption)	r!   rb   r#   r-   r?   rp   r  r¨  r¯   rŠ   s     r   Ústart_tag_optzInBodyPhase.start_tag_optX  so   € ØŒ9Ô" 2Ô&Ô+¨xÒ7Ð7ØŒKÔ×-Ò-Õ.?ÀÑ.IÔ.IÑJÔJÐJØŒ	×8Ò8Ñ:Ô:Ð:ØŒÔ×'Ò'¨Ñ.Ô.Ð.Ð.Ð.r   c                 óà  — | j                              ¦   «          | j                              |¦  «         d| j        _        | j        j        | j        j        d         | j        j        d         | j        j        d         | j        j        d         | j        j        d         | j        j        d         fv r| j        j        d         | j        _        d S | j        j        d	         | j        _        d S )
NFr”   r’   r“   r‘   r�   r�   úin select in tablerŽ   )r!   r¨  r¯   r-   rD   r?   r*   rŠ   s     r   Ústart_tag_selectzInBodyPhase.start_tag_select^  sÓ   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	× Ò  Ñ'Ô'Ð'Ø"'ˆŒÔØŒ;ÔØ”Ô" :Ô.Ø”Ô" <Ô0Ø”Ô"Ð#4Ô5Ø”Ô" ?Ô3Ø”Ô" 8Ô,Ø”Ô" 9Ô-ð!/ð /ð /ð !%¤Ô 2Ð3GÔ HˆDŒKÔÐÐà $¤Ô 2°;Ô ?ˆDŒKÔÐÐr   c                 ó
  — | j                              d¦  «        rN| j                              ¦   «          | j         j        d         j        dk    r| j                             d¦  «         | j                              |¦  «         d S )NÚrubyrX   zrp-or-rt-tag-not-in-ruby-scope)r!   r¾  Úgenerate_implied_end_tagsrb   r#   r-   rd   r¯   rŠ   s     r   Ústart_tag_rp_rtzInBodyPhase.start_tag_rp_rtm  sz   € ØŒ9×%Ò% fÑ-Ô-ð 	JØŒI×/Ò/Ñ1Ô1Ð1ØŒyÔ& rÔ*Ô/°6Ò9Ð9Ø”×'Ò'Ð(HÑIÔIÐIØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óN  — | j                              ¦   «          | j                             |¦  «         | j                             |¦  «         t
          d         |d<   | j                              |¦  «         |d         r%| j         j                             ¦   «          d|d<   d S d S )NrK   rM   r`   Tra   )	r!   r¨  r-   r   r   r   r¯   rb   rÚ   rŠ   s     r   Ústart_tag_mathzInBodyPhase.start_tag_matht  s¨   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ×,Ò,¨UÑ3Ô3Ð3ØŒ×-Ò-¨eÑ4Ô4Ð4Ý'¨Ô1ˆˆkÑØŒ	× Ò  Ñ'Ô'Ð'ð �Ôð 	4ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ø/3ˆEÐ+Ñ,Ð,Ð,ð	4ð 	4r   c                 óN  — | j                              ¦   «          | j                             |¦  «         | j                             |¦  «         t
          d         |d<   | j                              |¦  «         |d         r%| j         j                             ¦   «          d|d<   d S d S )Nr^   rM   r`   Tra   )	r!   r¨  r-   r   r   r   r¯   rb   rÚ   rŠ   s     r   Ústart_tag_svgzInBodyPhase.start_tag_svg€  s¨   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ×)Ò)¨%Ñ0Ô0Ð0ØŒ×-Ò-¨eÑ4Ô4Ð4Ý'¨Ô.ˆˆkÑØŒ	× Ò  Ñ'Ô'Ð'ð �Ôð 	4ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ø/3ˆEÐ+Ñ,Ð,Ð,ð	4ð 	4r   c                 óL   — | j                              dd|d         i¦  «         dS )z÷Elements that should be children of other elements.

        Here they are ignored: "caption", "col", "colgroup", "frame",
        "frameset", "head", "option", "optgroup", "tbody", "td", "tfoot",
        "th", "thead", "tr", "noscript".

        zunexpected-start-tag-ignoredr#   NrÏ   rŠ   s     r   Ústart_tag_misplacedzInBodyPhase.start_tag_misplacedŒ  s,   € ð 	Œ×ÒÐ >ÀÈÈvÌÐ@WÑXÔXÐXÐXÐXr   c                 ól   — | j                              ¦   «          | j                              |¦  «         d S rU   )r!   r¨  r¯   rŠ   s     r   rÙ   zInBodyPhase.start_tag_other–  s2   € ØŒ	×8Ò8Ñ:Ô:Ð:ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óR  — | j                              dd¬¦  «        sd|                      t          dd¦  «        ¦  «         | j                             dddi¦  «         |                      t          d¦  «        ¦  «         d S | j                              d¦  «         | j         j        d         j	        dk    r| j                             dddi¦  «         | j         j         
                    ¦   «         }|j	        dk    r+| j         j         
                    ¦   «         }|j	        dk    °)d S d S )Nr   r»  r¼  rh   rR  r#   rX   )r!   r¾  rÀ  r  r-   rd   r¿  r  rb   r#   rÚ   rL  s      r   r¿  zInBodyPhase.end_tag_pš  s  € ØŒy×)Ò)¨#°xÐ)Ñ@Ô@ð 
	5Ø×"Ò"Õ#4°S¸+Ñ#FÔ#FÑGÔGÐGØŒK×#Ò#Ð$8¸6À3¸-ÑHÔHÐHØ�NŠNÕ,¨SÑ1Ô1Ñ2Ô2Ð2Ð2Ð2àŒI×/Ò/°Ñ4Ô4Ð4ØŒyÔ& rÔ*Ô/°3Ò6Ð6Ø”×'Ò'Ð(<¸vÀs¸mÑLÔLÐLØ”9Ô*×.Ò.Ñ0Ô0ˆDØ”)˜sÒ"Ð"Ø”yÔ.×2Ò2Ñ4Ô4�ð ”)˜sÒ"Ð"Ð"Ð"Ð"Ð"r   c                 óŠ  — | j                              d¦  «        s| j                             dddi¦  «         d S | j         j        d         j        dk    rR| j         j        dd …         D ]=}|j        t          d¦  «        vr%| j                             dd|j        dœ¦  «          nŒ>| j        j        d	         | j        _        d S )
Nr£   rR  r#   rX   é   )r�  rž  rŸ  Úoptgroupr  r   ÚrpÚrtrœ   r™   rž   rš   r�   r›   r£   r¥   ú$expected-one-end-tag-but-got-another©ÚgotNameÚexpectedNameú
after body)	r!   r¾  r-   rd   rb   r#   ri   r*   r?   rL  s      r   Úend_tag_bodyzInBodyPhase.end_tag_body§  sï   € ØŒy×)Ò)¨&Ñ1Ô1ð 	ØŒK×#Ò#Ð$8¸6À6Ð:JÑKÔKÐKØˆFØŒYÔ$ RÔ(Ô-°Ò7Ð7Øœ	Ô/°°°Ô3ð ð �Ø”9¥Ið /Uñ %Vô %Vð Vð Vð ”K×+Ò+Ø>Ø$*¸D¼IÐFÐFñHô Hð Hð �EðVð !œKÔ.¨|Ô<ˆŒÔÐÐr   c                 ó‚   — | j                              d¦  «        r$|                      t          d¦  «        ¦  «         |S d S )Nr£   )r!   r¾  r*  r  rŠ   s     r   Úend_tag_htmlzInBodyPhase.end_tag_html·  sF   € àŒ9×%Ò% fÑ-Ô-ð 	Ø×ÒÕ/°Ñ7Ô7Ñ8Ô8Ð8ØˆLð	ð 	r   c                 óü  — |d         dk    r| j         | _        | j                             |d         ¦  «        }|r| j                             ¦   «          | j        j        d         j        |d         k    r#| j                             dd|d         i¦  «         |r`| j        j         	                    ¦   «         }|j        |d         k    r3| j        j         	                    ¦   «         }|j        |d         k    °/d S d S d S )Nr#   r¤  rX   úend-tag-too-early)
r�  rm   r!   r¾  r  rb   r#   r-   rd   rÚ   )r%   rw   Úin_scoper¨   s       r   Úend_tag_blockzInBodyPhase.end_tag_block½  sý   € à�Œ=˜EÒ!Ð!Ø,0Ô,QˆDÔ)Ø”9×-Ò-¨e°F¬mÑ<Ô<ˆØð 	2ØŒI×/Ò/Ñ1Ô1Ð1ØŒ9Ô" 2Ô&Ô+¨u°V¬}Ò<Ð<ØŒK×#Ò#Ð$7¸&À%ÈÄ-Ð9PÑQÔQÐQØð 	5Ø”9Ô*×.Ò.Ñ0Ô0ˆDØ”)˜u Vœ}Ò,Ð,Ø”yÔ.×2Ò2Ñ4Ô4�ð ”)˜u Vœ}Ò,Ð,Ð,Ð,ð	5ð 	5à,Ð,r   c                 ó‚  — | j         j        }d | j         _        |�| j                              |¦  «        s| j                             dddi¦  «         d S | j                              ¦   «          | j         j        d         |k    r| j                             dddi¦  «         | j         j                             |¦  «         d S )NrR  r#   rÄ  rX   zend-tag-too-early-ignored)r!   rÅ  r¾  r-   rd   r  rb   r„  rL  s      r   Úend_tag_formzInBodyPhase.end_tag_formË  s¹   € ØŒyÔ%ˆØ!%ˆŒ	ÔØˆ<˜tœy×9Ò9¸$Ñ?Ô?ˆ<ØŒK×#Ò#Ð$8¸6À6Ð:JÑKÔKÐKÐKÐKàŒI×/Ò/Ñ1Ô1Ð1ØŒyÔ& rÔ*¨dÒ2Ð2Ø”×'Ò'Ð(CÀfÈfÐEUÑVÔVÐVØŒIÔ#×*Ò*¨4Ñ0Ô0Ð0Ð0Ð0r   c                 ó@  — |d         dk    rd}nd }| j                              |d         |¬¦  «        s%| j                             dd|d         i¦  «         d S | j                              |d         ¬¦  «         | j         j        d         j        |d         k    r#| j                             dd|d         i¦  «         | j         j                             ¦   «         }|j        |d         k    r1| j         j                             ¦   «         }|j        |d         k    °/d S d S )	Nr#   rŸ  Úlistr¼  rR  ©ÚexcluderX   r.  )r!   r¾  r-   rd   r  rb   r#   rÚ   )r%   rw   r½  r¨   s       r   Úend_tag_list_itemzInBodyPhase.end_tag_list_itemÖ  s  € Ø�Œ=˜DÒ Ð ØˆGˆGàˆGØŒy×)Ò)¨%°¬-ÀÐ)ÑIÔIð 	5ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRàŒI×/Ò/¸¸f¼Ð/ÑFÔFÐFØŒyÔ& rÔ*Ô/°5¸´=Ò@Ð@Ø”×'Ò'Ð(;¸fÀeÈFÄmÐ=TÑUÔUÐUØ”9Ô*×.Ò.Ñ0Ô0ˆDØ”)˜u Vœ}Ò,Ð,Ø”yÔ.×2Ò2Ñ4Ô4�ð ”)˜u Vœ}Ò,Ð,Ð,Ð,Ð,Ð,r   c                 ó
  — t           D ]7}| j                             |¦  «        r| j                             ¦   «           nŒ8| j        j        d         j        |d         k    r#| j                             dd|d         i¦  «         t           D ]w}| j                             |¦  «        r[| j        j                             ¦   «         }|j        t           vr,| j        j                             ¦   «         }|j        t           v°, d S Œxd S )NrX   r#   r.  )	r   r!   r¾  r  rb   r#   r-   rd   rÚ   )r%   rw   Úitems      r   Úend_tag_headingzInBodyPhase.end_tag_headingå  s  € Ý$ð 	ð 	ˆDØŒy×)Ò)¨$Ñ/Ô/ð Ø”	×3Ò3Ñ5Ô5Ð5Ø�ðð Œ9Ô" 2Ô&Ô+¨u°V¬}Ò<Ð<ØŒK×#Ò#Ð$7¸&À%ÈÄ-Ð9PÑQÔQÐQå$ð 	ð 	ˆDØŒy×)Ò)¨$Ñ/Ô/ð Ø”yÔ.×2Ò2Ñ4Ô4�Ø”iÕ'7Ð7Ð7Øœ9Ô2×6Ò6Ñ8Ô8�Dð ”iÕ'7Ð7Ð7à��ð	ð	ð 	r   c                 óÊ	  — d}|dk     �rÙ|dz  }| j                              |d         ¦  «        }|r-|| j         j        v r6| j                              |j        ¦  «        s|                      |¦  «         dS || j         j        vrD| j                             dd|d         i¦  «         | j         j         	                    |¦  «         dS | j                              |j        ¦  «        s%| j                             dd|d         i¦  «         dS || j         j        d         k    r#| j                             d	d|d         i¦  «         | j         j         
                    |¦  «        }d}| j         j        |d…         D ]}|j        t          v r|} nŒ|€i| j         j                             ¦   «         }||k    r$| j         j                             ¦   «         }||k    °$| j         j         	                    |¦  «         dS | j         j        |dz
           }| j         j         
                    |¦  «        }|x}	}
d}| j         j         
                    |
¦  «        }|d
k     �r&|dz  }|dz  }| j         j        |         }
|
| j         j        vr | j         j         	                    |
¦  «         ŒQ|
|k    rnÕ|	|k    r"| j         j         
                    |
¦  «        dz   }|
                     ¦   «         }|| j         j        | j         j         
                    |
¦  «        <   || j         j        | j         j         
                    |
¦  «        <   |}
|	j        r|	j                             |	¦  «         |
                     |	¦  «         |
}	|d
k     �°&|	j        r|	j                             |	¦  «         |j        t%          d¦  «        v r3| j                              ¦   «         \  }}|                     |	|¦  «         n|                     |	¦  «         |                     ¦   «         }|                     |¦  «         |                     |¦  «         | j         j         	                    |¦  «         | j         j                             ||¦  «         | j         j         	                    |¦  «         | j         j                             | j         j         
                    |¦  «        dz   |¦  «         |dk     �°×dS dS )z*The much-feared adoption agency algorithm.rG   é   r   r#   Nzadoption-agency-1.2zadoption-agency-4.4rX   zadoption-agency-1.3r˜  ©r¡   rœ   rž   r�   r›   )r!   rØ  rb   r¾  r#   rå   r-   rd   r™  r„  ÚindexrÊ  r   rÚ   Úcloner·  r¸  Úappend_childri   Ú!get_table_misnested_node_positionÚinsert_beforeÚreparent_childrenÚinsert)r%   rw   Úouter_loop_counterÚformatting_elementÚ	afe_indexÚfurthest_blockrQ   Úcommon_ancestorÚbookmarkÚ	last_noder¨   Úinner_loop_counterr>  r?  r·  rB  s                   r   rÙ  zInBodyPhase.end_tag_formattingô  sC  € ð Ðð ! 1Ò$Ñ$ð  !Ñ#Ðð "&¤×!PÒ!PØ�f”ñ"ô "Ðà&ð "HØ&¨$¬)Ô*AÐAÐAØœ	×2Ò2Ð3EÔ3JÑKÔKð Bð
 ×"Ò" 5Ñ)Ô)Ð)Ø�ð $¨4¬9Ô+BÐBÐBØ”×'Ò'Ð(=ÀÈÈfÌÐ?VÑWÔWÐWØ”	Ô4×;Ò;Ð<NÑOÔOÐOØ�ð ”Y×/Ò/Ð0BÔ0GÑHÔHð HØ”×'Ò'Ð(=ÀÈÈfÌÐ?VÑWÔWÐWØ�ð &¨¬Ô)@ÀÔ)DÒDÐDØ”K×+Ò+Ø-°¸¸f¼Ð/FñHô Hð Hð œ	Ô/×5Ò5Ð6HÑIÔIˆIØ!ˆNØœ9Ô2°9°:°:Ô>ð ð �ØÔ%Õ)9Ð9Ð9Ø%,�NØ�Eð :ð Ð%Øœ)Ô1×5Ò5Ñ7Ô7�ØÐ!3Ò3Ð3Ø"œiÔ5×9Ò9Ñ;Ô;�Gð Ð!3Ò3Ð3à”	Ô4×;Ò;¸GÑDÔDÐDØ�ð #œiÔ5°iÀ!±mÔDˆOð ”yÔ;×AÒAÐBTÑUÔUˆHð  .Ð-ˆI˜Ø!"Ðà”IÔ+×1Ò1°$Ñ7Ô7ˆEØ$ qÒ(Ñ(Ø" aÑ'Ð"à˜‘
�Ø”yÔ.¨uÔ5�Ø˜tœyÔCÐCÐCØ”IÔ+×2Ò2°4Ñ8Ô8Ð8ØàÐ-Ò-Ð-Øà Ò.Ð.Ø#œyÔC×IÒIÈ$ÑOÔOÐRSÑS�HàŸ
š
™œ�ð INð ”	Ô4Ø”IÔ8×>Ò>¸tÑDÔDñFàOT�”	Ô'¨¬	Ô(?×(EÒ(EÀdÑ(KÔ(KÑLØ�ð Ô#ð =ØÔ$×1Ò1°)Ñ<Ô<Ð<Ø×!Ò! )Ñ,Ô,Ð,à �	ð7 % qÒ(Ñ(ðD Ôð 9ØÔ ×-Ò-¨iÑ8Ô8Ð8àÔ#¥yð 2>ñ (?ô (?ð ?ð ?à(,¬	×(SÒ(SÑ(UÔ(UÑ%�˜Ø×$Ò$ Y°Ñ>Ô>Ð>Ð>à×,Ò,¨YÑ7Ô7Ð7ð '×,Ò,Ñ.Ô.ˆEð ×,Ò,¨UÑ3Ô3Ð3ð ×'Ò'¨Ñ.Ô.Ð.ð ŒIÔ0×7Ò7Ð8JÑKÔKÐKØŒIÔ0×7Ò7¸À%ÑHÔHÐHð ŒIÔ#×*Ò*Ð+=Ñ>Ô>Ð>ØŒIÔ#×*Ò*Ø”	Ô'×-Ò-¨nÑ=Ô=ÀÑAÀ5ñJô Jð Jðu ! 1Ò$Ñ$Ð$Ð$Ð$Ð$r   c                 ó2  — | j                              |d         ¦  «        r| j                              ¦   «          | j         j        d         j        |d         k    r#| j                             dd|d         i¦  «         | j                              |d         ¦  «        ry| j         j                             ¦   «         }|j        |d         k    r/| j         j                             ¦   «         }|j        |d         k    °/| j                              ¦   «          d S d S )Nr#   rX   r.  )	r!   r¾  r  rb   r#   r-   rd   rÚ   Ú clear_active_formatting_elements)r%   rw   rQ   s      r   Úend_tag_applet_marquee_objectz)InBodyPhase.end_tag_applet_marquee_objectš  s   € ØŒ9×%Ò% e¨F¤mÑ4Ô4ð 	2ØŒI×/Ò/Ñ1Ô1Ð1ØŒ9Ô" 2Ô&Ô+¨u°V¬}Ò<Ð<ØŒK×#Ò#Ð$7¸&À%ÈÄ-Ð9PÑQÔQÐQàŒ9×%Ò% e¨F¤mÑ4Ô4ð 	9Ø”iÔ-×1Ò1Ñ3Ô3ˆGØ”, %¨¤-Ò/Ð/Øœ)Ô1×5Ò5Ñ7Ô7�ð ”, %¨¤-Ò/Ð/àŒI×6Ò6Ñ8Ô8Ð8Ð8Ð8ð		9ð 	9r   c                 ó   — | j                              ddddœ¦  «         | j                             ¦   «          | j                             t          dd¦  «        ¦  «         | j        j                             ¦   «          d S )Nzunexpected-end-tag-treated-asr  z
br elementrõ  rh   )r-   rd   r!   r¨  r¯   r  rb   rÚ   rŠ   s     r   rw  zInBodyPhase.end_tag_br¦  s~   € ØŒ×ÒØ+Ø!¨lÐ;Ð;ñ	=ô 	=ð 	=ð 	Œ	×8Ò8Ñ:Ô:Ð:ØŒ	× Ò Õ!2°4¸Ñ!EÔ!EÑFÔFÐFØŒ	Ô×#Ò#Ñ%Ô%Ð%Ð%Ð%r   c                 ó  — | j         j        d d d…         D ]ô}|j        |d         k    r­| j                              |d         ¬¦  «         | j         j        d         j        |d         k    r#| j                             dd|d         i¦  «         | j         j                             ¦   «         |k    r#	 | j         j                             ¦   «         |k    °# d S |j        t          v r&| j                             dd|d         i¦  «          d S Œõd S )NrX   r#   r5  rR  )	r!   rb   r#   r  r-   rd   rÚ   rÊ  r   rL  s      r   rå   zInBodyPhase.end_tag_other®  s)  € Ø”IÔ+¨D¨D¨b¨DÔ1ð 	ð 	ˆDØŒy˜E &œMÒ)Ð)Ø”	×3Ò3¸EÀ&¼MÐ3ÑJÔJÐJØ”9Ô*¨2Ô.Ô3°u¸V´}ÒDÐDØ”K×+Ò+Ø,¨v°u¸V´}Ð.EñGô Gð Gà”iÔ-×1Ò1Ñ3Ô3°tÒ;Ð;Øð ”iÔ-×1Ò1Ñ3Ô3°tÒ;Ð;à��à”?Õ&6Ð6Ð6Ø”K×+Ò+Ø,¨v°u¸V´}Ð.EñGô Gð Gà�E�Eð 7ð	ð 	r   r¥   )	rZ  r[  r\  r]  r^  r_  rY  rW  rU  r£   r¤   )rÈ  ÚarticleÚasideÚ
blockquoteÚcenterÚdetailsÚdirr�   ÚdlÚfieldsetÚ
figcaptionÚfigureÚfooterÚheaderÚhgroupÚmainÚmenuÚnavÚolr   ÚsectionÚsummaryÚul)r¤  r¥  rÄ  )rŸ  r�  rž  r6   rÓ  )ÚbÚbigÚcodeÚemÚfontÚiÚsÚsmallÚstrikeÚstrongÚttÚurß  r»  )ÚappletÚmarqueeÚobjectÚxmpr¡   )Úarear  Úembedrô  ÚkeygenÚwbr)ÚparamÚsourceÚtrackr  rþ  ró  rü  r¦  ÚiframerX  )ÚnoembedrV  r˜   )r#  r$  )r  r"  Úmathr^   )rŸ   Úcolr    Úframer¢   rœ   r™   rž   rš   r�   r›   )rÈ  rR  rS  rT  r»  rU  rV  ÚdialogrW  r�   rX  rY  rZ  r[  r\  r]  r^  r¥  r_  r`  ra  rb  r¤  rc  rd  re  r   )r�  rž  rŸ  )rÓ  rf  rg  rh  ri  rj  rk  rß  rl  rm  rn  ro  rp  rq  r  )>rµ   r¶   r·   ræ   r+   r–  r›  rv   r©  rl   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
  rD  r	  r  r  r  r  r  r  rÙ   r¿  r*  r,  r0  r2  r7  r:  rÙ  rO  rw  rå   rÁ   rÃ   râ   r   rØ   rä   Ú__classcell__©r’  s   @r   rŒ  rŒ  (  sô  ø€ € € € € ð .€IðNð Nð Nð Nð Nð
2ð 2ð 2ð=ð =ð =ð"ð ð ð(ð (ð (ð	,ð 	,ð 	,ð-ð -ð -ðFð Fð Fð	Hð 	Hð 	HðBð Bð Bð (ð (ð (ð
Sð Sð SðAð Að Að(ð (ð (ð&Lð Lð Lð(ð (ð (ð+ð +ð +ð+ð +ð +ð	+ð 	+ð 	+ð
,ð 
,ð 
,ð(ð (ð (ð;ð ;ð ;ð;ð ;ð ;ð(ð (ð (ð2ð 2ð 2ð0ð 0ð 0ð
(ð (ð (ð0ð 0ð 0ð8ð 8ð 8ð<(ð (ð (ð&ð &ð &ð(ð (ð (ð;ð ;ð ;ð/ð /ð /ð@ð @ð @ð(ð (ð (ð
4ð 
4ð 
4ð
4ð 
4ð 
4ðYð Yð Yð(ð (ð (ð5ð 5ð 5ð=ð =ð =ð ð ð ð5ð 5ð 5ð	1ð 	1ð 	1ð5ð 5ð 5ðð ð ðdJð dJð dJðL
9ð 
9ð 
9ð&ð &ð &ðð ð ð  !˜ð ("Ø	�Ô%Ð&ð("ð
&Ø'@ð	Bð("ð 
�Ð ð	("ð
 
Ð'Ð(ð("ð
&ð (9ð	:ð("ð 
Ð,Ð-ð("ð 
Ð2Ð3ð("ð 
�Ð ð("ð 
Ð0Ð1ð("ð 
Ð)Ð*ð("ð 
ˆkÐð("ð 
Ø 4ð	6ð!("ð$ 
�Ð ð%("ð& 
Ð#Ð$ð'("ð( 
)Ð*IÐJð)("ð* 
�Ðð+("ð, 
�/Ð"ð-("ð. 
9Ð:SÐTð/("ð0 
&Ð'=Ð>ð1("ð2 
�/Ð"ð3("ð4 
ˆ|Ðð5("ð6 
�/Ð"ð7("ð8 
Ð%Ð&ð9("ð: 
Ð'Ð(ð;("ð< 
Ð#Ð$ð=("ð> 
Ð'Ð(ð?("ð@ 
!Ð"3Ð4ðA("ðB 
Ð#Ð$ðC("ðD 
�Ð'ðE("ðF 
  Ð/ðG("ðH �>Ð"ðI("ðJ �-Ð ðK("ðL
7Ø8Kð	MðM("ñ (ô (ÐðT �hØ	�ÐØ	�Ðð
&ð (5ð	6ð 
�ÐØ	ˆiÐØ	Ð.Ð/Ø	˜?Ð+ð
)Ø*<ð	>à	(Ð*GÐHØ	ˆzÐð ñ ô €O€O€O€O€Or   rŒ  c                   ór   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	 e
g ¦  «        Z e
defg¦  «        ZdS )Ú	TextPhasec                 óF   — | j                              |d         ¦  «         d S rÑ   rÒ   rŠ   s     r   rl   zTextPhase.process_charactersý  rÔ   r   c                 óÒ   — | j                              dd| j        j        d         j        i¦  «         | j        j                             ¦   «          | j         j        | j         _        dS )Nz&expected-named-closing-tag-but-got-eofr#   rX   T)r-   rd   r!   rb   r#   rÚ   r°   r?   rE   s    r   rv   zTextPhase.process_eof   sa   € ØŒ×ÒØ4Ø�T”YÔ,¨RÔ0Ô5Ð6ñ	8ô 	8ð 	8ð 	Œ	Ô×#Ò#Ñ%Ô%Ð%Ø œKÔ6ˆŒÔØˆtr   c                 ó4   — t          d|d         › d�¦  «        ‚)NzTried to process start tag r#   z in RCDATA/RAWTEXT mode)Ú
ValueErrorrŠ   s     r   rÙ   zTextPhase.start_tag_other  s)   € ÝØP¨%°¬-ÐPÐPÐPñRô Rð 	Rr   c                 óˆ   — | j         j                             ¦   «         }|j        dk    sJ ‚| j        j        | j        _        d S )NrY  )r!   rb   rÚ   r#   r-   r°   r?   rL  s      r   Úend_tag_scriptzTextPhase.end_tag_script  s@   € ØŒyÔ&×*Ò*Ñ,Ô,ˆØŒy˜HÒ$Ð$Ð$Ð$Ø œKÔ6ˆŒÔÐÐr   c                 ón   — | j         j                             ¦   «          | j        j        | j        _        d S rU   )r!   rb   rÚ   r-   r°   r?   rŠ   s     r   rå   zTextPhase.end_tag_other  s.   € ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ø œKÔ6ˆŒÔÐÐr   rY  N)rµ   r¶   r·   r   ræ   rl   rv   rÙ   rŒ  rå   rÁ   rØ   rä   r    r   r   r†  r†  ú  sŽ   € € € € € Ø�‘”€Ið-ð -ð -ðð ð ðRð Rð Rð7ð 7ð 7ð7ð 7ð 7ð !˜ ™œÐØ�h ¨>Ð :Ð;Ñ<Ô<€O€O€Or   r†  c                   ó  — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z edej        fde
fdefdefdefdefdefdefdefdefg
¦  «        Z edefdefg¦  «        ZdS )ÚInTablePhasec                 óª   — | j         j        d         j        dvr9| j         j                             ¦   «          | j         j        d         j        dv°7d S d S )NrX   )r¡   r¥   )r!   rb   r#   rÚ   rE   s    r   Ú_clear_stack_to_table_contextz*InTablePhase._clear_stack_to_table_context  s[   € àŒiÔ% bÔ)Ô.Ð6GÐGÐGð ŒIÔ#×'Ò'Ñ)Ô)Ð)ð ŒiÔ% bÔ)Ô.Ð6GÐGÐGÐGÐGÐGÐGr   c                 ó�   — | j         j        d         j        dk    r| j                             d¦  «         d S | j        j        sJ ‚d S )NrX   r¥   zeof-in-table©r!   rb   r#   r-   rd   r.   rE   s    r   rv   zInTablePhase.process_eof'  sM   € ØŒ9Ô" 2Ô&Ô+¨vÒ5Ð5ØŒK×#Ò# NÑ3Ô3Ð3Ð3Ð3à”;Ô(Ð(Ð(Ð(Ð(Ð(r   c                 ó¶   — | j         j        }| j         j        d         | j         _        || j         j        _        | j         j                             |¦  «         d S ©Núin table text)r-   r?   r*   r°   rm   ©r%   rw   r°   s      r   rm   z%InTablePhase.process_space_characters.  sL   € ØœÔ*ˆØ œKÔ.¨Ô?ˆŒÔØ+9ˆŒÔÔ(ØŒÔ×2Ò2°5Ñ9Ô9Ð9Ð9Ð9r   c                 ó¶   — | j         j        }| j         j        d         | j         _        || j         j        _        | j         j                             |¦  «         d S r•  )r-   r?   r*   r°   rl   r—  s      r   rl   zInTablePhase.process_characters4  sL   € ØœÔ*ˆØ œKÔ.¨Ô?ˆŒÔØ+9ˆŒÔÔ(ØŒÔ×,Ò,¨UÑ3Ô3Ð3Ð3Ð3r   c                 ó€   — d| j         _        | j        j        d                              |¦  «         d| j         _        d S )NTr•   F)r!   Úinsert_from_tabler-   r*   rl   rŠ   s     r   rÓ   zInTablePhase.insert_text:  s<   € ð '+ˆŒ	Ô#ØŒÔ˜9Ô%×8Ò8¸Ñ?Ô?Ð?Ø&+ˆŒ	Ô#Ð#Ð#r   c                 óâ   — |                       ¦   «          | j        j                             t          ¦  «         | j                             |¦  «         | j        j        d         | j        _        d S )Nr’   )	r‘  r!   r™  ru   r   r¯   r-   r*   r?   rŠ   s     r   Ústart_tag_captionzInTablePhase.start_tag_captionA  s]   € Ø×*Ò*Ñ,Ô,Ð,ØŒ	Ô,×3Ò3µFÑ;Ô;Ð;ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨|Ô<ˆŒÔÐÐr   c                 óš   — |                       ¦   «          | j                             |¦  «         | j        j        d         | j        _        d S )Nr“   ©r‘  r!   r¯   r-   r*   r?   rŠ   s     r   Ústart_tag_colgroupzInTablePhase.start_tag_colgroupG  sE   € Ø×*Ò*Ñ,Ô,Ð,ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.Ð/@ÔAˆŒÔÐÐr   c                 óL   — |                       t          dd¦  «        ¦  «         |S )Nr    rh   )rŸ  r  rŠ   s     r   Ústart_tag_colzInTablePhase.start_tag_colL  s&   € Ø×ÒÕ 1°*¸kÑ JÔ JÑKÔKÐKØˆr   c                 óš   — |                       ¦   «          | j                             |¦  «         | j        j        d         | j        _        d S )Nr‘   rž  rŠ   s     r   Ústart_tag_rowgroupzInTablePhase.start_tag_rowgroupP  sD   € Ø×*Ò*Ñ,Ô,Ð,ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨Ô?ˆŒÔÐÐr   c                 óL   — |                       t          dd¦  «        ¦  «         |S )Nrœ   rh   )r£  r  rŠ   s     r   Ústart_tag_imply_tbodyz"InTablePhase.start_tag_imply_tbodyU  s&   € Ø×ÒÕ 1°'¸;Ñ GÔ GÑHÔHÐHØˆr   c                 ó¶   — | j                              ddddœ¦  «         | j         j                             t	          d¦  «        ¦  «         | j         j        s|S d S )NrÔ  r¡   rÕ  )r-   rd   r?   rp   r  r.   rŠ   s     r   rè  zInTablePhase.start_tag_tableY  sj   € ØŒ×ÒØ2Ø!¨gÐ6Ð6ñ	8ô 	8ð 	8ð 	ŒÔ×)Ò)Õ*;¸GÑ*DÔ*DÑEÔEÐEØŒ{Ô$ð 	ØˆLð	ð 	r   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   Ústart_tag_style_scriptz#InTablePhase.start_tag_style_scripta  r  r   c                 ó@  — d|d         v r~|d         d                               t          ¦  «        dk    rT| j                             d¦  «         | j                             |¦  «         | j        j                             ¦   «          d S |                      |¦  «         d S )NrY   rZ   rì  z unexpected-hidden-input-in-table)	rO   r	   r-   rd   r!   r¯   rb   rÚ   rÙ   rŠ   s     r   rí  zInTablePhase.start_tag_inputd  s˜   € Ø�e˜F”mÐ#Ð#Ø�f”˜fÔ%×/Ò/Õ0DÑEÔEÈÒQÐQØŒK×#Ò#Ð$FÑGÔGÐGØŒI×$Ò$ UÑ+Ô+Ð+àŒIÔ#×'Ò'Ñ)Ô)Ð)Ð)Ð)à× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óþ   — | j                              d¦  «         | j        j        €V| j                             |¦  «         | j        j        d         | j        _        | j        j                             ¦   «          d S d S )Nzunexpected-form-in-tablerX   )r-   rd   r!   rÅ  r¯   rb   rÚ   rŠ   s     r   rÆ  zInTablePhase.start_tag_formn  ss   € ØŒ×ÒÐ :Ñ;Ô;Ð;ØŒ9Ô!Ð)ØŒI×$Ò$ UÑ+Ô+Ð+Ø%)¤YÔ%<¸RÔ%@ˆDŒIÔ"ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ð)Ð)ð *Ð)r   c                 óÆ   — | j                              dd|d         i¦  «         d| j        _        | j         j        d                              |¦  «         d| j        _        d S )Nz)unexpected-start-tag-implies-table-voodoor#   Tr•   F)r-   rd   r!   rš  r*   rn   rŠ   s     r   rÙ   zInTablePhase.start_tag_otheru  sg   € ØŒ×ÒØ7¸&À%ÈÄ-Ð9Pñ	Rô 	Rð 	Rð '+ˆŒ	Ô#ØŒÔ˜9Ô%×7Ò7¸Ñ>Ô>Ð>Ø&+ˆŒ	Ô#Ð#Ð#r   c                 óˆ  — | j                              dd¬¦  «        rô| j                              ¦   «          | j         j        d         j        dk    r3| j                             dd| j         j        d         j        dœ¦  «         | j         j        d         j        dk    r9| j         j                             ¦   «          | j         j        d         j        dk    °9| j         j                             ¦   «          | j                             ¦   «          d S | j        j	        sJ ‚| j                             dd|d         i¦  «         d S )Nr¡   r¼  rX   zend-tag-too-early-namedr&  rR  r#   )
r!   r¾  r  rb   r#   r-   rd   rÚ   rA   r.   rŠ   s     r   Úend_tag_tablezInTablePhase.end_tag_table}  sD  € ØŒ9×%Ò% g°wÐ%Ñ?Ô?ð 	SØŒI×/Ò/Ñ1Ô1Ð1ØŒyÔ& rÔ*Ô/°7Ò:Ð:Ø”×'Ò'Ð(AØ&Ø$(¤IÔ$;¸BÔ$?Ô$DðDFð DFñ Gô Gð Gð ”)Ô)¨"Ô-Ô2°gÒ=Ð=Ø”	Ô'×+Ò+Ñ-Ô-Ð-ð ”)Ô)¨"Ô-Ô2°gÒ=Ð=àŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒK×,Ò,Ñ.Ô.Ð.Ð.Ð.ð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j                              dd|d         i¦  «         d S rQ  rÏ   rŠ   s     r   Úend_tag_ignorezInTablePhase.end_tag_ignore�  rS  r   c                 óÆ   — | j                              dd|d         i¦  «         d| j        _        | j         j        d                              |¦  «         d| j        _        d S )Nz'unexpected-end-tag-implies-table-voodoor#   Tr•   F)r-   rd   r!   rš  r*   rp   rŠ   s     r   rå   zInTablePhase.end_tag_other�  sg   € ØŒ×ÒØ5¸ÀÀfÄÐ7Nñ	Pô 	Pð 	Pð '+ˆŒ	Ô#ØŒÔ˜9Ô%×5Ò5°eÑ<Ô<Ð<Ø&+ˆŒ	Ô#Ð#Ð#r   r¥   rŸ   r    r€  ©rœ   rž   r�   )r™   rš   r›   r¡   )rW  rY  r  rÄ  )r£   rŸ   r€  r    r¥   rœ   r™   rž   rš   r�   r›   N)rµ   r¶   r·   r   ræ   r‘  rv   rm   rl   rÓ   rœ  rŸ  r¡  r£  r¥  rè  r¨  rí  rÆ  rÙ   r­  r¯  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   r�  r�    sÔ  € € € € € à�‘”€Ið*ð *ð *ð)ð )ð )ð:ð :ð :ð4ð 4ð 4ð,ð ,ð ,ð=ð =ð =ðBð Bð Bð
ð ð ð@ð @ð @ð
ð ð ðð ð ðFð Fð Fð(ð (ð (ð*ð *ð *ð,ð ,ð ,ðSð Sð Sð Oð Oð Oð,ð ,ð ,ð !˜Ø	�Ô%Ð&Ø	Ð%Ð&Ø	Ð'Ð(Ø	�ÐØ	$Ð&8Ð9Ø	Ð2Ð3Ø	�/Ð"Ø	Ð4Ð5Ø	�/Ð"Ø	�Ð ð"ñ ô Ðð �hØ	�-Ð ð
(Ø)7ð	9ð ñ ô €O€O€Or   r�  c                   óL   ‡ — e Zd ZdZˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zˆ xZS )
ÚInTableTextPhase)Úcharacter_tokensr°   c                 óV   •—  t          ¦   «         j        |i |¤Ž d | _        g | _        d S rU   )rŽ  r+   r°   r´  r�  s      €r   r+   zInTableTextPhase.__init__¯  s5   ø€ Ø�‰ŒÔ˜$Ð) &Ð)Ð)Ð)Ø"ˆÔØ "ˆÔÐÐr   c                 ó0  — d                      d„ | j        D ¦   «         ¦  «        }t          d„ |D ¦   «         ¦  «        r5t          j        |dœ}| j        j        d                              |¦  «         n|r| j                             |¦  «         g | _        d S )Nrò   c                 ó   — g | ]
}|d          ‘ŒS )rZ   r    ©r"   r9  s     r   ú
<listcomp>z5InTableTextPhase.flush_characters.<locals>.<listcomp>µ  s   € ÐGÐGÐG¨˜˜VœÐGÐGÐGr   c              3   ó(   K  — | ]}|t           vV — Œd S rU   r­  r¸  s     r   r°  z4InTableTextPhase.flush_characters.<locals>.<genexpr>¶  s(   è è € Ð=Ð=°ˆtÕ+Ð+Ð=Ð=Ð=Ð=Ð=Ð=r   r  r”   )	Újoinr´  r±  r   rj   r-   r*   rÓ   r!   )r%   rZ   rw   s      r   Úflush_charactersz!InTableTextPhase.flush_characters´  s¡   € Ø�wŠwÐGÐG°Ô1FÐGÑGÔGÑHÔHˆÝÐ=Ð=¸Ð=Ñ=Ô=Ñ=Ô=ð 	(Ý"Ô-°tÐ<Ð<ˆEØŒKÔ˜zÔ*×6Ò6°uÑ=Ô=Ð=Ð=Øð 	(ØŒI×!Ò! $Ñ'Ô'Ð'Ø "ˆÔÐÐr   c                 óP   — |                       ¦   «          | j        | j        _        |S rU   ©r¼  r°   r-   r?   rŠ   s     r   rr   z InTableTextPhase.process_comment½  ó&   € Ø×ÒÑÔÐØ Ô/ˆŒÔØˆr   c                 óP   — |                       ¦   «          | j        | j        _        dS r  r¾  rE   s    r   rv   zInTableTextPhase.process_eofÂ  s&   € Ø×ÒÑÔÐØ Ô/ˆŒÔØˆtr   c                 óV   — |d         dk    rd S | j                              |¦  «         d S ©NrZ   r«  ©r´  ru   rŠ   s     r   rl   z#InTableTextPhase.process_charactersÇ  s3   € Ø�Œ=˜HÒ$Ð$ØˆFØÔ×$Ò$ UÑ+Ô+Ð+Ð+Ð+r   c                 ó:   — | j                              |¦  «         d S rU   rÃ  rŠ   s     r   rm   z)InTableTextPhase.process_space_charactersÌ  s   € àÔ×$Ò$ UÑ+Ô+Ð+Ð+Ð+r   c                 óP   — |                       ¦   «          | j        | j        _        |S rU   r¾  rŠ   s     r   rn   z"InTableTextPhase.process_start_tagÑ  r¿  r   c                 óP   — |                       ¦   «          | j        | j        _        |S rU   r¾  rŠ   s     r   rp   z InTableTextPhase.process_end_tagÖ  r¿  r   )rµ   r¶   r·   ræ   r+   r¼  rr   rv   rl   rm   rn   rp   rƒ  r„  s   @r   r³  r³  ¬  s¦   ø€ € € € € Ø6€Ið#ð #ð #ð #ð #ð
#ð #ð #ðð ð ð
ð ð ð
,ð ,ð ,ð
,ð ,ð ,ð
ð ð ð
ð ð ð ð ð ð r   r³  c                   ó¬   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Z ed
ej        fdefg¦  «        Z ede
fdefdefg¦  «        ZdS )ÚInCaptionPhasec                 ó<   — | j                              dd¬¦  «         S )NrŸ   r¡   r¼  ©r!   r¾  rE   s    r   Úignore_end_tag_captionz%InCaptionPhase.ignore_end_tag_captionà  s    € Ø”9×-Ò-¨iÀÐ-ÑIÔIÐIÐIr   c                 óN   — | j         j        d                              ¦   «          d S r  ©r-   r*   rv   rE   s    r   rv   zInCaptionPhase.process_eofã  ó$   € ØŒÔ˜9Ô%×1Ò1Ñ3Ô3Ð3Ð3Ð3r   c                 óL   — | j         j        d                              |¦  «        S r  ©r-   r*   rl   rŠ   s     r   rl   z!InCaptionPhase.process_charactersæ  ó    € ØŒ{Ô! )Ô,×?Ò?ÀÑFÔFÐFr   c                 óÂ   — | j                              d¦  «         |                      ¦   «         }| j         j                             t          d¦  «        ¦  «         |s|S d S )Nz%unexpected-table-start-tag-in-captionrŸ   ©r-   rd   rË  r?   rp   r  ©r%   rw   Úignore_end_tags      r   Ústart_tag_table_elementz&InCaptionPhase.start_tag_table_elementé  sc   € ØŒ×ÒÐ GÑHÔHÐHà×4Ò4Ñ6Ô6ˆØŒÔ×)Ò)Õ*;¸IÑ*FÔ*FÑGÔGÐGØð 	ØˆLð	ð 	r   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   rÙ   zInCaptionPhase.start_tag_otherñ  r  r   c                 ó²  — |                       ¦   «         �s| j                             ¦   «          | j        j        d         j        dk    r3| j                             dd| j        j        d         j        dœ¦  «         | j        j        d         j        dk    r9| j        j                             ¦   «          | j        j        d         j        dk    °9| j        j                             ¦   «          | j                             ¦   «          | j        j	        d         | j        _
        d S | j        j        sJ ‚| j                             dd|d         i¦  «         d S )NrX   rŸ   r%  r&  r”   rR  r#   )rË  r!   r  rb   r#   r-   rd   rÚ   rN  r*   r?   r.   rŠ   s     r   Úend_tag_captionzInCaptionPhase.end_tag_captionô  sO  € Ø×*Ò*Ñ,Ô,ñ 	SàŒI×/Ò/Ñ1Ô1Ð1ØŒyÔ& rÔ*Ô/°9Ò<Ð<Ø”×'Ò'Ð(NØ(Ø$(¤IÔ$;¸BÔ$?Ô$DðQFð QFñ Gô Gð Gð ”)Ô)¨"Ô-Ô2°iÒ?Ð?Ø”	Ô'×+Ò+Ñ-Ô-Ð-ð ”)Ô)¨"Ô-Ô2°iÒ?Ð?àŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒI×6Ò6Ñ8Ô8Ð8Ø $¤Ô 2°:Ô >ˆDŒKÔÐÐð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óÂ   — | j                              d¦  «         |                      ¦   «         }| j         j                             t          d¦  «        ¦  «         |s|S d S )Nz#unexpected-table-end-tag-in-captionrŸ   rÓ  rÔ  s      r   r­  zInCaptionPhase.end_tag_table  sc   € ØŒ×ÒÐ EÑFÔFÐFØ×4Ò4Ñ6Ô6ˆØŒÔ×)Ò)Õ*;¸IÑ*FÔ*FÑGÔGÐGØð 	ØˆLð	ð 	r   c                 óL   — | j                              dd|d         i¦  «         d S rQ  rÏ   rŠ   s     r   r¯  zInCaptionPhase.end_tag_ignore  rS  r   c                 óL   — | j         j        d                              |¦  «        S r  ©r-   r*   rp   rŠ   s     r   rå   zInCaptionPhase.end_tag_other  re  r   r¥   ©	rŸ   r€  r    rœ   r™   rž   rš   r�   r›   rŸ   r¡   )
r£   r€  r    r¥   rœ   r™   rž   rš   r�   r›   N)rµ   r¶   r·   r   ræ   rË  rv   rl   rÖ  rÙ   rÙ  r­  r¯  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   rÈ  rÈ  Ü  s  € € € € € à�‘”€IðJð Jð Jð4ð 4ð 4ðGð Gð Gðð ð ðFð Fð FðSð Sð Sð$ð ð ðOð Oð OðDð Dð Dð !˜Ø	�Ô%Ð&ð
Ø1ð	3ð"ñ ô Ðð �hØ	�OÐ$Ø	�-Ð ð
Ø(ð	*ð ñ ô €O€O€Or   rÈ  c                   ó    — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Z ed	ej        fd
efg¦  «        Z ede
fd
efg¦  «        ZdS )ÚInColumnGroupPhasec                 ó8   — | j         j        d         j        dk    S )NrX   r¥   )r!   rb   r#   rE   s    r   Úignore_end_tag_colgroupz*InColumnGroupPhase.ignore_end_tag_colgroup%  s   € ØŒyÔ& rÔ*Ô/°6Ò9Ð9r   c                 óÐ   — | j         j        d         j        dk    r| j        j        sJ ‚d S |                      ¦   «         }|                      t          d¦  «        ¦  «         |sdS d S )NrX   r¥   r    T)r!   rb   r#   r-   r.   râ  Úend_tag_colgroupr  )r%   rÕ  s     r   rv   zInColumnGroupPhase.process_eof(  su   € ØŒ9Ô" 2Ô&Ô+¨vÒ5Ð5Ø”;Ô(Ð(Ð(Ð(ØˆFà!×9Ò9Ñ;Ô;ˆNØ×!Ò!Õ"3°JÑ"?Ô"?Ñ@Ô@Ð@Ø!ð Ø�tðð r   c                 óz   — |                       ¦   «         }|                      t          d¦  «        ¦  «         |s|S d S ©Nr    ©râ  rä  r  rÔ  s      r   rl   z%InColumnGroupPhase.process_characters2  óG   € Ø×5Ò5Ñ7Ô7ˆØ×ÒÕ/°
Ñ;Ô;Ñ<Ô<Ð<Øð 	ØˆLð	ð 	r   c                 ó€   — | j                              |¦  «         | j         j                             ¦   «          d|d<   d S r.  r/  rŠ   s     r   r¡  z InColumnGroupPhase.start_tag_col8  r1  r   c                 óz   — |                       ¦   «         }|                      t          d¦  «        ¦  «         |s|S d S ræ  rç  rÔ  s      r   rÙ   z"InColumnGroupPhase.start_tag_other=  rè  r   c                 ó  — |                       ¦   «         r3| j        j        sJ ‚| j                             dd|d         i¦  «         d S | j        j                             ¦   «          | j        j        d         | j        _        d S )NrR  r#   r”   )	râ  r-   r.   rd   r!   rb   rÚ   r*   r?   rŠ   s     r   rä  z#InColumnGroupPhase.end_tag_colgroupC  s€   € Ø×'Ò'Ñ)Ô)ð 	?à”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRàŒIÔ#×'Ò'Ñ)Ô)Ð)Ø $¤Ô 2°:Ô >ˆDŒKÔÐÐr   c                 ó@   — | j                              dddi¦  «         d S )Nz
no-end-tagr#   r€  rÏ   rŠ   s     r   Úend_tag_colzInColumnGroupPhase.end_tag_colL  s$   € ØŒ×Ò ¨v°u¨oÑ>Ô>Ð>Ð>Ð>r   c                 óz   — |                       ¦   «         }|                      t          d¦  «        ¦  «         |s|S d S ræ  rç  rÔ  s      r   rå   z InColumnGroupPhase.end_tag_otherO  rè  r   r¥   r€  r    N)rµ   r¶   r·   r   ræ   râ  rv   rl   r¡  rÙ   rä  rí  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   rà  rà  !  sæ   € € € € € à�‘”€Ið:ð :ð :ðð ð ðð ð ð0ð 0ð 0ð
ð ð ð?ð ?ð ?ð?ð ?ð ?ðð ð ð !˜Ø	�Ô%Ð&Ø	�Ðð"ñ ô Ðð
 �hØ	Ð%Ð&Ø	�Ðð ñ ô €O€O€Or   rà  c                   óÊ   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Z edej        fde	fde
fdefg¦  «        Z edefdefdefg¦  «        ZdS )ÚInTableBodyPhasec                 óü   — | j         j        d         j        dvr7| j         j                             ¦   «          | j         j        d         j        dv°7| j         j        d         j        dk    r| j        j        sJ ‚d S d S )NrX   )rœ   rž   r�   r¥   r¥   )r!   rb   r#   rÚ   r-   r.   rE   s    r   Ú"_clear_stack_to_table_body_contextz3InTableBodyPhase._clear_stack_to_table_body_contextd  s”   € ØŒiÔ% bÔ)Ô.ð 73ð 3ð 3ð ŒIÔ#×'Ò'Ñ)Ô)Ð)ð	 ŒiÔ% bÔ)Ô.ð 73ð 3ð 3ð
 Œ9Ô" 2Ô&Ô+¨vÒ5Ð5Ø”;Ô(Ð(Ð(Ð(ð 6Ð5Ø(Ð(r   c                 óN   — | j         j        d                              ¦   «          d S ©Nr”   rÍ  rE   s    r   rv   zInTableBodyPhase.process_eofm  ó$   € ØŒÔ˜:Ô&×2Ò2Ñ4Ô4Ð4Ð4Ð4r   c                 óL   — | j         j        d                              |¦  «        S rô  rh  rŠ   s     r   rm   z)InTableBodyPhase.process_space_charactersp  ó    € ØŒ{Ô! *Ô-×FÒFÀuÑMÔMÐMr   c                 óL   — | j         j        d                              |¦  «        S rô  rÐ  rŠ   s     r   rl   z#InTableBodyPhase.process_characterss  ó    € ØŒ{Ô! *Ô-×@Ò@ÀÑGÔGÐGr   c                 óš   — |                       ¦   «          | j                             |¦  «         | j        j        d         | j        _        d S )Nr�   )rò  r!   r¯   r-   r*   r?   rŠ   s     r   Ústart_tag_trzInTableBodyPhase.start_tag_trv  sD   € Ø×/Ò/Ñ1Ô1Ð1ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨xÔ8ˆŒÔÐÐr   c                 ó’   — | j                              dd|d         i¦  «         |                      t          dd¦  «        ¦  «         |S )Nzunexpected-cell-in-table-bodyr#   r›   rh   )r-   rd   rû  r  rŠ   s     r   Ústart_tag_table_cellz%InTableBodyPhase.start_tag_table_cell{  sQ   € ØŒ×ÒØ+¨f°e¸F´mÐ-Dñ	Fô 	Fð 	Fà×ÒÕ+¨D°+Ñ>Ô>Ñ?Ô?Ð?Øˆr   c                 óª  — | j                              dd¬¦  «        s8| j                              dd¬¦  «        s| j                              dd¬¦  «        rM|                      ¦   «          |                      t	          | j         j        d         j        ¦  «        ¦  «         |S | j        j        sJ ‚| j         	                    dd|d         i¦  «         d S )	Nrœ   r¡   r¼  r�   rž   rX   z!unexpected-start-tag-out-of-tabler#   ©
r!   r¾  rò  Úend_tag_table_rowgroupr  rb   r#   r-   r.   rd   rŠ   s     r   Ústart_tag_table_otherz&InTableBodyPhase.start_tag_table_other�  sò   € àŒI×&Ò& w¸Ð&Ñ@Ô@ð 	NØ”	×*Ò*¨7¸GÐ*ÑDÔDð	Nà”	×*Ò*¨7¸GÐ*ÑDÔDð	Nð ×3Ò3Ñ5Ô5Ð5Ø×'Ò'Ý! $¤)Ô"9¸"Ô"=Ô"BÑCÔCñEô Eð EàˆLð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ø3°f¸eÀF¼mÐ5LñNô Nð Nð Nð Nr   c                 óL   — | j         j        d                              |¦  «        S rô  r  rŠ   s     r   rÙ   z InTableBodyPhase.start_tag_other�  ó    € ØŒ{Ô! *Ô-×?Ò?ÀÑFÔFÐFr   c                 ó0  — | j                              |d         d¬¦  «        rP|                      ¦   «          | j         j                             ¦   «          | j        j        d         | j        _        d S | j                             dd|d         i¦  «         d S )Nr#   r¡   r¼  r”   ú unexpected-end-tag-in-table-body)	r!   r¾  rò  rb   rÚ   r-   r*   r?   rd   rŠ   s     r   r   z'InTableBodyPhase.end_tag_table_rowgroup“  sž   € ØŒ9×%Ò% e¨F¤m¸WÐ%ÑEÔEð 	MØ×3Ò3Ñ5Ô5Ð5ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ø $¤Ô 2°:Ô >ˆDŒKÔÐÐàŒK×#Ò#Ø2°V¸UÀ6¼]Ð4KñMô Mð Mð Mð Mr   c                 óª  — | j                              dd¬¦  «        s8| j                              dd¬¦  «        s| j                              dd¬¦  «        rM|                      ¦   «          |                      t	          | j         j        d         j        ¦  «        ¦  «         |S | j        j        sJ ‚| j         	                    dd|d         i¦  «         d S )	Nrœ   r¡   r¼  r�   rž   rX   rR  r#   rÿ  rŠ   s     r   r­  zInTableBodyPhase.end_tag_tableœ  sã   € ØŒI×&Ò& w¸Ð&Ñ@Ô@ð 
	SØ”	×*Ò*¨7¸GÐ*ÑDÔDð
	Sà”	×*Ò*¨7¸GÐ*ÑDÔDð
	Sð ×3Ò3Ñ5Ô5Ð5Ø×'Ò'Ý! $¤)Ô"9¸"Ô"=Ô"BÑCÔCñEô Eð EàˆLð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j                              dd|d         i¦  «         d S )Nr  r#   rÏ   rŠ   s     r   r¯  zInTableBodyPhase.end_tag_ignore©  ó9   € ØŒ×ÒØ.°¸¸v¼Ð0Gñ	Iô 	Ið 	Ið 	Ið 	Ir   c                 óL   — | j         j        d                              |¦  «        S rô  rÝ  rŠ   s     r   rå   zInTableBodyPhase.end_tag_other­  ó    € ØŒ{Ô! *Ô-×=Ò=¸eÑDÔDÐDr   r¥   r›   ©r™   rš   )rŸ   r€  r    rœ   rž   r�   r±  r¡   )r£   rŸ   r€  r    r¥   r™   rš   r›   N)rµ   r¶   r·   r   ræ   rò  rv   rm   rl   rû  rý  r  rÙ   r   r­  r¯  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   rð  rð  `  s[  € € € € € à�‘”€Ið)ð )ð )ð5ð 5ð 5ðNð Nð NðHð Hð Hð9ð 9ð 9ð
ð ð ðNð Nð NðGð Gð GðMð Mð MðSð Sð SðIð Ið IðEð Eð Eð !˜Ø	�Ô%Ð&Ø	ˆ|ÐØ	Ð+Ð,Ø	BØð	ð	"ñ ô Ðð �hØ	$Ð&<Ð=Ø	�-Ð ð
Øð	!ð ñ ô €O€O€Or   rð  c                   óÐ   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Z edej        fde
fdefg¦  «        Z edefdefdefdefg¦  «        ZdS )Ú
InRowPhasec                 ó  — | j         j        d         j        dvrk| j                             dd| j         j        d         j        i¦  «         | j         j                             ¦   «          | j         j        d         j        dv°id S d S )NrX   )r›   r¥   z'unexpected-implied-end-tag-in-table-rowr#   )r!   rb   r#   r-   rd   rÚ   rE   s    r   Ú!_clear_stack_to_table_row_contextz,InRowPhase._clear_stack_to_table_row_contextÄ  s‹   € ØŒiÔ% bÔ)Ô.°nÐDÐDØŒK×#Ò#Ø9Ø˜œÔ0°Ô4Ô9Ð:ñ<ô <ð <ð ŒIÔ#×'Ò'Ñ)Ô)Ð)ð	 ŒiÔ% bÔ)Ô.°nÐDÐDÐDÐDÐDÐDr   c                 ó<   — | j                              dd¬¦  «         S )Nr›   r¡   r¼  rÊ  rE   s    r   Úignore_end_tag_trzInRowPhase.ignore_end_tag_trË  s    € Ø”9×-Ò-¨d¸GÐ-ÑDÔDÐDÐDr   c                 óN   — | j         j        d                              ¦   «          d S rô  rÍ  rE   s    r   rv   zInRowPhase.process_eofÎ  rõ  r   c                 óL   — | j         j        d                              |¦  «        S rô  rh  rŠ   s     r   rm   z#InRowPhase.process_space_charactersÑ  r÷  r   c                 óL   — | j         j        d                              |¦  «        S rô  rÐ  rŠ   s     r   rl   zInRowPhase.process_charactersÔ  rù  r   c                 óâ   — |                       ¦   «          | j                             |¦  «         | j        j        d         | j        _        | j        j                             t          ¦  «         d S )Nr�   )	r  r!   r¯   r-   r*   r?   r™  ru   r   rŠ   s     r   rý  zInRowPhase.start_tag_table_cell×  s]   € Ø×.Ò.Ñ0Ô0Ð0ØŒ	× Ò  Ñ'Ô'Ð'Ø œKÔ.¨yÔ9ˆŒÔØŒ	Ô,×3Ò3µFÑ;Ô;Ð;Ð;Ð;r   c                 óz   — |                       ¦   «         }|                      t          d¦  «        ¦  «         |s|S d S ©Nr›   ©r  Ú
end_tag_trr  rÔ  s      r   r  z InRowPhase.start_tag_table_otherÝ  sE   € Ø×/Ò/Ñ1Ô1ˆØ�ŠÕ)¨$Ñ/Ô/Ñ0Ô0Ð0àð 	ØˆLð	ð 	r   c                 óL   — | j         j        d                              |¦  «        S rô  r  rŠ   s     r   rÙ   zInRowPhase.start_tag_otherä  r  r   c                 ó0  — |                       ¦   «         sP|                      ¦   «          | j        j                             ¦   «          | j        j        d         | j        _        d S | j        j        sJ ‚| j         	                    dd|d         i¦  «         d S )Nr‘   rR  r#   )
r  r  r!   rb   rÚ   r-   r*   r?   r.   rd   rŠ   s     r   r  zInRowPhase.end_tag_trç  s•   € Ø×%Ò%Ñ'Ô'ð 	SØ×2Ò2Ñ4Ô4Ð4ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ø $¤Ô 2°?Ô CˆDŒKÔÐÐð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óz   — |                       ¦   «         }|                      t          d¦  «        ¦  «         |s|S d S r  r  rÔ  s      r   r­  zInRowPhase.end_tag_tableñ  sG   € Ø×/Ò/Ñ1Ô1ˆØ�ŠÕ)¨$Ñ/Ô/Ñ0Ô0Ð0ð ð 	ØˆLð	ð 	r   c                 óØ   — | j                              |d         d¬¦  «        r$|                      t          d¦  «        ¦  «         |S | j                             dd|d         i¦  «         d S )Nr#   r¡   r¼  r›   rR  )r!   r¾  r  r  r-   rd   rŠ   s     r   r   z!InRowPhase.end_tag_table_rowgroupù  sl   € ØŒ9×%Ò% e¨F¤m¸WÐ%ÑEÔEð 	SØ�OŠOÕ-¨dÑ3Ô3Ñ4Ô4Ð4ØˆLàŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j                              dd|d         i¦  «         d S )Nzunexpected-end-tag-in-table-rowr#   rÏ   rŠ   s     r   r¯  zInRowPhase.end_tag_ignore   s9   € ØŒ×ÒØ-°¸¸f¼Ð/Fñ	Hô 	Hð 	Hð 	Hð 	Hr   c                 óL   — | j         j        d                              |¦  «        S rô  rÝ  rŠ   s     r   rå   zInRowPhase.end_tag_other  r
  r   r¥   r  )rŸ   r€  r    rœ   rž   r�   r›   r›   r¡   r±  )r£   rŸ   r€  r    r¥   r™   rš   N)rµ   r¶   r·   r   ræ   r  r  rv   rm   rl   rý  r  rÙ   r  r­  r   r¯  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   r  r  À  sg  € € € € € à�‘”€Ið*ð *ð *ðEð Eð Eð5ð 5ð 5ðNð Nð NðHð Hð Hð<ð <ð <ðð ð ðGð Gð GðSð Sð Sðð ð ðSð Sð SðHð Hð HðEð Eð Eð !˜Ø	�Ô%Ð&Ø	Ð+Ð,ð
Ø&ð	(ð"ñ ô Ðð �hØ	ˆzÐØ	�-Ð Ø	$Ð&<Ð=Ø	CÀ^ÐTð	 ñ ô €O€O€Or   r  c                   ó¬   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Z ed
ej        fdefg¦  «        Z ede
fdefdefg¦  «        ZdS )ÚInCellPhasec                 ó  — | j                              dd¬¦  «        r$|                      t          d¦  «        ¦  «         d S | j                              dd¬¦  «        r$|                      t          d¦  «        ¦  «         d S d S )Nr™   r¡   r¼  rš   )r!   r¾  Úend_tag_table_cellr  rE   s    r   Ú_close_cellzInCellPhase._close_cell  sŒ   € ØŒ9×%Ò% d°GÐ%Ñ<Ô<ð 	=Ø×#Ò#Õ$5°dÑ$;Ô$;Ñ<Ô<Ð<Ð<Ð<ØŒY×'Ò'¨°gÐ'Ñ>Ô>ð 	=Ø×#Ò#Õ$5°dÑ$;Ô$;Ñ<Ô<Ð<Ð<Ð<ð	=ð 	=r   c                 óN   — | j         j        d                              ¦   «          d S r  rÍ  rE   s    r   rv   zInCellPhase.process_eof   rÎ  r   c                 óL   — | j         j        d                              |¦  «        S r  rÐ  rŠ   s     r   rl   zInCellPhase.process_characters#  rÑ  r   c                 ó  — | j                              dd¬¦  «        s| j                              dd¬¦  «        r|                      ¦   «          |S | j        j        sJ ‚| j                             dd|d         i¦  «         d S )Nr™   r¡   r¼  rš   z&unexpected-start-tag-out-of-table-cellr#   )r!   r¾  r$  r-   r.   rd   rŠ   s     r   r  z!InCellPhase.start_tag_table_other&  sŸ   € ØŒI×&Ò& t°WÐ&Ñ=Ô=ð 	SØ”	×*Ò*¨4¸Ð*ÑAÔAð	Sà×ÒÑÔÐØˆLð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ø8¸6À5ÈÄ=Ð:QñSô Sð Sð Sð Sr   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   rÙ   zInCellPhase.start_tag_other1  r  r   c                 óh  — | j                              |d         d¬¦  «        rì| j                              |d         ¦  «         | j         j        d         j        |d         k    rV| j                             dd|d         i¦  «         	 | j         j                             ¦   «         }|j        |d         k    rnŒ1n| j         j                             ¦   «          | j                              ¦   «          | j        j	        d         | j        _
        d S | j                             dd|d         i¦  «         d S )	Nr#   r¡   r¼  rX   zunexpected-cell-end-tagTr�   rR  )r!   r¾  r  rb   r#   r-   rd   rÚ   rN  r*   r?   rL  s      r   r#  zInCellPhase.end_tag_table_cell4  s+  € ØŒ9×%Ò% e¨F¤m¸WÐ%ÑEÔEð 	SØŒI×/Ò/°°f´Ñ>Ô>Ð>ØŒyÔ& rÔ*Ô/°5¸´=Ò@Ð@Ø”×'Ò'Ø-°¸¸f¼Ð/FñHô Hð HðØœ9Ô2×6Ò6Ñ8Ô8�DØ”y E¨&¤MÒ1Ð1Øðð à”	Ô'×+Ò+Ñ-Ô-Ð-ØŒI×6Ò6Ñ8Ô8Ð8Ø $¤Ô 2°8Ô <ˆDŒKÔÐÐàŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j                              dd|d         i¦  «         d S rQ  rÏ   rŠ   s     r   r¯  zInCellPhase.end_tag_ignoreE  rS  r   c                 ó¼   — | j                              |d         d¬¦  «        r|                      ¦   «          |S | j                             dd|d         i¦  «         d S )Nr#   r¡   r¼  rR  )r!   r¾  r$  r-   rd   rŠ   s     r   Úend_tag_implyzInCellPhase.end_tag_implyH  se   € ØŒ9×%Ò% e¨F¤m¸WÐ%ÑEÔEð 	SØ×ÒÑÔÐØˆLð ŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j         j        d                              |¦  «        S r  rÝ  rŠ   s     r   rå   zInCellPhase.end_tag_otherP  re  r   r¥   rÞ  r  )r£   rŸ   r€  r    r¥   r=  N)rµ   r¶   r·   r   ræ   r$  rv   rl   r  rÙ   r#  r¯  r,  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   r!  r!    s  € € € € € à�‘”€Ið=ð =ð =ð4ð 4ð 4ðGð Gð Gð	Sð 	Sð 	SðFð Fð FðSð Sð Sð"Oð Oð OðSð Sð SðDð Dð Dð !˜Ø	�Ô%Ð&ð
Ø/ð	1ð"ñ ô Ðð �hØ	Ð)Ð*Ø	7¸ÐHØ	3°]ÐCð ñ ô €O€O€Or   r!  c            	       óÖ   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Z edej        fdefdefde	fde
fdefg¦  «        Z edefdefdefg¦  «        ZdS )ÚInSelectPhasec                 ó�   — | j         j        d         j        dk    r| j                             d¦  «         d S | j        j        sJ ‚d S )NrX   r¥   zeof-in-selectr“  rE   s    r   rv   zInSelectPhase.process_eofd  sM   € ØŒ9Ô" 2Ô&Ô+¨vÒ5Ð5ØŒK×#Ò# OÑ4Ô4Ð4Ð4Ð4à”;Ô(Ð(Ð(Ð(Ð(Ð(r   c                 ób   — |d         dk    rd S | j                              |d         ¦  «         d S rÂ  rÒ   rŠ   s     r   rl   z InSelectPhase.process_charactersj  s6   € Ø�Œ=˜HÒ$Ð$ØˆFØŒ	×Ò˜e FœmÑ,Ô,Ð,Ð,Ð,r   c                 ó¬   — | j         j        d         j        dk    r| j         j                             ¦   «          | j                              |¦  «         d S r  ©r!   rb   r#   rÚ   r¯   rŠ   s     r   Ústart_tag_optionzInSelectPhase.start_tag_optiono  sM   € àŒ9Ô" 2Ô&Ô+¨xÒ7Ð7ØŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 ó  — | j         j        d         j        dk    r| j         j                             ¦   «          | j         j        d         j        dk    r| j         j                             ¦   «          | j                              |¦  «         d S )NrX   r  r"  r3  rŠ   s     r   Ústart_tag_optgroupz InSelectPhase.start_tag_optgroupu  s|   € ØŒ9Ô" 2Ô&Ô+¨xÒ7Ð7ØŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒ9Ô" 2Ô&Ô+¨zÒ9Ð9ØŒIÔ#×'Ò'Ñ)Ô)Ð)ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 ó~   — | j                              d¦  «         |                      t          d¦  «        ¦  «         d S )Nzunexpected-select-in-selectr˜   )r-   rd   Úend_tag_selectr  rŠ   s     r   r  zInSelectPhase.start_tag_select|  s<   € ØŒ×ÒÐ =Ñ>Ô>Ð>Ø×ÒÕ-¨hÑ7Ô7Ñ8Ô8Ð8Ð8Ð8r   c                 óÖ   — | j                              d¦  «         | j                             dd¬¦  «        r$|                      t          d¦  «        ¦  «         |S | j         j        sJ ‚d S )Nzunexpected-input-in-selectr˜   r¼  )r-   rd   r!   r¾  r8  r  r.   rŠ   s     r   rí  zInSelectPhase.start_tag_input€  so   € ØŒ×ÒÐ <Ñ=Ô=Ð=ØŒ9×%Ò% h¸Ð%ÑAÔAð 	)Ø×ÒÕ 1°(Ñ ;Ô ;Ñ<Ô<Ð<ØˆLà”;Ô(Ð(Ð(Ð(Ð(Ð(r   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   rG  zInSelectPhase.start_tag_scriptˆ  r  r   c                 óL   — | j                              dd|d         i¦  «         d S )Nzunexpected-start-tag-in-selectr#   rÏ   rŠ   s     r   rÙ   zInSelectPhase.start_tag_other‹  ó9   € ØŒ×ÒØ,¨v°u¸V´}Ð.Eñ	Gô 	Gð 	Gð 	Gð 	Gr   c                 ó¶   — | j         j        d         j        dk    r | j         j                             ¦   «          d S | j                             dddi¦  «         d S )NrX   r  úunexpected-end-tag-in-selectr#   ©r!   rb   r#   rÚ   r-   rd   rŠ   s     r   Úend_tag_optionzInSelectPhase.end_tag_option�  s[   € ØŒ9Ô" 2Ô&Ô+¨xÒ7Ð7ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ð)Ð)àŒK×#Ò#Ð$BÀVÈXÐDVÑWÔWÐWÐWÐWr   c                 ó^  — | j         j        d         j        dk    r9| j         j        d         j        dk    r| j         j                             ¦   «          | j         j        d         j        dk    r | j         j                             ¦   «          d S | j                             dddi¦  «         d S )NrX   r  éþÿÿÿr"  r>  r#   r?  rŠ   s     r   Úend_tag_optgroupzInSelectPhase.end_tag_optgroup•  s³   € àŒIÔ# BÔ'Ô,°Ò8Ð8Ø”	Ô'¨Ô+Ô0°JÒ>Ð>ØŒIÔ#×'Ò'Ñ)Ô)Ð)àŒ9Ô" 2Ô&Ô+¨zÒ9Ð9ØŒIÔ#×'Ò'Ñ)Ô)Ð)Ð)Ð)ð ŒK×#Ò#Ø.°¸Ð0DñFô Fð Fð Fð Fr   c                 óz  — | j                              dd¬¦  «        rm| j         j                             ¦   «         }|j        dk    r)| j         j                             ¦   «         }|j        dk    °)| j                             ¦   «          d S | j        j        sJ ‚| j                             dd|d         i¦  «         d S )Nr˜   r¼  rR  r#   )	r!   r¾  rb   rÚ   r#   r-   rA   r.   rd   rL  s      r   r8  zInSelectPhase.end_tag_select¢  s½   € ØŒ9×%Ò% h¸Ð%ÑAÔAð 	SØ”9Ô*×.Ò.Ñ0Ô0ˆDØ”)˜xÒ'Ð'Ø”yÔ.×2Ò2Ñ4Ô4�ð ”)˜xÒ'Ð'àŒK×,Ò,Ñ.Ô.Ð.Ð.Ð.ð ”;Ô(Ð(Ð(Ð(ØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRÐRÐRr   c                 óL   — | j                              dd|d         i¦  «         d S )Nr>  r#   rÏ   rŠ   s     r   rå   zInSelectPhase.end_tag_other­  s*   € ØŒ×ÒÐ >ÀÈÈvÌÐ@WÑXÔXÐXÐXÐXr   r¥   r  r"  r˜   )r  rx  r¦  rY  N)rµ   r¶   r·   r   ræ   rv   rl   r4  r6  r  rí  rG  rÙ   r@  rC  r8  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   r/  r/  `  s`  € € € € € Ø�‘”€Ið)ð )ð )ð-ð -ð -ð
(ð (ð (ð(ð (ð (ð9ð 9ð 9ð)ð )ð )ðFð Fð FðGð Gð GðXð Xð XðFð Fð Fð	Sð 	Sð 	SðYð Yð Yð !˜Ø	�Ô%Ð&Ø	Ð#Ð$Ø	Ð'Ð(Ø	Ð#Ð$Ø	(¨/Ð:Ø	Ð#Ð$ð"ñ ô Ðð �hØ	�>Ð"Ø	Ð%Ð&Ø	�>Ð"ð ñ ô €O€O€Or   r/  c                   ó~   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
 edefg¦  «        Z ede	fg¦  «        ZdS )	ÚInSelectInTablePhasec                 óN   — | j         j        d                              ¦   «          d S ©NrŽ   rÍ  rE   s    r   rv   z InSelectInTablePhase.process_eofÃ  s$   € ØŒÔ˜;Ô'×3Ò3Ñ5Ô5Ð5Ð5Ð5r   c                 óL   — | j         j        d                              |¦  «        S rI  rÐ  rŠ   s     r   rl   z'InSelectInTablePhase.process_charactersÆ  s    € ØŒ{Ô! +Ô.×AÒAÀ%ÑHÔHÐHr   c                 ó�   — | j                              dd|d         i¦  «         |                      t          d¦  «        ¦  «         |S )Nz5unexpected-table-element-start-tag-in-select-in-tabler#   r˜   )r-   rd   rå   r  rŠ   s     r   rè  z$InSelectInTablePhase.start_tag_tableÉ  sO   € ØŒ×ÒØCØ�U˜6”]Ð#ñ	%ô 	%ð 	%ð 	×ÒÕ,¨XÑ6Ô6Ñ7Ô7Ð7Øˆr   c                 óL   — | j         j        d                              |¦  «        S rI  r  rŠ   s     r   rÙ   z$InSelectInTablePhase.start_tag_otherÐ  s    € ØŒ{Ô! +Ô.×@Ò@ÀÑGÔGÐGr   c                 óØ   — | j                              dd|d         i¦  «         | j                             |d         d¬¦  «        r$|                      t          d¦  «        ¦  «         |S d S )Nz3unexpected-table-element-end-tag-in-select-in-tabler#   r¡   r¼  r˜   )r-   rd   r!   r¾  rå   r  rŠ   s     r   r­  z"InSelectInTablePhase.end_tag_tableÓ  sz   € ØŒ×ÒØAØ�U˜6”]Ð#ñ	%ô 	%ð 	%ð Œ9×%Ò% e¨F¤m¸WÐ%ÑEÔEð 	Ø×ÒÕ0°Ñ:Ô:Ñ;Ô;Ð;ØˆLð	ð 	r   c                 óL   — | j         j        d                              |¦  «        S rI  rÝ  rŠ   s     r   rå   z"InSelectInTablePhase.end_tag_otherÛ  s    € ØŒ{Ô! +Ô.×>Ò>¸uÑEÔEÐEr   )rŸ   r¡   rœ   rž   r�   r›   r™   rš   N)rµ   r¶   r·   r   ræ   rv   rl   rè  rÙ   r­  rå   rÁ   rØ   rä   r    r   r   rG  rG  À  sÃ   € € € € € Ø�‘”€Ið6ð 6ð 6ðIð Ið Iðð ð ðHð Hð Hðð ð ðFð Fð Fð !˜Ø	JØ	ð	ð"ñ ô Ðð
 �hØ	JØ	ð	ð ñ ô €O€O€Or   rG  c                   óT   — e Zd Z e¦   «         Z eg d¢¦  «        Zd„ Zd„ Zd„ Z	d„ Z
dS )ÚInForeignContentPhase),rf  rg  rT  r£   r  rU  rh  r�  r�   rX  rž  ri  rw  Úh1Úh2Úh3Úh4Úh5Úh6r¢   rþ  rk  rô  rŸ  r¥  r`  r_  rß  rb  r   r¤  r  rl  rm  Úspanro  rn  ÚsubÚsupr¡   rp  rq  re  Úvarc                 ó  — 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)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdD“¥dEdFdGœ¥}|dH         |v r||dH                  |dH<   d S d S )INÚaltglyphÚaltGlyphÚaltglyphdefÚaltGlyphDefÚaltglyphitemÚaltGlyphItemÚanimatecolorÚanimateColorÚanimatemotionÚanimateMotionÚanimatetransformÚanimateTransformÚclippathÚclipPathÚfeblendÚfeBlendÚfecolormatrixÚfeColorMatrixÚfecomponenttransferÚfeComponentTransferÚfecompositeÚfeCompositeÚfeconvolvematrixÚfeConvolveMatrixÚfediffuselightingÚfeDiffuseLightingÚfedisplacementmapÚfeDisplacementMapÚfedistantlightÚfeDistantLightÚfefloodÚfeFloodÚfefuncaÚfeFuncAÚfefuncbÚfeFuncBÚfefuncgÚfeFuncGÚfefuncrÚfeFuncRÚfegaussianblurÚfeGaussianBlurÚfeimageÚfeImageÚfemergeÚfeMergeÚfemergenodeÚfeMergeNodeÚfemorphologyÚfeMorphologyÚfeoffsetÚfeOffsetÚfepointlightÚfePointLightÚfespecularlightingÚfeSpecularLightingÚfespotlightÚfeSpotLightÚfetileÚfeTileÚfeturbulenceÚfeTurbulenceÚforeignobjectÚforeignObjectÚglyphrefÚglyphRefÚlineargradientÚlinearGradientÚradialGradientÚtextPath)ÚradialgradientÚtextpathr#   r    )r%   rw   Úreplacementss      r   Úadjust_svg_tag_namesz*InForeignContentPhase.adjust_svg_tag_namesó  sÿ  € ð%
Ø˜
ð%
à˜=ð%
ð ˜Nð%
ð ˜Nð	%
ð
 ˜_ð%
ð Ð 2ð%
ð ˜
ð%
ð �yð%
ð ˜_ð%
ð "Ð#8ð%
ð ˜=ð%
ð Ð 2ð%
ð  Ð!4ð%
ð  Ð!4ð%
ð Ð.ð%
ð  �yð!%
ð" �yð#%
ð %
ð$ �yð%%
ð& �yð'%
ð( �yð)%
ð* Ð.ð+%
ð, �yð-%
ð. �yð/%
ð0 ˜=ð1%
ð2 ˜Nð3%
ð4 ˜
ð5%
ð6 ˜Nð7%
ð8 !Ð"6ð9%
ð: ˜=ð;%
ð< �hð=%
ð> ˜Nð?%
ð@ ˜_ðA%
ðB ˜
ðC%
ðD Ð.ðE%
ð %
ðF /Ø"ðI%
ð %
ð %
ˆðN �Œ=˜LÐ(Ð(Ø(¨¨v¬Ô7ˆE�&‰MˆMˆMð )Ð(r   c                 óÎ   — |d         dk    rd|d<   n7| j         j        r+t          d„ |d         D ¦   «         ¦  «        rd| j         _        t                               | |¦  «         d S )NrZ   r«  u   ï¿½c              3   ó(   K  — | ]}|t           vV — Œd S rU   r­  r®  s     r   r°  z;InForeignContentPhase.process_characters.<locals>.<genexpr>"	  s(   è è € ÐIÐI°4�$Õ.Ð.ÐIÐIÐIÐIÐIÐIr   F)r-   rD   r±  rÃ   rl   rŠ   s     r   rl   z(InForeignContentPhase.process_characters	  sr   € Ø�Œ=˜HÒ$Ð$Ø$ˆE�&‰MˆMØŒkÔ%ð 	,ÝÐIÐI¸5À¼=ÐIÑIÔIÑIÔIð	,à&+ˆDŒKÔ#Ý× Ò   uÑ-Ô-Ð-Ð-Ð-r   c                 óè  — | j         j        d         }|d         | j        v s:|d         dk    �rbt          |d                              ¦   «         ¦  «        h d£z  �r5| j                             dd|d         i¦  «         | j         j        d         j        | j         j        k    rë| j         	                    | j         j        d         ¦  «        sÁ| j         
                    | j         j        d         ¦  «        s—| j         j                             ¦   «          | j         j        d         j        | j         j        k    rT| j         	                    | j         j        d         ¦  «        s*| j         
                    | j         j        d         ¦  «        ¯—|S |j        t          d         k    r| j                             |¦  «         nE|j        t          d         k    r/|                      |¦  «         | j                             |¦  «         | j                             |¦  «         |j        |d	<   | j                              |¦  «         |d
         r%| j         j                             ¦   «          d|d<   d S d S )NrX   r#   rj  rZ   >   ÚfaceÚsizeÚcolorz*unexpected-html-element-in-foreign-contentrK   r^   rM   r`   Tra   )r!   rb   Úbreakout_elementsÚsetr¾   r-   rd   rM   rg   rS   rV   rÚ   r   r   r¥  r   r   r¯   )r%   rw   rz   s      r   rn   z'InForeignContentPhase.process_start_tag&	  sr  € Ø”yÔ.¨rÔ2ˆØ�&ŒM˜TÔ3Ð3Ð3Ø�f” Ò'Ñ'Ý�E˜&”M×&Ò&Ñ(Ô(Ñ)Ô)Ð,EÐ,EÐ,EÑEñ (àŒK×#Ò#Ø<¸vÀuÈVÄ}Ð>UñWô Wð Wà”9Ô*¨2Ô.Ô8Ø”9Ô.ò/ð /à”{×<Ò<Ø”yÔ.¨rÔ2ñ4ô 4ð/ð ”{×CÒCØ”yÔ.¨rÔ2ñ4ô 4ð	/ð ”	Ô'×+Ò+Ñ-Ô-Ð-ð ”9Ô*¨2Ô.Ô8Ø”9Ô.ò/ð /à”{×<Ò<Ø”yÔ.¨rÔ2ñ4ô 4ð/ð ”{×CÒCØ”yÔ.¨rÔ2ñ4ô 4ð	/ð ˆLð Ô%­°HÔ)=Ò=Ð=Ø”×4Ò4°UÑ;Ô;Ð;Ð;ØÔ'­:°eÔ+<Ò<Ð<Ø×)Ò)¨%Ñ0Ô0Ð0Ø”×1Ò1°%Ñ8Ô8Ð8ØŒK×1Ò1°%Ñ8Ô8Ð8Ø!-Ô!7ˆE�+ÑØŒI×$Ò$ UÑ+Ô+Ð+Ø�]Ô#ð 8Ø”	Ô'×+Ò+Ñ-Ô-Ð-Ø37�Ð/Ñ0Ð0Ð0ð8ð 8r   c                 óF  — t          | j        j        ¦  «        dz
  }| j        j        d         }|j                             t
          ¦  «        |d         k    r#| j                             dd|d         i¦  «         	 |j                             t
          ¦  «        |d         k    r®| j        j        | j        j	        d         k    r9| j        j         
                    ¦   «          | j        j        j        | j        _        | j        j                             ¦   «         |k    r0| j        j        sJ ‚| j        j                             ¦   «         |k    °0d }nN|dz  }| j        j        |         }|j        | j        j        k    r�Œ| j        j                             |¦  «        }	 |S )Nr   rX   r#   rR  Tr–  )rf   r!   rb   r#   rO   r	   r-   rd   r?   r*   r¼  r°   rÚ   rM   rg   rp   )r%   rw   Ú
node_indexr¨   ry   s        r   rp   z%InForeignContentPhase.process_end_tagC	  ss  € Ý˜œÔ0Ñ1Ô1°AÑ5ˆ
ØŒyÔ& rÔ*ˆØŒ9×ÒÕ3Ñ4Ô4¸¸f¼ÒEÐEØŒK×#Ò#Ð$8¸6À5ÈÄ=Ð:QÑRÔRÐRð	ØŒy×"Ò"Õ#7Ñ8Ô8¸EÀ&¼MÒIÐIà”;Ô$¨¬Ô(:¸?Ô(KÒKÐKØ”KÔ%×6Ò6Ñ8Ô8Ð8Ø(,¬Ô(9Ô(H�D”KÔ%Ø”iÔ-×1Ò1Ñ3Ô3°tÒ;Ð;Øœ9Ô2Ð2Ð2Ð2ð ”iÔ-×1Ò1Ñ3Ô3°tÒ;Ð;à �	ØØ˜!‰OˆJà”9Ô*¨:Ô6ˆDØŒ~ ¤Ô!<Ò<Ð<Ùà œKÔ-×=Ò=¸eÑDÔD�	ØØÐr   N)rµ   r¶   r·   r   ræ   ri   r¬  r¥  rl   rn   rp   r    r   r   rP  rP  é  s}   € € € € € Ø�‘”€Ià!˜	ð #ð #ð #ñ ô Ðð)8ð )8ð )8ðV.ð .ð .ð8ð 8ð 8ð:ð ð ð ð r   rP  c                   ó„   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Z edefg¦  «        Z ede
fg¦  «        Zd	S )
ÚAfterBodyPhasec                 ó   — d S rU   r    rE   s    r   rv   zAfterBodyPhase.process_eofa	  ó   € àˆr   c                 ó\   — | j                              || j         j        d         ¦  «         d S )NrG   rÌ   rŠ   s     r   rr   zAfterBodyPhase.process_commente	  s,   € ð 	Œ	× Ò  ¨¬	Ô(?ÀÔ(BÑCÔCÐCÐCÐCr   c                 ór   — | j                              d¦  «         | j         j        d         | j         _        |S )Nzunexpected-char-after-bodyr•   ©r-   rd   r*   r?   rŠ   s     r   rl   z!AfterBodyPhase.process_charactersj	  s2   € ØŒ×ÒÐ <Ñ=Ô=Ð=Ø œKÔ.¨yÔ9ˆŒÔØˆr   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   zAfterBodyPhase.start_tag_htmlo	  r  r   c                 ó„   — | j                              dd|d         i¦  «         | j         j        d         | j         _        |S )Nzunexpected-start-tag-after-bodyr#   r•   r¶  rŠ   s     r   rÙ   zAfterBodyPhase.start_tag_otherr	  sF   € ØŒ×ÒØ-°¸¸f¼Ð/Fñ	Hô 	Hð 	Hà œKÔ.¨yÔ9ˆŒÔØˆr   c                 óŽ   — | j         j        r| j                              d¦  «         d S | j         j        d         | j         _        d S )Nz'unexpected-end-tag-after-body-innerhtmlúafter after body)r-   r.   rd   r*   r?   )r%   r#   s     r   r,  zAfterBodyPhase.end_tag_htmlx	  sH   € ØŒ;Ô ð 	GØŒK×#Ò#Ð$MÑNÔNÐNÐNÐNà $¤Ô 2Ð3EÔ FˆDŒKÔÐÐr   c                 ó„   — | j                              dd|d         i¦  «         | j         j        d         | j         _        |S )Nzunexpected-end-tag-after-bodyr#   r•   r¶  rŠ   s     r   rå   zAfterBodyPhase.end_tag_other~	  sF   € ØŒ×ÒØ+¨f°e¸F´mÐ-Dñ	Fô 	Fð 	Fà œKÔ.¨yÔ9ˆŒÔØˆr   r¥   N)rµ   r¶   r·   r   ræ   rv   rr   rl   râ   rÙ   r,  rå   rÁ   rØ   rä   r    r   r   r±  r±  ^	  sÅ   € € € € € Ø�‘”€Iðð ð ðDð Dð Dð
ð ð ð
Fð Fð Fðð ð ðGð Gð Gðð ð ð !˜Ø	�Ð ð"ñ ô Ðð �h ¨Ð 6Ð7Ñ8Ô8€O€O€Or   r±  c                   ó¦   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Z ed	ej        fd
efdefde	fg¦  «        Z ed
efg¦  «        ZdS )ÚInFramesetPhasec                 ó�   — | j         j        d         j        dk    r| j                             d¦  «         d S | j        j        sJ ‚d S )NrX   r¥   zeof-in-framesetr“  rE   s    r   rv   zInFramesetPhase.process_eof�	  sN   € ØŒ9Ô" 2Ô&Ô+¨vÒ5Ð5ØŒK×#Ò#Ð$5Ñ6Ô6Ð6Ð6Ð6à”;Ô(Ð(Ð(Ð(Ð(Ð(r   c                 ó:   — | j                              d¦  «         d S )Nzunexpected-char-in-framesetrÏ   rŠ   s     r   rl   z"InFramesetPhase.process_characters•	  s   € ØŒ×ÒÐ =Ñ>Ô>Ð>Ð>Ð>r   c                 ó:   — | j                              |¦  «         d S rU   )r!   r¯   rŠ   s     r   r‚  z"InFramesetPhase.start_tag_frameset˜	  s   € ØŒ	× Ò  Ñ'Ô'Ð'Ð'Ð'r   c                 óv   — | j                              |¦  «         | j         j                             ¦   «          d S rU   r/  rŠ   s     r   Ústart_tag_framezInFramesetPhase.start_tag_frame›	  s5   € ØŒ	× Ò  Ñ'Ô'Ð'ØŒ	Ô×#Ò#Ñ%Ô%Ð%Ð%Ð%r   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   Ústart_tag_noframesz"InFramesetPhase.start_tag_noframesŸ	  r  r   c                 óL   — | j                              dd|d         i¦  «         d S )Nz unexpected-start-tag-in-framesetr#   rÏ   rŠ   s     r   rÙ   zInFramesetPhase.start_tag_other¢	  r  r   c                 ó<  — | j         j        d         j        dk    r| j                             d¦  «         n| j         j                             ¦   «          | j        j        s9| j         j        d         j        dk    r | j        j        d         | j        _        d S d S d S )NrX   r¥   z)unexpected-frameset-in-frameset-innerhtmlr¤   úafter frameset)	r!   rb   r#   r-   rd   rÚ   r.   r*   r?   rŠ   s     r   Úend_tag_framesetz InFramesetPhase.end_tag_frameset¦	  s    € ØŒ9Ô" 2Ô&Ô+¨vÒ5Ð5àŒK×#Ò#Ð$OÑPÔPÐPÐPàŒIÔ#×'Ò'Ñ)Ô)Ð)Ø”Ô%ð 	EØ”	Ô'¨Ô+Ô0°JÒ>Ð>ð !%¤Ô 2Ð3CÔ DˆDŒKÔÐÐð		Eð 	EØ>Ð>r   c                 óL   — | j                              dd|d         i¦  «         d S )Nzunexpected-end-tag-in-framesetr#   rÏ   rŠ   s     r   rå   zInFramesetPhase.end_tag_other²	  r<  r   r¥   r¤   r�  rV  N)rµ   r¶   r·   r   ræ   rv   rl   r‚  rÂ  rÄ  rÙ   rÈ  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   r½  r½  ‹	  sü   € € € € € à�‘”€Ið)ð )ð )ð?ð ?ð ?ð(ð (ð (ð&ð &ð &ðFð Fð FðIð Ið Ið
Eð 
Eð 
EðGð Gð Gð !˜Ø	�Ô%Ð&Ø	Ð'Ð(Ø	�/Ð"Ø	Ð'Ð(ð	"ñ ô Ðð �hØ	Ð%Ð&ð ñ ô €O€O€Or   r½  c                   óŽ   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
 edej        fdefg¦  «        Z ede	fg¦  «        Zd	S )
ÚAfterFramesetPhasec                 ó   — d S rU   r    rE   s    r   rv   zAfterFramesetPhase.process_eofÆ	  r³  r   c                 ó:   — | j                              d¦  «         d S )Nzunexpected-char-after-framesetrÏ   rŠ   s     r   rl   z%AfterFramesetPhase.process_charactersÊ	  s   € ØŒ×ÒÐ @ÑAÔAÐAÐAÐAr   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   rÄ  z%AfterFramesetPhase.start_tag_noframesÍ	  r  r   c                 óL   — | j                              dd|d         i¦  «         d S )Nz#unexpected-start-tag-after-framesetr#   rÏ   rŠ   s     r   rÙ   z"AfterFramesetPhase.start_tag_otherÐ	  s9   € ØŒ×ÒØ1°F¸EÀ&¼MÐ3Jñ	Lô 	Lð 	Lð 	Lð 	Lr   c                 ó>   — | j         j        d         | j         _        d S )Núafter after frameset)r-   r*   r?   rŠ   s     r   r,  zAfterFramesetPhase.end_tag_htmlÔ	  s   € Ø œKÔ.Ð/EÔFˆŒÔÐÐr   c                 óL   — | j                              dd|d         i¦  «         d S )Nz!unexpected-end-tag-after-framesetr#   rÏ   rŠ   s     r   rå   z AfterFramesetPhase.end_tag_other×	  s9   € ØŒ×ÒØ/°&¸%À¼-Ð1Hñ	Jô 	Jð 	Jð 	Jð 	Jr   r¥   rV  N)rµ   r¶   r·   r   ræ   rv   rl   rÄ  rÙ   r,  rå   rÁ   rÃ   râ   rØ   rä   r    r   r   rË  rË  Â	  sÏ   € € € € € à�‘”€Iðð ð ðBð Bð BðFð Fð FðLð Lð LðGð Gð GðJð Jð Jð !˜Ø	�Ô%Ð&Ø	Ð'Ð(ð"ñ ô Ðð
 �hØ	�Ðð ñ ô €O€O€Or   rË  c                   óh   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Z ede	fg¦  «        Zd	S )
ÚAfterAfterBodyPhasec                 ó   — d S rU   r    rE   s    r   rv   zAfterAfterBodyPhase.process_eofè	  rê   r   c                 óP   — | j                              || j         j        ¦  «         d S rU   rì   rŠ   s     r   rr   z#AfterAfterBodyPhase.process_commentë	  rí   r   c                 óL   — | j         j        d                              |¦  «        S r  rh  rŠ   s     r   rm   z,AfterAfterBodyPhase.process_space_charactersî	  ri  r   c                 ór   — | j                              d¦  «         | j         j        d         | j         _        |S )Núexpected-eof-but-got-charr•   r¶  rŠ   s     r   rl   z&AfterAfterBodyPhase.process_charactersñ	  s2   € ØŒ×ÒÐ ;Ñ<Ô<Ð<Ø œKÔ.¨yÔ9ˆŒÔØˆr   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   z"AfterAfterBodyPhase.start_tag_htmlö	  r  r   c                 ó„   — | j                              dd|d         i¦  «         | j         j        d         | j         _        |S )Núexpected-eof-but-got-start-tagr#   r•   r¶  rŠ   s     r   rÙ   z#AfterAfterBodyPhase.start_tag_otherù	  sF   € ØŒ×ÒØ,¨v°u¸V´}Ð.Eñ	Gô 	Gð 	Gà œKÔ.¨yÔ9ˆŒÔØˆr   c                 ó„   — | j                              dd|d         i¦  «         | j         j        d         | j         _        |S )Núexpected-eof-but-got-end-tagr#   r•   r¶  rŠ   s     r   rp   z#AfterAfterBodyPhase.process_end_tagÿ	  sF   € ØŒ×ÒØ*¨V°U¸6´]Ð,Cñ	Eô 	Eð 	Eà œKÔ.¨yÔ9ˆŒÔØˆr   r¥   N)rµ   r¶   r·   r   ræ   rv   rr   rm   rl   râ   rÙ   rp   rÁ   rØ   r    r   r   rÔ  rÔ  å	  s«   € € € € € Ø�‘”€Iðð ð ð<ð <ð <ðMð Mð Mðð ð ð
Fð Fð Fðð ð ðð ð ð !˜Ø	�Ð ð"ñ ô ÐÐÐr   rÔ  c                   ót   — e Zd Z e¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Z ed	e	fd
e
fg¦  «        ZdS )ÚAfterAfterFramesetPhasec                 ó   — d S rU   r    rE   s    r   rv   z#AfterAfterFramesetPhase.process_eof
  rê   r   c                 óP   — | j                              || j         j        ¦  «         d S rU   rì   rŠ   s     r   rr   z'AfterAfterFramesetPhase.process_comment
  rí   r   c                 óL   — | j         j        d                              |¦  «        S r  rh  rŠ   s     r   rm   z0AfterAfterFramesetPhase.process_space_characters
  ri  r   c                 ó:   — | j                              d¦  «         d S )NrÙ  rÏ   rŠ   s     r   rl   z*AfterAfterFramesetPhase.process_characters
  s   € ØŒ×ÒÐ ;Ñ<Ô<Ð<Ð<Ð<r   c                 óL   — | j         j        d                              |¦  «        S r  r  rŠ   s     r   râ   z&AfterAfterFramesetPhase.start_tag_html
  r  r   c                 óL   — | j         j        d                              |¦  «        S rd  r  rŠ   s     r   rÄ  z*AfterAfterFramesetPhase.start_tag_noframes
  r  r   c                 óL   — | j                              dd|d         i¦  «         d S )NrÜ  r#   rÏ   rŠ   s     r   rÙ   z'AfterAfterFramesetPhase.start_tag_other
  r<  r   c                 óL   — | j                              dd|d         i¦  «         d S )NrÞ  r#   rÏ   rŠ   s     r   rp   z'AfterAfterFramesetPhase.process_end_tag#
  s9   € ØŒ×ÒØ*¨V°U¸6´]Ð,Cñ	Eô 	Eð 	Eð 	Eð 	Er   r¥   rV  N)rµ   r¶   r·   r   ræ   rv   rr   rm   rl   râ   rÄ  rÙ   rp   rÁ   rØ   r    r   r   rà  rà  

  sÌ   € € € € € Ø�‘”€Iðð ð ð<ð <ð <ðMð Mð Mð=ð =ð =ðFð Fð FðFð Fð FðGð Gð GðEð Eð Eð !˜Ø	�Ð Ø	Ð'Ð(ð"ñ ô ÐÐÐr   rà  r8   r7   r—   r  rC  rJ  r•   r®   r”   r–  r’   r“   r‘   r�   r�   rŽ   r  )r_   r)  r–   rÇ  rº  rÑ  c                 óô   ‡— | d                               ¦   «         ‰                      ¦   «         z  rG t          | d         ¦  «        ˆfd„| d                              ¦   «         D ¦   «         ¦  «        | d<   d S d S )NrZ   c              3   óN   •K  — | ]\  }}‰                      ||¦  «        |fV — Œ d S rU   )re   )r"   rÀ   r¿   r¤  s      €r   r°  z$adjust_attributes.<locals>.<genexpr>J
  sU   øè è € ð ,Yð ,YÙ4>°C¸ˆ\×Ò˜c 3Ñ'Ô'¨Ð/ð,Yð ,Yð ,Yð ,Yð ,Yð ,Yr   )r¾   rY   r)   )rw   r¤  s    `r   r‰   r‰   H
  s�   ø€ ØˆV„}×ÒÑÔ˜l×/Ò/Ñ1Ô1Ñ1ð YØ+�˜U 6œ]Ñ+Ô+ð ,Yð ,Yð ,Yð ,YØBGÈÄ-×BUÒBUÑBWÔBWð,Yñ ,Yô ,Yñ Yô Yˆˆf‰ˆˆðYð Yr   ro   NFc                 ó.   — t           |         | |€i n||dœS )N)rY   r#   rZ   r`   )r   )r#   rY   rN   rù  s       r   r  r  N
  s*   € å�d”ØØ Ð(��¨jØ#ð	ð ð r   r³   )ro   NF)4rò   r   Ú	constantsr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r0   r   Útreebuilderr   r   r   r   rÁ   rÃ   rè   r  r  r%  ra  r{  rŒ  r†  r�  r³  rÈ  rà  rð  r  r!  r/  rG  rP  r±  r½  rË  rÔ  rà  r(   r‰   r  r    r   r   ú<module>rî     sÁ  ðØ Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð  %Ð $Ð $Ð $Ð $Ð $Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,ð"Ið "Ið "Ið "IðJb)ð b)ð b)ð b)ð b)ñ b)ô b)ð b)ðJð ð ðA%ð A%ð A%ð A%ð A%ñ A%ô A%ð A%ðHCð Cð Cð Cð C�5ñ Cô Cð CðL!ð !ð !ð !ð !�eñ !ô !ð !ðH(ð (ð (ð (ð (�eñ (ô (ð (ðVbð bð bð bð b�%ñ bô bð bðJ>ð >ð >ð >ð >˜%ñ >ô >ð >ðB>ð >ð >ð >ð >�Uñ >ô >ð >ðBOð Oð Oð Oð O�%ñ Oô Oð Oðd=ð =ð =ð =ð =�ñ =ô =ð =ðBNð Nð Nð Nð N�5ñ Nô Nð Nðb-ð -ð -ð -ð -�uñ -ô -ð -ð`Bð Bð Bð Bð B�Uñ Bô Bð BðJ<ð <ð <ð <ð <˜ñ <ô <ð <ð~]ð ]ð ]ð ]ð ]�uñ ]ô ]ð ]ð@Sð Sð Sð Sð S�ñ Sô Sð SðlGð Gð Gð Gð G�%ñ Gô Gð GðT]ð ]ð ]ð ]ð ]�Eñ ]ô ]ð ]ð@&ð &ð &ð &ð &˜5ñ &ô &ð &ðRrð rð rð rð r˜Eñ rô rð rðj*9ð *9ð *9ð *9ð *9�Uñ *9ô *9ð *9ðZ4ð 4ð 4ð 4ð 4�eñ 4ô 4ð 4ðn ð  ð  ð  ð  ˜ñ  ô  ð  ðF"ð "ð "ð "ð "˜%ñ "ô "ð "ðJ ð  ð  ð  ð  ˜eñ  ô  ð  ðFØˆ|ðà�?ðð �?ðð ˆ{ð	ð
 Ð+ðð �.ðð ˆ{ðð ˆIðð �ðð Ð%ðð �.ðð Ð)ðð Ð%ðð ˆjðð ˆ{ðð  �ð!ð" Ð.ð#ð$ 0Ø Ø"Ø(Ø+Ø3ð/ð ð €ð6Yð Yð Yðð ð ð ð ð r   