Ë
    7^(hE  ã                   ó’   — d dl mZ d dlmZ d dlmZ  G d„ de«      Z e«       Zed„ «       Zdd„Z	d„ d	„ e	d
fd„Z
dd„Zd„ Zd„ Zd„ Zy
)é    )Úcontextmanager)Úlocal©Ú
expand_mulc                   ó   — e Zd Zd„ Zy)ÚDotProdSimpStatec                 ó   — d | _         y ©N)Ústate)Úselfs    úV/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/matrices/utilities.pyÚ__init__zDotProdSimpState.__init__   s	   € Øˆ�
ó    N)Ú__name__Ú
__module__Ú__qualname__r   © r   r   r   r      s   „ ór   r   c              #   ó‚   K  — t         j                  }	 | t         _        d –— |t         _        y # |t         _        w xY w­wr
   ©Ú_dotprodsimp_stater   )ÚxÚolds     r   Údotprodsimpr      s4   è ø€ ä
×
"Ñ
"€Cð'Ø#$ÔÔ Ûà#&ÔÕ ø 3ÔÕ üs   ‚?”/ £?¯<¼?c                 ó"   — ddl m}  || |¬«      S )z;Wrapper for simplify.dotprodsimp to avoid circular imports.r   )r   )Úwithsimp)Úsympy.simplify.simplifyr   )Úexprr   Údpss      r   Ú_dotprodsimpr      s   € å:Ùˆt˜hÔ'Ð'r   c                 ó   — | S r
   r   ©r   s    r   ú<lambda>r"      s   € ¨Q€ r   c                 ó   — | S r
   r   r!   s    r   r"   r"      s   € À!€ r   Nc                 óf   — |du st         j                  du r|S |du st         j                  du r|S | S )a  Support function for controlling intermediate simplification. Returns a
    simplification function according to the global setting of dotprodsimp
    operation.

    ``deffunc``     - Function to be used by default.
    ``offfunc``     - Function to be used if dotprodsimp has been turned off.
    ``onfunc``      - Function to be used if dotprodsimp has been turned on.
    ``dotprodsimp`` - True, False or None. Will be overridden by global
                      _dotprodsimp_state.state if that is not None.
    FTr   )ÚdeffuncÚofffuncÚonfuncr   s       r   Ú_get_intermediate_simpr(      s?   € ð �eÑÔ1×7Ñ7¸5Ñ@ØˆØ�dÑÔ0×6Ñ6¸$Ñ>Øˆà€Nr   c                 ó   — t        | dd|«      S )zYSame as ``_get_intermediate_simp`` but returns bools instead of functions
    by default.FT)r(   )Údefaultr   s     r   Ú_get_intermediate_simp_boolr+   3   s   € ô " '¨5°$¸ÓDÐDr   c                 ó   — t        | dd«      S )zReturns True if x is zero.Úis_zeroN)Úgetattrr!   s    r   Ú_iszeror/   :   s   € ä�1�i Ó&Ð&r   c                 ó   — t        | «      dk(  S )zNTests by expand_mul only, suitable for polynomials and rational
    functions.r   r   r!   s    r   Ú_is_zero_after_expand_mulr1   ?   s   € ô �a‹=˜AÑÐr   c                 ó   — ddl m}  || «      S )z$ Wrapper to avoid circular imports. r   )Úsimplify)r   r3   )r   r3   s     r   Ú	_simplifyr4   E   s   € å0Ù�D‹>Ðr   )F)FN)Ú
contextlibr   Ú	threadingr   Úsympy.core.functionr   r   r   r   r   r(   r+   r/   r1   r4   r   r   r   ú<module>r8      sb   ðÝ %Ý å *ô�uô ñ &Ó'Ð àñ'ó ð'ó(ñ $/¹Ø¨óó*Eò'ò
ór   