\% @sddlmZddlmZddlmZejjZejjZeejdriejj Z n ejj Z ejj Z ejj Z ddgZ d5ZyeeZWnek rYnXidd6dd6dd6dd6dd6dd6d d!6Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+Zd,d-Zd.d.dd/d0Zd.d1d2Zd3dZd4dZd.S)6)absolute_import)unicode_literals)util test_commentto_html_stringto_xhtml_stringareabasebasefontbrcolframehrimginputisindexlink metaparamxmlz$http://www.w3.org/XML/1998/namespacehtmlzhttp://www.w3.org/1999/xhtmlrdfz+http://www.w3.org/1999/02/22-rdf-syntax-ns#wsdlz http://schemas.xmlsoap.org/wsdl/xsz http://www.w3.org/2001/XMLSchemaxsiz)http://www.w3.org/2001/XMLSchema-instancedcz http://purl.org/dc/elements/1.1/cCs#td|t|jfdS)Nzcannot serialize %r (type %s)) TypeErrortype__name__)textr !build/lib/markdown/serializers.py_raise_serialization_errorLsr"c Cs=y|j|dSWn"ttfk r8t|YnXdS)Nxmlcharrefreplace)encoderAttributeErrorr")rencodingr r r!_encodeQsr'c Csykd|kr$|jdd}nd|krE|jdd}nd|krf|jdd}n|SWn"ttfk rt|YnXdS)N&z&z>)replacerr%r")rr r r! _escape_cdataWs   r,c Csyd|kr$|jdd}nd|krE|jdd}nd|krf|jdd}nd|kr|jdd}nd |kr|jd d }n|SWn"ttfk rt|YnXdS) Nr(z&r)z<r*z>"z" z )r+rr%r")rr r r!_escape_attribhs     r/c Csyd|kr$|jdd}nd|krE|jdd}nd|krf|jdd}nd|kr|jdd}n|SWn"ttfk rt|YnXdS) Nr(z&r)z<r*z>r-z")r+rr%r")rr r r!_escape_attrib_htmlys    r0c Cs|j}|j}|tkr5|dt|n}|tkrX|dt|nZ||}|dkr|r|t|nx(|D]}t|||d|qWn|d||j}|s|rt|}x|D]\} } t| t r| j} nt| t r0|| j} n t | } || | kri|dkri|d| q|d|| | fqW|r|j}|j ddd xD|D]9\} } | rd | } n|d | t | fqWqn|d kr"|j tkr"|d n|d|rd|j dkrQ||qd|t|nx$|D]}t|||d|qkW|j tkr|d|dn|jr|t|jndS)Nz zr)rz %sz %s="%s"keycSs|dS)Nrr )xr r r!sz!_serialize_html..:z xmlns%s="%s"xhtmlz />r*scriptstylez.add_qname) iterr% getiteratorr8r>r?rr string_typer9PIr"r<)rErRr_Ziterater8r1valuerr )rRrGrFr!rOs:      $     rOcCstt|jddS)NrHr)rT ElementTreegetroot)elementr r r!rscCstt|jddS)NrHr5)rTrerf)rgr r r!rs) zareazbasezbasefontzbrzcolzframezhrzimgzinputzisindexzlinkr) __future__rrrLretreerer?hasattrrr9rcr:__all__rBset NameErrorrYr"r'r,r/r0r;rTrOrrr r r r!(sH              7?