§ <ˆj! ã óF — d Z ddlmZ ddlZddlZddlmZ ddlmZ ddlmZ ddl mZ dd l mZ dd l mZ ddl mZ ddl mZ dd l mZ ddl mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddl!m"Z" ddl!m#Z# ddl!m$Z$ ddl!m%Z% dd l!m&Z& dd!l!m'Z' dd"l!m(Z( d#„ Z)d$„ Z*ej+ ej, - d%d&¬'¦ « G d(„ d)e¦ « ¦ « ¦ « Z.d*„ Z/ G d+„ d,e0¦ « Z1 G d-„ d.e0¦ « Z2dS )/a Heuristics related to join conditions as used in :func:`_orm.relationship`. Provides the :class:`.JoinCondition` object, which encapsulates SQL annotation and aliasing behavior focused on the `primaryjoin` and `secondaryjoin` aspects of :func:`_orm.relationship`. é )Úabsolute_importNé )Ú attributes)Ú dependency)Úmapper)Ú_is_mapped_class)Ú state_str)Ú MANYTOMANY)Ú MANYTOONE)Ú ONETOMANY)ÚPropComparator)ÚStrategizedProperty)Ú _orm_annotate)Ú_orm_deannotate)ÚCascadeOptionsé )Úexc)Úlog)Úschema)Úsql)Úutil)Úinspect)Ú expression)Ú operators)Úvisitors)Ú_deep_deannotate)Ú_shallow_annotate)Úadapt_criterion_to_null)Ú ClauseAdapter)Újoin_condition)Úselectables_overlap©Úvisit_binary_productc óJ — t t j | ¦ « ddi¦ « S )a Annotate a portion of a primaryjoin expression with a 'remote' annotation. See the section :ref:`relationship_custom_foreign` for a description of use. .. seealso:: :ref:`relationship_custom_foreign` :func:`.foreign` ÚremoteT©Ú_annotate_columnsr Ú_clause_element_as_expr©Úexprs úS/opt/cloudlinux/venv/lib64/python3.11/site-packages/sqlalchemy/orm/relationships.pyr% r% 4 s+ € õ ÝÔ*¨4Ñ0Ô0°8¸TÐ2Bñô ð ó c óJ — t t j | ¦ « ddi¦ « S )a Annotate a portion of a primaryjoin expression with a 'foreign' annotation. See the section :ref:`relationship_custom_foreign` for a description of use. .. seealso:: :ref:`relationship_custom_foreign` :func:`.remote` ÚforeignTr&