
    Pi                    FX   U d Z ddlmZ ddlZddlZddlmZmZmZ ddlm	Z
 ddlmZmZmZ ddlmZ ddlmZmZmZmZmZm	Z	mZmZmZmZmZmZ ddlZdd	lmZ d
dlm Z! d
dl"m#Z#m$Z$m%Z%m&Z& dZ'ddZ(ddZ)ddZ*ddZ+ddZ,ddZ- e ed           edd.                    d  e/d           D                       z            z    ed!          z             Z0e01                    d"            ej2        d#k    rd$Z3nd%Z3d&e3z   Z4d'e4z   Z5 ed(e3d)e5d*e5d+ej6        ,          Z7 e	 e%d-e7                     ed.          8                                z   Z9d/Z:d0Z;d1e:d2e;d3Z< ed4 e=e4e5e<5          z  ej>        ej?        z  ,          Z@e9 e%d6e@8                                          z   ZA ed7e4d8e5d9e5d+ej6        ,          ZBeB1                    d:             ed(e4d;e4d<ej6        ,          ZC e ed=          eCz             ZD e ed>          eCz             ZE e ed?           ed@          z             ZF edA          ZGeG1                    dB            dCZH edD          ZIeI1                    dE             edFdGeHiz            ZJeJ1                    dH             edI          eGK                                8                                z   ZLeL1                    dJ             edI          eIK                                8                                z   ZM edI          eJK                                8                                z   ZN edK          eGK                                8                                z   ZOeO1                    dL             edK          eIK                                8                                z   ZPeP1                    dM             edK          eJK                                8                                z   ZQeQ1                    dN             edO          ZReR1                    dP             edQ          ZSeS1                    dR             edSej6        ,          ZTeT1                    dT             edUej6        ,          ZUeU1                    dV             ed1          d3z   ZVeV1                    dW             ed(          dXz   ZWeW1                    dY             edZ          ZXeX1                    d[             e#d\ ed]           e%d^e0          z             ZY e#d_ ed`          e9z    e%d^e0          z             ZZ e eeYeZz                      Z[eDeEz  Z\e\1                    da             e#dbeAe9z            Z]e0e]z  Z^eReSz  eTz  eUz  Z_ e#d e%dce_           e	 e%ddeF8                                           ede          8                                 e%dfe^          8                                z   z            z             Z`eNeMz  eLz  ZaeQePz  eOz  ZbeJeIz  eGz  Zceceaz  ebz  Zd edg          1                    dh            edi          1                    dj           z  ZeeBeWz  Zfe^e`z  edz  eez  efz  eVz  Zge\egz  Zhe\e^z  Zi edk           e%dle^          z   Zjej e%dl edm                    z   e%dl edn                    z   e%dl edo                    z  Zk e&dp edm                     e	 edk                     e&dpe^          z   z  Zle^e`z  edz  eez   edq          z  ZmeieXz  Zne\ZoeGZp e            Zq e            Zreheqz  Zseherz  Zt ed=          drz  dIz  Zue^eXz   e#dsdte^eXz  z             z  Zv e            Zw e#du e&dvev          d1 e	 e&dvev           ed2 e&dvev          z             z             z   d3z   z            Zxe^eXz   edw          exz   z   ed1          ewz    ed3          z   z   e#dx edy          d1z    e%dvew          z   d3z             z  Zy e#dz e%dvey           e	 e%d{eu8                                                    z             Zzez edt           e#d| e%dvez                    z   z  Z{ e#d} e&dve{           ed~ e&dve{          z             z             Z| e#d e&dve|           ed2 e&dve|          z             z             Z}ewe}z  ZwewZ~etZe edez             z   Z e            Z ed1           ees          z    ed3          z   Ze1                    e-            ed1           eet          z    ed3          z   Ze1                    e-           esZe edez             z   Ze~eoz  ez    ed e	e~eoz  ez             z             z   Z e	e          Zenez    ed e	enez             z             z   Z e	e          Z e ed(          ez    edX          z             Ze1                    e,            e ed(          ez    edX          z             Ze1                    e,           eqeez  z  Zqereez  z  Zrehez   eqez   z  Ze1                    e+            e&de           e ed           e	 e&de                    z             z   Z e#d edk           e%dei          z   dz    e	e          z   dz             Z e#d e	e           e e&de           e	 ed                    z    e	e          z             z             Zd e%de          z   dz   Zd e%de          z   dz   Zehez   erez   z  Ze1                    e+            e            Ze e&de           e	 ed           e	e          z             z   z  Z e#d ed           e%dpe          z             Z e#d e&dpe           e ed           e&dpe          z             z             Z e            ZeV e ed1           ee          z    ed3          z             z  Z e#d ed          d1z    e%de          z   dz    e%de          z    e	d e%de          z             z   d3z             Ze                    e!j                    e#d ed          d1z    e%de          z   dz    e%de          z    e	d e%de          z             z   d3z                                 e!j                  Z e#d ed          d1z    e%de          z   dz    e%de          z   dz    e%de          z    e	d e%de          z             z   d3z                                 e!j                  Z e#d ed           e%dpe          z                                 e!j                  Z e#d ed           ed          z    e%dpe          z                                 e!j                  Z e	 edy                    Zd1 e%de          z    e%de          z   d3z   Z e#d ed          d1z    e%de          z    e%ddrez            z   d3z              e#d ed          ez             z   e#d ed          ez             z   e#d ed          ez             z   e#d ed          ez             z   e#d ed          ez             z   e#d ed          d1z    e%de          z    e%de          z    e	d ed          z   dz    e%de_          z             z   d3z             z  Ze e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de\          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed¦          d1z    e%de          z   d3z                                 e!j                  z   e#d edĦ          d1 e%de          z   d3z   eVz  z                                 e!j                  z   e#d edƦ          eVz                                 e!j                  z   e#d edȦ          d1z    e%de          z   d3z                                 e!j                  z   e#d edʦ          d1z    e%de          z   d3z                                 e!j                  z   e#d ed̦          d1z    e%de          z   d3z                                 e!j                  z   e#d edΦ          d1z    e%de          z   d3z                                 e!j                  z   e#d edЦ           e%de          z                                 e!j                  z  ez   e#d edҦ          d1z    e%de          z   d3z                                 e!j                  z  ez   e#d edԦ          d1z    e%de          z   d3z                                 e!j                  z   e#d ed֦          d1z    e%de          z   d3z                                 e!j                  z   e#d edئ          d1z    e%de          z   d3z                                 e!j                  z   e#d edڦ          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d edܦ          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d edަ          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          eVz                                 e!j                  z   e#d ed          eVz                                 e!j                  z   e#d ed          eVz                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed           d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed           e%de          z                                 e!j                  z   e#d ed          d1z    e%de          z   dz    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed	          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d
 ed          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   dz    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z   e#d ed          d1z    e%de          z   d3z                                 e!j                  z  ez  ez  ez  ZeVd1 e%de          z    e e&de                    z   d3z   z  Z e#d e%d^e^          ez                                 e!j                  e^z  Z e#d e%d^e^          ez                                 e!j                  Z ed1          ez    ed3          z   Zeez  ez  e`z  edz  eez  e\z  Z e#ddw e%deڦ          z                                 e!j                   e#ddI e%deڦ          z                                 e!j                  z   e#ddK e%deڦ          z                                 e!j                  z  ez  Z e#d e%deަ           e e&ddr           e&deަ          z    e&dd~           e&deަ          z   z            z                                 e!j                  Z e#d  e%deߦ           e e&ddI           e&deߦ          z    e&ddK           e&deߦ          z   z            z                                 e!j                  ZeZ e#d! e%de           e	 e%dd           e%de          z    e%dd"           e%de          z   z   e%dd           e%de          z   z   e%dd!           e%de          z   z   e%dd#           e%de          z   z   e%dd$           e%de          z   z   e%d ed%                     e%de          z   z   e%d e ed           ed%          z   dd&'                     e%de          z   z            z                                 e!j                  ZeZ e#d( e%de           ed) e&de          z             z                                 e!j                  Z e#d* e%de           ed+ e&de          z             z                                 e!j                  Zeez  Zeez  ez  Z e#d, ed-           e%de          z             Ze^ZeZ edn           e%d.e          z   Z e#d/ ed0           e%d1e          ez  z             Zeez   e#d2d1 e%de          z    e	 ed3           e%d4e\          z             z   d3z             z  e\z  Z e#d5 ed6           ed7          z    e e&d8e                    z             Z e	 e%d9 ed:                              Z e#d; ed<          ez    e%d^e^          z    e	 ed=          ejz             z             Z e#d> ed?          ez   ekz             Z e#d@ edA          ez   ekz             Z e#dB edC          ez   ejz             Z e#dD edE          ez   elz    edF          z   elz             Z e#dG edH          ez   elz    edF          z   elz             Z e#dI edJ          ez   elz    edF          z   elz             Z e#dK edL           edM          z   ez             Z e#dN edO           edM          z   ez             Z e#dP edO           edQ          z   ez             Z e#dR edO          ez             Z e#dS edL          ez             Z e#dT edU           e%d1e^           edn           e%d.e^          z   z  z             Z e#dV e	 edW           e%dXe^          z              e%dYe           e	 e%dZe                    z    e%dZe          z  z    e e&d[e                    z    edQ          z    e%d\e          z             Zeez  ez  ez  ez  ez  ez  ez  ez  ez  ez  Z e&d4e\          dz    e e&d]em                    z   dz   ZeVd1 e e&d4e\                    z   d3z   z  dz    e e&d] e ed1           eem          z    ed3          z   eVz                                z   dz   Zeez  Z  e	 e%d^ e#d_ ed`          e z                                 Z e            Ze e&dae           e	 ed           e	e          z             z   z  Z ed           e	e          z    ed          z   Z e#db edc           e%dpe          z             Z e#dd edk           e%dei          z    e%dpe          z             Z e#de edf          ez    e%dei          z    e%dpe          z             Z e#dg edh          d1z    e%de          z    ed3          z    e%d4e\          z   d3z             Z e#di ed`          e z             Zeez  ez  ez  ez  ez  ez  ez  Z	 e#dj e	 e&dv e#dke                               e e&dve	           e	d          z    e	 e&dv e#dke                              z             z             Z
eZ e#dl edm           e e&d8e                    z             Z e#dn e%do edp           edq          z             e%de٦          z    e%dee\z            z            Z e#dr eds           ed7          z    e e&d8e                    z             Z edt           e%dueG          z   Z edv           e%dweG          z   Z e#dxe e	e          z   e e	e          z   z            Z e	 e%dye                     e	 e%dze                    z    e	 e%d{e                    z    e	 e%d|e                    z   Z ed}           e	 e%d~ edy           ed          z                      z    e e&d e#d e%d4e\           ed1           e%de          z    ed3          z    e%de\          z   d3z   z                                drz  z   Z e	 edQ                     e%d\e          z   Z e#deez   ez   ez             Ze ed          ee
z  z    ed          z   z  Z e#de e e&de                    z   ez   ez   ez             Z e#d ed          e e e&de                    z   ez   ez   ez    e e&de                     edQ          z   dz    e	 e%d\ e#d e&dv e#dke                                                  z   dz   ez   ez   z  z             Z e#d ed           e e&de                    z   ez   ez   ez             Z e#d ed           e e&d4ei                    drz  z    e e&de                    z    e	e          z   ez   ez             Z e            Ze e&de[           e	 e&de           e	dez             z             z   z  Ze[eez  ez  ez  z   Z e#de          ZeZe                    dez              e                    dez               ej        dej         ,          Z!de"d<   ddZ#ddZ$ddZ%dS (  z'
SPARQL 1.1 Parser

based on pyparsing
    )annotationsN)AnyBinaryIOList)Optional)TextIOTupleUnion)CaselessKeyword)CombineForwardGroupLiteral	OneOrMorer   ParseResultsRegexSuppress
ZeroOrMoredelimitedList
restOfLine)decodeUnicodeEscape   )	operators)Comp	CompValueParam	ParamListFliteralrdflib.Literalreturnc                :    t          j        |  | j                  S )Ndatatype)rdflibr   r#   )r   s    p/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/rdflib/plugins/sparql/parser.pynegr&   -   s    >7(W-=>>>>    termsTuple[Any, OptionalType[str]]c                F    t          j        | d         | d                   S )Nr   r   )langr$   r   r(   s    r%   setLanguager.   1   s    >%(q2222r'   c                F    t          j        | d         | d                   S )Nr   r   r"   r,   r-   s    r%   setDataTyper0   5   s    >%(U1X6666r'   r   	List[Any]c                   d\  }}	 g }t           rt          d|            t          |           }t          |           D ]\  }}|dk    r|                    ||g           ne|dk    rL|dz   t          |           k    s| |dz            dk    s| |dz            dk    r`|                    |           nt          |t                    rt          |          dz  dk    r|                    |d	                    t          |          dk    r||z  }|dz   |k     r2| |dz            d
vr%|d	         d}}|                    |d	                    nyt          |t                    r||	                                z  }nL|dk    rF|                    |           t          |          dz  dk    r|}nt          |          dz  dk    r|}t           rt          t          |          |           t           r(d	dl
}t          |                    |d                     |S #  t           rd	dl}|                                  xY w)z?
    Expand ; and , syntax for repeat predicates, subjects
    )NNTerms,;r   .      r   )r6   r4   r5   N)indent)DEBUGprintlen	enumerateextendappend
isinstancelistr   asListjsondumps	traceback	print_exc)	r(   last_subjectlast_predicateresl_itrC   rE   s	            r%   expandTriplesrM   9   sp   
 $. L.6 	"'5!!!ZZe$$  	#  	#DAqCxx

L.9::::cq5CJJ&&%A,#*=*=q1uQTATAT

<((((At$$ ' HHqLQ&&JJqt$$$q66A::1HCq52::%A, 7 # #
 45Q4.LJJqt$$$A|,, 'qxxzz!c

1HHqLQ&&#$LL#hhlq((%&N #c#hh""" 	-KKK$**S*++,,,
 	"!!!s   HH "Ic                   	 t           rct          d|            t          d| d                    t          dt          j                    g|                                 d         z              t          t          j                    g|                                 d         z             gS # t          $ r}t           rt          d|            d}~ww xY w)z5
    expand [ ?p ?o ] syntax for implicit bnodes
    zBnode terms1r   2z>>>>>>>>N)r:   r;   r$   BNoderB   rM   	Exception)r(   es     r%   expandBNodeTriplesrT   x   s    
	 	=-'''#uQx   #'%,,..*;;<<<v|~~.1BBCCDD    	!*a   s   B&B) )
C3CCList[List[Any]]c                   t           rt          d|            g }g }| D ]}t          |t                    r||z  }|d         }t	          j                    }|r0||d         t          j        j        ||t          j        j        |gz  }i||t          j        j        |gz  }||t          j        j        t          j        j	        gz  }||z  }t           rt          d|           |gS )z3
    expand ( 1 2 3 ) notation for collections
    zCollection: r   CollectionOut)
r:   r;   r@   rA   r$   rQ   RDFrestfirstnil)r(   rI   otherxbs        r%   expandCollectionr`      s      %ne$$$CE 	, 	,a 	QJE!ALNN 	,CGVZ_aFJ4DaHHCCAvz'++CCAvz
//C5LC $os###5Lr'   <z[^<>"{}|^`\\%s]* c              #      K   | ]	}d |z  V  
dS )z\x%02XN ).0rK   s     r%   	<genexpr>rf      s&      )K)KA)a-)K)K)K)K)K)Kr'   !   >c                6    t          j        | d                   S Nr   )r$   URIRefr^   s    r%   <lambda>rm      s    ad 3 3 r'   i  uJ   A-Za-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�uS   A-Za-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿_u   \-0-9·̀-ͯ‿-⁀[z](?:[z\.]*[z])?)flagsprefix:z\\[_~\.\-!$&"'()*+,;=/?#@%]z%[0-9a-fA-F]{2}(|)z([%(PN_CHARS_U)s:0-9]|%(PLX)s)
                     (([%(PN_CHARS)s\.:]|%(PLX)s)*
                      ([%(PN_CHARS)s:]|%(PLX)s) )?)
PN_CHARS_UPN_CHARSPLX	localnamez_:[0-9z](?:[\.z]*[c                F    t          j        | d         dd                    S )Nr   r8   r$   rQ   rl   s    r%   rm   rm      s    &,qtABBx*@*@ r'   z0-9][u   0-9·̀-ͯ‿-⁀]*?$@z[a-zA-Z]+(?:-[a-zA-Z0-9]+)*z[0-9]+c                X    t          j        | d         t           j        j                  S Nr   r"   r$   r   XSDintegerrl   s    r%   rm   rm         !vz?Q!R!R!R r'   z[eE][+-]?[0-9]+z[0-9]*\.[0-9]+c                X    t          j        | d         t           j        j                  S r   )r$   r   r   decimalrl   s    r%   rm   rm     r   r'   z/[0-9]+\.[0-9]*%(e)s|\.([0-9])+%(e)s|[0-9]+%(e)srS   c                X    t          j        | d         t           j        j                  S r   )r$   r   r   doublerl   s    r%   rm   rm     s    qtfj>O P P P r'   +c                ^    t          j        d| d         z   t           j        j                  S )Nr   r   r"   r   rl   s    r%   rm   rm   $  s"    fnS1Q4Z&*2DEEE r'   -c                ,    t          | d                   S rj   r&   rl   s    r%   rm   rm   /      #ad)) r'   c                ,    t          | d                   S rj   r   rl   s    r%   rm   rm   3  r   r'   c                ,    t          | d                   S rj   r   rl   s    r%   rm   rm   7  s    QqT r'   z)'''((?:'|'')?(?:[^'\\]|\\['ntbrf\\]))*'''c                `    t          j        t          | d         dd                             S Nr   r7   rW   r$   r   r   rl   s    r%   rm   rm   B  %    fn01ad<<== r'   z+"""(?:(?:"|"")?(?:[^"\\]|\\["ntbrf\\]))*"""c                `    t          j        t          | d         dd                             S r   r   rl   s    r%   rm   rm   J  r   r'   z#'(?:[^'\n\r\\]|\\['ntbrf\\])*'(?!')c                `    t          j        t          | d         dd                             S Nr   r   r   rl   s    r%   rm   rm   S  r   r'   z#"(?:[^"\n\r\\]|\\["ntbrf\\])*"(?!")c                `    t          j        t          | d         dd                             S r   r   rl   s    r%   rm   rm   \  r   r'   c                $    t           j        j        S N)r$   rY   r\   rl   s    r%   rm   rm   a  s
    VZ^ r'   ]c                (    t          j                    S r   r{   rl   s    r%   rm   rm   h  s    flnn r'   ac                $    t           j        j        S r   )r$   rY   typerl   s    r%   rm   rm   l  s
    6:? r'   BaseBASEiri
PrefixDeclPREFIXc                L    t           j                            | d                   S rj   )r$   termVariablerl   s    r%   rm   rm   |  s    V[11!A$77 r'   pnamestringr+   z^^r#   truec                 *    t          j        d          S )NTr,   rd   r'   r%   rm   rm     s    t8L8L r'   falsec                 *    t          j        d          S )NFr,   rd   r'   r%   rm   rm     s    .. r'   GRAPHgraphiriDEFAULTNAMEDALLgraphUNDEF*InversePath^PathNegatedPropertySetpart!DistinctPathDISTINCTPathEltmodPathEltOrInversePathSequence/PathAlternativer4   r5   triplesr6   QuadsNotTriplesr   {}QuadsquadsNotTriplesquadsMinusGraphPatternMINUSGroupOrUnionGraphPatternUNIONBuiltin_REGEXREGEXtextpatternrp   Builtin_SUBSTRSUBSTRargstartlengthBuiltin_REPLACEREPLACEreplacementBuiltin_EXISTSEXISTSBuiltin_NOTEXISTSNOTdistinctvarsAggregate_CountCOUNTAggregate_SumSUMAggregate_MinMINAggregate_MaxMAXAggregate_AvgAVGAggregate_SampleSAMPLEAggregate_GroupConcatGROUP_CONCAT	SEPARATOR=	separatorBuiltin_STRSTRBuiltin_LANGLANGBuiltin_LANGMATCHESLANGMATCHESarg1arg2Builtin_DATATYPEDATATYPEBuiltin_BOUNDBOUNDBuiltin_IRIIRIBuiltin_URIURIBuiltin_BNODEBNODEBuiltin_RANDRANDBuiltin_ABSABSBuiltin_CEILCEILBuiltin_FLOORFLOORBuiltin_ROUNDROUNDBuiltin_CONCATCONCATBuiltin_STRLENSTRLENBuiltin_UCASEUCASEBuiltin_LCASELCASEBuiltin_ENCODE_FOR_URIENCODE_FOR_URIBuiltin_CONTAINSCONTAINSBuiltin_STRSTARTS	STRSTARTSBuiltin_STRENDSSTRENDSBuiltin_STRBEFORE	STRBEFOREBuiltin_STRAFTERSTRAFTERBuiltin_YEARYEARBuiltin_MONTHMONTHBuiltin_DAYDAYBuiltin_HOURSHOURSBuiltin_MINUTESMINUTESBuiltin_SECONDSSECONDSBuiltin_TIMEZONETIMEZONE
Builtin_TZTZBuiltin_NOWNOWBuiltin_UUIDUUIDBuiltin_STRUUIDSTRUUIDBuiltin_MD5MD5Builtin_SHA1SHA1Builtin_SHA256SHA256Builtin_SHA384SHA384Builtin_SHA512SHA512Builtin_COALESCECOALESCE
Builtin_IFIFarg3Builtin_STRLANGSTRLANGBuiltin_STRDTSTRDTBuiltin_sameTermsameTermBuiltin_isIRIisIRIBuiltin_isURIisURIBuiltin_isBLANKisBLANKBuiltin_isLITERAL	isLITERALBuiltin_isNUMERIC	isNUMERICexprFunctionUnaryNot	UnaryPlus
UnaryMinusMultiplicativeExpressionopr]   AdditiveExpressionRelationalExpressionz!=z<=z>=IN )adjacent
joinStringConditionalAndExpressionz&&ConditionalOrExpressionz||FilterFILTERnamedDatasetClauseFROMdefaultGroupAsASvarGroupClauseGROUPBY	conditionsilentSILENTLoadLOADINTOClearCLEARDropDROPCreateCREATEAddADDTOMoveMOVECopyCOPY
InsertDataINSERTDATA
DeleteDataDELETEDeleteWhereWHEREDeleteClauseInsertClauseUsingClauseUSINGModifyWITH
withClausedeleteinsertusingwherevaluevaluesClauseValuesClauseVALUEStemplateOptionalGraphPatternOPTIONALGraphGraphPatternServiceGraphPatternSERVICEBindBIND
InlineDataGroupGraphPatternSubTriplesBlockHavingClauseHAVINGOrderConditionorderASCDESCOrderClauseORDERLIMITlimitOFFSEToffsetLimitOffsetClausesgroupbyhavingorderbylimitoffsetSELECTmodifierREDUCED
projectionevar	SubSelectSelectQuerydatasetClauseConstructQuery	CONSTRUCTFakeGroupGraphPattenAskQueryASKDescribeQueryDESCRIBEprologuerequestUpdate#z \\u([0-9a-f]{4}(?:[0-9a-f]{4})?)z
re.PatternexpandUnicodeEscapes_reqstrc                @    dd}t                               ||           S )a0  
    The syntax of the SPARQL Query Language is expressed over code points in Unicode [UNICODE]. The encoding is always UTF-8 [RFC3629].
    Unicode code points may also be expressed using an \ uXXXX (U+0 to U+FFFF) or \ UXXXXXXXX syntax (for U+10000 onwards) where X is a hexadecimal digit [0-9A-F]
    mre.Matchr    r  c                    	 t          t          |                     d          d                    S # t          t          f$ r+}t          d|                     d          z             |d }~ww xY w)Nr      zInvalid unicode code point: )chrintgroup
ValueErrorOverflowError)r  rS   s     r%   expandz$expandUnicodeEscapes.<locals>.expand  sr    	Qs1771::r**+++M* 	Q 	Q 	Q;aggajjHIIqP	Qs   /2 A.&A))A.)r  r  r    r  )r  sub)r  r  s     r%   expandUnicodeEscapesr    s2    Q Q Q Q #&&vq111r'   #Union[str, bytes, TextIO, BinaryIO]c                    t          | d          r|                                 } t          | t                    r|                     d          } t          |           } t                              | d          S )Nreadutf-8TparseAll)hasattrr  r@   bytesdecoder  QueryparseStringr  s    r%   
parseQueryr  
  sj    q& FFHH!U HHWQAQ...r'   r   c                    t          | d          r|                                 } t          | t                    r|                     d          } t          |           } t                              | d          d         S )Nr  r  Tr  r   )r  r  r@   r  r  r  
UpdateUnitr  r  s    r%   parseUpdater    so    q& FFHH!U HHWQA!!!d!33A66r'   )r   r   r    r   )r(   r)   r    r   )r(   r   r    r1   )r(   r   r    rU   )r  r  r    r  )r  r  r    r   )r  r  r    r   (&  __doc__
__future__r   resystypingr   r   r   r   OptionalTyper   r	   r
   	pyparsingr   Keywordr   r   r   r   r   r   r   r   r   r   r   r$   rdflib.compatr   rb   r   r]  parserutilsr   r   r   r   r:   r&   r.   r0   rM   rT   r`   joinrangeIRIREFsetParseAction
maxunicodePN_CHARS_BASE_rePN_CHARS_U_rePN_CHARS_reU	PN_PREFIXleaveWhitespacePNAME_NSPN_LOCAL_ESC_re
PERCENT_rePLX_redictXUNICODEPN_LOCALPNAME_LNBLANK_NODE_LABELVARNAMEVAR1VAR2LANGTAGINTEGEREXPONENT_reDECIMALDOUBLEcopyINTEGER_POSITIVEDECIMAL_POSITIVEDOUBLE_POSITIVEINTEGER_NEGATIVEDECIMAL_NEGATIVEDOUBLE_NEGATIVESTRING_LITERAL_LONG1STRING_LITERAL_LONG2STRING_LITERAL1STRING_LITERAL2NILANONABaseDeclr   PrologueVarPrefixedNamer   String
RDFLiteralNumericLiteralPositiveNumericLiteralNegativeNumericLiteralUnsignedNumericLiteralBooleanLiteral	BlankNode	GraphTerm	VarOrTermVarOrIriGraphRefGraphRefAllGraphOrDefaultDataBlockValueVerb
VerbSimpleIntegerTriplesNodeTriplesNodePath	GraphNodeGraphNodePathPathModPathOneInPropertySetPathr   PathPrimaryr   r   r   r   VerbPath
ObjectPathObjectListPathGroupGraphPattern
CollectionCollectionPathObject
ObjectListPropertyListPathNotEmptyPropertyListPathPropertyListNotEmptyPropertyListBlankNodePropertyListBlankNodePropertyListPathTriplesSameSubjectTriplesTemplater   r   QuadPatternQuadDataTriplesSameSubjectPathr  r   r   
ExpressionExpressionListRegexExpression	setEvalFnr   r   SubstringExpressionr   StrReplaceExpressionr   
ExistsFuncNotExistsFunc	_Distinct_AggregateParams	Aggregater   r   r   r   r   r   r  r  r  r  r
  r  r  r  r  r  r  r  r  r  r  r   r"  r$  r&  r(  r*  r,  r.  r0  r2  r4  r6  r8  r:  r<  r>  r@  rB  rD  rG  rI  rK  rM  rQ  rS  rU  BuiltInCallArgListrX  iriOrFunctionFunctionCallBrackettedExpressionPrimaryExpressionrY  rZ  r[  UnaryExpressionr\  r^  NumericExpressionr_  ValueLogicalrd  re  
Constraintrf  SourceSelectorDefaultGraphClauseNamedGraphClauseri  GroupConditionro  _Silentru  rx  rz  r|  r~  r  r  r  r  r  r  r  r  r  Update1InlineDataOneVarInlineDataFull	DataBlockr  ConstructTriplesConstructTemplater  r  r  r  r  GraphPatternNotTriplesr  HavingConditionr  r  r  LimitClauseOffsetClauser  SolutionModifierSelectClauseWhereClauser  r  r  r  r  r  r  r  	QueryUnitignorecompileIr  __annotations__r  r  r  rd   r'   r%   <module>r|     s>     # " " " " " 				 



 & & & & & & & & & & + + + + + + ' ' ' ' ' ' ' ' ' ' 0 0 0 0 0 0                             - - - - - -       : : : : : : : : : : : :
 	
? ? ? ?3 3 3 37 7 7 7< < < <~   "   > 
HSMMe"'')K)Kr)K)K)K"K"KKLLMhsmm
 

   33 4 4 4 >V" o D && 7F EE///kkkJRTRV  	
 8EE(I..//((3--2O2O2Q2QQ 5 


 &oozzz	2 56 dmkvFFFG $
   eeK)A)A)C)CDDD 55$1MM;;;L
$       @ @ A A A %%9FV
$   wxx}}w&'' wxx}}w&'' '((3--%%(E"F"FF
G
G %	

   RR S S S   %!
"
"   RR S S S 
AS+DVV	W	W   PP Q Q Q 8C==7<<>>#A#A#C#CC    EE  
 8C==7<<>>#A#A#C#CC  (3--&++--"?"?"A"AA 8C==7<<>>#A#A#C#CC     3 3 4 4 4 8C==7<<>>#A#A#C#CC     3 3 4 4 4 (3--&++--"?"?"A"AA   22 3 3 3 uNOO   # #==   uPQQ   # #==   %ERTRRR   ==   %ERTRRR   ==  
 gcllS   ++ , , , ws||c   ,, - - - GCLL   ** + + + 4%%v*>*>>?? T, 1 1H <uuUF?S?S STT
 5Hz12233 Tk   77 8 8 8 tGX011 | 
 4	4	F	X T	E(Fhfg--//00
'$--
'
'
)
)EE*c,B,B,R,R,T,T
T	U  
 )+;;>NN  )+;;>NN   ')G3  336LL 
 //0L0LMMPWPWQ Q...//0
 t#	 *~->JSP	 )O	 9 77eeJ444 eJ	**++,eJ(())* eJ''(  7GGI$6$677((GG; ;Igs; 
 z!N2^CgggFVFVV !| 
  gii')) #	 O+ '#,,
s
" QwmSC!G_!E!EE wyy If*++	h	&.//
*S99V-ABBB
C
C	D 
 


	 	  hsmm,,- hsmmdXXc]]*+ d>77:..4uuVT7J7JJSPQQ	R  $	E&+%%w7N7N7P7P*Q*Q!R!RR  XXc]]TTfg... .   
 tIf&''jyy)9:::;;<  $Ifl##jjyy7V7V1V&W&WW     
 jjz)9::: GII  Xc]]YYy111HHSMMA
 
  * + + + #=!9!99HHSMMI   . / / / 
 jjv...
 
jxxJ!6. HIIIJJK  8455  j(::cHHTJEV<W<W6W+X+XX  x,-- hhsmm.BBXXc]]RSS   $ $%7 8 8 8 "EHSMM,,xx}}<    ( (); < < < 
22 2 N%>> > !55l8RR   ! !- 0 0 0 )I'9::ZZHSMMHHYYy2DEEFFF> > 
 $GGuuVX...4xx7P7PPSVV  	H_j	#_55
(88C==
!
!	"
(?
#
#	$ 	 	 EE'5)))C/ w&&&, ((?=M+MM   % %m 4 4 4 wyy 9&<==HSMMHH\***A A   D))EE';L,M,MM  
  4Ig())j!!IIg7H$I$IIJJK   WYY
 uuXXc]]]]:-F-FFRUVWWW $GG	
eFJ  

 eIz""	#
 hsUU7J///001 

	 	   "* + + + dGH	
eE: 

 eGZ  	!
 hsUU8Z000112 

	 	 )B  tGI	
eE: 

 eIz""	#
 

 eM:&&' hsUU7J///001 

  )B  Tggh''%%9J*K*KK )B 
 GENNWWX&&&w8I)J)JJ  )B  HWWZ(())	z9555fj8Q8QQTWW  	D
	
%
I
&
&	' %j(
)
)	* 		  d?GGENN-==>>? d?GGENN-==>>	? d?GGENN-==>>
? d?GGENN-==>>? dwwx003CCDDE d
	
%
I
&
&	' %

#
#	$ (3---3eeK6P6PP
Q
Q		R
 	  
d 
dwwu~~+eeE:.F.FFL i  d#-eZ0H0HH3N i  ! d
	
%

#
#	$ 	 %

#
#		$
 	  i&''(  dGGJ//#5eZ8P8PPSVV i#$$%%& d?GGG,,s2UU5#5F5FFLMMWW
 ', dwwu~~+eeE:.F.FFL i1 2 dwwu~~+eeE:.F.FFL i7 8 d))S55
3K3K-Kc-QTW-WX i !!="> d>776??S011;;BOLL?M@ dwwu~~+eeE:.F.FFL iE" F d#-eZ0H0HH3N i  K%!L d))C/%%z2J2JJSP i !!Q("R d))C/%%z2J2JJSP i !!W+"X d''(++eeE>.J.JJ i!""].#^ _/` d''(++c1EE%4L4LLsR i!""e2#f g3h d))C/%%z2J2JJSP i !!m6"n d))C/%%z2J2JJSP i !!s9"t d  !!C'%%z*B*BBSH  i)**{=+| d

	
%

#
#	$ 	 %

#
#		$
 	  i#$$MF%N d
	
%

#
#	$ 	 %

#
#		$
 	  i$%%_O&` d	
	
%

#
#	$ 	 %

#
#		$
 	  i"##qX$r d
	
%

#
#	$ 	 %

#
#		$
 	  i$%%Ca&D d

	
%

#
#	$ 	 %

#
#		$
 	  i#$$Uj%V d#-eZ0H0HH3N i  [m!\ d))C/%%z2J2JJSP i !!ap"b dwwu~~+eeE:.F.FFL igs h d))C/%%z2J2JJSP i !!mv"n d779--3eeE:6N6NNQTT i"##sy$t d779--3eeE:6N6NNQTT i"##y|$z dGGJ//#5eZ8P8PPSVV i#$$%@ dggdmmc)EE%,D,DDsJ iEBF d=''%..3.//99".IIGCJH d>776??S011;;BOLLIDMJ dggi003677AA"BTUUKEVL dwwu~~+eeE:.F.FFL iQH R d#-eZ0H0HH3N i  WK!X d''(++c1EE%4L4LLsR i!""]N#^ d''(++c1EE%4L4LLsR i!""cQ#d d''(++c1EE%4L4LLsR i!""iT#j dGGJ//%%~2N2NN i#$$oW%p d
	
%

#
#	$ 	 %

#
#		$
 	 %

#
#	$ 	
 
 iEbF d	
	
%

#
#	$ 	 %

#
#		$
 	  i"##Wk$X d
	
%

#
#	$ 	 %

#
#		$
 	  i !!it"j d

	
%

#
#	$ 	 %

#
#		$
 	  i#$${}%| d))C/%%z2J2JJSP i !!A@"B d))C/%%z2J2JJSP i !!GC"H d779--3eeE:6N6NNQTT i"##MF$N dWW[11C7%%z:R:RRUXX i$%%SI&T dWW[11C7%%z:R:RRUXX i$%%YL&Z [M\ ]N^ _O j 	eJ	""#mIIfj11223 


  	DUU5#&&011;;BKHH
 tJeS 1 1G ;<<FFr{SS  x}}z1HHSMMA    	
  

  	DS55):;;;<<FFr{SS
d;eeF,=>>>??II",WWX
d<uuV->???@@JJ
 
    4	E&/""j	$yy/BBB
)D#

7O!D!D
D	E   )B'(( $ T	E&*++j	$yy2JKKK
)D#

74L!M!M
M	N   )B!""  '  t	E&#$$hdC55*;<<<
%d

eeG->??
?	@
%c

UU7,=>>
>	? %c

UU7,=>>
>	? %d

eeG->??
?		@
 %d

eeG->??
?	@ %ggdmm
$
$uuWn'E'E
E	F %GGGENNWWT]]2UsSSS
 
 %
(
(	)	)  " )B#$$# * $  4	E&,**TIIg|4T4T-T"U"UU  )B'((  $	E&*++j		'+CDDDEEF  )B&''	  & &
 "K/,>
 
h))EE&*,E,EE	F	F  $  77##eeG^&D&DD  GFOOuuY(:;;>NNO  
d
%

#
#	$
(774==55#4#44
5
5	6 	  
	
  dGGgdmmi		+~66778  (55778#4#455
6
6 t
GFOOeE3 hwwv)**+  	Wggg&&0;>?? tFGGFOOg-;<< 
h))G3h>	?	? d	775>>G#n4wwt}}D~U 
 t
GGFOOg%6FW 
 t
GGFOOg%6FW 
 T, 1 1GGFOO Ch NOO
 T, 1 1GGFOO Ch NOO
 d=''("3"3ggg6F6F"F"TUU tNGGH$5$5$CDD tNGGH$5$5$CDD dGGi--0@0@55RUCVCV0VVW  
HWWV__uu\377788h%%x1N1N(O(OO
%,
'
'	(
 j7K00112 gg eG&''(

 

 	
 

 	
     	 
 " IeSC**YYw-O-O"P"PPSVV  	3IIeS11222S88	
j	E((3--**^"<"<<xx}}LsRSS	
 	
  

  ~-	 x	E.$$~wwx/@/@9/LMMNN  799  YYz+=>>HSMMHH-...B B   
 HSMMHH-=$>$>>#N  tGGJ//%%AR2S2SS  
 DGGuuVX...w@Q1R1RR   dGIeFH eG&''(   t
GFOO	
eFJ  gdmm eE3	
 

  T, 1 1I =>>
   	
     tHYYvttNLAABBCCj	&011
(3--	
(99VTT.,%G%GHH
I
I	J     tGH		))K"I"IJJJ  	E'775>>GGFOO344eF())*eFJ$%%&  dGGgdmmi		+~66778  ggw!8!88 wx  557#;#;; T((<(((<((;:O:O+OO   HUU9k**++huuX|,,--.huuY,,--. huu]$677889  GHhuuZ!4!4wwy7I7I!IJJKKL 		IE%%%%
334!'$--(  %,,- 	
 
 	
 	
  !	 2 hwww''((55:K+L+LL D+.>>M 	
 hhsmmy3G'GH88TW==X X  dj?M::;;<  	  GK
*YY>>
?
?	@
	 	 		
 *YY>>
?
?
''


 (E*Ifdd>?&K&KLL  
 

   	 8 4GENNj?M::;;<  	  GJy5(++,,s24j?M::;;< h{ 	
   
 99Z**XXIi!!HHS6\$:$::. .   	K.0=@8KL T(F##
 	 	  z! " " " 
  #
" # # # '1bj'rt' ' '     
2 2 2 2/ / / /7 7 7 7 7 7r'   