๓ œ0{Yc@`s—ddlmZmZmZddlmZmZddlZddlm Z ddlm Z ddl m Z dd l m Z d „Ze eƒZdS( i(tabsolute_importtdivisiontunicode_literals(tminidomtNodeNi(t_basei(t constants(t namespaces(tmoduleFactoryFactoryc`svˆ‰dtfd„ƒY‰dtjf‡‡fd†ƒY‰dtjf‡‡‡‡fd†ƒY}d„‰tƒS(NtAttrListcB`sPeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z RS(cS`s ||_dS(N(telement(tselfR ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt__init__scS`st|jjjƒƒjƒS(N(tlistR t attributestitemst__iter__(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyRscS`s|jj||ƒdS(N(R t setAttribute(R tnametvalue((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt __setitem__scS`stt|jjjƒƒƒS(N(tlenR R RR(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt__len__scS`s7gt|jjjƒƒD]}|d|df^qS(Nii(R R RR(R titem((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyRscS`st|jjjƒƒS(N(R R Rtkeys(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR!scS`s|jj|ƒS(N(R t getAttribute(R R((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt __getitem__$scS`s,t|tƒrt‚n|jj|ƒSdS(N(t isinstancettupletNotImplementedErrorR t hasAttribute(R R((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt __contains__'s ( t__name__t __module__R RRRRRRR(((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR s       t NodeBuilderc`sคeZd„Zed„ƒZd„Zd d„Zd„Zd„Z d„Z ‡fd†Z d„Z ee e ƒZ ‡fd †Zd „Zd „ZeeƒZRS( cS`s#tjj||jƒ||_dS(N(RRR tnodeNameR (R R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR .scS`s"t|jdƒr|jjp!dS(Nu namespaceURI(thasattrR t namespaceURItNone(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt2scS`s ||_|jj|jƒdS(N(tparentR t appendChild(R tnode((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR)5s cS`sH|jjj|ƒ}|r4|jj||jƒn|jj|ƒdS(N(R t ownerDocumenttcreateTextNodet insertBeforeR)(R tdataR-ttext((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt insertText9scS`s&|jj|j|jƒ||_dS(N(R R-R((R R*trefNode((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR-@scS`s8|jj|jkr+|jj|jƒnd|_dS(N(R t parentNodet removeChildR&R((R R*((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR3DscS`sOx?|jjƒrA|jj}|jj|ƒ|jj|ƒqWg|_dS(N(R t hasChildNodest firstChildR3R)t childNodes(R t newParenttchild((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pytreparentChildrenIs  c`s ˆ|jƒS(N(R (R (R (sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt getAttributesPscS`sข|ržx•t|jƒƒD]~\}}t|tƒr„|ddk r]|dd|d}n |d}|jj|d||ƒq|jj||ƒqWndS(Niu:ii(R RRRR&R tsetAttributeNSR(R RRRt qualifiedName((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt setAttributesSs   c`sˆ|jjtƒƒS(N(R t cloneNodetFalse(R (R"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR>bscS`s |jjƒS(N(R R4(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt hasContentescS`s4|jdkr td|jfS|j|jfSdS(Nuhtml(t namespaceR&RR(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt getNameTuplehsN(R R!R tpropertyRAR)R&R0R-R3R9R:R=RR>R@RBt nameTuple((R R"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR"-s         t TreeBuilderc`s›eZ‡fd†Z‡‡fd†Zd ‡fd†Z‡fd†Z‡fd†Zd„Z‡fd†Z d„Z d„Z d d „Z ˆZ d ZRS( c`s+ˆjƒjdddƒ|_tj|ƒS(N(tgetDOMImplementationtcreateDocumentR&tdomtweakreftproxy(R (tDom(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt documentClassqsc`st|d}|d}|d}ˆjƒ}|j|||ƒ}|jjˆ|ƒƒˆtkrp|j|_ndS(NunameupublicIdusystemId(RFtcreateDocumentTypetdocumentR)RRHR+(R ttokenRtpublicIdtsystemIdtdomimpltdoctype(RKR"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt insertDoctypeus     c`sO|dkr0|jdkr0|jj|ƒ}n|jj||ƒ}ˆ|ƒS(N(R&tdefaultNamespaceRHt createElementtcreateElementNS(R RRAR*(R"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt elementClass€sc`sˆ|jj|ƒƒS(N(RHt createComment(R R.(R"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt commentClassˆsc`sˆ|jjƒƒS(N(RHtcreateDocumentFragment(R (R"(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt fragmentClass‹scS`s|jj|jƒdS(N(RHR)R (R R*((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR)Žsc`s ˆ|ƒS(N((R R (ttestSerializer(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR]‘scS`s|jS(N(RH(R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt getDocument”scS`stjj|ƒjS(N(RREt getFragmentR (R ((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR_—scS`sฆ|}||kr+tjj|||ƒnwt|jdƒr†tj|jjkr†t|jjƒ|j_|jjj tjƒq†n|jj |jj |ƒƒdS(Nu_child_node_types( RRER0R$RHRt TEXT_NODEt_child_node_typesR tappendR)R,(R R.R(((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR0šs N(R R!RLRTR&RXRZR\R)R]R^R_R0timplementationR((RKtDomImplementationR"R](sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyREps     c`s?|jƒg‰d‡‡fd†‰ˆ|dƒdjˆƒS(Nic `sษ|jtjkrฎ|jr“|js-|jrr|jp9d}|jpHd}ˆjdd||j||fƒqซˆjdd||jfƒqšˆjdd|fƒn์|jtjkrะˆjdƒnส|jtjkr๒ˆjdƒnจ|jtj kr%ˆjdd||j fƒnu|jtj krXˆjd d||j fƒnBt |d ƒr–|j dk r–d tj|j |jf}n |j}ˆjd d||fƒ|jƒršg}x‰tt|jƒƒD]r}|jj|ƒ}|j}|j}|j } | r8d tj| |jf}n |j}|j||fƒqโWx?t|ƒD].\}}ˆjd d|d||fƒqeWn|d7}x|jD]} ˆ| |ƒqฎWdS(Nuu|%su u|%su|%su #documentu#document-fragmentu|%su|%s"%s"u namespaceURIu%s %su|%s<%s>u |%s%s="%s"i(tnodeTypeRtDOCUMENT_TYPE_NODERRPRQRbt DOCUMENT_NODEtDOCUMENT_FRAGMENT_NODEt COMMENT_NODEt nodeValueR`R$R%R&RtprefixesR#t hasAttributestrangeRRRRt localNametsortedR6( R tindentRPRQRRtitattrRtnsR8(trvtserializeElement(sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyRuญsN  !!!      ) u (t normalizetjoin(R ((RtRusV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyR]ฉs  . (tobjectRRREtlocals(RdRE((R RKRdR"R]sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyt getDomBuilder s "C(9 6(t __future__RRRtxml.domRRRItRRRtutilsRRzt getDomModule(((sV/opt/alt/python34/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyts  ึ