§
    öÛg¼  ã                   óD  — d Z ddlZddlZddlZddlZddlZddlZddlmZ ddl	m
Z ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ  ej        dddd¬¦  «        Zeej        ej        gej        z   Zej        fd„Z
edk    r  ej         e
ej        ¦  «        ¦  «         dS dS )z2
Python command with a PG-API connection(``db``).
é    Né   )Úclientparameters)Úcommand)Úproject)Údefault)Ú
exceptions)Úsys)Úlibz
--pq-traceÚpq_traceztrace PQ protocol transmissions)ÚdestÚhelpr   c           	      óœ  ‡— t          j        dt          j        t          ¬¦  «        }|                     ¦   «          |                     | dd …         ¦  «        \  }}d}t          j         	                    dt          j        j        ¦  «         t          j                             |j        pg ¦  «         |j        r,t          j        t#          t          j        |j        ¦  «        Ž }nd }d }|j        �t)          |j        d¦  «        }	 d}d }d }	d }
|
�€%	 t          j        |d ¬¦  «        }|rd|d	<   	 t          j        |d
¬¦  «         n# t.          $ r t1          d¦  «        ‚w xY wt3          j        dd|i|¤Ž}	 |	¦   «         }
|�|j        |
_        |
                     ¦   «          n�# t<          j        $ r}}|
j         D ]j}|j!        }tE          |t<          j#        ¦  «        rGtH          j%                             t          j&        |j'        z   t          j&        dz  z   ¦  «         d}d }
 nŒk‚ Y d }~nd }~ww xY w|
�®%tQ          j)        |tU          |dd ¦  «        tU          |dd ¦  «        ¬¦  «        }|	|
|
j+        |
j,        |
j-        |
j.        |
j/        |
j0        dœ}tE          tb          td          ¦  «        stb          j3        Šntb          Šˆfd„|D ¦   «         }‰ 4                    |¦  «         	 |
5   |tQ          j5        t          j6         7                    d¦  «        ¦  «        ¬¦  «        }tU          tH          dd ¦  «        }|r|rtq          |tr          ¦  «        s|
j:        `;d d d ¦  «         n# 1 swxY w Y   ‰ 4                    |¦  «         | <                    ¦   «         D ]\  }}|€‰tz          = Œ|�| >                    ¦   «          nU# ‰ 4                    |¦  «         | <                    ¦   «         D ]\  }}|€‰tz          = Œ|�| >                    ¦   «          w w xY wn4#  t          j         ?                    t          j        j        ¦  «         ‚ xY w|S )Nz'%prog [connection options] [script] ...)ÚversionÚoption_listé   r   ÚaF)Úparsed_optionsÚprompt_titleTÚprompt_passwordÚ	pg_python)r   Úcategoryr   Úpython_contextÚpython_main)ÚcontextÚloader)Ú	connectorÚdbÚdoÚprepareÚsqlexecÚsettingsÚprocÚxactc                 ó<   •— i | ]}|‰                      |¦  «        “ŒS © )Úget)Ú.0ÚkÚ
builtins_ds     €úN/granary/edev/quantum/lib/python3.11/site-packages/postgresql/bin/pg_python.pyú
<dictcomp>zcommand.<locals>.<dictcomp>n   s'   ø€ Ð=Ð=Ð= qˆQ�—’ Ñ"Ô"Ð=Ð=Ð=ó    ÚPYTHON_POSTMORTEM)r   Ú	last_typer%   )@r   ÚDefaultParserr   r   Údefault_optionsÚdisable_interspersed_argsÚ
parse_argsÚpg_sysÚlibpathÚinsertÚosÚpathÚcurdirÚextendr
   Úpg_libÚCategoryÚmapÚloadr   ÚopenÚcollectÚresolve_passwordÚEOFErrorÚ
SystemExitÚ	pg_driverÚfitÚwriteÚtracerÚconnectÚpg_excÚClientCannotConnectErrorÚfailuresÚerrorÚ
isinstanceÚ AuthenticationSpecificationErrorr	   ÚstderrÚlinesepÚmessageÚpycmdÚ	ExecutionÚgetattrr   r   Úexecuter!   r"   r#   Ú__builtins__ÚdictÚ__dict__ÚupdateÚ
postmortemÚenvironr&   Ú
issubclassÚ	ExceptionÚpqÚsocketÚitemsÚxÚcloseÚremove)ÚargvÚpÚcoÚcaÚrvÚcatÚ
trace_fileÚneed_promptÚcondr   Ú
connectionÚerrÚattÚexcÚ
pythonexecÚbuiltin_overloadÚrestorer(   Úvr)   s                      @r*   r   r   "   sà  ø€ ÝÔ#Ø+ÝŒOÝðñ ô €ð
 ×ÒÑÔÐØ
�,Š,�t˜A˜B˜B”xÑ
 Ô
 �€€RØ€õ „×Ò�q�"œ'œ.Ñ)Ô)Ð)Ý„×Ò�r”zÐ' RÑ(Ô(Ð(Ø„Fð ÝŒ��Vœ[¨"¬&Ñ1Ô1Ð2€#€#à€#à€Ø„KÐÝ�B”K Ñ%Ô%€*ðLØ€+Ø	€$Ø€)Ø€*ØÑðÝÔ#°RÈÐMÑMÔM€DØð $à#€TÐ
ÑðÝÔ& t¸KÐHÑHÔHÐHÐHøÝð ð ð Ý�a‰=Œ=Ððøøøå”Ð5Ð5¨Ð5°Ð5Ð5€IØ�‘”€JØÐØ#Ô)€ZÔØ×ÒÑÔÐÐøÝ
Ô
)ð ð ð ØÔ"ð 
ð 
ˆØŒ9€SÝ�3�Ô?Ñ@Ô@ð Ý	„j×Ò•r”z C¤KÑ/µ2´:¸a±<Ñ@ÑAÔAÐAà€kØ€jØ€eðð ð €e€e€e€eøøøøðøøøð 	Ñõ8 Œ˜rÝ�RÐ)¨4Ñ0Ô0Ý�B˜ tÑ,Ô,ðñ ô €*ð Ø
Ø
Œ-ØÔ!àÔ!ØÔ#ØŒOØŒOðð Ðõ 
•L¥$Ñ	'Ô	'ð ÝÔ%€:€:å€:Ø=Ð=Ð=Ð=Ð,<Ð=Ñ=Ô=€'à×ÒÐ$Ñ%Ô%Ð%ðØð ð Ø	ˆÝÔ¥¤
§¢Ð/BÑ CÔ CÑDÔDð
ñ 
ô 
€Bõ •#�{ DÑ
)Ô
)€CØ	ð ˆcð �* S­)Ñ4Ô4ð à	ŒÐ	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ×Ò�WÑÔÐØ×%Ò%Ñ'Ô'ð ð �t€qˆ!Ø€yØ	•AˆøØÐØ×ÒÑÔÐøøð ×Ò�WÑÔÐØ×%Ò%Ñ'Ô'ð ð �t€qˆ!Ø€yØ	•AˆøØÐØ×ÒÑÔÐÐð øøøøøðÝ„.×Ò�œœÑ'Ô'Ð'ØøøøØ
€s�   ÄP ÄF% Ä1E ÅF% ÅE"Å"AF% Æ$P Æ%H1Æ4A3H,È'P È,H1È1B5P Ë'O Ë)A2M'ÍO Í'M+Í+O Í.M+Í/O Í2AP ÏAPÐP Ð1Q	Ú__main__)Ú__doc__r6   r	   ÚreÚcodeÚoptparseÚ
contextlibÚ r   Úpythonr   rQ   r   Údriverr   rC   r   rH   r3   r
   r:   Úmake_optionr   Ú
option_libÚoption_libpathÚdefault_optparse_optionsr0   rc   Ú__name__Úexitr%   r,   r*   ú<module>rƒ      sk  ððð ð 
€	€	€	Ø 
€
€
€
Ø 	€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ø Ð Ð Ð Ð Ð à )Ð )Ð )Ð )Ð )Ð )Ø #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð àˆ8ÔØØØ)Øð	ñ ô €ð 
ØÔØÔ ðð 
Ô"ñ	#€ð ”8ð cð cð cð cðJ ˆzÒÐØ	€„ˆ'ˆ'�#”(Ñ
Ô
ÑÔÐÐÐð Ðr,   