
    gi                    p,   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 dXd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 d0 d1          Z0dYd3Z1dZd7Z2d[d\d<Z3d]d>Z4dZd?Z5dZd@Z6i dAe(dBe,dCe+dDe+dEe+dFe'dGe)dHe*dIe*dJe+dKe(dLe(dMe*dNe*dOe(dPe+dQe(i dRe(dSe(dTe+dUe+dVe(dWe+dXe+dYe(dZe(d[e(d\e(d]e(d^e(d_e(d`e+dae*Z7 G db dce&dddef          Z8 G dg dhe&didjf          Z9 G dk dle&dmdnf          Z: G do dpe(dqdrf          Z; G ds dte(dudvf          Z< G dw dxe(dydzf          Z= G d{ d|e(d}d~f          Z> G d de(ddf          Z? G d de(ddf          Z@ G d de(ddf          ZA G d de&ddf          ZB G d de,ddf          ZC G d de&ddf          ZD G d de&ddf          ZE G d de&ddf          ZF G d de&ddf          ZG G d de&ddf          ZH G d de&ddf          ZI G d de&ddf          ZJ G d de&ddf          ZK G d de+ddf          ZL G d de+ddf          ZM G d de+ddf          ZN G d de'dd¬f          ZO G dÄ de'ddƬf          ZP G dǄ de'ddʬf          ZQ G d˄ de'ddάf          ZR G dτ de'ddҬf          ZS G dӄ de'dd֬f          ZT G dׄ de'ddڬf          ZU G dۄ de'ddެf          ZV G d߄ de'ddf          ZW G d de'ddf          ZX G d de'ddf          ZY G d de'ddf          ZZ G d de'ddf          Z[ G d de'ddf          Z\ G d de'ddf          Z] G d de'ddf          Z^ G d d e'ddf          Z_ G d de'ddf          Z` G d de'd	d
f          Za G d de'ddf          Zb G d de'ddf          Zc G d de'ddf          Zd G d de'ddf          Ze G d de'ddf          Zf G d d e'd!d"f          Zg G d# d$e'd%d&f          Zh G d' d(e'd)d*f          Zi G d+ d,e'd-d.f          Zj G d/ d0e'd1d2f          Zk G d3 d4e'd5d6f          Zl G d7 d8e'd9d:f          Zm G d; d<e'd=d>f          Zn G d? d@e'dAdBf          Zo G dC dDe'dEdFf          Zp G dG dHe'dIdJf          Zq G dK dLe'dMdNf          Zr G dO dPe'dQdRf          Zs G dS dTe'dUdVf          Zt G dW dXe'dYdZf          Zu G d[ d\e'd]d^f          Zv G d_ d`e'dadbf          Zw G dc dde'dedff          Zx G dg dhe'didjf          Zy G dk dle'dmdnf          Zz G do dpe'dqdrf          Z{ G ds dte'dudvf          Z| G dw dxe'dydzf          Z} G d{ d|e'd}d~f          Z~ G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'ddf          Z G d de'dd¬f          Z G dÄ de'dŐdƬf          Z G dǄ de'dɐdʬf          Z G d˄ de'd͐dάf          Z G dτ de)dѐdҬf          Z G dӄ de)dՐd֬f          Z G dׄ de)dِdڬf          Z G dۄ de)dݐdެf          Z G d߄ de)ddf          Z G d de)ddf          Z G d de)ddf          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d d e*ddf          Z G d de*ddf          Z G d de*d	d
f          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d de*ddf          Z G d d e*d!d"f          Z G d# d$e+d%d&f          Z G d' d(e(d)d*f          Z G d+ d,e(d-d.f          Z G d/ d0e(d1d2f          Z G d3 d4e*d5d6f          Z G d7 d8e*d9d:f          Z G d; d<e*d=d>f          Z G d? d@e(dAdBf          Z G dC dDe(dEdFf          Z G dG dHe(dIdJf          Z G dK dLe(dMdNf          Z G dO dPe(dQdRf          Z G dS dTe+dUdVf          Z G dW dXe(dYdZf          Z G d[ d\e(d]d^f          Z G d_ d`e(dadFf          Z G db dce(dddJf          Z G de dfe(dgdNf          Z G dh die(djdkf          Z G dl dme(dndof          Z G dp dqe(drdҬf          Z G ds dte(dudvf          Z G dw dxe(dydzf          Z G d{ d|e(d}d~f          Z G d de(ddf          Z G d de(ddf          Z G d de+ddf          Z G d de+ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+dd¬f          Z G dÄ de+dŐdƬf          Z G dǄ de+dɐdʬf          Z G d˄ de+d͐dάf          Z G dτ de+dѐdҬf          Z G dӄ de+dՐd֬f          Z G dׄ de+dِdڬf          Z G dۄ de+dݐdެf          Z G d߄ de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d d e+ddf          Z G d de+ddf          Z G d de+d	d
f          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d de+ddf          Z G d d e+d!d"f          Z G d# d$e+d%d&f          Z G d' d(e+d)d*f          Z G d+ d,e+d-d.f          Z G d/ d0e+d1d2f          Z G d3 d4e+d5d6f          Z G d7 d8e+d9d:f          Z G d; d<e+d=d>f          Z G d? d@e+dAdBf          Z G dC dDe+dEdFf          Z G dG dHe+dIdJf          Z G dK dLe+dMdNf          Z G dO dPe+dQdRf          Z G dS dTe+dUdVf          Z G dW dXe(dYdZf          Z G d[ d\e(d]d^f          Z G d_ d`e(dadbf          Z G dc dde(dedff          Z G dg dhe(didjf          Z G dk dle(dmdnf          Z G do dpe(dqdrf          Z G ds dte(dudvf          Z G dw dxe(dydzf          Z G d{ d|e(d}d~f          Z G d de(ddf          Z  G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z	 G d de(ddf          Z
 G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de&dd¬f          Z G dÄ de(dŐdƬf          Z G dǄ de(dɐdʬf          Z G d˄ de(d͐dάf          Z G dτ de(dѐdҬf          Z G dӄ de(dՐd֬f          Z G dׄ de(dِdڬf          Z G dۄ de(dݐdެf          Z G d߄ de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d de(ddf          Z G d d e(ddf          Z  G d de(ddf          Z! G d de(d	d
f          Z" G d de(ddf          Z# G d de(ddf          Z$ G d de(ddf          Z% G d de(ddf          Z& G d de(ddf          Z' G d d e(d!d"f          Z( G d# d$e(d%d&f          Z) G d' d(e(d)d*f          Z* G d+ d,e(d-d.f          Z+ G d/ d0e(d1d2f          Z, G d3 d4e(d5d6f          Z- G d7 d8e+d9d:f          Z. G d; d<e+d=d>f          Z/ G d? d@e+dAdBf          Z0 G dC dDe+dEdFf          Z1 G dG dHe+dIdJf          Z2 G dK dLe*dMdNf          Z3 G dO dPe*dQdRf          Z4 G dS dTe*dUdVf          Z5e$e6e
fZ7dWS (^  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j        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&<   e&dad)            Z'e(dbd,            Z)e(dbd-            Z*dad.Z+dcd0Z,dad1Z-ddded4Z.dad5Z/dad6Z0e(dbd7            Z1dbd8Z2e3dad9            Z4dbd:Z5dfd;Z6dbd<Z7dbd=Z8dbd>Z9dbd?Z:dbd@Z;dbdAZ<dbdBZ=dbdCZ>dbdDZ?dbdEZ@dbdFZAdbdGZBdbdHZCdbdIZDdadJZEdadKZFdadLZGdadMZHdadNZIdgdPZJdadQZKdadRZLdadSZMdbdTZNdbdUZOdbdVZPdbdWZQdbdXZRdadYZSdbdZZTdbd[ZUdbd\ZVdad]ZWdad^ZXdad_ZYdad`ZZd"S )h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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_handlerreturnr   c                      t          d          Nzthe connection is closed)OperationalError r   ^/var/www/html/Pagina-Ingenieria-Requisitos/venv/lib/python3.11/site-packages/psycopg/errors.py_raisezFinishedPGconn._raiseM   s    9:::r   argsr   c                &    t          |  d          Nz is unusable	TypeErrorclsrB   s     r@   connectzFinishedPGconn.connectQ       3,,,---r   c                &    t          |  d          rD   rE   rG   s     r@   connect_startzFinishedPGconn.connect_startU   rJ   r   c                .    |                                   d S NrA   selfs    r@   connect_pollzFinishedPGconn.connect_pollY       r   Nonec                    d S rN   r?   rP   s    r@   finishzFinishedPGconn.finish\   s    r   c                .    |                                   d S rN   rO   rP   s    r@   resetzFinishedPGconn.reset_   rS   r    encodingc                    dS r=   r?   )rQ   rZ   s     r@   get_error_messagez FinishedPGconn.get_error_messageb   s    ))r   c                .    |                                   d S rN   rO   rP   s    r@   reset_startzFinishedPGconn.reset_starte   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   
reset_pollzFinishedPGconn.reset_pollh   rS   r   c                &    t          |  d          rD   rE   rG   s     r@   pingzFinishedPGconn.pingk   rJ   r   c                .    |                                   d S rN   rO   rQ   rB   s     r@   parameter_statuszFinishedPGconn.parameter_statuso   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   socketzFinishedPGconn.socketr   s    r   c                .    |                                   d S rN   rO   rd   s     r@   exec_zFinishedPGconn.exec_v   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   
send_queryzFinishedPGconn.send_queryy   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   exec_paramszFinishedPGconn.exec_params|   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_query_paramsz FinishedPGconn.send_query_params   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_preparezFinishedPGconn.send_prepare   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_query_preparedz"FinishedPGconn.send_query_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   preparezFinishedPGconn.prepare   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   exec_preparedzFinishedPGconn.exec_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   describe_preparedz FinishedPGconn.describe_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_describe_preparedz%FinishedPGconn.send_describe_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   describe_portalzFinishedPGconn.describe_portal   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_describe_portalz#FinishedPGconn.send_describe_portal   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   close_preparedzFinishedPGconn.close_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_close_preparedz"FinishedPGconn.send_close_prepared   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   close_portalzFinishedPGconn.close_portal   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   send_close_portalz FinishedPGconn.send_close_portal   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   
get_resultzFinishedPGconn.get_result   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   consume_inputzFinishedPGconn.consume_input   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   is_busyzFinishedPGconn.is_busy   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   flushzFinishedPGconn.flush   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   set_single_row_modez"FinishedPGconn.set_single_row_mode   rS   r   sizec                .    |                                   d S rN   rO   )rQ   r   s     r@   set_chunked_rows_modez$FinishedPGconn.set_chunked_rows_mode   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   cancel_connzFinishedPGconn.cancel_conn   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   
get_cancelzFinishedPGconn.get_cancel   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   notifieszFinishedPGconn.notifies   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   put_copy_datazFinishedPGconn.put_copy_data   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   put_copy_endzFinishedPGconn.put_copy_end   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   get_copy_datazFinishedPGconn.get_copy_data   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   tracezFinishedPGconn.trace   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   set_trace_flagszFinishedPGconn.set_trace_flags   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   untracezFinishedPGconn.untrace   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   encrypt_passwordzFinishedPGconn.encrypt_password   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   change_passwordzFinishedPGconn.change_password   rS   r   c                .    |                                   d S rN   rO   rd   s     r@   make_empty_resultz FinishedPGconn.make_empty_result   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   enter_pipeline_modez"FinishedPGconn.enter_pipeline_mode   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   exit_pipeline_modez!FinishedPGconn.exit_pipeline_mode   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   pipeline_synczFinishedPGconn.pipeline_sync   rS   r   c                .    |                                   d S rN   rO   rP   s    r@   send_flush_requestz!FinishedPGconn.send_flush_request   rS   r   )r;   r   )rB   r   r;   r   )r;   rT   )rY   )rZ   r.   r;   r.   )rB   r   r;   rT   )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   r4   r5   r6   r7   r8   r9   r:   staticmethodrA   classmethodrI   rL   rR   rV   rX   r\   r^   r`   rb   re   propertyrg   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   r   '   s          "'t!<!<!<D<<<<BOOOODHDHDCG.&F&&&&/7=====)-3O3333MINK N    MKJK8<N<<<<8<N<<<<; ; ; \; . . . [. . . . [.         * * * * *       . . . [.       X                                                                                                                    r   r   pgconnr   r;   c                    i }t          t                    D ]0}	 t          | |j                  ||j        <   !# t          $ r Y -w xY w|                                  t          di |S )Nr?   )r   r   getattrname	ExceptionrV   )r   rB   fs      r@   finish_pgconnr      s}    DN##  	"61622DLL 	 	 	D	
MMOOO!!D!!!s   8
AAc                      e Zd ZdZdZdS )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                JJJr   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   rZ   r   rB   Sequence[Any]r   r   rZ   r.   r   PGconn | Nonec                    t                      j        |  || _        || _        || _        | j        s|r| j        j        | _        d S d S d S rN   )super__init___infor/   _pgconnr   diag)rQ   r   rZ   r   rB   	__class__s        r@   r   zError.__init__  se     	$
! } 	/ 	/ I.DMMM	/ 	/ 	/ 	/r   r;   c                "    | j         r| j         n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      $|5t||5r   PGresult | Nonec                <    t          | j                  r| j        n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     *$*55?tzz4?r   
Diagnosticc                8    t          | j        | j                  S )z[
        A `Diagnostic` object to inspect details of the errors from the database.
        )rZ   )r   r   r/   rP   s    r@   r   z
Error.diag,  s    
 $*t~>>>>r   str | tuple[Any, ...]c                    t                                                      }t          |t                    r;t	          |          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__3  sb    gg  ""c5!! 	%c#hh!mm+DJ77CF7O $CF9
r   )rB   r   r   r   rZ   r.   r   r   )r;   r   )r;   r   )r;   r   r;   r   )r   r   r   r   r   r   r   r   r   r   r   r   __classcell__r   s   @r@   r   r      s           JH
  $/ / / / / / / /  6 6 6 X6 @ @ @ X@ ? ? ? X?         r   r   c                      e Zd ZdZdZdS )InterfaceErrorzU
    An error related to the database interface rather than the database itself.
    r   Nr   r?   r   r@   r   r   =            JJJr   r   c                       e Zd ZdZdZdd	dZdS )
DatabaseErrorzG
    Exception raised for errors that are related to the database.
    r   Ncoder   r   c                H    |r| t           |<   || _        |r| t           |<   d S d S rN   )r   r   )rH   r   r   s      r@   __init_subclass__zDatabaseError.__init_subclass__L  s9     	 !IdOCL 	"!IdOOO	" 	"r   )NN)r   r   r   r   )r   r   r   r   r   r?   r   r@   r   r   E  s>          J" " " " " " "r   r   c                      e Zd ZdZdZdS )	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   T  r   r   r   c                      e Zd ZdZdZdS )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          JJJr   r>   c                      e Zd ZdZdZdS )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   k  r   r   r   c                      e Zd ZdZdZdS )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   u            JJJr   r   c                      e Zd ZdZdZdS )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dS )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dS )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dS )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dS )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                      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.r-   r   r   rZ   r.   c                "    || _         || _        d S rN   )r   r/   )rQ   r   rZ   s      r@   r   zDiagnostic.__init__  s    
!r   r;   r   c                @    |                      t          j                  S rN   )_error_messager   SEVERITYrP   s    r@   severityzDiagnostic.severity      ""?#;<<<r   c                @    |                      t          j                  S rN   )r  r   SEVERITY_NONLOCALIZEDrP   s    r@   severity_nonlocalizedz Diagnostic.severity_nonlocalized  s    ""?#HIIIr   c                @    |                      t          j                  S rN   )r  r   SQLSTATErP   s    r@   r   zDiagnostic.sqlstate  r  r   c                @    |                      t          j                  S rN   )r  r   MESSAGE_PRIMARYrP   s    r@   message_primaryzDiagnostic.message_primary      ""?#BCCCr   c                @    |                      t          j                  S rN   )r  r   MESSAGE_DETAILrP   s    r@   message_detailzDiagnostic.message_detail      ""?#ABBBr   c                @    |                      t          j                  S rN   )r  r   MESSAGE_HINTrP   s    r@   message_hintzDiagnostic.message_hint  s    ""?#?@@@r   c                @    |                      t          j                  S rN   )r  r   STATEMENT_POSITIONrP   s    r@   statement_positionzDiagnostic.statement_position  s    ""?#EFFFr   c                @    |                      t          j                  S rN   )r  r   INTERNAL_POSITIONrP   s    r@   internal_positionzDiagnostic.internal_position  s    ""?#DEEEr   c                @    |                      t          j                  S rN   )r  r   INTERNAL_QUERYrP   s    r@   internal_queryzDiagnostic.internal_query  r  r   c                @    |                      t          j                  S rN   )r  r   CONTEXTrP   s    r@   contextzDiagnostic.context  s    ""?#:;;;r   c                @    |                      t          j                  S rN   )r  r   SCHEMA_NAMErP   s    r@   schema_namezDiagnostic.schema_name      ""?#>???r   c                @    |                      t          j                  S rN   )r  r   
TABLE_NAMErP   s    r@   
table_namezDiagnostic.table_name  s    ""?#=>>>r   c                @    |                      t          j                  S rN   )r  r   COLUMN_NAMErP   s    r@   column_namezDiagnostic.column_name  r1  r   c                @    |                      t          j                  S rN   )r  r   DATATYPE_NAMErP   s    r@   datatype_namezDiagnostic.datatype_name  s    ""?#@AAAr   c                @    |                      t          j                  S rN   )r  r   CONSTRAINT_NAMErP   s    r@   constraint_namezDiagnostic.constraint_name  r  r   c                @    |                      t          j                  S rN   )r  r   SOURCE_FILErP   s    r@   source_filezDiagnostic.source_file  r1  r   c                @    |                      t          j                  S rN   )r  r   SOURCE_LINErP   s    r@   source_linezDiagnostic.source_line  r1  r   c                @    |                      t          j                  S rN   )r  r   SOURCE_FUNCTIONrP   s    r@   source_functionzDiagnostic.source_function  r  r   r   r   c                    | j         rlt          | j         t                    r| j                             |          }n| j                             |          }||                    | j        d          S d S )Nreplace)r   r   dictgeterror_fielddecoder/   )rQ   r   vals      r@   r  zDiagnostic._error_message  sj    : 	=$*d++ 4jnnU++j,,U33zz$.)<<<tr   r   c                    t                                                      }t          |t                    r0t	          |          dk    rt          | j                  |d         d<   |S )Nr   r   r   r   r   s     r@   r   zDiagnostic.__reduce__
  sT    gg  ""c5!! 	8c#hh!mm+DJ77CF7O
r   r-   )r   r   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-  r0  r4  r7  r:  r=  r@  rC  rF  r  r   r   r   s   @r@   r   r     s       //" " " " " = = = X= J J J XJ = = = X= D D D XD C C C XC A A A XA G G G XG F F F XF C C C XC < < < X< @ @ @ X@ ? ? ? X? @ @ @ X@ B B B XB D D D XD @ @ @ X@ @ @ @ X@ D D D XD
 
 
 
         r   r   r   c                L     t                     r fdt          D             S  S )zH
    Convert a PGresult to a dictionary to make the info picklable.
    c                <    i | ]}|                     |          S r?   )rK  ).0vr   s     r@   
<dictcomp>z!_info_to_dict.<locals>.<dictcomp>  s)    @@@14##A&&@@@r   )r   r   r   s   `r@   r   r     s4    
 D @@@@@@@@r   r   r.   type[Error]c                @    t           |                                          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@   lookuprZ    s     X^^%%&&r   r-   resultr   rZ   c                    |                      t          j                  pd}t          |                    dd                    } ||                     |          | |          S )Nr   r-   rH  )r   rZ   )rK  r   r  _class_for_staterL  r\   )r[  rZ   staterH   s       r@   error_from_resultr_  (  s]    788?CE
5<<;;
<
<C3v''11RRRRr   TypeGuard[PGresult]c                "    t          | d          S )z3Return True if an ErrorInfo is a PGresult instance.rK  )hasattrrU  s    r@   r   r   .  s     4'''r   c                `    	 t          |           S # t          $ r t          |           cY S w xY wrN   )rZ  KeyErrorget_base_exceptionrY  s    r@   r]  r]  4  sD    ,h , , ,!(+++++,s    --c                    t                               | d d                   p(t                               | d d                   pt          S )Nr   r   )_base_exc_maprJ  r   rY  s    r@   re  re  ;  sF    (2A2,'' 	Xbqb\**	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dS )NoDataNr   r   r   r?   r   r@   r  r  p          Dr   r  02000NO_DATA)r   r   c                      e Zd ZdS )%NoAdditionalDynamicResultSetsReturnedNr  r?   r   r@   r  r  t  r  r   r  02001*NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNEDc                      e Zd ZdS )SqlStatementNotYetCompleteNr  r?   r   r@   r  r  {  r  r   r  03000SQL_STATEMENT_NOT_YET_COMPLETEc                      e Zd ZdS )ConnectionExceptionNr  r?   r   r@   r  r    r  r   r  08000CONNECTION_EXCEPTIONc                      e Zd ZdS )'SqlclientUnableToEstablishSqlconnectionNr  r?   r   r@   r  r    r  r   r  08001+SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTIONc                      e Zd ZdS )ConnectionDoesNotExistNr  r?   r   r@   r  r    r  r   r  08003CONNECTION_DOES_NOT_EXISTc                      e Zd ZdS )-SqlserverRejectedEstablishmentOfSqlconnectionNr  r?   r   r@   r  r    r  r   r  080041SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTIONc                      e Zd ZdS )ConnectionFailureNr  r?   r   r@   r  r    r  r   r  08006CONNECTION_FAILUREc                      e Zd ZdS )TransactionResolutionUnknownNr  r?   r   r@   r  r    r  r   r  08007TRANSACTION_RESOLUTION_UNKNOWNc                      e Zd ZdS )ProtocolViolationNr  r?   r   r@   r  r    r  r   r  08P01PROTOCOL_VIOLATIONc                      e Zd ZdS )TriggeredActionExceptionNr  r?   r   r@   r  r    r  r   r  09000TRIGGERED_ACTION_EXCEPTIONc                      e Zd ZdS )FeatureNotSupportedNr  r?   r   r@   r  r    r  r   r  0A000FEATURE_NOT_SUPPORTEDc                      e Zd ZdS )InvalidTransactionInitiationNr  r?   r   r@   r  r    r  r   r  0B000INVALID_TRANSACTION_INITIATIONc                      e Zd ZdS )LocatorExceptionNr  r?   r   r@   r  r    r  r   r  0F000LOCATOR_EXCEPTIONc                      e Zd ZdS )InvalidLocatorSpecificationNr  r?   r   r@   r  r    r  r   r  0F001INVALID_LOCATOR_SPECIFICATIONc                      e Zd ZdS )InvalidGrantorNr  r?   r   r@   r  r    r  r   r  0L000INVALID_GRANTORc                      e Zd ZdS )InvalidGrantOperationNr  r?   r   r@   r  r    r  r   r  0LP01INVALID_GRANT_OPERATIONc                      e Zd ZdS )InvalidRoleSpecificationNr  r?   r   r@   r  r    r  r   r  0P000INVALID_ROLE_SPECIFICATIONc                      e Zd ZdS )DiagnosticsExceptionNr  r?   r   r@   r  r    r  r   r  0Z000DIAGNOSTICS_EXCEPTIONc                      e Zd ZdS ).StackedDiagnosticsAccessedWithoutActiveHandlerNr  r?   r   r@   r  r    r  r   r  0Z0023STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLERc                      e Zd ZdS )InvalidArgumentForXqueryNr  r?   r   r@   r  r    r  r   r  10608INVALID_ARGUMENT_FOR_XQUERYc                      e Zd ZdS )CaseNotFoundNr  r?   r   r@   r  r    r  r   r  20000CASE_NOT_FOUNDc                      e Zd ZdS )CardinalityViolationNr  r?   r   r@   r  r    r  r   r  21000CARDINALITY_VIOLATIONc                      e Zd ZdS )DataExceptionNr  r?   r   r@   r  r    r  r   r  22000DATA_EXCEPTIONc                      e Zd ZdS )StringDataRightTruncationNr  r?   r   r@   r  r    r  r   r  22001STRING_DATA_RIGHT_TRUNCATIONc                      e Zd ZdS )NullValueNoIndicatorParameterNr  r?   r   r@   r  r    r  r   r  22002!NULL_VALUE_NO_INDICATOR_PARAMETERc                      e Zd ZdS )NumericValueOutOfRangeNr  r?   r   r@   r  r    r  r   r  22003NUMERIC_VALUE_OUT_OF_RANGEc                      e Zd ZdS )NullValueNotAllowedNr  r?   r   r@   r  r    r  r   r  22004NULL_VALUE_NOT_ALLOWEDc                      e Zd ZdS )ErrorInAssignmentNr  r?   r   r@   r  r    r  r   r  22005ERROR_IN_ASSIGNMENTc                      e Zd ZdS )InvalidDatetimeFormatNr  r?   r   r@   r   r     r  r   r   22007INVALID_DATETIME_FORMATc                      e Zd ZdS )DatetimeFieldOverflowNr  r?   r   r@   r  r    r  r   r  22008DATETIME_FIELD_OVERFLOWc                      e Zd ZdS ) InvalidTimeZoneDisplacementValueNr  r?   r   r@   r  r    r  r   r  22009$INVALID_TIME_ZONE_DISPLACEMENT_VALUEc                      e Zd ZdS )EscapeCharacterConflictNr  r?   r   r@   r  r    r  r   r  2200BESCAPE_CHARACTER_CONFLICTc                      e Zd ZdS )InvalidUseOfEscapeCharacterNr  r?   r   r@   r  r    r  r   r  2200CINVALID_USE_OF_ESCAPE_CHARACTERc                      e Zd ZdS )InvalidEscapeOctetNr  r?   r   r@   r  r    r  r   r  2200DINVALID_ESCAPE_OCTETc                      e Zd ZdS )ZeroLengthCharacterStringNr  r?   r   r@   r  r  #  r  r   r  2200FZERO_LENGTH_CHARACTER_STRINGc                      e Zd ZdS )MostSpecificTypeMismatchNr  r?   r   r@   r  r  '  r  r   r  2200GMOST_SPECIFIC_TYPE_MISMATCHc                      e Zd ZdS )SequenceGeneratorLimitExceededNr  r?   r   r@   r   r   +  r  r   r   2200H!SEQUENCE_GENERATOR_LIMIT_EXCEEDEDc                      e Zd ZdS )NotAnXmlDocumentNr  r?   r   r@   r$  r$  /  r  r   r$  2200LNOT_AN_XML_DOCUMENTc                      e Zd ZdS )InvalidXmlDocumentNr  r?   r   r@   r(  r(  3  r  r   r(  2200MINVALID_XML_DOCUMENTc                      e Zd ZdS )InvalidXmlContentNr  r?   r   r@   r,  r,  7  r  r   r,  2200NINVALID_XML_CONTENTc                      e Zd ZdS )InvalidXmlCommentNr  r?   r   r@   r0  r0  ;  r  r   r0  2200SINVALID_XML_COMMENTc                      e Zd ZdS )InvalidXmlProcessingInstructionNr  r?   r   r@   r4  r4  ?  r  r   r4  2200T"INVALID_XML_PROCESSING_INSTRUCTIONc                      e Zd ZdS )InvalidIndicatorParameterValueNr  r?   r   r@   r8  r8  C  r  r   r8  22010!INVALID_INDICATOR_PARAMETER_VALUEc                      e Zd ZdS )SubstringErrorNr  r?   r   r@   r<  r<  G  r  r   r<  22011SUBSTRING_ERRORc                      e Zd ZdS )DivisionByZeroNr  r?   r   r@   r@  r@  K  r  r   r@  22012DIVISION_BY_ZEROc                      e Zd ZdS )InvalidPrecedingOrFollowingSizeNr  r?   r   r@   rD  rD  O  r  r   rD  22013#INVALID_PRECEDING_OR_FOLLOWING_SIZEc                      e Zd ZdS )InvalidArgumentForNtileFunctionNr  r?   r   r@   rH  rH  S  r  r   rH  22014#INVALID_ARGUMENT_FOR_NTILE_FUNCTIONc                      e Zd ZdS )IntervalFieldOverflowNr  r?   r   r@   rL  rL  W  r  r   rL  22015INTERVAL_FIELD_OVERFLOWc                      e Zd ZdS )"InvalidArgumentForNthValueFunctionNr  r?   r   r@   rP  rP  [  r  r   rP  22016'INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTIONc                      e Zd ZdS )InvalidCharacterValueForCastNr  r?   r   r@   rT  rT  _  r  r   rT  22018 INVALID_CHARACTER_VALUE_FOR_CASTc                      e Zd ZdS )InvalidEscapeCharacterNr  r?   r   r@   rX  rX  c  r  r   rX  22019INVALID_ESCAPE_CHARACTERc                      e Zd ZdS )InvalidRegularExpressionNr  r?   r   r@   r\  r\  g  r  r   r\  2201BINVALID_REGULAR_EXPRESSIONc                      e Zd ZdS )InvalidArgumentForLogarithmNr  r?   r   r@   r`  r`  k  r  r   r`  2201EINVALID_ARGUMENT_FOR_LOGARITHMc                      e Zd ZdS )InvalidArgumentForPowerFunctionNr  r?   r   r@   rd  rd  o  r  r   rd  2201F#INVALID_ARGUMENT_FOR_POWER_FUNCTIONc                      e Zd ZdS )%InvalidArgumentForWidthBucketFunctionNr  r?   r   r@   rh  rh  s  r  r   rh  2201G*INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTIONc                      e Zd ZdS )InvalidRowCountInLimitClauseNr  r?   r   r@   rl  rl  w  r  r   rl  2201W!INVALID_ROW_COUNT_IN_LIMIT_CLAUSEc                      e Zd ZdS )#InvalidRowCountInResultOffsetClauseNr  r?   r   r@   rp  rp  {  r  r   rp  2201X)INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSEc                      e Zd ZdS )CharacterNotInRepertoireNr  r?   r   r@   rt  rt    r  r   rt  22021CHARACTER_NOT_IN_REPERTOIREc                      e Zd ZdS )IndicatorOverflowNr  r?   r   r@   rx  rx    r  r   rx  22022INDICATOR_OVERFLOWc                      e Zd ZdS )InvalidParameterValueNr  r?   r   r@   r|  r|    r  r   r|  22023INVALID_PARAMETER_VALUEc                      e Zd ZdS )UnterminatedCStringNr  r?   r   r@   r  r    r  r   r  22024UNTERMINATED_C_STRINGc                      e Zd ZdS )InvalidEscapeSequenceNr  r?   r   r@   r  r    r  r   r  22025INVALID_ESCAPE_SEQUENCEc                      e Zd ZdS )StringDataLengthMismatchNr  r?   r   r@   r  r    r  r   r  22026STRING_DATA_LENGTH_MISMATCHc                      e Zd ZdS )	TrimErrorNr  r?   r   r@   r  r    r  r   r  22027
TRIM_ERRORc                      e Zd ZdS )ArraySubscriptErrorNr  r?   r   r@   r  r    r  r   r  2202EARRAY_SUBSCRIPT_ERRORc                      e Zd ZdS )InvalidTablesampleRepeatNr  r?   r   r@   r  r    r  r   r  2202GINVALID_TABLESAMPLE_REPEATc                      e Zd ZdS )InvalidTablesampleArgumentNr  r?   r   r@   r  r    r  r   r  2202HINVALID_TABLESAMPLE_ARGUMENTc                      e Zd ZdS )DuplicateJsonObjectKeyValueNr  r?   r   r@   r  r    r  r   r  22030DUPLICATE_JSON_OBJECT_KEY_VALUEc                      e Zd ZdS ))InvalidArgumentForSqlJsonDatetimeFunctionNr  r?   r   r@   r  r    r  r   r  22031/INVALID_ARGUMENT_FOR_SQL_JSON_DATETIME_FUNCTIONc                      e Zd ZdS )InvalidJsonTextNr  r?   r   r@   r  r    r  r   r  22032INVALID_JSON_TEXTc                      e Zd ZdS )InvalidSqlJsonSubscriptNr  r?   r   r@   r  r    r  r   r  22033INVALID_SQL_JSON_SUBSCRIPTc                      e Zd ZdS )MoreThanOneSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22034MORE_THAN_ONE_SQL_JSON_ITEMc                      e Zd ZdS )NoSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22035NO_SQL_JSON_ITEMc                      e Zd ZdS )NonNumericSqlJsonItemNr  r?   r   r@   r  r    r  r   r  22036NON_NUMERIC_SQL_JSON_ITEMc                      e Zd ZdS )NonUniqueKeysInAJsonObjectNr  r?   r   r@   r  r    r  r   r  22037 NON_UNIQUE_KEYS_IN_A_JSON_OBJECTc                      e Zd ZdS )SingletonSqlJsonItemRequiredNr  r?   r   r@   r  r    r  r   r  22038 SINGLETON_SQL_JSON_ITEM_REQUIREDc                      e Zd ZdS )SqlJsonArrayNotFoundNr  r?   r   r@   r  r    r  r   r  22039SQL_JSON_ARRAY_NOT_FOUNDc                      e Zd ZdS )SqlJsonMemberNotFoundNr  r?   r   r@   r  r    r  r   r  2203ASQL_JSON_MEMBER_NOT_FOUNDc                      e Zd ZdS )SqlJsonNumberNotFoundNr  r?   r   r@   r  r    r  r   r  2203BSQL_JSON_NUMBER_NOT_FOUNDc                      e Zd ZdS )SqlJsonObjectNotFoundNr  r?   r   r@   r  r    r  r   r  2203CSQL_JSON_OBJECT_NOT_FOUNDc                      e Zd ZdS )TooManyJsonArrayElementsNr  r?   r   r@   r  r    r  r   r  2203DTOO_MANY_JSON_ARRAY_ELEMENTSc                      e Zd ZdS )TooManyJsonObjectMembersNr  r?   r   r@   r  r    r  r   r  2203ETOO_MANY_JSON_OBJECT_MEMBERSc                      e Zd ZdS )SqlJsonScalarRequiredNr  r?   r   r@   r  r    r  r   r  2203FSQL_JSON_SCALAR_REQUIREDc                      e Zd ZdS )#SqlJsonItemCannotBeCastToTargetTypeNr  r?   r   r@   r  r    r  r   r  2203G+SQL_JSON_ITEM_CANNOT_BE_CAST_TO_TARGET_TYPEc                      e Zd ZdS )FloatingPointExceptionNr  r?   r   r@   r  r    r  r   r  22P01FLOATING_POINT_EXCEPTIONc                      e Zd ZdS )InvalidTextRepresentationNr  r?   r   r@   r  r    r  r   r  22P02INVALID_TEXT_REPRESENTATIONc                      e Zd ZdS )InvalidBinaryRepresentationNr  r?   r   r@   r  r    r  r   r  22P03INVALID_BINARY_REPRESENTATIONc                      e Zd ZdS )BadCopyFileFormatNr  r?   r   r@   r  r    r  r   r  22P04BAD_COPY_FILE_FORMATc                      e Zd ZdS )UntranslatableCharacterNr  r?   r   r@   r  r    r  r   r  22P05UNTRANSLATABLE_CHARACTERc                      e Zd ZdS )NonstandardUseOfEscapeCharacterNr  r?   r   r@   r  r    r  r   r  22P06#NONSTANDARD_USE_OF_ESCAPE_CHARACTERc                      e Zd ZdS )IntegrityConstraintViolationNr  r?   r   r@   r  r    r  r   r  23000INTEGRITY_CONSTRAINT_VIOLATIONc                      e Zd ZdS )RestrictViolationNr  r?   r   r@   r  r  
  r  r   r  23001RESTRICT_VIOLATIONc                      e Zd ZdS )NotNullViolationNr  r?   r   r@   r   r     r  r   r   23502NOT_NULL_VIOLATIONc                      e Zd ZdS )ForeignKeyViolationNr  r?   r   r@   r  r    r  r   r  23503FOREIGN_KEY_VIOLATIONc                      e Zd ZdS )UniqueViolationNr  r?   r   r@   r  r    r  r   r  23505UNIQUE_VIOLATIONc                      e Zd ZdS )CheckViolationNr  r?   r   r@   r  r    r  r   r  23514CHECK_VIOLATIONc                      e Zd ZdS )ExclusionViolationNr  r?   r   r@   r  r    r  r   r  23P01EXCLUSION_VIOLATIONc                      e Zd ZdS )InvalidCursorStateNr  r?   r   r@   r  r  %  r  r   r  24000INVALID_CURSOR_STATEc                      e Zd ZdS )InvalidTransactionStateNr  r?   r   r@   r  r  ,  r  r   r  25000INVALID_TRANSACTION_STATEc                      e Zd ZdS )ActiveSqlTransactionNr  r?   r   r@   r  r  0  r  r   r  25001ACTIVE_SQL_TRANSACTIONc                      e Zd ZdS )BranchTransactionAlreadyActiveNr  r?   r   r@   r   r   4  r  r   r   25002!BRANCH_TRANSACTION_ALREADY_ACTIVEc                      e Zd ZdS )+InappropriateAccessModeForBranchTransactionNr  r?   r   r@   r$  r$  8  r  r   r$  250030INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTIONc                      e Zd ZdS )/InappropriateIsolationLevelForBranchTransactionNr  r?   r   r@   r(  r(  <  r  r   r(  250044INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTIONc                      e Zd ZdS )*NoActiveSqlTransactionForBranchTransactionNr  r?   r   r@   r,  r,  @  r  r   r,  250050NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTIONc                      e Zd ZdS )ReadOnlySqlTransactionNr  r?   r   r@   r0  r0  D  r  r   r0  25006READ_ONLY_SQL_TRANSACTIONc                      e Zd ZdS )(SchemaAndDataStatementMixingNotSupportedNr  r?   r   r@   r4  r4  H  r  r   r4  25007.SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTEDc                      e Zd ZdS )$HeldCursorRequiresSameIsolationLevelNr  r?   r   r@   r8  r8  L  r  r   r8  25008)HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVELc                      e Zd ZdS )NoActiveSqlTransactionNr  r?   r   r@   r<  r<  P  r  r   r<  25P01NO_ACTIVE_SQL_TRANSACTIONc                      e Zd ZdS )InFailedSqlTransactionNr  r?   r   r@   r@  r@  T  r  r   r@  25P02IN_FAILED_SQL_TRANSACTIONc                      e Zd ZdS )IdleInTransactionSessionTimeoutNr  r?   r   r@   rD  rD  X  r  r   rD  25P03#IDLE_IN_TRANSACTION_SESSION_TIMEOUTc                      e Zd ZdS )TransactionTimeoutNr  r?   r   r@   rH  rH  \  r  r   rH  25P04TRANSACTION_TIMEOUTc                      e Zd ZdS )InvalidSqlStatementNameNr  r?   r   r@   rL  rL  c  r  r   rL  26000INVALID_SQL_STATEMENT_NAMEc                      e Zd ZdS )TriggeredDataChangeViolationNr  r?   r   r@   rP  rP  j  r  r   rP  27000TRIGGERED_DATA_CHANGE_VIOLATIONc                      e Zd ZdS )!InvalidAuthorizationSpecificationNr  r?   r   r@   rT  rT  q  r  r   rT  28000#INVALID_AUTHORIZATION_SPECIFICATIONc                      e Zd ZdS )InvalidPasswordNr  r?   r   r@   rX  rX  u  r  r   rX  28P01INVALID_PASSWORDc                      e Zd ZdS )'DependentPrivilegeDescriptorsStillExistNr  r?   r   r@   r\  r\  |  r  r   r\  2B000+DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXISTc                      e Zd ZdS )DependentObjectsStillExistNr  r?   r   r@   r`  r`    r  r   r`  2BP01DEPENDENT_OBJECTS_STILL_EXISTc                      e Zd ZdS )InvalidTransactionTerminationNr  r?   r   r@   rd  rd    r  r   rd  2D000INVALID_TRANSACTION_TERMINATIONc                      e Zd ZdS )SqlRoutineExceptionNr  r?   r   r@   rh  rh    r  r   rh  2F000SQL_ROUTINE_EXCEPTIONc                      e Zd ZdS )ModifyingSqlDataNotPermittedNr  r?   r   r@   rl  rl    r  r   rl  2F002 MODIFYING_SQL_DATA_NOT_PERMITTEDc                      e Zd ZdS )ProhibitedSqlStatementAttemptedNr  r?   r   r@   rp  rp    r  r   rp  2F003"PROHIBITED_SQL_STATEMENT_ATTEMPTEDc                      e Zd ZdS )ReadingSqlDataNotPermittedNr  r?   r   r@   rt  rt    r  r   rt  2F004READING_SQL_DATA_NOT_PERMITTEDc                      e Zd ZdS )!FunctionExecutedNoReturnStatementNr  r?   r   r@   rx  rx    r  r   rx  2F005%FUNCTION_EXECUTED_NO_RETURN_STATEMENTc                      e Zd ZdS )InvalidCursorNameNr  r?   r   r@   r|  r|    r  r   r|  34000INVALID_CURSOR_NAMEc                      e Zd ZdS )ExternalRoutineExceptionNr  r?   r   r@   r  r    r  r   r  38000EXTERNAL_ROUTINE_EXCEPTIONc                      e Zd ZdS )ContainingSqlNotPermittedNr  r?   r   r@   r  r    r  r   r  38001CONTAINING_SQL_NOT_PERMITTEDc                      e Zd ZdS )ModifyingSqlDataNotPermittedExtNr  r?   r   r@   r  r    r  r   r  38002c                      e Zd ZdS )"ProhibitedSqlStatementAttemptedExtNr  r?   r   r@   r  r    r  r   r  38003c                      e Zd ZdS )ReadingSqlDataNotPermittedExtNr  r?   r   r@   r  r    r  r   r  38004c                      e Zd ZdS )"ExternalRoutineInvocationExceptionNr  r?   r   r@   r  r    r  r   r  39000%EXTERNAL_ROUTINE_INVOCATION_EXCEPTIONc                      e Zd ZdS )InvalidSqlstateReturnedNr  r?   r   r@   r  r    r  r   r  39001INVALID_SQLSTATE_RETURNEDc                      e Zd ZdS )NullValueNotAllowedExtNr  r?   r   r@   r  r    r  r   r  39004c                      e Zd ZdS )TriggerProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P01TRIGGER_PROTOCOL_VIOLATEDc                      e Zd ZdS )SrfProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P02SRF_PROTOCOL_VIOLATEDc                      e Zd ZdS )EventTriggerProtocolViolatedNr  r?   r   r@   r  r    r  r   r  39P03EVENT_TRIGGER_PROTOCOL_VIOLATEDc                      e Zd ZdS )SavepointExceptionNr  r?   r   r@   r  r    r  r   r  3B000SAVEPOINT_EXCEPTIONc                      e Zd ZdS )InvalidSavepointSpecificationNr  r?   r   r@   r  r    r  r   r  3B001INVALID_SAVEPOINT_SPECIFICATIONc                      e Zd ZdS )InvalidCatalogNameNr  r?   r   r@   r  r    r  r   r  3D000INVALID_CATALOG_NAMEc                      e Zd ZdS )InvalidSchemaNameNr  r?   r   r@   r  r    r  r   r  3F000INVALID_SCHEMA_NAMEc                      e Zd ZdS )TransactionRollbackNr  r?   r   r@   r  r    r  r   r  40000TRANSACTION_ROLLBACKc                      e Zd ZdS )SerializationFailureNr  r?   r   r@   r  r    r  r   r  40001SERIALIZATION_FAILUREc                      e Zd ZdS )'TransactionIntegrityConstraintViolationNr  r?   r   r@   r  r    r  r   r  40002*TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATIONc                      e Zd ZdS )StatementCompletionUnknownNr  r?   r   r@   r  r    r  r   r  40003STATEMENT_COMPLETION_UNKNOWNc                      e Zd ZdS )DeadlockDetectedNr  r?   r   r@   r  r    r  r   r  40P01DEADLOCK_DETECTEDc                      e Zd ZdS ) SyntaxErrorOrAccessRuleViolationNr  r?   r   r@   r  r    r  r   r  42000%SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATIONc                      e Zd ZdS )InsufficientPrivilegeNr  r?   r   r@   r  r    r  r   r  42501INSUFFICIENT_PRIVILEGEc                      e Zd ZdS )SyntaxErrorNr  r?   r   r@   r  r    r  r   r  42601SYNTAX_ERRORc                      e Zd ZdS )InvalidNameNr  r?   r   r@   r  r    r  r   r  42602INVALID_NAMEc                      e Zd ZdS )InvalidColumnDefinitionNr  r?   r   r@   r  r    r  r   r  42611INVALID_COLUMN_DEFINITIONc                      e Zd ZdS )NameTooLongNr  r?   r   r@   r  r  "  r  r   r  42622NAME_TOO_LONGc                      e Zd ZdS )DuplicateColumnNr  r?   r   r@   r  r  &  r  r   r  42701DUPLICATE_COLUMNc                      e Zd ZdS )AmbiguousColumnNr  r?   r   r@   r  r  *  r  r   r  42702AMBIGUOUS_COLUMNc                      e Zd ZdS )UndefinedColumnNr  r?   r   r@   r  r  .  r  r   r  42703UNDEFINED_COLUMNc                      e Zd ZdS )UndefinedObjectNr  r?   r   r@   r  r  2  r  r   r  42704UNDEFINED_OBJECTc                      e Zd ZdS )DuplicateObjectNr  r?   r   r@   r  r  6  r  r   r  42710DUPLICATE_OBJECTc                      e Zd ZdS )DuplicateAliasNr  r?   r   r@   r  r  :  r  r   r  42712DUPLICATE_ALIASc                      e Zd ZdS )DuplicateFunctionNr  r?   r   r@   r  r  >  r  r   r  42723DUPLICATE_FUNCTIONc                      e Zd ZdS )AmbiguousFunctionNr  r?   r   r@   r   r   B  r  r   r   42725AMBIGUOUS_FUNCTIONc                      e Zd ZdS )GroupingErrorNr  r?   r   r@   r  r  F  r  r   r  42803GROUPING_ERRORc                      e Zd ZdS )DatatypeMismatchNr  r?   r   r@   r  r  J  r  r   r  42804DATATYPE_MISMATCHc                      e Zd ZdS )WrongObjectTypeNr  r?   r   r@   r  r  N  r  r   r  42809WRONG_OBJECT_TYPEc                      e Zd ZdS )InvalidForeignKeyNr  r?   r   r@   r  r  R  r  r   r  42830INVALID_FOREIGN_KEYc                      e Zd ZdS )CannotCoerceNr  r?   r   r@   r  r  V  r  r   r  42846CANNOT_COERCEc                      e Zd ZdS )UndefinedFunctionNr  r?   r   r@   r  r  Z  r  r   r  42883UNDEFINED_FUNCTIONc                      e Zd ZdS )GeneratedAlwaysNr  r?   r   r@   r  r  ^  r  r   r  428C9GENERATED_ALWAYSc                      e Zd ZdS )ReservedNameNr  r?   r   r@   r   r   b  r  r   r   42939RESERVED_NAMEc                      e Zd ZdS )UndefinedTableNr  r?   r   r@   r$  r$  f  r  r   r$  42P01UNDEFINED_TABLEc                      e Zd ZdS )UndefinedParameterNr  r?   r   r@   r(  r(  j  r  r   r(  42P02UNDEFINED_PARAMETERc                      e Zd ZdS )DuplicateCursorNr  r?   r   r@   r,  r,  n  r  r   r,  42P03DUPLICATE_CURSORc                      e Zd ZdS )DuplicateDatabaseNr  r?   r   r@   r0  r0  r  r  r   r0  42P04DUPLICATE_DATABASEc                      e Zd ZdS )DuplicatePreparedStatementNr  r?   r   r@   r4  r4  v  r  r   r4  42P05DUPLICATE_PREPARED_STATEMENTc                      e Zd ZdS )DuplicateSchemaNr  r?   r   r@   r8  r8  z  r  r   r8  42P06DUPLICATE_SCHEMAc                      e Zd ZdS )DuplicateTableNr  r?   r   r@   r<  r<  ~  r  r   r<  42P07DUPLICATE_TABLEc                      e Zd ZdS )AmbiguousParameterNr  r?   r   r@   r@  r@    r  r   r@  42P08AMBIGUOUS_PARAMETERc                      e Zd ZdS )AmbiguousAliasNr  r?   r   r@   rD  rD    r  r   rD  42P09AMBIGUOUS_ALIASc                      e Zd ZdS )InvalidColumnReferenceNr  r?   r   r@   rH  rH    r  r   rH  42P10INVALID_COLUMN_REFERENCEc                      e Zd ZdS )InvalidCursorDefinitionNr  r?   r   r@   rL  rL    r  r   rL  42P11INVALID_CURSOR_DEFINITIONc                      e Zd ZdS )InvalidDatabaseDefinitionNr  r?   r   r@   rP  rP    r  r   rP  42P12INVALID_DATABASE_DEFINITIONc                      e Zd ZdS )InvalidFunctionDefinitionNr  r?   r   r@   rT  rT    r  r   rT  42P13INVALID_FUNCTION_DEFINITIONc                      e Zd ZdS )"InvalidPreparedStatementDefinitionNr  r?   r   r@   rX  rX    r  r   rX  42P14%INVALID_PREPARED_STATEMENT_DEFINITIONc                      e Zd ZdS )InvalidSchemaDefinitionNr  r?   r   r@   r\  r\    r  r   r\  42P15INVALID_SCHEMA_DEFINITIONc                      e Zd ZdS )InvalidTableDefinitionNr  r?   r   r@   r`  r`    r  r   r`  42P16INVALID_TABLE_DEFINITIONc                      e Zd ZdS )InvalidObjectDefinitionNr  r?   r   r@   rd  rd    r  r   rd  42P17INVALID_OBJECT_DEFINITIONc                      e Zd ZdS )IndeterminateDatatypeNr  r?   r   r@   rh  rh    r  r   rh  42P18INDETERMINATE_DATATYPEc                      e Zd ZdS )InvalidRecursionNr  r?   r   r@   rl  rl    r  r   rl  42P19INVALID_RECURSIONc                      e Zd ZdS )WindowingErrorNr  r?   r   r@   rp  rp    r  r   rp  42P20WINDOWING_ERRORc                      e Zd ZdS )CollationMismatchNr  r?   r   r@   rt  rt    r  r   rt  42P21COLLATION_MISMATCHc                      e Zd ZdS )IndeterminateCollationNr  r?   r   r@   rx  rx    r  r   rx  42P22INDETERMINATE_COLLATIONc                      e Zd ZdS )WithCheckOptionViolationNr  r?   r   r@   r|  r|    r  r   r|  44000WITH_CHECK_OPTION_VIOLATIONc                      e Zd ZdS )InsufficientResourcesNr  r?   r   r@   r  r    r  r   r  53000INSUFFICIENT_RESOURCESc                      e Zd ZdS )DiskFullNr  r?   r   r@   r  r    r  r   r  53100	DISK_FULLc                      e Zd ZdS )OutOfMemoryNr  r?   r   r@   r  r    r  r   r  53200OUT_OF_MEMORYc                      e Zd ZdS )TooManyConnectionsNr  r?   r   r@   r  r    r  r   r  53300TOO_MANY_CONNECTIONSc                      e Zd ZdS )ConfigurationLimitExceededNr  r?   r   r@   r  r    r  r   r  53400CONFIGURATION_LIMIT_EXCEEDEDc                      e Zd ZdS )ProgramLimitExceededNr  r?   r   r@   r  r    r  r   r  54000PROGRAM_LIMIT_EXCEEDEDc                      e Zd ZdS )StatementTooComplexNr  r?   r   r@   r  r    r  r   r  54001STATEMENT_TOO_COMPLEXc                      e Zd ZdS )TooManyColumnsNr  r?   r   r@   r  r    r  r   r  54011TOO_MANY_COLUMNSc                      e Zd ZdS )TooManyArgumentsNr  r?   r   r@   r  r    r  r   r  54023TOO_MANY_ARGUMENTSc                      e Zd ZdS )ObjectNotInPrerequisiteStateNr  r?   r   r@   r  r    r  r   r  55000 OBJECT_NOT_IN_PREREQUISITE_STATEc                      e Zd ZdS )ObjectInUseNr  r?   r   r@   r  r    r  r   r  55006OBJECT_IN_USEc                      e Zd ZdS )CantChangeRuntimeParamNr  r?   r   r@   r  r    r  r   r  55P02CANT_CHANGE_RUNTIME_PARAMc                      e Zd ZdS )LockNotAvailableNr  r?   r   r@   r  r    r  r   r  55P03LOCK_NOT_AVAILABLEc                      e Zd ZdS )UnsafeNewEnumValueUsageNr  r?   r   r@   r  r    r  r   r  55P04UNSAFE_NEW_ENUM_VALUE_USAGEc                      e Zd ZdS )OperatorInterventionNr  r?   r   r@   r  r  	  r  r   r  57000OPERATOR_INTERVENTIONc                      e Zd ZdS )QueryCanceledNr  r?   r   r@   r  r    r  r   r  57014QUERY_CANCELEDc                      e Zd ZdS )AdminShutdownNr  r?   r   r@   r  r    r  r   r  57P01ADMIN_SHUTDOWNc                      e Zd ZdS )CrashShutdownNr  r?   r   r@   r  r    r  r   r  57P02CRASH_SHUTDOWNc                      e Zd ZdS )CannotConnectNowNr  r?   r   r@   r  r    r  r   r  57P03CANNOT_CONNECT_NOWc                      e Zd ZdS )DatabaseDroppedNr  r?   r   r@   r  r    r  r   r  57P04DATABASE_DROPPEDc                      e Zd ZdS )IdleSessionTimeoutNr  r?   r   r@   r  r  !  r  r   r  57P05IDLE_SESSION_TIMEOUTc                      e Zd ZdS )SystemErrorNr  r?   r   r@   r  r  (  r  r   r  58000SYSTEM_ERRORc                      e Zd ZdS )IoErrorNr  r?   r   r@   r  r  ,  r  r   r  58030IO_ERRORc                      e Zd ZdS )UndefinedFileNr  r?   r   r@   r  r  0  r  r   r  58P01UNDEFINED_FILEc                      e Zd ZdS )DuplicateFileNr  r?   r   r@   r  r  4  r  r   r  58P02DUPLICATE_FILEc                      e Zd ZdS )FileNameTooLongNr  r?   r   r@   r  r  8  r  r   r  58P03FILE_NAME_TOO_LONGc                      e Zd ZdS )SnapshotTooOldNr  r?   r   r@   r  r  ?  r  r   r  72000SNAPSHOT_TOO_OLDc                      e Zd ZdS )ConfigFileErrorNr  r?   r   r@   r  r  F  r  r   r  F0000CONFIG_FILE_ERRORc                      e Zd ZdS )LockFileExistsNr  r?   r   r@   r  r  J  r  r   r  F0001LOCK_FILE_EXISTSc                      e Zd ZdS )FdwErrorNr  r?   r   r@   r  r  Q  r  r   r  HV000	FDW_ERRORc                      e Zd ZdS )FdwOutOfMemoryNr  r?   r   r@   r  r  U  r  r   r  HV001FDW_OUT_OF_MEMORYc                      e Zd ZdS )FdwDynamicParameterValueNeededNr  r?   r   r@   r  r  Y  r  r   r  HV002"FDW_DYNAMIC_PARAMETER_VALUE_NEEDEDc                      e Zd ZdS )FdwInvalidDataTypeNr  r?   r   r@   r   r   ]  r  r   r   HV004FDW_INVALID_DATA_TYPEc                      e Zd ZdS )FdwColumnNameNotFoundNr  r?   r   r@   r  r  a  r  r   r  HV005FDW_COLUMN_NAME_NOT_FOUNDc                      e Zd ZdS )FdwInvalidDataTypeDescriptorsNr  r?   r   r@   r  r  e  r  r   r  HV006!FDW_INVALID_DATA_TYPE_DESCRIPTORSc                      e Zd ZdS )FdwInvalidColumnNameNr  r?   r   r@   r  r  i  r  r   r  HV007FDW_INVALID_COLUMN_NAMEc                      e Zd ZdS )FdwInvalidColumnNumberNr  r?   r   r@   r  r  m  r  r   r  HV008FDW_INVALID_COLUMN_NUMBERc                      e Zd ZdS )FdwInvalidUseOfNullPointerNr  r?   r   r@   r  r  q  r  r   r  HV009FDW_INVALID_USE_OF_NULL_POINTERc                      e Zd ZdS )FdwInvalidStringFormatNr  r?   r   r@   r  r  u  r  r   r  HV00AFDW_INVALID_STRING_FORMATc                      e Zd ZdS )FdwInvalidHandleNr  r?   r   r@   r  r  y  r  r   r  HV00BFDW_INVALID_HANDLEc                      e Zd ZdS )FdwInvalidOptionIndexNr  r?   r   r@   r   r   }  r  r   r   HV00CFDW_INVALID_OPTION_INDEXc                      e Zd ZdS )FdwInvalidOptionNameNr  r?   r   r@   r$  r$    r  r   r$  HV00DFDW_INVALID_OPTION_NAMEc                      e Zd ZdS )FdwOptionNameNotFoundNr  r?   r   r@   r(  r(    r  r   r(  HV00JFDW_OPTION_NAME_NOT_FOUNDc                      e Zd ZdS )FdwReplyHandleNr  r?   r   r@   r,  r,    r  r   r,  HV00KFDW_REPLY_HANDLEc                      e Zd ZdS )FdwUnableToCreateExecutionNr  r?   r   r@   r0  r0    r  r   r0  HV00LFDW_UNABLE_TO_CREATE_EXECUTIONc                      e Zd ZdS )FdwUnableToCreateReplyNr  r?   r   r@   r4  r4    r  r   r4  HV00MFDW_UNABLE_TO_CREATE_REPLYc                      e Zd ZdS )FdwUnableToEstablishConnectionNr  r?   r   r@   r8  r8    r  r   r8  HV00N"FDW_UNABLE_TO_ESTABLISH_CONNECTIONc                      e Zd ZdS )FdwNoSchemasNr  r?   r   r@   r<  r<    r  r   r<  HV00PFDW_NO_SCHEMASc                      e Zd ZdS )FdwSchemaNotFoundNr  r?   r   r@   r@  r@    r  r   r@  HV00QFDW_SCHEMA_NOT_FOUNDc                      e Zd ZdS )FdwTableNotFoundNr  r?   r   r@   rD  rD    r  r   rD  HV00RFDW_TABLE_NOT_FOUNDc                      e Zd ZdS )FdwFunctionSequenceErrorNr  r?   r   r@   rH  rH    r  r   rH  HV010FDW_FUNCTION_SEQUENCE_ERRORc                      e Zd ZdS )FdwTooManyHandlesNr  r?   r   r@   rL  rL    r  r   rL  HV014FDW_TOO_MANY_HANDLESc                      e Zd ZdS )$FdwInconsistentDescriptorInformationNr  r?   r   r@   rP  rP    r  r   rP  HV021'FDW_INCONSISTENT_DESCRIPTOR_INFORMATIONc                      e Zd ZdS )FdwInvalidAttributeValueNr  r?   r   r@   rT  rT    r  r   rT  HV024FDW_INVALID_ATTRIBUTE_VALUEc                      e Zd ZdS )$FdwInvalidStringLengthOrBufferLengthNr  r?   r   r@   rX  rX    r  r   rX  HV090*FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTHc                      e Zd ZdS )#FdwInvalidDescriptorFieldIdentifierNr  r?   r   r@   r\  r\    r  r   r\  HV091'FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIERc                      e Zd ZdS )PlpgsqlErrorNr  r?   r   r@   r`  r`    r  r   r`  P0000PLPGSQL_ERRORc                      e Zd ZdS )RaiseExceptionNr  r?   r   r@   rd  rd    r  r   rd  P0001RAISE_EXCEPTIONc                      e Zd ZdS )NoDataFoundNr  r?   r   r@   rh  rh    r  r   rh  P0002NO_DATA_FOUNDc                      e Zd ZdS )TooManyRowsNr  r?   r   r@   rl  rl    r  r   rl  P0003TOO_MANY_ROWSc                      e Zd ZdS )AssertFailureNr  r?   r   r@   rp  rp    r  r   rp  P0004ASSERT_FAILUREc                      e Zd ZdS )InternalError_Nr  r?   r   r@   rt  rt    r  r   rt  XX000INTERNAL_ERRORc                      e Zd ZdS )DataCorruptedNr  r?   r   r@   rx  rx    r  r   rx  XX001DATA_CORRUPTEDc                      e Zd ZdS )IndexCorruptedNr  r?   r   r@   r|  r|    r  r   r|  XX002INDEX_CORRUPTEDN)r   r   r;   r   )r   r   r;   r   )r   r.   r;   rV  rO  )r[  r   rZ   r.   r;   r   )r   r   r;   r`  (8  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   rZ  r_  r   r]  re  rg  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  rx  r|  KeyboardInterrupt_NO_TRACEBACKr?   r   r@   <module>r     s%;    ( # " " " " " C C C C C C C C C C C C C C " " " " " " 0 0 0 0 0 0 0 0 0 0 $ $ $ $ $ $ $ $ ) ) ) ) ) ) ) ) U U U U U U U U U U U U 211111111B	 B B B B$&	 & & & & ~ ~ ~ ~ ~ ~ ~ ~B" " " "    i   < < < < <I < < <~    U   " " " " "E " " "       
 
 
 
 
} 
 
 
    ]       M       }              (       *       &   ` ` ` ` ` ` ` `F   ' ' ' 'S S S S 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   