Ë
    r™ãjè˜  ã                  óè  — d dl mZ d dlm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 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 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 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,                  r¢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- dd'lm.Z. dd(lm/Z/ dd)lm0Z0 dd*lm1Z1 dd+l2m3Z3 dd,l'm4Z4 dd-l'm5Z5 dd.l'm6Z6 dd/l'm7Z7 dd0l'm8Z8 dd1l'm9Z9 dd2l'm:Z: dd3l)m;Z; dd4l*m<Z< dd5l*m=Z= dd6l*m>Z> dd7l*m?Z? dd8l*m@Z@ dd9l*mAZA dd:lmBZB  ed;ej†                  ¬<«      ZD ed=e	d>ef   ¬<«      ZE ed?ejŒ                  ¬<«      ZG ed@e¬<«      ZHd»dA„ZIdB„ ZJ	 	 	 	 	 	 	 	 d¼dC„ZK	 	 	 	 	 	 	 	 d½dD„ZLe	 	 	 	 	 	 	 	 d¾dE„«       ZMed>dFœ	 	 	 	 	 	 	 	 	 d¿dG„«       ZMe	 	 	 	 	 	 	 	 dÀdH„«       ZMe	 	 	 	 	 	 	 	 dÁdI„«       ZMe	 	 	 	 	 	 	 	 dÂdJ„«       ZMe	 	 	 	 	 	 	 	 dÃdK„«       ZMe	 	 	 	 	 	 	 	 dÄdL„«       ZMe	 	 	 	 	 	 	 	 dÅdM„«       ZMe	 	 	 	 	 	 	 	 dÆdN„«       ZMe	 	 	 	 	 	 	 	 dÇdO„«       ZMe	 	 	 	 	 	 	 	 dÈdP„«       ZMe	 	 	 	 	 	 	 	 dÉdQ„«       ZMe	 	 	 	 	 	 	 	 dÊdR„«       ZMe	 	 	 	 	 	 	 	 dËdS„«       ZMed>dTœ	 	 	 	 	 	 	 	 	 dÌdU„«       ZMe	 	 	 	 	 	 	 	 dÍdV„«       ZMe	 	 	 	 	 	 	 	 dÎdW„«       ZMe	 	 	 	 	 	 	 	 dÏdX„«       ZMdddYdYdZœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dÐd[„ZM	 	 	 	 	 	 	 	 dÑd\„ZN	 	 	 	 	 	 dÒd]„ZO G d^„ d_«      ZP G d`„ da«      ZQ G db„ dc«      ZR G dd„ deeP«      ZS G df„ dgeP«      ZTde$jª                  ddf	 	 	 	 	 	 	 	 	 	 	 dÓdh„ZV G di„ djeP«      ZW G dk„ dleP«      ZX G dm„ dneP«      ZY G do„ dpeP«      ZZ G dq„ dreP«      Z[ G ds„ dteP«      Z\ G du„ dveTeP«      Z] G dw„ dxe]eP«      Z^ G dy„ dze]eP«      Z_ G d{„ d|eP«      Z` G d}„ d~eTeP«      Za G d„ d€eXeTeP«      Zb G d�„ d‚eP«      Zc G dƒ„ d„eXeP«      Zd G d…„ d†eWeP«      Ze G d‡„ dˆeSeP«      Zf G d‰„ dŠeXeP«      Zg G d‹„ dŒeXeTePejÐ                  «      Zi G d�„ dŽeieP«      Zj G d�„ d�eieP«      Zk G d‘„ d’eSeP«      Zl G d“„ d”eP«      Zm G d•„ d–eReP«      Zn G d—„ d˜eQeXeP«      Zo G d™„ dšeQeSeP«      Zp G d›„ dœep«      Zq G d�„ džeP«      Zr G dŸ„ d e]«      Zs G d¡„ d¢eZeXeP«      Zt G d£„ d¤eP«      Zu G d¥„ d¦eXeP«      Zv G d§„ d¨eWeP«      Zw G d©„ dªeu«      Zx G d«„ d¬eP«      Zy G d­„ d®eP«      Zz G d¯„ d°eZeWeP«      Z{ G d±„ d²e{«      Z| G d³„ d´eZeWeP«      Z} G dµ„ d¶eWeP«      Z~ G d·„ d¸eWeP«      Zi Z€ e�e«      D ]P  Z‚ eƒee‚«      Z„e‚�j                  d¹«      sŒe‚�j                  d¹dº«      Z‚e‚ e‡«       v sŒ<  e‡«       e‚   e„«      Zˆeˆe€e„<   ŒR es/e€e�j                     ZŠe‹eŒe�eŽfD ]  Z�eŠe€e�j                  e�   <   Œ yy)Ôé    )ÚannotationsN)ÚAny)ÚCallable)Úcast)ÚDict)ÚIterable)ÚIterator)ÚList)ÚLiteral)ÚNoReturn)ÚOptional)Úoverload)ÚSequence)ÚTuple)ÚType)ÚTYPE_CHECKING)ÚTypeVar)ÚUnioné   )Úroles)Úvisitors)Úis_from_clause)ÚExecutableOption)ÚOptions)ÚHasCacheKey)Ú	Visitableé   )Úexc)Ú
inspection)Úutil)Úelements)Úlambdas)Úschema)Ú
selectable)Ú_ColumnExpressionArgument)Ú_ColumnsClauseArgument)Ú_DDLColumnArgument)Ú_DMLTableArgument)Ú_FromClauseArgument)Ú_OnlyColumnArgument)ÚSyntaxExtension)Ú_DMLTableElement)ÚBindParameter)ÚClauseElement)ÚColumnClause)ÚColumnElement)ÚNamedColumn)ÚSQLCoreOperations)Ú
TextClause)ÚColumn)Ú_ColumnsClauseElement)Ú_JoinTargetProtocol)Ú
FromClause)ÚHasCTE)Ú
SelectBase)ÚSubquery)Ú_TraverseCallableTypeÚ_SR)ÚboundÚ_F.Ú_StringOnlyRÚ_Tc                ób   — t        | t        t        j                  f«       xr t	        | d«       S )zhReturn whether or not the element is a "literal" in the context
    of a SQL expression construct.

    Ú__clause_element__)Ú
isinstancer   r#   ÚSchemaEventTargetÚhasattr)Úelements    úc/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/sqlalchemy/sql/coercions.pyÚ_is_literalrH   P   s<   € ô ØÜ	”F×,Ñ,Ð-óð ò 5ô �gÐ3Ó4Ð
4ð5ó    c                ór  — t        | t        j                  «      r%t        | t        «      s| D ]  }t	        |«      rŒ y yt        | t
        t        j                  t        t        t        j                  j                  f«       xr3 t        | d«       xr$ t        | t        «       xs t        | t        «       S )a  Return whether or not the element is a "literal" in the context
    of a SQL expression construct.

    does a deeper more esoteric check than _is_literal.   is used
    for lambda elements that have to distinguish values that would
    be bound vs. not without any context.

    FTrB   )rC   Úcollections_abcr   ÚstrÚ_deep_is_literalr   r#   rD   r   r   r    ÚlanghelpersÚsymbolrE   ÚtypeÚ
issubclass)rF   Úelems     rG   rM   rM   \   s¹   € ô �'œ?×3Ñ3Ô4¼ZØ”ô>ð ò 	ˆDÜ# DÕ)Ùð	ð ô ØäÜ×(Ñ(ÜÜÜ× Ñ ×'Ñ'ðó	
ð 		
ò 	
ô ˜Ð!5Ó6Ð6ò	
ô ˜7¤DÓ)Ð)ò 4Ü˜g¤{Ó3Ð3ðrI   c                ó<   — t        j                  | d|›d|›d�«      S )Nz.. warning:: The z argument to z¤ can be passed as a Python string argument, which will be treated as **trusted SQL text** and rendered as given.  **DO NOT PASS UNTRUSTED INPUT TO THIS PARAMETER**.)r    Úadd_parameter_text)Ú	paramnameÚmeth_rstÚ	param_rsts      rG   Ú_document_text_coercionrX   ‚   s&   € ô ×"Ñ"Ùò ’hð	 ó
ð 
rI   c                óò   — |rjt        |d   t        t        t        f«      rLt	        |«      dk(  r>t        |d   t        «      rt        j                  d| › d|› d�«      ‚t        d|d   «      S t        d|«      S )Nr   r   zThe "z" argument to zt(), when referring to a sequence of items, is now passed as a series of positional elements, rather than as a list. úSequence[_T])rC   ÚlistÚsetÚdictÚlenr   ÚArgumentErrorr   )ÚattrnameÚfnnameÚargss      rG   Ú!_expression_collection_was_a_listrc   ’   s}   € ñ
 ”
˜4 ™7¤T¬3´Ð$5Ô6¼3¸t»9Èº>Ü�d˜1‘gœtÔ$Ü×#Ñ#Ø˜�z °¨xð 84ð 4óð ô �N D¨¡GÓ,Ð,ä� Ó%Ð%rI   c                 ó   — y ©N© ©ÚrolerF   Úkws      rG   Úexpectrj   ¤   ó   € ð
 rI   ©Úas_keyc                ó   — y re   rf   )rh   rF   rm   ri   s       rG   rj   rj   ¬   s   € ð rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   ¶   s   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   ¾   ó   € ð
 "rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   Æ   rq   rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   Î   s   € ð
 -0rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   Ö   ó   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   Þ   ru   rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   æ   s   € ð rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   ò   s   € ð rI   c                 ó   — y re   rf   rg   s      rG   rj   rj      s   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj     s   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj     ó   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj     r|   rI   ©Úexplicit_subqueryc                ó   — y re   rf   )rh   rF   r   ri   s       rG   rj   rj      s   € ð rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   *  s   € ð
  rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   2  s   € ð
 rI   c                 ó   — y re   rf   rg   s      rG   rj   rj   ;  rk   rI   F)Úapply_propagate_attrsÚargnameÚpost_inspectÚdisable_inspectionc          	     ó  — | j                   rCt        |«      r8t        |d«      r,t        j                  || t        j
                  di |¤Ž|¬«      S t        |    }|}t        |t        j                  t        j                  t        j                  t        j                  f«      sêd }	|j                  r |j                  |fi |¤Ž}	n÷|}d}
|j                   rt        || «      rt        |d«      rd}
n:t        |d«      r.d}
t#        |dd«      s|j%                  «       }nnt        |d«      rŒ.|
s^|j&                  r:|s8t)        j*                  |d¬«      }|�|r|j,                   	 |j%                  «       }	|	€H |j                  |fd|i|¤Ž}	n2|}	n/t        |t        j                  «      r |j2                  di |¤Ž}	n|}	|�Rt4        j6                  rt        |	t8        t:        f«      sJ ‚|j<                  st#        |	d	d «      r|	j<                  |_        |j>                  |	j@                  jB                  v r$|jD                  r |jD                  |	f||d
œ|¤Ž}	|	S  |jF                  ||	fd|i|¤ŽS # t.        $ r |j1                  ||«       Y �Œw xY w)NÚ__code__)r„   FrB   TÚis_clause_element)Úraiseerrr…   Ú_propagate_attrs)r…   Úoriginal_elementrf   )$Úallows_lambdaÚcallablerE   r"   ÚLambdaElementÚLambdaOptionsÚ_impl_lookuprC   r!   ÚCompilerElementr#   Ú
SchemaItemÚFetchedValueÚ	PyWrapperÚ_resolve_literal_onlyÚ_literal_coercionÚ$_skip_clauseelement_for_target_matchÚgetattrrB   Ú_use_inspectionr   ÚinspectÚ_post_inspectÚAttributeErrorÚ_raise_for_expectedÚ_sa__py_wrapper_literalÚtypingr   r2   r.   rŒ   Ú_role_classÚ	__class__Ú__mro__Ú_post_coercionÚ_implicit_coercions)rh   rF   r„   r…   r†   r‡   ri   Úimplr�   ÚresolvedrŠ   Úinsps               rG   rj   rj   C  sÁ  € ð 	×Òô
 �WÔÜ�G˜ZÔ(ä×$Ñ$ØØÜ×!Ñ!Ñ' BÑ'Ø"7ô	
ð 	
ô ˜Ñ€DàÐäØä×$Ñ$Ü×ÑÜ×ÑÜ×Ñð		
ôð ˆà×%Ò%Ø-�t×-Ñ-¨gÑ<¸Ñ<‰Hà&Ðà %Ðð ×9Ò9Ü˜w¨Ô-Ü˜GÐ%9Ô:à$(Ñ!ä˜gÐ';Ô<Ø(,Ð%ä" 7Ð,?ÀÔGØ")×"<Ñ"<Ó">™àô ˜gÐ';Õ<ñ %Ø×'Ò'Ñ0BÜ%×-Ñ-¨gÀÔF�DØÐ'Ù'Ø ×.Ò.ðPØ'+×'>Ñ'>Ó'@˜Hð Ð#Ø5˜t×5Ñ5Øñ Ø)0ð Ø46ñ ‘Hð #‘Ü	�GœW×.Ñ.Ô	/Ø2�7×2Ñ2Ñ8°RÑ8‰àˆàÐ(Ü×ÒÜ˜hÔ):¼MÐ(JÔKÐKÐKà$×5Ò5¼'ØÐ(¨$ô;
ð 6>×5NÑ5NÐ!Ô2à×Ñ˜8×-Ñ-×5Ñ5Ñ5Ø×ÒØ*�t×*Ñ*ØðàØ!1ñð ñ	ˆHð ˆà'ˆt×'Ñ'Ø˜hñ
Ø07ð
Ø;=ñ
ð 	
øôC  .ò PØ ×4Ñ4Ð5EÀw×OðPús   Å"I, É,JÊ
Jc                óD   — |j                  dd «       t        | |fddi|¤ŽS )Nrm   T)Úpoprj   rg   s      rG   Úexpect_as_keyr¬   ·  s)   € ð ‡F�Fˆ8�TÔÜ�$˜Ñ3¨Ð3°Ñ3Ð3rI   c              #  ó   K  — |D ]u  }d }d }t        | |«      }t        |t        «      rt        |t        «      sJ ‚|x}}n.g }|j                  }t	        j
                  |i d|i«       |r|d   }|�|n|}||||f–— Œw y ­w)NÚcolumnr   )rj   rC   rL   Úappendr   Útraverse)	rh   ÚexpressionsÚexprÚstrnamer®   r¨   ÚcolsÚ
col_appendÚadd_elements	            rG   Ú expect_col_expression_collectionr·   ¾  s�   è ø€ ð ò 5ˆØˆØˆä,2°4¸Ó,>ˆÜ�h¤Ô$Ü˜d¤CÔ(Ð(Ð(Ø!%Ð%ˆG‘hà&(ˆDØ=A¿[¹[ˆJÜ×Ñ˜h¨¨X°zÐ,BÔCÙØ˜a™�Ø &Ð 2‘f¸ˆà˜ ¨Ð4Ó4ñ!5ùs   ‚A<A>c                  óˆ   — e Zd ZU dZd„ ZdZded<   dZdZd„ Z		 d	 	 	 	 	 	 	 	 	 dd„Z
	 	 ddddd	œ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd
„Zy)ÚRoleImpl)r¢   Únamer›   c                ó   — t        «       ‚re   )ÚNotImplementedError©ÚselfrF   ri   s      rG   r˜   zRoleImpl._literal_coercionß  s   € Ü!Ó#Ð#rI   Nr   r¥   Fc                ór   — || _         |j                  | _        t        |t        j
                  «      | _        y re   )r¢   Ú
_role_namerº   rQ   r   ÚUsesInspectionr›   )r¾   Ú
role_classs     rG   Ú__init__zRoleImpl.__init__æ  s,   € Ø%ˆÔØ×)Ñ)ˆŒ	Ü)¨*´e×6JÑ6JÓKˆÕrI   c                ó*   — | j                  |||«       y re   ©rŸ   ©r¾   rF   r¨   r…   ri   s        rG   r¦   zRoleImpl._implicit_coercionsë  s   € ð 	× Ñ  ¨'°8Õ<rI   ©ÚadviceÚcodeÚerrc               óÎ   — |�||ur	|›d|›d�}nt        |«      }|r| j                  ›d|›d|›d�}	n| j                  ›d|›d�}	|r|	d|z   z  }	t        j                  |	|¬«      |‚)	Nz object resolved from z objectz expected for argument z; got ú.z expected, got ú )rÉ   )Úreprrº   r   r_   )
r¾   rF   r…   r¨   rÈ   rÉ   rÊ   ri   ÚgotÚmsgs
             rG   rŸ   zRoleImpl._raise_for_expectedô  sq   € ð Ð H°GÑ$;Ú9AÂ7ÐK‰Cä�w“-ˆCáà—	“	ÚÚð‰Cð -1¯I«I²sÐ;ˆCáØ�3˜‘<ÑˆCä×Ñ ¨$Ô/°SÐ8rI   re   ©
rF   r   r¨   r   r…   úOptional[str]ri   r   Úreturnr   ©NN©rF   r   r…   rÒ   r¨   zOptional[Any]rÈ   rÒ   rÉ   rÒ   rÊ   úOptional[Exception]ri   r   rÓ   r   )Ú__name__Ú
__module__Ú__qualname__Ú	__slots__r˜   r¥   Ú__annotations__r—   r™   rÃ   r¦   rŸ   rf   rI   rG   r¹   r¹   Ü  sÏ   … Ø:€Iò$ð €N�CÓØ!ÐØ+0Ð(òLð "&ð	=àð=ð ð=ð ð	=ð
 ð=ð 
ó=ð "&Ø"&ð	9ð !%Ø"Ø#'ñ9àð9ð ð9ð  ð	9ð ð9ð ð9ð !ð9ð ð9ð 
ô9rI   r¹   c                  ó   — e Zd ZdZd„ Zy)Ú_Deannotaterf   c                ó   — ddl m}  ||«      S )Nr   )Ú_deep_deannotate)r    rß   )r¾   r¨   ri   rß   s       rG   r¥   z_Deannotate._post_coercion  s   € Ý*á Ó)Ð)rI   N©r×   rØ   rÙ   rÚ   r¥   rf   rI   rG   rÝ   rÝ     s   „ Ø€Ió*rI   rÝ   c                  ó   — e Zd ZdZdZy)Ú_StringOnlyrf   TN)r×   rØ   rÙ   rÚ   r—   rf   rI   rG   râ   râ     s   „ Ø€Ià ÑrI   râ   c                  ó   — e Zd ZdZdd„Zd„ Zy)Ú_ReturnsStringKeyrf   Nc                óN   — t        |t        «      r|S | j                  |||«       y re   ©rC   rL   rŸ   rÆ   s        rG   r¦   z%_ReturnsStringKey._implicit_coercions%  s#   € Ü�gœsÔ#ØˆNà×$Ñ$ W¨g°xÕ@rI   c                ó   — |S re   rf   r½   s      rG   r˜   z#_ReturnsStringKey._literal_coercion+  ó   € ØˆrI   re   ©r×   rØ   rÙ   rÚ   r¦   r˜   rf   rI   rG   rä   rä   "  s   „ Ø€IóAórI   rä   c                  ó   — e Zd ZdZd„ Zdd„Zy)Ú_ColumnCoercionsrf   c                ó.   — t        j                  d«       y )Nz|implicitly coercing SELECT object to scalar subquery; please use the .scalar_subquery() method to produce a scalar subquery.)r    Úwarn)r¾   s    rG   Ú"_warn_for_scalar_subquery_coercionz3_ColumnCoercions._warn_for_scalar_subquery_coercion2  s   € Ü�	‰	ðõ	
rI   Nc                ó°  — |}t        |dd«      s| j                  |||«       y |j                  r | j                  «        |j	                  «       S |j
                  rDt        |t        j                  «      r*| j                  «        |j                  j	                  «       S | j                  j                  r|j                  r|S | j                  |||«       y )NrŠ   F)rš   rŸ   Ú_is_select_baserî   Úscalar_subqueryÚ_is_from_clauserC   r$   r:   rF   r¢   rŽ   Ú_is_lambda_element)r¾   rF   r¨   r…   ri   r�   s         rG   r¦   z$_ColumnCoercions._implicit_coercions9  s¹   € Ø"ÐÜ�xÐ!4°eÔ<Ø×$Ñ$Ð%5°wÀÕIØ×%Ò%Ø×3Ñ3Ô5Ø×+Ñ+Ó-Ð-Ø×%Ò%¬*Ø”j×)Ñ)ô+
ð ×3Ñ3Ô5Ø×#Ñ#×3Ñ3Ó5Ð5Ø×Ñ×+Ò+°×0KÒ0KØˆOà×$Ñ$Ð%5°wÀÕIrI   re   )r×   rØ   rÙ   rÚ   rî   r¦   rf   rI   rG   rë   rë   /  s   „ Ø€Iò
ôJrI   rë   c                ód   —  |dt        j                  | «      |rd|›�nd|rd|z  nddœz  «      |‚)Nzc%(extra)sTextual SQL expression %(expr)r %(argname)sshould be explicitly declared as text(%(expr)r)úfor argument Ú z%s )r²   r…   Úextra)r    Úellipses_string)rF   r…   Úexc_clsr÷   rÊ   s        rG   Ú_no_text_coercionrú   K  sJ   € ñ ð	0ô ×(Ñ(¨Ó1Ú9@©GÑ5ÀbÙ&+�U˜U’]°ñ
ñ	
óð ðrI   c                  ó   — e Zd ZdZddœd„Zy)Ú_NoTextCoercionrf   N©r…   c               óª   — t        |t        «      r1t        t        j                  | j
                  «      rt        ||«       y | j                  ||«       y re   )rC   rL   rQ   r!   r3   r¢   rú   rŸ   ©r¾   rF   r…   ri   s       rG   r˜   z!_NoTextCoercion._literal_coercion`  s@   € Ü�gœsÔ#¬
Ü×Ñ ×!1Ñ!1ô)
ô ˜g wÕ/à×$Ñ$ W¨gÕ6rI   ©r×   rØ   rÙ   rÚ   r˜   rf   rI   rG   rü   rü   ]  s   „ Ø€Ià48õ 7rI   rü   c                  ó0   — e Zd ZdZdZdZdZdd„Zddœd„Zy)Ú_CoerceLiteralsrf   FNc                ó   — t        ||«      S re   ©rú   ©r¾   rF   r…   s      rG   Ú_text_coercionz_CoerceLiterals._text_coerciono  ó   € Ü  ¨'Ó2Ð2rI   rý   c               óð  — t        |t        «      r<| j                  r|dk(  rt        j                  dd¬«      S  | j
                  ||fi |¤ŽS | j                  rF|€t        j                  «       S |du rt        j                  «       S |du rt        j                  «       S | j                  r:t        |t        j                  «      r t        j                  t        |«      d¬«      S | j                  ||«       y )NÚ*T)Ú
is_literalF)rC   rL   Ú_coerce_starr!   r/   r  Ú_coerce_constsÚNullÚFalse_ÚTrue_Ú_coerce_numericsÚnumbersÚNumberrŸ   rÿ   s       rG   r˜   z!_CoerceLiterals._literal_coercionr  sÈ   € Ü�gœsÔ#Ø× Ò  W°¢^Ü×,Ñ,¨S¸TÔBÐBà*�t×*Ñ*¨7°GÑB¸rÑBÐBà×ÒØˆÜ—}‘}“Ð&Ø˜EÑ!Ü—‘Ó(Ð(Ø˜D‘Ü—~‘~Ó'Ð'à× Ò ¤Z°¼'¿.¹.Ô%JÜ×(Ñ(¬¨W«À$ÔGÐGà× Ñ  ¨'Õ2rI   re   )	r×   rØ   rÙ   rÚ   r  r  r  r  r˜   rf   rI   rG   r  r  i  s&   „ Ø€IØ€NØ€LØÐó3ð 59õ 3rI   r  c                  ó(   — e Zd ZdZ	 ddddœd„Zd„ Zy)ÚLiteralValueImplTNF)Útype_Úliteral_executec               óx   — t        |«      s | j                  |f||dœ|¤Ž t        j                  d ||d|¬«      S )N)r¨   r…   T)r  Úuniquer  )rH   rŸ   r!   r-   )r¾   rF   r¨   r…   r  r  ri   s          rG   r¦   z$LiteralValueImpl._implicit_coercionsŠ  sU   € ô ˜8Ô$Ø$ˆD×$Ñ$ØðØ"*°GñØ?Aòô ×%Ñ%ØØØØØ+ô
ð 	
rI   c                ó   — |S re   rf   r½   s      rG   r˜   z"LiteralValueImpl._literal_coercion¡  rè   rI   re   )r×   rØ   rÙ   r—   r¦   r˜   rf   rI   rG   r  r  ‡  s$   „ Ø Ðð ð	
ð Øô
ó.rI   r  c                  óR   ‡ — e Zd ZdZ	 	 dddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„Zˆ xZS )Ú_SelectIsNotFromrf   NrÇ   c          	     óÒ   •— |st        |t        j                  «      st        |t        j                  «      rd|�|j                  n|›d�}d}nd }t	        ‰| �  |f|||||dœ|¤Ž J ‚)NzTo create a FROM clause from a z$ object, use the .subquery() method.Ú89ve)r…   r¨   rÈ   rÉ   rÊ   )rC   r   ÚSelectStatementRoler£   ÚsuperrŸ   )	r¾   rF   r…   r¨   rÈ   rÉ   rÊ   ri   r£   s	           €rG   rŸ   z$_SelectIsNotFrom._raise_for_expected¨  sŠ   ø€ ñ Ü˜7¤E×$=Ñ$=Ô>Ü˜(¤E×$=Ñ$=Ô>øð
 *2Ð)=�8×%Ò%À7ÑJðMð ð
 ‰DàˆDä‰Ñ#Øð	
àØØØØñ	
ð ò	
ð 	ˆurI   rÔ   rÕ   ©r×   rØ   rÙ   rÚ   rŸ   Ú__classcell__©r£   s   @rG   r  r  ¥  sx   ø„ Ø€Ið
 "&Ø"&ð	#ð !%Ø"Ø#'ñ#àð#ð ð#ð  ð	#ð ð#ð ð#ð !ð#ð ð#ð 
÷#ñ #rI   r  c                  ó4   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zd„ Zy)ÚHasCacheKeyImplrf   Nc                óN   — t        |t        «      r|S | j                  |||«       y re   )rC   r   rŸ   rÆ   s        rG   r¦   z#HasCacheKeyImpl._implicit_coercionsÑ  s%   € ô �gœ{Ô+ØˆNà×$Ñ$ W¨g°xÕ@rI   c                ó   — |S re   rf   r½   s      rG   r˜   z!HasCacheKeyImpl._literal_coercionÝ  rè   rI   re   rÑ   ré   rf   rI   rG   r$  r$  Î  óL   „ Ø€Ið "&ð	
Aàð
Að ð
Að ð	
Að
 ð
Að 
ó
AórI   r$  c                  ó4   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zd„ Zy)ÚExecutableOptionImplrf   Nc                óN   — t        |t        «      r|S | j                  |||«       y re   )rC   r   rŸ   rÆ   s        rG   r¦   z(ExecutableOptionImpl._implicit_coercionsä  s&   € ô �gÔ/Ô0ØˆNà×$Ñ$ W¨g°xÕ@rI   c                ó   — |S re   rf   r½   s      rG   r˜   z&ExecutableOptionImpl._literal_coercionð  rè   rI   re   rÑ   ré   rf   rI   rG   r)  r)  á  r'  rI   r)  c                  ó4   ‡ — e Zd ZdZddddœd„Zdˆ fd„	Zˆ xZS )ÚExpressionElementImplrf   NF)rº   r  Úis_crudc               óê   — |€$|s"|�|j                   st        j                  «       S 	 t        j                  |||d|¬«      S # t        j
                  $ r}| j                  ||¬«       Y d }~y d }~ww xY w)NT)r  Ú_is_crud©rÊ   )Úshould_evaluate_noner!   r  r-   r   r_   rŸ   )r¾   rF   rº   r  r.  ri   rÊ   s          rG   r˜   z'ExpressionElementImpl._literal_coercion÷  sx   € ð ˆOÙØ� e×&@Ò&@ô
 —=‘=“?Ð"ð;Ü×-Ñ-Ø˜' 5°Àôð øô ×$Ñ$ò ;Ø×(Ñ(¨°cÐ(×:Ñ:ûð;ús   ¨A ÁA2ÁA-Á-A2c                ó¤   •— t        |t        j                  «      rd}nt        |t        j                  «      rd}nd }t        ‰| �  |f|||dœ|¤ŽS )NzTTo create a column expression from a VALUES clause, use the .scalar_values() method.z`To create a column expression from a FROM clause row as a whole, use the .table_valued() method.©r…   r¨   rÈ   )rC   r$   ÚValuesr   ÚAnonymizedFromClauseRoler  rŸ   ©r¾   rF   r…   r¨   ri   rÈ   r£   s         €rG   rŸ   z)ExpressionElementImpl._raise_for_expected  si   ø€ ä�gœz×0Ñ0Ô1ð3ñ ô ˜¤×!?Ñ!?Ô@ð>ñ ð
 ˆFä‰wÑ*Øð
Ø$¨xÀñ
ØJLñ
ð 	
rI   rÔ   )r×   rØ   rÙ   rÚ   r˜   rŸ   r!  r"  s   @rG   r-  r-  ô  s    ø„ Ø€Ið  $¨4¸ô;÷(
ñ 
rI   r-  c                  ó   — e Zd ZdZy)ÚTStringElementImplrf   N©r×   rØ   rÙ   rÚ   rf   rI   rG   r9  r9    ó   „ Ø�IrI   r9  c                  ó*   — e Zd ZdZdddœd„Zddœd„Zy)ÚBinaryElementImplrf   N)Úbindparam_typer…   c               ó’   — 	 |j                  |||¬«      S # t        j                  $ r}| j                  ||¬«       Y d }~y d }~ww xY w)N)r  r1  )Ú_bind_paramr   r_   rŸ   )r¾   rF   r²   Úoperatorr>  r…   ri   rÊ   s           rG   r˜   z#BinaryElementImpl._literal_coercion&  sK   € ð	7Ø×#Ñ# H¨g¸^Ð#ÓLÐLøÜ× Ñ ò 	7Ø×$Ñ$ W°#Ð$×6Ñ6ûð	7ús   ‚ –A©AÁA)r>  c               óœ   — |j                   j                  r5|j                   j                  s|j                  |�|n|j                   «      }|S re   )rP   Ú_isnullÚ_with_binary_element_type)r¾   r¨   r²   r>  ri   s        rG   r¥   z BinaryElementImpl._post_coercion5  s@   € Ø�=‰=× Ò ¨¯©×):Ò):Ø×9Ñ9Ø"0Ð"<‘À$Ç)Á)óˆHð ˆrI   )r×   rØ   rÙ   rÚ   r˜   r¥   rf   rI   rG   r=  r=  #  s    „ Ø€Ið Øô7ð @Dõ rI   r=  c                  ój   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 d	d„Zd„ Z ej                  d«      d„ «       Zd„ Z	y)
ÚInElementImplrf   Nc                ób  — |j                   r�t        |t        j                  «      rD|j                  j
                  r.| j                  |«        | j                  |j                  fi |¤ŽS | j                  |«        | j                  |j                  «       fi |¤ŽS | j                  |||«       y re   )
rò   rC   r$   ÚAliasrF   rð   Ú_warn_for_implicit_coercionr¥   ÚselectrŸ   rÆ   s        rG   r¦   z!InElementImpl._implicit_coercions@  s—   € ð ×#Ò#ä˜8¤Z×%5Ñ%5Ô6Ø×$Ñ$×4Ò4à×0Ñ0°Ô:Ø*�t×*Ñ*¨8×+;Ñ+;ÑB¸rÑBÐBà×0Ñ0°Ô:Ø*�t×*Ñ*¨8¯?©?Ó+<ÑCÀÑCÐCà×$Ñ$ W¨g°xÕ@rI   c                ó\   — t        j                  d|j                  j                  z  «       y )Nz_Coercing %s object into a select() for use in IN(); please pass a select() construct explicitly)r    rí   r£   r×   )r¾   rR   s     rG   rI  z)InElementImpl._warn_for_implicit_coercionT  s%   € Ü�	‰	ð:à�~‰~×&Ñ&ñ(õ	
rI   zsqlalchemy.sql.elementsc          	     óâ  — t        j                  |«      rÂi }t        |«      }|D ]a  }t        |«      rŒt	        |t         j
                  j                  j                  «      s t        |d«      s | j                  |fi |¤Ž Œ]|||<   Œc |r9t        j                  |D �cg c]  }||v r||   n|j                  ||«      ‘Œ c}Ž S |j                  ||d¬«      S  | j                  |fi |¤Ž y c c}w )NrB   T)Ú	expanding)r    Úis_non_string_iterabler[   rH   rC   Ú	preloadedÚsql_elementsr0   rE   rŸ   r!   Ú
ClauseListr@  )r¾   rF   r²   rA  ri   Únon_literal_expressionsÚos          rG   r˜   zInElementImpl._literal_coercion[  s  € ä×&Ñ& wÔ/ð ð $ô ˜7“mˆGØò 7�Ü" 1•~Ü%Øœ4Ÿ>™>×6Ñ6×DÑDôä% aÐ)=Ô>Ø0˜×0Ñ0°Ñ?¸BÓ?ð 67Ð/°Ò2ð7ñ 'Ü×*Ñ*ð ")öð ð  !Ð$;Ñ;ð 4°AÒ6à!%×!1Ñ!1°(¸AÓ!>ñ?òð	ð 	ð ×'Ñ'¨°'ÀTÐ'ÓJÐJð %ˆD×$Ñ$ WÑ3°Ó3ùòs   Â"C,c               ó–  — |j                   r|j                  «       S t        |t        j                  «      r,t        |j                  «      dk(  rJ ‚|j                  |¬«      S t        |t        j                  «      r"|j                  d¬«      }d|_
        ||_        |S t        |t        j                  «      r|j                  «       S |S )Nr   )ÚagainstT)Úmaintain_key)rð   rñ   rC   r!   rQ  r^   ÚclausesÚ
self_groupr-   Ú_clonerM  Ú	expand_opr$   r5  Úscalar_values)r¾   rF   r²   rA  ri   s        rG   r¥   zInElementImpl._post_coercion~  s°   € Ø×"Ò"ð ×*Ñ*Ó,Ð,Ü˜¤×!4Ñ!4Ô5Ü˜7Ÿ?™?Ó+¨qÒ0Ð0Ð0Ø×%Ñ%¨hÐ%Ó7Ð7ä˜¤×!7Ñ!7Ô8Ø—n‘n°$�nÓ7ˆGØ $ˆGÔØ (ˆGÔàˆNÜ˜¤×!2Ñ!2Ô3Ø×(Ñ(Ó*Ð*àˆNrI   re   rÑ   )
r×   rØ   rÙ   rÚ   r¦   rI  r    Úpreload_moduler˜   r¥   rf   rI   rG   rF  rF  =  st   „ Ø€Ið "&ð	AàðAð ðAð ð	Að
 ðAð 
óAò(
ð €T×ÑÐ2Ó3ñ 4ó 4ð 4óDrI   rF  c                  ó&   — e Zd ZdZdZd„ Zddœd„Zy)ÚOnClauseImplrf   Tc                ó&   — | j                  |«       y re   rÅ   r½   s      rG   r˜   zOnClauseImpl._literal_coercion˜  s   € Ø× Ñ  Õ)rI   N)r�   c               ó>   — t        |t        j                  «      r|S |S re   )rC   r   ÚJoinTargetRole)r¾   r¨   r�   ri   s       rG   r¥   zOnClauseImpl._post_coercion›  s    € ô Ð&¬×(<Ñ(<Ô=Ø#Ð#ØˆrI   )r×   rØ   rÙ   rÚ   r  r˜   r¥   rf   rI   rG   r^  r^  “  s   „ Ø€Ià€Nò*ð <@õ rI   r^  c                  ó   — e Zd ZdZdZdd„Zy)ÚWhereHavingImplrf   TNc                ó   — t        ||«      S re   r  r  s      rG   r  zWhereHavingImpl._text_coercion«  r  rI   re   ©r×   rØ   rÙ   rÚ   r  r  rf   rI   rG   rc  rc  ¦  s   „ Ø€Ià€Nô3rI   rc  c                  ó   — e Zd ZdZy)ÚSyntaxExtensionImplrf   Nr:  rf   rI   rG   rg  rg  ¯  r;  rI   rg  c                  ó   — e Zd ZdZdZdd„Zy)ÚStatementOptionImplrf   TNc                ó,   — t        j                  |«      S re   ©r!   r3   r  s      rG   r  z"StatementOptionImpl._text_coercion¸  s   € Ü×"Ñ" 7Ó+Ð+rI   re   re  rf   rI   rG   ri  ri  ³  s   „ Ø€Ià€Nô,rI   ri  c                  ó   — e Zd ZdZy)ÚColumnArgumentImplrf   Nr:  rf   rI   rG   rm  rm  ¼  r;  rI   rm  c                  ó   — e Zd ZdZy)ÚColumnArgumentOrKeyImplrf   Nr:  rf   rI   rG   ro  ro  À  r;  rI   ro  c                  ó   — e Zd ZdZdd„Zy)ÚStrAsPlainColumnImplrf   Nc                ó,   — t        j                  |«      S re   )r!   r/   r  s      rG   r  z#StrAsPlainColumnImpl._text_coercionÇ  s   € Ü×$Ñ$ WÓ-Ð-rI   re   )r×   rØ   rÙ   rÚ   r  rf   rI   rG   rq  rq  Ä  s   „ Ø€Iô.rI   rq  c                  ó   — e Zd ZdZdZdd„Zy)ÚByOfImplrf   TNc                ó,   — t        j                  |«      S re   )r!   Ú_textual_label_referencer  s      rG   r  zByOfImpl._text_coercionÐ  s   € Ü×0Ñ0°Ó9Ð9rI   re   re  rf   rI   rG   rt  rt  Ë  s   „ Ø€Ià€Nô:rI   rt  c                  ó   — e Zd ZdZd„ Zy)ÚOrderByImplrf   c                ót   — t        || j                  «      r!|j                  �t        j                  |«      S |S re   )rC   r¢   Ú_order_by_label_elementr!   Ú_label_reference)r¾   r¨   ri   s      rG   r¥   zOrderByImpl._post_coercion×  s4   € ä�x ×!1Ñ!1Ô2Ø×0Ñ0Ð<ä×,Ñ,¨XÓ6Ð6àˆOrI   Nrà   rf   rI   rG   rx  rx  Ô  s   „ Ø€IórI   rx  c                  ó.   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zy)ÚGroupByImplrf   Nc                óT   — t        |«      rt        j                  |j                  Ž S |S re   )r   r!   rQ  ÚcrÆ   s        rG   r¦   zGroupByImpl._implicit_coercionsä  s&   € ô ˜(Ô#Ü×&Ñ&¨¯
©
Ð3Ð3àˆOrI   re   rÑ   ©r×   rØ   rÙ   rÚ   r¦   rf   rI   rG   r}  r}  á  sA   „ Ø€Ið "&ð	
àð
ð ð
ð ð	
ð
 ð
ð 
ô
rI   r}  c                  ó   — e Zd ZdZddœd„Zy)ÚDMLColumnImplrf   Frl   c               ó"   — |r|j                   S |S re   )Úkey)r¾   rF   rm   ri   s       rG   r¥   zDMLColumnImpl._post_coercionô  s   € ÙØ—;‘;ÐàˆNrI   Nrà   rf   rI   rG   r‚  r‚  ñ  s   „ Ø€Ià05õ rI   r‚  c                  ó   — e Zd ZdZddœd„Zy)ÚConstExprImplrf   Nrý   c               ó´   — |€t        j                  «       S |du rt        j                  «       S |du rt        j                  «       S | j	                  ||«       y )NFT)r!   r  r  r  rŸ   rÿ   s       rG   r˜   zConstExprImpl._literal_coercionþ  sL   € Øˆ?Ü—=‘=“?Ð"Ø˜ÑÜ—?‘?Ó$Ð$Ø˜‰_Ü—>‘>Ó#Ð#à×$Ñ$ W¨gÕ6rI   r   rf   rI   rG   r†  r†  û  s   „ Ø€Ià48õ 7rI   r†  c                  ó4   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zd„ Zy)ÚTruncatedLabelImplrf   Nc                óN   — t        |t        «      r|S | j                  |||«       y re   ræ   rÆ   s        rG   r¦   z&TruncatedLabelImpl._implicit_coercions  s%   € ô �gœsÔ#ØˆOà×$Ñ$ W¨g°xÕ@rI   c                ód   — t        |t        j                  «      r|S t        j                  |«      S )z¸coerce the given value to :class:`._truncated_label`.

        Existing :class:`._truncated_label` and
        :class:`._anonymous_label` objects are passed
        unchanged.
        )rC   r!   Ú_truncated_labelr½   s      rG   r˜   z$TruncatedLabelImpl._literal_coercion  s*   € ô �gœx×8Ñ8Ô9ØˆNä×,Ñ,¨WÓ5Ð5rI   re   rÑ   ré   rf   rI   rG   r‰  r‰  	  sL   „ Ø€Ið "&ð	
Aàð
Að ð
Að ð	
Að
 ð
Að 
ó
Aó6rI   r‰  c                  ó   — e Zd ZdZdZdd„Zy)ÚDDLExpressionImplrf   TNc                ó,   — t        j                  |«      S re   rk  r  s      rG   r  z DDLExpressionImpl._text_coercion+  s   € ô
 ×"Ñ" 7Ó+Ð+rI   re   re  rf   rI   rG   rŽ  rŽ  &  s   „ Ø€Ià€Nô,rI   rŽ  c                  ó   — e Zd ZdZy)ÚDDLConstraintColumnImplrf   Nr:  rf   rI   rG   r‘  r‘  3  r;  rI   r‘  c                  ó   — e Zd ZdZy)ÚDDLReferredColumnImplrf   Nr:  rf   rI   rG   r“  r“  7  r;  rI   r“  c                  ó4   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zd„ Zy)ÚLimitOffsetImplrf   Nc                ó0   — |€y | j                  |||«       y re   rÅ   rÆ   s        rG   r¦   z#LimitOffsetImpl._implicit_coercions>  s   € ð ÐØà×$Ñ$ W¨g°xÕ@rI   c               ód   — |€y t        j                  |«      }t        j                  |||d¬«      S )NT)r  r  )r    Úasintr$   Ú_OffsetLimitParam)r¾   rF   rº   r  ri   Úvalues         rG   r˜   z!LimitOffsetImpl._literal_coercionJ  s6   € ð ˆ?Øä—J‘J˜wÓ'ˆEÜ×/Ñ/Ø�e 5°ôð rI   re   rÑ   ré   rf   rI   rG   r•  r•  ;  sL   „ Ø€Ið "&ð	
Aàð
Að ð
Að ð	
Að
 ð
Að 
ó
Aó	rI   r•  c                  ó:   ‡ — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dˆ fd„Zˆ xZS )ÚLabeledColumnExprImplrf   c                óþ   •— t        |t        j                  «      r|j                  d «      S t	        ‰| �  ||fd|i|¤Ž}t        |t        j                  «      r|j                  d «      S | j                  |||«       y ©Nr…   )rC   r   ÚExpressionElementRoleÚlabelr  r¦   rŸ   )r¾   rF   r¨   r…   ri   Únewr£   s         €rG   r¦   z)LabeledColumnExprImpl._implicit_coercionsY  sz   ø€ ô �h¤× ;Ñ ;Ô<Ø—>‘> $Ó'Ð'ä‘'Ñ-Ø˜ñØ+2ðØ68ñˆCô ˜#œu×:Ñ:Ô;Ø—y‘y “Ð&à×(Ñ(¨°'¸8ÕDrI   re   rÑ   )r×   rØ   rÙ   rÚ   r¦   r!  r"  s   @rG   rœ  rœ  V  sN   ø„ Ø€Ið "&ð	EàðEð ðEð ð	Eð
 ðEð 
÷Eñ ErI   rœ  c                  óz   ‡ — e Zd ZdZdZdZdZ ej                  dej                  «      Z
	 dddœˆ fd„Zd	d„Zˆ xZS )
ÚColumnsClauseImplrf   Tz^\w\S*$N)rÈ   c               óˆ   •— |s,t        |t        «      rddj                  d„ |D «       «      › d�}t        ‰| �  |f|||dœ|¤ŽS )NzDid you mean to say select(z, c              3  ó2   K  — | ]  }t        |«      –— Œ y ­wre   )rÎ   )Ú.0Úes     rG   ú	<genexpr>z8ColumnsClauseImpl._raise_for_expected.<locals>.<genexpr>{  s   è ø€ Ò6¨œT !ŸWÑ6ùs   ‚z)?r4  )rC   r[   Újoinr  rŸ   )r¾   rF   r…   r¨   rÈ   ri   r£   s         €rG   rŸ   z%ColumnsClauseImpl._raise_for_expectedu  s`   ø€ ñ œ* W¬dÔ3à-Ø—9‘9Ñ6¨gÔ6Ó6Ð7°rð;ð ô
 ‰wÑ*Øð
Ø$¨xÀñ
ØJLñ
ð 	
rI   c                óÄ   — t        |«      }| j                  j                  |«       }t        j                  dt        j                  |«      |rd|›�nd|rdnddœz  «      ‚)NzŸTextual column expression %(column)r %(argname)sshould be explicitly declared with text(%(column)r), or use %(literal_column)s(%(column)r) for more specificityrõ   rö   Úliteral_columnr®   )r®   r…   r«  )rL   Ú_guess_straight_columnÚmatchr   r_   r    rø   )r¾   rF   r…   Úguess_is_literals       rG   r  z ColumnsClauseImpl._text_coercion‚  si   € Ü�g“,ˆà#×:Ñ:×@Ñ@ÀÓIÐIÐÜ×Ñð#ô
 ×.Ñ.¨wÓ7Ú=D±Ñ9È"á(8Ñ$¸hñ	ñ	
ó
ð 	
rI   rÔ   re   )r×   rØ   rÙ   rÚ   r  r  r  ÚreÚcompileÚIr¬  rŸ   r  r!  r"  s   @rG   r£  r£  l  sF   ø„ Ø€Ià€NØÐØ€Là'˜RŸZ™Z¨
°B·D±DÓ9Ðð /3ð
Ø>Bö
÷
rI   r£  c                  ó   — e Zd ZdZy)ÚReturnsRowsImplrf   Nr:  rf   rI   rG   r³  r³  •  r;  rI   r³  c                  óF   ‡ — e Zd ZdZddœd„Z	 d	 	 	 	 	 	 	 	 	 dˆ fd„Zˆ xZS )ÚStatementImplrf   Nrý   c               óš   — ||urt        |t        «      s	 |j                   |S |S # t        $ r}t	        j
                  |«      |‚d }~ww xY wre   )rC   rL   Ú_execute_on_connectionrž   r   ÚObjectNotExecutableError)r¾   r¨   r�   r…   ri   rÊ   s         rG   r¥   zStatementImpl._post_coercionœ  s[   € ð Ð+Ñ+´JØœcô5
ðNØ ×7Ò7ð ˆˆxˆøô "ò NÜ×2Ñ2Ð3CÓDÈ#ÐMûðNús   –& ¦	A
¯AÁA
c                óF   •— |j                   r|S t        ‰| �  ||fd|i|¤ŽS rž  )ró   r  r¦   )r¾   rF   r¨   r…   ri   r£   s        €rG   r¦   z!StatementImpl._implicit_coercionsª  s:   ø€ ð ×&Ò&ØˆOä‘7Ñ.Ø˜ñØ+2ðØ68ñð rI   re   rÑ   )r×   rØ   rÙ   rÚ   r¥   r¦   r!  r"  s   @rG   rµ  rµ  ™  sQ   ø„ Ø€Ið 6:ôð$ "&ð	àðð ðð ð	ð
 ðð 
÷ñ rI   rµ  c                  ó.   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zy)ÚSelectStatementImplrf   Nc                ób   — |j                   r|j                  «       S | j                  |||«       y re   )Ú_is_text_clauseÚcolumnsrŸ   rÆ   s        rG   r¦   z'SelectStatementImpl._implicit_coercions¼  s.   € ð ×#Ò#Ø×#Ñ#Ó%Ð%à×$Ñ$ W¨g°xÕ@rI   re   rÑ   r€  rf   rI   rG   r»  r»  ¹  sG   „ Ø€Ið "&ð	
Aàð
Að ð
Að ð	
Að
 ð
Að 
ô
ArI   r»  c                  ó   — e Zd ZdZy)Ú
HasCTEImplrf   Nr:  rf   rI   rG   rÀ  rÀ  É  r;  rI   rÀ  c                  ó   — e Zd ZdZy)Ú	IsCTEImplrf   Nr:  rf   rI   rG   rÂ  rÂ  Í  r;  rI   rÂ  c                  óH   — e Zd ZdZdZddœd„Z	 d	ddœ	 	 	 	 	 	 	 	 	 	 	 d
d„Zy)ÚJoinTargetImplrf   TNrý   c               ó(   — | j                  ||«       y re   rÅ   rÿ   s       rG   r˜   z JoinTargetImpl._literal_coercionÖ  s   € Ø× Ñ  ¨'Õ2rI   F)Úlegacyc               ó°   — t        |t        j                  «      r|S |r%|j                  rt	        j
                  dd¬«       |S | j                  |||«       y )NzÀImplicit coercion of SELECT and textual SELECT constructs into FROM clauses is deprecated; please call .subquery() on any Core select or ORM Query object in order to produce a subquery object.z1.4)Úversion)rC   r   ra  rð   r    Úwarn_deprecatedrŸ   )r¾   rF   r¨   r…   rÆ  ri   s         rG   r¦   z"JoinTargetImpl._implicit_coercionsÙ  sW   € ô �gœu×3Ñ3Ô4ð ˆNÙ˜×0Ò0Ü× Ñ ð6ð õð ˆOà×$Ñ$ W¨g°xÕ@rI   re   )rF   r   r¨   r   r…   rÒ   rÆ  Úboolri   r   rÓ   r   )r×   rØ   rÙ   rÚ   r™   r˜   r¦   rf   rI   rG   rÄ  rÄ  Ñ  sk   „ Ø€Ià+/Ð(à48ô 3ð "&ð	Að ñAàðAð ðAð ð	Að ðAð ðAð 
ôArI   rÄ  c                  óD   — e Zd ZdZ	 dddœ	 	 	 	 	 	 	 	 	 	 	 d	d„Zddœd„Zy)
ÚFromClauseImplrf   NFr~   c               óf   — |j                   r|r|j                  «       S | j                  |||«       y re   )rð   ÚsubqueryrŸ   )r¾   rF   r¨   r…   r   ri   s         rG   r¦   z"FromClauseImpl._implicit_coercionsû  s1   € ð ×#Ò#Ñ(9Ø×$Ñ$Ó&Ð&à× Ñ  ¨'°8Õ<rI   )Ú
deannotatec               ó*   — |r|j                  «       S |S re   )Ú_deannotate)r¾   rF   rÏ  ri   s       rG   r¥   zFromClauseImpl._post_coercion	  s   € ÙØ×&Ñ&Ó(Ð(àˆNrI   re   )rF   r   r¨   r   r…   rÒ   r   rÊ  ri   r   rÓ   r   )r×   rØ   rÙ   rÚ   r¦   r¥   rf   rI   rG   rÌ  rÌ  ø  s_   „ Ø€Ið "&ð	=ð #(ñ=àð=ð ð=ð ð	=ð  ð=ð ð=ð 
ó=ð 5:õ rI   rÌ  c                  ó   — e Zd ZdZdddœd„Zy)ÚAnonymizedFromClauseImplrf   FN)Úflatrº   c               ó.   — |�J ‚|j                  |¬«      S )N)rÔ  )Ú_anonymous_fromclause)r¾   rF   rÔ  rº   ri   s        rG   r¥   z'AnonymizedFromClauseImpl._post_coercion  s    € Øˆ|Ðˆ|à×,Ñ,°$Ð,Ó7Ð7rI   rà   rf   rI   rG   rÓ  rÓ    s   „ Ø€Ià.3¸$õ 8rI   rÓ  c                  ó   — e Zd ZdZd„ Zy)ÚDMLTableImplrf   c                ó@   — d|j                   v r|j                   d   S |S )NÚ	dml_table)Ú_annotationsr½   s      rG   r¥   zDMLTableImpl._post_coercion  s&   € Ø˜'×.Ñ.Ñ.Ø×'Ñ'¨Ñ4Ð4àˆNrI   Nrà   rf   rI   rG   rØ  rØ    s   „ Ø€IórI   rØ  c                  ó.   — e Zd ZdZ	 d	 	 	 	 	 	 	 	 	 dd„Zy)ÚDMLSelectImplrf   Nc                óÚ   — |j                   rLt        |t        j                  «      r"|j                  j
                  r|j                  S |j                  «       S | j                  |||«       y re   )rò   rC   r$   rH  rF   rð   rJ  rŸ   rÆ   s        rG   r¦   z!DMLSelectImpl._implicit_coercions&  sW   € ð ×#Ò#ä˜8¤Z×%5Ñ%5Ô6Ø×$Ñ$×4Ò4à×'Ñ'Ð'à—‘Ó(Ð(à×$Ñ$ W¨g°xÕ@rI   re   rÑ   r€  rf   rI   rG   rÝ  rÝ  #  sG   „ Ø€Ið "&ð	AàðAð ðAð ð	Að
 ðAð 
ôArI   rÝ  c                  ó$   ‡ — e Zd ZdZdˆ fd„	Zˆ xZS )ÚCompoundElementImplrf   c                óˆ   •— t        |t        j                  «      r|j                  rd}nd}nd }t	        ‰| �  |f|||dœ|¤ŽS )NzFUse the plain select() object without calling .subquery() or .alias().z9To SELECT from any FROM clause, use the .select() method.r4  )rC   r   ÚFromClauseRoleÚ_is_subqueryr  rŸ   r7  s         €rG   rŸ   z'CompoundElementImpl._raise_for_expected<  sa   ø€ Ü�gœu×3Ñ3Ô4Ø×#Ò#ð7ñ ð Pñ ð ˆFÜ‰wÑ*Øð
Ø$¨xÀñ
ØJLñ
ð 	
rI   rÔ   r   r"  s   @rG   rà  rà  9  s   ø„ Ø€I÷
ñ 
rI   rà  ÚRoleÚImpl)rF   r   rÓ   rÊ  )rU   rL   rV   rL   rW   rL   rÓ   zCallable[[_F], _F])r`   rL   ra   rL   rb   z+Union[Sequence[_T], Sequence[Sequence[_T]]]rÓ   rZ   )rh   zType[roles.TruncatedLabelRole]rF   r   ri   r   rÓ   rL   )
rh   úType[roles.DMLColumnRole]rF   r   rm   úLiteral[True]ri   r   rÓ   rL   )rh   zType[roles.LiteralValueRole]rF   r   ri   r   rÓ   zBindParameter[Any])rh   z!Type[roles.DDLReferredColumnRole]rF   r   ri   r   rÓ   úUnion[Column[Any], str])rh   ú#Type[roles.DDLConstraintColumnRole]rF   r   ri   r   rÓ   rè  )rh   zType[roles.StatementOptionRole]rF   r   ri   r   rÓ   z%Union[ColumnElement[Any], TextClause])rh   zType[roles.SyntaxExtensionRole]rF   r   ri   r   rÓ   r+   )rh   z&Type[roles.LabeledColumnExprRole[Any]]rF   z7_ColumnExpressionArgument[_T] | _OnlyColumnArgument[_T]ri   r   rÓ   zNamedColumn[_T])rh   zgUnion[Type[roles.ExpressionElementRole[Any]], Type[roles.LimitOffsetRole], Type[roles.WhereHavingRole]]rF   z_ColumnExpressionArgument[_T]ri   r   rÓ   zColumnElement[_T])rh   z¡Union[Type[roles.ExpressionElementRole[Any]], Type[roles.LimitOffsetRole], Type[roles.WhereHavingRole], Type[roles.OnClauseRole], Type[roles.ColumnArgumentRole]]rF   r   ri   r   rÓ   zColumnElement[Any])rh   zType[roles.DMLTableRole]rF   r(   ri   r   rÓ   r,   )rh   zType[roles.HasCTERole]rF   r8   ri   r   rÓ   r8   )rh   zType[roles.SelectStatementRole]rF   r9   ri   r   rÓ   r9   )rh   úType[roles.FromClauseRole]rF   r)   ri   r   rÓ   r7   )
rh   rê  rF   r9   r   rç  ri   r   rÓ   r:   )rh   zType[roles.ColumnsClauseRole]rF   z_ColumnsClauseArgument[Any]ri   r   rÓ   r5   )rh   zType[roles.JoinTargetRole]rF   r6   ri   r   rÓ   r6   )rh   ú	Type[_SR]rF   r   ri   r   rÓ   r   )rh   rë  rF   r   r„   zOptional[ClauseElement]r…   rÒ   r†   rÊ  r‡   rÊ  ri   r   rÓ   r   )rh   ræ  rF   r   ri   r   rÓ   rL   )rh   ré  r±   zIterable[_DDLColumnArgument]rÓ   zwIterator[Tuple[Union[str, Column[Any]], Optional[ColumnClause[Any]], Optional[str], Optional[Union[Column[Any], str]]]])rF   r   r…   rÒ   rù   zType[exc.SQLAlchemyError]r÷   rÒ   rÊ   rÖ   rÓ   r   )�Ú
__future__r   Úcollections.abcÚabcrK   r  r¯  r¡   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   rö   r   r   Ú_typingr   Úbaser   r   Ú	cache_keyr   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   Údmlr,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   ÚSQLRoler<   r>   Ú
StringRoler?   r@   rH   rM   rX   rc   rj   r¬   r·   r¹   rÝ   râ   rä   rë   r_   rú   rü   r  r  r  r$  r)  r-  r9  r=  rF  r^  rc  rg  ri  rm  ro  rq  ÚByOfRolert  rx  r}  r‚  r†  r‰  rŽ  r‘  r“  r•  rœ  r£  r³  rµ  r»  rÀ  rÂ  rÄ  rÌ  rÓ  rØ  rÝ  rà  r’   Údirrº   rš   ÚclsÚendswithÚreplaceÚglobalsr§   rŸ  Úee_implÚintrÊ  rL   ÚfloatÚpy_typerf   rI   rG   ú<module>rÿ     s�	  ðõ #å )Û Û 	Û Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý Ý  Ý Ý å Ý Ý #Ý "Ý Ý "Ý Ý Ý Ý à	×ÒåÝÝÝÝ2Ý/Ý+Ý*Ý,Ý,Ý%Ý%Ý'Ý'Ý&Ý'Ý%Ý+Ý$ÝÝ1Ý/Ý&Ý"Ý&Ý$Ý/áˆe˜5Ÿ=™=Ô)€ÙˆT˜ # s (Ñ+Ô,€Ù�~¨U×-=Ñ-=Ô>€ÙˆT˜Ô€ó	5ò#ðLØðØ!ðØ.1ðàóð &Øð&àð&ð 6ð&ð ó	&ð$ 
ðØ
(ðàðð ðð 	ò	ó 
ðð 
ð
  ñ	Ø
#ðàðð ð	ð
 ðð 	òó 
ðð 
ðØ
&ðàðð ðð ò	ó 
ðð 
ð"Ø
+ð"àð"ð ð"ð ò	"ó 
ð"ð 
ð"Ø
-ð"àð"ð ð"ð ò	"ó 
ð"ð 
ð0Ø
)ð0àð0ð ð0ð +ò	0ó 
ð0ð 
ðØ
)ðàðð ðð ò	ó 
ðð 
ðØ
0ðàDðð ðð ò	ó 
ðð 
ðððð +ðð ðð òó 
ðð 
ð
ðð
ð ð
ð ð
ð ò
ó 
ð
ð 
ðØ
"ðàðð ðð ò	ó 
ðð 
ðØ
 ðàðð ðð ò	ó 
ðð 
ðØ
)ðàðð ðð ò	ó 
ðð 
ðØ
$ðà ðð ðð ò	ó 
ðð 
ð
 (+ñ	Ø
$ðàðð %ð	ð
 ðð òó 
ðð 
ð Ø
'ð à(ð ð ð ð ò	 ó 
ð ð 
ðØ
$ðà ðð ðð ò	ó 
ðð 
ðØ
ðàðð ðð 	ò	ó 
ðð 6:Ø!ØØ$ñq
Ø
ðq
àðq
ð 3ð	q
ð
 ðq
ð ðq
ð ðq
ð ðq
ð 	óq
ðh4Ø
#ð4Ø.1ð4Ø9<ð4àó4ð5Ø
-ð5à-ð5ðó5÷<49ñ 49÷n*ñ *÷!ñ !ô
˜ô 
ôJ�xô Jð< "Ø),×):Ñ):ØØ#ðØðàðð 'ðð ð	ð
 
ðð óô$	7�hô 	7ô3�hô 3ô<�xô ô<&�xô &ôR�hô ô&˜8ô ô&(
Ð,¨hô (
ôVÐ.°ô ôÐ-¨xô ô4S�Hô SôlÐ# Xô ô&3�oÐ'7¸ô 3ô˜(ô ô,˜/¨8ô ,ô˜¨(ô ôÐ/°ô ô.˜?¨Hô .ô:ˆÐ 0°(¸E¿N¹Nô :ô
�(˜Hô 
ô�(˜Hô ô Ð% xô ô7�Hô 7ô6˜ hô 6ô:
,˜ _°hô 
,ô˜kÐ+<¸hô ôÐ3ô ô�hô ô6EÐ1ô Eô,&
Ð(¨/¸8ô &
ôR�hô ô�O Xô ô@A˜/¨8ô Aô �ô ô�ô ô$A�Xô $AôNÐ% ¸ô ô08˜~ô 8ôÐ# _°hô ôA�O Xô Aô,
˜/¨8ô 
ð* €ñ �‹Jò %€DÙ
�%˜Ó
€CØ‡}‚}�VÕØ�|Š|˜F FÓ+ˆØ‘7“9ÒØ"‘7“9˜T‘? 3Ó'ˆDØ $ˆL˜Òð%ñ Ø˜5×6Ò6Ñ7€Gà˜˜s EÐ*ò EˆØ=Dˆ�U×0Ò0°Ñ9Ò:ñEð rI   