U
    ]g%iP!                     @  s  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d6l0m=Z= dd7l>m?Z? dd8l@mAZA dd9l@mBZB dd:l@mCZC dd;l@mDZD dd<lEmFZF dd=lGmHZH dd>lGmIZI dd?lGmJZJ dd@lGmKZK ddAlGmLZL ddBlGmMZM ddClNmOZO ddDlPmQZQ ddElRmSZS ddFlRmTZT ddGlRmUZU ddHlRmVZV ddIlRmWZW ddJlRmXZX ddKlRmYZY ddLlRmZZZ ddMlRm[Z[ ddNlRm\Z\ ddOlRm]Z] ddPlRm^Z^ ddQlRm_Z_ ddRlRm`Z` ddSlambZb ddTlamcZc ddUldmeZe ddVldmfZf ddWldmgZg ddXldmhZh ddYldmiZi ddZldmjZj dd[ldmdZd dd\ldmkZk dd]lmlZl dd^lmmZm dd_lmnZn dd`lmoZo ddalpmqZq ddblpmrZr ddclpmsZs dddltmuZu ddeltmvZv ddflwmxZx ddglwmyZy ddhlwmzZz ddilwm{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dtlmZ ddulmZ ddvlmZ 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dl	mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dddddZee  dS )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)mapped_as_dataclass)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   )utilr   None)lclsreturnc                 C  s   t jd t jd d S )Nzsqlalchemy.ormzsqlalchemy.ext)_sa_utilZ	preloadedZimport_prefix)r    r   V/var/www/html/api-medvista/venv/lib/python3.8/site-packages/sqlalchemy/orm/__init__.py__go   s    r   N)__doc__
__future__r   typingr    r   r   Z	mapperlibr   Z_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)   Zdecl_apir*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   Z	decl_baser7   Zdescriptor_propsr8   r9   r:   r;   Zdynamicr<   eventsr=   r>   r?   r@   rA   rB   identityrC   ZinstrumentationrD   Z
interfacesrE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   ZloadingrS   rT   r[   rU   rV   rW   rX   rY   rZ   r\   r]   r^   r_   r`   
propertiesra   rb   rc   queryrd   re   Zrelationshipsrf   rg   rh   ri   Z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   Z
unitofworkr   r   r   r   r   r   r   r   r   Z	writeonlyr   r   r   localsr   r   r   r   <module>   s   