HEX
Server: LiteSpeed
System: Linux s787.bom1.mysecurecloudhost.com 4.18.0-477.13.1.lve.el8.x86_64 #1 SMP Thu Jun 1 16:40:47 EDT 2023 x86_64
User: mobilech (5348)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //usr/local/lib64/python3.6/site-packages/lxml/__pycache__/_elementpath.cpython-36.pyc
3

��?e�)�@s�ddlmZddlZejd�Zddd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zeeee
e	ed�ZiZ
dd�Zddd�Zddd�Zd dd�Zd!dd�ZdS)"�)�absolute_importNzY('[^']*'|"[^"]*"|::|//?|\.\.|\(\)|[/.*:\[\]\(\)@=])|((?:\{[^}]+\})?[^/\[\]\(\)@=\s]+)|\s+c	cs�|r|jd�p|jd�nd}d}x�tj|�D]�}|\}}|r�|ddkr�d|kr�|jdd�\}}y"|sjt�|d|||ffVWq�tk
r�td|��Yq�Xn$|r�|r�|d||ffVn|Vd}q,|V|d	k}q,WdS)
N�Fr�{�:�z{%s}%sz!prefix %r not found in prefix map�@)�get�xpath_tokenizer_re�findall�split�KeyError�SyntaxError)	�pattern�
namespaces�default_namespaceZparsing_attribute�tokenZttype�tag�prefix�uri�r�1/tmp/pip-build-_veujq9v/lxml/lxml/_elementpath.py�xpath_tokenizerJs&
rcs|d��fdd�}|S)Nrc3s,x&|D]}x|j��D]
}|VqWqWdS)N)�iterchildren)�result�elem�e)rrr�selectes
zprepare_child.<locals>.selectr)�nextrrr)rr�
prepare_childcsrcCsdd�}|S)Ncss,x&|D]}x|jd�D]
}|VqWqWdS)N�*)r)rrrrrrrls
zprepare_star.<locals>.selectr)rrrrrr�prepare_starksr cCsdd�}|S)NcSs|S)Nr)rrrrrsszprepare_self.<locals>.selectr)rrrrrr�prepare_selfrsr!csB|�}|ddkrd�n|ds*|d�ntd���fdd�}|S)Nrrrzinvalid descendantc3s,x&|D]}x|j��D]
}|VqWqWdS)N)Ziterdescendants)rrr)rrrrs
z"prepare_descendant.<locals>.select)r
)rrrr)rr�prepare_descendantws
r"cCsdd�}|S)Ncss(x"|D]}|j�}|dk	r|VqWdS)N)�	getparent)rr�parentrrrr�s
zprepare_parent.<locals>.selectr)rrrrrr�prepare_parent�sr%cs*d}g}xp|�}|ddkrP|dkr(q
|drX|ddd�dkrXd|ddd�f}||dpdd7}|j|d�q
W|dkr�|d��fd	d
�}|S|dkr�|d�|d���fdd
�}|S|dkr�tjd
|d�r�|d��fdd
�}|S|dk�s|dk�rTtjd
|d��rT|d�|d ���rD��fdd
�}n�fdd
�}|S|dk�sr|dk�sr|dk�r|dk�r�t|d�d��dk�r�d!k�r�td��ntd��nZ|ddk�r�td��|dk�r
yt|d�d�Wntk
�rtd��YnXnd"��fdd
�}|Std��dS)#Nrr�]rz'"�'�-z@-c3s&x |D]}|j��dk	r|VqWdS)N)r)rr)�keyrrr�s
z!prepare_predicate.<locals>.selectz@-='c3s&x |D]}|j���kr|VqWdS)N)r)rr)r)�valuerrr�s
z-?\d+$c3s.x(|D] }x|j��D]}|VPqWqWdS)N)r)rr�_)rrrr�s
z.='z-='c3s@x:|D]2}x,|j��D]}dj|j���kr|VPqWqWdS)Nr)r�join�itertext)rrr)rr*rrr�s

c3s*x$|D]}dj|j���kr|VqWdS)Nr)r,r-)rr)r*rrr�s
z-()z-()-z3indices in path predicates are 1-based, not 0-basedzpath index >= 1 expected�lastzunsupported function�zunsupported expressionc3s`xZ|D]R}|j�}|dkrqy&t|j|j��}|�|kr@|VWqtk
rVYqXqWdS)N)r#�listrr�
IndexError)rrr$�elems)�indexrrr�s

zinvalid predicate)rr���r4r4r4r4)�append�re�match�intr
�
ValueError)rr�	signature�	predicaterr)r3r)rr*r�prepare_predicate�sf(




r<)rr�.z..z//�[c+Cs�|dd�dkr|d7}|f}|r�d|kr�d|krZ|d|dkrZtd|d|df��||dfttdd�|j�D���7}n|tt|j���7}yt|Stk
r�YnXtt�d	kr�tj�|dd�dkr�td
��t	t
||��}y
|j}Wntk
�r|j
}YnXy
|�}Wntk
�r@td��YnXg}xzy|jt|d||��Wntk
�r�td
��YnXy|�}|ddk�r�|�}Wntk
�r�PYnX�qHW|t|<|S)zcompile selector patternrN�/rrz2Ambiguous default namespace provided: %r versus %rcss|]}|ddk	r|VqdS)rNr)�.0�itemrrr�	<genexpr>
sz'_build_path_iterator.<locals>.<genexpr>�dz#cannot use absolute path on elementzempty path expressionrzinvalid pathr4)r9�tuple�sorted�items�_cacher�len�clearr
�iterrr�AttributeError�__next__�
StopIterationr5�ops)�pathr�	cache_key�stream�_nextr�selectorrrr�_build_path_iterator�sT


rTcCs.t||�}t|f�}x|D]}||�}qW|S)N)rTrJ)rrOrrSrrrrr�iterfind7s



rUcCs.t|||�}yt|�Stk
r(dSXdS)N)rUrrM)rrOr�itrrr�findBs
rWcCstt|||��S)N)r0rU)rrOrrrrr
Msr
cCs&t|||�}|dkr|S|jp dSdS)Nr)rW�text)rrO�defaultr�elrrr�findtextTsr[)N)N)N)N)NN)�
__future__rr6�compiler	rrr r!r"r%r<rNrGrTrUrWr
r[rrrr�<module>:s,
c9