
    #HJj                    J   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 ddlZdd	lmZ d
dlmZ d
dl m!Z!m"Z"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ja                  d  e1d      D              z        z    ed      z         Z2e2jg                  d        ejh                  dk(  rdZ5ndZ5d e5z   Z6d!e6z   Z7 ed"e5d#e7d$e7d%ejp                  &      Z9 e	 e'd'e9             ed(      ju                         z   Z;d)Z<d*Z=d+e<d,e=d-Z> ed. e?e6e7e>/      z  ej                  ej                  z  &      ZBe; e'd0eBju                               z   ZC ed1e6d2e7d3e7d%ejp                  &      ZDeDjg                  d4         ed"e6d5e6d6ejp                  &      ZE e ed7      eEz         ZF e ed8      eEz         ZG e ed9       ed:      z         ZH ed;      ZIeIjg                  d<        d=ZJ ed>      ZKeKjg                  d?         ed@dAeJiz        ZLeLjg                  dB         edC      eIj                         ju                         z   ZNeNjg                  dD         edC      eKj                         ju                         z   ZO edC      eLj                         ju                         z   ZP edE      eIj                         ju                         z   ZQeQjg                  dF         edE      eKj                         ju                         z   ZReRjg                  dG         edE      eLj                         ju                         z   ZSeSjg                  dH         edI      ZTeTjg                  dJ         edK      ZUeUjg                  dL         edMejp                  &      ZVeVjg                  dN         edOejp                  &      ZWeWjg                  dP         ed+      d-z   ZXeXjg                  dQ         ed"      dRz   ZYeYjg                  dS         edT      ZZeZjg                  dU         e%dV edW       e'dXe2      z         Z[ e%dY edZ      e;z    e'dXe2      z         Z\ e ee[e\z              Z]eFeGz  Z^e^jg                  d[         e%d\eCe;z        Z_e2e_z  Z`eTeUz  eVz  eWz  Za e%d e'd]ea       e	 e'd^eHju                                ed_      ju                          e'd`e`      ju                         z   z        z         ZbePeOz  eNz  ZceSeRz  eQz  ZdeLeKz  eIz  Zeeeecz  edz  Zf eda      jg                  db        edc      jg                  dd       z  ZgeDeYz  Zhe`ebz  efz  egz  ehz  eXz  Zie^eiz  Zje^e`z  Zk ede       e'dfe`      z   Zlel e'df edg            z   e'df edh            z   e'df edi            z  Zm e(dj edg             e	 ede             e(dje`      z   z  Zne`ebz  efz  egz   edk      z  ZoekeZz  Zpe^ZqeIZr e       Zs e       Ztejesz  Zuejetz  Zv ed7      dlz  dCz  Zwe`eZz   e%dmdne`eZz  z         z  Zx e       Zy e%do e(dpex      d+ e	 e(dpex       ed, e(dpex      z         z         z   d-z   z        Zze`eZz   edq      ezz   z   ed+      eyz    ed-      z   z   e%dr eds      d+z    e'dpey      z   d-z         z  Z{ e%dt e'dpe{       e	 e'duewju                                     z         Z|e| edn       e%dv e'dpe|            z   z  Z} e%dw e(dpe}       edx e(dpe}      z         z         Z~ e%dy e(dpe~       ed, e(dpe~      z         z         Zeyez  ZyeyZevZe edzez         z   Z e       Z ed+       eeu      z    ed-      z   Zejg                  e/        ed+       eev      z    ed-      z   Zejg                  e/       euZe edzez         z   Zeeqz  ez    ed{ e	eeqz  ez         z         z   Z e	e      Zepez    ed{ e	epez         z         z   Z e	e      Z e ed"      ez    edR      z         Zejg                  e.        e ed"      ez    edR      z         Zejg                  e.       eseez  z  Zseteez  z  Ztejez   esez   z  Zejg                  e-        e(d|e       e ed}       e	 e(d|e            z         z   Z e%d~ ede       e'dek      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   Zejez   etez   z  Zejg                  e-        e       Ze e(d|e       e	 ed}       e	e      z         z   z  Z e%d ed       e'dje      z         Z e%d e(dje       e ed       e(dje      z         z         Z e       ZeX e ed+       e!e      z    ed-      z         z  Z e%d ed      d+z    e'de      z   dzz    e'de      z    e	dz e'de      z         z   d-z         Zej7                  ej8                          e%d ed      d+z    e'de      z   dzz    e'de      z    e	dz e'de      z         z   d-z         j7                  ej:                        Z e%d ed      d+z    e'de      z   dzz    e'de      z   dzz    e'de      z    e	dz e'de      z         z   d-z         j7                  ej>                        Z e%d ed       e'dje      z         j7                  ejB                        Z e%d ed       ed      z    e'dje      z         j7                  ejB                        Z e	 eds            Zd+ e'de      z    e'de      z   d-z   Z e%d ed      d+z    e'de      z    e'ddlez        z   d-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      ez         z   e%d ed      d+z    e'de      z    e'de      z    e	d{ ed      z   dz    e'dea      z         z   d-z         z  Ze e%d ed      d+z    e'de      z   d-z         j7                  ejN                        z   e%d ed      d+z    e'de      z   d-z         j7                  ejP                        z   e%d ed      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejR                        z   e%d ed      d+z    e'de      z   d-z         j7                  ejT                        z   e%d ed      d+z    e'de^      z   d-z         j7                  ejV                        z   e%d ed      d+z    e'de      z   d-z         j7                  ejX                        z   e%d ed      d+z    e'de      z   d-z         j7                  ejX                        z   e%d ed      d+ e'de      z   d-z   eXz  z         j7                  ejZ                        z   e%d ed      eXz         j7                  ej\                        z   e%d ed«      d+z    e'de      z   d-z         j7                  ej^                        z   e%d edī      d+z    e'de      z   d-z         j7                  ej`                        z   e%d edƫ      d+z    e'de      z   d-z         j7                  ejb                        z   e%d edȫ      d+z    e'de      z   d-z         j7                  ejd                        z   e%d edʫ       e'de      z         j7                  ejf                        z  ez   e%d ed̫      d+z    e'de      z   d-z         j7                  ejh                        z  ez   e%d edΫ      d+z    e'de      z   d-z         j7                  ejj                        z   e%d edЫ      d+z    e'de      z   d-z         j7                  ejl                        z   e%d edҫ      d+z    e'de      z   d-z         j7                  ejn                        z   e%d edԫ      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejp                        z   e%d ed֫      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejr                        z   e%d edث      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejt                        z   e%d edګ      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejv                        z   e%d edܫ      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ejx                        z   e%d edޫ      d+z    e'de      z   d-z         j7                  ejz                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej|                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej~                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      eXz         j7                  ej                        z   e%d ed      eXz         j7                  ej                        z   e%d ed      eXz         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed       e'de      z         j7                  ej                        z   e%d ed       d+z    e'de      z   dzz    e'de      z   dzz    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   dzz    e'de      z   d-z         j7                  ej                        z   e%d ed	      d+z    e'de      z   d-z         j7                  ej                        z   e%d
 ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z   e%d ed      d+z    e'de      z   d-z         j7                  ej                        z  ez  ez  ez  ZeXd+ e'de      z    e! e(de            z   d-z   z  Z e%d e'dXe`      ez         j7                  ej                        e`z  Z e%d e'dXe`      ez         j7                  ej                        Z ed+      ez    ed-      z   Zeez  ez  ebz  efz  egz  e^z  Z e%ddq e'deܫ      z         j7                  ej                         e%ddC e'deܫ      z         j7                  ej                        z   e%ddE e'deܫ      z         j7                  ej                        z  ez  Z e%d e'de       e e(ddl       e(de      z    e(ddx       e(de      z   z        z         j7                  ej                        Z e%d e'de       e e(ddC       e(de      z    e(ddE       e(de      z   z        z         j7                  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   fd di e"d!             e'de      z   z        z         j7                  ej                        ZeZ e%d" e'de       ed# e(de      z         z         j7                  ej                        Z e%d$ e'de       ed% e(de      z         z         j7                  ej                        Zeez  Zeez  ez  Z e%d& ed'       e'de      z         Ze`ZeZ edh       e'd(e      z   Z e%d) ed*       e'd+e      ez  z         Zeez   e%d,d+ e'de      z    e	 ed-       e'd.e^      z         z   d-z         z  e^z  Z e%d/ ed0       ed1      z    e e(d2e            z         Z e	 e'd3 ed4                  Z e%d5 ed6      ez    e'dXe`      z    e	 ed7      elz         z         Z e%d8 ed9      ez   emz         Z e%d: ed;      ez   emz         Z e%d< ed=      ez   elz         Z e%d> ed?      ez   enz    ed@      z   enz         Z e%dA edB      ez   enz    ed@      z   enz         Z e%dC edD      ez   enz    ed@      z   enz         Z e%dE edF       edG      z   ez         Z e%dH edI       edG      z   ez         Z e%dJ edI       edK      z   ez         Z e%dL edI      ez         Z e%dM edF      ez         Z e%dN edO       e'd+e`       edh       e'd(e`      z   z  z         Z e%dP e	 edQ       e'dRe`      z          e'dSe       e	 e'dTe            z    e'dTe      z  z    e e(dUe            z    edK      z    e'dVe      z         Zeez  ez  ez  ez  ez  ez  ez  ez  ez  ez  Z e(d.e^      dz    e e(dWeo            z   dz   Z eXd+ e e(d.e^            z   d-z   z  dz    e e(dW e ed+       eeo      z    ed-      z   eXz                    z   dz   Ze ez  Z e	 e'dX e%dY edZ      ez                     Z e       Ze e(d[e       e	 ed}       e	e      z         z   z  Z ed       e	e      z    ed      z   Z e%d\ ed]       e'dje      z         Z e%d^ ede       e'dek      z    e'dje      z         Z e%d_ ed`      ez    e'dek      z    e'dje      z         Z e%da edb      d+z    e'de      z    ed-      z    e'd.e^      z   d-z         Z	 e%dc edZ      ez         Z
eez  ez  ez  ez  ez  e	z  e
z  Z e%dd e	 e(dp e%dee                   e e(dpe       e	d}      z    e	 e(dp e%dee                  z         z         ZeZ e%df edg       e e(d2e            z         Z e%dh e'di edj       edk      z         e'de۫      z    e'dee^z        z        Z e%dl edm       ed1      z    e e(d2e            z         Z edn       e'doeI      z   Z edp       e'dqeI      z   Z e%dre e	e      z   e e	e      z   z        Z e	 e'dse             e	 e'dte            z    e	 e'due            z    e	 e'dve            z   Z edw       e	 e'dx eds       edy      z              z    e e(dz e%d e'd.e^       ed+       e'de      z    ed-      z    e'd{e^      z   d-z   z                    dlz  z   Z e	 edK             e'dVe      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(d~e            z   ez   ez   ez         Z e%d ed      e e e(d~e            z   ez   ez   ez    e e(d~e             edK      z   dz    e	 e'dV e%d e(dp e%dee                              z   dz   ez   ez   z  z         Z e%d ed       e e(d~e            z   ez   ez   ez         Z e%d ed       e e(d.ek            dlz  z    e e(d~e            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jA                  de#z          ejA                  de#z           ejB                  dejD                  &      Z#de$d<   ddZ%ddZ&ddZ'y(  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)decodeUnicodeEscape   )	operators)DelimitedListcombine_join_kwargsrest_of_line)Comp	CompValueParam	ParamListFliteralc                F    t        j                  |  | j                        S )Ndatatype)rdflibr   r"   )r   s    f/Users/ahmed/devFolder/claude-voice/.venv/lib/python3.12/site-packages/rdflib/plugins/sparql/parser.pynegr%   ,   s    >>7(W-=-=>>    c                <    t        j                  | d   | d         S )Nr   r   )langr#   r   termss    r$   setLanguager,   0   s    >>%(q22r&   c                <    t        j                  | d   | d         S )Nr   r   r!   r)   r*   s    r$   setDataTyper.   4   s    >>%(U1X66r&   c                   d\  }}	 g }t         rt        d|        t        |       }t        |       D ]S  \  }}|dk(  r|j	                  ||g       n|dk(  r:|dz   t        |       k(  s| |dz      dk(  s| |dz      dk(  rN|j                  |       nt        |t              rft        |      dz  dk(  r|j                  |d	          t        |      dkD  r||z  }|dz   |k  r| |dz      d
vr}|d	   d}}|j                  |d	          nat        |t              r||j                         z  }n=|dk7  r8|j                  |       t        |      dz  dk(  r|}nt        |      dz  dk(  r|}t         s?t        t        |      |       V t         r d	dl
}t        |j                  |d             |S #  t         rd	dl}|j                           xY w)z?
    Expand ; and , syntax for repeat predicates, subjects
    )NNTerms,;r   .      r   )r3   r1   r2   N)indent)DEBUGprintlen	enumerateextendappend
isinstancelistr   as_listjsondumps	traceback	print_exc)	r+   last_subjectlast_predicateresl_itr@   rB   s	            r$   expandTriplesrJ   8   s   
 $. L.6'5!Ze$DAqCx

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

<(At$ HqLQ&JJqt$q6A:1HCq52:%A, 7 #
 45Q4.LJJqt$A|,qyy{"c

1HqLQ&#$L#hlq(%&Nc#h"A %B $**S*+,
!s   E'F0 0?F0 0Gc                Z   	 t         rNt        d|        t        d| d          t        dt        j                         g| j	                         d   z          t        t        j                         g| j	                         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)r7   r8   r#   BNoder?   rJ   	Exception)r+   es     r$   expandBNodeTriplesrQ   w   s    
	-'#uQx #'%--/!*<<=v||~.1CCDEE *a s   BB	 		B*B%%B*c                   t         rt        d|        g }g }| D ]  }t        |t              r
||z  }|d   }t	        j
                         }|r?||d   t        j                  j                  ||t        j                  j                  |gz  }r||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)
r7   r8   r=   r>   r#   rN   RDFrestfirstnil)r+   rF   otherxbs        r$   expandCollectionr\      s     ne$CEaQJE!ALLNCGVZZ__aFJJ4D4DaHHCAvzz''++C  Avzz

//C5LCos#5Lr&   <z[^<>"{}|^`\\%s]* c              #  &   K   | ]	  }d |z    yw)z\x%02XN ).0rH   s     r$   	<genexpr>rb      s     )KA)a-s   !   >c                2    t        j                  | d         S Nr   )r#   URIRefrZ   s    r$   <lambda>ri      s    &--!"5r&   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                8    t        j                  | d   dd        S )Nr   r5   r#   rN   rh   s    r$   ri   ri      s    FLL1ab,Br&   z0-9][u   0-9·̀-ͯ‿-⁀]*?$@z[a-zA-Z]+(?:-[a-zA-Z0-9]+)*z[0-9]+c                f    t        j                  | d   t         j                  j                        S Nr   r!   r#   r   XSDintegerrh   s    r$   ri   ri         6>>!A$ASAS#Tr&   z[eE][+-]?[0-9]+z[0-9]*\.[0-9]+c                f    t        j                  | d   t         j                  j                        S r|   )r#   r   r~   decimalrh   s    r$   ri   ri     r   r&   z/[0-9]+\.[0-9]*%(e)s|\.([0-9])+%(e)s|[0-9]+%(e)srP   c                f    t        j                  | d   t         j                  j                        S r|   )r#   r   r~   doublerh   s    r$   ri   ri     s    &..1

@Q@Q"Rr&   +c                l    t        j                  d| d   z   t         j                  j                        S )Nr   r   r!   r}   rh   s    r$   ri   ri   #  s!    fnnS1Q4Z&**2D2DEr&   -c                    t        | d         S rf   r%   rh   s    r$   ri   ri   .      C!Ir&   c                    t        | d         S rf   r   rh   s    r$   ri   ri   2  r   r&   c                    t        | d         S rf   r   rh   s    r$   ri   ri   6  s    3qt9r&   z)'''((?:'|'')?(?:[^'\\]|\\['ntbrf\\]))*'''c                J    t        j                  t        | d   dd             S Nr   r4   rS   r#   r   r   rh   s    r$   ri   ri   A      fnn01a<=r&   z+"""(?:(?:"|"")?(?:[^"\\]|\\["ntbrf\\]))*"""c                J    t        j                  t        | d   dd             S r   r   rh   s    r$   ri   ri   I  r   r&   z#'(?:[^'\n\r\\]|\\['ntbrf\\])*'(?!')c                J    t        j                  t        | d   dd             S Nr   r   r   rh   s    r$   ri   ri   R  r   r&   z#"(?:[^"\n\r\\]|\\["ntbrf\\])*"(?!")c                J    t        j                  t        | d   dd             S r   r   rh   s    r$   ri   ri   [  r   r&   c                6    t         j                  j                  S N)r#   rU   rX   rh   s    r$   ri   ri   `  s    vzz~~r&   ]c                *    t        j                         S r   rw   rh   s    r$   ri   ri   g  s
    r&   ac                6    t         j                  j                  S r   )r#   rU   typerh   s    r$   ri   ri   k  s    VZZ__r&   BaseBASEiri
PrefixDeclPREFIXc                F    t         j                  j                  | d         S rf   )r#   termVariablerh   s    r$   ri   ri   {  s    v{{33AaD9r&   pnamestringr(   z^^r"   truec                 ,    t        j                  d      S )NTr)   r`   r&   r$   ri   ri     s    FNN4 r&   falsec                 ,    t        j                  d      S )NFr)   r`   r&   r$   ri   ri     s    fnnU.Cr&   GRAPHgraphiriDEFAULTNAMEDALLgraphUNDEF*InversePath^PathNegatedPropertySetpart!DistinctPathDISTINCTPathEltmodPathEltOrInversePathSequence/PathAlternativer1   r2   triplesr3   QuadsNotTriplesr   {}QuadsquadsNotTriplesquadsMinusGraphPatternMINUSGroupOrUnionGraphPatternUNIONBuiltin_REGEXREGEXtextpatternrl   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oprY   AdditiveExpressionRelationalExpressionz!=z<=z>=INadjacent 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_rec                6    dd}t         j                  ||       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]
    c                    	 t        t        | j                  d      d            S # t        t        f$ r#}t        d| j                  d      z         |d }~ww xY w)Nr      zInvalid unicode code point: )chrintgroup
ValueErrorOverflowError)mrP   s     r$   expandz$expandUnicodeEscapes.<locals>.expand  sT    	Qs1771:r*++M* 	Q;aggajHIqP	Qs   #& AAA)r  zre.Matchreturnstr)r  sub)qr  s     r$   expandUnicodeEscapesr    s    Q #&&vq11r&   c                    t        | d      r| j                         } t        | t              r| j	                  d      } t        |       } t        j                  | d      S )Nreadutf-8T	parse_all)hasattrr  r=   bytesdecoder  Queryparse_stringr  s    r$   
parseQueryr    sO    q&FFH!UHHWQAa400r&   c                    t        | d      r| j                         } t        | t              r| j	                  d      } t        |       } t        j                  | d      d   S )Nr  r  Tr  r   )r  r  r=   r  r  r  
UpdateUnitr  r  s    r$   parseUpdater    sT    q&FFH!UHHWQA""1"5a88r&   )r   rdflib.Literalr  r  )r+   zTuple[Any, OptionalType[str]]r  r  )r+   r   r  z	List[Any])r+   r   r  zList[List[Any]])r  r  r  r  )r  #Union[str, bytes, TextIO, BinaryIO]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#   rdflib.compatr   r^   r   rY  pyparsing_compatr   r   r   parserutilsr   r   r   r   r7   r%   r,   r.   rJ   rQ   r\   joinrangeIRIREFset_parse_action
maxunicodePN_CHARS_BASE_rePN_CHARS_U_rePN_CHARS_reU	PN_PREFIXleave_whitespace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*  r,  r.  r0  r2  r4  r6  r8  r:  r<  r>  r@  rC  rE  rG  rI  rM  rO  rQ  BuiltInCallArgListrT  iriOrFunctionFunctionCallBrackettedExpressionPrimaryExpressionrU  rV  rW  UnaryExpressionrX  rZ  NumericExpressionr[  ValueLogicalr_  r`  
Constraintra  SourceSelectorDefaultGraphClauseNamedGraphClauserd  GroupConditionrj  _Silentrp  rs  ru  rw  ry  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  r`   r&   r$   <module>ry     s.   # 	 
 & & + ' ' 0    -  N N : :
 	
?37<~"> 
SM"'')Kr)K"KKLMsm

   5 6 >>V" o D && 7F /kJRTRVRV	
 E(I./(3-2P2P2RR 5 

 &z	2 6 mkvFG $$
 eK)B)B)DEE $1;L
$$   ! !"B C 9FV
$$ x}w&' x}w&' (3-%(E"FF
G 	
   T U   !
"   T U 
AS+DVV	W   R S C=7<<>#B#B#DD   ! !E
 C=7<<>#B#B#DD  3-&++-"@"@"BB C=7<<>#B#B#DD   ! !"5 6 C=7<<>#B#B#DD   ! !"5 6 3-&++-"@"@"BB     !4 5 NO   % %= PQ   % %= ERTTR     = ERTTR     =
 clS   - . s|c   . / CL   , - %v*>>? , 1H <uUF?S ST
 Hz123 Tk   9 : GX01 | 
 4	4	F	X 	(Ffg..01
$-
(
(
*U:s-C-T-T-V
V	W
 )+;;>NN  )+;;>NN   ')G3  336LL 
 11 G%%&CDE
 t#	 *~->JSP	 )O	 9 7eJ44 J	*+,J()* J'(  7GI$67(G;gs; 
 z!N2^CggFVV !| 
  i) #	 O+ #,
s
" QwmSC!G_!EE y f*+	&./
S9V-ABB
C	D
 


	  sm,,- smdXc]*+ >7:.4uVT7JJSPQ	R  	&+%w7O7O7Q*R!SS Xc]Tfg..   
 f&'y)9::;< fl#jy7V1V&WW    
 jz)9:: I  c]Yy11HSMA
 
  , - #=!99HSMI    0 1 
 jv..
 
xJ!6. HIIJK  45  j(:cHTJEV<W6W+XX  ,- hsm.BBXc]RS   & &'9 : "SM,,x}<   * *+= > 
22 2 N%>> > !55l8RR   # #M 2 I'9:ZSMHYy2DEFF> 
 GuVX..4x7PPSVV 	_#_5
8C=
!	"
?
#	$	 E'5))C/ w&&, ((?=M+MM   ' ' 6 y 9&<=SMH\**A   )E';L,MM 
  g()!Ig7H$IIJK  Y
 uXc]]:-FFRUVWW G	
FJ  

 Iz"	#
 sU7J//01 

	   "** + H	
E: 

 GZ 	!
 sU8Z0012 

	 )B  I	
E: 

 Iz"	#
 

 M:&' sU7J//01 

 )B  gh'%9J*KK)B 
 ENWX&&w8I)JJ )B  WZ()	z955fj8QQTWW  	
	

I
&	' j(
)	* 		 ?GEN-==>? ?GEN-==>	? ?GEN-==>
? ?GEN-==>? wx03CCDE 
	

I
&	' 

#	$ 3--3eK6PP
Q		R
 	 
d 
wu~+eE:.FFLi  #-eZ0HH3Ni ! 
	


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

#		$
 	 i&&'(  GJ/#5eZ8PPSVVi##$%%& ?GG,s2U5#5FFLMWW
', wu~+eE:.FFLi1 2 wu~+eE:.FFLi7 8 )S5
3K-Kc-QTW-WXi  !="> >76?S01;;BOOL?M@ wu~+eE:.FFLiE" F #-eZ0HH3Ni K%!L )C/%z2JJSPi  !Q("R )C/%z2JJSPi  !W+"X '(+eE>.JJi!!"].#^ _/` '(+c1E%4LLsRi!!"e2#f g3h )C/%z2JJSPi  !m6"n )C/%z2JJSPi  !s9"t   !C'%z*BBSH i))*{=+| 

	


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

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

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

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

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

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

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

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

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

#		$
 	 i##$Uj%V #-eZ0HH3Ni [m!\ )C/%z2JJSPi  !ap"b wu~+eE:.FFLigs h )C/%z2JJSPi  !mv"n 79-3eE:6NNQTTi""#sy$t 79-3eE:6NNQTTi""#y|$z GJ/#5eZ8PPSVVi##$%@ gdmc)E%,DDsJiEBF ='%.3./99"..IGCJH >76?S01;;BOOLIDMJ gi0367AA"BTBTUKEVL wu~+eE:.FFLiQH R #-eZ0HH3Ni WK!X '(+c1E%4LLsRi!!"]N#^ '(+c1E%4LLsRi!!"cQ#d '(+c1E%4LLsRi!!"iT#j GJ/%~2NNi##$oW%p 
	


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

#		$
 	 

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

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

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

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

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

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

#		$
 	 i##${}%| )C/%z2JJSPi  !A@"B )C/%z2JJSPi  !GC"H 79-3eE:6NNQTTi""#MF$N W[1C7%z:RRUXXi$$%SI&T W[1C7%z:RRUXXi$$%YL&Z [M\ ]N^ _O j 	J	"#Ifj123 


  	U5#&01;;BKKH
 JeS 1G ;<FFr{{S  }z1HSMA    	
  

  	S5):;;<FFr{{S
;eF,=>>?II",,WX
<uV->??@JJ

    	&/"$y/BB
D#
7O!D
D	E )B''( $ 	&*+$y2JKK
D#
74L!M
M	N )B!!"  '  	&#$dC5*;<<
d
eG->?
?	@
c
U7,=>
>	? c
U7,=>
>	? d
eG->?
?		@
 d
eG->?
?	@ gdm
$uWn'E
E	F . &c*
 
()	)* )B##$+ 2 $  	&,*TIg|4T-T"UU )B''(  	&*+	'+CDDEF )B&&'	  & &
 "K/,>
 
h)E&*,EE	F  $  7#eG^&DD  FOuY(:;>NNO 



#	$
74=5#44
5	6 	 
	
  Gdm	+~678 578#45
6 
FOE3 wv)*+ 	Wgg&0;>? FGFOg-;< 
h)G3h>	? 	75>G#n4wt}D~U
 
GFOg%6FW
 
GFOg%6FW
 , 1GFO Ch NO
 , 1GFO Ch NO
 ='("3gg6F"F"TU NGH$5$CD NGH$5$CD Gi-0@5RUCV0VVW 
WV_u\3778h%x1N(OO
,
'	(
 7K012 g G&'(

 	
 

 	
     	 
 " eSC*Yw-O"PPSVV  	3IeS122S88	
(3-*^"<<x}LsRS	
 

  ~-	 	.$~wx/@9/LMN 9  Yz+=>SMH-..B   
 SMH-=$>>#N  GJ/%AR2SS 
 GuVX..w@Q1RR  IFH G&'(  
FO	
FJ  dm E3	
 

 , 1I =>
   	
     YvtNLABC&01
3-	
9VT.,%GH
I	J   H	)K"IJJ 	'75>GFO34F()*FJ$%& Gdm	+~678 gw!88 x 57#;; (<((<(;:O+OO  U9k*+uX|,-.uY,-. u]$6789  HuZ!4wy7I!IJKL 	%%
34!$-(  ,- 	
	
  !	 2 ww'(5:K+LL +.>>M	
 hsmy3G'GH8TW=X X  ?M:;<  	 K
Y>
?	@
	 	 		
 Y>
?
'

 *fd>?&KL

   	8 EN?M:;<  	 J5(+,s24?M:;< { 	
  
 9Z*Xi!HS6\$::.   	K.0=@8KL (F#
 	 	  |# $ 
  #$ % '1bjj'rtt'  
219r&   