§
    PŠtj  ã                   óŠ   — d dl mZmZmZ d dlmZ  G d„ de¦  «        Zej                             ee¦  «        d„ ¦   «         Z	dS )é    )ÚKindÚ_NumberKindÚ
NumberKind)ÚMulc                   ó,   ‡ — e Zd ZdZefˆ fd„	Zd„ Zˆ xZS )Ú
VectorKinda  
    Kind for all vector objects in SymPy.

    Parameters
    ==========

    element_kind : Kind
        Kind of the element. Default is
        :class:`sympy.core.kind.NumberKind`,
        which means that the vector contains only numbers.

    Examples
    ========

    Any instance of Vector class has kind ``VectorKind``:

    >>> from sympy.vector.coordsysrect import CoordSys3D
    >>> Sys = CoordSys3D('Sys')
    >>> Sys.i.kind
    VectorKind(NumberKind)

    Operations between instances of Vector keep also have the kind ``VectorKind``:

    >>> from sympy.core.add import Add
    >>> v1 = Sys.i * 2 + Sys.j * 3 + Sys.k * 4
    >>> v2 = Sys.i * Sys.x + Sys.j * Sys.y + Sys.k * Sys.z
    >>> v1.kind
    VectorKind(NumberKind)
    >>> v2.kind
    VectorKind(NumberKind)
    >>> Add(v1, v2).kind
    VectorKind(NumberKind)

    Subclasses of Vector also have the kind ``VectorKind``, such as
    Cross, VectorAdd, VectorMul or VectorZero.

    See Also
    ========

    sympy.core.kind.Kind
    sympy.matrices.kind.MatrixKind

    c                 óZ   •— t          ¦   «                              | |¦  «        }||_        |S )N)ÚsuperÚ__new__Úelement_kind)Úclsr   ÚobjÚ	__class__s      €úO/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/vector/kind.pyr   zVectorKind.__new__2   s'   ø€ Ý‰gŒg�oŠo˜c <Ñ0Ô0ˆØ'ˆÔØˆ
ó    c                 ó   — d| j         z  S )NzVectorKind(%s))r   )Úselfs    r   Ú__repr__zVectorKind.__repr__7   s   € Ø $Ô"3Ñ3Ð3r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   Ú__classcell__)r   s   @r   r   r      s\   ø€ € € € € ð*ð *ðV #-ð ð ð ð ð ð ð
4ð 4ð 4ð 4ð 4ð 4ð 4r   r   c                 ó†   — t          |t          ¦  «        s|| }} t          j        | |j        ¦  «        }t          |¦  «        S )zš
    The result of a multiplication between a number and a Vector should be of VectorKind.
    The element kind is selected by recursive dispatching.
    )Ú
isinstancer   r   Ú_kind_dispatcherr   )Úk1Úk2Úelemks      r   Únum_vec_mulr    :   sA   € õ �b�*Ñ%Ô%ð Ø�RˆBˆÝÔ   R¤_Ñ5Ô5€EÝ�eÑÔÐr   N)
Úsympy.core.kindr   r   r   Úsympy.core.mulr   r   r   Úregisterr    © r   r   ú<module>r%      s›   ðð :Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø Ð Ð Ð Ð Ð ð24ð 24ð 24ð 24ð 24�ñ 24ô 24ð 24ðh Ô×Ò˜{¨JÑ7Ô7ðð ñ 8Ô7ðð ð r   