
     h                    X%   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 dZded<   i Zded<   e G d d             Z d5d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(      Z- G d) d*e(      Z. G d+ d,e(      Z/ G d- d.      Z0d6d/Z1d7d0Z2d8d9d1Z3d:d2Z4d7d3Z5d7d4Z6i d5e(d6e,d7e+d8e+d9e'd:e)d;e*d<e*d=e+d>e(d?e(d@e*dAe*dBe(dCe+dDe(dEe(e(e+e+e(e+e+e(e(e(e(e(e(e(e+e*dFZ7 G dG dHe&dIdJK      Z8 G dL dMe&dNdOK      Z9 G dP dQe&dRdSK      Z: G dT dUe(dVdWK      Z; G dX dYe(dZd[K      Z< G d\ d]e(d^d_K      Z= G d` dae(dbdcK      Z> G dd dee(dfdgK      Z? G dh die(djdkK      Z@ G dl dme(dndoK      ZA G dp dqe&drdsK      ZB G dt due,dvdwK      ZC G dx dye&dzd{K      ZD G d| d}e&d~dK      ZE G d de&ddK      ZF G d de&ddK      ZG G d de&ddK      ZH G d de&ddK      ZI G d de&ddK      ZJ G d de&ddK      ZK G d de+ddK      ZL G d de+ddK      ZM G d de'ddK      ZN G d de'ddK      ZO G d de'ddK      ZP G d de'ddK      ZQ G d de'ddK      ZR G d de'ddK      ZS G d de'ddK      ZT G d de'ddK      ZU G d de'ddìK      ZV G dĄ de'ddǬK      ZW G dȄ de'ddˬK      ZX G d̄ de'ddϬK      ZY G dЄ de'ddӬK      ZZ G dԄ de'dd׬K      Z[ G d؄ de'dd۬K      Z\ G d܄ de'dd߬K      Z] G d de'ddK      Z^ G d de'ddK      Z_ G d de'ddK      Z` G d de'ddK      Za G d de'ddK      Zb G d de'ddK      Zc G d de'ddK      Zd G d de'ddK      Ze G d  de'ddK      Zf G d de'ddK      Zg G d d	e'd
dK      Zh G d de'ddK      Zi G d de'ddK      Zj G d de'ddK      Zk G d de'ddK      Zl G d de'ddK      Zm G d  d!e'd"d#K      Zn G d$ d%e'd&d'K      Zo G d( d)e'd*d+K      Zp G d, d-e'd.d/K      Zq G d0 d1e'd2d3K      Zr G d4 d5e'd6d7K      Zs G d8 d9e'd:d;K      Zt G d< d=e'd>d?K      Zu G d@ dAe'dBdCK      Zv G dD dEe'dFdGK      Zw G dH dIe'dJdKK      Zx G dL dMe'dNdOK      Zy G dP dQe'dRdSK      Zz G dT dUe'dVdWK      Z{ G dX dYe'dZd[K      Z| G d\ d]e'd^d_K      Z} G d` dae'dbdcK      Z~ G dd dee'dfdgK      Z G dh die'djdkK      Z G dl dme'dndoK      Z G dp dqe'drdsK      Z G dt due'dvdwK      Z G dx dye'dzd{K      Z G d| d}e'd~dK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de'ddK      Z G d de)ddK      Z G d de)ddK      Z G d de)ddK      Z G d de)ddK      Z G d de)ddìK      Z G dĄ de)dƐdǬK      Z G dȄ de)dʐdˬK      Z G d̄ de*dΐdϬK      Z G dЄ de*dҐdӬK      Z G dԄ de*d֐d׬K      Z G d؄ de*dڐd۬K      Z G d܄ de*dސd߬K      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d  de*ddK      Z G d de+ddK      Z G d d	e(d
dK      Z G d de(ddK      Z G d de(ddK      Z G d de*ddK      Z G d de*ddK      Z G d de*ddK      Z G d  d!e(d"d#K      Z G d$ d%e(d&d'K      Z G d( d)e(d*d+K      Z G d, d-e(d.d/K      Z G d0 d1e(d2d3K      Z G d4 d5e+d6d7K      Z G d8 d9e(d:d;K      Z G d< d=e(d>d?K      Z G d@ dAe(dBd'K      Z G dC dDe(dEd+K      Z G dF dGe(dHd/K      Z G dI dJe(dKdLK      Z G dM dNe(dOdPK      Z G dQ dRe(dSdK      Z G dT dUe(dVdWK      Z G dX dYe(dZd[K      Z G d\ d]e(d^d_K      Z G d` dae(dbdcK      Z G dd dee(dfdgK      Z G dh die+djdkK      Z G dl dme+dndoK      Z G dp dqe(drdsK      Z G dt due(dvdwK      Z G dx dye(dzd{K      Z G d| d}e(d~dK      Z G d de(ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddìK      Z G dĄ de+dƐdǬK      Z G dȄ de+dʐdˬK      Z G d̄ de+dΐdϬK      Z G dЄ de+dҐdӬK      Z G dԄ de+d֐d׬K      Z G d؄ de+dڐd۬K      Z G d܄ de+dސd߬K      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d  de+ddK      Z G d de+ddK      Z G d d	e+d
dK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d de+ddK      Z G d  d!e+d"d#K      Z G d$ d%e+d&d'K      Z G d( d)e+d*d+K      Z G d, d-e+d.d/K      Z G d0 d1e+d2d3K      Z G d4 d5e+d6d7K      Z G d8 d9e(d:d;K      Z G d< d=e(d>d?K      Z G d@ dAe(dBdCK      Z G dD dEe(dFdGK      Z G dH dIe(dJdKK      Z G dL dMe(dNdOK      Z G dP dQe(dRdSK      Z G dT dUe(dVdWK      Z G dX dYe(dZd[K      Z G d\ d]e(d^d_K      Z G d` dae(dbdcK      Z G dd dee(dfdgK      Z  G dh die(djdkK      Z G dl dme(dndoK      Z G dp dqe(drdsK      Z G dt due(dvdwK      Z G dx dye(dzd{K      Z G d| d}e(d~dK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z	 G d de(ddK      Z
 G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de&ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddK      Z G d de(ddìK      Z G dĄ de(dƐdǬK      Z G dȄ de(dʐdˬK      Z G d̄ de(dΐdϬK      Z G dЄ de(dҐdӬK      Z G dԄ de(d֐d׬K      Z G d؄ de(dڐd۬K      Z G d܄ de(dސd߬K      Z G d de(ddK      Z G d de(ddK      Z  G d de(ddK      Z! G d de(ddK      Z" G d de(ddK      Z# G d de(ddK      Z$ G d de(ddK      Z% G d de(ddK      Z& G d  de(ddK      Z' G d de(ddK      Z( G d d	e(d
dK      Z) G d de(ddK      Z* G d de(ddK      Z+ G d de+ddK      Z, G d de+ddK      Z- G d de+ddK      Z. G d  d!e+d"d#K      Z/ G d$ d%e+d&d'K      Z0 G d( d)e*d*d+K      Z1 G d, d-e*d.d/K      Z2 G d0 d1e*d2d3K      Z3e$e4e
fZ5y4(;  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CallableNoReturnSequence)CancelledError)	dataclassfieldfields   )PGconnPGresult)	TypeAlias	TypeGuard)
ConnStatusDiagnosticFieldPipelineStatusTransactionStatus)ConninfoOptionPGnotifyz)PGresult | dict[int, bytes | None] | Noner   	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$<   e$dWd%       Z%e&dXd&       Z'e&dXd'       Z(dWd(Z)dYd)Z*dWd*Z+dZd[d+Z,dWd,Z-dWd-Z.e&dXd.       Z/dXd/Z0e1dWd0       Z2dXd1Z3d\d2Z4dXd3Z5dXd4Z6dXd5Z7dXd6Z8dXd7Z9dXd8Z:dXd9Z;dXd:Z<dXd;Z=dXd<Z>dXd=Z?dXd>Z@dXd?ZAdXd@ZBdWdAZCdWdBZDdWdCZEdWdDZFdWdEZGd]dFZHdWdGZIdWdHZJdWdIZKdXdJZLdXdKZMdXdLZNdXdMZOdXdNZPdWdOZQdXdPZRdXdQZSdXdRZTdWdSZUdWdTZVdWdUZWdWdVZXy )^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   server_versionbackend_pidFboolneeds_passwordused_password
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   H/var/www/tech_portal/venv/lib/python3.12/site-packages/psycopg/errors.py_raisezFinishedPGconn._raiseK   s    9::r   c                    t        |  d      Nz is unusable	TypeErrorclsargss     r=   connectzFinishedPGconn.connectO       3%|,--r   c                    t        |  d      r@   rA   rC   s     r=   connect_startzFinishedPGconn.connect_startS   rG   r   c                $    | j                          y Nr>   selfs    r=   connect_pollzFinishedPGconn.connect_pollW       r   c                     y rK   r<   rM   s    r=   finishzFinishedPGconn.finishZ   s    r   c                $    | j                          y rK   rL   rM   s    r=   resetzFinishedPGconn.reset]   rP   r   c                     yr:   r<   )rN   encodings     r=   get_error_messagez FinishedPGconn.get_error_message`   s    )r   c                $    | j                          y rK   rL   rM   s    r=   reset_startzFinishedPGconn.reset_startc   rP   r   c                $    | j                          y rK   rL   rM   s    r=   
reset_pollzFinishedPGconn.reset_pollf   rP   r   c                    t        |  d      r@   rA   rC   s     r=   pingzFinishedPGconn.pingi   rG   r   c                $    | j                          y rK   rL   rN   rE   s     r=   parameter_statuszFinishedPGconn.parameter_statusm   rP   r   c                $    | j                          y rK   rL   rM   s    r=   socketzFinishedPGconn.socketp   s    r   c                $    | j                          y rK   rL   r_   s     r=   exec_zFinishedPGconn.exec_t   rP   r   c                $    | j                          y rK   rL   r_   s     r=   
send_queryzFinishedPGconn.send_queryw   rP   r   c                $    | j                          y rK   rL   r_   s     r=   exec_paramszFinishedPGconn.exec_paramsz   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_query_paramsz FinishedPGconn.send_query_params}   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_preparezFinishedPGconn.send_prepare   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_query_preparedz"FinishedPGconn.send_query_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   preparezFinishedPGconn.prepare   rP   r   c                $    | j                          y rK   rL   r_   s     r=   exec_preparedzFinishedPGconn.exec_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   describe_preparedz FinishedPGconn.describe_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_describe_preparedz%FinishedPGconn.send_describe_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   describe_portalzFinishedPGconn.describe_portal   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_describe_portalz#FinishedPGconn.send_describe_portal   rP   r   c                $    | j                          y rK   rL   r_   s     r=   close_preparedzFinishedPGconn.close_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_close_preparedz"FinishedPGconn.send_close_prepared   rP   r   c                $    | j                          y rK   rL   r_   s     r=   close_portalzFinishedPGconn.close_portal   rP   r   c                $    | j                          y rK   rL   r_   s     r=   send_close_portalz FinishedPGconn.send_close_portal   rP   r   c                $    | j                          y rK   rL   rM   s    r=   
get_resultzFinishedPGconn.get_result   rP   r   c                $    | j                          y rK   rL   rM   s    r=   consume_inputzFinishedPGconn.consume_input   rP   r   c                $    | j                          y rK   rL   rM   s    r=   is_busyzFinishedPGconn.is_busy   rP   r   c                $    | j                          y rK   rL   rM   s    r=   flushzFinishedPGconn.flush   rP   r   c                $    | j                          y rK   rL   rM   s    r=   set_single_row_modez"FinishedPGconn.set_single_row_mode   rP   r   c                $    | j                          y rK   rL   )rN   sizes     r=   set_chunked_rows_modez$FinishedPGconn.set_chunked_rows_mode   rP   r   c                $    | j                          y rK   rL   rM   s    r=   cancel_connzFinishedPGconn.cancel_conn   rP   r   c                $    | j                          y rK   rL   rM   s    r=   
get_cancelzFinishedPGconn.get_cancel   rP   r   c                $    | j                          y rK   rL   rM   s    r=   notifieszFinishedPGconn.notifies   rP   r   c                $    | j                          y rK   rL   r_   s     r=   put_copy_datazFinishedPGconn.put_copy_data   rP   r   c                $    | j                          y rK   rL   r_   s     r=   put_copy_endzFinishedPGconn.put_copy_end   rP   r   c                $    | j                          y rK   rL   r_   s     r=   get_copy_datazFinishedPGconn.get_copy_data   rP   r   c                $    | j                          y rK   rL   r_   s     r=   tracezFinishedPGconn.trace   rP   r   c                $    | j                          y rK   rL   r_   s     r=   set_trace_flagszFinishedPGconn.set_trace_flags   rP   r   c                $    | j                          y rK   rL   rM   s    r=   untracezFinishedPGconn.untrace   rP   r   c                $    | j                          y rK   rL   r_   s     r=   encrypt_passwordzFinishedPGconn.encrypt_password   rP   r   c                $    | j                          y rK   rL   r_   s     r=   change_passwordzFinishedPGconn.change_password   rP   r   c                $    | j                          y rK   rL   r_   s     r=   make_empty_resultz FinishedPGconn.make_empty_result   rP   r   c                $    | j                          y rK   rL   rM   s    r=   enter_pipeline_modez"FinishedPGconn.enter_pipeline_mode   rP   r   c                $    | j                          y rK   rL   rM   s    r=   exit_pipeline_modez!FinishedPGconn.exit_pipeline_mode   rP   r   c                $    | j                          y rK   rL   rM   s    r=   pipeline_synczFinishedPGconn.pipeline_sync   rP   r   c                $    | j                          y rK   rL   rM   s    r=   send_flush_requestz!FinishedPGconn.send_flush_request   rP   r   )returnr   )rE   r   r   r   )r   None) )rV   r.   r   r.   )rE   r   r   r   )r   r(   r   r   )Y__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   r3   r4   r5   r6   r7   r8   staticmethodr>   classmethodrF   rI   rO   rR   rT   rW   rY   r[   r]   r`   propertyrb   rd   rf   rh   rj   rl   rn   rp   rr   rt   rv   rx   rz   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NCK ND M4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	ExceptionrR   )pgconnrE   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   rV   r   c                   t        |   |  || _        || _        || _        | j
                  s|r| j                  j
                  | _        y y y rK   )super__init___infor/   _pgconnr   diag)rN   r   rV   r   rE   	__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   rM   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   rM   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.
        )rV   )
Diagnosticr   r/   rM   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   rN   resr   s     r=   r   zError.__reduce__1  sM    g "c5!c#h!m+DJJ7CF7O $CF9
r   )rE   zSequence[Any]r   r   rV   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 rK   )r   r   )rD   coder   s      r=   __init_subclass__zDatabaseError.__init_subclass__J  s&    !IdOCL!IdO r   )NN)r   r   r   r   )r   r   r   r   r   r<   r   r=   r   r   C  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   R  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   i  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   s       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 rK   )r   r/   )rN   r   rV   s      r=   r   zDiagnostic.__init__  s    
!r   c                @    | j                  t        j                        S rK   )_error_messager   SEVERITYrM   s    r=   severityzDiagnostic.severity      ""?#;#;<<r   c                @    | j                  t        j                        S rK   )r	  r   SEVERITY_NONLOCALIZEDrM   s    r=   severity_nonlocalizedz Diagnostic.severity_nonlocalized  s    ""?#H#HIIr   c                @    | j                  t        j                        S rK   )r	  r   SQLSTATErM   s    r=   r   zDiagnostic.sqlstate  r  r   c                @    | j                  t        j                        S rK   )r	  r   MESSAGE_PRIMARYrM   s    r=   message_primaryzDiagnostic.message_primary      ""?#B#BCCr   c                @    | j                  t        j                        S rK   )r	  r   MESSAGE_DETAILrM   s    r=   message_detailzDiagnostic.message_detail      ""?#A#ABBr   c                @    | j                  t        j                        S rK   )r	  r   MESSAGE_HINTrM   s    r=   message_hintzDiagnostic.message_hint  s    ""?#?#?@@r   c                @    | j                  t        j                        S rK   )r	  r   STATEMENT_POSITIONrM   s    r=   statement_positionzDiagnostic.statement_position  s    ""?#E#EFFr   c                @    | j                  t        j                        S rK   )r	  r   INTERNAL_POSITIONrM   s    r=   internal_positionzDiagnostic.internal_position  s    ""?#D#DEEr   c                @    | j                  t        j                        S rK   )r	  r   INTERNAL_QUERYrM   s    r=   internal_queryzDiagnostic.internal_query  r  r   c                @    | j                  t        j                        S rK   )r	  r   CONTEXTrM   s    r=   contextzDiagnostic.context  s    ""?#:#:;;r   c                @    | j                  t        j                        S rK   )r	  r   SCHEMA_NAMErM   s    r=   schema_namezDiagnostic.schema_name      ""?#>#>??r   c                @    | j                  t        j                        S rK   )r	  r   
TABLE_NAMErM   s    r=   
table_namezDiagnostic.table_name  s    ""?#=#=>>r   c                @    | j                  t        j                        S rK   )r	  r   COLUMN_NAMErM   s    r=   column_namezDiagnostic.column_name  r,  r   c                @    | j                  t        j                        S rK   )r	  r   DATATYPE_NAMErM   s    r=   datatype_namezDiagnostic.datatype_name  s    ""?#@#@AAr   c                @    | j                  t        j                        S rK   )r	  r   CONSTRAINT_NAMErM   s    r=   constraint_namezDiagnostic.constraint_name  r  r   c                @    | j                  t        j                        S rK   )r	  r   SOURCE_FILErM   s    r=   source_filezDiagnostic.source_file  r,  r   c                @    | j                  t        j                        S rK   )r	  r   SOURCE_LINErM   s    r=   source_linezDiagnostic.source_line  r,  r   c                @    | j                  t        j                        S rK   )r	  r   SOURCE_FUNCTIONrM   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/   )rN   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   rV   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/  r2  r5  r8  r;  r>  rA  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   rF  )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=   lookuprP    s     X^^%&&r   c                    | j                  t        j                        xs d}t        |j	                  dd            } || j                  |      | |      S )Nr   r-   rC  )r   rV   )rF  r   r  _class_for_staterG  rW   )resultrV   staterD   s       r=   error_from_resultrU  &  sL    778?CE
5<<;
<Cv''1RRr   c                    t        | d      S )z3Return True if an ErrorInfo is a PGresult instance.rF  )hasattr)r   s    r=   r   r   ,  s     4''r   c                N    	 t        |       S # t        $ r t        |       cY S w xY wrK   )rP  KeyErrorget_base_exceptionrO  s    r=   rR  rR  2  s,    ,h ,!(++,s   
 $$c                v    t         j                  | d d       xs  t         j                  | d d       xs t        S )Nr   r   )_base_exc_maprE  r   rO  s    r=   rZ  rZ  9  s<    (2A,' 	Xbq\*	r   080A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~  m      r   r~  02000NO_DATA)r   r   c                      e Zd Zy)%NoAdditionalDynamicResultSetsReturnedNr  r<   r   r=   r  r  q  r  r   r  02001*NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNEDc                      e Zd Zy)SqlStatementNotYetCompleteNr  r<   r   r=   r  r  x  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)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  %  r  r   r  2200LNOT_AN_XML_DOCUMENTc                      e Zd Zy)InvalidXmlDocumentNr  r<   r   r=   r  r  )  r  r   r  2200MINVALID_XML_DOCUMENTc                      e Zd Zy)InvalidXmlContentNr  r<   r   r=   r  r  -  r  r   r  2200NINVALID_XML_CONTENTc                      e Zd Zy)InvalidXmlCommentNr  r<   r   r=   r   r   1  r  r   r   2200SINVALID_XML_COMMENTc                      e Zd Zy)InvalidXmlProcessingInstructionNr  r<   r   r=   r$  r$  5  r  r   r$  2200T"INVALID_XML_PROCESSING_INSTRUCTIONc                      e Zd Zy)InvalidIndicatorParameterValueNr  r<   r   r=   r(  r(  9  r  r   r(  22010!INVALID_INDICATOR_PARAMETER_VALUEc                      e Zd Zy)SubstringErrorNr  r<   r   r=   r,  r,  =  r  r   r,  22011SUBSTRING_ERRORc                      e Zd Zy)DivisionByZeroNr  r<   r   r=   r0  r0  A  r  r   r0  22012DIVISION_BY_ZEROc                      e Zd Zy)InvalidPrecedingOrFollowingSizeNr  r<   r   r=   r4  r4  E  r  r   r4  22013#INVALID_PRECEDING_OR_FOLLOWING_SIZEc                      e Zd Zy)InvalidArgumentForNtileFunctionNr  r<   r   r=   r8  r8  I  r  r   r8  22014#INVALID_ARGUMENT_FOR_NTILE_FUNCTIONc                      e Zd Zy)IntervalFieldOverflowNr  r<   r   r=   r<  r<  M  r  r   r<  22015INTERVAL_FIELD_OVERFLOWc                      e Zd Zy)"InvalidArgumentForNthValueFunctionNr  r<   r   r=   r@  r@  Q  r  r   r@  22016'INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTIONc                      e Zd Zy)InvalidCharacterValueForCastNr  r<   r   r=   rD  rD  U  r  r   rD  22018 INVALID_CHARACTER_VALUE_FOR_CASTc                      e Zd Zy)InvalidEscapeCharacterNr  r<   r   r=   rH  rH  Y  r  r   rH  22019INVALID_ESCAPE_CHARACTERc                      e Zd Zy)InvalidRegularExpressionNr  r<   r   r=   rL  rL  ]  r  r   rL  2201BINVALID_REGULAR_EXPRESSIONc                      e Zd Zy)InvalidArgumentForLogarithmNr  r<   r   r=   rP  rP  a  r  r   rP  2201EINVALID_ARGUMENT_FOR_LOGARITHMc                      e Zd Zy)InvalidArgumentForPowerFunctionNr  r<   r   r=   rT  rT  e  r  r   rT  2201F#INVALID_ARGUMENT_FOR_POWER_FUNCTIONc                      e Zd Zy)%InvalidArgumentForWidthBucketFunctionNr  r<   r   r=   rX  rX  i  r  r   rX  2201G*INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTIONc                      e Zd Zy)InvalidRowCountInLimitClauseNr  r<   r   r=   r\  r\  m  r  r   r\  2201W!INVALID_ROW_COUNT_IN_LIMIT_CLAUSEc                      e Zd Zy)#InvalidRowCountInResultOffsetClauseNr  r<   r   r=   r`  r`  q  r  r   r`  2201X)INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSEc                      e Zd Zy)CharacterNotInRepertoireNr  r<   r   r=   rd  rd  u  r  r   rd  22021CHARACTER_NOT_IN_REPERTOIREc                      e Zd Zy)IndicatorOverflowNr  r<   r   r=   rh  rh  y  r  r   rh  22022INDICATOR_OVERFLOWc                      e Zd Zy)InvalidParameterValueNr  r<   r   r=   rl  rl  }  r  r   rl  22023INVALID_PARAMETER_VALUEc                      e Zd Zy)UnterminatedCStringNr  r<   r   r=   rp  rp    r  r   rp  22024UNTERMINATED_C_STRINGc                      e Zd Zy)InvalidEscapeSequenceNr  r<   r   r=   rt  rt    r  r   rt  22025INVALID_ESCAPE_SEQUENCEc                      e Zd Zy)StringDataLengthMismatchNr  r<   r   r=   rx  rx    r  r   rx  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  &  r  r   r  25001ACTIVE_SQL_TRANSACTIONc                      e Zd Zy)BranchTransactionAlreadyActiveNr  r<   r   r=   r  r  *  r  r   r  25002!BRANCH_TRANSACTION_ALREADY_ACTIVEc                      e Zd Zy)+InappropriateAccessModeForBranchTransactionNr  r<   r   r=   r  r  .  r  r   r  250030INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)/InappropriateIsolationLevelForBranchTransactionNr  r<   r   r=   r  r  2  r  r   r  250044INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)*NoActiveSqlTransactionForBranchTransactionNr  r<   r   r=   r  r  6  r  r   r  250050NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTIONc                      e Zd Zy)ReadOnlySqlTransactionNr  r<   r   r=   r   r   :  r  r   r   25006READ_ONLY_SQL_TRANSACTIONc                      e Zd Zy)(SchemaAndDataStatementMixingNotSupportedNr  r<   r   r=   r$  r$  >  r  r   r$  25007.SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTEDc                      e Zd Zy)$HeldCursorRequiresSameIsolationLevelNr  r<   r   r=   r(  r(  B  r  r   r(  25008)HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVELc                      e Zd Zy)NoActiveSqlTransactionNr  r<   r   r=   r,  r,  F  r  r   r,  25P01NO_ACTIVE_SQL_TRANSACTIONc                      e Zd Zy)InFailedSqlTransactionNr  r<   r   r=   r0  r0  J  r  r   r0  25P02IN_FAILED_SQL_TRANSACTIONc                      e Zd Zy)IdleInTransactionSessionTimeoutNr  r<   r   r=   r4  r4  N  r  r   r4  25P03#IDLE_IN_TRANSACTION_SESSION_TIMEOUTc                      e Zd Zy)TransactionTimeoutNr  r<   r   r=   r8  r8  R  r  r   r8  25P04TRANSACTION_TIMEOUTc                      e Zd Zy)InvalidSqlStatementNameNr  r<   r   r=   r<  r<  Y  r  r   r<  26000INVALID_SQL_STATEMENT_NAMEc                      e Zd Zy)TriggeredDataChangeViolationNr  r<   r   r=   r@  r@  `  r  r   r@  27000TRIGGERED_DATA_CHANGE_VIOLATIONc                      e Zd Zy)!InvalidAuthorizationSpecificationNr  r<   r   r=   rD  rD  g  r  r   rD  28000#INVALID_AUTHORIZATION_SPECIFICATIONc                      e Zd Zy)InvalidPasswordNr  r<   r   r=   rH  rH  k  r  r   rH  28P01INVALID_PASSWORDc                      e Zd Zy)'DependentPrivilegeDescriptorsStillExistNr  r<   r   r=   rL  rL  r  r  r   rL  2B000+DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXISTc                      e Zd Zy)DependentObjectsStillExistNr  r<   r   r=   rP  rP  v  r  r   rP  2BP01DEPENDENT_OBJECTS_STILL_EXISTc                      e Zd Zy)InvalidTransactionTerminationNr  r<   r   r=   rT  rT  }  r  r   rT  2D000INVALID_TRANSACTION_TERMINATIONc                      e Zd Zy)SqlRoutineExceptionNr  r<   r   r=   rX  rX    r  r   rX  2F000SQL_ROUTINE_EXCEPTIONc                      e Zd Zy)ModifyingSqlDataNotPermittedNr  r<   r   r=   r\  r\    r  r   r\  2F002 MODIFYING_SQL_DATA_NOT_PERMITTEDc                      e Zd Zy)ProhibitedSqlStatementAttemptedNr  r<   r   r=   r`  r`    r  r   r`  2F003"PROHIBITED_SQL_STATEMENT_ATTEMPTEDc                      e Zd Zy)ReadingSqlDataNotPermittedNr  r<   r   r=   rd  rd    r  r   rd  2F004READING_SQL_DATA_NOT_PERMITTEDc                      e Zd Zy)!FunctionExecutedNoReturnStatementNr  r<   r   r=   rh  rh    r  r   rh  2F005%FUNCTION_EXECUTED_NO_RETURN_STATEMENTc                      e Zd Zy)InvalidCursorNameNr  r<   r   r=   rl  rl    r  r   rl  34000INVALID_CURSOR_NAMEc                      e Zd Zy)ExternalRoutineExceptionNr  r<   r   r=   rp  rp    r  r   rp  38000EXTERNAL_ROUTINE_EXCEPTIONc                      e Zd Zy)ContainingSqlNotPermittedNr  r<   r   r=   rt  rt    r  r   rt  38001CONTAINING_SQL_NOT_PERMITTEDc                      e Zd Zy)ModifyingSqlDataNotPermittedExtNr  r<   r   r=   rx  rx    r  r   rx  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  (  r  r   r  42704UNDEFINED_OBJECTc                      e Zd Zy)DuplicateObjectNr  r<   r   r=   r  r  ,  r  r   r  42710DUPLICATE_OBJECTc                      e Zd Zy)DuplicateAliasNr  r<   r   r=   r  r  0  r  r   r  42712DUPLICATE_ALIASc                      e Zd Zy)DuplicateFunctionNr  r<   r   r=   r  r  4  r  r   r  42723DUPLICATE_FUNCTIONc                      e Zd Zy)AmbiguousFunctionNr  r<   r   r=   r  r  8  r  r   r  42725AMBIGUOUS_FUNCTIONc                      e Zd Zy)GroupingErrorNr  r<   r   r=   r  r  <  r  r   r  42803GROUPING_ERRORc                      e Zd Zy)DatatypeMismatchNr  r<   r   r=   r  r  @  r  r   r  42804DATATYPE_MISMATCHc                      e Zd Zy)WrongObjectTypeNr  r<   r   r=   r  r  D  r  r   r  42809WRONG_OBJECT_TYPEc                      e Zd Zy)InvalidForeignKeyNr  r<   r   r=   r   r   H  r  r   r   42830INVALID_FOREIGN_KEYc                      e Zd Zy)CannotCoerceNr  r<   r   r=   r  r  L  r  r   r  42846CANNOT_COERCEc                      e Zd Zy)UndefinedFunctionNr  r<   r   r=   r  r  P  r  r   r  42883UNDEFINED_FUNCTIONc                      e Zd Zy)GeneratedAlwaysNr  r<   r   r=   r  r  T  r  r   r  428C9GENERATED_ALWAYSc                      e Zd Zy)ReservedNameNr  r<   r   r=   r  r  X  r  r   r  42939RESERVED_NAMEc                      e Zd Zy)UndefinedTableNr  r<   r   r=   r  r  \  r  r   r  42P01UNDEFINED_TABLEc                      e Zd Zy)UndefinedParameterNr  r<   r   r=   r  r  `  r  r   r  42P02UNDEFINED_PARAMETERc                      e Zd Zy)DuplicateCursorNr  r<   r   r=   r  r  d  r  r   r  42P03DUPLICATE_CURSORc                      e Zd Zy)DuplicateDatabaseNr  r<   r   r=   r   r   h  r  r   r   42P04DUPLICATE_DATABASEc                      e Zd Zy)DuplicatePreparedStatementNr  r<   r   r=   r$  r$  l  r  r   r$  42P05DUPLICATE_PREPARED_STATEMENTc                      e Zd Zy)DuplicateSchemaNr  r<   r   r=   r(  r(  p  r  r   r(  42P06DUPLICATE_SCHEMAc                      e Zd Zy)DuplicateTableNr  r<   r   r=   r,  r,  t  r  r   r,  42P07DUPLICATE_TABLEc                      e Zd Zy)AmbiguousParameterNr  r<   r   r=   r0  r0  x  r  r   r0  42P08AMBIGUOUS_PARAMETERc                      e Zd Zy)AmbiguousAliasNr  r<   r   r=   r4  r4  |  r  r   r4  42P09AMBIGUOUS_ALIASc                      e Zd Zy)InvalidColumnReferenceNr  r<   r   r=   r8  r8    r  r   r8  42P10INVALID_COLUMN_REFERENCEc                      e Zd Zy)InvalidCursorDefinitionNr  r<   r   r=   r<  r<    r  r   r<  42P11INVALID_CURSOR_DEFINITIONc                      e Zd Zy)InvalidDatabaseDefinitionNr  r<   r   r=   r@  r@    r  r   r@  42P12INVALID_DATABASE_DEFINITIONc                      e Zd Zy)InvalidFunctionDefinitionNr  r<   r   r=   rD  rD    r  r   rD  42P13INVALID_FUNCTION_DEFINITIONc                      e Zd Zy)"InvalidPreparedStatementDefinitionNr  r<   r   r=   rH  rH    r  r   rH  42P14%INVALID_PREPARED_STATEMENT_DEFINITIONc                      e Zd Zy)InvalidSchemaDefinitionNr  r<   r   r=   rL  rL    r  r   rL  42P15INVALID_SCHEMA_DEFINITIONc                      e Zd Zy)InvalidTableDefinitionNr  r<   r   r=   rP  rP    r  r   rP  42P16INVALID_TABLE_DEFINITIONc                      e Zd Zy)InvalidObjectDefinitionNr  r<   r   r=   rT  rT    r  r   rT  42P17INVALID_OBJECT_DEFINITIONc                      e Zd Zy)IndeterminateDatatypeNr  r<   r   r=   rX  rX    r  r   rX  42P18INDETERMINATE_DATATYPEc                      e Zd Zy)InvalidRecursionNr  r<   r   r=   r\  r\    r  r   r\  42P19INVALID_RECURSIONc                      e Zd Zy)WindowingErrorNr  r<   r   r=   r`  r`    r  r   r`  42P20WINDOWING_ERRORc                      e Zd Zy)CollationMismatchNr  r<   r   r=   rd  rd    r  r   rd  42P21COLLATION_MISMATCHc                      e Zd Zy)IndeterminateCollationNr  r<   r   r=   rh  rh    r  r   rh  42P22INDETERMINATE_COLLATIONc                      e Zd Zy)WithCheckOptionViolationNr  r<   r   r=   rl  rl    r  r   rl  44000WITH_CHECK_OPTION_VIOLATIONc                      e Zd Zy)InsufficientResourcesNr  r<   r   r=   rp  rp    r  r   rp  53000INSUFFICIENT_RESOURCESc                      e Zd Zy)DiskFullNr  r<   r   r=   rt  rt    r  r   rt  53100	DISK_FULLc                      e Zd Zy)OutOfMemoryNr  r<   r   r=   rx  rx    r  r   rx  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  &  r  r   r  58P01UNDEFINED_FILEc                      e Zd Zy)DuplicateFileNr  r<   r   r=   r  r  *  r  r   r  58P02DUPLICATE_FILEc                      e Zd Zy)SnapshotTooOldNr  r<   r   r=   r  r  1  r  r   r  72000SNAPSHOT_TOO_OLDc                      e Zd Zy)ConfigFileErrorNr  r<   r   r=   r  r  8  r  r   r  F0000CONFIG_FILE_ERRORc                      e Zd Zy)LockFileExistsNr  r<   r   r=   r  r  <  r  r   r  F0001LOCK_FILE_EXISTSc                      e Zd Zy)FdwErrorNr  r<   r   r=   r  r  C  r  r   r  HV000	FDW_ERRORc                      e Zd Zy)FdwOutOfMemoryNr  r<   r   r=   r  r  G  r  r   r  HV001FDW_OUT_OF_MEMORYc                      e Zd Zy)FdwDynamicParameterValueNeededNr  r<   r   r=   r  r  K  r  r   r  HV002"FDW_DYNAMIC_PARAMETER_VALUE_NEEDEDc                      e Zd Zy)FdwInvalidDataTypeNr  r<   r   r=   r  r  O  r  r   r  HV004FDW_INVALID_DATA_TYPEc                      e Zd Zy)FdwColumnNameNotFoundNr  r<   r   r=   r  r  S  r  r   r  HV005FDW_COLUMN_NAME_NOT_FOUNDc                      e Zd Zy)FdwInvalidDataTypeDescriptorsNr  r<   r   r=   r  r  W  r  r   r  HV006!FDW_INVALID_DATA_TYPE_DESCRIPTORSc                      e Zd Zy)FdwInvalidColumnNameNr  r<   r   r=   r  r  [  r  r   r  HV007FDW_INVALID_COLUMN_NAMEc                      e Zd Zy)FdwInvalidColumnNumberNr  r<   r   r=   r  r  _  r  r   r  HV008FDW_INVALID_COLUMN_NUMBERc                      e Zd Zy)FdwInvalidUseOfNullPointerNr  r<   r   r=   r   r   c  r  r   r   HV009FDW_INVALID_USE_OF_NULL_POINTERc                      e Zd Zy)FdwInvalidStringFormatNr  r<   r   r=   r  r  g  r  r   r  HV00AFDW_INVALID_STRING_FORMATc                      e Zd Zy)FdwInvalidHandleNr  r<   r   r=   r  r  k  r  r   r  HV00BFDW_INVALID_HANDLEc                      e Zd Zy)FdwInvalidOptionIndexNr  r<   r   r=   r  r  o  r  r   r  HV00CFDW_INVALID_OPTION_INDEXc                      e Zd Zy)FdwInvalidOptionNameNr  r<   r   r=   r  r  s  r  r   r  HV00DFDW_INVALID_OPTION_NAMEc                      e Zd Zy)FdwOptionNameNotFoundNr  r<   r   r=   r  r  w  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=   r$  r$    r  r   r$  HV00N"FDW_UNABLE_TO_ESTABLISH_CONNECTIONc                      e Zd Zy)FdwNoSchemasNr  r<   r   r=   r(  r(    r  r   r(  HV00PFDW_NO_SCHEMASc                      e Zd Zy)FdwSchemaNotFoundNr  r<   r   r=   r,  r,    r  r   r,  HV00QFDW_SCHEMA_NOT_FOUNDc                      e Zd Zy)FdwTableNotFoundNr  r<   r   r=   r0  r0    r  r   r0  HV00RFDW_TABLE_NOT_FOUNDc                      e Zd Zy)FdwFunctionSequenceErrorNr  r<   r   r=   r4  r4    r  r   r4  HV010FDW_FUNCTION_SEQUENCE_ERRORc                      e Zd Zy)FdwTooManyHandlesNr  r<   r   r=   r8  r8    r  r   r8  HV014FDW_TOO_MANY_HANDLESc                      e Zd Zy)$FdwInconsistentDescriptorInformationNr  r<   r   r=   r<  r<    r  r   r<  HV021'FDW_INCONSISTENT_DESCRIPTOR_INFORMATIONc                      e Zd Zy)FdwInvalidAttributeValueNr  r<   r   r=   r@  r@    r  r   r@  HV024FDW_INVALID_ATTRIBUTE_VALUEc                      e Zd Zy)$FdwInvalidStringLengthOrBufferLengthNr  r<   r   r=   rD  rD    r  r   rD  HV090*FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTHc                      e Zd Zy)#FdwInvalidDescriptorFieldIdentifierNr  r<   r   r=   rH  rH    r  r   rH  HV091'FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIERc                      e Zd Zy)PlpgsqlErrorNr  r<   r   r=   rL  rL    r  r   rL  P0000PLPGSQL_ERRORc                      e Zd Zy)RaiseExceptionNr  r<   r   r=   rP  rP    r  r   rP  P0001RAISE_EXCEPTIONc                      e Zd Zy)NoDataFoundNr  r<   r   r=   rT  rT    r  r   rT  P0002NO_DATA_FOUNDc                      e Zd Zy)TooManyRowsNr  r<   r   r=   rX  rX    r  r   rX  P0003TOO_MANY_ROWSc                      e Zd Zy)AssertFailureNr  r<   r   r=   r\  r\    r  r   r\  P0004ASSERT_FAILUREc                      e Zd Zy)InternalError_Nr  r<   r   r=   r`  r`    r  r   r`  XX000INTERNAL_ERRORc                      e Zd Zy)DataCorruptedNr  r<   r   r=   rd  rd    r  r   rd  XX001DATA_CORRUPTEDc                      e Zd Zy)IndexCorruptedNr  r<   r   r=   rh  rh    r  r   rh  XX002INDEX_CORRUPTEDN)r   r   r   r   )r   r   r   r   )r   r.   r   ztype[Error]rJ  )rS  r   rV   r.   r   r   )r   r   r   zTypeGuard[PGresult](6  r   
__future__r   typingr   r   r   r   r   asyncior	   dataclassesr
   r   r   pq.abcr   r   _compatr   r   	pq._enumsr   r   r   r   pq.miscr   r   r   r   r   r   r   r   r   r   r   r   r   r;   r   r   r   r   r  r  r  r   r   rP  rU  r   rR  rZ  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  KeyboardInterrupt_NO_TRACEBACKr<   r   r=   <module>ru     s  ( # C C " 0 0 $ ) U U1B	9 B$&	! & | | |~"i <I <~U "E " 
} 
] M }  ( * & ` `F'S(,!
!
! 	
! 	
	!
 	)! 	.! 	-! 	-! 	
! 	
! 	
! 	-! 	-! 	
! 	
!  	
!!" 	
#!$ 









				A!X	]	y		M	C			7		*	-		.>	D		-	2		4D	J		(	+		#3	7		(	+		}	3		+	.		=	7		}	*		-	6		]	(		M	0		}	3		=	.		]	L		#	'		+	.		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   