
    g	                        U d dl m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 ej                  rd	d
l
mZ d	dl
mZ d	dl
mZ d	dl
mZ dZded<   	 	 	 	 ddZ	 	 	 	 ddZy)    )annotationsN)Any)Mapping)Optional)Tuple   )exc   )_CoreAnyExecuteParams)_CoreMultiExecuteParams)_DBAPIAnyExecuteParams)_DBAPIMultiExecuteParams zTuple[Any, ...]	_no_tuplec                &   | t         S t        | t              st        | t              r2| r.t        | d   t        t        f      st        j                  d      | S t        | t              st        | t              r| gS t        j                  d      )Nr   9List argument must consist only of tuples or dictionariesz'mapping or list expected for parametersr   
isinstancelisttupler   r	   ArgumentErrordictparamss    Y/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/sqlalchemy/engine/_py_util.py_distill_params_20r      s     ~	FD	!Z%>*VAY0@A##K  	FD	!Z 		& x IJJ    c                   | t         S t        | t              r2| r.t        | d   t        t        f      st        j                  d      | S t        | t        t        f      st        | t              r| gS t        j                  d      )Nr   r   z+mapping or sequence expected for parametersr   r   s    r   _distill_raw_paramsr   4   s     ~	FD	!*VAY0@A##K  	FUDM	*j 		/ x MNNr   )r   zOptional[_CoreAnyExecuteParams]returnr   )r   z Optional[_DBAPIAnyExecuteParams]r    r   )
__future__r   typingr   r   r   r    r	   TYPE_CHECKING
interfacesr   r   r   r   r   __annotations__r   r   r   r   r   <module>r'      sm    #      	1324  	? K+KK2O,OOr   