
    c                         d dl mZ d dl mZmZmZ d dlZddgZdZ ej        dej	                  Z
	  ee          Zn# e$ r Y nw xY wd Zd	 Zd
 Zd Zd ZddZd Zd ZdS )    )ProcessingInstruction)CommentElementTreeQNameNto_html_stringto_xhtml_string)areabasebasefontbrcolframehrimginputisindexlinkmetaparamz)&(?!(?:\#[0-9]+|\#x[0-9a-f]+|[0-9a-z]+);)c                 l    t          d                    | t          |           j                            )Nzcannot serialize {!r} (type {}))	TypeErrorformattype__name__texts    4lib/python3.11/site-packages/markdown/serializers.py_raise_serialization_errorr   8   s0    
)00tDzz7JKK
 
 
    c                     	 d| v rt                               d|           } d| v r|                     dd          } d| v r|                     dd          } | S # t          t          f$ r t          |            Y d S w xY w)N&&amp;<&lt;>&gt;RE_AMPsubreplacer   AttributeErrorr   r   s    r   _escape_cdatar,   >   s    ) $; 	-::gt,,D$; 	-<<V,,D$; 	-<<V,,D~& ) ) )"4(((((()s   AA  A;:A;c                 d   	 d| v rt                               d|           } d| v r|                     dd          } d| v r|                     dd          } d| v r|                     dd          } d	| v r|                     d	d
          } | S # t          t          f$ r t          |            Y d S w xY w)Nr!   r"   r#   r$   r%   r&   "&quot;
z&#10;r'   r   s    r   _escape_attribr1   P   s    )$; 	-::gt,,D$; 	-<<V,,D$; 	-<<V,,D4< 	0<<h//D4< 	/<<g..D~& ) ) )"4(((((()s   BB  B/.B/c                 0   	 d| v rt                               d|           } d| v r|                     dd          } d| v r|                     dd          } d| v r|                     dd          } | S # t          t          f$ r t          |            Y d S w xY w)	Nr!   r"   r#   r$   r%   r&   r.   r/   r'   r   s    r   _escape_attrib_htmlr3   c   s    )$; 	-::gt,,D$; 	-<<V,,D$; 	-<<V,,D4< 	0<<h//D~& ) ) )"4(((((()s   A.A1 1 BBc                 N   |j         }|j        }|t          u r | dt          |          z             nJ|t          u r | dt          |          z             n$|2|r | t          |                     |D ]}t          | ||           nd }t          |t                    rI|j        d d         dk    r'|j        dd                              dd          \  }}nt          d           | d|z              |
                                }|rt          |          }|D ]\  }}	t          |t                    r|j        }t          |	t                    r|	j        }	nt          |	          }	||	k    r|dk    r | d	|	z             h | d
                    ||	                     |r | dt          |          z             |dk    r'|                                t           v r | d           n | d           |r:|                                dv r | |           n | t          |                     |D ]}t          | ||           |                                t           vr | d|z   dz              |j        r | t          |j                             d S d S )Nz	<!--%s-->z<?%s?>   {}z QName objects must define a tag.r#   htmlz %sz {}="{}"z xmlns="%s"xhtmlz />r%   )scriptstylez</)tagr   r   r,   r   _serialize_html
isinstancer   split
ValueErroritemssortedr3   r   r1   lower
HTML_EMPTYtail)
writeelemr   r<   r   enamespace_urirA   kvs
             r   r=   r=   t   s*   
(C9D
g~ 1(kM$///0000	%	% /(ht,,,----	 -( 	'E-%%&&& 	. 	.AE1f----	. c5!! 	Ex|s" E%(Xabb\%7%7Q%?%?"ss !CDDDcCi

 	35MME 3 31a'' Aa'' /AA+A..A6 3f. 3E%!)$$$$E*++Aq112222 	CE->-#@#@ABBBW 	(
!: 	(E%LLLLE#JJJ /99;;"55 /E$KKKKE---... 2 2q&1111yy{{*, (dSj3&'''y (mDI&&'''''( (r   r8   c                 h    | J g }|j         }t          || |           d                    |          S )N )appendr=   join)rootr   datarF   s       r   _write_htmlrR      s<    DKEE4(((774==r   c                 b    t          t          |                                           d          S )Nr8   r   rR   r   getrootelements    r   r   r      s)    {7++3355fEEEEr   c                 b    t          t          |                                           d          S )Nr9   rT   rU   rW   s    r   r   r      s)    {7++3355gFFFFr   )r8   )xml.etree.ElementTreer   r   r   r   re__all__rD   compileIr(   set	NameErrorr   r,   r1   r3   r=   rR   r   r    r   r   <module>rb      s.  P 8 7 7 7 7 7 = = = = = = = = = = 				.
/B
	@"$	G	G	ZJJ 	 	 	D	
 
 
) ) )$) ) )&) ) )"6( 6( 6(r   F F FG G G G Gs   > AA