ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ ePc@s{dZddlmZmZddlmZmZdefdYZdefdYZ dej fd YZ d S( s Legacy module - don't use in new code! html5lib now has its own proper implementation. This module implements a tree builder for html5lib that generates lxml html element trees. This module uses camelCase as it follows the html5lib style guide. i(t_basetetree(thtmlRt DocumentTypecBseZdZRS(cCs||_||_||_dS(N(tnametpublicIdtsystemId(tselfRRR((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt__init__s  (t__name__t __module__R(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyRstDocumentcBseZdZdZRS(cCsd|_g|_dS(N(tNonet _elementTreet childNodes(R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyRs cCs|jjj|jdS(N(R tgetroottaddnextt_element(Rtelement((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt appendChilds(R R RR(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR s t TreeBuildercBsheZeZeZdZdZeZ dZ dZ dZ dZ dZddZdZRS(cOs\tjtdt}tjtdt}|j|_|j|_t j j |||dS(NtfullTree( tetree_builderstgetETreeModuleRtFalseRtElementt elementClasstCommentt commentClassRRR(Rtargstkwargst html_buildert etree_builder((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR's   cCs/tjj|t|_g|_d|_dS(N(RRtresetRt rootInsertedtinitialCommentsR tdoctype(R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR!.s  cCs |jjS(N(tdocumentR (R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt getDocument4scCseg}|jdj}|jr2|j|jn|j|j|jra|j|jn|S(Ni(t openElementsRttexttappendtextendt getchildrenttail(RtfragmentR((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt getFragment7s  cCs"|j|||}||_dS(N(t doctypeClassR$(RRRRR$((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt insertDoctypeAscCs6|js|jj|ntjj|||dS(N(R"R#R)RRt insertComment(Rtdatatparent((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR1Es cCsDg}|jr|jjr|jd|jj|jjdk sV|jjdk r||jd|jj|jjfn|jdn|jdtjdj|}x'|j D]}|j t j |qW|j |_|j|j_|j|}||_|jjj||jj|t|_dS(Ns s t(R$RR)RR RRt fromstringtjoinR#t addpreviousRRt documentClassR%t getroottreeR RRRR'tTrueR"(RRtbuftroottcommentt root_element((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt insertRootKs$$  N(R R R R9RR/R RRt fragmentClassRR!R&R.R0R1R@(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR s     N( t__doc__thtml5lib.treebuildersRRRtlxmlRtobjectRR R(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt s