<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>

òÕYfÄ&  ã               @   s  d  d l  Z  e  j d ƒ Z d d d „ Z d d „  Z d d „  Z d	 d
 „  Z d d „  Z d d „  Z d d „  Z	 d d „  Z
 d e d e d e d e	 d e d e
 i Z i  Z Gd d „  d ƒ Z d d d „ Z d d d „ Z d d d  „ Z d d d! d" „ Z d S)#é    NzY('[^']*'|"[^"]*"|::|//?|\.\.|\(\)|[/.*:\[\]\(\)@=])|((?:\{[^}]+\})?[^/\[\]\(\)@=\s]+)|\s+c             c   s¼   xµ t  j |  ƒ D]¤ } | d } | r¯ | d d k r¯ d | k r¯ yE | j d d ƒ \ } } | si t ‚ | d d | | | f f VWq´ t k
 r« t d | ƒ ‚ Yq´ Xq | Vq Wd  S)Né   r   ú{ú:z{%s}%sz!prefix %r not found in prefix map)Úxpath_tokenizer_reÚfindallÚsplitÚKeyErrorÚSyntaxError)ÚpatternÚ
namespacesÚtokenÚtagÚprefixZuri© r   ú:/opt/alt/python35/lib64/python3.5/xml/etree/ElementPath.pyÚxpath_tokenizerI   s    
"!r   c             C   s[   |  j  } | d  k rW i  |  _  } x2 |  j j ƒ  D]! } x | D] } | | | <q? Wq2 W| S)N)Ú
parent_mapÚrootÚiter)Úcontextr   ÚpÚer   r   r   Úget_parent_mapW   s    	r   c                s    | d ‰  ‡  f d d †  } | S)Nr   c             3   s:   x3 | D]+ } x" | D] } | j  ˆ  k r | Vq Wq Wd  S)N)r   )r   ÚresultÚelemr   )r   r   r   Úselectb   s    zprepare_child.<locals>.selectr   )Únextr   r   r   )r   r   Úprepare_child`   s    
r   c             C   s   d d „  } | S)Nc             s   s   x | D] } | Ed  Hq Wd  S)Nr   )r   r   r   r   r   r   r   j   s    zprepare_star.<locals>.selectr   )r   r   r   r   r   r   Úprepare_stari   s    r   c             C   s   d d „  } | S)Nc             s   s   | Ed  Hd  S)Nr   )r   r   r   r   r   r   p   s    zprepare_self.<locals>.selectr   )r   r   r   r   r   r   Úprepare_selfo   s    r   c                sx   y |  ƒ  } Wn t  k
 r% d  SYn X| d d k r? d ‰  n# | d sV | d ‰  n t d ƒ ‚ ‡  f d d †  } | S)Nr   Ú*r   zinvalid descendantc             3   s@   x9 | D]1 } x( | j  ˆ  ƒ D] } | | k	 r | Vq Wq Wd  S)N)r   )r   r   r   r   )r   r   r   r      s    z"prepare_descendant.<locals>.select)ÚStopIterationr	   )r   r   r   r   )r   r   Úprepare_descendantt   s    		
r"   c             C   s   d d „  } | S)Nc             s   sX   t  |  ƒ } i  } x? | D]7 } | | k r | | } | | k r d  | | <| Vq Wd  S)N)r   )r   r   r   Z
result_mapr   Úparentr   r   r   r   ‡   s    

zprepare_parent.<locals>.selectr   )r   r   r   r   r   r   Úprepare_parent†   s    
r$   c                s¾  g  } g  } x¡ y |  ƒ  } Wn t  k
 r4 d  SYn X| d d k rF P| d r„ | d d  d … d k r„ d | d d d … f } | j | d p— d ƒ | j | d ƒ q Wd j | ƒ } | d k rë | d ‰ ‡ f d	 d
 †  } | S| d k r$| d ‰ | d ‰ ‡ ‡ f d d
 †  } | S| d k rgt j d | d ƒ rg| d ‰ ‡ f d d
 †  } | S| d k r·t j d | d ƒ r·| d ‰ | d ‰ ‡ ‡ f d d
 †  } | S| d k sÛ| d k sÛ| d k r®| d k rt | d ƒ d ‰  ˆ  d k  r˜t d ƒ ‚ n‚ | d d k r2t d ƒ ‚ | d k r’y t | d ƒ d ‰  Wn t k
 rvt d ƒ ‚ Yn Xˆ  d k r˜t d ƒ ‚ n d ‰  ‡  f d d
 †  } | St d ƒ ‚ d  S) Nr   ú]r   z'"ú'ú-Ú z@-c             3   s/   x( | D]  } | j  ˆ  ƒ d  k	 r | Vq Wd  S)N)Úget)r   r   r   )Úkeyr   r   r   ©   s    z!prepare_predicate.<locals>.selectz@-='c             3   s/   x( | D]  } | j  ˆ  ƒ ˆ k r | Vq Wd  S)N)r)   )r   r   r   )r*   Úvaluer   r   r   ²   s    z\-?\d+$c             3   s/   x( | D]  } | j  ˆ  ƒ d  k	 r | Vq Wd  S)N)Úfind)r   r   r   )r   r   r   r   º   s    z-='c             3   sP   xI | D]A } x8 | j  ˆ  ƒ D]' } d j | j ƒ  ƒ ˆ k r | VPq Wq Wd  S)Nr(   )r   ÚjoinZitertext)r   r   r   r   )r   r+   r   r   r   Ã   s
    z-()z-()-zXPath position >= 1 expectedZlastzunsupported functioné   zunsupported expressionz)XPath offset from last() must be negativec             3   sw   t  |  ƒ } xd | D]\ } y; | | } t | j | j ƒ ƒ } | ˆ  | k rS | VWq t t f k
 rn Yq Xq Wd  S)N)r   Úlistr   r   Ú
IndexErrorr   )r   r   r   r   r#   Zelems)Úindexr   r   r   Ý   s    
	zinvalid predicateéÿÿÿÿr2   r2   éþÿÿÿr2   )r!   Úappendr-   ÚreÚmatchÚintr	   Ú
ValueError)r   r   Z	signatureZ	predicater   r   )r1   r*   r   r+   r   Úprepare_predicate“   sd    	$


#
#

$r9   r(   r    Ú.z..z//ú[c               @   s"   e  Z d  Z d Z d d „  Z d S)Ú_SelectorContextNc             C   s   | |  _  d  S)N)r   )Úselfr   r   r   r   Ú__init__ø   s    z_SelectorContext.__init__)Ú__name__Ú
__module__Ú__qualname__r   r>   r   r   r   r   r<   ö   s   r<   c       
   !   C   s¾  | | d  k r d  n t  t | j ƒ  ƒ ƒ f } | d d  … d k rP | d } y t | } Wn$t k
 r„t t ƒ d k rŠ t j ƒ  | d  d … d k r¬ t d ƒ ‚ t t	 | | ƒ ƒ j
 } y | ƒ  } Wn t k
 ré d  SYn Xg  } xƒ y" | j t | d | | ƒ ƒ Wn t k
 r5t d ƒ ‚ Yn Xy& | ƒ  } | d d k r[| ƒ  } Wqó t k
 rqPYqó Xqó W| t | <Yn X|  g } t |  ƒ } x | D] }	 |	 | | ƒ } q¡W| S)	Nr   ú/r    éd   z#cannot use absolute path on elementr   zinvalid pathr2   )ÚtupleÚsortedÚitemsÚ_cacher   ÚlenÚclearr	   r   r   Ú__next__r!   r4   Úopsr<   )
r   Úpathr   Z	cache_keyZselectorr   r   r   r   r   r   r   r   Úiterfind   sD    

	"	
	rM   c             C   s   t  t |  | | ƒ d  ƒ S)N)r   rM   )r   rL   r   r   r   r   r,   )  s    r,   c             C   s   t  t |  | | ƒ ƒ S)N)r/   rM   )r   rL   r   r   r   r   r   /  s    r   c             C   sF   y) t  t |  | | ƒ ƒ }  |  j p' d SWn t k
 rA | SYn Xd  S)Nr(   )r   rM   Útextr!   )r   rL   Údefaultr   r   r   r   Úfindtext5  s
    rP   )r5   Úcompiler   r   r   r   r   r   r"   r$   r9   rK   rG   r<   rM   r,   r   rP   r   r   r   r   Ú<module>;   s,   			Y
)