File: //usr/lib/python3/dist-packages/pip/_vendor/html5lib/treewalkers/__pycache__/etree.cpython-310.pyc
o
@%Ne� � @ sj d dl mZmZmZ d dlmZ d dlZd dlmZ ddl m
Z
ddlmZ e�
d �Zd
d� Zee�ZdS )� )�absolute_import�division�unicode_literals)�OrderedDictN)�string_types� )�base� )�moduleFactoryFactoryz
{([^}]*)}(.*)c s, | }|� d�j� G � fdd�dtj�}t� S )N�asdc s4 e Zd ZdZ� fdd�Zdd� Zdd� Zdd � Zd
S )z#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 s@ t |t�r|\}}}}|dv rtjt||�fS |}t|d�s"|�� }|jdv r+tjfS |jdkr>tj |j
|�d�|�d�fS |j� krItj|j
fS t |jt
�sVJ t|j���t�|j�}|re|�� \}}nd }|j}t� }t|j�� �D ]\} }
t�| �}|r�|
||�d�|�d�f<