Ë
    ¦û’g“  ã                  ób   — d Z ddlmZ ddlmZ ddlmZ ddlmZ d„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zy)zgprivate module containing functions used for copying data
between instances based on join conditions.

é    )Úannotationsé   )Úexc)Úutil)ÚPassiveFlagc           
     ó¸  — | j                   }|j                   }|D ]Ý  \  }	}
	 |j                  |	   }| j                  |j                     j                  j                  | |t        j                  «      }	 |j                  |
   }|j                  |j                     j                  j                  ||d «       |sŒ |	j                  sŒ­|
j                  sŒº|
j                  |	«      sŒÌd|j                  d||
f<   Œß y # t        j                  $ r}t        d||	||
|«       Y d }~Œ±d }~ww xY w# t        j                  $ r}t        d||	||
|«       Y d }~Œœd }~ww xY w)NFTÚpk_cascaded)ÚdictÚ_columntopropertyÚmanagerÚkeyÚimplÚgetr   ÚPASSIVE_OFFr   ÚUnmappedColumnErrorÚ_raise_col_to_propÚsetÚprimary_keyÚ
referencesÚ
attributes)ÚsourceÚsource_mapperÚdestÚdest_mapperÚsynchronize_pairsÚ	uowcommitÚflag_cascaded_pksÚsource_dictÚ	dest_dictÚlÚrÚpropÚvalueÚerrs                 úR/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/sqlalchemy/orm/sync.pyÚpopulater&      s@  € ð —+‘+€KØ—	‘	€Ià!ò B‰ˆˆ1ð	Mà ×2Ñ2°1Ñ5ˆDØ—N‘N 4§8¡8Ñ,×1Ñ1×5Ñ5Ø˜¤[×%<Ñ%<óˆEð	Là×0Ñ0°Ñ3ˆDØL‰L˜Ÿ™Ñ"×'Ñ'×+Ñ+¨D°)¸UÀDÔIò Ø—“Ø—“Ø—‘˜Q•à=AˆI× Ñ  -°°qÐ!9Ò:ñ9Bøô ×&Ñ&ò 	MÜ˜u m°Q¸ÀQÈ×LÑLûð	Mûô ×&Ñ&ò 	LÜ˜t ]°A°{ÀAÀs×KÑKûð	Lús1   ¢AC<Á4AD,Ã<D)ÄD$Ä$D)Ä,EÄ?EÅEc           
     óT  — |D ]C  \  }}	 |j                   |   }| |j                     }	 |j                   |   }| |j                  <   ŒE y # t        j                  $ r}t	        d|||||«       Y d }~ŒJd }~ww xY w# t        j                  $ r}t	        d|||||«       Y d }~ŒŸd }~ww xY w)NFT)r   r   r   r   r   )r   r   r   r    r!   r"   r#   r$   s           r%   Úbulk_populate_inherit_keysr(   A   s¼   € à!ò N‰ˆˆ1ð	OØ ×2Ñ2°1Ñ5ˆDØ §¡Ñ)ˆEð	NØ ×2Ñ2°1Ñ5ˆDØ$)ˆK˜Ÿ™Ò!ñNøô ×&Ñ&ò 	OÜ˜u m°Q¸ÀqÈ#×NÑNûð	Oûô ×&Ñ&ò 	NÜ˜t ]°A°}ÀaÈ×MÑMûð	Nús.   ŠA
©A:Á
A7ÁA2Á2A7Á:B'ÂB"Â"B'c                óx  — |D ]…  \  }}|j                   rU|j                  | | j                  |«      t        j                  vr(t        d|› d|› dt        j                  | «      › d«      ‚	 |j                  | | j                  |d «       Œ‡ y # t        j                  $ r}t        dd ||||«       Y d }~Œ±d }~ww xY w)NzDependency rule on column 'z)' tried to blank-out primary key column 'z' on instance 'ú'T)r   Ú_get_state_attr_by_columnr
   Úorm_utilÚ	_none_setÚAssertionErrorÚ	state_strÚ_set_state_attr_by_columnr   r   r   )r   r   r   r    r!   r$   s         r%   Úclearr1   Q   sÉ   € Ø!ò C‰ˆˆ1àMŠMØ×5Ñ5°d¸D¿I¹IÀqÓIÜ×%Ñ%ñ&ô !Ø-¨a¨Sð 1à˜#˜_¬X×-?Ñ-?ÀÓ-EÐ,FÀaðIóð ð
	CØ×1Ñ1°$¸¿	¹	À1ÀdÕKñCøô ×&Ñ&ò 	CÜ˜t T¨1¨k¸1¸c×BÑBûð	Cús   Á+BÂB9ÂB4Â4B9c           
     óV  — |D ]t  \  }}	 |j                  | j                  «       |«      }|j                  | | j                  |t        j
                  ¬«      }||j                  <   |||j                  z   <   Œv y # t        j                  $ r}	t        d||d ||	«       Y d }	~	ŒLd }	~	ww xY w©N)ÚpassiveF)
Ú_get_committed_attr_by_columnÚobjr+   r
   r   r   r   r   r   r   )
r   r   r   Ú
old_prefixr   r    r!   Úoldvaluer#   r$   s
             r%   Úupdater9   c   s±   € Ø!ò ,‰ˆˆ1ð	FØ$×BÑBØ—
‘
“˜aóˆHð "×;Ñ;Ø˜Ÿ™ Q´×0GÑ0Gð <ó ˆEð
 ˆˆQU‰U‰Ø#+ˆˆZ˜!Ÿ%™%ÑÒ ñ,øô ×&Ñ&ò 	FÜ˜u m°Q¸¸aÀ×EÑEûð	Fús   ŠAA;Á;B(ÂB#Â#B(c           
     óò   — |D ]B  \  }}	 |j                  | | j                  |t        j                  ¬«      }||j                  <   ŒD y # t        j
                  $ r}t        d||d ||«       Y d }~Œ:d }~ww xY wr3   )r+   r
   r   r   r   r   r   r   )r   r   Údict_r   r    r!   r#   r$   s           r%   Úpopulate_dictr<   r   s   € Ø!ò ‰ˆˆ1ð	FØ!×;Ñ;Ø˜Ÿ™ Q´×0GÑ0Gð <ó ˆEð ˆˆae‰eŠñøô
 ×&Ñ&ò 	FÜ˜u m°Q¸¸aÀ×EÑEûð	Fús   Š-A	Á	A6ÁA1Á1A6c           
     ó  — |D ]W  \  }}	 |j                   |   }| j	                  |j
                  t        j                  «      }t        |j                  «      sŒW y y# t        j                  $ r}t        d||d||«       Y d}~Œmd}~ww xY w)zpreturn true if the source object has changes from an old to a
    new value on the given synchronize pairs

    FNT)
r   r   r   r   Úget_attribute_historyr   r   ÚPASSIVE_NO_INITIALIZEÚboolÚdeleted)	r   r   r   r   r    r!   r"   r$   Úhistorys	            r%   Úsource_modifiedrC   ~   s•   € ð
 "ò ‰ˆˆ1ð	FØ ×2Ñ2°1Ñ5ˆDð ×1Ñ1ØD—H‘Hœk×?Ñ?ó
ˆô —‘Õ Ùðð øô ×&Ñ&ò 	FÜ˜u m°Q¸¸aÀ×EÑEûð	Fús   ŠAÁBÁ1BÂBc           	     ó€   — | rt        j                  d|›d|›d«      |‚t        j                  d|›d|›d|›d«      |‚)Nz0Can't execute sync rule for destination column 'z'; mapper 'z’' does not map this column.  Try using an explicit `foreign_keys` collection which does not include this column (or use a viewonly=True relation).z+Can't execute sync rule for source column 'zx' does not map this column.  Try using an explicit `foreign_keys` collection which does not include destination column 'z$' (or use a viewonly=True relation).)r   r   )Úisdestr   Úsource_columnr   Údest_columnr$   s         r%   r   r   ‘   sT   € ñ Ü×%Ò%ò
 -8ºð	Fó
ð ð	ô ×%Ò%ò šmª[ð:ó
ð ð	ó    N)Ú__doc__Ú
__future__r   Ú r   r   r,   Úbaser   r&   r(   r1   r9   r<   rC   r   © rH   r%   ú<module>rN      s?   ðñõ
 #å Ý Ý ò(BòVNò Cò$,ò	òó&rH   