abc@`sdZddlmZmZmZddlmZddlmZdddd d d gZ iZ dd Z d Z dZdS(uA collection of modules for iterating through different kinds of tree, generating tokens identical to those produced by the tokenizer module. To create a tree walker for a new type of tree, you need to do implement a tree walker object (called TreeWalker by convention) that implements a 'serialize' method taking a tree as sole argument and returning an iterator generating tokens. i(tabsolute_importtdivisiontunicode_literalsi(t constants(t default_etreeu getTreeWalkerupprintudomuetreeugenshiu etree_lxmlcK`s|j}|tkr|dkrDddlm}|jt|u iudatau %s%s="%s"uEndTaguCommentu %suDoctypeupublicIdu%susystemIduu%su%su %su Charactersu%s"%s"uSpaceCharactersuBconcatenateCharacterTokens should have got rid of all Space tokensuUnknown token type, %su (uStartTaguEmptyTag( RRt namespacestprefixesRtsortedtitemstFalsetAssertionErrort ValueErrorR( twalkertoutputtindentRRtnstnametattrst namespacet localnametvalue((sM/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pytpprintKsd  !    %"    "    "   " N(t__doc__t __future__RRRR Rt_utilsRt__all__R R RRR+(((sM/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt s '