ó †2{Yc@`sýddlmZmZmZddlmZmZddlZejZddl m Z e j Z e j Ze jZe jZe jZe jZdZddlmZmZdjeƒZed „Zd „Zd efd „ƒYZ d e fd„ƒYZ!dS(i(tabsolute_importtdivisiontunicode_literals(t text_typet string_typesN(tNodeu <#UNKNOWN#>i(t voidElementstspaceCharactersucC`s>|dkr|rdSdSnt|tƒr0|St|ƒSdS(u<Wrapper around six.text_type to convert None to empty stringuN(tNonet isinstanceR(tst blank_if_none((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytto_texts cC`s|dkpt|tƒS(u2Wrapper around isinstance(string_types) or is NoneN(RR R(tstring((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytis_text_or_none"st TreeWalkercB`sweZd„Zd„Zd„Zed„Zd„Zd„Zd„Z d„Z d d e d„Z d „Zd „ZRS( cC`s ||_dS(N(ttree(tselfR((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyt__init__(scC`s t‚dS(N(tNotImplementedError(R((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyt__iter__+scC`sidd6|d6S(NuSerializeErrorutypeudata((Rtmsg((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyterror.scc`sÁ|dks-t|tƒs-tt|ƒƒ‚t|tƒsNtt|ƒƒ‚td„|jƒDƒƒspt‚idd6t|tƒd6t|ƒd6|d6V|r½|j t dƒƒVndS(Ncs`sT|]J\\}}}|dks0t|tƒoKt|tƒoKt|tƒVqdS(N(RR R(t.0t namespacetnametvalue((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pys 4suEmptyTagutypeunameu namespaceudatauVoid element has children( RR RtAssertionErrorttypetalltitemsR tFalseRt_(RRRtattrst hasChildren((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytemptyTag1s-!   cC`s²|dks-t|tƒs-tt|ƒƒ‚t|tƒsNtt|ƒƒ‚td„|jƒDƒƒspt‚idd6t|ƒd6t|ƒd6t d„|jƒDƒƒd6S(Ncs`sT|]J\\}}}|dks0t|tƒoKt|tƒoKt|tƒVqdS(N(RR R(RRRR((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pys BsuStartTagutypeunameu namespacecs`sE|];\\}}}t|tƒt|ƒft|tƒfVqdS(N(R R(RRRR((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pys Jsudata( RR RRRRRRR tdict(RRRR!((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytstartTag?s-!     cC`s}|dks-t|tƒs-tt|ƒƒ‚t|tƒsNtt|ƒƒ‚idd6t|tƒd6t|ƒd6id6S(NuEndTagutypeunameu namespaceudata(RR RRRR R(RRR((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytendTagNs -!  cc`sÓt|tƒs!tt|ƒƒ‚t|ƒ}|jtƒ}|t|ƒt|ƒ }|rridd6|d6Vn|}|jtƒ}|t|ƒ}|r³idd6|d6Vn|rÏidd6|d6VndS(NuSpaceCharactersutypeudatau Characters( R RRRR tlstripRtlentrstrip(Rtdatatmiddletlefttright((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyttextWs! cC`s9t|tƒs!tt|ƒƒ‚idd6t|ƒd6S(NuCommentutypeudata(R RRRR(RR*((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytcommentgs!cC`s™t|ƒstt|ƒƒ‚t|ƒs<tt|ƒƒ‚t|ƒsZtt|ƒƒ‚idd6t|ƒd6t|ƒd6t|ƒd6t|ƒd6S(NuDoctypeutypeunameupublicIdusystemIducorrect(RRRR (RRtpublicIdtsystemIdtcorrect((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytdoctypels    cC`s9t|tƒs!tt|ƒƒ‚idd6t|ƒd6S(NuEntityutypeuname(R RRRR(RR((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytentityws!cC`s|jtdƒ|ƒS(NuUnknown node type: (RR (RtnodeType((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytunknown|sN(t__name__t __module__RRRRR#R%R&R.R/RtTrueR3R4R6(((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyR's        tNonRecursiveTreeWalkercB`s5eZd„Zd„Zd„Zd„Zd„ZRS(cC`s t‚dS(N(R(Rtnode((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytgetNodeDetailsscC`s t‚dS(N(R(RR;((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyt getFirstChild„scC`s t‚dS(N(R(RR;((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pytgetNextSibling‡scC`s t‚dS(N(R(RR;((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyt getParentNodeŠsc c`sh|j}xX|dk rc|j|ƒ}|d|d}}t}|tkr_|j|ŒVn |tkrxú|j|ŒD] }|Vq{WnÛ|tkrÿ|\}}}}|t krèx%|j ||||ƒD] }|VqÐWt}qh|j |||ƒVni|t kr |j |dƒVnH|tkrA|j|dƒVn'|tkrVt}n|j|dƒV|r€|j|ƒ} nd} | dk r›| }q xÂ|dk r_|j|ƒ}|d|d}}|tkr|\}}}}|t kr|j||ƒVqn|j|kr(d}Pn|j|ƒ} | dk rM| }Pqž|j|ƒ}qžWq WdS(Nii(RRR<RtDOCTYPER3tTEXTR.tELEMENTRR#R%tCOMMENTR/tENTITYR4tDOCUMENTR9R6R=R&R>R?( Rt currentNodetdetailsRR"ttokenRRt attributest firstChildt nextSibling((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyRsZ                  (R7R8R<R=R>R?R(((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyR:€s     ("t __future__RRRtpip._vendor.sixRRtgettextR txml.domRt DOCUMENT_NODEREtDOCUMENT_TYPE_NODER@t TEXT_NODERAt ELEMENT_NODERBt COMMENT_NODERCt ENTITY_NODERDtUNKNOWNt constantsRRtjoinR9R RtobjectRR:(((sW/opt/alt/python33/lib/python3.3/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyts"         Y