Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
default.cpython-313.pyc537 linesDownload Raw Back to __pycache__
1�

2��j�X���SrSSKJr SSKrSSKrSSKrSSKrSSKJr SSK	r	SSK	J3r4 SSK	Jr SSK	Jr SSK	J
r
 SS	K	Jr SS5K	Jr SSK	Jr SSK	Jr SS
K	Jr SSK	Jr SSK	Jr SSK	Jr SSK	Jr SSK	Jr SSK	Jr SSKrSSKJr SSKJr SSKJr SSKJ r  SSKJ!r! SSKJ"r" SSKJ#r# SSKJ$r$ SSKJ%r% SSK&J'r' SSK&J(r( S S!KJ)r) S S"KJ*r* S S#KJ+r+ S S$KJ,r, S S%K-J.r. S S&K-J/r/ S S'K-J0r0 S S(K-J1r1 S S$K-J,r2 S S)K3J4r4 S S*K5J6r6 S S+K7J8r8 S S,K7J9r9 S S-K7J:r: S S.K;J<r< S S/K=J>r> S S0K=J?r? \	R.(a�SS1K@JArA SS2KJBrB SS3KJCrC SS4KJDrD SS5KJErE SS6KJFrF SS7KJGrG SS8KJHrH SS9KJIrI SS:KJJrJ SS;KJKrK SS<KJLrL SS=KJMrM SS>KJNrN SS?KJOrO SS@KJPrP SSAKQJRrR SSBKSJTrT S SCK)JUrU S SDK+JVrV S SEK+JWrW S SFK-JXrX S SGK7JYrY S SHK7JZrZ S SIK7J[r[ S SJK\J]r] S SKK\J^r^ S SLK;J_r_ S SMK`Jara S SNKbJcrc S SOKbJdrd S SPKbJere \R�"SQ\R�\R�-5ri\j"\!5urkrlrmrnro"SRSS\#5rp"STSU\p5rq"SVSW\%5rr\r\plsg)XaDefault implementations of per-dialect sqlalchemy.engine classes.6 7These are semi-private implementation classes which are only of importance8to database dialect authors; dialects will usually use the classes here9as the base class for their own corresponding classes.10 11�)�annotationsN)�perf_counter)�Any)�Callable)�cast)�Dict)�List)�Mapping)�MutableMapping)�MutableSequence)�Optional)�Sequence)�Set)�Tuple)�Type)�
TYPE_CHECKING)�Union�)�characteristics)�cursor)�12interfaces)�13Connection)�14CacheStats)�DBAPICursor)�Dialect)�ExecuteStyle)�ExecutionContext)�15ObjectKind)�ObjectScope�)�event)�exc)�pool)�util)�compiler)�dml)�16expression)�type_api)�
is_tuple_type)�_NoArg)�DDLCompiler)�InsertmanyvaluesSentinelOpts)�SQLCompiler)�quoted_name)�Final)�Literal)�17ModuleType)�Engine)�ResultFetchStrategy)�_CoreMultiExecuteParams)�_CoreSingleExecuteParams)�_DBAPICursorDescription)�_DBAPIMultiExecuteParams)�_DBAPISingleExecuteParams)�_ExecuteOptions)�_MutableCoreSingleExecuteParams)�_ParamStyle)�ConnectArgsType)�DBAPIConnection)�DBAPIModule)�	DBAPIType)�IsolationLevel)�Row)�URL)�_ListenerFnType)�Pool)�PoolProxiedConnection)�18Executable)�Compiled)�Linting)�ResultColumnsEntry)�DMLState)�19UpdateBase)�
BindParameter)�Column)�_BindProcessorType)�_ResultProcessorType)�20TypeEnginez	\s*SELECTc
��\rSrSr%Sr\Rr\Rr	\Rr\Rr
SrSrSrSrSrSr\R*R,rSrS\S'SrS\S'S	r\rSrSrSr Sr!Sr"Sr#Sr$Sr%Sr&Sr'Sr(Sr)Sr*Sr+Sr,Sr-Sr.Sr/Sr0Sr1Sr2Sr3\4Rj"\6Rn"5\6Rp"5S21.5r9\4Rj"\4Rt\4Rv"S5\4Rv"S5\4Rt\4Rt\4Rt\4RxS.5r=S
\S'Sr>Sr?Sr@SrAS\S'SrBS\S'SrCS\S'SrDS\S'SrESrF0rGS\S'SrHSrISrJSrKSrLSrMSrNS\S'SrOS\S'\PR�rRS\S'S rSS!\S"'S#rTSrUSrVSrWSrXSrYSrZS\S$'Sr[Sr\Sr]S%r^\4R�"S&S'S(9SSSSSSS\`R�S\b"\R�5SS4SjS)jj5rd\e\4R�"S*S+5S,55rg\4R�S-5ri\4R�S.5rjSrkSrl\4R�SkS/j5rm\4R�S05rnSlS1jro\4R�S25rp\4R�S35rq\eS45rr\eS55rs\tSmS6j5ruSmS7jrv\tS85rwSnS9jrxSoS:jrySpS;jrzS<r{S=r|S>r}SqS?jr~SrS@jrSsSAjr�StSBjr�SuSCjr�SvSDjr�SwSEjr�SFr�SGr�SHr�SIr�SJr�SKr�SLr�\4R�SM5r�SxSNjr�SxSOjr�SPr�SQr�SRr�SSr�STr�SqSUjr�SqSVjr�SqSWjr�SySXjr�\4GR0SY5r�SZr�S[r�S\r�S]r�SzS^jr�S_r�S`r�Sar�Sbr�Scr�Sdr�Ser�Sfr�Sgr�Shr�Sir�g){�DefaultDialect�xz!Default implementation of DialectTFNzOptional[Set[Any]]�include_set_input_sizes�exclude_set_input_sizesr)�isolation_level�
logging_token�debug)�pool_timeout�echo�	echo_pool�pool_recycle�	pool_size�max_overflow�future�Mapping[str, Any]�engine_config_types�defaulti'�
Optional[int]�#_user_defined_max_identifier_lengthz
Optional[str]rV�max_index_name_length�max_constraint_name_lengthz<MutableMapping[Type[TypeEngine[Any]], Type[TypeEngine[Any]]]�colspecs�named�DEFAULT�bool�use_insertmanyvalues�!use_insertmanyvalues_wo_returningr,�"insertmanyvalues_implicit_sentineli��int�insertmanyvalues_page_sizei��default_schema_namezutf-8)�1.4aThe :paramref:`_sa.create_engine.empty_in_strategy` keyword is deprecated, and no longer has any effect.  All IN expressions are now rendered using the "expanding parameter" strategy which renders a set of boundexpressions, or an "empty set" SELECT, at statement executiontime.)rqz�The :paramref:`_sa.create_engine.server_side_cursors` parameter is deprecated and will be removed in a future release.  Please use the :paramref:`_engine.Connection.execution_options.stream_results` parameter.)�empty_in_strategy�server_side_cursorsc
��U(a1UR(d[R"SU-5eSUl[	USS5(a6[22R"SS5 [RRUl23SUlSUlX0l
X�lUbXlO:URbURRUlOUR UlURS;UlUR#U5UlX l[	USS5nUb,[)[*[,R.UR05nOUR2nU"U5=UlUlUbXPlX`lUR8(aUR8UlXplX�lU	bX�l U[BRDLaX�l#gg)	Nz/Dialect %s does not support server side cursorsT�use_setinputsizesFzoThe dialect-level use_setinputsizes attribute is deprecated.  Please use bind_typing = BindTyping.SETINPUTSIZES�2.0)�qmark�format�numeric�numeric_dollar�
type_compiler)$�supports_server_side_cursorsr"�
ArgumentErrorrs�getattrr$�warn_deprecatedr�24BindTyping�
SETINPUTSIZES�bind_typing�25positional�_ischema�dbapi�skip_autocommit_rollback�26paramstyle�default_paramstyle�preparer�identifier_preparer�_on_connect_isolation_levelrrr%�GenericTypeCompilerr{�type_compiler_cls�type_compiler_instance�supports_native_booleanrd�max_identifier_length�label_length�compiler_lintingrkr*�NO_ARGro)�selfr�rVr��implicit_returningr�r�r�rorkr�rsr��kwargs�legacy_tt_callable�tt_callables                �_D:\code\apps\devtools\python\user_packages\Python313\site-packages\sqlalchemy/engine/default.py�__init__�DefaultDialect.__init__s���J��4�4��'�'�E��L���,0��(��4�,�e�4�4�� � �9��	
� *�4�4�B�B�D�������
��27�(@�%��!�(�O�
�Z�Z�
#�"�j�j�3�3�D�O�"�5�5�D�O��/�/�.28�29���$(�=�=��#6�� �+:�(�$�T�?�D�A���)���X�1�1�2��"�"��K�30�0�0�K�;F�t�;L�L��#�d�&8�"�.�+B�(�3H�0��3�3��8�8�
�&�)�� 0���+�(<�%�%�V�]�]�:�.H�+�;�rvz]full_returning is deprecated, please use insert_returning, update_returning, delete_returningc�f�UR=(a UR=(a UR$�N)�insert_returning�update_returning�delete_returning�r�s r��full_returning�DefaultDialect.full_returning}s.��
�!�!�
&��%�%�
&��%�%�	31r�c�@�UR=(a UR$)a�Default implementation for insert_executemany_returning, if not32otherwise overridden by the specific dialect.33 34The default dialect determines "insert_executemany_returning" is35available if the dialect in use has opted into using the36"use_insertmanyvalues" feature. If they haven't opted into that, then37this attribute is False, unless the dialect in question overrides this38and provides some other implementation (such as the Oracle Database39dialects).40 41�r�rkr�s r��insert_executemany_returning�+DefaultDialect.insert_executemany_returning�s���$�$�B��)B�)B�Br�c�@�UR=(a UR$)alDefault implementation for42insert_executemany_returning_deterministic_order, if not otherwise43overridden by the specific dialect.44 45The default dialect determines "insert_executemany_returning" can have46deterministic order only if the dialect in use has opted into using the47"use_insertmanyvalues" feature, which implements deterministic ordering48using client side sentinel columns only by default.  The49"insertmanyvalues" feature also features alternate forms that can50use server-generated PK values as "sentinels", but those are only51used if the :attr:`.Dialect.insertmanyvalues_implicit_sentinel`52bitflag enables those alternate SQL forms, which are disabled53by default.54 55If the dialect in use hasn't opted into that, then this attribute is56False, unless the dialect in question overrides this and provides some57other implementation (such as the Oracle Database dialects).58 59r�r�s r��4insert_executemany_returning_sort_by_parameter_order�CDefaultDialect.insert_executemany_returning_sort_by_parameter_order�s��*�$�$�B��)B�)B�Br�c�h�URc[R"SUS35eUR$)N�Dialect z\ does not have a Python DBAPI established and cannot be used for actual database interaction)r�r"�InvalidRequestErrorr�s r��loaded_dbapi�DefaultDialect.loaded_dbapi�s>���:�:���)�)��4�&�!E�E��
��z�z�r�c�N�UR[RRL$r�)r�rr��RENDER_CASTSr�s r��_bind_typing_render_casts�(DefaultDialect._bind_typing_render_casts�s�����:�#8�#8�#E�#E�E�Er�c��[U[5(d,[R"S[<S[	U5<S35eg)Nz7The argument passed to Dialect.has_table() should be a z, got z�. Additionally, the Dialect.has_table() method is for internal dialect use only; please use ``inspect(some_engine).has_table(<tablename>>)`` for public API use.)�60isinstancerr"r}�type)r��args  r��_ensure_has_table_connection�+DefaultDialect._ensure_has_table_connection�s8���#�z�*�*��#�#�*4�T�#�Y�
@��
�+r�c���URRRSS5nUc2[R"SUR61<SUR<S3SS9 [U5$)N�supports_statement_cacher��:a� will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning.�cprf)�code)�	__class__�__dict__�getr$�warn�name�driverrj)r��sscs  r��_supports_statement_cache�(DefaultDialect._supports_statement_cache�sU���n�n�%�%�)�)�*D�d�K���;��I�I�#�i�i����	6��
��C�y�r�c�,�[R"5$r�)�weakref�WeakKeyDictionaryr�s r��_type_memos�DefaultDialect._type_memos�s���(�(�*�*r�c�:�URS-UR-$)N�+)r�r�r�s r��dialect_description�"DefaultDialect.dialect_description�s���y�y�3�����,�,r�c��UR$)z�True if this dialect supports sane rowcount even if RETURNING is62in use.63 64For dialects that don't support RETURNING, this is synonymous with65``supports_sane_rowcount``.66 67)�supports_sane_rowcountr�s r�� supports_sane_rowcount_returning�/DefaultDialect.supports_sane_rowcount_returning�s���*�*�*r�c�8�[US[R5$)N�	poolclass)r~r#�	QueuePool)�cls�urls  r��get_pool_class�DefaultDialect.get_pool_class�s���s�K����8�8r�c�$�URU5$r�)r�)r�r�s  r��get_dialect_pool_class�%DefaultDialect.get_dialect_pool_class�s���"�"�3�'�'r�c��SRURRS5SS5n[US-5 g![a gf=f)N�.r�����z68.provision)�join�69__module__�split�70__import__�ImportError)r��packages  r��load_provisioning� DefaultDialect.load_provisioning�sJ���(�(�3�>�>�/�/��4�Q�r�:�;��	��w��-�.���	��	�s�>�71A�72Ac�0^�TRbU4SjnU$g)Nc�>>�TRUTR5 gr�)�_assert_and_set_isolation_levelr�)�73dbapi_conn�conn_recr�s  �r��builtin_connect�:DefaultDialect._builtin_onconnect.<locals>.builtin_connects����4�4��� @� @�r�)r�)r�r�s` r��_builtin_onconnect�!DefaultDialect._builtin_onconnects����+�+�7�
�74#�"�r�c�T�URU5UlURU5UlURURR5UlUR(dURU5nU(aX lUR(aJURUR:�a/[R"SURUR4-5egg![a75 SUlN�f=f![a76 SUlN�f=f![a77 SUlN�f=f)NzQLabel length of %d is greater than this dialect's maximum identifier length of %d)�_get_server_version_info�server_version_info�NotImplementedError�_get_default_schema_namerp�get_default_isolation_level�78connection�dbapi_connection�default_isolation_levelrd�_check_max_identifier_lengthr�r�r"r})r�r��max_ident_lengths   r��79initialize�DefaultDialect.initializes(��	,�'+�'D�'D��(�D�$�80	,�'+�'D�'D��(�D�$�	0�+/�+K�+K��%�%�6�6�,�D�(��7�7�#�@�@��L���-=�*�
����!�!�D�$>�$>�>��#�#�3��$�$�d�&@�&@�A�B��
�?�
��-#�	,�'+�D�$�	,��#�	,�'+�D�$�	,��#�	0�+/�D�(�	0�s3�C%�C<�*D�%C9�8C9�<D�D�D'�&D'c��gr��r�s r��81on_connect�DefaultDialect.on_connect2s��r�c��g)z�Perform a connection / server version specific check to determine82the max_identifier_length.83 84If the dialect's class level max_identifier_length should be used,85can return None.86 87.. versionadded:: 1.3.988 89Nr�r�r�s  r�r��+DefaultDialect._check_max_identifier_length6s��r�c�$�URU5$)a�Given a DBAPI connection, return its isolation level, or90a default isolation level if one cannot be retrieved.91 92May be overridden by subclasses in order to provide a93"fallback" isolation level for databases that cannot reliably94retrieve the actual isolation level.95 96By default, calls the :meth:`_engine.Interfaces.get_isolation_level`97method, propagating any exceptions raised.98 99.. versionadded:: 1.3.22100 101)�get_isolation_level�r�r�s  r�r��*DefaultDialect.get_default_isolation_levelBs���'�'�102�3�3r�c�B�[R"XR5$)aProvide a database-specific :class:`.TypeEngine` object, given103the generic object which comes from the types module.104 105This method looks for a dictionary called106``colspecs`` as a class or instance-level variable,107and passes on to :func:`_types.adapt_type`.108 109)r(�110adapt_typerg)r��typeobjs  r��type_descriptor�DefaultDialect.type_descriptorRs���"�"�7�M�M�:�:r�c��UR"X4SU0UD6(dgUR"X4SU0UD6HnUSU:XdM g g)N�schemaFr�T)�	has_table�get_indexes)r�r��111table_name�112index_namer�kw�idxs       r��	has_index�DefaultDialect.has_index]sY���~�~�j�J�V�J�r�J���#�#��113�+1�114�57�115�C��6�{�j�(��	116�r�c�,�X R"U40UD6;$r�)�get_schema_names)r�r��schema_namers    r��117has_schema�DefaultDialect.has_schemahs���3�3�J�E�"�E�E�Er�c�~�[U5UR:�a$[R"SXR4-5eg)Nz7Identifier '%s' exceeds maximum length of %d characters)�lenr�r"�IdentifierError)r��idents  r��validate_identifier�"DefaultDialect.validate_identifierms@���u�:��2�2�2��%�%�I��4�4�5�6��
�3r�c�:�URR"U0UD6$r�)r��connect)r��cargs�cparamss   r�r'�DefaultDialect.connectts��� � �(�(�%�;�7�;�;r�c�`�UR5nURUR5 /U4$r�)�translate_connect_args�update�query)r�r��optss   r��create_connect_args�"DefaultDialect.create_connect_argsxs*���)�)�+�����C�I�I���D�z�r�c��^^^�[TR5RT5nU(aB[R"U4SjU55m[118R"US5UU4Sj5ngg)Nc3�0># �UHoTU4v� M
 g7fr�r��.0r�r/s  �r��	<genexpr>�>DefaultDialect.set_engine_execution_options.<locals>.<genexpr>������D�/>�t�t�D�z�"�����engine_connectc�*>�TRUT5 gr�)�_set_connection_characteristics)r�rr�s ��r��set_connection_characteristics�SDefaultDialect.set_engine_execution_options.<locals>.set_connection_characteristics�s����4�4���r�)�set�connection_characteristics�intersectionr$�
immutabledictr!�listens_for)r��enginer/�supported_namesr=rs` `  @r��set_engine_execution_options�+DefaultDialect.set_engine_execution_options~sn����d�=�=�>�K�K��119���15�1C�1C�D�/>�D�2�O��
�
�v�'7�
8�
�9�
�
r�c��^�[UR5RT5nU(a2[R"U4SjU55nURX5 gg)Nc3�0># �UHoTU4v� M
 g7fr�rr4s  �r�r6�BDefaultDialect.set_connection_execution_options.<locals>.<genexpr>�r8r9)r?r@rAr$rBr<)r�r�r/rErs  `  r�� set_connection_execution_options�/DefaultDialect.set_connection_execution_options�s\����d�=�=�>�K�K��120���15�1C�1C�D�/>�D�2�O�
�0�0��M�	r�c�z�UR"5VVs/sHup4X0RUU4PM nnnUR5(acUVVVs/sHup6nUR(dMX64PM nnnnU(a/[R121"SSR
SU55-5eURRn	UHupznU122RXX�5 M URRRR[R"URU55 gs snnfs snnnf)Nz�This connection has already initialized a SQLAlchemy Transaction() object via begin() or autobegin; %s may not be altered unless rollback() or commit() is called first.�, c3�*# �UH	upUv� M g7fr�r)r5r��objs   r�r6�ADefaultDialect._set_connection_characteristics.<locals>.<genexpr>�s��� B�z�)�$��z�s�)�itemsr@�in_transaction�
transactionalr"r�r�r�r��set_connection_characteristic�_connection_record�finalize_callback�append�	functools�partial�_reset_characteristics)r�r�rr��value�characteristic_valuesrP�_�123trans_objsr��characteristics           r�r<�.DefaultDialect._set_connection_characteristics�s3�� /�4�4�6�!124�6����2�2�4�8�%�@�6�	�!125�126�$�$�&�&�%:��$9�L�D�q��$�$����$9�
��127��-�-�'��y�y� B�z� B�B�	D���&�0�0�A�A��(=�$�A�u��8�8��"2�
�)>�	���0�0�B�B�I�I����d�9�9�?�K�	128��3!129��s�D0�D6�,D6c�V�UH#nURUnURX5 M% gr�)r@�reset_characteristic)r�rr��characteristic_namer`s     r�r[�%DefaultDialect._reset_characteristics�s0��#2��!�<�<�#��N�
�/�/��G�	$3r�c��gr�r�r�r�s  r��do_begin�DefaultDialect.do_begin����r�c�t�UR(aURU5(agUR5 gr�)r��detect_autocommit_setting�rollbackrgs  r��do_rollback�DefaultDialect.do_rollback�s1���(�(�T�-K�-K��.130�.131�
��!�!�#r�c�$�UR5 gr�)�commitrgs  r��	do_commit�DefaultDialect.do_commit�s�����!r�c�&�URU5 gr�)�do_closergs  r��do_terminate�DefaultDialect.do_terminate�s���
�
�&�'r�c�$�UR5 gr�)�closergs  r�ru�DefaultDialect.do_close�s����� r�c�Z�[[R"S5RUS95$)Nr��dialect)�strr'�select�compiler�s r��_dialect_specific_select_one�+DefaultDialect._dialect_specific_select_one�s&���:�$�$�Q�'�/�/��/�=�>�>r�c	�X�URU5$!URRa|nURX!S5nUR(aG[132R"UUUSSS9 O-![RanURnSnAOSnAff=fU(aSnAgeSnAff=f)NFT)�
is_disconnect�invalidate_pool_on_disconnect�is_pre_ping)133�do_pingr��Errorr��_has_eventsr�$_handle_dbapi_exception_noconnectionr"�StatementError�connection_invalidated)r�r��errr��new_errs     r��_do_ping_w_event�DefaultDialect._do_ping_w_event�s���	��<�<� 0�1�1��� � �&�&�	� �.�.�s�d�K�M����	C��C�C���&3�6;�$(����)�)�C�$+�$B�$B�M��C������%	�sD��B)�#B$�A*�)B$�*B�>B�134B$�B�135B$�#B$�$B)c��UR5nURUR5 UR5 g!UR5 f=f)NT)r�executer�ry)r�r�rs   r�r��DefaultDialect.do_ping�s@��!�(�(�*��	��N�N�4�<�<�=��L�L�N���
�L�L�N�s	�>�Ac�<�S[R"SSS-5-$)z�Create a random two-phase transaction ID.136 137This id will be passed to do_begin_twophase(), do_rollback_twophase(),138do_commit_twophase().  Its format is unspecified.139z	_sa_%032xrr �)�random�randintr�s r��140create_xid�DefaultDialect.create_xid�s���V�^�^�A�q�#�v�6�6�6r�c�N�UR[R"U55 gr�)r�r'�SavepointClause�r�r�r�s   r��do_savepoint�DefaultDialect.do_savepoint�s�����:�5�5�d�;�<r�c�N�UR[R"U55 gr�)r�r'�RollbackToSavepointClauser�s   r��do_rollback_to_savepoint�'DefaultDialect.do_rollback_to_savepoints�����:�?�?��E�Fr�c�N�UR[R"U55 gr�)r�r'�ReleaseSavepointClauser�s   r��do_release_savepoint�#DefaultDialect.do_release_savepoints�����:�<�<�T�B�Cr�c#�X# �[[U5n[[UR5nSnSn	Sn141URnUR142nUce[
UR5n
URRSUR5nUR(aURRS05nOSnU
(a/nUUlURnOSnSnURUUUUUUU5GH�nUv� U
(dMURU5nUceUR,(Ga=UR.(Gd+UR,S:�nUR0(a8U(aeUR3[5W[6R8"S5S	95 M�UR:(deUR<(deUR,nU143(d�U(aW[?UR<UR@U*S5VVs/sH%unnURBREUUS5PM' nnnO8UR<S144RBREXR@SS5n	Sn145U(a2WVs0sH$n[GS[?UU*SU555U_M& nnO:U	(aWVs0sHnU	"US5U_M nnOWVs0sH	nUSU_M nn[IU5[IURJ5:wa9[LRN"S[IURJ5S
[IU5S35eURPVs/sHnUUPM146 nnUR3U5 GMwUR3W5 GM� g![ aGnUR#U[$R&"UR(5UR*SUSS9 SnAGN�SnAff=fs snnfs snfs snfs snfs snf![Ra.n[LRN"SURTS147<S35UeSnAff=f7f)NrFro�schema_translate_mapT)�is_sub_execrr�)�keyrc3�H# �UHupU(aU"U5OUv� M g7fr�r)r5�val�procs   r�r6�CDefaultDialect._deliver_insertmanyvalues_batches.<locals>.<genexpr>}s(���"�2"�I�C�/3��c���!;�2"�s� "zASentinel-keyed result set did not produce correct number of rows z; produced zP.  Please ensure the sentinel column is fully unique and populated in all cases.zACan't match sentinel values in result set to parameter sets; key aT was not found. There may be a mismatch between the datatype passed to the DBAPI driver vs. that which it returns in a result row.  Ensure the given Python value matches the expected result type *exactly*, taking care to not rely upon implicit conversions which may occur such as when using strings in place of UUID or integer values, etc. )+r�DefaultExecutionContextr-�compiled�compiled_parameters�_insertmanyvaluesrj�effective_returning�execution_optionsr�ror��_insertmanyvalues_rows�sort_by_parameter_order�!_deliver_insertmanyvalues_batches�fetchall_for_returning�
BaseException�_handle_dbapi_exception�sql_util�_long_statement�replaced_statement�replaced_parameters�num_sentinel_columns�
is_downgraded�implicit_sentinel�extend�sorted�operator�148itemgetter�sentinel_param_keys�sentinel_columns�zip�descriptionr��_cached_result_processor�tupler!�batchr"r��sentinel_values�KeyError�args)r�r�r�	statement�149parameters�generic_setinputsizes�contextr��_composite_sentinel_proc�_scalar_sentinel_proc�_sentinel_proc_initializedr��imv�is_returning�150batch_sizer��resultr��	imv_batch�rows�be�composite_sentinel�_nsc�col�cursor_desc�row�rows_by_sentinel�
sentinel_keys�ordered_rows�kes                              r�r��0DefaultDialect._deliver_insertmanyvalues_batchess�����.��8����W�%5�%5�6��
�	!�FJ��+0�"�%�9�9���(�(������$(��)E�)E�$F���.�.�2�2�(�$�*I�*I�151�152��(�(�#*�#<�#<�#@�#@�&��$� �$(� ��*,�F�-3�G�*�&)�&A�&A�#�',�#��F�!�C�C����!��#� �153�I��O��|�154�"�9�9�&�A�D��)�)�)��+�+�+�I�4K�4K�4K�),�)A�)A�A�)E�&��,�,�$6�5�5��
�
�"�4�X�-@�-@��-D�E��!��2�2�2�2��/�/�/�/��3�3�D�5�-�1559<�$'�$8�$8�$*�$6�$6��u�v�$>�9"�	8�9"�$4�C��!$��� A� A�$(�+�a�.�!"�9"�	5�8�4�!$� 4� 4�Q� 7�"�d�#;�#;� $�&8�&8��&<�Q�&?�$�2�1566:�2�*�(,�,�(,��
"�"�14�$'����K�1I�2"�"��157 #�#�(,�)�,�(�/�KO�,�KO�C�1�#�b�'�:�C�?�4�)�,�(�EI�+I�D�S�C��G�S�L�D�(�+I��+�,��I�O�O�0D�D�"�5�5�6�69�)�/�/�6J�5K�L(�"�#3�4�5�6)�)���"�2;�1J�1J�(�1J�
�-�]�;�1J�%�(�*�M�M�,�/��M�M�$�'�{158��%���6�6�� �0�0��1M�1M�N�!�5�5���$(�
7�����D8��,,��,��,J�� (��$�"�"�5�5�3�35�7�7�1�:�.�AP�	P�� "�"��	"�s��C>P*�N�C(P*�>,O�*A	P*�3+O�P*�,O �P*�	O%�AP*�7O/�O*�O/�+P*�159O�<O
�P*�
O�P*�*O/�/160P'�9)P"�"P'�'P*c�&�URX#5 gr�)�executemany�r�rr�r�r�s     r��do_executemany�DefaultDialect.do_executemany�s�����9�1r�c�&�URX#5 gr��r�r�s     r��161do_execute�DefaultDialect.do_execute�s�����y�-r�c�&�URU5 gr�r�)r�rr�r�s    r��do_execute_no_params�#DefaultDialect.do_execute_no_params�s�����y�!r�c��g)NFr)r��er�rs    r�r��DefaultDialect.is_disconnect�s��r�c162�Z�[URU55nUVs/sH"o3RSS5R5PM$ nnX$:wa=[	SUR163<S[
[U5RU5535e[U5$s snf![a gf=f)Nr^� r�zi get_isolation_level_values() method should return names as UPPERCASE using spaces, not underscores; got )�list�get_isolation_level_values�replace�upper�164ValueErrorr�r�r?�165differencer�r�)r�r��166raw_levels�level�normalized_levelss     r��_gen_allowed_isolation_levels�,DefaultDialect._gen_allowed_isolation_levels�s���	,��d�=�=�j�I�J�J�167>H�!�=G�E�
�
�c�3�'�-�-�/�Z�
�!��.� ��t�y�y�m�,,��c�*�o�8�8�9J�K�L�M�O����*�+�+��!��#�	��	�s�B�)B�168B*�)B*c169��URSS5R5nURU5nU(a?X#;a:[R"SU<SUR170<SSR
U535eURX5 g)Nr^r�zInvalid value z1 for isolation_level. Valid isolation levels for z are rN)r�r�rr"r}r�r��set_isolation_level)r�r�r�_allowed_isolation_levelss    r�r��.DefaultDialect._assert_and_set_isolation_level�s����
�
�c�3�'�-�-�/��$(�$F�$F��%171�!�
&��6��#�#� ��	�*.�.2�i�i�]�%��9�9�6�7�8�:��
�	
� � ��3r�c��URbHURS:XdURUR:XdeURXR5 gURceURUUR5 g)N�172AUTOCOMMIT)r�r�r�r173s  r��reset_isolation_level�$DefaultDialect.reset_isolation_level�s����+�+�7��0�0�L�@��3�3��/�/�0�
�0�
�0�0��<�<�
��/�/�;�;�;��0�0���,�,�
r�c���UcgUR5nUR5nX2:XaU$X1:Xa"URRU5(dU$X!:Xa174[	USS9$U$)NT)�quote)�lowerr�r��_requires_quotesr.�r�r��175name_lower�176name_uppers    r��normalize_name�DefaultDialect.normalize_name�ss���<���Z�Z�\�177��Z�Z�\�178��#��K�
�
��$�$�5�5�179�&�)�180��
�
��t�4�0�0��Kr�c��UcgUR5nUR5nX2:XaU$X!:Xa"URRU5(dUnU$r�)rr�r�rrs    r��denormalize_name�DefaultDialect.denormalize_names[���<���Z�Z�\�181��Z�Z�\�182��#��K�
�
��$�$�5�5�183�&�)��D��r�c��U$r�rrs  r��get_driver_connection�$DefaultDialect.get_driver_connection(s���r�c�t�[[U5U5R[[U5RL$r�)r~r��__code__rR)r��methods  r��_overrides_default�!DefaultDialect._overrides_default+s0���D��J��'�0�0��>�6�2�;�;�
<�	184r�c+�6# �/n/n	[RU;a6URUR5 U	RUR5 [R185U;a6URUR5 U	RUR5 [RU;aURUR5 URS05n186U(a)U[RLaU[RLaUnOv/nSU0UEn/n
[RU;aU
RU5 [RU;aU
RU	5 U
HnURU"U40UD65 M U(a[#U5nUH$nU(aX�;dMXO4nUU"X/4SU0UD64v� M& g![ a Mjf=f![$R&anUU187;aUU188U'SnAM_SnAMeSnAf[$R(a Mf=f7f)N�
unreflectabler)r�TABLErX�get_table_names�get_temp_table_names�VIEW�get_view_names�get_temp_view_names�MATERIALIZED_VIEW�get_materialized_view_names�popr�ANYrir��	TEMPORARYr�r?r"�UnreflectableTableError�NoSuchTableError)r��single_tbl_methodr��kindr�filter_names�scoper�	names_fns�temp_names_fnsr!�names�name_kw�fns�fn�tabler�r�s                  r��_default_multi_reflect�%DefaultDialect._default_multi_reflect1s�����	������t�#����T�1�1�2��!�!�$�";�";�<��?�?�d�"����T�0�0�1��!�!�$�":�":�;��'�'�4�/����T�=�=�>������3�
�
�����(��189���&�!�E��E���.�2�.�G��C��"�"�e�+��190�191�9�%��$�$��-��192�193�>�*�����L�L��J�!:�'�!:�;����|�,�L��E��5�#8��o����)�&��6<��@B����	��+�����"�2�2�1��-�/�-0�
�c�*�0���+�+����sf�E#H�&F?�>%H�'H�+G�:H�?194G
�	H�G
�
H�H�$G;�/H�;H�H�H�Hc�>�UR"URU40UD6$r�)r:�get_table_options�r�r�rs   r��get_multi_table_options�&DefaultDialect.get_multi_table_optionsz�(���*�*��"�"�J�195�24�196�	197r�c�>�UR"URU40UD6$r�)r:�get_columnsr>s   r��get_multi_columns� DefaultDialect.get_multi_columns� ���*�*�4�+;�+;�Z�N�2�N�Nr�c�>�UR"URU40UD6$r�)r:�get_pk_constraintr>s   r��get_multi_pk_constraint�&DefaultDialect.get_multi_pk_constraint�rAr�c�>�UR"URU40UD6$r�)r:�get_foreign_keysr>s   r��get_multi_foreign_keys�%DefaultDialect.get_multi_foreign_keys�s(���*�*��!�!�:�198�13�199�	200r�c�>�UR"URU40UD6$r�)r:rr>s   r��get_multi_indexes� DefaultDialect.get_multi_indexes�rFr�c�>�UR"URU40UD6$r�)r:�get_unique_constraintsr>s   r��get_multi_unique_constraints�+DefaultDialect.get_multi_unique_constraints�s(���*�*��'�'��201�79�202�	203r�c�>�UR"URU40UD6$r�)r:�get_check_constraintsr>s   r��get_multi_check_constraints�*DefaultDialect.get_multi_check_constraints�s(���*�*��&�&�204�205�68�206�	207r�c�>�UR"URU40UD6$r�)r:�get_table_commentr>s   r��get_multi_table_comment�&DefaultDialect.get_multi_table_comment�rAr�)r�r�rdr�r�r�r�rpr�ror�r�r�r�rsr�r�r�r{r�rk)r�zOptional[_ParamStyle]rVzOptional[IsolationLevel]r�zOptional[ModuleType]r�z
Literal[True]r��Optional[bool]r�rcr�rcrozUnion[_NoArg, int]rkr^r�rHrsrjr�rjr�r)�returnr>)r�rr_�None)r�rBr_z208Type[Pool])r_zOptional[_ListenerFnType])r�rr_r`)r_zOptional[Callable[[Any], None]]r�)r�rrr~rrr_rj)r#r~r_r`)r(rr)rr_r=)r�rBr_r<)rDr2r/r`r_r`)r�rr/r`r_r`)r�r=r_rj)r�zDBAPIModule.Errorr�zCUnion[pool.PoolProxiedConnection, interfaces.DBAPIConnection, None]rz Optional[interfaces.DBAPICursor]r_rj)r�r=r_r)��__name__r��__qualname__�__firstlineno__�__doc__r%r-�statement_compilerr+�ddl_compilerr�r��IdentifierPreparerr��supports_alter�supports_comments�supports_constraint_comments�inline_commentsr��div_is_floordivrr��NONEr�rT�__annotations__rU�default_sequence_baser��execute_sequence_format�supports_schemas�supports_views�supports_sequences�sequences_optional�"preexecute_autoincrement_sequences�supports_identity_columns�postfetch_lastrowid�favor_returning_over_lastrowid�#insert_null_pk_still_autoincrementsr�r��update_returning_multifrom�delete_returning_multifromr��cte_follows_insert�supports_native_enumr��supports_native_uuid�returns_native_bytes�#non_native_boolean_check_constraint�supports_simple_order_by_label�tuple_in_valuesr$rBr�IsolationLevelCharacteristic�LoggingTokenCharacteristicr@�asint�bool_or_str�asboolra�supports_native_decimalr�r�rdrVrerfr��supports_sane_multi_rowcountrgr��supports_default_values�supports_default_metavalue�default_metavalue_token�supports_empty_insert�supports_multivalues_insertrkrlr,�
NOT_SUPPORTEDrmro�insertmanyvalues_max_parameters�supports_is_distinct_fromr|rs�supports_for_update_ofr�rp�requires_name_normalize�is_async�
has_terminate�$_legacy_binary_type_literal_encoding�deprecated_paramsr*r�rn�209NO_LINTINGr��property�210deprecatedr��memoized_propertyr�r��update_executemany_returning�delete_executemany_returningr�r�r�r�r�r�r��classmethodr�r�r�r�r�rr�r�rrrr$r'r0rFrKr<r[rhrnrrrvrur�r�r�r�r�r�r�r�r�r�r�r��memoized_instancemethodrr�r211rrrrr:r?rDrIrMrPrTrXr\�__static_attributes__rr�r�rRrRxs���+�!�-�-���'�'�L� �4�4���*�*�H��N���#(� ��O�#���O��'�'�,�,�K�26��/�6�26��/�6���$�����N�����).�&� %����%*�"�*/�'�����!&��!&������ ��#�� �� ��*.�'�%)�"��O�!%�!3�!3�.�K�K�M�,�G�G�I�	212�"��.2�-?�-?� �J�J��$�$�W�-��)�)�'�2� �J�J���� �J�J��k�k�	213�214.��*�215�$���D�!��9=�'��=�%)�O�]�)�216,0��=�/�04��
�4�!��#'� �MO�H�J�O� ��#��:�!&��<�'���217!��.�"'��!&��$�&�.3�%�t�3�	%�2�2�'�(D��'+���*�&+�#� $��#(� ���#����)-���-�$���H��M�218,3�(�	���219�220��*-1�48�&*�,0�26�/3�&*�9?���/3�%(��(;�(;�$<�$)�).�SI�)�SI�2�SI�$�	SI�221*�SI�"0�
SI� -�SI�$�SI�%7�SI�-�SI�"�SI�"�SI�#'�SI� �!SI�'�&SI�j�	�_�_�
�	-��222223���224�225���C��C�226���C��C�,$)� �#(� �	������227���F��F�228�229������&230���+��+��-��-��+��+��9��9�(�����231�"�H�232�4� 	;�	�F�$�F�36�F�>A�F�	
�F�233�<�����$5��	
��"234N�$�235N�,=�236N�	
�237N�238�<H�
�$�"�(�!�239���?��?��.�7�=�G�D�j(�X2�.�"����240��1�
�241��242�!�!�,�"�,�$4�$�"�4�"�243�G�R244�245O�246�247248�249O�250�251252�253254r�rRc��\rSrSr\R255r\Rr\Rr256\RrSr
SrSrSrSrSrSrSrSrSrSrSrg)�StrCompileDialecti�TFrN)rar�rbrcr%�StrSQLCompilerrer+rf�StrSQLTypeCompilerr�rgr�r�r�r�r�rvrsrtrur�r�r�r�rr�r�r�r��sr��!�0�0���'�'�L� �3�3���*�*�H�������#�� $������).�&�"��"&��%)�"r�r�c���\rSrSr%SrSrSrSrSrSr	\257RrS\
S'SrS\
S'SrS\
S	'SrS258\
S'\R$rS\
S
'\R*rSrS\
S'SrSrSrSrSrSrS\
S'SrS\
S'\R>"5r S\
S'\!r"S\
S'S\
S'S\
S'S\
S'S\
S'S \
S!'S"\
S#'S$\
S%'\#"S&\R$5r$Sr%S'\
S('S)r&S*\
S+'\'SZS,j5r(\'\)RT4S[S-jj5r+\'S\S.j5r,\'S]S/j5r-S^S0jr.\/S15r0\RbS25r2\RbS35r3\RbS_S4j5r4\RbS_S5j5r5\RbS65r6S`SaS7jjr7\RbS85r8S9r9SbS:jr:S;r;SbS<jr<SbS=jr=S>r>S?r?S@r@ScSAjrASdSBjrBSCrC\R�SdSDj5rE\/SE5rFSFrGSGrHSHrISIrJSJrK\RbSK5rLSLrMSMrNSNrOSeSOjrPSfSPjrQSQrRSRrSSrTSS\
ST'SgSUjrUSVrVSWrWSXrXSYrYg)hr�i�Fr�
execute_styleNzOptional[Compiled]r�zAOptional[Tuple[List[ResultColumnsEntry], bool, bool, bool, bool]]�result_column_structzOptional[Sequence[Row[Any]]]�returned_default_rowsr9r�zOptional[Executable]�invoked_statementrc�	_rowcountz4Optional[Callable[[str], Tuple[str, Optional[str]]]]�_translate_colnamezMapping[str, List[str]]�_expanded_parametersr�root_connectionrE�_dbapi_connectionrr}r~�unicode_statementrrz%List[_MutableCoreSingleExecuteParams]r�r7r��&Optional[Sequence[BindParameter[Any]]]�extracted_parametersr`zOptional[List[Tuple[Any, ...]]]r�rrn�_num_sentinel_colsc�4�URU5nX&lX6lURUlU=UlnSUlXFl[U5UlUR(aJURRS05nURRn	U	"URU5UlURUl
UR5Ul/UlUR"(aUR%5/UlU$UR(/UlU$)zCInitialize execution context for an ExecutableDDLElement259construct.Tr�)�__new__r�r�r}r��isddlr�r~r�r�r�r��_render_schema_translatesr��
create_cursorrr�r�rpr��_empty_dict_params)260r�r}r�r�r��compiled_ddlr�r�r��rsts261          r��	_init_ddl�!DefaultExecutionContext._init_ddl�s���{�{�3���)��!1��!�)�)���#/�/��
����262�!2��!$�X�����(�(�#'�#9�#9�#=�#=�&��$� ��#�#�=�=�C�%(��&�&�(<�&�D�"��/�/����(�(�*���#%�� ����&�>�>�@�A�D�O��� $�6�6�7�D�O��r�c263�V�URU5n264X*lX:lURU265lX�lXzlXZlX�lXJlURURURURUR4U266lUR=U267lnUR =U268lnUR"=U269ln
UR$U270lU(dU(dU
(GaaUR(R*n[,(a[/U[05(deSU271l[5UR65=U272ln[5UR:5=U273lnU(aUR>(aSU274l U(a	U(aeU(dU(Ga�URB(Ga�U(aIU275RRD(d.[FRH"SU276RRJS35eU(aZURL(aIU277RRN(d.[FRH"SU278RRJS35eU(aBU279RRP(a'URR(d[FRH"S5eU(aIU280RRT(d.[FRH"SU281RRJS35eU
(aIU282RRV(d.[FRH"SU283RRJS35eU(dURYUSS	9/U284l-O�[]U5VVs/sHunnURYUSUUS2859PM snnU286l-[_U5S:�awU287R(aQURR(a@[`RbU288l2URRnURfbURhU289l5O[`RlU290l2URnU291l8U292Rs5U293l:U294RRv(dU295RRx(aU296R{5 UR|nUnUR~(dUR�(a�U297R�(a[FRH"S
5eUR�U298RZS5nUR*U299l8UR�U300lD[�U5nUR�UR�5 UR�nO*UR�(aU301RR�nOSnUR�(aJU302RR�S05nUR�R�nU"U303RpU5U304l8U305RpU306lUR�(al/nUceU307RZHLnUVs/sHnUU;aUU"UU5OUUPM nnUR�UR�U55 MN UU308lPU309$/nUR�nU310RZH�nU(a;UVs0sH-nUR�UU5UU;aUU"UU5OUU_M/ n nO*UVs0sHnUUU;aUU"UU5OUU_M n nUR�U 5 M� UU311lPU312$s snnfs snfs snfs snf)z6Initialize execution context for a Compiled construct.Tr�z] with current server capabilities does not support INSERT..RETURNING when executemany is usedz} with current server capabilities does not support INSERT..RETURNING with deterministic row ordering when executemany is usedznStatement does not have "insertmanyvalues" enabled, can't use INSERT..RETURNING with executemany in this case.z] with current server capabilities does not support UPDATE..RETURNING when executemany is usedz] with current server capabilities does not support DELETE..RETURNING when executemany is usedF)r��escape_names)r��
_group_numberr�rNzL'literal_execute' or 'expanding' parameters can't be used with executemany()rr�)Rr�r�r�r}r�r�r��	cache_hitr��_result_columns�_ordered_columns�_textual_ordered_columns�_ad_hoc_textual�_loose_column_name_matchingr��isinsert�isupdate�isdelete�isplaintext�is_text�
compile_stater�rr�rK�is_crudrj�313_returning�_is_explicit_returningr��_is_implicit_returning�_supplemental_returning�_is_supplemental_returning�for_executemanyr�r"r�r��_sort_by_parameter_orderr�rkr�r�r��construct_paramsr��	enumerater!r�INSERTMANYVALUESr�r�r�r��EXECUTEMANY�stringr�r�r�insert_prefetch�update_prefetch�_process_execute_defaults�_bind_processors�literal_execute_params�post_compile_paramsr��#_process_parameters_for_postcompile�parameter_expansionr��dictr-�314processors�positiontupr�r�r�r�r�rXrpr��escaped_bind_names)!r�r}r�r�r�r�r�r�r�r�r��ii�iu�id_�
dml_statement�ier�iir�grp�mr�r��flattened_processors�expanded_stater�r�r��core_positional_parameters�compiled_paramsr��l_param�core_dict_parameters�
escaped_names�d_params!                                 r��_init_compiled�&DefaultExecutionContext._init_compiled!s����{�{�3���)��!1��!�)�)���$8�!�!2�� �
�"��!2��
�$�$��%�%��-�-��$�$��0�0�%315��!�&�.�.�.��
��%�.�.�.��
��&�/�/�/��
���+�+���
��s�$�2�2�<�<�M��}�!�-��<�<�<�<��D�L�04�]�5M�5M�0N�N�D�'�#�04��+�+�1�
�D�'�#��}�<�<�26��/���$�$��s�� 8� 8� 8��d�l�l�G�G��1�1�"�4�<�<�#C�#C�"D�EE�E����%�>�>� �L�L�]�]��1�1�"�4�<�<�#C�#C�"D�E3�3�������9�9�$�6�6��1�1�4���316���� I� I��1�1�"�4�<�<�#C�#C�"D�EE�E���317����!J�!J��1�1�"�4�<�<�#C�#C�"D�EE�E�����)�)�)=�!&�*��(�D�$�(�318�3�(�4�F�C��
�)�)��!&�"%�)=�	*��4�(�D�$��:���"��=�=�X�%?�%?�)5�)F�)F�D�&�"�4�4�C��+�+�7�25�2J�2J��/��)5�)A�)A�D�&�!)������(�(�*����=�=�(�(�D�M�M�,I�,I��*�*�,��.�.�319�
�	��*�*�h�.J�.J�����-�-�.���320&�I�I��(�(��+��N�321&4�%=�%=�D�"�(6�(J�(J�D�%�#'�322�#3� � �'�'��(A�(A�B�(�4�4�K�
�
 �
 ��-�-�3�3�K��K��(�(�#'�#9�#9�#=�#=�&��$� ��#�#�=�=�C�%(��&�&�(<�&�D�"��/�/������IK�&��*�*�*�#'�#;�#;�� +�
&� +���"6�6�-�S�1�/�#�2F�G�,�S�1�2� +�
�&�+�1�1��3�3�G�<��$<�9�D�O�F��CEG� �$�7�7�M�$(�#;�#;�� �$3�
�$3�C�&�)�)�#�s�3�"�&:�:�1��5�o�c�6J�K�!0��!5�6�323$3�
��G�$3�
�$3�C��"�&:�:�1��5�o�c�6J�K�!0��!5�6�324$3�
��%�+�+�G�4�)$<�,3�D�O����{(��\&��2��s�8\�#\�4\!�$\&c��URU5nX'lX7lURUlSUlXGlU(dEURR(aUR5/UlO}UR/UlOj[USUR5(aXglOE[US[5(aXglO&UVs/sHo�RU5PM snUl[U5S:�a[RUlU=UlUlUR%5UlU$s snf)z8Initialize execution context for a string SQL statement.Trr)r�r�r�r}r�r�r�rpr�r�r�r�r!rr�r�r�r�r�r)	r�r}r�r�r�r�r�r��ps	         r��_init_statement�'DefaultExecutionContext._init_statements	���{�{�3���)��!1��!�)�)������!2����|�|�&�&�#*�#B�#B�#D�"E���#'�#:�#:�";���
�325�1�
�w�'F�'F�
G�
G�(�O�
�326�1�
�t�
,�
,�(�O�=G��<F�q�/�/��2�J��D�O��z�?�Q��!-�!9�!9�D��2;�;����/��(�(�*������s�D;c��URU5nX%lX5lURUlXElUR5UlU$)z;Initialize execution context for a ColumnDefault construct.)r�r�r�r}r�r�r)r�r}r�r�r�r�s      r��
_init_default�%DefaultExecutionContext._init_default1sF���{�{�3���)��!1��!�)�)���!2���(�(�*����r�c���URcg[5nURnURRnUceU[LaSX-3274-$U[328LaSX-3294-$U[LaSX-3304-$U[La.SUR;aSURSX-3314-$SX-3324-$U[La2SURRURRX-3334-$g	)334Nzraw sqlzno key %.5fszcached since %.4gs agozgenerated in %.5fs�_cache_disable_reasonzcaching disabled (%s) %.5fs zcaching disabled %.5fsz,dialect %s+%s does not support caching %.5fs�unknown)
r�rr��	_gen_time�NO_CACHE_KEY�	CACHE_HIT�335CACHE_MISS�CACHING_DISABLEDr��NO_DIALECT_SUPPORTr}r�r�)r��now�ch�gen_times    r��_get_cache_stats�(DefaultExecutionContext._get_cache_statsEs���=�=� ���n��
�^�^���=�=�*�*���#�#�#�
���!�S�^�$5�5�5�
�9�_�+�s�~�.?�?�?�
�:�
�'�3�>�*;�;�;�
�#�
#�&�$�*@�*@�@�5��*�*�+B�C��N�9���3360�3�>�2C�C�C�
�%�
%�A����!�!����#�#���E��
�r�c�\�UR[R[R4;$r�)r�rr�r�r�s r�r��#DefaultExecutionContext.executemanygs,���!�!��$�$��)�)�&337�338�	339r�c��UR(aURR$SUR;a2URRRURS5$URR$)Nr�)r�r�r�r}r��_with_schema_translater�s r�r��+DefaultExecutionContext.identifier_preparernse���=�=��=�=�)�)�)�
#�t�'=�'=�
=��<�<�3�3�J�J��&�&�'=�>��
��<�<�3�3�3r�c�.�URR$r�)r�rDr�s r�rD�DefaultExecutionContext.engineys���#�#�*�*�*r�c��[(a![UR[5(deURR$r�)rr�r�r-�	postfetchr�s r��postfetch_cols�&DefaultExecutionContext.postfetch_cols}s.���=��d�m�m�[�9�9�9�9��}�}�&�&�&r�c���[(a![UR[5(deUR(aURR340$UR(aURR$g)Nr)rr�r�r-r�r�r�r�r�s r��
prefetch_cols�%DefaultExecutionContext.prefetch_cols�sO���=��d�m�m�[�9�9�9�9��=�=��=�=�0�0�0�
�]�]��=�=�0�0�0�r�c�:�URRSS5$)N�
no_parametersF)r�r�r�s r�r�%DefaultExecutionContext.no_parameters�s���%�%�)�)�/�5�A�Ar�c�@�URnSUR;a:URRS05nURRnU"X5nU(d8UR341R(aUR342R5nO0nURURXUS9 URR5nUbUSnOSnUbEURUR343URRSS5n	U	(aU	"U5$U$)z�Execute a string statement on the current cursor, returning a344scalar result.345 346Used to fire off sequences, default phrases, and "select lastrowid"347types of statements individually or in the context of a parent INSERT348or UPDATE statement.349 350r�)r�Nrr)
r�r�r�r�r�r}r�rp�_cursor_executer�fetchoner�r�)351r��stmt�type_r��connr�r�r��rr�s352          r��_execute_scalar�'DefaultExecutionContext._execute_scalar�s���#�#��!�T�%;�%;�;�#'�#9�#9�#=�#=�&��$� ��*�*�D�D�C��t�2�D���|�|�&�&�!�\�\�A�A�C�353��354����T�[�[�$�D��I��k�k�"�"�$���?��A��A��A����1�1����d�k�k�5�5�a�8��;��D���A�w���r�c��UR$r�)r�r�s r�r��"DefaultExecutionContext.connection�s���#�#�#r�c��URR(dgURR(a�URR	SS5=(a� UR355=(a. [
UR356R[R5=(d UR357(+=(d. [
UR358R[R5=(a2 UR=(a [RUR5nU$URR	SS5nU$)NF�stream_resultsT)r}r|rsr�r�r�r�r�r'�359Selectable�360TextClauser��SERVER_SIDE_CURSOR_RE�match)r��use_server_sides  r��_use_server_side_cursor�/DefaultExecutionContext._use_server_side_cursor�s����|�|�8�8���<�<�+�+�"�4�4�8�8� �$����
�
�O��t�}�}�6�6�361�8M�8M�N��!�M�M�)��%� �M�M�3�3�Z�5J�5J��L��.�.�
L�.�3�3�D�4J�4J�K�
�*��	#�4�4�8�8� �%��O��r�c�6�URR(ahURRSS5(d0URR(a,UR5(aSUlUR5$SUlUR5$)Nr)FT)	r}r|r�r�rsr/�_is_server_side�create_server_side_cursor�create_default_cursorr�s r�r��%DefaultExecutionContext.create_cursor�sw��
�L�L�5�5��&�&�*�*�+;�U�C�C��L�L�4�4��4�4�6�6�$(�D� ��1�1�3�3�#(�D� ��-�-�/�/r�c�"�UR5$r�)�fetchall)r�rs  r�r��.DefaultExecutionContext.fetchall_for_returning�s����� � r�c�6�URR5$r�)r�rr�s r�r4�-DefaultExecutionContext.create_default_cursor�s���%�%�,�,�.�.r�c��[5er��r�r�s r�r3�1DefaultExecutionContext.create_server_side_cursor�s��!�#�#r�c��gr�rr�s r��pre_exec� DefaultExecutionContext.pre_exec�rjr�c��[S5e)Nz,This dialect does not support OUT parametersr<)r�r5s  r��get_out_parameter_values�0DefaultExecutionContext.get_out_parameter_values�s��!�:�362�	363r�c��gr�rr�s r��	post_exec�!DefaultExecutionContext.post_execrjr�c�:�URURU5$)z�Return a 'result processor' for a given type as present in364cursor.description.365 366This has a default implementation that dialects can override367for context-sensitive result type handling.368 369)r�r})r�r!�colname�coltypes    r��get_result_processor�,DefaultExecutionContext.get_result_processors���-�-�d�l�l�G�D�Dr�c�.�URR$)a�return self.cursor.lastrowid, or equivalent, after an INSERT.370 371This may involve calling special cursor functions, issuing a new SELECT372on the cursor (or a new one), or returning a stored value that was373calculated within post_exec().374 375This function will only be called for dialects which support "implicit"376primary key generation, keep preexecute_autoincrement_sequences set to377False, and when no explicit id value was bound to the statement.378 379The function is called once for an INSERT statement that would need to380return the last inserted primary key for those dialects that make use381of the lastrowid concept.  In these cases, it is called directly after382:meth:`.ExecutionContext.post_exec`.383 384)r�	lastrowidr�s r��
get_lastrowid�%DefaultExecutionContext.get_lastrowids��"�{�{�$�$�$r�c��gr�r)r�r�s  r��handle_dbapi_exception�.DefaultExecutionContext.handle_dbapi_exception&rjr�c�`�URbUR$URR$r�)r�r�rowcountr�s r�rT� DefaultExecutionContext.rowcount)s&���>�>�%��>�>�!��;�;�'�'�'r�c��URSL$r�)r�r�s r��
_has_rowcount�%DefaultExecutionContext._has_rowcount0s���~�~�T�)�)r�c�.�URR$r�)r}r�r�s r�r��.DefaultExecutionContext.supports_sane_rowcount4s���|�|�2�2�2r�c�.�URR$r�)r}r�r�s r�r��4DefaultExecutionContext.supports_sane_multi_rowcount7s���|�|�8�8�8r�c��URnURc2URSS5(aURRUlUR385(dUR(aUR5nSnO�URSS5nUR=(d URSS5nURnU(a>U[RLa+[R"URUR5nUR=(d URRnUc[Rn[R "XU5nUR"nU(aAUR$(d0['[(U5R*(aUR-U5 UR.UlU(aUR1U5nU$)N�preserve_rowcountF�	yield_perr))r�r�r�rrTr�r��_setup_dml_or_text_resultr2�cursor_fetch_strategy�_cursor�_DEFAULT_FETCH�BufferedRowCursorFetchStrategy�alternate_cursor_descriptionr��_NO_CURSOR_DQL�CursorResultr�r�rr-�has_out_parameters�_setup_out_parameters�_soft_closedr_)r��exec_optr��yp�sr�strategy�cursor_descriptionr�s        r��_setup_result_proxy�+DefaultExecutionContext._setup_result_proxy:sb���)�)���>�>�!�h�l�l�3F��&N�&N�!�[�[�1�1�D�N��<�<�4�<�<��3�3�5�F��B����k�4�0�B��%�%�N����6F��)N�B��1�1�H��h�'�"8�"8�8�"�A�A��K�K��!7�!7����5�5�+��;�;�*�*�
�"�)�"�1�1���)�)�$�:L�M�F��=�=��
��J�J��[�(�+�>�>��&�&�v�.�"�/�/���
��%�%�b�)�F��
r�c��[[UR5nURR	5VVs/sHup4UR386(dMX44PM nnn0n[
UVVs/sHup4UPM	 snnURUVVs/sHup4UPM	 snn55H�upxURn	U	RUR5n387U388RURR5nU389RURU5nUbU"U5nX�UR'M� Xalgs snnfs snnfs snnfr�)rr-r��390bind_namesrR�391isoutparamr�rBr��dialect_implr}�get_dbapi_typer��result_processorr��out_parameters)
r�r�r��paramr��out_bindparamsrx�	bindparam�	raw_valuer!�	impl_type�392dbapi_typerws
             r�ri�-DefaultExecutionContext._setup_out_parameterses'����T�]�]�3�� (�2�2�8�8�:�393�:������
�U�M�:�	�394�395��$'�&4�5�n�{�u�U�n�5��)�)�)7�8��+�%���8�
�%396� �I��N�N�E��*�*�4�<�<�8�I�"�1�1�$�,�,�2K�2K�L�J�(�9�9����j� �� �+�,�Y�7�	�,5�9�=�=�)�%397� !/���/398��
6��8s�D5�D5�)D;399�400Ec�`�[[UR5nURnUR(a�UR401[RLaEUR(a4[R"URURURS9nUR(aUR5UlUR"(a>U[R$La+[R&"URUR(5nU[R*LaSnO)UR=(d URR,nUc[R*nO@UR.(a/UR402[RLdeUSUR.*n[R0"XU5nUR(a�UR2(a�UR55nXPlUR9XE5UlUR:R<(deUR>(aURAU5 U$URC5 U$URD(dURC5 U$UR2(a�UR55nU(aXPlU5Ul$UR>(aURAU5 OURC5 UR:R<(deU$UR:R<(d:URHcURRJUl$URC5 U$URL(dURN(a(URHcURRJUl$U$)N)�initial_buffer�alternate_descriptionr)(rr-r�rar�r�rr�r�rb� FullyBufferedCursorFetchStrategyrr�rerw�_setup_ins_pk_from_lastrowid�inserted_primary_key_rowsr2rcrdr��_NO_CURSOR_DMLr�r�rgr��allr��%_setup_ins_pk_from_implicit_returning�	_metadata�returns_rowsr��_rewind�_soft_closer�r!r�rTr�r�)r�r�rnror�r�s      r�r`�1DefaultExecutionContext._setup_dml_or_text_result�s�����T�]�]�3��(,�(B�(B���=�=��"�"�l�&C�&C�C��0�0�"�C�C��K�K�#'�#>�#>�!�=�=�
���+�+��5�5�7��.����H��0F�0F�$F��=�=����T�3�3��H��w�-�-�-�!%���5�5�+��;�;�*�*�
�403�%��-�-�H�
�
$�
$��%�%��)F�)F�F�F�F�"4��T�,�,�,�"��-4�,@�,@��.�-404���=�=��*�*��z�z�|��-1�*��>�>�v�L��.��'�'�4�4�4�4�405�2�2��N�N�4�(�J�
�G�&�&�(�F�
�E�0�0��"�"�$�B�
�3�
(�
(��:�:�<�D��-1�*� ��Y�D�N��.�.����t�$��"�"�$��#�#�0�0�0�0��
��!�!�.�.��~�~�%�!%���!5�!5������ ��
��]�]�d�m�m��~�~�%�!%���!5�!5����
r�c�"�UR5$r�)�_setup_ins_pk_from_emptyr�s r�r��1DefaultExecutionContext.inserted_primary_key_rows�s��406�,�,�.�.r�c��[[UR5RnUR	5nU"X R407S5/$)Nr)rr-r��+_inserted_primary_key_from_lastrowid_getterrNr�)r��getterrMs   r�r��4DefaultExecutionContext._setup_ins_pk_from_lastrowid�sG�������408�4095�4105�	��&�&�(�	��y�":�":�1�"=�>�?�?r�c��[[UR5RnURVs/sHo!"SU5PM
 sn$s snfr�)rr-r�r�r�)r�r�rys   r�r��0DefaultExecutionContext._setup_ins_pk_from_emptysG�������411�4125�4135�	�26�1I�1I�J�1I���t�U�#�1I�J�J��Js�Ac���U(d/$[[UR5RnURn[X$5VVs/sH
upVU"XV5PM snn$s snnfr�)rr-r��+_inserted_primary_key_from_returning_getterr�r�)r�r�r�r�r�r�rys       r�r��=DefaultExecutionContext._setup_ins_pk_from_implicit_returningsc����I������414�4155�4165�	��2�2��25�T�1K�417�1K�:�3�F�3��1K�418�	419��420s�A c��UR=(d UR=(a- [[[UR4215R5$r�)r�r�rjrr-r�rr�s r��lastrow_has_defaults�,DefaultExecutionContext.lastrow_has_defaultss7���
�
�.����422�D���d�m�m�,�6�6�5423�	424r�c�425^^	^426^^�UR(dUR(ag[[UR5nUR5nUcgURnUR(aG[U5nURRX RURURU5 UR(a
URmOSmUR(a4UR =(d SVs/sHnXAR"U4PM nnO/UR$R'5VVs/sHupdXF4PM427 nnn/nUGH unmTUR(;aMX@R*;a�[-TR.5(aZ[1TR.R25mUTm428UR5UU429UU4Sj[7UR*U555 M�UR9TS5m	UR5UU	U4SjUR*U55 M�UR9TS5m	TbTR9XD5OUnUR;UT	TR.45 GM# U$s snfs snnf)aSGiven a cursor and ClauseParameters, prepare arguments430in order to call the appropriate431style of ``setinputsizes()`` on the cursor, using DB-API types432from the bind parameter's ``TypeEngine`` objects.433 434This method only called by those dialects which set the435:attr:`.Dialect.bind_typing` attribute to436:attr:`.BindTyping.SETINPUTSIZES`.  Python-oracledb and cx_Oracle are437the only DBAPIs that requires setinputsizes(); pyodbc offers it as an438option.439 440Prior to SQLAlchemy 2.0, the setinputsizes() approach was also used441for pg8000 and asyncpg, which has been changed to inline rendering442of casts.443 444Nrc3�># �UH@upTbTRX"5OUTUT-TRRUT-4v� MB g7fr�)r�r��types)r5r�	paramnamer{�dbtypesr��nums   ����r�r6�CDefaultExecutionContext._prepare_set_input_sizes.<locals>.<genexpr>Ys[����
.�/�N�C�
$6�#A�!3� 6� 6�y� L�%.�#�C�#�I�.�%�N�N�0�0��s��;��/�s�AAc3�j># �UH(nTbTRX5OUTTR4v� M* g7fr�)r�r�)r5r�r{�dbtyper�s  ���r�r6r�isC����.�*H�I�
$6�#A�!3� 6� 6�y� L�%.�"�%�N�N��*H�s�03)r�r�rr-r��_get_set_input_sizes_lookupr}r�r��dispatch�do_setinputsizesrr�r�r�r�r��bindsrsrRr�r�r)r�r!r�r�r�r�rX)
r�r��445inputsizesr}r�rRr{�generic_inputsizes�escaped_namer�r�r�r�s
      `  @@@@r��_prepare_set_input_sizes�0DefaultExecutionContext._prepare_set_input_sizessN���&�:�:�������T�]�]�3���9�9�;�446�����,�,������j�)�J����-�-��K�K�������$�
��&�&�!)�!<�!<��!%�����$�/�/�5�2�5��5�C��n�n�S�)�*�5�
��E�'/�&9�&9�&?�&?�&A��&A�N�I�� �&A�
��447FH��#�N�C���H�;�;�;���/�/�/� ����0�0��i�n�n�2�2�3�C�(��3�G�&�-�-�
.�/8� �5�5�c�:�/�
.�
�(�^�^�I�t�<�F�&�-�-�.�*.�)B�)B�3�)G�.��$���	�4�8��*�5�'�*�*�3�4���#�)�)�!�6�9�>�>�:��[$�b"�!��y��448s�I:�=I?c���UR(aURX#5$UR(aXlUR	U5$UR449(aUR
XU5$UR$r�)�is_sequence�
fire_sequence�is_callable�current_columnr��is_clause_element�_exec_default_clause_element)r��columnrbr!s    r��
_exec_default�%DefaultExecutionContext._exec_default�sd������%�%�g�5�5�
�
 �
 �#)���;�;�t�$�$�
�
&�
&��4�4�V�e�L�L��;�;�r�c	�l�UR(d"[R"URU5nOURn[R"U5RURS9nUR5nURnUR(aSURRUR=(d SVs/sHnX�;aXx"Xh5OXhPM sn5n	O&UVs0sHnUX�;aXx"Xh5OXh_M n	nUR[U5X9S9$s snfs snf)Nr|r)r�)�
_arg_is_typedr'�type_coercer�rr�r}r�r�r�rpr�r$r~)450r�r�rbr!�default_argr�r�r�r�r�s451          r�r��4DefaultExecutionContext._exec_default_clause_element�sC���$�$�$�0�0����e�D�K�!�+�+�K��$�$�[�1�9�9�$�,�,�9�O��"�3�3�5���.�.�452�������=�=� (�3�3�9�r�9�
� :���,�#���(<�=�,�1�2� :�
�	�J�"+�
�+�C���(��O�O�$8�9�(�-�.�453+�

���#�#���M�5�$�454�	455��%��s�D,�1 D1z"Optional[_CoreSingleExecuteParams]�current_parametersc�^^�URmURnUceTce[S[[UR5R5nUceU(a�[R"U5(a�UR(a�UR(a5URS-mURRTUR0nOURTUR0nSmUR ceUR R#5nUR%UU4SjU55 U$T$![a [R"S5ef=f)a�Return a dictionary of parameters applied to the current row.456 457This method can only be used in the context of a user-defined default458generation function, e.g. as described at459:ref:`context_default_functions`. When invoked, a dictionary is460returned which includes entries for each column/value pair that is part461of the INSERT or UPDATE statement. The keys of the dictionary will be462the key value of each :class:`_schema.Column`,463which is usually synonymous464with the name.465 466:param isolate_multiinsert_groups=True: indicates that multi-valued467 INSERT constructs created using :meth:`_expression.Insert.values`468 should be469 handled by returning only the subset of parameters that are local470 to the current column default invocation.   When ``False``, the471 raw parameters of the statement are returned including the472 naming convention used in the case of multi-valued INSERT.473 474.. versionadded:: 1.2  added475   :meth:`.DefaultExecutionContext.get_current_parameters`476   which provides more functionality over the existing477   :attr:`.DefaultExecutionContext.current_parameters`478   attribute.479 480.. seealso::481 482    :attr:`.DefaultExecutionContext.current_parameters`483 484    :ref:`context_default_functions`485 486zdget_current_parameters() can only be invoked in the context of a Python side column default functionrJrrc3�:># �UHoTSUT4-4v� M g7f)z%s_m%dNr)r5r��indexr�s  ��r�r6�ADefaultExecutionContext.get_current_parameters.<locals>.<genexpr>	s%�����FJ�s�j��S�%�L�!8�9�:�d�s�)r�r��AttributeErrorr"r�rr-r�r�r&r��_has_multi_parameters�_is_multiparam_columnr��originalr��_dict_parameters�keysr-)r��isolate_multiinsert_groupsr�r��dr�r�r�s      @@r��get_current_parameters�.DefaultExecutionContext.get_current_parameters�sH���B487	*��0�0�J��(�(�F��%�%�%��)�)�)����[�$�-�-�8�F�F�488�
��(�(�(�&����]�+�+��3�3��+�+����q�(���_�_�(�(�*�V�Z�Z�*@�A���Z�Z��F�J�J�!7�8���� �1�1�=�=�=� �1�1�6�6�8�D�
�H�H��FJ��
��H����=�	��)�)�C��
�	�s�D9�9!Ec�j�URcgURXRUR5$r�)rbr�r��r�r�s  r��get_insert_default�*DefaultExecutionContext.get_insert_default	s*���>�>�!���%�%�f�n�n�f�k�k�J�Jr�c�j�URcgURXRUR5$r�)�onupdater�r�r�s  r��get_update_default�*DefaultExecutionContext.get_update_default	s*���?�?�"���%�%�f�o�o�v�{�{�K�Kr�c��[[UR5nURnSnUR(a;URVs/sH#nUU"U5UR489UR4PM% nnONUR(a;URVs/sH#nUU"U5URUR4PM% nnO/nURHcnX`lUHTunnup�p�nU(aX6U'US-
nMU	(aX�U'M*U490(aX@lU"U5Xg'MCU"U5n
U
cMPX�U'MV Me U?gs snfs snf)Nrr)
rr-r��_within_exec_param_key_getterr��_default_description_tupler�r��_onupdate_description_tupler�r�r�r�)r�r��491key_getter�sentinel_counter�c�
prefetch_recsry�	param_keyr��	is_scalarr��is_sentinel�fallbackr�s              r�r��1DefaultExecutionContext._process_execute_defaults#	sj����T�]�]�3���;�;�492����#�#�"�1�1��2�A���q�M��0�0��+�+�	�2�
��M��
%�
%�"�1�1��2�A���q�M��1�1��+�+�	�2�
��M��M��-�-�E�&+�#�����:�����'7�)�$�$��)�$��'*�)�$� �*+�'�'*�4�y�E�$�"�1�+�C���+.�i�(��.�,
�#��Y��s�*D9�*D>)!r�r�r�r�r2r�r�r�rjr�r�r�r�r�rr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�)r}rr�rr�rEr�r9r�r+r_r)r}rr�rr�rEr�r9r�r-r�r4r�rFr�r�r�rr_r)r}rr�rr�rEr�r9r�r~r�r7r_r)493r}rr�rr�rEr�r9r_r)r_r~)r_zOptional[Sequence[Column[Any]]]r�)r r~r!zOptional[TypeEngine[Any]]r�z#Optional[_DBAPISingleExecuteParams]r_r)r_r)r!zTypeEngine[Any]rHr~rIr?r_z#Optional[_ResultProcessorType[Any]])r_rn)r_rj)r_z0Optional[List[Tuple[str, Any, TypeEngine[Any]]]])T)Zrar�rbrcr�r�r�r�r�r�r�EXECUTEr�rnr�r�r�r$�494EMPTY_DICTr�rbrcrar�r�r�r�r2rjr�r�rBr�rr�rr�r�r�r�r�rrr�r�r�r495r�r�r�r�rDrrrr$r�r/r�r�r4r3r?rBrErJrNrQ�non_memoized_propertyrTrWr�r�rprir`r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�r�r�r��s����H��H��H��G��G��E�".�"6�"6�M�<�6�#'�H� �'�	
���
�;?��7�>�)-�����8�#�2�2��.2��+�2�"��"��!&���O��L�#�I�}�#�	
���
�59�4F�4F�4H��1�H���I���,�,�
������>�>�(�(�@�@��1�4�?�?�C��>B��;�B������*��*��*�0�	*�496+�*�"�
*�497�*��*�X�!+� ;� ;�c��c��c�0�	c�498+�c��
c�,�c�&�c�E�c��c�499�c��c�J�'��'��'�0�	'�500+�'��
'�-�'�501�'��'�R������0�	�502+��503�
���& �D�504��505�506���4��4�507���+��+�508���'��'�509510������511���B��B�;?�	,��,�)�,�8�	,�512513
�,�\514���$��$��:0�$!�/�$�
�515�516
�517E�$�518E�/2�519E�=F�520E�	,�521E�%�&
�522���(� �(��*��*�3�9�)�V/�8p�d523���/��/�@�K�524�525�526i"�	9�i"�V
�%527�N>B��:�A��0B�HK�L�4$r�r�)trd�528__future__rrYr�r��re�timer�typingrrrrr	r529rrr
rrrrrrr��rrrbr�baserrrrrr�530reflectionrrr!r"r#r$�sqlr%r&r'r(r��sql._typingr)�sql.baser*�sql.compilerr+r,r-�sql.elementsr.�util.typingr/r0r�r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@r�rAr�rBrCrDrErFrGrHrI�sql.dmlrJrKrL�531sql.schemarM�sql.type_apirNrOrPr��I�UNICODEr,r�rrrrrrRr�r��execution_ctx_clsrr�r��<module>r�s����#���
�	��
�������!�"������ �������"�#��$�(�"�#���������"�'��&�7�&�&��!�	��� ��+�3�4�3�4�5�+�;�'�+�+�'�%�*���'��,� �'�&�1�"�$�,�#�1�3�)��532�533�<�����534�535�1B�C��	���
�
�����d536�W�d537�N!*��*�0`$�.�`$�F%$;�� r�
codekingpro/portable-devtools · Team Ai