+
    }¯³j�  ã                   ó:  € R t ^ RIt^ RIHtHtHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtH t H!t! ^ RIH"t"H#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/ ^ RIH0t0H1t1H2t2H3t3H4t4H5t5H6t6H7t7H8t8H9t9H:t:H;t;H<t<H=t=H>t>H?t?H@t@HAtAHBtBHCtCHDtDHEtEHFtFHGtGHHtH  ^ tI^tJ^tK^tL^tMRtN ^ tO^tP^tQ^tR^tS^tT]QtU ^ tV^tW^tX^tY ^ tZ^t[^t\^t]^t^R t_ ! R R4      t` ! R R	4      taRR
 ltb]PÆ                  ! R4      ]PÆ                  ! R4      3R ltd^ RIeHftfHgtg  ]f! 4       w  thti]g! 4       w  tjtkAfAg^ RImHntn An]o! ]2Pà                  ! 4       4       F;  w  tqtr]qPç                  RR4      Pç                  RR4      Pé                  4       tq]r]2]q&   K=  	  AqArR#   ]l d     Lli ; i)aÑ  psycopg extensions to the DBAPI-2.0

This module holds all the extensions to the DBAPI-2.0 provided by psycopg.

- `connection` -- the new-type inheritable connection class
- `cursor` -- the new-type inheritable cursor class
- `lobject` -- the new-type inheritable large object class
- `adapt()` -- exposes the PEP-246_ compatible adapting mechanism used
  by psycopg to adapt Python types to PostgreSQL ones

.. _PEP-246: https://www.python.org/dev/peps/pep-0246/
N)ÚBINARYARRAYÚBOOLEANÚBOOLEANARRAYÚBYTESÚ
BYTESARRAYÚDATEÚ	DATEARRAYÚDATETIMEARRAYÚDECIMALÚDECIMALARRAYÚFLOATÚ
FLOATARRAYÚINTEGERÚINTEGERARRAYÚINTERVALÚINTERVALARRAYÚLONGINTEGERÚLONGINTEGERARRAYÚ
ROWIDARRAYÚSTRINGARRAYÚTIMEÚ	TIMEARRAYÚUNICODEÚUNICODEARRAYÚAsIsÚBinaryÚBooleanÚFloatÚIntÚQuotedString)ÚPYDATEÚ
PYDATETIMEÚPYDATETIMETZÚ
PYINTERVALÚPYTIMEÚPYDATEARRAYÚPYDATETIMEARRAYÚPYDATETIMETZARRAYÚPYINTERVALARRAYÚPYTIMEARRAYÚ
DateFromPyÚ
TimeFromPyÚTimestampFromPyÚIntervalFromPy)ÚadaptÚadaptersÚ	encodingsÚ
connectionÚcursorÚlobjectÚXidÚlibpq_versionÚ	parse_dsnÚquote_identÚstring_typesÚbinary_typesÚnew_typeÚnew_array_typeÚregister_typeÚ	ISQLQuoteÚNotifyÚDiagnosticsÚColumnÚConnectionInfoÚQueryCanceledErrorÚTransactionRollbackErrorÚset_wait_callbackÚget_wait_callbackÚencrypt_passwordc                ó$   € V\         V \        3&   R# )z;Register 'callable' as an ISQLQuote adapter for type 'typ'.N)r/   r=   )ÚtypÚcallables   &&ÚT/home/luca/screen-checking/.venv/lib/python3.14/site-packages/psycopg2/extensions.pyÚregister_adapterrK   _   s   € à!)„Hˆc”9ÐÓó    c                   ó<   a € ] tR t^et o RtR tR tR tR tRt	V t
R# )ÚSQL_INz-Adapt any iterable to an SQL quotable object.c                ó    € Wn         R V n        R # ©N)Ú_seqÚ_conn)ÚselfÚseqs   &&rJ   Ú__init__ÚSQL_IN.__init__g   s   € ØŒ	ØˆŽ
rL   c                ó   € Wn         R # rP   )rR   )rS   Úconns   &&rJ   ÚprepareÚSQL_IN.preparek   s   € ØŽ
rL   c                ód  € V P                    Uu. uF  p\        V4      NK  	  ppV P                  e9   V F2  p\        VR4      '       g   K  VP	                  V P                  4       K4  	  V Uu. uF  qP                  4       NK  	  ppRRP                  V4      ,           R,           # u upi u upi )NrY   ó   (s   , ó   ))rQ   r.   rR   ÚhasattrrY   Ú	getquotedÚjoin)rS   ÚoÚpobjsÚobjÚqobjss   &    rJ   r_   ÚSQL_IN.getquotedn   sŽ   € ð $(§9¢9Ó-¡9˜a”�q–¡9ˆÐ-Ø�:‰:Ò!Û�Ü˜3 	×*Ô*Ø—K‘K §
¡
Ö+ñ ñ ).Ó.© 1—‘–©ˆÐ.Ø�e—j‘j Ó'Õ'¨$Õ.Ð.ùò .ùò
 /s   �B(Á/B-c                ó4   € \        V P                  4       4      # rP   )Ústrr_   )rS   s   &rJ   Ú__str__ÚSQL_IN.__str__y   s   € Ü�4—>‘>Ó#Ó$Ð$rL   )rR   rQ   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rU   rY   r_   rh   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @rJ   rN   rN   e   s!   ø‡ € Ù7òòò	/÷%ð %rL   rN   c                   ó4   a € ] tR t^}t o RtR tRR ltRtV tR# )ÚNoneAdapterzŠAdapt None to NULL.

This adapter is not used normally as a fast path in mogrify uses NULL,
but it makes easier to adapt composite types.
c                ó   € R # rP   © )rS   rc   s   &&rJ   rU   ÚNoneAdapter.__init__ƒ   s   € ÙrL   c                ó   € V# rP   rv   )rS   Ú_nulls   &&rJ   r_   ÚNoneAdapter.getquoted†   s   € ØˆrL   rv   N)s   NULL)	rj   rk   rl   rm   rn   rU   r_   ro   rp   rq   s   @rJ   rt   rt   }   s   ø‡ € ñò
÷ò rL   rt   c                ó  € V f   V'       g   R# V'       g   \        V 4       V # RV9   d'   RV9   d   \        R4      hVP                  R4      VR&   VP                  4        UUu/ uF  w  r#Vf   K  W#bK  	  pppV e   \        V 4      pVP	                  V4       TpRP                  VP                  4        UUu. uF)  w  r#RP                  V\        \        V4      4      4      NK+  	  upp4      p \        V 4       V # u uppi u uppi )z4Convert a set of keywords into a connection strings.Ú ÚdatabaseÚdbnamez8you can't specify both 'database' and 'dbname' argumentsÚ z{}={})	r6   Ú	TypeErrorÚpopÚitemsÚupdater`   ÚformatÚ_param_escaperg   )ÚdsnÚkwargsÚkÚvÚtmps   &,   rJ   Úmake_dsnr‹   Š   sõ   € à
‚{Ÿ6Ù÷ Ü�#ŒØˆ
ð �VÔØ�vÔÜØJóLð Là!Ÿ:™: jÓ1ˆˆxÑð "(§¡¤ÔA¡‘v˜°1ŒdˆaŠd¡€FÑAà
‚Ü˜‹nˆØ�
‰
�6ÔØˆà
�(‰(Ø—l‘l”nô&Ù$‰FˆQð —N‘N 1¤m´C¸³FÓ&;Ö<Ù$ò&ó '€Cô ˆc„Nà€Jùó Bùó&s   Á$C>Á1C>Â:/D
z([\\'])z\sc                óŒ   € V '       g   R# VP                  RV 4      p VP                  V 4      '       d   RV ,           R,           p V # )z1
Apply the escaping rule required by PQconnectdb
z''z\\\1Ú')ÚsubÚsearch)ÚsÚ	re_escapeÚre_spaces   &&&rJ   r…   r…   ¬   s;   € ÷ Ùà�‰�g˜qÓ!€AØ‡��q×ÒØ�!�G�c�Mˆà€HrL   )Úregister_default_jsonÚregister_default_jsonb)ÚRangeÚ_r|   Ú-rP   )urn   ÚreÚ_reÚpsycopg2._psycopgr   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    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   ÚISOLATION_LEVEL_AUTOCOMMITÚ ISOLATION_LEVEL_READ_UNCOMMITTEDÚISOLATION_LEVEL_READ_COMMITTEDÚISOLATION_LEVEL_REPEATABLE_READÚISOLATION_LEVEL_SERIALIZABLEÚISOLATION_LEVEL_DEFAULTÚSTATUS_SETUPÚSTATUS_READYÚSTATUS_BEGINÚSTATUS_SYNCÚSTATUS_ASYNCÚSTATUS_PREPAREDÚSTATUS_IN_TRANSACTIONÚPOLL_OKÚ	POLL_READÚ
POLL_WRITEÚ
POLL_ERRORÚTRANSACTION_STATUS_IDLEÚTRANSACTION_STATUS_ACTIVEÚTRANSACTION_STATUS_INTRANSÚTRANSACTION_STATUS_INERRORÚTRANSACTION_STATUS_UNKNOWNrK   rN   rt   r‹   Úcompiler…   Úpsycopg2._jsonr“   r”   ÚJSONÚ	JSONARRAYÚJSONBÚ
JSONBARRAYÚImportErrorÚpsycopg2._ranger•   Úlistr‚   rˆ   r‰   ÚreplaceÚupperrv   rL   rJ   Ú<module>r¼      s×  ðñóF ÷7÷ 7÷ 7÷ 7÷ 7÷ 7÷ 7÷ 7÷?÷ ?÷ ?÷ ?÷
>÷ >÷ >÷ >÷ >÷ >õ >ð ØÐ Ø#$Ð  Ø!"Ð Ø"#Ð Ø Ð ØÐ ð (Ø€Ø€Ø€Ø€Ø€Ø€ð %Ð ð 5Ø
€Ø€	Ø€
Ø€
ð )ØÐ ØÐ ØÐ ØÐ ØÐ ò*÷%ñ %÷0
ñ 
ôðF —+’+˜jÓ)Ø—’˜UÓ#ô÷" Ið	Ù+Ó-�O€Dˆ)Ù.Ó0Ñ€Eˆ:ð Ð1õ #Ø	ñ �—’Ó"Ö#�D€A€qØ	�	‰	�#�rÓ×"Ñ" 3¨Ó+×1Ñ1Ó3€AØ€IˆaƒLñ $ð ‚qøð' ô 	Ùð	ús   ÄF ÆFÆF