ó
    úÞ jYm  ã            	      óv  • % S SK Jr  S SKJr  S SKJr  S SKrS SKJr  S SKJr  S SKJ	r	  S SKJ
r
  S S	KJr  S S
KJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  \	(       aN  S SK J!r!  S SK J"r"  S SK J#r#  S SK$J%r%  S SK$J&r&  S SKJ'r'  S SKJ(r(  SS K)J*r*  SS!KJ+r+  SS"K,J-r-  SS#K.J/r/  SS$K.J0r0  SS%K1J2r2  \
" S&\\\\4   S'9r3\Rh                  " \55      r6              S3S( jr7S) r8\Rr                  " \Rt                  \Rv                  \Rx                  \Rz                  \Rx                  \Rz                  S*.5      r>S+\?S,'           S4S- jr@        S5S. jrA      S6S/ jrB              S7S0 jrC                S8S1 jrDS9S2 jrEg):é    )Úannotations)Ú
Collection)ÚMappingN)ÚAny)Úcast)ÚTYPE_CHECKING)ÚTypeVar)ÚUnion©Úschema)Útext)Ú
expression)ÚForeignKeyConstraint)ÚIndex)ÚUniqueConstrainté   )Ú_InspectorConvé   )Úutil)Úis_index_sig)Ú	is_uq_sig)Úops)ÚPriorityDispatchResult)Úsqla_compat)ÚReflectedForeignKeyConstraint)ÚReflectedIndex)ÚReflectedUniqueConstraint)Úquoted_name)Ú
TextClause)ÚColumn)ÚTable)ÚAutogenContext)Ú_constraint_sig)ÚDefaultImpl)ÚAlterColumnOp)ÚModifyTableOps)ÚPluginÚ_C)Úboundc           
     óî  ^ ^^^^-^.^/^0^1• T R                   nTS L m/US L m0T R                  R                  m.UbR  UR                   Vs1 sH&  n[	        U[
        R                  5      (       d  M$  UiM(     nn[        UR                  5      n	O[        5       n[        5       n	[        5       n
[        5       nSm1SnTGb  [        5       n[        5       n [        U5      R                  TUS9nSm1U Vs/ sH%  nT R                  US   STUS.5      (       d  M#  UPM'     nnU H  nUR                  S5      (       d  M  SnM      [        U5      R!                  TUS9nU Vs/ sH%  nT R                  US   STUS.5      (       d  M#  UPM'     nnT0(       a  [        5       n
OU Vs1 sH  n[#        T.UT5      iM     n
nUU.4S	 jU 5        Vs1 sH
  nUc  M  UiM     nnU(       a  [%        U
UUU	T R&                  T.5        T.R)                  U
UUU	5        U Vs1 sH  nT.R+                  U5      iM     nnU	 Vs1 sH  nT.R+                  U5      iM     nnU
 Vs1 sH  nT.R-                  U5      iM     nnU Vs1 sH  nT.R-                  U5      iM     nnUR/                  U5       Vs0 sH6  nUR0                  (       d  M  [3        [4        UR7                  T 5      5      U_M8     nnU Vs0 sH  nUR8                  U_M     nnU Vs0 sH  nUR8                  U_M     nnUR/                  U5       Vs0 sH7  n[:        R<                  " UR8                  5      (       d  M*  UR8                  U_M9     nn[        U5      R?                  U5       Vs0 sH  nUUU   UU   4_M     nnU Vs0 sH  owR@                  U_M     nnU Vs0 sH  owR@                  U_M     nnU Vs0 sHB  n[:        RB                  " URD                  T R&                  5      (       a  M5  UR@                  U_MD     nn  SU U/U0UU14S
 jjn   SU U/U0UU1U4S jjn!      SU UU4S jjn"[G        [        U5      RI                  U5      5       H€  n#UU#   n$[K        U$5      (       a  U$R@                  U;   a  M*  U#U;   aH  UU#   u  n%m-[M        U-4S jU 5       5      (       a$  U%R@                  U;  a  U!" U%5        U!" T-5        Mt  Mv  Mx  U!" U$5        M‚     [G        [        U5      R?                  U5      5       Hù  n&UU&   n'U&U;   a  UU&   u  n%m-[O        U'5      (       a  T-n$OU%n$OUU&   n$[Q        U$5      [Q        U'5      :w  a  U!" U$5        U " U'5        M[  U'RS                  U$5      n(U(RT                  (       a  U"" U$U'U(RV                  5        M“  U(RX                  (       aB  [O        U$5      (       a  SOSn)[Z        R]                  SU)U$R8                  U(RV                  5        Mæ  U(R^                  (       a  Mù   e   [G        [        U5      RI                  U5      5       H  n*UU*   n+U " U+5        M     U H  n,U,U;  d  M  U " UU,   5        M     [`        Rb                  $ s  snf s  snf ! [         a     GNN[         a     GNZf = fs  snf ! [         a     GN%f = fs  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf )NFr   TÚnameÚunique_constraint©Ú
table_nameÚschema_nameÚduplicates_indexÚindexc              3  ó<   >#   • U H  n[        TUT5      v •  M     g 7f©N)Ú_make_index)Ú.0ÚixÚ
conn_tableÚimpls     €€Úb/var/www/html/gaurav/venv/lib/python3.13/site-packages/alembic/autogenerate/compare/constraints.pyÚ	<genexpr>Ú/_compare_indexes_and_uniques.<locals>.<genexpr>“   s$   øé € ð á0�Bô ˜D " j×1Ð1Ú0ùs   ƒc                óê  >• [        U 5      (       a�  TR                  U R                  U R                  SSS 5      (       an  TR                  R                  [        R                  R                  U R                  5      5        [        R                  SU R                  U R                  5        g g [        U 5      (       a´  T(       d  g T(       d  T(       a  g TR                  U R                  U R                  SSS 5      (       an  TR                  R                  [        R                  R                  U R                  5      5        [        R                  SU R                  U R                  5        g g  e)Nr1   FzDetected added index %r on '%s'r,   z+Detected added unique constraint %r on '%s')r   Úrun_object_filtersÚconstr+   r   ÚappendÚCreateIndexOpÚ
from_indexÚlogÚinfoÚcolumn_namesr   ÚAddConstraintOpÚfrom_constraint)ÚobjÚautogen_contextÚis_create_tableÚis_drop_tableÚ
modify_opsÚsupports_unique_constraintss    €€€€€r9   Ú	obj_addedÚ/_compare_indexes_and_uniques.<locals>.obj_addedú   s  ø€ ô ˜×ÑØ×1Ñ1Ø—	‘	˜3Ÿ8™8 W¨e°T÷ñ ð —‘×%Ñ%¤c×&7Ñ&7×&BÑ&BÀ3Ç9Á9Ó&MÔNÜ—‘Ø5Ø—H‘HØ×$Ñ$õð	ô �s�^‰^Þ.ð Þ¦-àØ×1Ñ1Ø—	‘	˜3Ÿ8™8Ð%8¸%À÷ñ ð —‘×%Ñ%Ü×'Ñ'×7Ñ7¸¿	¹	ÓBôô —‘ØAØ—H‘HØ×$Ñ$õðð �5ó    c                óä  >• [        U 5      (       a¬  U R                  (       a  T(       d  g TR                  U R                  U R                  SSS 5      (       ad  TR
                  R                  [
        R                  R                  U R                  5      5        [        R                  SU R                  T5        g g [        U 5      (       a¢  T(       d  T(       a  g TR                  U R                  U R                  SSS 5      (       ad  TR
                  R                  [
        R                  R                  U R                  5      5        [        R                  SU R                  T5        g g  e)Nr1   TzDetected removed index %r on %rr,   z+Detected removed unique constraint %r on %r)r   Ú	is_uniquer=   r>   r+   r   r?   ÚDropIndexOprA   rB   rC   r   ÚDropConstraintOprF   )rG   rH   rI   rJ   rK   rL   Útnames    €€€€€€r9   Úobj_removedÚ1_compare_indexes_and_uniques.<locals>.obj_removed   s  ø€ ô ˜×ÑØ�}�}Ö%@ð à×1Ñ1Ø—	‘	˜3Ÿ8™8 W¨d°D÷ñ ð —‘×%Ñ%¤c§o¡o×&@Ñ&@ÀÇÁÓ&KÔLÜ—‘Ð:¸C¿H¹HÀeÕLð	ô
 �s�^‰^Þ¦-ð Ø×1Ñ1Ø—	‘	˜3Ÿ8™8Ð%8¸$À÷ñ ð —‘×%Ñ%Ü×(Ñ(×8Ñ8¸¿¹ÓCôô —‘ØAØ—H‘HØõðð �5rO   c                ó  >• [        U 5      (       aò  [        U5      (       d   eTR                  UR                  UR                  SSU R                  5      (       a§  [        R                  SU R                  TU5        TR                  R                  [        R                  R                  U R                  5      5        TR                  R                  [        R                  R                  UR                  5      5        g g [        U 5      (       aò  [        U5      (       d   eTR                  UR                  UR                  SSU R                  5      (       a§  [        R                  SU R                  TU5        TR                  R                  [        R                  R                  U R                  5      5        TR                  R                  [        R                  R                  UR                  5      5        g g  e)Nr1   Fz#Detected changed index %r on %r: %sr,   z/Detected changed unique constraint %r on %r: %s)r   r=   r>   r+   rB   rC   r   r?   rR   rA   r@   r   rS   rF   rE   )ÚoldÚnewÚmsgrH   rK   rT   s      €€€r9   Úobj_changedÚ1_compare_indexes_and_uniques.<locals>.obj_changedE  s  ø€ ô ˜×ÑÜ ×$Ñ$Ð$Ð$à×1Ñ1Ø—	‘	˜3Ÿ8™8 W¨e°S·Y±Y÷ñ ô —‘Ø9¸3¿8¹8ÀUÈCôð —‘×%Ñ%¤c§o¡o×&@Ñ&@ÀÇÁÓ&KÔLØ—‘×%Ñ%¤c×&7Ñ&7×&BÑ&BÀ3Ç9Á9Ó&MÕNðô �s�^‰^Ü˜S—>‘>Ð!�>à×1Ñ1Ø—	‘	˜3Ÿ8™8Ð%8¸%ÀÇÁ÷ñ ô —‘ØEØ—H‘HØØô	ð —‘×%Ñ%Ü×(Ñ(×8Ñ8¸¿¹ÓCôð —‘×%Ñ%Ü×'Ñ'×7Ñ7¸¿	¹	ÓBõðð  �5rO   c              3  óT   >#   • U H  nTR                   UR                   :g  v •  M      g 7fr3   )Úunnamed)r5   Úmeta_idxÚconn_idxs     €r9   r:   r;   z  s)   øé € ð á$8˜ð ×$Ñ$¨×(8Ñ(8Ö8Ú$8ùs   ƒ%(zunique constraintz5Cannot compare %s %r, assuming equal and skipping. %s)rG   úN_constraint_sig[sa_schema.UniqueConstraint] | _constraint_sig[sa_schema.Index])rX   ra   rY   ra   rZ   Ústr)2Ú	inspectorÚmigration_contextr8   ÚconstraintsÚ
isinstanceÚ	sa_schemar   ÚsetÚindexesÚ	frozensetr   Úget_unique_constraintsÚrun_name_filtersÚgetÚNotImplementedErrorÚ	TypeErrorÚget_indexesÚ_make_unique_constraintÚ_correct_for_uq_duplicates_uixÚdialectÚcorrect_for_autogen_constraintsÚ_create_metadata_constraint_sigÚ _create_reflected_constraint_sigÚunionÚis_namedr   rb   Úmd_name_to_sql_namer+   r   Úconstraint_name_stringÚintersectionr^   Ú_constraint_is_namedr>   ÚsortedÚ
differencer   Úallr   ÚtypeÚcompare_to_reflectedÚis_differentÚmessageÚis_skiprB   rC   Úis_equalr   ÚCONTINUE)2rH   rK   r   rT   r7   Úmetadata_tablerc   ÚuqÚmetadata_unique_constraintsÚmetadata_indexesÚconn_uniquesÚconn_indexesÚ+unique_constraints_duplicate_unique_indexesÚconn_uniques_reflectedÚconn_indexes_reflectedr6   Úuq_defr1   Úmetadata_unique_constraints_sigÚmetadata_indexes_sigÚconn_unique_constraintsÚconn_indexes_sigÚcÚmetadata_namesÚconn_uniques_by_nameÚconn_indexes_by_nameÚ
conn_namesr+   Údoubled_constraintsÚconn_uniques_by_sigÚmetadata_uniques_by_sigÚunnamed_metadata_uniquesrM   rU   r[   Úremoved_nameÚconn_objÚconn_uqÚexisting_nameÚmetadata_objÚ
comparisonÚthingÚ
added_namerG   Úuq_sigr`   r8   rI   rJ   rL   s2   `` ``                                        @@@@@r9   Ú_compare_indexes_and_uniquesr§   3   sÏ  ÿø€ ð  ×)Ñ)€IØ  DÐ(€OØ" dÐ*€MØ×,Ñ,×1Ñ1€Dð Ñ!ð %×0Ò0ó'
á0�Ü˜"œi×8Ñ8×9÷ Ù0ð 	$ð '
ô
 ˜~×5Ñ5Ó6Ñä&)£eÐ#Ü›5Ðä1:³€LÜ&/£k€Là"'Ðà27Ð/àÒä‹Kð 	ô >G»[Ðð	GÜ%3Øó&ç$Ñ$ U°6Ð$Ð:ð #ð +/Ð'ñ 1ó&á0�BØ"×3Ñ3Ø�v‘JØ'Ø#(¸Ñ@÷÷ Ù0ð #ð &ó -�Ø—6‘6Ð,×-Ó-ØBFÒ?ñ -ð	Ü%3°IÓ%>×%JÑ%JØ˜fð &Kð &Ð"ñ 1ó&á0�BØ"×3Ñ3Ø�v‘JØØ#(¸Ñ@÷÷ Ù0ð #ð &ö ä›5‰Lñ 5óá4�Fô (¨¨f°jÖAÙ4ð ð õá0ôó
ñ�ð ÷ ñð 	ð 
ö 3Ü&ØØØ'ØØ×#Ñ#Øô	
ð 	×(Ñ(ØØØ#Øô	ñ .ó'á-ˆBð 	×,Ñ,¨RÖ0Ù-ð $ð 'ñ <LóÙ;K°Rˆ×,Ñ,¨RÖ0Ñ;Kð ð ñ
 =IóÙ<H°bˆ×-Ñ-¨bÖ1¹Lð ð ñ
 =IóÙ<H°bˆ×-Ñ-¨bÖ1¹Lð ð ð 1×6Ñ6Ð7KÔLóáLˆAØ�:�:ó 	=ŒŒS�!×'Ñ'¨Ó8Ó9¸1Ò<ÙLð ð ñ 0GÓGÑ/F¨!˜AŸF™F AšIÑ/FÐÐGÙ/?Ó@Ñ/?¨!˜AŸF™F AšIÑ/?ÐÐ@ð )×.Ñ.Ð/?Ô@óá@ˆAÜ×-Ò-¨a¯f©f×5ó 	ˆ�‰�Š	Ù@ð ð ô Ð,Ó-×:Ñ:Ø ô
óñ
ˆDð 	Ð# DÑ)Ð+?ÀÑ+EÐFÒFñ
ð ð ñ 5LÓLÑ4K¨bŸ:™: rš>Ñ4KÐÐLá!@óÙ!@˜2�
‰
�BŠÑ!@ð ð ñ
 2ó á1ˆBÜ×/Ò/Ø�H‰H�o×-Ñ-÷
ó 	ˆ�
‰
�BŠÙ1ð ð  ð $ð/÷$ó $ðL#ð/÷#ô #ðJ)ð/ð)ð/ð)ð ÷)ñ )ôV œs :›×9Ñ9¸.ÓIÖJˆØ˜lÑ+ˆä�h×ÑØ× Ñ Ð$<Ó<áØÐ0Ó0Ø 3°LÑ AÑˆG�Xäô á$8ó÷ ñ ð —O‘OÐ+BÓBá˜GÔ$Ù˜HÖ%ñ Cñ	ñ ˜Ö!ñ' Kô*  ¤ NÓ 3× @Ñ @ÀÓ LÖMˆØ% mÑ4ˆàÐ/Ó/Ø 3°MÑ BÑˆG�XÜ˜L×)Ñ)Ø#‘à"‘à! -Ñ0ˆHä�‹>œT ,Ó/Ó/Ù˜Ô!Ù�lÖ#ð &×:Ñ:¸8ÓDˆJà×&×&á˜H l°J×4FÑ4FÖGØ×#×#ô  ,¨H×5Ñ5‘GÐ;Nð ô —‘ØKØØ—M‘MØ×&Ñ&ö	ð "×*×*Ñ*Ð*Ð*ñS NôV œS Ó0×;Ñ;¸JÓGÖHˆ
Ø˜ZÑ(ˆÙ�#Žñ Ió +ˆØÐ,Õ,ÙÐ.¨vÑ6Ö7ñ +ô "×*Ñ*Ð*ùòk'
ùòL&øô #ó 	ÚÜó 	ò ð		üò2&øô #ó 	Úð	üò&ùò

ùòH'ùò
ùòùòùò
ùò HùÚ@ùòùòùò Mùòùò sº   Á"Y4Á+Y4ÃY> Ã-!Y9ÄY9Ä>Z  Å!ZÆ ZÆZ1ÇZ6ÇZ6ÈZ;È0[ É[É0[
Ê[Ê7$[Ë![Ë=[Ì(([Í[Î[#Î[(Î8[-Ï3[2Ð
[2Ù>
ZÚ	ZÚZÚ 
Z.Ú-Z.c                ó  • U Vs/ sH  n[         R                  " Xd5      U4PM     nnU VVs1 sH  u  p†Uc  M
  UiM     n	nnU VVs1 sH%  u  p†Ub  M
  UR                  U5      R                  iM'     n
nnU Vs1 sH,  nUR                  (       d  M  [         R                  " Xd5      iM.     nnU Vs0 sH"  ofR                  (       d  M  UR
                  U_M$     nnU  Vs0 sH&  nUR                  S   (       d  M  UR
                  U_M(     nnU HZ  nXé;  a8  UR                  XÞ   5      R                  U
;  a  U R                  XÞ   5        M>  M@  Xë;  d  MG  UR                  XÎ   5        M\     g s  snf s  snnf s  snnf s  snf s  snf s  snf )Nr0   )	r   Ú_get_constraint_final_nameru   r^   Úuniquer+   rC   rv   Údiscard)r“   rŒ   r‰   rŠ   rs   r8   ÚconsÚmetadata_cons_namesr+   Úmetadata_uq_namesÚunnamed_metadata_uqsÚmetadata_ix_namesÚconn_ix_namesÚuqs_dupe_indexesÚoverlaps                  r9   rr   rr   »  s¨  € ñ* 0óá/ˆDô 
×	/Ò	/°Ó	>ÀÓEÙ/ð ð ñ  3ôÙ2‘�°d�Ñ2ð ñ ñ .ôá-‰JˆDØó 	;ˆ×,Ñ,¨TÓ2×:Ô:Ù-ð ñ ñ %óá$ˆDØ�;�;ó 	>Œ×.Ò.¨tÖ=Ù$ð ð ñ 2>ÓM±¨ÇÅ“_�T—Y‘Y ’_±€MÐMñ ,óá+ˆDØ�9‰9Ð'Õ(ó 	ˆ�	‰	�4ŠÙ+ð ð ó $ˆØÓ+à×5Ñ5Ø$Ñ-óç‘'Ø+ó,ð
 (×/Ñ/Ð0@Ñ0IÖJñ,ð Õ-Ø× Ñ  Ñ!7Ö8ò $ùò?ùó
ùóùòùò Nùòs?   …!E.­E3¹E3ÁE9ÁE9Á9E?ÂE?Â1FÃFÃF	Ã:F	)ÚascÚdescÚnulls_firstÚ
nulls_lastÚ
nullsfirstÚ	nullslastzMapping[str, Any]Ú_IndexColumnSortingOpsc                óÖ  • / nUR                  S5      n[        US   5       Hx  u  pVUc  SU;   d   eUS   U   n[        U5      nOUnUR                  U   nU(       a+  Xt;   a&  XG    H  n	U	[        ;   d  M  [        U	   " U5      nM      UR                  U5        Mz     [        R                  " US   /UQ7US   US.U R                  US5      D6n
SU;   a  US   U
R                  S'   U
$ )	NÚcolumn_sortingrD   Úexpressionsr+   rª   )rª   Ú_tabler1   Úduplicates_constraint)
rm   Ú	enumerater   r•   rº   r?   rg   r   Ú adjust_reflected_dialect_optionsrC   )r8   Úparamsr7   ÚexprsÚsortingÚnumÚcol_namer+   ÚitemÚoperatorr6   s              r9   r4   r4     s  € ð -/€EØ�j‰jÐ)Ó*€Gä" 6¨.Ñ#9Ö:‰ˆàÑØ  FÓ*Ð*Ð*Ø˜-Ñ(¨Ñ-ˆDÜ˜“:‰DàˆDØ—<‘< Ñ)ˆDÞ�t“Ø#œM�ØÔ5Õ5Ü1°(Ò;¸DÓA’Dñ *ð 	�‰�TÖñ ;ô 
�ŠØˆv‰ð
à	ñ
ð �hÑØñ	
ð
 ×
/Ñ
/°¸Ó
@ñ
€Bð  &Ó(Ø+1Ð2IÑ+Jˆ�‰Ð'Ñ(Ø€IrO   c                óÔ   • [         R                  " US    Vs/ sH  o2R                  U   PM     snSUS   0U R                  US5      D6nSU;   a  US   UR                  S'   U$ s  snf )NrD   r+   r,   r0   )rg   r   r•   rÁ   rC   )r8   rÂ   r7   Úcnamerˆ   s        r9   rq   rq   &  s‚   € ô 
×	#Ò	#Ø+1°.Ò+AÓ	BÑ+A %�,‰,�uÔ
Ñ+AÑ	Bð
à�F‰^ð
ð ×
/Ñ
/°Ð8KÓ
Lñ
€Bð
 ˜VÓ#Ø&,Ð-?Ñ&@ˆ�‰Ð"Ñ#à€Iùò 
Cs   ˜A%c                ó¨  • U S   nU S   (       a  U S   < SU< 3nU R                  S0 5      n[        R                  " U S    Vs/ sH  oAR                  U   PM     snU S    Vs/ sH  oR< SU< 3PM     snUR                  S5      UR                  S5      UR                  S	5      UR                  S
5      U S   S9nU S   nU S   n[        R
                  " X‡5      n	X‘R                  ;  a‹  [        R                  " UUR                  /[        U S   U S   5       V
Vs/ sH2  u  p«[        R                  " X±R                  U
   R                  5      PM4     snn
Q7Ub  UO[        R                  SS0S.6  O¸UR                  R                  U	   R                  R                  S5      (       a�  UR                  R                  U	   n[        U S   U S   5       HR  u  p«X¼R                  ;  d  M  UR                  [        R                  " X±R                  U
   R                  5      5        MT     UR                  U5        U$ s  snf s  snf s  snn
f )NÚreferred_tableÚreferred_schemaÚ.ÚoptionsÚconstrained_columnsÚreferred_columnsÚonupdateÚondeleteÚ
deferrableÚ	initiallyr+   )rÒ   rÓ   rÔ   rÕ   r+   Úalembic_placeholderT)r   rC   )rm   rg   r   r•   r   Ú_get_table_keyÚmetadatar!   Úzipr    r€   ÚBLANK_SCHEMAÚtablesrC   Úappend_columnÚappend_constraint)rÂ   r7   rT   rÏ   rÊ   Únr>   rÍ   rÌ   Úremote_table_keyÚlocalÚremoteÚplaceholder_tables                r9   Ú_make_foreign_keyrã   4  sW  € ð Ð#Ñ$€EØÐ× Ø!Ð"3Ô4²eÐ<ˆà�j‰j˜ BÓ'€Gä×*Ò*Ø*0Ð1FÒ*GÓHÑ*G �‰�eÔ	Ñ*GÑHØ'-Ð.@Ò'AÓBÑ'A !’Eš1Ó	Ñ'AÑBØ—‘˜ZÓ(Ø—‘˜ZÓ(Ø—;‘;˜|Ó,Ø—+‘+˜kÓ*Ø�F‰^ñ€Eð Ð.Ñ/€OØÐ,Ñ-€Nä"×1Ò1ØóÐð ×2Ñ2Ó2ä�ŠØØ×Ñð	
ô &)ØÐ0Ñ1°6Ð:LÑ3Mô&ôñ&‘M�Eô × Ò  ¯©°eÑ)<×)AÑ)AÖBñ&òñ	
ð
 #Ñ.ñ  ä×+Ñ+ð (¨Ð.ô	
ð  
×	Ñ	×	#Ñ	#Ð$4Ñ	5×	:Ñ	:×	>Ñ	>Ø÷
ñ 
ð '×/Ñ/×6Ñ6Ð7GÑHÐÜ ØÐ(Ñ)¨6Ð2DÑ+Eö
‰MˆEð ×0Ñ0Õ0Ø!×/Ñ/Ü×$Ò$ V¯\©\¸%Ñ-@×-EÑ-EÓFöñ	
ð × Ñ  Ô'Ø€Lùòa 	IùÚBùó0s   ÁIÁ%I	
Ä 8Ic           
     ó�  ^ ^^
• Ub  Uc  [         R                  $ T R                  nUR                   Vs1 sH&  n[	        U[
        R                  5      (       d  M$  UiM(     nn[        U5      R                  X2S9 Vs/ sH$  nT R                  US   SX2S.5      (       d  M"  UPM&     n	nU	 V
s1 sH  n
[        X¤5      iM     nn
T R                  R                  nT R                  R                  R                  X¸5        U Vs1 sH  o|R                  U5      iM     nnU Vs1 sH  o|R                  U5      iM     nnU	(       a@  SU	S   ;   a7  U Vs0 sH  oÿR                   U_M     nnU Vs0 sH  oÿR                   U_M     nnO6U Vs0 sH  oÿR"                  U_M     nnU Vs0 sH  oÿR"                  U_M     nnU Vs0 sH  oÿR$                  c  M  UR$                  U_M      nnU Vs0 sH  oÿR$                  c  M  UR$                  U_M      nnU U
U4S jnU U4S jn['        U5      R)                  U5       HU  nUU   m
UU;  d  M  T
R$                  (       a)  T
R$                  U;   a  UT
R$                     R*                  OS nU" T
U5        MW     ['        U5      R)                  U5       HU  nUU   m
UU;  d  M  T
R$                  (       a)  T
R$                  U;   a  UT
R$                     R*                  OS nU" T
U5        MW     [         R                  $ s  snf s  snf s  sn
f s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf )	Nr   r+   Úforeign_key_constraintr-   rÏ   r   c                óÒ  >• TR                  U R                  U R                  SSU5      (       a¸  TR                  R	                  [        R
                  R                  TR                  5      5        [        R                  SSR                  U R                  5      SR                  U R                  5      U R                  (       a  SU R                  -  OSU R                  5        g g )Nrå   Fz1Detected added foreign key (%s)(%s) on table %s%sú, ú%s.Ú )r=   r>   r+   r   r?   ÚCreateForeignKeyOprF   rB   rC   ÚjoinÚsource_columnsÚtarget_columnsÚsource_schemaÚsource_table)rG   Ú
compare_torH   r>   Úmodify_table_opss     €€€r9   Ú_add_fkÚ&_compare_foreign_keys.<locals>._add_fk¹  s³   ø€ Ø×-Ñ-Ø�I‰I�s—x‘xÐ!9¸5À*÷
ñ 
ð × Ñ ×'Ñ'Ü×&Ñ&×6Ñ6°u·{±{ÓCôô �H‰HØCØ—	‘	˜#×,Ñ,Ó-Ø—	‘	˜#×,Ñ,Ó-Ø-0×->×->�˜×)Ñ)Ò)ÀBØ× Ñ õð
rO   c                óÒ  >• TR                  U R                  U R                  SSU5      (       a¸  TR                  R	                  [        R
                  R                  U R                  5      5        [        R                  SSR                  U R                  5      SR                  U R                  5      U R                  (       a  SU R                  -  OSU R                  5        g g )Nrå   Tz3Detected removed foreign key (%s)(%s) on table %s%srç   rè   ré   )r=   r>   r+   r   r?   rS   rF   rB   rC   rë   rì   rí   rî   rï   )rG   rð   rH   rñ   s     €€r9   Ú
_remove_fkÚ)_compare_foreign_keys.<locals>._remove_fkÉ  s³   ø€ Ø×-Ñ-Ø�I‰I�s—x‘xÐ!9¸4À÷
ñ 
ð × Ñ ×'Ñ'Ü×$Ñ$×4Ñ4°S·Y±YÓ?ôô �H‰HØEØ—	‘	˜#×,Ñ,Ó-Ø—	‘	˜#×,Ñ,Ó-Ø-0×->×->�˜×)Ñ)Ò)ÀBØ× Ñ õð
rO   )r   r†   rc   re   rf   rg   r   r   Úget_foreign_keysrl   rã   rd   r8   Úcorrect_for_autogen_foreignkeysru   rv   r^   Úunnamed_no_optionsr+   rh   r~   r>   )rH   rñ   r   rT   r7   r‡   rc   ÚfkÚmetadata_fksÚconn_fks_listr>   Úconn_fksr8   Úmetadata_fks_sigÚconn_fks_sigr•   Úconn_fks_by_sigÚmetadata_fks_by_sigÚmetadata_fks_by_nameÚconn_fks_by_namerò   rõ   Úremoved_sigrð   Ú	added_sigs   ``        `              r9   Ú_compare_foreign_keysr  q  sr  ú€ ð Ñ˜^Ñ3Ü%×.Ñ.Ð.à×)Ñ)€Ið
 !×,Ò,óá,ˆBÜ�bœ)×8Ñ8×9÷ 	Ù,ð ð ô ! Ó+×<Ñ<Øð =ñ 
ó
ñ
ˆBð ×+Ñ+Øˆv‰JØ$Ø Ñ8÷
÷	 	ñ
ð ð 
ñ ;HóÙ:G°Ô˜%Ö,¹-ð ð ð ×,Ñ,×1Ñ1€Dð ×%Ñ%×*Ñ*×JÑJØôñ
 <HóÙ;G°R×,Ñ,¨RÖ0¹<ð ð ñ
 =EóÙ<D°b×-Ñ-¨bÖ1¹Hð ð ö ˜ m°AÑ&6Ó6Ù1=Ó>±¨AŸ9™9 aš<±ˆÐ>Ù5EÓFÑ5E°Ÿy™y¨!š|Ñ5EÐÐFÐñ =IÓI¹L°q×/Ñ/°Ò2¹LˆÐIá-=ó
Ù-=¨× Ñ  !Ò#Ñ-=ð 	ð 
ñ
 ,óÙ+�a¯v©v‹	ˆ�‰�Š	Ñ+ð ð ñ ,8ÓN©< a¿6¹6›	˜Ÿ™ š	©<ÐÐN÷ö ô$ ˜?Ó+×6Ñ6Ð7JÖKˆØ Ñ,ˆØÐ1Õ1ð —:—: %§*¡*Ð0DÓ"Dð % U§Z¡ZÑ0×6Ò6àð ñ
 �u˜jÖ)ñ Lô Ð,Ó-×8Ñ8¸ÖIˆ	Ø# IÑ.ˆØ˜OÕ+ð —:—: %§*¡*Ð0@Ó"@ð ! §¡Ñ,×2Ò2àð ñ
 �E˜:Ö&ñ Jô "×*Ñ*Ð*ùò[ùò
ùòùòùòùò ?ùÚFùò Jùò
ùòùò OsY   ´"LÁLÁ< LÂ LÂ,LÄL Ä L%ÅL*Å*L/ÆL4Æ!L9Æ<L>ÇL>Ç&MÇ9Mc                ó  • UR                   nUR                   nX�l        X‡LaÙ  [        R                  " UR                  UR                  5      (       a  [        R
                  " U5      (       d0  [        R                  " UR                  UR                  5      (       a'  [        R                  SUU5        [        R                  $ Xql	        [        R                  SU(       a  SOSUU5        [        R                  $ [        R                  $ )Nz3Ignoring nullable change on identity column '%s.%s'zDetected %s on column '%s.%s'ÚNULLzNOT NULL)ÚnullableÚexisting_nullabler   Ú_server_default_is_computedÚserver_defaultÚ_nullability_might_be_unsetÚ_server_default_is_identityrB   rC   Úmodify_nullabler   ÚSTOPr†   )	rH   Úalter_column_opr   rT   rÊ   Úconn_colÚmetadata_colÚmetadata_col_nullableÚconn_col_nullables	            r9   Ú_compare_nullabler  ò  sç   € ð )×1Ñ1ÐØ ×)Ñ)ÐØ(9Ô%àÒ5ä×3Ò3Ø×+Ñ+¨X×-DÑ-D÷ñ ô ×7Ò7¸×EÑEä×7Ò7Ø ×/Ñ/°×1HÑ1H÷ñ ô
 �H‰HØEØØôô  "×*Ñ*Ð*ð /DÔ+Ü�H‰HØ/Þ/‘°ZØØô	ô *×.Ñ.Ð.ä!×*Ñ*Ð*rO   c                óŽ   • U R                  [        SS5        U R                  [        SS5        U R                  [        SS5        g )NÚtableri   ÚforeignkeysÚcolumnr	  )Úadd_autogenerate_comparatorr§   r  r  )Úplugins    r9   Úsetupr    sK   € Ø
×&Ñ&Ü$ØØôð
 ×&Ñ&ÜØØôð
 ×&Ñ&ÜØØõrO   )rH   r"   rK   r&   r   ú
str | NonerT   úquoted_name | strr7   úTable | Noner‡   r   Úreturnr   )r8   r$   rÂ   r   r7   r!   r!  zIndex | None)r8   r$   rÂ   r   r7   r!   r!  r   )rÂ   r   r7   r!   r!  r   )rH   r"   rñ   r&   r   r  rT   r  r7   r!   r‡   r!   r!  r   )rH   r"   r  r%   r   r  rT   r  rÊ   r  r  úColumn[Any]r  r"  r!  r   )r  r'   r!  ÚNone)FÚ
__future__r   Úcollections.abcr   r   ÚloggingÚtypingr   r   r   r	   r
   Ú
sqlalchemyr   rg   r   Úsqlalchemy.sqlr   Úsqlalchemy.sql.schemar   r   r   r   r   ré   Úddl._autogenr   r   Ú
operationsr   r   r   Úsqlalchemy.engine.interfacesr   r   r   Úsqlalchemy.sql.elementsr   r   r    r!   Úautogenerate.apir"   r#   Úddl.implr$   Úoperations.opsr%   r&   Úruntime.pluginsr'   r(   Ú	getLoggerÚ__name__rB   r§   rr   Úimmutabledictr´   rµ   r¸   r¹   rº   Ú__annotations__r4   rq   rã   r  r  r  © rO   r9   Ú<module>r8     sW  ðö #å &Ý #Û Ý Ý Ý  Ý Ý å *Ý Ý %Ý 6Ý 'Ý 2å  Ý Ý (Ý %Ý Ý *Ý æÝJÝ;ÝFÝ3Ý2Ý,Ý+å2Ý/Ý'Ý/Ý0Ý)áˆT˜Ð/Ð1EÀuÐLÑMÑN€ð ×Ò˜Ó!€ðE+Ø#ðE+àðE+ð ðE+ð ð	E+ð
 ðE+ð !ðE+ð ôE+òP<9ð~ -1×,>Ò,>à�~‰~Ø—‘Ø!×,Ñ,Ø ×*Ñ*Ø ×+Ñ+Ø×)Ñ)ñó	-Ð Ð)ó 	ðØ
ðØ-ðØ;@ðàôð@Ø
ðØ8ðØFKðàôð:Ø)ð:Ø7<ð:àô:ðz~+Ø#ð~+à$ð~+ð ð~+ð ð	~+ð
 ð~+ð ð~+ð ô~+ðB)+Ø#ð)+à"ð)+ð ð)+ð ð	)+ð
 ð)+ð ð)+ð ð)+ð ô)+õXrO   