
    2i                    "&   U d Z ddlmZ ddlmZmZ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mZ ddlmZmZ dd	lmZmZmZmZ erdd
lmZmZ eeeedz  f   z  dz  Z de!d<   i Z"de!d<   e G d d             Z#dKdZ$ G d de%      Z& G d de%      Z' G d de'      Z( G d de'      Z) G d de)      Z* G d de)      Z+ G d d e)      Z, G d! d"e)      Z- G d# d$e)      Z. G d% d&e)      Z/ G d' d(e+      Z0 G d) d*e+      Z1 G d+ d,e+      Z2 G d- d.      Z3dLd/Z4dMd0Z5dNdOd1Z6dPd2Z7dMd3Z8dMd4Z9i d5e+d6e/d7e.d8e.d9e.d:e*d;e,d<e-d=e-d>e.d?e+d@e+dAe-dBe-dCe+dDe.dEe+i dFe+dGe+dHe.dIe.dJe+dKe.dLe.dMe+dNe+dOe+dPe+dQe+dRe+dSe+dTe.dUe-Z: G dV dWe)dXdYZ      Z; G d[ d\e)d]d^Z      Z< G d_ d`e)dadbZ      Z= G dc dde+dedfZ      Z> G dg dhe+didjZ      Z? G dk dle+dmdnZ      Z@ G do dpe+dqdrZ      ZA G ds dte+dudvZ      ZB G dw dxe+dydzZ      ZC G d{ d|e+d}d~Z      ZD G d de)ddZ      ZE G d de/ddZ      ZF G d de)ddZ      ZG G d de)ddZ      ZH G d de)ddZ      ZI G d de)ddZ      ZJ G d de)ddZ      ZK G d de)ddZ      ZL G d de)ddZ      ZM G d de)ddZ      ZN G d de.ddZ      ZO G d de.ddZ      ZP G d de.ddZ      ZQ G d de*ddZ      ZR G d de*ddZ      ZS G d de*ddZ      ZT G d de*dd¬Z      ZU G dÄ de*ddƬZ      ZV G dǄ de*ddʬZ      ZW G d˄ de*ddάZ      ZX G dτ de*ddҬZ      ZY G dӄ de*dd֬Z      ZZ G dׄ de*ddڬZ      Z[ G dۄ de*ddެZ      Z\ G d߄ de*ddZ      Z] G d de*ddZ      Z^ G d de*ddZ      Z_ G d de*ddZ      Z` G d de*ddZ      Za G d de*ddZ      Zb G d de*ddZ      Zc G d de*ddZ      Zd G d d e*ddZ      Ze G d de*ddZ      Zf G d de*d	d
Z      Zg G d de*ddZ      Zh G d de*ddZ      Zi G d de*ddZ      Zj G d de*ddZ      Zk G d de*ddZ      Zl G d d e*d!d"Z      Zm G d# d$e*d%d&Z      Zn G d' d(e*d)d*Z      Zo G d+ d,e*d-d.Z      Zp G d/ d0e*d1d2Z      Zq G d3 d4e*d5d6Z      Zr G d7 d8e*d9d:Z      Zs G d; d<e*d=d>Z      Zt G d? d@e*dAdBZ      Zu G dC dDe*dEdFZ      Zv G dG dHe*dIdJZ      Zw G dK dLe*dMdNZ      Zx G dO dPe*dQdRZ      Zy G dS dTe*dUdVZ      Zz G dW dXe*dYdZZ      Z{ G d[ d\e*d]d^Z      Z| G d_ d`e*dadbZ      Z} G dc dde*dedfZ      Z~ G dg dhe*didjZ      Z G dk dle*dmdnZ      Z G do dpe*dqdrZ      Z G ds dte*dudvZ      Z G dw dxe*dydzZ      Z G d{ d|e*d}d~Z      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*ddZ      Z G d de*dd¬Z      Z G dÄ de,dŐdƬZ      Z G dǄ de,dɐdʬZ      Z G d˄ de,d͐dάZ      Z G dτ de,dѐdҬZ      Z G dӄ de,dՐd֬Z      Z G dׄ de,dِdڬZ      Z G dۄ de,dݐdެZ      Z G d߄ de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d d e-ddZ      Z G d de-ddZ      Z G d de-d	d
Z      Z G d de-ddZ      Z G d de-ddZ      Z G d de-ddZ      Z G d de.ddZ      Z G d de+ddZ      Z G d d e+d!d"Z      Z G d# d$e+d%d&Z      Z G d' d(e-d)d*Z      Z G d+ d,e-d-d.Z      Z G d/ d0e-d1d2Z      Z G d3 d4e+d5d6Z      Z G d7 d8e+d9d:Z      Z G d; d<e+d=d>Z      Z G d? d@e+dAdBZ      Z G dC dDe+dEdFZ      Z G dG dHe.dIdJZ      Z G dK dLe+dMdNZ      Z G dO dPe+dQdRZ      Z G dS dTe+dUd:Z      Z G dV dWe+dXd>Z      Z G dY dZe+d[dBZ      Z G d\ d]e+d^d_Z      Z G d` dae+dbdcZ      Z G dd dee+dfdƬZ      Z G dg dhe+didjZ      Z G dk dle+dmdnZ      Z G do dpe+dqdrZ      Z G ds dte+dudvZ      Z G dw dxe+dydzZ      Z G d{ d|e.d}d~Z      Z G d de.ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.dd¬Z      Z G dÄ de.dŐdƬZ      Z G dǄ de.dɐdʬZ      Z G d˄ de.d͐dάZ      Z G dτ de.dѐdҬZ      Z G dӄ de.dՐd֬Z      Z G dׄ de.dِdڬZ      Z G dۄ de.dݐdެZ      Z G d߄ de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d d e.ddZ      Z G d de.ddZ      Z G d de.d	d
Z      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d de.ddZ      Z G d d e.d!d"Z      Z G d# d$e.d%d&Z      Z G d' d(e.d)d*Z      Z G d+ d,e.d-d.Z      Z G d/ d0e.d1d2Z      Z G d3 d4e.d5d6Z      Z G d7 d8e.d9d:Z      Z G d; d<e.d=d>Z      Z G d? d@e.dAdBZ      Z G dC dDe.dEdFZ      Z G dG dHe.dIdJZ      Z G dK dLe+dMdNZ      Z G dO dPe+dQdRZ      Z G dS dTe+dUdVZ      Z G dW dXe+dYdZZ      Z G d[ d\e+d]d^Z      Z G d_ d`e+dadbZ      Z G dc dde+dedfZ      Z G dg dhe+didjZ      Z  G dk dle+dmdnZ      Z G do dpe+dqdrZ      Z G ds dte+dudvZ      Z G dw dxe+dydzZ      Z G d{ d|e+d}d~Z      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z	 G d de+ddZ      Z
 G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de)ddZ      Z G d de+ddZ      Z G d de+ddZ      Z G d de+dd¬Z      Z G dÄ de+dŐdƬZ      Z G dǄ de+dɐdʬZ      Z G d˄ de+d͐dάZ      Z G dτ de+dѐdҬZ      Z G dӄ de+dՐd֬Z      Z G dׄ de+dِdڬZ      Z G dۄ de+dݐdެZ      Z G d߄ de+ddZ      Z G d de+ddZ      Z G d de+ddZ      Z  G d de+ddZ      Z! G d de+ddZ      Z" G d de+ddZ      Z# G d de+ddZ      Z$ G d de+ddZ      Z% G d d e+ddZ      Z& G d de+ddZ      Z' G d de+d	d
Z      Z( G d de+ddZ      Z) G d de+ddZ      Z* G d de+ddZ      Z+ G d de+ddZ      Z, G d de+ddZ      Z- G d d e+d!d"Z      Z. G d# d$e+d%d&Z      Z/ G d' d(e+d)d*Z      Z0 G d+ d,e.d-d.Z      Z1 G d/ d0e.d1d2Z      Z2 G d3 d4e.d5d6Z      Z3 G d7 d8e.d9d:Z      Z4 G d; d<e.d=d>Z      Z5 G d? d@e-dAdBZ      Z6 G dC dDe-dEdFZ      Z7 G dG dHe-dIdJZ      Z8e'e9e
fZ:y(Q  a]  
psycopg exceptions

DBAPI-defined Exceptions are defined in the following hierarchy::

    Exceptions
    |__Warning
    |__Error
       |__InterfaceError
       |__DatabaseError
          |__DataError
          |__OperationalError
          |__IntegrityError
          |__InternalError
          |__ProgrammingError
          |__NotSupportedError
    )annotations)TYPE_CHECKINGAnyNoReturn	TypeAlias	TypeGuard)CancelledError)	dataclassfieldfields)CallableSequence   )PGconnPGresult)
ConnStatusDiagnosticFieldPipelineStatusTransactionStatus)ConninfoOptionPGnotifyNr   	ErrorInfozdict[str, type[Error]]	_sqlcodesc                     e Zd ZU dZ ee      Zded<   dZded<   dZ	ded<   dZ
ded	<   dZded
<   dZded<   dZded<   dZded<   dZded<   ej"                  j$                  Zded<   ej*                  j$                  Zded<   ej0                  j$                  Zded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZ ded<   dZ!ded<   dZ"ded <   dZ#ded!<   dZ$ded"<   d#Z%d$ed%<   d#Z&d&ed'<   e'dZd(       Z(e)d[d)       Z*e)d[d*       Z+dZd+Z,d\d,Z-dZd-Z.d]d^d.Z/dZd/Z0dZd0Z1e)d[d1       Z2d[d2Z3e4dZd3       Z5d[d4Z6d_d5Z7d[d6Z8d[d7Z9d[d8Z:d[d9Z;d[d:Z<d[d;Z=d[d<Z>d[d=Z?d[d>Z@d[d?ZAd[d@ZBd[dAZCd[dBZDd[dCZEdZdDZFdZdEZGdZdFZHdZdGZIdZdHZJd`dIZKdZdJZLdZdKZMdZdLZNd[dMZOd[dNZPd[dOZQd[dPZRd[dQZSdZdRZTd[dSZUd[dTZVd[dUZWdZdVZXdZdWZYdZdXZZdZdYZ[y#)aFinishedPGconnzFinished libpq connection.

    Attributes are set from a real `~psycopg.pq.PGconn` but any operations will
    raise an `~psycopg.OperationalError`.
    )default_factoryzlist[ConninfoOption]info    bytesdbuserpasswordhosthostaddrportttyoptionsintstatustransaction_statuspipeline_statuserror_messageutf-8str	_encodingr   protocol_versionfull_protocol_versionserver_versionbackend_pidFboolneeds_passwordused_passwordused_gssapi
ssl_in_usenonblockingNz!Callable[[PGresult], None] | Nonenotice_handlerz!Callable[[PGnotify], None] | Nonenotify_handlerc                     t        d      Nzthe connection is closed)OperationalError r   M/var/www/html/secretsanta/venv/lib/python3.12/site-packages/psycopg/errors.py_raisezFinishedPGconn._raiseN   s    9::r   c                    t        |  d      Nz is unusable	TypeErrorclsargss     r@   connectzFinishedPGconn.connectR       3%|,--r   c                    t        |  d      rC   rD   rF   s     r@   connect_startzFinishedPGconn.connect_startV   rJ   r   c                $    | j                          y NrA   selfs    r@   connect_pollzFinishedPGconn.connect_pollZ       r   c                     y rN   r?   rP   s    r@   finishzFinishedPGconn.finish]   s    r   c                $    | j                          y rN   rO   rP   s    r@   resetzFinishedPGconn.reset`   rS   r   c                     yr=   r?   )rQ   encodings     r@   get_error_messagez FinishedPGconn.get_error_messagec   s    )r   c                $    | j                          y rN   rO   rP   s    r@   reset_startzFinishedPGconn.reset_startf   rS   r   c                $    | j                          y rN   rO   rP   s    r@   
reset_pollzFinishedPGconn.reset_polli   rS   r   c                    t        |  d      rC   rD   rF   s     r@   pingzFinishedPGconn.pingl   rJ   r   c                $    | j                          y rN   rO   rQ   rH   s     r@   parameter_statuszFinishedPGconn.parameter_statusp   rS   r   c                $    | j                          y rN   rO   rP   s    r@   socketzFinishedPGconn.sockets   s    r   c                $    | j                          y rN   rO   rb   s     r@   exec_zFinishedPGconn.exec_w   rS   r   c                $    | j                          y rN   rO   rb   s     r@   
send_queryzFinishedPGconn.send_queryz   rS   r   c                $    | j                          y rN   rO   rb   s     r@   exec_paramszFinishedPGconn.exec_params}   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_query_paramsz FinishedPGconn.send_query_params   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_preparezFinishedPGconn.send_prepare   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_query_preparedz"FinishedPGconn.send_query_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   preparezFinishedPGconn.prepare   rS   r   c                $    | j                          y rN   rO   rb   s     r@   exec_preparedzFinishedPGconn.exec_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   describe_preparedz FinishedPGconn.describe_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_describe_preparedz%FinishedPGconn.send_describe_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   describe_portalzFinishedPGconn.describe_portal   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_describe_portalz#FinishedPGconn.send_describe_portal   rS   r   c                $    | j                          y rN   rO   rb   s     r@   close_preparedzFinishedPGconn.close_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_close_preparedz"FinishedPGconn.send_close_prepared   rS   r   c                $    | j                          y rN   rO   rb   s     r@   close_portalzFinishedPGconn.close_portal   rS   r   c                $    | j                          y rN   rO   rb   s     r@   send_close_portalz FinishedPGconn.send_close_portal   rS   r   c                $    | j                          y rN   rO   rP   s    r@   
get_resultzFinishedPGconn.get_result   rS   r   c                $    | j                          y rN   rO   rP   s    r@   consume_inputzFinishedPGconn.consume_input   rS   r   c                $    | j                          y rN   rO   rP   s    r@   is_busyzFinishedPGconn.is_busy   rS   r   c                $    | j                          y rN   rO   rP   s    r@   flushzFinishedPGconn.flush   rS   r   c                $    | j                          y rN   rO   rP   s    r@   set_single_row_modez"FinishedPGconn.set_single_row_mode   rS   r   c                $    | j                          y rN   rO   )rQ   sizes     r@   set_chunked_rows_modez$FinishedPGconn.set_chunked_rows_mode   rS   r   c                $    | j                          y rN   rO   rP   s    r@   cancel_connzFinishedPGconn.cancel_conn   rS   r   c                $    | j                          y rN   rO   rP   s    r@   
get_cancelzFinishedPGconn.get_cancel   rS   r   c                $    | j                          y rN   rO   rP   s    r@   notifieszFinishedPGconn.notifies   rS   r   c                $    | j                          y rN   rO   rb   s     r@   put_copy_datazFinishedPGconn.put_copy_data   rS   r   c                $    | j                          y rN   rO   rb   s     r@   put_copy_endzFinishedPGconn.put_copy_end   rS   r   c                $    | j                          y rN   rO   rb   s     r@   get_copy_datazFinishedPGconn.get_copy_data   rS   r   c                $    | j                          y rN   rO   rb   s     r@   tracezFinishedPGconn.trace   rS   r   c                $    | j                          y rN   rO   rb   s     r@   set_trace_flagszFinishedPGconn.set_trace_flags   rS   r   c                $    | j                          y rN   rO   rP   s    r@   untracezFinishedPGconn.untrace   rS   r   c                $    | j                          y rN   rO   rb   s     r@   encrypt_passwordzFinishedPGconn.encrypt_password   rS   r   c                $    | j                          y rN   rO   rb   s     r@   change_passwordzFinishedPGconn.change_password   rS   r   c                $    | j                          y rN   rO   rb   s     r@   make_empty_resultz FinishedPGconn.make_empty_result   rS   r   c                $    | j                          y rN   rO   rP   s    r@   enter_pipeline_modez"FinishedPGconn.enter_pipeline_mode   rS   r   c                $    | j                          y rN   rO   rP   s    r@   exit_pipeline_modez!FinishedPGconn.exit_pipeline_mode   rS   r   c                $    | j                          y rN   rO   rP   s    r@   pipeline_synczFinishedPGconn.pipeline_sync   rS   r   c                $    | j                          y rN   rO   rP   s    r@   send_flush_requestz!FinishedPGconn.send_flush_request   rS   r   )returnr   )rH   r   r   r   )r   None) )rY   r.   r   r.   )rH   r   r   r   )r   r(   r   r   )\__name__
__module____qualname____doc__r   listr   __annotations__r    r!   r"   r#   r$   r%   r&   r'   r   BADvaluer)   r   UNKNOWNr*   r   OFFr+   r,   r/   r0   r1   r2   r3   r5   r6   r7   r8   r9   r:   r;   staticmethodrA   classmethodrI   rL   rR   rU   rW   rZ   r\   r^   r`   rc   propertyre   rg   ri   rk   rm   ro   rq   rs   ru   rw   ry   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   '   sr    "'t!<D
<BOD%HeD%HeD%CGU..&&FC&/77===)--33OS3M5Isc!"3"NCK ND M4KJK8<N5<8<N5<; ; . . . .* . .  r   r   c                    i }t        t              D ]&  }	 t        | |j                        ||j                  <   ( | j                          t        di |S # t        $ r Y Ow xY w)Nr?   )r   r   getattrname	ExceptionrU   )pgconnrH   fs      r@   finish_pgconnr      se    DN# 	"61662DL
 MMO!D!!  		s   #A	A"!A"c                      e Zd ZdZdZy)Warningzy
    Exception raised for important warnings.

    Defined for DBAPI compatibility, but never raised by ``psycopg``.
    psycopgNr   r   r   r   r?   r   r@   r   r           Jr   r   c                       e Zd ZU dZdZdZded<   dddd	 	 	 	 	 	 	 d fdZedd	       Zedd
       Z	edd       Z
d fdZ xZS )Errora  
    Base exception for all the errors psycopg will raise.

    Exception that is the base class of all other error exceptions. You can
    use this to catch all errors with one single `!except` statement.

    This exception is guaranteed to be picklable.
    r   N
str | Nonesqlstater-   )r   rY   r   c                   t        |   |  || _        || _        || _        | j
                  s|r| j                  j
                  | _        y y y rN   )super__init___infor/   _pgconnr   diag)rQ   r   rY   r   rH   	__class__s        r@   r   zError.__init__  sJ     	$
! }} II..DM "&}r   c                6    | j                   r| j                   S dS )z|The connection object, if the error was raised from a connection attempt.

        :rtype: psycopg.pq.PGconn | None
        N)r   rP   s    r@   r   zError.pgconn  s      $||t||55r   c                H    t        | j                        r| j                  S dS )zyThe result object, if the exception was raised after a failed query.

        :rtype: psycopg.pq.PGresult | None
        N)_is_pgresultr   rP   s    r@   pgresultzError.pgresult%  s     *$**5tzz?4?r   c                D    t        | j                  | j                        S )z[
        A `Diagnostic` object to inspect details of the errors from the database.
        )rY   )
Diagnosticr   r/   rP   s    r@   r   z
Error.diag-  s    
 $**t~~>>r   c                    t         |          }t        |t              r1t	        |      dk\  r#t        | j                        |d   d<   d |d   d<   |S )N      r   r   r   
__reduce__
isinstancetuplelen_info_to_dictr   rQ   resr   s     r@   r   zError.__reduce__4  sM    g "c5!c#h!m+DJJ7CF7O $CF9
r   )rH   zSequence[Any]r   r   rY   r.   r   PGconn | None)r   r   )r   zPGresult | None)r   r   r   zstr | tuple[Any, ...])r   r   r   r   r   r   r   r   r   r   r   r   __classcell__r   s   @r@   r   r      s     JHj
  $// / 	/
 /  6 6 @ @ ? ? r   r   c                      e Zd ZdZdZy)InterfaceErrorzU
    An error related to the database interface rather than the database itself.
    r   Nr   r?   r   r@   r   r   >       Jr   r   c                      e Zd ZdZdZdddZy)DatabaseErrorzG
    Exception raised for errors that are related to the database.
    r   Nc                @    |r| t         |<   || _        |r
| t         |<   y y rN   )r   r   )rG   coder   s      r@   __init_subclass__zDatabaseError.__init_subclass__M  s&    !IdOCL!IdO r   )NN)r   r   r   r   )r   r   r   r   r   r?   r   r@   r   r   F  s     J"r   r   c                      e Zd ZdZdZy)	DataErrorz
    An error caused by problems with the processed data.

    Examples may be division by zero, numeric value out of range, etc.
    r   Nr   r?   r   r@   r   r   U  r   r   r   c                      e Zd ZdZdZy)r>   a8  
    An error related to the database's operation.

    These errors are not necessarily under the control of the programmer, e.g.
    an unexpected disconnect occurs, the data source name is not found, a
    transaction could not be processed, a memory allocation error occurred
    during processing, etc.
    r   Nr   r?   r   r@   r>   r>   _  s     Jr   r>   c                      e Zd ZdZdZy)IntegrityErrorz
    An error caused when the relational integrity of the database is affected.

    An example may be a foreign key check failed.
    r   Nr   r?   r   r@   r   r   l  r   r   r   c                      e Zd ZdZdZy)InternalErrorz
    An error generated when the database encounters an internal error,

    Examples could be the cursor is not valid anymore, the transaction is out
    of sync, etc.
    r   Nr   r?   r   r@   r   r   v       Jr   r   c                      e Zd ZdZdZy)ProgrammingErrorz
    Exception raised for programming errors

    Examples may be table not found or already exists, syntax error in the SQL
    statement, wrong number of parameters specified, etc.
    r   Nr   r?   r   r@   r   r     r   r   r   c                      e Zd ZdZdZy)NotSupportedErrorzS
    A method or database API was used which is not supported by the database.
    r   Nr   r?   r   r@   r  r    r   r   r  c                      e Zd ZdZy)ConnectionTimeoutz
    Exception raised on timeout of the `~psycopg.Connection.connect()` method.

    The error is raised if the ``connect_timeout`` is specified and a
    connection is not obtained in useful time.

    Subclass of `~psycopg.OperationalError`.
    Nr   r?   r   r@   r  r    s    r   r  c                      e Zd ZdZy)CancellationTimeoutz
    Exception raised on timeout of connection's
    `~psycopg.Connection.cancel_safe()` method.

    Subclass of `~psycopg.OperationalError`.
    Nr   r?   r   r@   r  r    s    r   r  c                      e Zd ZdZy)PipelineAbortedz
    Raised when a operation fails because the current pipeline is in aborted state.

    Subclass of `~psycopg.OperationalError`.
    Nr   r?   r   r@   r  r    s    r   r  c                  z    e Zd ZdZdddZedd       Zedd       Zedd       Zedd       Z	edd       Z
edd       Zedd	       Zedd
       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       ZddZd fdZ xZS )r   z%Details from a database error report.c                     || _         || _        y rN   )r   r/   )rQ   r   rY   s      r@   r   zDiagnostic.__init__  s    
!r   c                @    | j                  t        j                        S rN   )_error_messager   SEVERITYrP   s    r@   severityzDiagnostic.severity      ""?#;#;<<r   c                @    | j                  t        j                        S rN   )r  r   SEVERITY_NONLOCALIZEDrP   s    r@   severity_nonlocalizedz Diagnostic.severity_nonlocalized  s    ""?#H#HIIr   c                @    | j                  t        j                        S rN   )r  r   SQLSTATErP   s    r@   r   zDiagnostic.sqlstate  r  r   c                @    | j                  t        j                        S rN   )r  r   MESSAGE_PRIMARYrP   s    r@   message_primaryzDiagnostic.message_primary      ""?#B#BCCr   c                @    | j                  t        j                        S rN   )r  r   MESSAGE_DETAILrP   s    r@   message_detailzDiagnostic.message_detail      ""?#A#ABBr   c                @    | j                  t        j                        S rN   )r  r   MESSAGE_HINTrP   s    r@   message_hintzDiagnostic.message_hint  s    ""?#?#?@@r   c                @    | j                  t        j                        S rN   )r  r   STATEMENT_POSITIONrP   s    r@   statement_positionzDiagnostic.statement_position  s    ""?#E#EFFr   c                @    | j                  t        j                        S rN   )r  r   INTERNAL_POSITIONrP   s    r@   internal_positionzDiagnostic.internal_position  s    ""?#D#DEEr   c                @    | j                  t        j                        S rN   )r  r   INTERNAL_QUERYrP   s    r@   internal_queryzDiagnostic.internal_query  r  r   c                @    | j                  t        j                        S rN   )r  r   CONTEXTrP   s    r@   contextzDiagnostic.context  s    ""?#:#:;;r   c                @    | j                  t        j                        S rN   )r  r   SCHEMA_NAMErP   s    r@   schema_namezDiagnostic.schema_name      ""?#>#>??r   c                @    | j                  t        j                        S rN   )r  r   
TABLE_NAMErP   s    r@   
table_namezDiagnostic.table_name  s    ""?#=#=>>r   c                @    | j                  t        j                        S rN   )r  r   COLUMN_NAMErP   s    r@   column_namezDiagnostic.column_name  r/  r   c                @    | j                  t        j                        S rN   )r  r   DATATYPE_NAMErP   s    r@   datatype_namezDiagnostic.datatype_name  s    ""?#@#@AAr   c                @    | j                  t        j                        S rN   )r  r   CONSTRAINT_NAMErP   s    r@   constraint_namezDiagnostic.constraint_name  r  r   c                @    | j                  t        j                        S rN   )r  r   SOURCE_FILErP   s    r@   source_filezDiagnostic.source_file  r/  r   c                @    | j                  t        j                        S rN   )r  r   SOURCE_LINErP   s    r@   source_linezDiagnostic.source_line  r/  r   c                @    | j                  t        j                        S rN   )r  r   SOURCE_FUNCTIONrP   s    r@   source_functionzDiagnostic.source_function  r  r   c                    | j                   rot        | j                   t              r| j                   j                  |      }n| j                   j	                  |      }||j                  | j                  d      S y )Nreplace)r   r   dictgeterror_fielddecoder/   )rQ   r   vals      r@   r  zDiagnostic._error_message  sZ    ::$**d+jjnnU+jj,,U3zz$..)<<r   c                    t         |          }t        |t              r)t	        |      dk\  rt        | j                        |d   d<   |S )Nr   r   r   r   r   s     r@   r   zDiagnostic.__reduce__  s?    g "c5!c#h!m+DJJ7CF7O
r   r-   )r   r   rY   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.  r2  r5  r8  r;  r>  rA  rD  r  r   r   r   s   @r@   r   r     s   /" = = J J = = D D C C A A G G F F C C < < @ @ ? ? @ @ B B D D @ @ @ @ D D
 r   r   c                n    t        |       r$t        D ci c]  }|| j                  |       c}S | S c c}w )zH
    Convert a PGresult to a dictionary to make the info picklable.
    )r   r   rI  )r   vs     r@   r   r     s8    
 D0?@14##A&&@@ As   2c                0    t         | j                            S )zLookup an error code or `constant name`__ and return its exception class.

    Raise `!KeyError` if the code is not found.

    .. __: https://www.postgresql.org/docs/current/errcodes-appendix.html
            #ERRCODES-TABLE
    )r   upperr   s    r@   lookuprS    s     X^^%&&r   c                    | j                  t        j                        xs d}t        |j	                  dd            } || j                  |      | |      S )Nr   r-   rF  )r   rY   )rI  r   r  _class_for_staterJ  rZ   )resultrY   staterG   s       r@   error_from_resultrX  )  sL    778?CE
5<<;
<Cv''1RRr   c                    t        | d      S )z3Return True if an ErrorInfo is a PGresult instance.rI  )hasattr)r   s    r@   r   r   /  s     4''r   c                N    	 t        |       S # t        $ r t        |       cY S w xY wrN   )rS  KeyErrorget_base_exceptionrR  s    r@   rU  rU  5  s,    ,h ,!(++,s   
 $$c                v    t         j                  | d d       xs  t         j                  | d d       xs t        S )Nr   r   )_base_exc_maprH  r   rR  s    r@   r]  r]  <  s<    (2A,' 	Xbq\*	r   080A102021222324252627282B2D2F3438393B3D3F4042445354555758FHPXc                      e Zd Zy)NoDataNr   r   r   r?   r   r@   r  r  q      r   r  02000NO_DATA)r   r   c                      e Zd Zy)%NoAdditionalDynamicResultSetsReturnedNr  r?   r   r@   r  r  u  r  r   r  02001*NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNEDc                      e Zd Zy)SqlStatementNotYetCompleteNr  r?   r   r@   r  r  |  r  r   r  03000SQL_STATEMENT_NOT_YET_COMPLETEc                      e Zd Zy)ConnectionExceptionNr  r?   r   r@   r  r    r  r   r  08000CONNECTION_EXCEPTIONc                      e Zd Zy)'SqlclientUnableToEstablishSqlconnectionNr  r?   r   r@   r  r    r  r   r  08001+SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTIONc                      e Zd Zy)ConnectionDoesNotExistNr  r?   r   r@   r  r    r  r   r  08003CONNECTION_DOES_NOT_EXISTc                      e Zd Zy)-SqlserverRejectedEstablishmentOfSqlconnectionNr  r?   r   r@   r  r    r  r   r  080041SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTIONc                      e Zd Zy)ConnectionFailureNr  r?   r   r@   r  r    r  r   r  08006CONNECTION_FAILUREc                      e Zd Zy)TransactionResolutionUnknownNr  r?   r   r@   r  r    r  r   r  08007TRANSACTION_RESOLUTION_UNKNOWNc                      e Zd Zy)ProtocolViolationNr  r?   r   r@   r  r    r  r   r  08P01PROTOCOL_VIOLATIONc                      e Zd Zy)TriggeredActionExceptionNr  r?   r   r@   r  r    r  r   r  09000TRIGGERED_ACTION_EXCEPTIONc                      e Zd Zy)FeatureNotSupportedNr  r?   r   r@   r  r    r  r   r  0A000FEATURE_NOT_SUPPORTEDc                      e Zd Zy)InvalidTransactionInitiationNr  r?   r   r@   r  r    r  r   r  0B000INVALID_TRANSACTION_INITIATIONc                      e Zd Zy)LocatorExceptionNr  r?   r   r@   r  r    r  r   r  0F000LOCATOR_EXCEPTIONc                      e Zd Zy)InvalidLocatorSpecificationNr  r?   r   r@   r  r    r  r   r  0F001INVALID_LOCATOR_SPECIFICATIONc                      e Zd Zy)InvalidGrantorNr  r?   r   r@   r  r    r  r   r  0L000INVALID_GRANTORc                      e Zd Zy)InvalidGrantOperationNr  r?   r   r@   r  r    r  r   r  0LP01INVALID_GRANT_OPERATIONc                      e Zd Zy)InvalidRoleSpecificationNr  r?   r   r@   r  r    r  r   r  0P000INVALID_ROLE_SPECIFICATIONc                      e Zd Zy)DiagnosticsExceptionNr  r?   r   r@   r  r    r  r   r  0Z000DIAGNOSTICS_EXCEPTIONc                      e Zd Zy).StackedDiagnosticsAccessedWithoutActiveHandlerNr  r?   r   r@   r  r    r  r   r  0Z0023STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLERc                      e Zd Zy)InvalidArgumentForXqueryNr  r?   r   r@   r  r    r  r   r  10608INVALID_ARGUMENT_FOR_XQUERYc                      e Zd Zy)CaseNotFoundNr  r?   r   r@   r  r    r  r   r  20000CASE_NOT_FOUNDc                      e Zd Zy)CardinalityViolationNr  r?   r   r@   r  r    r  r   r  21000CARDINALITY_VIOLATIONc                      e Zd Zy)DataExceptionNr  r?   r   r@   r  r    r  r   r  22000DATA_EXCEPTIONc                      e Zd Zy)StringDataRightTruncationNr  r?   r   r@   r  r    r  r   r  22001STRING_DATA_RIGHT_TRUNCATIONc                      e Zd Zy)NullValueNoIndicatorParameterNr  r?   r   r@   r  r    r  r   r  22002!NULL_VALUE_NO_INDICATOR_PARAMETERc                      e Zd Zy)NumericValueOutOfRangeNr  r?   r   r@   r  r     r  r   r  22003NUMERIC_VALUE_OUT_OF_RANGEc                      e Zd Zy)NullValueNotAllowedNr  r?   r   r@   r  r    r  r   r  22004NULL_VALUE_NOT_ALLOWEDc                      e Zd Zy)ErrorInAssignmentNr  r?   r   r@   r  r    r  r   r  22005ERROR_IN_ASSIGNMENTc                      e Zd Zy)InvalidDatetimeFormatNr  r?   r   r@   r  r    r  r   r  22007INVALID_DATETIME_FORMATc                      e Zd Zy)DatetimeFieldOverflowNr  r?   r   r@   r  r    r  r   r  22008DATETIME_FIELD_OVERFLOWc                      e Zd Zy) InvalidTimeZoneDisplacementValueNr  r?   r   r@   r   r     r  r   r   22009$INVALID_TIME_ZONE_DISPLACEMENT_VALUEc                      e Zd Zy)EscapeCharacterConflictNr  r?   r   r@   r  r    r  r   r  2200BESCAPE_CHARACTER_CONFLICTc                      e Zd Zy)InvalidUseOfEscapeCharacterNr  r?   r   r@   r  r    r  r   r  2200CINVALID_USE_OF_ESCAPE_CHARACTERc                      e Zd Zy)InvalidEscapeOctetNr  r?   r   r@   r  r     r  r   r  2200DINVALID_ESCAPE_OCTETc                      e Zd Zy)ZeroLengthCharacterStringNr  r?   r   r@   r  r  $  r  r   r  2200FZERO_LENGTH_CHARACTER_STRINGc                      e Zd Zy)MostSpecificTypeMismatchNr  r?   r   r@   r  r  (  r  r   r  2200GMOST_SPECIFIC_TYPE_MISMATCHc                      e Zd Zy)SequenceGeneratorLimitExceededNr  r?   r   r@   r  r  ,  r  r   r  2200H!SEQUENCE_GENERATOR_LIMIT_EXCEEDEDc                      e Zd Zy)NotAnXmlDocumentNr  r?   r   r@   r  r  0  r  r   r  2200LNOT_AN_XML_DOCUMENTc                      e Zd Zy)InvalidXmlDocumentNr  r?   r   r@   r   r   4  r  r   r   2200MINVALID_XML_DOCUMENTc                      e Zd Zy)InvalidXmlContentNr  r?   r   r@   r$  r$  8  r  r   r$  2200NINVALID_XML_CONTENTc                      e Zd Zy)InvalidXmlCommentNr  r?   r   r@   r(  r(  <  r  r   r(  2200SINVALID_XML_COMMENTc                      e Zd Zy)InvalidXmlProcessingInstructionNr  r?   r   r@   r,  r,  @  r  r   r,  2200T"INVALID_XML_PROCESSING_INSTRUCTIONc                      e Zd Zy)InvalidIndicatorParameterValueNr  r?   r   r@   r0  r0  D  r  r   r0  22010!INVALID_INDICATOR_PARAMETER_VALUEc                      e Zd Zy)SubstringErrorNr  r?   r   r@   r4  r4  H  r  r   r4  22011SUBSTRING_ERRORc                      e Zd Zy)DivisionByZeroNr  r?   r   r@   r8  r8  L  r  r   r8  22012DIVISION_BY_ZEROc                      e Zd Zy)InvalidPrecedingOrFollowingSizeNr  r?   r   r@   r<  r<  P  r  r   r<  22013#INVALID_PRECEDING_OR_FOLLOWING_SIZEc                      e Zd Zy)InvalidArgumentForNtileFunctionNr  r?   r   r@   r@  r@  T  r  r   r@  22014#INVALID_ARGUMENT_FOR_NTILE_FUNCTIONc                      e Zd Zy)IntervalFieldOverflowNr  r?   r   r@   rD  rD  X  r  r   rD  22015INTERVAL_FIELD_OVERFLOWc                      e Zd Zy)"InvalidArgumentForNthValueFunctionNr  r?   r   r@   rH  rH  \  r  r   rH  22016'INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTIONc                      e Zd Zy)InvalidCharacterValueForCastNr  r?   r   r@   rL  rL  `  r  r   rL  22018 INVALID_CHARACTER_VALUE_FOR_CASTc                      e Zd Zy)InvalidEscapeCharacterNr  r?   r   r@   rP  rP  d  r  r   rP  22019INVALID_ESCAPE_CHARACTERc                      e Zd Zy)InvalidRegularExpressionNr  r?   r   r@   rT  rT  h  r  r   rT  2201BINVALID_REGULAR_EXPRESSIONc                      e Zd Zy)InvalidArgumentForLogarithmNr  r?   r   r@   rX  rX  l  r  r   rX  2201EINVALID_ARGUMENT_FOR_LOGARITHMc                      e Zd Zy)InvalidArgumentForPowerFunctionNr  r?   r   r@   r\  r\  p  r  r   r\  2201F#INVALID_ARGUMENT_FOR_POWER_FUNCTIONc                      e Zd Zy)%InvalidArgumentForWidthBucketFunctionNr  r?   r   r@   r`  r`  t  r  r   r`  2201G*INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTIONc                      e Zd Zy)InvalidRowCountInLimitClauseNr  r?   r   r@   rd  rd  x  r  r   rd  2201W!INVALID_ROW_COUNT_IN_LIMIT_CLAUSEc                      e Zd Zy)#InvalidRowCountInResultOffsetClauseNr  r?   r   r@   rh  rh  |  r  r   rh  2201X)INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSEc                      e Zd Zy)CharacterNotInRepertoireNr  r?   r   r@   rl  rl    r  r   rl  22021CHARACTER_NOT_IN_REPERTOIREc                      e Zd Zy)IndicatorOverflowNr  r?   r   r@   rp  rp    r  r   rp  22022INDICATOR_OVERFLOWc                      e Zd Zy)InvalidParameterValueNr  r?   r   r@   rt  rt    r  r   rt  22023INVALID_PARAMETER_VALUEc                      e Zd Zy)UnterminatedCStringNr  r?   r   r@   rx  rx    r  r   rx  22024UNTERMINATED_C_STRINGc                      e Zd Zy)InvalidEscapeSequenceNr  r?   r   r@   r|  r|    r  r   r|  22025INVALID_ESCAPE_SEQUENCEc                      e Zd Zy)StringDataLengthMismatchNr  r?   r   r@   r  r    r  r   r  22026STRING_DATA_LENGTH_MISMATCHc                      e Zd Zy)	TrimErrorNr  r?   r   r@   r  r    r  r   r  22027
TRIM_ERRORc                      e Zd Zy)ArraySubscriptErrorNr  r?   r   r@   r  r    r  r   r  2202EARRAY_SUBSCRIPT_ERRORc                      e Zd Zy)InvalidTablesampleRepeatNr  r?   r   r@   r  r    r  r   r  2202GINVALID_TABLESAMPLE_REPEATc                      e Zd Zy)InvalidTablesampleArgumentNr  r?   r   r@   r  r    r  r   r  2202HINVALID_TABLESAMPLE_ARGUMENTc                      e Zd Zy)DuplicateJsonObjectKeyValueNr  r?   r   r@   r  r    r  r   r  22030DUPLICATE_JSON_OBJECT_KEY_VALUEc                      e Zd Zy))InvalidArgumentForSqlJsonDatetimeFunctionNr  r?   r   r@   r  r    r  r   r  22031/INVALID_ARGUMENT_FOR_SQL_JSON_DATETIME_FUNCTIONc                      e Zd Zy)InvalidJsonTextNr  r?   r   r@   r  r    r  r   r  22032INVALID_JSON_TEXTc                      e Zd Zy)InvalidSqlJsonSubscriptNr  r?   r   r@   r  r    r  r   r  22033INVALID_SQL_JSON_SUBSCRIPTc                      e Zd Zy)MoreThanOneSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22034MORE_THAN_ONE_SQL_JSON_ITEMc                      e Zd Zy)NoSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22035NO_SQL_JSON_ITEMc                      e Zd Zy)NonNumericSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22036NON_NUMERIC_SQL_JSON_ITEMc                      e Zd Zy)NonUniqueKeysInAJsonObjectNr  r?   r   r@   r  r    r  r   r  22037 NON_UNIQUE_KEYS_IN_A_JSON_OBJECTc                      e Zd Zy)SingletonSqlJsonItemRequiredNr  r?   r   r@   r  r    r  r   r  22038 SINGLETON_SQL_JSON_ITEM_REQUIREDc                      e Zd Zy)SqlJsonArrayNotFoundNr  r?   r   r@   r  r    r  r   r  22039SQL_JSON_ARRAY_NOT_FOUNDc                      e Zd Zy)SqlJsonMemberNotFoundNr  r?   r   r@   r  r    r  r   r  2203ASQL_JSON_MEMBER_NOT_FOUNDc                      e Zd Zy)SqlJsonNumberNotFoundNr  r?   r   r@   r  r    r  r   r  2203BSQL_JSON_NUMBER_NOT_FOUNDc                      e Zd Zy)SqlJsonObjectNotFoundNr  r?   r   r@   r  r    r  r   r  2203CSQL_JSON_OBJECT_NOT_FOUNDc                      e Zd Zy)TooManyJsonArrayElementsNr  r?   r   r@   r  r    r  r   r  2203DTOO_MANY_JSON_ARRAY_ELEMENTSc                      e Zd Zy)TooManyJsonObjectMembersNr  r?   r   r@   r  r    r  r   r  2203ETOO_MANY_JSON_OBJECT_MEMBERSc                      e Zd Zy)SqlJsonScalarRequiredNr  r?   r   r@   r  r    r  r   r  2203FSQL_JSON_SCALAR_REQUIREDc                      e Zd Zy)#SqlJsonItemCannotBeCastToTargetTypeNr  r?   r   r@   r  r    r  r   r  2203G+SQL_JSON_ITEM_CANNOT_BE_CAST_TO_TARGET_TYPEc                      e Zd Zy)FloatingPointExceptionNr  r?   r   r@   r  r    r  r   r  22P01FLOATING_POINT_EXCEPTIONc                      e Zd Zy)InvalidTextRepresentationNr  r?   r   r@   r  r    r  r   r  22P02INVALID_TEXT_REPRESENTATIONc                      e Zd Zy)InvalidBinaryRepresentationNr  r?   r   r@   r  r    r  r   r  22P03INVALID_BINARY_REPRESENTATIONc                      e Zd Zy)BadCopyFileFormatNr  r?   r   r@   r  r    r  r   r  22P04BAD_COPY_FILE_FORMATc                      e Zd Zy)UntranslatableCharacterNr  r?   r   r@   r  r    r  r   r  22P05UNTRANSLATABLE_CHARACTERc                      e Zd Zy)NonstandardUseOfEscapeCharacterNr  r?   r   r@   r  r     r  r   r  22P06#NONSTANDARD_USE_OF_ESCAPE_CHARACTERc                      e Zd Zy)IntegrityConstraintViolationNr  r?   r   r@   r  r    r  r   r  23000INTEGRITY_CONSTRAINT_VIOLATIONc                      e Zd Zy)RestrictViolationNr  r?   r   r@   r  r    r  r   r  23001RESTRICT_VIOLATIONc                      e Zd Zy)NotNullViolationNr  r?   r   r@   r  r    r  r   r  23502NOT_NULL_VIOLATIONc                      e Zd Zy)ForeignKeyViolationNr  r?   r   r@   r  r    r  r   r  23503FOREIGN_KEY_VIOLATIONc                      e Zd Zy)UniqueViolationNr  r?   r   r@   r   r     r  r   r   23505UNIQUE_VIOLATIONc                      e Zd Zy)CheckViolationNr  r?   r   r@   r  r    r  r   r  23514CHECK_VIOLATIONc                      e Zd Zy)ExclusionViolationNr  r?   r   r@   r  r    r  r   r  23P01EXCLUSION_VIOLATIONc                      e Zd Zy)InvalidCursorStateNr  r?   r   r@   r  r  &  r  r   r  24000INVALID_CURSOR_STATEc                      e Zd Zy)InvalidTransactionStateNr  r?   r   r@   r  r  -  r  r   r  25000INVALID_TRANSACTION_STATEc                      e Zd Zy)ActiveSqlTransactionNr  r?   r   r@   r  r  1  r  r   r  25001ACTIVE_SQL_TRANSACTIONc                      e Zd Zy)BranchTransactionAlreadyActiveNr  r?   r   r@   r  r  5  r  r   r  25002!BRANCH_TRANSACTION_ALREADY_ACTIVEc                      e Zd Zy)+InappropriateAccessModeForBranchTransactionNr  r?   r   r@   r  r  9  r  r   r  250030INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)/InappropriateIsolationLevelForBranchTransactionNr  r?   r   r@   r   r   =  r  r   r   250044INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)*NoActiveSqlTransactionForBranchTransactionNr  r?   r   r@   r$  r$  A  r  r   r$  250050NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)ReadOnlySqlTransactionNr  r?   r   r@   r(  r(  E  r  r   r(  25006READ_ONLY_SQL_TRANSACTIONc                      e Zd Zy)(SchemaAndDataStatementMixingNotSupportedNr  r?   r   r@   r,  r,  I  r  r   r,  25007.SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTEDc                      e Zd Zy)$HeldCursorRequiresSameIsolationLevelNr  r?   r   r@   r0  r0  M  r  r   r0  25008)HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVELc                      e Zd Zy)NoActiveSqlTransactionNr  r?   r   r@   r4  r4  Q  r  r   r4  25P01NO_ACTIVE_SQL_TRANSACTIONc                      e Zd Zy)InFailedSqlTransactionNr  r?   r   r@   r8  r8  U  r  r   r8  25P02IN_FAILED_SQL_TRANSACTIONc                      e Zd Zy)IdleInTransactionSessionTimeoutNr  r?   r   r@   r<  r<  Y  r  r   r<  25P03#IDLE_IN_TRANSACTION_SESSION_TIMEOUTc                      e Zd Zy)TransactionTimeoutNr  r?   r   r@   r@  r@  ]  r  r   r@  25P04TRANSACTION_TIMEOUTc                      e Zd Zy)InvalidSqlStatementNameNr  r?   r   r@   rD  rD  d  r  r   rD  26000INVALID_SQL_STATEMENT_NAMEc                      e Zd Zy)TriggeredDataChangeViolationNr  r?   r   r@   rH  rH  k  r  r   rH  27000TRIGGERED_DATA_CHANGE_VIOLATIONc                      e Zd Zy)!InvalidAuthorizationSpecificationNr  r?   r   r@   rL  rL  r  r  r   rL  28000#INVALID_AUTHORIZATION_SPECIFICATIONc                      e Zd Zy)InvalidPasswordNr  r?   r   r@   rP  rP  v  r  r   rP  28P01INVALID_PASSWORDc                      e Zd Zy)'DependentPrivilegeDescriptorsStillExistNr  r?   r   r@   rT  rT  }  r  r   rT  2B000+DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXISTc                      e Zd Zy)DependentObjectsStillExistNr  r?   r   r@   rX  rX    r  r   rX  2BP01DEPENDENT_OBJECTS_STILL_EXISTc                      e Zd Zy)InvalidTransactionTerminationNr  r?   r   r@   r\  r\    r  r   r\  2D000INVALID_TRANSACTION_TERMINATIONc                      e Zd Zy)SqlRoutineExceptionNr  r?   r   r@   r`  r`    r  r   r`  2F000SQL_ROUTINE_EXCEPTIONc                      e Zd Zy)ModifyingSqlDataNotPermittedNr  r?   r   r@   rd  rd    r  r   rd  2F002 MODIFYING_SQL_DATA_NOT_PERMITTEDc                      e Zd Zy)ProhibitedSqlStatementAttemptedNr  r?   r   r@   rh  rh    r  r   rh  2F003"PROHIBITED_SQL_STATEMENT_ATTEMPTEDc                      e Zd Zy)ReadingSqlDataNotPermittedNr  r?   r   r@   rl  rl    r  r   rl  2F004READING_SQL_DATA_NOT_PERMITTEDc                      e Zd Zy)!FunctionExecutedNoReturnStatementNr  r?   r   r@   rp  rp    r  r   rp  2F005%FUNCTION_EXECUTED_NO_RETURN_STATEMENTc                      e Zd Zy)InvalidCursorNameNr  r?   r   r@   rt  rt    r  r   rt  34000INVALID_CURSOR_NAMEc                      e Zd Zy)ExternalRoutineExceptionNr  r?   r   r@   rx  rx    r  r   rx  38000EXTERNAL_ROUTINE_EXCEPTIONc                      e Zd Zy)ContainingSqlNotPermittedNr  r?   r   r@   r|  r|    r  r   r|  38001CONTAINING_SQL_NOT_PERMITTEDc                      e Zd Zy)ModifyingSqlDataNotPermittedExtNr  r?   r   r@   r  r    r  r   r  38002c                      e Zd Zy)"ProhibitedSqlStatementAttemptedExtNr  r?   r   r@   r  r    r  r   r  38003c                      e Zd Zy)ReadingSqlDataNotPermittedExtNr  r?   r   r@   r  r    r  r   r  38004c                      e Zd Zy)"ExternalRoutineInvocationExceptionNr  r?   r   r@   r  r    r  r   r  39000%EXTERNAL_ROUTINE_INVOCATION_EXCEPTIONc                      e Zd Zy)InvalidSqlstateReturnedNr  r?   r   r@   r  r    r  r   r  39001INVALID_SQLSTATE_RETURNEDc                      e Zd Zy)NullValueNotAllowedExtNr  r?   r   r@   r  r    r  r   r  39004c                      e Zd Zy)TriggerProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P01TRIGGER_PROTOCOL_VIOLATEDc                      e Zd Zy)SrfProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P02SRF_PROTOCOL_VIOLATEDc                      e Zd Zy)EventTriggerProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P03EVENT_TRIGGER_PROTOCOL_VIOLATEDc                      e Zd Zy)SavepointExceptionNr  r?   r   r@   r  r    r  r   r  3B000SAVEPOINT_EXCEPTIONc                      e Zd Zy)InvalidSavepointSpecificationNr  r?   r   r@   r  r    r  r   r  3B001INVALID_SAVEPOINT_SPECIFICATIONc                      e Zd Zy)InvalidCatalogNameNr  r?   r   r@   r  r    r  r   r  3D000INVALID_CATALOG_NAMEc                      e Zd Zy)InvalidSchemaNameNr  r?   r   r@   r  r    r  r   r  3F000INVALID_SCHEMA_NAMEc                      e Zd Zy)TransactionRollbackNr  r?   r   r@   r  r    r  r   r  40000TRANSACTION_ROLLBACKc                      e Zd Zy)SerializationFailureNr  r?   r   r@   r  r    r  r   r  40001SERIALIZATION_FAILUREc                      e Zd Zy)'TransactionIntegrityConstraintViolationNr  r?   r   r@   r  r     r  r   r  40002*TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATIONc                      e Zd Zy)StatementCompletionUnknownNr  r?   r   r@   r  r    r  r   r  40003STATEMENT_COMPLETION_UNKNOWNc                      e Zd Zy)DeadlockDetectedNr  r?   r   r@   r  r    r  r   r  40P01DEADLOCK_DETECTEDc                      e Zd Zy) SyntaxErrorOrAccessRuleViolationNr  r?   r   r@   r  r    r  r   r  42000%SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATIONc                      e Zd Zy)InsufficientPrivilegeNr  r?   r   r@   r  r    r  r   r  42501INSUFFICIENT_PRIVILEGEc                      e Zd Zy)SyntaxErrorNr  r?   r   r@   r  r    r  r   r  42601SYNTAX_ERRORc                      e Zd Zy)InvalidNameNr  r?   r   r@   r  r    r  r   r  42602INVALID_NAMEc                      e Zd Zy)InvalidColumnDefinitionNr  r?   r   r@   r  r    r  r   r  42611INVALID_COLUMN_DEFINITIONc                      e Zd Zy)NameTooLongNr  r?   r   r@   r  r  #  r  r   r  42622NAME_TOO_LONGc                      e Zd Zy)DuplicateColumnNr  r?   r   r@   r  r  '  r  r   r  42701DUPLICATE_COLUMNc                      e Zd Zy)AmbiguousColumnNr  r?   r   r@   r  r  +  r  r   r  42702AMBIGUOUS_COLUMNc                      e Zd Zy)UndefinedColumnNr  r?   r   r@   r  r  /  r  r   r  42703UNDEFINED_COLUMNc                      e Zd Zy)UndefinedObjectNr  r?   r   r@   r  r  3  r  r   r  42704UNDEFINED_OBJECTc                      e Zd Zy)DuplicateObjectNr  r?   r   r@   r  r  7  r  r   r  42710DUPLICATE_OBJECTc                      e Zd Zy)DuplicateAliasNr  r?   r   r@   r  r  ;  r  r   r  42712DUPLICATE_ALIASc                      e Zd Zy)DuplicateFunctionNr  r?   r   r@   r  r  ?  r  r   r  42723DUPLICATE_FUNCTIONc                      e Zd Zy)AmbiguousFunctionNr  r?   r   r@   r  r  C  r  r   r  42725AMBIGUOUS_FUNCTIONc                      e Zd Zy)GroupingErrorNr  r?   r   r@   r  r  G  r  r   r  42803GROUPING_ERRORc                      e Zd Zy)DatatypeMismatchNr  r?   r   r@   r   r   K  r  r   r   42804DATATYPE_MISMATCHc                      e Zd Zy)WrongObjectTypeNr  r?   r   r@   r  r  O  r  r   r  42809WRONG_OBJECT_TYPEc                      e Zd Zy)InvalidForeignKeyNr  r?   r   r@   r  r  S  r  r   r  42830INVALID_FOREIGN_KEYc                      e Zd Zy)CannotCoerceNr  r?   r   r@   r  r  W  r  r   r  42846CANNOT_COERCEc                      e Zd Zy)UndefinedFunctionNr  r?   r   r@   r  r  [  r  r   r  42883UNDEFINED_FUNCTIONc                      e Zd Zy)GeneratedAlwaysNr  r?   r   r@   r  r  _  r  r   r  428C9GENERATED_ALWAYSc                      e Zd Zy)ReservedNameNr  r?   r   r@   r  r  c  r  r   r  42939RESERVED_NAMEc                      e Zd Zy)UndefinedTableNr  r?   r   r@   r  r  g  r  r   r  42P01UNDEFINED_TABLEc                      e Zd Zy)UndefinedParameterNr  r?   r   r@   r   r   k  r  r   r   42P02UNDEFINED_PARAMETERc                      e Zd Zy)DuplicateCursorNr  r?   r   r@   r$  r$  o  r  r   r$  42P03DUPLICATE_CURSORc                      e Zd Zy)DuplicateDatabaseNr  r?   r   r@   r(  r(  s  r  r   r(  42P04DUPLICATE_DATABASEc                      e Zd Zy)DuplicatePreparedStatementNr  r?   r   r@   r,  r,  w  r  r   r,  42P05DUPLICATE_PREPARED_STATEMENTc                      e Zd Zy)DuplicateSchemaNr  r?   r   r@   r0  r0  {  r  r   r0  42P06DUPLICATE_SCHEMAc                      e Zd Zy)DuplicateTableNr  r?   r   r@   r4  r4    r  r   r4  42P07DUPLICATE_TABLEc                      e Zd Zy)AmbiguousParameterNr  r?   r   r@   r8  r8    r  r   r8  42P08AMBIGUOUS_PARAMETERc                      e Zd Zy)AmbiguousAliasNr  r?   r   r@   r<  r<    r  r   r<  42P09AMBIGUOUS_ALIASc                      e Zd Zy)InvalidColumnReferenceNr  r?   r   r@   r@  r@    r  r   r@  42P10INVALID_COLUMN_REFERENCEc                      e Zd Zy)InvalidCursorDefinitionNr  r?   r   r@   rD  rD    r  r   rD  42P11INVALID_CURSOR_DEFINITIONc                      e Zd Zy)InvalidDatabaseDefinitionNr  r?   r   r@   rH  rH    r  r   rH  42P12INVALID_DATABASE_DEFINITIONc                      e Zd Zy)InvalidFunctionDefinitionNr  r?   r   r@   rL  rL    r  r   rL  42P13INVALID_FUNCTION_DEFINITIONc                      e Zd Zy)"InvalidPreparedStatementDefinitionNr  r?   r   r@   rP  rP    r  r   rP  42P14%INVALID_PREPARED_STATEMENT_DEFINITIONc                      e Zd Zy)InvalidSchemaDefinitionNr  r?   r   r@   rT  rT    r  r   rT  42P15INVALID_SCHEMA_DEFINITIONc                      e Zd Zy)InvalidTableDefinitionNr  r?   r   r@   rX  rX    r  r   rX  42P16INVALID_TABLE_DEFINITIONc                      e Zd Zy)InvalidObjectDefinitionNr  r?   r   r@   r\  r\    r  r   r\  42P17INVALID_OBJECT_DEFINITIONc                      e Zd Zy)IndeterminateDatatypeNr  r?   r   r@   r`  r`    r  r   r`  42P18INDETERMINATE_DATATYPEc                      e Zd Zy)InvalidRecursionNr  r?   r   r@   rd  rd    r  r   rd  42P19INVALID_RECURSIONc                      e Zd Zy)WindowingErrorNr  r?   r   r@   rh  rh    r  r   rh  42P20WINDOWING_ERRORc                      e Zd Zy)CollationMismatchNr  r?   r   r@   rl  rl    r  r   rl  42P21COLLATION_MISMATCHc                      e Zd Zy)IndeterminateCollationNr  r?   r   r@   rp  rp    r  r   rp  42P22INDETERMINATE_COLLATIONc                      e Zd Zy)WithCheckOptionViolationNr  r?   r   r@   rt  rt    r  r   rt  44000WITH_CHECK_OPTION_VIOLATIONc                      e Zd Zy)InsufficientResourcesNr  r?   r   r@   rx  rx    r  r   rx  53000INSUFFICIENT_RESOURCESc                      e Zd Zy)DiskFullNr  r?   r   r@   r|  r|    r  r   r|  53100	DISK_FULLc                      e Zd Zy)OutOfMemoryNr  r?   r   r@   r  r    r  r   r  53200OUT_OF_MEMORYc                      e Zd Zy)TooManyConnectionsNr  r?   r   r@   r  r    r  r   r  53300TOO_MANY_CONNECTIONSc                      e Zd Zy)ConfigurationLimitExceededNr  r?   r   r@   r  r    r  r   r  53400CONFIGURATION_LIMIT_EXCEEDEDc                      e Zd Zy)ProgramLimitExceededNr  r?   r   r@   r  r    r  r   r  54000PROGRAM_LIMIT_EXCEEDEDc                      e Zd Zy)StatementTooComplexNr  r?   r   r@   r  r    r  r   r  54001STATEMENT_TOO_COMPLEXc                      e Zd Zy)TooManyColumnsNr  r?   r   r@   r  r    r  r   r  54011TOO_MANY_COLUMNSc                      e Zd Zy)TooManyArgumentsNr  r?   r   r@   r  r    r  r   r  54023TOO_MANY_ARGUMENTSc                      e Zd Zy)ObjectNotInPrerequisiteStateNr  r?   r   r@   r  r    r  r   r  55000 OBJECT_NOT_IN_PREREQUISITE_STATEc                      e Zd Zy)ObjectInUseNr  r?   r   r@   r  r    r  r   r  55006OBJECT_IN_USEc                      e Zd Zy)CantChangeRuntimeParamNr  r?   r   r@   r  r    r  r   r  55P02CANT_CHANGE_RUNTIME_PARAMc                      e Zd Zy)LockNotAvailableNr  r?   r   r@   r  r    r  r   r  55P03LOCK_NOT_AVAILABLEc                      e Zd Zy)UnsafeNewEnumValueUsageNr  r?   r   r@   r  r    r  r   r  55P04UNSAFE_NEW_ENUM_VALUE_USAGEc                      e Zd Zy)OperatorInterventionNr  r?   r   r@   r  r  
  r  r   r  57000OPERATOR_INTERVENTIONc                      e Zd Zy)QueryCanceledNr  r?   r   r@   r  r    r  r   r  57014QUERY_CANCELEDc                      e Zd Zy)AdminShutdownNr  r?   r   r@   r  r    r  r   r  57P01ADMIN_SHUTDOWNc                      e Zd Zy)CrashShutdownNr  r?   r   r@   r  r    r  r   r  57P02CRASH_SHUTDOWNc                      e Zd Zy)CannotConnectNowNr  r?   r   r@   r  r    r  r   r  57P03CANNOT_CONNECT_NOWc                      e Zd Zy)DatabaseDroppedNr  r?   r   r@   r  r    r  r   r  57P04DATABASE_DROPPEDc                      e Zd Zy)IdleSessionTimeoutNr  r?   r   r@   r  r  "  r  r   r  57P05IDLE_SESSION_TIMEOUTc                      e Zd Zy)SystemErrorNr  r?   r   r@   r  r  )  r  r   r  58000SYSTEM_ERRORc                      e Zd Zy)IoErrorNr  r?   r   r@   r  r  -  r  r   r  58030IO_ERRORc                      e Zd Zy)UndefinedFileNr  r?   r   r@   r  r  1  r  r   r  58P01UNDEFINED_FILEc                      e Zd Zy)DuplicateFileNr  r?   r   r@   r  r  5  r  r   r  58P02DUPLICATE_FILEc                      e Zd Zy)FileNameTooLongNr  r?   r   r@   r  r  9  r  r   r  58P03FILE_NAME_TOO_LONGc                      e Zd Zy)SnapshotTooOldNr  r?   r   r@   r  r  @  r  r   r  72000SNAPSHOT_TOO_OLDc                      e Zd Zy)ConfigFileErrorNr  r?   r   r@   r  r  G  r  r   r  F0000CONFIG_FILE_ERRORc                      e Zd Zy)LockFileExistsNr  r?   r   r@   r  r  K  r  r   r  F0001LOCK_FILE_EXISTSc                      e Zd Zy)FdwErrorNr  r?   r   r@   r  r  R  r  r   r  HV000	FDW_ERRORc                      e Zd Zy)FdwOutOfMemoryNr  r?   r   r@   r  r  V  r  r   r  HV001FDW_OUT_OF_MEMORYc                      e Zd Zy)FdwDynamicParameterValueNeededNr  r?   r   r@   r  r  Z  r  r   r  HV002"FDW_DYNAMIC_PARAMETER_VALUE_NEEDEDc                      e Zd Zy)FdwInvalidDataTypeNr  r?   r   r@   r  r  ^  r  r   r  HV004FDW_INVALID_DATA_TYPEc                      e Zd Zy)FdwColumnNameNotFoundNr  r?   r   r@   r  r  b  r  r   r  HV005FDW_COLUMN_NAME_NOT_FOUNDc                      e Zd Zy)FdwInvalidDataTypeDescriptorsNr  r?   r   r@   r   r   f  r  r   r   HV006!FDW_INVALID_DATA_TYPE_DESCRIPTORSc                      e Zd Zy)FdwInvalidColumnNameNr  r?   r   r@   r  r  j  r  r   r  HV007FDW_INVALID_COLUMN_NAMEc                      e Zd Zy)FdwInvalidColumnNumberNr  r?   r   r@   r  r  n  r  r   r  HV008FDW_INVALID_COLUMN_NUMBERc                      e Zd Zy)FdwInvalidUseOfNullPointerNr  r?   r   r@   r  r  r  r  r   r  HV009FDW_INVALID_USE_OF_NULL_POINTERc                      e Zd Zy)FdwInvalidStringFormatNr  r?   r   r@   r  r  v  r  r   r  HV00AFDW_INVALID_STRING_FORMATc                      e Zd Zy)FdwInvalidHandleNr  r?   r   r@   r  r  z  r  r   r  HV00BFDW_INVALID_HANDLEc                      e Zd Zy)FdwInvalidOptionIndexNr  r?   r   r@   r  r  ~  r  r   r  HV00CFDW_INVALID_OPTION_INDEXc                      e Zd Zy)FdwInvalidOptionNameNr  r?   r   r@   r  r    r  r   r  HV00DFDW_INVALID_OPTION_NAMEc                      e Zd Zy)FdwOptionNameNotFoundNr  r?   r   r@   r   r     r  r   r   HV00JFDW_OPTION_NAME_NOT_FOUNDc                      e Zd Zy)FdwReplyHandleNr  r?   r   r@   r$  r$    r  r   r$  HV00KFDW_REPLY_HANDLEc                      e Zd Zy)FdwUnableToCreateExecutionNr  r?   r   r@   r(  r(    r  r   r(  HV00LFDW_UNABLE_TO_CREATE_EXECUTIONc                      e Zd Zy)FdwUnableToCreateReplyNr  r?   r   r@   r,  r,    r  r   r,  HV00MFDW_UNABLE_TO_CREATE_REPLYc                      e Zd Zy)FdwUnableToEstablishConnectionNr  r?   r   r@   r0  r0    r  r   r0  HV00N"FDW_UNABLE_TO_ESTABLISH_CONNECTIONc                      e Zd Zy)FdwNoSchemasNr  r?   r   r@   r4  r4    r  r   r4  HV00PFDW_NO_SCHEMASc                      e Zd Zy)FdwSchemaNotFoundNr  r?   r   r@   r8  r8    r  r   r8  HV00QFDW_SCHEMA_NOT_FOUNDc                      e Zd Zy)FdwTableNotFoundNr  r?   r   r@   r<  r<    r  r   r<  HV00RFDW_TABLE_NOT_FOUNDc                      e Zd Zy)FdwFunctionSequenceErrorNr  r?   r   r@   r@  r@    r  r   r@  HV010FDW_FUNCTION_SEQUENCE_ERRORc                      e Zd Zy)FdwTooManyHandlesNr  r?   r   r@   rD  rD    r  r   rD  HV014FDW_TOO_MANY_HANDLESc                      e Zd Zy)$FdwInconsistentDescriptorInformationNr  r?   r   r@   rH  rH    r  r   rH  HV021'FDW_INCONSISTENT_DESCRIPTOR_INFORMATIONc                      e Zd Zy)FdwInvalidAttributeValueNr  r?   r   r@   rL  rL    r  r   rL  HV024FDW_INVALID_ATTRIBUTE_VALUEc                      e Zd Zy)$FdwInvalidStringLengthOrBufferLengthNr  r?   r   r@   rP  rP    r  r   rP  HV090*FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTHc                      e Zd Zy)#FdwInvalidDescriptorFieldIdentifierNr  r?   r   r@   rT  rT    r  r   rT  HV091'FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIERc                      e Zd Zy)PlpgsqlErrorNr  r?   r   r@   rX  rX    r  r   rX  P0000PLPGSQL_ERRORc                      e Zd Zy)RaiseExceptionNr  r?   r   r@   r\  r\    r  r   r\  P0001RAISE_EXCEPTIONc                      e Zd Zy)NoDataFoundNr  r?   r   r@   r`  r`    r  r   r`  P0002NO_DATA_FOUNDc                      e Zd Zy)TooManyRowsNr  r?   r   r@   rd  rd    r  r   rd  P0003TOO_MANY_ROWSc                      e Zd Zy)AssertFailureNr  r?   r   r@   rh  rh    r  r   rh  P0004ASSERT_FAILUREc                      e Zd Zy)InternalError_Nr  r?   r   r@   rl  rl    r  r   rl  XX000INTERNAL_ERRORc                      e Zd Zy)DataCorruptedNr  r?   r   r@   rp  rp    r  r   rp  XX001DATA_CORRUPTEDc                      e Zd Zy)IndexCorruptedNr  r?   r   r@   rt  rt    r  r   rt  XX002INDEX_CORRUPTED)r   r   r   r   )r   r   r   r   )r   r.   r   ztype[Error]rM  )rV  r   rY   r.   r   r   )r   r   r   zTypeGuard[PGresult](;  r   
__future__r   typingr   r   r   r   r   asyncior	   dataclassesr
   r   r   collections.abcr   r   pq.abcr   r   	pq._enumsr   r   r   r   pq.miscr   r   rG  r(   r   r   r   r   r   r   r   r   r   r   r   r   r>   r   r   r   r  r  r  r  r   r   rS  rX  r   rU  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  r4  r8  r<  r@  rD  rH  rL  rP  rT  rX  r\  r`  rd  rh  rl  rp  rt  rx  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  r4  r8  r<  r@  rD  rH  rL  rP  rT  rX  r\  r`  rd  rh  rl  rp  rt  rx  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(  r,  r0  r4  r8  r<  r@  rD  rH  rL  rP  rT  rX  r\  r`  rd  rh  rl  rp  rt  rx  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  r4  r8  r<  r@  rD  rH  rL  rP  rT  rX  r\  r`  rd  rh  rl  rp  rt  KeyboardInterrupt_NO_TRACEBACKr?   r   r@   <module>r     sf  ( # E E " 0 0 . $ U U1$sEDL'8"99D@	9 @$&	! &   D"i <I <~U "E " 
} 
] M }  ( * & ` `F'S(,"
"
" 	
" 	
	"
 	
" 	)" 	." 	-" 	-" 	
" 	
" 	
" 	-" 	-" 	
"  	
!"" 	
#"$ 	
%"& 	
'"( 	
)"* 	
+", 	
-". 	
/"0 	
1"2 	
3"4 	
5"6 	
7"8 	
9": 	
;"< 	="> 	?"@ 	A"B C"Z	]	y		M	C			7		*	-		.>	D		-	2		4D	J		(	+		#3	7		(	+		}	3		+	.		=	7		}	*		-	6		]	(		M	0		}	3		=	.		]	L		/	4		#	'		+	.		I	'				5		I	:		Y	3		)	/				,		I	0		I	0		y	=		i	2		)	8			-				5		y	4		Y	:		y	,			-				,				,		i	;		Y	:		Y	(		Y	)		i	<		i	<		I	0			@		9	9		Y	1		y	3		)	7		i	<		I	C		9	:		)	B		y	4				+		I	0		)	.		I	0		y	4				|		)	.		y	3			5		)	8				H		i	*		i	3		Y	4		I	)		I	2			9		9	9		9	1		I	2		I	2		I	2		y	5		y	5		I	1		)	D		Y	1				4		)	6				-		i	1		i	<		>	7			+		~	+		.	.		n	)		^	(			,			-		m	2		=	/		]	:		-	I		m	M			I		]	2		}	G		=	B		]	2		]	2		m	<			,		.	3		#3	8		(8	<		&	)		m	D			6		M	8		*	.		#3	9		&6	;		!1	7		(8	>		(	,		/	3		 0	5		&6	9		)9	;		$4	7		)9	>		.	2		-	/		.	2		*	.		#3	8		)	,		$4	8		)	-		(	,		*	-		+	.		.>	C		!1	5		'	*		'7	>		,	/		"	~		"	~		.	2		"			&	)		&	)		&	)		&	)		&	)		%	(		(	+		(	+		$	'		'	*		&	*		(	,		#			(	+		&	)		#			%	(		)	,		&	)		(	+		!1	5		&	)		%	(		)	,		%	(		-	1		.	2		 0	4		 0	4		)9	>		.	2		-	1		.	2		,	/		'	*		%	(		(	+		-	0		/	4		,	/			{		"			)	-		!1	5		+	/		*	.		%	)		'	+		#3	9		"			-	2		'	+		.	4		+	.		$	'		$	'		$	'		'	+		&	)		)	-		"	~			z		$	'		$	'		&	+		]	)		&	*		%	)			{		%	*		%5	;		)	.		,	2		$4	:		+	0		-	2		!1	8		-	2		'	+		,	1		+	0		,	2		%	)		!1	7		-	3		%5	;		#	'		(	-		'	,		/	4		(	-		+;	@		/	4		+;	C		*:	@		#			%	(		"			"			$	'		]	'		M	'		]	(	 )>:r   