+
    ˜h©jÝ&  ã                  ó¬  € R t ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RIH
t
 ^ R	IHt ^ R
IHt ^ RIHt ^ RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIH t  ^RIHt ^RI!H"t" ]'       d1   ^RIH#t# ^RI$H%t% ^RIH&t& ^RIH't' ^RI(H)t) ^RIH*t* ^RI+H,t, ^R I-H.t. ]! R!]R"7      t/ ! R# R$]]/,          4      t0 ! R% R&]4      t1]Pd                  Pg                  R'R(7       ! R) R*] 4      4       t4 ! R+ R,]]/,          4      t5 ! R- R.]5]/,          ]]/,          4      t6R/ R0 lt7R1# )2zâDynamic collection API.

Dynamic collections act like Query() objects for read operations and support
basic add/delete mutation.

.. legacy:: the "dynamic" loader is a legacy feature, superseded by the
 "write_only" loader.


)Úannotations)ÚAny)ÚIterable)ÚIterator)ÚList)ÚOptional)Úoverload)ÚTuple)ÚType)ÚTYPE_CHECKING)ÚTypeVar)ÚUnion)Ú
attributes)Úexc)Úrelationships)Úutil)ÚPassiveFlag)ÚQuery)Úobject_session)ÚAbstractCollectionWriter)ÚWriteOnlyAttributeImpl)ÚWriteOnlyHistory)ÚWriteOnlyLoader)Úresult)ÚQueryableAttribute)ÚMapper)Ú_RelationshipOrderByArg)ÚSession)ÚInstanceState)ÚAliasedClass)Ú	_Dispatch)ÚColumnElementÚ_T)Úboundc                  ó&   € ] tR t^=tRR R lltRtR# )ÚDynamicCollectionHistoryNc          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )é   ÚattrÚDynamicAttributeImplÚstateúInstanceState[_T]Úpassiver   Úapply_toz&Optional[DynamicCollectionHistory[_T]]ÚreturnÚNone© )Úformats   "ÚQ/var/www/html/bestweb/venv/lib/python3.14/site-packages/sqlalchemy/orm/dynamic.pyÚ__annotate__Ú%DynamicCollectionHistory.__annotate__>   s<   € ÷ /ñ /à"ð/ð !ð/ð ð	/ð
 9ð/ð 
ñ/ó    c                	ó€  € V'       da   \        W4      P                  R 4      p\        P                  ! V4      V n        VP
                  V n        VP                  V n        RV n        R# \        P                  ! 4       V n        \        P                  ! 4       V n        \        P                  ! 4       V n        R V n        R# )FTN)ÚAppenderQueryÚ	autoflushr   ÚOrderedIdentitySetÚunchanged_itemsÚadded_itemsÚdeleted_itemsÚ_reconcile_collection)Úselfr(   r*   r,   r-   Úcolls   &&&&& r2   Ú__init__Ú!DynamicCollectionHistory.__init__>   sŽ   € ÷ Ü  Ó-×7Ñ7¸Ó>ˆDÜ#'×#:Ò#:¸4Ó#@ˆDÔ Ø'×3Ñ3ˆDÔØ!)×!7Ñ!7ˆDÔØ)-ˆDÖ&ä!%×!8Ò!8Ó!:ˆDÔÜ#×6Ò6Ó8ˆDÔÜ#'×#:Ò#:Ó#<ˆDÔ Ø).ˆDÖ&r5   )r=   r;   r<   r:   ©N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r@   Ú__static_attributes__r0   r5   r2   r%   r%   =   s   † ÷/ó /r5   r%   c                  óH   € ] tR t^Rt$ Rt]],          tR]R&   RR R llt	Rt
R# )	r)   TzType[AppenderMixin[Any]]Úquery_classNc               ó8   € V ^8„  d   QhRRRRRRRRR	R
RRRRRR/# )r'   Úclass_z#Union[Type[Any], AliasedClass[Any]]ÚkeyÚstrÚdispatchz"_Dispatch[QueryableAttribute[Any]]Útarget_mapperz
Mapper[_T]Úorder_byr   rI   z!Optional[Type[AppenderMixin[_T]]]Úkwr   r.   r/   r0   )r1   s   "r2   r3   Ú!DynamicAttributeImpl.__annotate__W   sZ   € ÷ =ñ =à3ð=ð ð=ð 5ð	=ð
 "ð=ð *ð=ð 7ð=ð ð=ð 
ñ=r5   c                	ó  € \         P                  P                  ! WVR V3/ VB  W@n        V'       d   \	        V4      V n        V'       g   \        V n        R # \        VP                  4       9   d	   W`n        R # \        V4      V n        R # rB   )r   ÚAttributeImplr@   rO   ÚtuplerP   r7   rI   ÚAppenderMixinÚmroÚmixin_user_query)r>   rK   rL   rN   rO   rP   rI   rQ   s   &&&&&&&,r2   r@   ÚDynamicAttributeImpl.__init__W   sl   € ô 	× Ñ ×)Ò)Ø˜#˜t Xñ	
Ø13ò	
ð +ÔßÜ! (›OˆDŒMßÜ,ˆDÖÜ˜kŸo™oÓ/Ô/Ø*Öä/°Ó<ˆDÖr5   )rP   rI   rO   rB   )rC   rD   rE   rF   Ú_supports_dynamic_iterationr%   r   Úcollection_history_clsÚ__annotations__r@   rG   r0   r5   r2   r)   r)   R   s#   ‡ Ø"&ÐØ5°cÕ:ÐØ)Ó)÷=ó =r5   r)   Údynamic)Úlazyc                  ó   € ] tR t^ot]tRtR# )Ú
DynaLoaderr0   N)rC   rD   rE   rF   r)   Ú
impl_classrG   r0   r5   r2   r`   r`   o   s   † à%„Jr5   r`   c                  óD  a € ] tR t^tt$ RtRtR]R&   R]R&   R V 3R llt]R	 R
 l4       t	]	P                  R R l4       t	R R lt]'       d   R R lt]R R l4       t]R R l4       tR R ltR R ltR&R R lltR R ltR R ltR R  ltR! R" ltR# R$ ltR%tV ;t# )'rV   zLA mixin that expects to be mixing in a Query class with
AbstractAppender.


NzOptional[Type[Query[_T]]]rI   zTuple[ColumnElement[Any], ...]Ú_order_by_clausesc               ó$   € V ^8„  d   QhRRRRRR/# )r'   r(   r)   r*   r+   r.   r/   r0   )r1   s   "r2   r3   ÚAppenderMixin.__annotate__~   s$   € ÷ &ñ &Ø(ð&Ø1Bð&à	ñ&r5   c                	ój   <€ \         P                  ! V VP                  R 4       \        SV `  W4       R # rB   )r   r@   rO   Úsuper)r>   r(   r*   Ú	__class__s   &&&€r2   r@   ÚAppenderMixin.__init__~   s/   ø€ ô 	�ŠØØ×ÑØô	
ô
 	‰Ñ˜Ö%r5   c               ó   € V ^8„  d   QhRR/# )r'   r.   úOptional[Session]r0   )r1   s   "r2   r3   re   ‰   s   € ÷ ñ Ð*ñ r5   c                	óî   € \        V P                  4      pVe4   VP                  '       d"   V P                  V9   d   VP                  4        \        P
                  ! V P                  4      '       g   R # V# rB   )r   Úinstancer8   ÚflushÚorm_utilÚhas_identity©r>   Úsesss   & r2   ÚsessionÚAppenderMixin.sessionˆ   sO   € ä˜dŸm™mÓ,ˆØÒ §§ °4·=±=ÀDÔ3HØ�J‰JŒLÜ×$Ò$ T§]¡]×3Ò3ÙàˆKr5   c               ó    € V ^8„  d   QhRRRR/# )r'   rs   r   r.   r/   r0   )r1   s   "r2   r3   re   “   s   € ÷ ñ ˜wð ¨4ñ r5   c                	ó   € Wn         R # rB   ©rr   )r>   rs   s   &&r2   rs   rt   ’   s   € àŽ	r5   c               ó   € V ^8„  d   QhRR/# )r'   r.   z1Union[result.ScalarResult[_T], result.Result[_T]]r0   )r1   s   "r2   r3   re   –   s   € ÷ 0ñ 0ÐHñ 0r5   c           
     	óŽ  € V P                   pVEf   \        P                  ! V P                  4      pVP                  '       d2   \
        P                  ! R\        P                  ! V4      ,          4       \        P                  ! \        P                  ! V P                  P                  P                  .4      \        V P                  P!                  \        P                  ! V P                  4      \"        P$                  4      P&                  4      RR7      P)                  4       # V P+                  V4      P-                  4       # )Nz•Instance %s is detached, dynamic relationship cannot return a correct result.   This warning will become a DetachedInstanceError in a future release.T)Ú_source_supports_scalars)rs   r   Úinstance_staterm   Údetachedr   Úwarnro   Ú	state_strr   ÚIteratorResultÚSimpleResultMetaDatar(   rK   rC   ÚiterÚ_get_collection_historyr   ÚPASSIVE_NO_INITIALIZEr;   ÚscalarsÚ	_generateÚ_iter)r>   rr   r*   s   &  r2   r†   ÚAppenderMixin._iter–   sî   € Ø�|‰|ˆØ‹<Ü×-Ò-¨d¯m©mÓ<ˆEØ�~�~ˆ~Ü—	’	ðCô  ×)Ò)¨%Ó0õ2ôô ×(Ò(Ü×+Ò+¨T¯Y©Y×-=Ñ-=×-FÑ-FÐ,GÓHÜØ—I‘I×5Ñ5Ü"×1Ò1°$·-±-Ó@Ü#×9Ñ9ó÷ "‘kó	ð *.ô	÷ ‰g‹ið	ð —>‘> $Ó'×-Ñ-Ó/Ð/r5   c               ó   € V ^8„  d   QhRR/# )r'   r.   zIterator[_T]r0   )r1   s   "r2   r3   re   ±   s   € ×/Ñ/˜lÑ/r5   c                	ó   € R # rB   r0   )r>   s   &r2   Ú__iter__ÚAppenderMixin.__iter__±   s   € ©Cr5   c               ó    € V ^8„  d   QhRRRR/# )r'   ÚindexÚintr.   r"   r0   )r1   s   "r2   r3   re   ´   s   € ×0Ñ0 Ð0¨Ñ0r5   c                	ó   € R # rB   r0   ©r>   r�   s   &&r2   Ú__getitem__ÚAppenderMixin.__getitem__³   s   € Ù-0r5   c               ó    € V ^8„  d   QhRRRR/# )r'   r�   Úslicer.   zList[_T]r0   )r1   s   "r2   r3   re   ·   s   € ×8Ñ8 Ð8¨8Ñ8r5   c                	ó   € R # rB   r0   r�   s   &&r2   r‘   r’   ¶   s   € Ù58r5   c               ó    € V ^8„  d   QhRRRR/# )r'   r�   zUnion[int, slice]r.   zUnion[_T, List[_T]]r0   )r1   s   "r2   r3   re   ¹   s   € ÷ ;ñ ;Ð!2ð ;Ð7Jñ ;r5   c                	ó  € V P                   pVfX   V P                  P                  \        P                  ! V P
                  4      \        P                  4      P                  V4      # V P                  V4      P                  V4      # rB   )rs   r(   r‚   r   r{   rm   r   rƒ   Úindexedr…   r‘   )r>   r�   rr   s   && r2   r‘   r’   ¹   si   € Ø�|‰|ˆØŠ<Ø—9‘9×4Ñ4Ü×)Ò)¨$¯-©-Ó8Ü×1Ñ1ó÷ ‰g�e‹nðð
 —>‘> $Ó'×3Ñ3°EÓ:Ð:r5   c               ó   € V ^8„  d   QhRR/# )r'   r.   rŽ   r0   )r1   s   "r2   r3   re   Ã   s   € ÷ 
0ñ 
0�sñ 
0r5   c                	ó  € V P                   pVf\   \        V P                  P                  \        P
                  ! V P                  4      \        P                  4      P                  4      # V P                  V4      P                  4       # rB   )rs   Úlenr(   r‚   r   r{   rm   r   rƒ   r;   r…   Úcountrq   s   & r2   rœ   ÚAppenderMixin.countÃ   sk   € Ø�|‰|ˆØŠ<ÜØ—	‘	×1Ñ1Ü×-Ò-¨d¯m©mÓ<Ü×5Ñ5ó÷ ‘+ó	ð ð —>‘> $Ó'×-Ñ-Ó/Ð/r5   c               ó    € V ^8„  d   QhRRRR/# )r'   rr   rk   r.   z	Query[_T]r0   )r1   s   "r2   r3   re   Ï   s   € ÷ ñ àðð 
ñr5   c                	óö  € V P                   pVfW   \        V4      pVfH   \        P                  ! R\        P
                  ! V4      : RV P                  P                  : R24      hV P                  '       d)   V P                  V P                  P                  VR7      pM%VP                  V P                  P                  4      pV P                  Vn        V P                  Vn        V P                  Vn        V# )NzParent instance zh is not bound to a Session, and no contextual session is established; lazy load operation of attribute 'z' cannot proceed)rs   )rm   r   Úorm_excÚDetachedInstanceErrorro   Úinstance_strr(   rL   rI   rO   ÚqueryÚ_where_criteriaÚ	_from_objrc   )r>   rr   rm   r£   s   &&  r2   r…   ÚAppenderMixin._generateÏ   sÅ   € ð —=‘=ˆØŠ<Ü! (Ó+ˆDØŠ|Ü×3Ó3ô  ×,Ò,¨XÖ6¸¿	¹	¿¼ðGóð ð ××ÐØ×$Ñ$ T§Y¡Y×%<Ñ%<ÀdÐ$ÓK‰Eà—J‘J˜tŸy™y×6Ñ6Ó7ˆEà $× 4Ñ 4ˆÔØŸ.™.ˆŒØ"&×"8Ñ"8ˆÔàˆr5   c               ó    € V ^8„  d   QhRRRR/# ©r'   ÚiteratorzIterable[_T]r.   r/   r0   )r1   s   "r2   r3   re   ì   s   € ÷ %ñ % ð %°ñ %r5   c                ó(   € V P                  V4       R# )aN  Add an iterable of items to this :class:`_orm.AppenderQuery`.

The given items will be persisted to the database in terms of
the parent instance's collection on the next flush.

This method is provided to assist in delivering forwards-compatibility
with the :class:`_orm.WriteOnlyCollection` collection class.

.. versionadded:: 2.0

N©Ú_add_all_impl©r>   r©   s   &&r2   Úadd_allÚAppenderMixin.add_allì   s   € ð 	×Ñ˜8Ö$r5   c               ó    € V ^8„  d   QhRRRR/# ©r'   Úitemr"   r.   r/   r0   )r1   s   "r2   r3   re   ú   s   € ÷ #ñ #˜ð #˜tñ #r5   c                ó*   € V P                  V.4       R# )a@  Add an item to this :class:`_orm.AppenderQuery`.

The given item will be persisted to the database in terms of
the parent instance's collection on the next flush.

This method is provided to assist in delivering forwards-compatibility
with the :class:`_orm.WriteOnlyCollection` collection class.

.. versionadded:: 2.0

Nr«   ©r>   r²   s   &&r2   ÚaddÚAppenderMixin.addú   s   € ð 	×Ñ˜D˜6Ö"r5   c               ó    € V ^8„  d   QhRRRR/# r¨   r0   )r1   s   "r2   r3   re     s   € ÷ %ñ %˜|ð %°ñ %r5   c                ó(   € V P                  V4       R# )z²Add an iterable of items to this :class:`_orm.AppenderQuery`.

The given items will be persisted to the database in terms of
the parent instance's collection on the next flush.

Nr«   r­   s   &&r2   ÚextendÚAppenderMixin.extend  s   € ð 	×Ñ˜8Ö$r5   c               ó    € V ^8„  d   QhRRRR/# r±   r0   )r1   s   "r2   r3   re     s   € ÷ #ñ #˜2ð # $ñ #r5   c                ó*   € V P                  V.4       R# )z§Append an item to this :class:`_orm.AppenderQuery`.

The given item will be persisted to the database in terms of
the parent instance's collection on the next flush.

Nr«   r´   s   &&r2   ÚappendÚAppenderMixin.append  s   € ð 	×Ñ˜D˜6Ö"r5   c               ó    € V ^8„  d   QhRRRR/# r±   r0   )r1   s   "r2   r3   re     s   € ÷  ñ  ˜2ð   $ñ  r5   c                ó(   € V P                  V4       R# )z�Remove an item from this :class:`_orm.AppenderQuery`.

The given item will be removed from the parent instance's collection on
the next flush.

N)Ú_remove_implr´   s   &&r2   ÚremoveÚAppenderMixin.remove  s   € ð 	×Ñ˜$Ör5   rw   rB   )rC   rD   rE   rF   Ú__doc__rI   r\   r@   Úpropertyrs   Úsetterr†   r   rŠ   r   r‘   rœ   r…   r®   rµ   r¹   r½   rÂ   rG   Ú__classcell__)rh   s   @r2   rV   rV   t   s§   ø‡ ñð .2€KÐ*Ó1Ø5Ó5÷&ð &ð ôó ðð ‡^�^ôó ðõ0÷2 å/àÜ0ó Ø0àÜ8ó Ø8õ;õ
0÷õ:%õ#õ%õ#÷ ó  r5   rV   c                  ó   € ] tR tRtRtRtR# )r7   i$  zÎA dynamic query that supports basic collection storage operations.

Methods on :class:`.AppenderQuery` include all methods of
:class:`_orm.Query`, plus additional methods used for collection
persistence.


r0   N)rC   rD   rE   rF   rÄ   rG   r0   r5   r2   r7   r7   $  s   † õr5   r7   c               ó    € V ^8„  d   QhRRRR/# )r'   Úclsr   r.   ztype[AppenderMixin[Any]]r0   )r1   s   "r2   r3   r3   /  s   € ÷ Bñ B˜#ð BÐ":ñ Br5   c                óR   € RV P                   ,           p\        V\        V 3RV /4      # )zAReturn a new class with AppenderQuery functionality layered over.ÚAppenderrI   )rC   ÚtyperV   )rÊ   Únames   & r2   rX   rX   /  s)   € à˜Ÿ™Õ$€DÜ�”} cÐ*¨]¸CÐ,@ÓAÐAr5   N)8rÄ   Ú
__future__r   Útypingr   r   r   r   r   r   r	   r
   r   r   r   Ú r   r   r    r   r   ro   Úbaser   r£   r   rs   r   Ú	writeonlyr   r   r   r   Úenginer   r   Úmapperr   r   r   r*   r   r   Úeventr    Úsql.elementsr!   r"   r%   r)   ÚRelationshipPropertyÚstrategy_forr`   rV   r7   rX   r0   r5   r2   Ú<module>rÚ      sÿ   ðñ	õ #å Ý Ý Ý Ý Ý Ý Ý Ý  Ý Ý å Ý Ý Ý Ý Ý Ý #Ý /Ý -Ý 'Ý &Ý Ý çÝ$ÝÝ6Ý Ý$Ý"Ý!Ý,áˆT˜Ô€ô/Ð/°Õ3ô /ô*=Ð1ô =ð: ×#Ñ#×0Ñ0°iÐ0Ó@ô&�ó &ó Að&ôm Ð,¨RÕ0ô m ô`�M "Õ% u¨R¥yô ÷Br5   