t_c@`sddlmZmZmZddlmZmZddlZddlm Z ddlm Z ddlm Z ddl m Z dd lmZdd lmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z d e!d Z"d d e!dZ#dZ$de%fdYZ&ej'dZ(dZ)de*e+dZ,de-fdYZ.dS(i(tabsolute_importtdivisiontunicode_literals(twith_metaclasstviewkeysNi(t _inputstream(t _tokenizer(t treebuilders(tMarker(t_utils(tspaceCharacterstasciiUpper2LowertspecialElementstheadingElementst cdataElementstrcdataElementst tokenTypest tagTokenTypest namespacesthtmlIntegrationPointElementst"mathmlTextIntegrationPointElementstadjustForeignAttributestadjustMathMLAttributestadjustSVGAttributestEt_ReparseExceptionuetreecK`s1tj|}t|d|}|j||S(uParse an HTML document as a string or file-like object into a tree :arg doc: the document to parse as a string or file-like object :arg treebuilder: the treebuilder to use when parsing :arg namespaceHTMLElements: whether or not to namespace HTML elements :returns: parsed tree Example: >>> from html5lib.html5parser import parse >>> parse('

This is a doc

') tnamespaceHTMLElements(RtgetTreeBuildert HTMLParsertparse(tdoct treebuilderRtkwargsttbtp((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRsudivcK`s7tj|}t|d|}|j|d||S(u#Parse an HTML fragment as a string or file-like object into a tree :arg doc: the fragment to parse as a string or file-like object :arg container: the container context to parse the fragment in :arg treebuilder: the treebuilder to use when parsing :arg namespaceHTMLElements: whether or not to namespace HTML elements :returns: parsed tree Example: >>> from html5lib.html5libparser import parseFragment >>> parseFragment('this is a fragment') Rt container(RRRt parseFragment(RR#RRR R!R"((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR$1sc`s dtffdY}|S(Nt Decoratedc`seZfdZRS(c`s^xE|jD]7\}}t|tjr:|}n|||>> from html5lib.html5parser import HTMLParser >>> parser = HTMLParser() # generates parser with etree builder >>> parser = HTMLParser('lxml', strict=True) # generates parser with lxml builder which is strict uetreec`s+i|]!\}}|j|qS((ttree(t.0tnametcls(tself(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pys ys N( tstricttNoneRRR6terrorst getPhasesR&tphases(R:R6R;Rtdebug((R:sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt__init__]s    udivcK`sz||_||_||_tj|d|||_|jy|jWn%tk ru|j|jnXdS(Ntparser( t innerHTMLModeR#t scriptingRt HTMLTokenizert tokenizertresettmainLoopR(R:tstreamt innerHTMLR#RDR ((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt_parse|s      cC`s|jjt|_g|_g|_d|_|jr|jj |_ |j t krp|j j |j _nH|j tkr|j j|j _n$|j dkr|j j|j _n|jd|_|jj|jnt|_ |jd|_d|_d|_t|_dS(Nu no quirksu plaintextu beforeHtmluinitial(R6RGtFalset firstStartTagR=tlogt compatModeRCR#tlowerRJRRFt rcdataStatetstateRt rawtextStatetplaintextStateR?tphasetinsertHtmlElementtresetInsertionModeR<t lastPhasetbeforeRCDataPhasetTruet framesetOK(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRGs*           cC`s't|dsdS|jjjdjS(uName of the character encoding that was used to decode the input stream, or :obj:`None` if that is not determined yet u tokenizeriN(thasattrR<RFRIt charEncodingR8(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytdocumentEncodingscC`se|jdkrK|jtdkrKd|jkoJ|jdjtdkS|j|jftkSdS(Nuannotation-xmlumathmluencodingu text/htmluapplication/xhtml+xml(u text/htmluapplication/xhtml+xml(R8t namespaceRt attributest translateR R(R:telement((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytisHTMLIntegrationPoints cC`s|j|jftkS(N(R_R8R(R:Rb((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytisMathMLTextIntegrationPointscC`s*td}td}td}td}td}td}td}x|jD]}d} |} x=| dk r| } |jjr|jjdnd} | r| jnd} | r| jnd} | d }||kr|j| d | jd id} qet |jjd ks| |jj ks|j | ru||krc|d t ddgks|||fks| t dkr| dkr||kr|d dks|j| r||||fkr|j}n |jd}||kr|j| } qe||kr&|j| } qe||krD|j| } qe||krb|j| } qe||kr|j| } qe||kre|j| } qeqeW||krP| drP| d rP|jdi| d d 6qPqPWt}g}x2|r%|j|j|jj}|rqqWdS(Nu CharactersuSpaceCharactersuStartTaguEndTaguCommentuDoctypeu ParseErroriutypeudataudatavarsiunameumglyphu malignmarkumathmluannotation-xmlusvguinForeignContentu selfClosinguselfClosingAcknowledgedu&non-void-element-with-trailing-solidus(RRFR<R6t openElementsR_R8t parseErrortgettlentdefaultNamespaceRdt frozensetRRcRUR?tprocessCharacterstprocessSpaceCharacterstprocessStartTagt processEndTagtprocessCommenttprocessDoctypeRZtappendt processEOF(R:tCharactersTokentSpaceCharactersTokent StartTagTokent EndTagTokent CommentTokent DoctypeTokentParseErrorTokenttokent prev_tokent new_tokent currentNodetcurrentNodeNamespacetcurrentNodeNameR*RUt reprocessR?((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRHsp       "                  cO`s&|j|td|||jjS(uParse a HTML document into a well-formed tree :arg stream: a file-like object or string containing the HTML to be parsed The optional encoding parameter must be a string that indicates the encoding. If specified, that encoding will be used, regardless of any BOM or later declaration (such as in a meta element). :arg scripting: treat noscript elements as if JavaScript was turned on :returns: parsed tree Example: >>> from html5lib.html5parser import HTMLParser >>> parser = HTMLParser() >>> parser.parse('

This is a doc

') N(RKRLR<R6t getDocument(R:RItargsR ((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRscO`s#|j|t|||jjS(uZParse a HTML fragment into a well-formed tree fragment :arg container: name of the element we're setting the innerHTML property if set to None, default to 'div' :arg stream: a file-like object or string containing the HTML to be parsed The optional encoding parameter must be a string that indicates the encoding. If specified, that encoding will be used, regardless of any BOM or later declaration (such as in a meta element) :arg scripting: treat noscript elements as if JavaScript was turned on :returns: parsed tree Example: >>> from html5lib.html5libparser import HTMLParser >>> parser = HTMLParser() >>> parser.parseFragment('this is a fragment') (RKRZR6t getFragment(R:RIRR ((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR$suXXX-undefined-errorcC`s^|dkri}n|jj|jjj||f|jrZtt||ndS(N( R<R=RqRFRItpositionR;t ParseErrorR(R:t errorcodetdatavars((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRf;s   % cC`st|tdS(N(tadjust_attributesR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRCscC`st|tdS(N(RR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRFscC`st|tdS(N(RtadjustForeignAttributesMap(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRIscC`s|jjdS(N(RBRU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytreparseTokenNormalLscC`s?t}idd6dd6dd6dd6dd 6dd 6dd 6d d 6dd6dd6dd6dd6dd6dd6}x|jjdddD]}|j}d}||jjdkrt}|j}n|dkrn| r|j|jjkrqn||kr|j ||}Pq|r|j d}PqqW||_ dS(NuinSelectuselectuinCellutduthuinRowutru inTableBodyutbodyutheadutfootu inCaptionucaptionu inColumnGroupucolgroupuinTableutableuinBodyuheadubodyu inFramesetuframesetu beforeHeaduhtmlii(uselectucolgroupuheaduhtml( RLR6ReR8R<RZRJR_RiR?RU(R:tlasttnewModestnodetnodeNamet new_phase((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRWPsB       cC`sc|jj||dkr1|jj|j_n|jj|j_|j|_|jd|_dS(NuRAWTEXTutext( R6t insertElementRFRSRRRQRUt originalPhaseR?(R:Rzt contentType((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytparseRCDataRawtext|s   N(R3R4t__doc__R<RLRZRARKRGtpropertyR^RcRdRHRR$RfRRRRRWR(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRVs" "  C       ,c`s!d}d}dt|||fdYdfdY}dfdY}d fd Y}d fd Y}d fdY}dfdY}dffdYdfdY} dffdY} dffdYdffdY} dffdY} dffdY} dffd Y}d!ffd"Y}d#ffd$Y}d%fd&Y}d'ffd(Y}d)fd*Y}d+ffd,Y}d-ffd.Y}d/fd0Y}d1fd2Y}i|d36|d46|d56|d66|d76|d86d96| d:6| d;6d<6| d=6| d>6| d?6|d@6|dA6|dB6|dC6|dD6|dE6|dF6|dG6|dH6|dI6S(JNc`s,dtjDfd}|S(u4Logger that records which phase processes each tokencS`si|]\}}||qS(((R7tkeytvalue((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pys s c`sjjdrt|dkr|d}i|dd6}|dtkrd|d|d                        tInHeadNoscriptPhasecB`seZeZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zejd efde fde fgZe e_ejde fde fgZee_RS(cS`s|jjd|jtS(Nueof-in-head-noscript(RBRfRRZ(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRr/s cS`s|jjdj|S(NuinHead(RBR?Ro(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRo4scS`s|jjd|j|S(Nuchar-in-head-noscript(RBRfR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRk7s cS`s|jjdj|S(NuinHead(RBR?Rl(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRl<scS`s|jjdj|S(NuinBody(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR?scS`s|jjdj|S(NuinHead(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRBscS`s"|jjdi|dd6dS(Nuunexpected-start-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagHeadNoscriptEscS`s,|jjdi|dd6|j|S(Nuunexpected-inhead-noscript-taguname(RBRfR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRHs cS`s/|jjjj}|jjd|j_dS(NuinHead(RBR6ReRR?RU(R:RzR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytendTagNoscriptMscS`s,|jjdi|dd6|j|S(Nuunexpected-inhead-noscript-taguname(RBRfR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytendTagBrRs cS`s"|jjdi|dd6dS(Nuunexpected-end-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRWscS`s|jtddS(Nunoscript(RR(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRZsuhtmlubasefontubgsoundulinkumetaunoframesustyleuheadunoscriptubr(ubasefontubgsoundulinkumetaunoframesustyle(uheadunoscript(R3R4RRRrRoRkRlRRRRRRRRR RRRR(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR,s,                 tAfterHeadPhasec B`seZeZdZdZdZdZdZdZ dZ dZ dZ d Z d Zejd efd efd efde fde fgZe e_ejde fgZe e_RS(cS`s|jtS(N(RRZ(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrns cS`s|j|S(N(R(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRkrs cS`s|jjdj|S(NuinBody(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRvscS`s6t|j_|jj||jjd|j_dS(NuinBody(RLRBR[R6RR?RU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt startTagBodyys cS`s*|jj||jjd|j_dS(Nu inFrameset(R6RRBR?RU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagFrameset~scS`s|jjdi|dd6|jjj|jj|jjdj|xG|jjdddD],}|jdkrh|jjj |PqhqhWdS(Nu#unexpected-start-tag-out-of-my-headunameuinHeadiuhead( RBRfR6ReRqRR?RmR8tremove(R:RzR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagFromHeads  cS`s"|jjdi|dd6dS(Nuunexpected-start-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRscS`s|j|S(N(R(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRs cS`s|j|S(N(R(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRs cS`s"|jjdi|dd6dS(Nuunexpected-end-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRscS`s?|jjtdd|jjd|j_t|j_dS(NubodyuStartTaguinBody(R6RRRBR?RURZR[(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRsuhtmlubodyuframesetubaseubasefontubgsoundulinkumetaunoframesuscriptustyleutitleuheadubr( ubaseubasefontubgsoundulinkumetaunoframesuscriptustyleutitle(ubodyuhtmlubr(R3R4RRRrRkRRRRRRRRRR RRRR(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRks0                t InBodyPhasec,`seZdZfdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0Z2d1Z3d2Z4d3Z5e6j7d4j8fde fd>e fd?e fde fe9efdefdYefdefd]efd^efdefdkefdlefdefdpefdqefdefdefd{efd|efd}efd~efde fde!fde"fde#fde%fde&fde$fde'fde(fde)fg!Z:e*e:_;e6j7d>e,fd4e-fde.fdYe/fdSe+fde0fe9e1fde2fde3fdse4fg Z<e5e<_;RS(uprocessSpaceCharactersc`s)t|j|||j|_dS(N(tsuperRAtprocessSpaceCharactersNonPreRl(R:RR (R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRAscS`s4|j|jko3|j|jko3|j|jkS(N(R8R_R`(R:tnode1tnode2((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytisMatchingFormattingElementscS`s|jj||jjd}g}xS|jjdddD]8}|tkrVPq@|j||r@|j|q@q@Wt|dkr|jjj|dn|jjj|dS(Nii( R6RRetactiveFormattingElementsRRRqRhR(R:RzRbtmatchingElementsR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytaddFormattingElements  c S`sWtd}xD|jjddd D])}|j|kr&|jjdPq&q&WdS(Nuddudtuliuputbodyutdutfootuthutheadutrubodyuhtmliu expected-closing-tag-but-got-eof( uddudtuliuputbodyutdutfootuthutheadutrubodyuhtml(RjR6ReR8RBRf(R:tallowed_elementsR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrs  cS`s|d}|j|_|jdrb|jjdjdkrb|jjdj rb|d}n|r|jj|jj|ndS( Nudatau iupreulistingutextareai(upreulistingutextarea( RRlRR6ReR8t hasContentt#reconstructActiveFormattingElementsR(R:RzR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt!processSpaceCharactersDropNewlines    cS`s}|ddkrdS|jj|jj|d|jjrytg|dD]}|tk^qOryt|j_ndS(Nudatau(R6RRRBR[tanyR RL(R:Rztchar((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRks  #cS`s%|jj|jj|ddS(Nudata(R6RR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRs cS`s|jjdj|S(NuinHead(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagProcessInHeadscS`s|jjdidd6t|jjdks|jjdjdkrNn`t|j_xQ|djD]?\}}||jjdj krk||jjdj |RRRR?R@RR RRRRR((R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR6sH                            tInTableTextPhasec`s\eZd ZfdZdZdZdZdZdZdZ d Z RS( u originalPhaseucharacterTokensc`s/t|j||d|_g|_dS(N(RRAR<RtcharacterTokens(R:RR (RA(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRA6s cS`sdjg|jD]}|d^q}tg|D]}|tk^q3ritdd6|d6}|jjdj|n|r|jj|ng|_dS(Nuudatau CharactersutypeuinTable( tjoinRBRR RRBR?RR6(R:R RRz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytflushCharacters;s)%cS`s|j|j|j_|S(N(RDRRBRU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRoDs cS`s|j|j|j_tS(N(RDRRBRURZ(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrIs cS`s(|ddkrdS|jj|dS(Nudatau(RBRq(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRkNscS`s|jj|dS(N(RBRq(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRlSscS`s|j|j|j_|S(N(RDRRBRU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRmXs cS`s|j|j|j_|S(N(RDRRBRU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRn]s (u originalPhaseucharacterTokens( R3R4RRARDRoRrRkRlRmRn((RA(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRA3s     tInCaptionPhasec `seZeZdZdZdZdZdZdZ dZ dZ dZ e jd jfdefgZee_e jd e fde fde fgZe e_RS(cS`s|jjddd S(NucaptionRutable(R6R(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytignoreEndTagCaptionfscS`s|jjdjdS(NuinBody(RBR?Rr(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRriscS`s|jjdj|S(NuinBody(RBR?Rk(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRklscS`s@|jj|j}|jjjtd|s<|SdS(Nucaption(RBRfRFRURnR(R:Rzt ignoreEndTag((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagTableElementos   cS`s|jjdj|S(NuinBody(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRwscS`s|js|jj|jjdjdkrc|jjdidd6|jjdjd6nx-|jjdjdkr|jjjqfW|jjj|jj|jj d|j_ n |jjdS(Niucaptionu$expected-one-end-tag-but-got-anotherugotNameu expectedNameuinTable( RFR6RReR8RBRfRR2R?RU(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt endTagCaptionzs     cS`s@|jj|j}|jjjtd|s<|SdS(Nucaption(RBRfRFRURnR(R:RzRG((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR?s   cS`s"|jjdi|dd6dS(Nuunexpected-end-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR@scS`s|jjdj|S(NuinBody(RBR?Rn(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRsuhtmlucaptionucolucolgrouputbodyutdutfootuthutheadutrutableubody( ucaptionucolucolgrouputbodyutdutfootuthutheadutr( ubodyucolucolgroupuhtmlutbodyutdutfootuthutheadutr(R3R4RRRFRrRkRHRRIR?R@RR RRRRR((R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyREbs*              tInColumnGroupPhasec`seZeZdZdZdZdZdZdZ dZ dZ e j djfd efgZee_e j d e fd e fgZe e_RS( cS`s|jjdjdkS(Niuhtml(R6ReR8(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytignoreEndTagColgroupscS`sJ|jjdjdkrdS|j}|jtd|sFtSdS(Niuhtmlucolgroup(R6ReR8RKtendTagColgroupRRZ(R:RG((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrs  cS`s-|j}|jtd|s)|SdS(Nucolgroup(RKRLR(R:RzRG((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRks cS`s.|jj||jjjt|d|j|S|jjdS(NutdRutableuth(R6RRZRBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRSs  cS`s|jjdj|S(NuinBody(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRscS`s|jj|dddr|jj|d|jjdj|dkr|jjdi|dd6xFtr|jjj}|j|dkrnPqnqnWn|jjj|jj |jj d|j_ n|jjdi|dd6dS(NunameRutableiuunexpected-cell-end-taguinRowuunexpected-end-tag( R6RRReR8RBRfRZRR2R?RU(R:RzR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRYs    cS`s"|jjdi|dd6dS(Nuunexpected-end-taguname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR@scS`s;|jj|dddr*|j|S|jjdS(NunameRutable(R6RRZRBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt endTagImplys cS`s|jjdj|S(NuinBody(RBR?Rn(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRsuhtmlucaptionucolucolgrouputbodyutdutfootuthutheadutrubodyutable( ucaptionucolucolgrouputbodyutdutfootuthutheadutr(utduth(ubodyucaptionucolucolgroupuhtml(utableutbodyutfootutheadutr(R3R4RRRZRrRkRSRRYR@R[RR RRRRR((R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRXs(             t InSelectPhasec`seZeZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zejd jfd efdefdefde fde fgZe e_ejd e fde fdefgZee_RS(cS`s0|jjdjdkr,|jjdndS(Niuhtmlu eof-in-select(R6ReR8RBRf(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrscS`s,|ddkrdS|jj|ddS(Nudatau(R6R(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRkscS`s@|jjdjdkr,|jjjn|jj|dS(Niuoption(R6ReR8RR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagOptionscS`sl|jjdjdkr,|jjjn|jjdjdkrX|jjjn|jj|dS(Niuoptionuoptgroup(R6ReR8RR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytstartTagOptgroup s cS`s'|jjd|jtddS(Nuunexpected-select-in-selectuselect(RBRft endTagSelectR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR scS`sC|jjd|jjdddr?|jtd|SdS(Nuunexpected-input-in-selectuselectR(RBRfR6RR_R(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR s cS`s|jjdj|S(NuinHead(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR scS`s"|jjdi|dd6dS(Nuunexpected-start-tag-in-selectuname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR s cS`sJ|jjdjdkr,|jjjn|jjdidd6dS(Niuoptionuunexpected-end-tag-in-selectuname(R6ReR8RRBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyt endTagOption s cS`s|jjdjdkrE|jjdjdkrE|jjjn|jjdjdkrq|jjjn|jjdidd6dS(Niuoptioniuoptgroupuunexpected-end-tag-in-selectuname(R6ReR8RRBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pytendTagOptgroup% s cS`ss|jjdddrb|jjj}x%|jdkrQ|jjj}q-W|jjn |jjdS(NuselectR(R6RReRR8RBRWRf(R:RzR((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR_2 s cS`s"|jjdi|dd6dS(Nuunexpected-end-tag-in-selectuname(RBRf(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR= s uhtmluoptionuoptgroupuselectuinputukeygenutextareauscript(uinputukeygenutextarea(R3R4RRRrRkR]R^RRRRR`RaR_RR RRRRR((R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR\s4                   tInSelectInTablePhasec B`seZeZdZdZdZdZdZdZ e j defgZ ee _ e j defgZe e_ RS(cS`s|jjdjdS(NuinSelect(RBR?Rr(R:((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRrU scS`s|jjdj|S(NuinSelect(RBR?Rk(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRkX scS`s5|jjdi|dd6|jtd|S(Nu5unexpected-table-element-start-tag-in-select-in-tableunameuselect(RBRfRR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR[ scS`s|jjdj|S(NuinSelect(RBR?Rm(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR` scS`sU|jjdi|dd6|jj|dddrQ|jtd|SdS(Nu3unexpected-table-element-end-tag-in-select-in-tableunameRutableuselect(RBRfR6RRR(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR?c scS`s|jjdj|S(NuinSelect(RBR?Rn(R:Rz((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRi sucaptionutableutbodyutfootutheadutrutduth(ucaptionutableutbodyutfootutheadutrutduth(ucaptionutableutbodyutfootutheadutrutduth(R3R4RRRrRkRRR?RR RRRR(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRbR s        tInForeignContentPhasec-`seZeZedddddddddd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+g,Zd,Zfd-Zd.Zd/Z RS(0ububigu blockquoteubodyubrucenterucodeuddudivudludtuemuembeduh1uh2uh3uh4uh5uh6uheaduhruiuimguliulistingumenuumetaunobruolupupreurubyususmalluspanustrongustrikeusubusuputableuttuuuuluvarcS`s+i$dd6dd6dd6dd6d d 6d d 6d d6dd6dd6dd6dd6dd6dd6dd6dd6dd 6d!d"6d#d$6d%d&6d'd(6d)d*6d+d,6d-d.6d/d06d1d26d3d46d5d66d7d86d9d:6d;d<6d=d>6d?d@6dAdB6dCdD6dEdF6dGdH6}|dI|kr'||dI|dI s(RBR[RRLRk(R:Rz(R(sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyRk s   cS`s|jjd}|d|jksV|ddkrt|djdddh@r|jjdi|dd6xm|jjdj|jjkr|jj |jjd r|jj |jjd r|jjj qwW|S|jt d kr|jj |n3|jt d krA|j||jj|n|jj||j|d <|jj||d r|jjj t|d sh  %H%-f?B!/F@bYLc&r.8$%%c`s[t|dt@}|rWt|dfd|djD|d s(RR*R&(RzRdtneeds_adjustment((RdsQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR suEndTagcC`s9|dkri}nit|d6|d6|d6|d6S(Nutypeunameudatau selfClosing(R<R(R8R*R`R ((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR s  RcB`seZdZRS(uError in parsed document(R3R4R(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyR s(/t __future__RRRtpip._vendor.sixRRR(tRRRttreebuilders.baseRR t constantsR R R R RRRRRRRRRRRRRRZRR$R5tobjectRtmemoizeR>RR<RLRt ExceptionR(((sQ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/html5lib/html5parser.pyts6 j  7W