
    g!                       d 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! 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*l0m1Z1 dd+l0m2Z2 dd,l0m3Z3 dd-l0m4Z4 dd.l0m5Z5 dd/l0m6Z6 dd0l0m7Z7 dd1l0m8Z8 dd2l0m9Z9 dd3l0m:Z: dd4l0m;Z; dd5l0m<Z< dd6l=m>Z> dd7l?m@Z@ dd8l?mAZA dd9l?mBZB dd:l?mCZC dd;lDmEZE dd<lFmGZG dd=lFmHZH dd>lFmIZI dd?lFmJZJ dd@lFmKZK ddAlFmLZL ddBlMmNZN ddClOmPZP ddDlQmRZR ddElQmSZS ddFlQmTZT ddGlQmUZU ddHlQmVZV ddIlQmWZW ddJlQmXZX ddKlQmYZY ddLlQmZZZ ddMlQm[Z[ ddNlQm\Z\ ddOlQm]Z] ddPlQm^Z^ ddQlQm_Z_ ddRl`maZa ddSl`mbZb ddTlcmdZd ddUlcmeZe ddVlcmfZf ddWlcmgZg ddXlcmhZh ddYlcmiZi ddZlcmcZc dd[lcmjZj dd\lmkZk dd]lmlZl dd^lmmZm dd_lmnZn dd`lompZp ddalomqZq ddblomrZr ddclsmtZt dddlsmuZu ddelvmwZw ddflvmxZx ddglvmyZy ddhlvmzZz ddil{m|Z| ddjl{m}Z} ddkl~mZ ddll~mZ ddml~mZ ddnl~mZ ddol~mZ ddpl~mZ ddql~mZ ddrl~mZ ddsl~mZ ddtlmZ ddulmZ ddvl	mZ ddwl	mZ ddxl	mZ ddyl	mZ ddzl	mZ dd{l	mZ dd|l	mZ dd}l	mZ dd~l	mZ ddl	mZ ddl	mZ ddl	mZ ddl	mZ ddl	mZ ddl	mZ ddl	mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddZ e e              y)z
Functional constructs for ORM configuration.

See the SQLAlchemy object relational tutorial and mapper configuration
documentation for an overview of how this module is used.

    )annotations)Any   )exc)mapper)strategy_options)
_mapper_fn)aliased)backref)clear_mappers)column_property)	composite)contains_alias)create_session)deferred)dynamic_loader)join)mapped_column)orm_insert_sentinel)	outerjoin)query_expression)relationship)synonym)with_loader_criteria)with_polymorphic)AttributeEventToken)InstrumentedAttribute)QueryableAttribute)class_mapper)DynamicMapped)InspectionAttrExtensionType)LoaderCallableStatus)Mapped)NotExtension)ORMDescriptor)PassiveFlag)SQLORMExpression)WriteOnlyMapped)FromStatement)QueryContext)add_mapped_attribute)as_declarative)declarative_base)declarative_mixin)DeclarativeBase)DeclarativeBaseNoMeta)DeclarativeMeta)declared_attr)has_inherited_table)MappedAsDataclass)registry)synonym_for)MappedClassProtocol)	Composite)CompositeProperty)Synonym)SynonymProperty)AppenderQuery)AttributeEvents)InstanceEvents)InstrumentationEvents)MapperEvents)QueryEvents)SessionEvents)IdentityMap)ClassManager)EXT_CONTINUE)EXT_SKIP)EXT_STOP)InspectionAttr)InspectionAttrInfo)
MANYTOMANY)	MANYTOONE)MapperProperty)NO_KEY)NO_VALUE)	ONETOMANY)PropComparator)RelationshipDirection)UserDefinedOption)merge_frozen_result)merge_result)attribute_keyed_dict)attribute_mapped_collection)column_keyed_dict)column_mapped_collection)keyfunc_mapping)KeyFuncDict)mapped_collection)MappedCollection)configure_mappers)Mapper)reconstructor)	validates)ColumnProperty)MappedColumn)MappedSQLExpression)AliasOption)Query)foreign)Relationship)RelationshipProperty)remote)QueryPropertyDescriptor)scoped_session)close_all_sessions)make_transient)make_transient_to_detached)object_session)ORMExecuteState)Session)sessionmaker)SessionTransaction)SessionTransactionOrigin)AttributeState)InstanceState)contains_eager)defaultload)defer)immediateload)
joinedload)lazyload)Load)	load_only)noload)	raiseload)selectin_polymorphic)selectinload)subqueryload)undefer)undefer_group)with_expression)UOWTransaction)Bundle)CascadeOptions)LoaderCriteriaOption)object_mapper)polymorphic_union)was_deleted)with_parent)WriteOnlyCollection   )utilc                    t         j                  j                  d       t         j                  j                  d       y )Nzsqlalchemy.ormzsqlalchemy.ext)_sa_util	preloadedimport_prefix)lclss    V/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/sqlalchemy/orm/__init__.py__gor      s,    $$%56$$%56    N)r   r   returnNone)__doc__
__future__r   typingr    r   r   	mapperlibr   _orm_constructorsr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   
attributesr   r   r   baser   r    r!   r"   r#   r$   r%   r&   r'   r(   contextr)   r*   decl_apir+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   	decl_baser7   descriptor_propsr8   r9   r:   r;   dynamicr<   eventsr=   r>   r?   r@   rA   rB   identityrC   instrumentationrD   
interfacesrE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   loadingrS   rT   r[   rU   rV   rW   rX   rY   rZ   r\   r]   r^   r_   r`   
propertiesra   rb   rc   queryrd   re   relationshipsrf   rg   rh   ri   scopingrj   rk   sessionrl   rm   rn   ro   rp   rq   rr   rs   rt   stateru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   
unitofworkr   r   r   r   r   r   r   r   r   	writeonlyr   r   r   locals r   r   <module>r      s   #   ! 2 3 1 1 = A 5 ? ? 3 ? + = I 5 C ; 1 K C B F @ . 0 L > " . 0 , 6 4 3 1 B 6 : < 8 D 8 4 @ < * 0 A 4 D 0 @ 3 6 4 B 0 . 2 0 9 4 , , 8 @ 0 . 8 ( , . 8 F > ? 1 K F B 9 E C : $ 2 * 8 4 B - ! - 7 G + G 5 = 5 M 5 7 ' 1 = I 3 1 > 8 , < 6 2 * 4 . 4 J : : 0 < @ 8 " 2 > 0 8 , , A 7
 VXr   