+
    |fP                     l    ^ RI Ht ^ RIt^RIHt ^RIHt ]P                  ! R4      tR t	]! ]	4      t
R# )    )OrderedDictN)base)moduleFactoryFactoryz{([^}]*)}(.*)c                    a T pVP                  R 4      P                  o ! V3R lR\        P                  4      p\	        4       # )asdc                   D   <a  ] tR t^t o RtV3R ltR tR tR tRt	V t
R# )#getETreeBuilder.<locals>.TreeWalkera  Given the particular ElementTree representation, this implementation,
to avoid using recursion, returns "nodes" as tuples with the following
content:

1. The current element

2. The index of the element relative to its parent

3. A stack of ancestor elements

4. A flag "text", "tail" or None to indicate if the current node is a
   text node; either the text or tail of the current element (1)
c                d  < \        V\        4      '       d+   Vw  p r4VR9   d   \        P                  \	        W$4      3# Tp\        VR4      '       g   VP                  4       pVP                  R9   d   \        P                  3# VP                  R8X  d=   \        P                  VP                  VP                  R4      VP                  R4      3# VP                  S8X  d   \        P                  VP                  3# \        VP                  \        4      '       g   Q \        VP                  4      4       h\        P!                  VP                  4      pV'       d   VP#                  4       w  rgMRpVP                  p\%        4       p\'        VP(                  P+                  4       4       FN  w  r\        P!                  V	4      pV'       d'   WVP-                  ^4      VP-                  ^4      3&   KH  WRV	3&   KP  	  \        P.                  YgT\1        V4      ;'       g    VP                  3# )texttagz
<!DOCTYPE>publicIdsystemIdNr   tail)DOCUMENT_ROOTDOCUMENT_FRAGMENT)
isinstancetupler   TEXTgetattrhasattrgetrootr   DOCUMENTDOCTYPEr   getCOMMENTstrtype
tag_regexpmatchgroupsr   listattribitemsgroupELEMENTlen)selfnodeelt_flagr    	namespacer   attrsnamevalueElementTreeCommentTypes   &&         </usr/lib/python3/dist-packages/html5lib/treewalkers/etree.pygetNodeDetails2getETreeBuilder.<locals>.TreeWalker.getNodeDetails   s   $&&"&Q++99gc&888D4''||~xxAA''\)dii,dhhz.BD D 33||TYY.. "$((C00@$txx.@0"((2%*\\^NIs $I((C##'(9(9(;#<KD&,,T2EBGu{{1~u{{1~>?.3tTl+ $= is4y55DII7 7    c                    \        V\        4      '       d   Vw  r#rEM	VR . R 3w  r#rEVR9   d   R # VP                  '       d   W#VR3# \        V4      '       d   VP	                  V4       V^ ,          ^ VR 3# R # )Nr   r   )r   r   r   r'   appendr(   r)   elementkeyparentsr,   s   &&    r2   getFirstChild1getETreeBuilder.<locals>.TreeWalker.getFirstChildE   s{    $&&.2+gt.2D"d.B+g''<<<"&88\\NN7+"1:q'477r5   c                n   \        V\        4      '       d   Vw  r#rEMR # VR8X  d2   \        V4      '       d   VP                  V4       V^ ,          ^ VR 3# R # VP                  '       d   VR8w  d   W#VR3# V\        VR,          4      ^,
          8  d#   VR,          V^,           ,          V^,           VR 3# R # )Nr   r   )r   r   r'   r7   r   r8   s   &&    r2   getNextSibling2getETreeBuilder.<locals>.TreeWalker.getNextSiblingV   s    $&&.2+gtv~w<<NN7+"1:q'477<<<DFN"&883wr{+a//"2;sQw/q'4GGr5   c                8   \        V\        4      '       d   Vw  r#rEMR # VR8X  d   V'       g   V# W#VR 3# VP                  4       pV'       g   V# \        VR,          4      P	                  V4      ^8X  g   Q hV\        VR,          4      P                  V4      VR 3# )Nr   r?   )r   r   popr"   countindex)r(   r)   r9   r:   r;   r,   parents   &&     r2   getParentNode1getETreeBuilder.<locals>.TreeWalker.getParentNodej   s    $&&.2+gtv~"N"$66 !M,226:a???!4#4#:#:6#BGTQQr5    N)__name__
__module____qualname____firstlineno____doc__r3   r<   r@   rG   __static_attributes____classdictcell__)__classdict__r1   s   @r2   
TreeWalkerr	      s&     	&	7P	 "	 (	R 	Rr5   rR   )Commentr   r   NonRecursiveTreeWalkerlocals)ElementTreeImplementationElementTreerR   r1   s   &  @r2   getETreeBuilderrX      s?    +K(007;;lRT00 lR\ 8Or5   )collectionsr   re r   _utilsr   compiler   rX   getETreeModulerI   r5   r2   <module>r_      s2    # 	  )ZZ(
rj &o6r5   