;i&,ddlZejdZddZdZdZdZdZd Zd Z eeeeee d Z iZ dd Z dd Z ddZddZddZdS)NzY('[^']*'|"[^"]*"|::|//?|\.\.|\(\)|[/.*:\[\]\(\)@=])|((?:\{[^}]+\})?[^/\[\]\(\)@=\s]+)|\s+Tc#K|r*|dp|dnd}d}t|D]}|\}}|r|ddkrd|vrX|rV|dd\}} |st|d||d| fVnN#t$rt d|zwxYw|r|Vn|r|s |d|d|fVn|Vd}|V|d k}dS) NFr{:}z!prefix %r not found in prefix map@)getxpath_tokenizer_refindallsplitKeyError SyntaxError isdecimal) pattern namespaces with_prefixesdefault_namespaceparsing_attributetokenttypetagprefixuris EC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\lxml/_elementpath.pyxpath_tokenizerrIsHR\--C1C1CX\#++G44-- s  -3q6S==czzmz!iiQ// T%'&%Z-?-?-?!EEEEEETTT%&IF&RSSST  " +< e):):):CC@@@@@@ %  KKK %  )--s BB;c"|dfd}|S)Nrc3LK|D]}|Ed{VdSN iterchildrenresultelemrs rselectzprepare_child..selectfsI . .D((-- - - - - - - - - . .nextrr%rs @r prepare_childr*ds, (C..... Mr&c d}|S)Nc3JK|D]}|dEd{VdS)N*r )r#r$s rr%zprepare_star..selectlsH . .D((-- - - - - - - - - . .r&r'r)rr%s r prepare_starr/ks... Mr&c d}|S)Nc|Srr')r#s rr%zprepare_self..selectrs r&r'r.s r prepare_selfr2qs Mr&c|}|ddkrdn |ds |dntdfd}|S)Nrr-rzinvalid descendantc3LK|D]}|Ed{VdSr)iterdescendantsr"s rr%z"prepare_descendant..select~sI 1 1D++C00 0 0 0 0 0 0 0 0 1 1r&)rr(s @rprepare_descendantr6vsh DFFE Qx3 1X0Ah.///11111 Mr&c d}|S)Nc3HK|D]}|}||VdSr) getparent)r#r$parents rr%zprepare_parent..selects>  D^^%%F!   r&r'r.s rprepare_parentr;s Mr&cd}g} |}|ddkrn\|dkr|dr$|ddddvrd|dddf}||dpd z }||ds|d kr|dfd }|S|d kr|d|dfd }|S|d kr*tjd|ds|dfd}|S|dks!|dkr;tjd|ds |d|drfd}nfd}|S|d ks |dks|dkr|d krCt|ddz dkr$dkrt dt dnZ|ddkrt d|dkr7 t|ddz n#t $rt dwxYwdfd}|St d)Nrrr])rrz'"'-z@-c3HK|D]}||VdSrr )r#r$keys rr%z!prepare_predicate..selects:  88C==,JJJ  r&z@-='c3PK|D]}|kr|V dSrrB)r#r$rCvalues rr%z!prepare_predicate..selects?  88C==E))JJJ  r&z-?\d+$c3NK|D]}|D]}|VdSrr )r#r$_rs rr%z!prepare_predicate..selectsJ  **3//AJJJ  r&z.='z-='c3K|D]K}|D]3}d|kr|Vn4LdSNr)r!joinitertext)r#r$errEs rr%z!prepare_predicate..selectsp"""D!..s33""771::<<00E99"&JJJ!E:""r&c3tK|D]1}d|kr|V2dSrI)rJrK)r#r$rEs rr%z!prepare_predicate..selectsI"##Dwwt}}//588" ##r&z-()z-()-z3indices in path predicates are 1-based, not 0-basedzpath index >= 1 expectedlastzunsupported functionzunsupported expressionc3K|D]_}|}| t||j}||ur|VP#t$rY\wxYwdSr)r9listr!r IndexError)r#r$r:elemsindexs rr%z!prepare_predicate..selects  ))> !4!4TX!>!>??EU|t++" !D  s5A A#"A#zinvalid predicate)appendrematchintr ValueError) r)r signature predicater%rTrCrrEs @@@@rprepare_predicater\sII # 8s??  H    8 (a! --q!B$'EU1X_$ q""" #Dl      Fl"        CIaL A Al       Ei500)YWX\9Z9Z0l"   # " " " " " " " # # # # # C9--f1D1D    ! %%)EqyyB;;%MOOO&&@AAA |v%%!"8999F""@ ! --1EE!@@@%&>???@      ) * **s $F==G)rr-.z..z//[c ^|dddkr|dz }|f}|rd|vr}d|vr3|d|dkr!td|dd|d||dfttd|Dzz }n1|tt|z } t|S#t $rYnwxYwt td krt|dd dkrtd tt||| } |j }n#t$r |j }YnwxYw |}n#t$rtd wxYwg} |t!|d||n#t$rtdwxYw |}|ddkr |}n#t$rYnwxYw|t|<|S)zcompile selector patternr?N/r-rz&Ambiguous default namespace provided: z versus c3*K|]}|d |VdS)rNr').0items r z'_build_path_iterator.. s8tt|||Sr)rQrz)r$rrrrs rr r Ks tZ00 1 11r&cBt||||}||S|jpdS)Nrfr)r}text)r$rrdefaultrrels rfindtextrRs. dD*M B B BB zw}"r&)NT)T)NNT)rVcompiler rr*r/r2r6r;r\rqrjrwrzr}r rr'r&rrs2v RZ   ----6    `+`+`+F        3333r2222r&