§
    OŠtj»  ã                   ó(   — d dl mZmZ d dlmZ d„ ZdS )é    )ÚSingularityFunctionÚ
DiracDelta)Ú	integratec                 ó¢  — |                       t          ¦  «        sdS t          | t          ¦  «        rK| j        \  }}}|j        s|j        rt          |||dz   ¦  «        |dz   z  S |dv rt          |||dz   ¦  «        S | j        s| j        rD|                      t          ¦  «        }t          ||¦  «        }|                     t          ¦  «        S dS )aI  
    This function handles the indefinite integrations of Singularity functions.
    The ``integrate`` function calls this function internally whenever an
    instance of SingularityFunction is passed as argument.

    Explanation
    ===========

    The idea for integration is the following:

    - If we are dealing with a SingularityFunction expression,
      i.e. ``SingularityFunction(x, a, n)``, we just return
      ``SingularityFunction(x, a, n + 1)/(n + 1)`` if ``n >= 0`` and
      ``SingularityFunction(x, a, n + 1)`` if ``n < 0``.

    - If the node is a multiplication or power node having a
      SingularityFunction term we rewrite the whole expression in terms of
      Heaviside and DiracDelta and then integrate the output. Lastly, we
      rewrite the output of integration back in terms of SingularityFunction.

    - If none of the above case arises, we return None.

    Examples
    ========

    >>> from sympy.integrals.singularityfunctions import singularityintegrate
    >>> from sympy import SingularityFunction, symbols, Function
    >>> x, a, n, y = symbols('x a n y')
    >>> f = Function('f')
    >>> singularityintegrate(SingularityFunction(x, a, 3), x)
    SingularityFunction(x, a, 4)/4
    >>> singularityintegrate(5*SingularityFunction(x, 5, -2), x)
    5*SingularityFunction(x, 5, -1)
    >>> singularityintegrate(6*SingularityFunction(x, 5, -1), x)
    6*SingularityFunction(x, 5, 0)
    >>> singularityintegrate(x*SingularityFunction(x, 0, -1), x)
    0
    >>> singularityintegrate(SingularityFunction(x, 1, -1) * f(x), x)
    f(1)*SingularityFunction(x, 1, 0)

    Né   )éÿÿÿÿéþÿÿÿéýÿÿÿéüÿÿÿ)Úhasr   Ú
isinstanceÚargsÚis_positiveÚis_zeroÚis_MulÚis_PowÚrewriter   r   )ÚfÚxÚaÚnÚexprs        úb/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/integrals/singularityfunctions.pyÚsingularityintegrater      sÞ   € ðV �5Š5Õ$Ñ%Ô%ð Øˆtå�!Õ(Ñ)Ô)ð 4Ø”&‰ˆˆ1ˆaØŒ=ð 	4˜AœIð 	4Ý& q¨!¨Q°©UÑ3Ô3°Q¸±UÑ;Ð;ØÐ"Ð"Ð"Ý& q¨!¨Q°©UÑ3Ô3Ð3à„xð 1�1”8ð 1à�yŠy�Ñ$Ô$ˆÝ˜˜qÑ!Ô!ˆØ�|Š|Õ/Ñ0Ô0Ð0Øˆ4ó    N)Úsympy.functionsr   r   Úsympy.integralsr   r   © r   r   ú<module>r      sH   ðØ ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø %Ð %Ð %Ð %Ð %Ð %ð:ð :ð :ð :ð :r   