§
    OŠtj®-  ã                   óÄ   — d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	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mZmZ d„ Zd„ Zdd„Zd„ Zd„ Zd„ Z dS )zAThis module implements tools for integrating rational functions. é    )ÚLambda)ÚI)ÚS)ÚDummyÚSymbolÚsymbols)Úlog)Úatan)ÚDomainError)Úroots)Úcancel)ÚRootSum)ÚPolyÚ	resultantÚZZc                 ól  — t          | t          ¦  «        r| \  }}n|                      ¦   «         \  }}t          ||dd¬¦  «        t          ||dd¬¦  «        }}|                     |¦  «        \  }}}|                     |¦  «        \  }}|                     |¦  «                             ¦   «         }|j        r||z  S t          |||¦  «        \  }}	|	                     ¦   «         \  }
}t          |
|¦  «        }
t          ||¦  «        }|
                     |¦  «        \  }}|||                     |¦  «                             ¦   «         z   z  }|j        �sÜ| 
                    dd¦  «        }t          |t          ¦  «        st          |¦  «        }n|                     ¦   «         }t          ||||¦  «        }| 
                    d¦  «        }|€nt          | t          ¦  «        r/| \  }}|                     ¦   «         |                     ¦   «         z  }n|                      ¦   «         }||hz
  D ]}|j        sd} nŒd}t"          j        }|se|D ]a\  }	}|	                     ¦   «         \  }}	|t)          |t+          ||t-          |	                     ¦   «         ¦  «        z  ¦  «        d¬¦  «        z  }Œbn~|D ]{\  }	}|	                     ¦   «         \  }}	t/          |	|||¦  «        }|�||z  }Œ6|t)          |t+          ||t-          |	                     ¦   «         ¦  «        z  ¦  «        d¬¦  «        z  }Œ|||z  }||z  S )	aa  
    Performs indefinite integration of rational functions.

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

    Given a field :math:`K` and a rational function :math:`f = p/q`,
    where :math:`p` and :math:`q` are polynomials in :math:`K[x]`,
    returns a function :math:`g` such that :math:`f = g'`.

    Examples
    ========

    >>> from sympy.integrals.rationaltools import ratint
    >>> from sympy.abc import x

    >>> ratint(36/(x**5 - 2*x**4 - 2*x**3 + 4*x**2 + x - 2), x)
    (12*x + 6)/(x**2 - 1) + 4*log(x - 2) - 4*log(x + 1)

    References
    ==========

    .. [1] M. Bronstein, Symbolic Integration I: Transcendental
       Functions, Second Edition, Springer-Verlag, 2005, pp. 35-70

    See Also
    ========

    sympy.integrals.integrals.Integral.doit
    sympy.integrals.rationaltools.ratint_logpart
    sympy.integrals.rationaltools.ratint_ratpart

    FT)Ú	compositeÚfieldÚsymbolÚtÚrealN)Ú	quadratic)Ú
isinstanceÚtupleÚas_numer_denomr   r   ÚdivÚ	integrateÚas_exprÚis_zeroÚratint_ratpartÚgetr   r   Úas_dummyÚratint_logpartÚatomsÚis_extended_realr   ÚZeroÚ	primitiver   r   r	   Úlog_to_real)ÚfÚxÚflagsÚpÚqÚcoeffÚpolyÚresultÚgÚhÚPÚQÚrr   r   ÚLr   r$   ÚeltÚepsÚ_ÚRs                         ú[/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/integrals/rationaltools.pyÚratintr<      sP  € õD �!•UÑÔð "Ø‰ˆˆ1ˆ1à×ÒÑ!Ô!‰ˆˆ1å��1 ¨TÐ2Ñ2Ô2µD¸¸AÈÐVZÐ4[Ñ4[Ô4[€q€Aà—(’(˜1‘+”+�K€Eˆ1ˆaØ�eŠe�A‰hŒh�G€Dˆ!à�^Š^˜AÑÔ×&Ò&Ñ(Ô(€Fà„yð Ø�V‰|Ðå˜!˜Q Ñ"Ô"�D€A€qà×ÒÑÔ�D€A€qåˆQ�‰
Œ
€AÝˆQ�‰
Œ
€Aà�5Š5�‰8Œ8�D€A€qà
ˆa�!—+’+˜a‘.”.×(Ò(Ñ*Ô*Ñ*Ñ*€FàŒ9ñ ,Ø—’˜8 SÑ)Ô)ˆå˜&¥&Ñ)Ô)ð 	"Ý�f‘”ˆAˆAà—’Ñ!Ô!ˆAå˜1˜a  AÑ&Ô&ˆà�yŠy˜Ñ Ô ˆàˆ<Ý˜!�UÑ#Ô#ð "Ø‘��1ØŸš™	œ	 A§G¢G¡I¤IÑ-��àŸš™	œ	�à ˜s‘{ð ð �ØÔ+ð Ø �DØ�Eðð �åŒfˆàð 	JØð Fð F‘��1Ø—{’{‘}”}‘��1Ø•wØ•v˜a ¥3 q§y¢y¡{¤{Ñ#3Ô#3Ñ!3Ñ4Ô4ÀðFñ Fô Fñ F��ðFð
 ð Jð J‘��1Ø—{’{‘}”}‘��1Ý  1 a¨Ñ+Ô+�à�=Ø˜1‘H�C�Cà�7Ø�6 ! Q¥s¨1¯9ª9©;¬;Ñ'7Ô'7Ñ%7Ñ8Ô8ÀDðJñ Jô Jñ J�C�Cð 	�#‰ˆà�‰<Ðó    c                 óö  ‡‡— ddl m} t          | |¦  «        } t          ||¦  «        }|                     |                     ¦   «         ¦  «        \  }}}|                     ¦   «         Š|                     ¦   «         Šˆfd„t          d‰¦  «        D ¦   «         }ˆfd„t          d‰¦  «        D ¦   «         }||z   }	t          ||t          |	         ¬¦  «        }
t          ||t          |	         ¬¦  «        }| |
                     ¦   «         |z  z
  |
|                     ¦   «         |z                       |¦  «        z  z   ||z  z
  } || 	                    ¦   «         |	¦  «        }|
 
                    ¦   «                              |¦  «        }
| 
                    ¦   «                              |¦  «        }t          |
| 
                    ¦   «         z  |¦  «        }t          || 
                    ¦   «         z  |¦  «        }||fS )a«  
    Horowitz-Ostrogradsky algorithm.

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

    Given a field K and polynomials f and g in K[x], such that f and g
    are coprime and deg(f) < deg(g), returns fractions A and B in K(x),
    such that f/g = A' + B and B has square-free denominator.

    Examples
    ========

        >>> from sympy.integrals.rationaltools import ratint_ratpart
        >>> from sympy.abc import x, y
        >>> from sympy import Poly
        >>> ratint_ratpart(Poly(1, x, domain='ZZ'),
        ... Poly(x + 1, x, domain='ZZ'), x)
        (0, 1/(x + 1))
        >>> ratint_ratpart(Poly(1, x, domain='EX'),
        ... Poly(x**2 + y**2, x, domain='EX'), x)
        (0, 1/(x**2 + y**2))
        >>> ratint_ratpart(Poly(36, x, domain='ZZ'),
        ... Poly(x**5 - 2*x**4 - 2*x**3 + 4*x**2 + x - 2, x, domain='ZZ'), x)
        ((12*x + 6)/(x**2 - 1), 12/(x**2 - x - 2))

    See Also
    ========

    ratint, ratint_logpart
    r   )Úsolvec           	      óT   •— g | ]$}t          d t          ‰|z
  ¦  «        z   ¦  «        ‘Œ%S )Úa©r   Ústr)Ú.0ÚiÚns     €r;   ú
<listcomp>z"ratint_ratpart.<locals>.<listcomp>§   ó0   ø€ Ð?Ð?Ð?¨Q•�s�S  Q¡™ZœZÑ'Ñ(Ô(Ð?Ð?Ð?r=   c           	      óT   •— g | ]$}t          d t          ‰|z
  ¦  «        z   ¦  «        ‘Œ%S )ÚbrB   )rD   rE   Úms     €r;   rG   z"ratint_ratpart.<locals>.<listcomp>¨   rH   r=   )Údomain)Úsympy.solvers.solversr?   r   Ú	cofactorsÚdiffÚdegreeÚranger   ÚquoÚcoeffsr   Úsubsr   )r)   r1   r*   r?   ÚuÚvr9   ÚA_coeffsÚB_coeffsÚC_coeffsÚAÚBÚHr0   Úrat_partÚlog_partrK   rF   s                   @@r;   r    r    }   sº  øø€ ð@ ,Ð+Ð+Ð+Ð+Ð+åˆQ�‰
Œ
€AÝˆQ�‰
Œ
€Aà�kŠk˜!Ÿ&š&™(œ(Ñ#Ô#�G€A€qˆ!à	�Š‰
Œ
€AØ	�Š‰
Œ
€Aà?Ð?Ð?Ð?µ%¸¸1±+´+Ð?Ñ?Ô?€HØ?Ð?Ð?Ð?µ%¸¸1±+´+Ð?Ñ?Ô?€Hà˜(Ñ"€HåˆX�q¥ H¤Ð.Ñ.Ô.€AÝˆX�q¥ H¤Ð.Ñ.Ô.€Aà	ˆA�FŠF‰HŒH�Q‰J‰˜˜AŸFšF™HœH Q™J×+Ò+¨AÑ.Ô.Ñ.Ñ.°°1±Ñ4€AàˆU�1—8’8‘:”:˜xÑ(Ô(€Fà	�	Š	‰Œ×Ò˜Ñ Ô €AØ	�	Š	‰Œ×Ò˜Ñ Ô €Aå�a˜Ÿ	š	™œ‘m QÑ'Ô'€HÝ�a˜Ÿ	š	™œ‘m QÑ'Ô'€Hà�XÐÐr=   Nc                 óx  — t          | |¦  «        t          ||¦  «        }} |pt          d¦  «        }|| |                     ¦   «         t          ||¦  «        z  z
  }}t          ||d¬¦  «        \  }}t          ||d¬¦  «        }|sJ d|›d|›d�¦   «         ‚i g }	}|D ]}
|
||
                     ¦   «         <   Œd	„ }|                     ¦   «         \  }} |||¦  «         |D �]Ú\  }}|                     ¦   «         \  }}|                     ¦   «         |k    r|	                     ||f¦  «         ŒM||         }t          |                     ¦   «         |d¬
¦  «        }|                     d¬¦  «        \  }} |||¦  «         |D ]>\  }}| 	                    t          | 
                    |¦  «        |z  |¦  «        ¦  «        }Œ?|                     |¦  «        t          j        g}}|                     ¦   «         dd…         D ][}|                     |j        ¦  «        }||z                       |¦  «        }|                     |                     ¦   «         ¦  «         Œ\t          t'          t)          t+          |                     ¦   «         |¦  «        ¦  «        ¦  «        |¦  «        }|	                     ||f¦  «         �ŒÜ|	S )an  
    Lazard-Rioboo-Trager algorithm.

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

    Given a field K and polynomials f and g in K[x], such that f and g
    are coprime, deg(f) < deg(g) and g is square-free, returns a list
    of tuples (s_i, q_i) of polynomials, for i = 1..n, such that s_i
    in K[t, x] and q_i in K[t], and::

                           ___    ___
                 d  f   d  \  `   \  `
                 -- - = --  )      )   a log(s_i(a, x))
                 dx g   dx /__,   /__,
                          i=1..n a | q_i(a) = 0

    Examples
    ========

    >>> from sympy.integrals.rationaltools import ratint_logpart
    >>> from sympy.abc import x
    >>> from sympy import Poly
    >>> ratint_logpart(Poly(1, x, domain='ZZ'),
    ... Poly(x**2 + x + 1, x, domain='ZZ'), x)
    [(Poly(x + 3*_t/2 + 1/2, x, domain='QQ[_t]'),
    ...Poly(3*_t**2 + 1, _t, domain='ZZ'))]
    >>> ratint_logpart(Poly(12, x, domain='ZZ'),
    ... Poly(x**2 - x - 2, x, domain='ZZ'), x)
    [(Poly(x - 3*_t/8 - 1/2, x, domain='QQ[_t]'),
    ...Poly(-_t**2 + 16, _t, domain='ZZ'))]

    See Also
    ========

    ratint, ratint_ratpart
    r   T)Ú
includePRSF)r   zBUG: resultant(z, z) cannot be zeroc                 óŽ   — | j         r;| dk     dk    r3|d         \  }}|                      |j        ¦  «        }||z  |f|d<   d S d S d S )Nr   T)r%   Úas_polyÚgens)ÚcÚsqfr2   ÚkÚc_polys        r;   Ú_include_signz%ratint_logpart.<locals>._include_signñ   s\   € ØÔð 	! 1 q¢5¨T¢/ /Ø�q”6‰DˆAˆqØ—Y’Y˜qœvÑ&Ô&ˆFØ�v‘X˜q�[ˆC�‰FˆFˆFð	!ð 	! / /r=   )r   )Úallé   N)r   r   rO   r   rP   Úsqf_listr'   ÚappendÚLCrR   ÚgcdÚinvertr   ÚOnerS   rb   rc   Úremr   ÚdictÚlistÚzipÚmonoms)r)   r1   r*   r   rA   rJ   Úresr:   ÚR_mapr\   r5   rh   ÚCÚres_sqfr-   rE   r9   r2   Úh_lcrd   Úh_lc_sqfÚjÚinvrS   r.   ÚTs                             r;   r#   r#   ¼   s¤  € õL ��1‰:Œ:•t˜A˜q‘z”z€q€Aà	ˆ�U�3‰ZŒZ€AØˆa�!—&’&‘(”(�4  1™:œ:Ñ%Ñ%€q€Aå�q˜!¨Ð-Ñ-Ô-�F€CˆÝ
ˆs�A Ð
'Ñ
'Ô
'€CàÐ@Ð@Ð@¸1¸1¸1¸a¸a¸aÐ@Ñ@Ô@ˆ3à�2ˆ1€Eàð ð ˆØˆˆa�hŠh‰jŒjÑÐð!ð !ð !ð —’‘”�J€A€wØ€M�!�WÑÔÐàð ñ ‰ˆˆ1Ø�{Š{‰}Œ}‰ˆˆ1à�8Š8‰:Œ:˜Š?ˆ?Ø�HŠH�a˜�VÑÔÐÐà�a”ˆAÝ˜Ÿš™œ ¨Ð.Ñ.Ô.ˆDàŸ-š-¨D˜-Ñ1Ô1‰KˆAˆxØˆM˜!˜XÑ&Ô&Ð&à ð 0ð 0‘��1Ø—E’E�$˜qŸušu Q™xœx¨™{¨AÑ.Ô.Ñ/Ô/��àŸ+š+ a™.œ.­1¬5¨'�ˆCàŸš™œ A B Bœð +ð +�ØŸš c¤hÑ/Ô/�Ø˜‘Y—O’O AÑ&Ô&�Ø—’˜aŸiši™kœkÑ*Ô*Ð*Ð*å•T�$�s 1§8¢8¡:¤:¨vÑ6Ô6Ñ7Ô7Ñ8Ô8¸!Ñ<Ô<ˆAà�HŠH�a˜�VÑÔÐÑà€Hr=   c                 ó  — |                       ¦   «         |                      ¦   «         k     r| | }} |                      ¦   «         } |                     ¦   «         }|                      |¦  «        \  }}|j        r$dt	          |                     ¦   «         ¦  «        z  S |                     |  ¦  «        \  }}}| |z  ||z  z                        |¦  «        }dt	          |                     ¦   «         ¦  «        z  }|t          ||¦  «        z   S )a0  
    Convert complex logarithms to real arctangents.

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

    Given a real field K and polynomials f and g in K[x], with g != 0,
    returns a sum h of arctangents of polynomials in K[x], such that:

                   dh   d         f + I g
                   -- = -- I log( ------- )
                   dx   dx        f - I g

    Examples
    ========

        >>> from sympy.integrals.rationaltools import log_to_atan
        >>> from sympy.abc import x
        >>> from sympy import Poly, sqrt, S
        >>> log_to_atan(Poly(x, x, domain='ZZ'), Poly(1, x, domain='ZZ'))
        2*atan(x)
        >>> log_to_atan(Poly(x + S(1)/2, x, domain='QQ'),
        ... Poly(sqrt(3)/2, x, domain='EX'))
        2*atan(2*sqrt(3)*x/3 + sqrt(3)/3)

    See Also
    ========

    log_to_real
    é   )	rP   Úto_fieldr   r   r
   r   ÚgcdexrR   Úlog_to_atan)	r)   r1   r,   r-   Úsr   r2   rU   rZ   s	            r;   rƒ   rƒ     sß   € ð> 	‡x‚x�z„z�A—H’H‘J”JÒÐØˆr�1ˆ1ˆà	�
Š
‰Œ€AØ	�
Š
‰Œ€Aà�5Š5�‰8Œ8�D€A€qà„yð %Ø•�a—i’i‘k”kÑ"Ô"Ñ"Ð"à—'’'˜1˜"‘+”+‰ˆˆ1ˆaØˆq‰S�1�Q‘3‰Y�OŠO˜AÑÔˆØ�d�1—9’9‘;”;ÑÔÑˆà•;˜q !Ñ$Ô$Ñ$Ð$r=   c                 ó    — t          | d¬¦  «        }	 |                      ¦   «         }t          |¦  «        |k    r|S dS # t          $ r |cY S w xY w)zget real roots of f if possibler:   )ÚfilterN)r   Úcount_rootsÚlenr   )r)   r*   ÚrsÚ	num_rootss       r;   Ú_get_real_rootsr‹   H  si   € å	ˆq˜Ð	Ñ	Ô	€BðØ—M’M‘O”Oˆ	õ ˆr‰7Œ7�iÒÐØˆIà�4øõ ð ð ð Øˆ	ˆ	ˆ	ðøøøs   “> ¾AÁAc           
      ó�  — ddl m} t          dt          ¬¦  «        \  }}|                      ¦   «                              ||t          |z  z   i¦  «                             ¦   «         }|                     ¦   «                              ||t          |z  z   i¦  «                             ¦   «         } ||t          d¬¦  «        }	 ||t          d¬¦  «        }
|	                     t          j
        t          j        ¦  «        |	                     t          t          j        ¦  «        }}|
                     t          j
        t          j        ¦  «        |
                     t          t          j        ¦  «        }}t          t          |||¦  «        |¦  «        }t          ||¦  «        }|€dS t          j        }|                     ¦   «         D �]›}t          |                     ||i¦  «        |¦  «        }|s1t          |                     ||i¦  «        |¦  «        }t          j        }t          ||¦  «        }|€ dS g }|D ]Y}||vrS| |vrN|j        s|                     ¦   «         r|                     | ¦  «         Œ=|j        s|                     |¦  «         ŒZ|D ]Ê}|                     ||||i¦  «        }|                     d¬	¦  «        dk    rŒ6t          |                     ||||i¦  «        |¦  «        }t          |                     ||||i¦  «        |¦  «        }|d
z  |d
z  z                        ¦   «         }||t+          |¦  «        z  |t-          ||¦  «        z  z   z  }ŒË�Œ�t          ||¦  «        }|€dS |                     ¦   «         D ]=}||t+          |                      ¦   «                              ||¦  «        ¦  «        z  z  }Œ>|S )aw  
    Convert complex logarithms to real functions.

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

    Given real field K and polynomials h in K[t,x] and q in K[t],
    returns real function f such that:
                          ___
                  df   d  \  `
                  -- = --  )  a log(h(a, x))
                  dx   dx /__,
                         a | q(a) = 0

    Examples
    ========

        >>> from sympy.integrals.rationaltools import log_to_real
        >>> from sympy.abc import x, y
        >>> from sympy import Poly, S
        >>> log_to_real(Poly(x + 3*y/2 + S(1)/2, x, domain='QQ[y]'),
        ... Poly(3*y**2 + 1, y, domain='ZZ'), x, y)
        2*sqrt(3)*atan(2*sqrt(3)*x/3 + sqrt(3)/3)/3
        >>> log_to_real(Poly(x**2 - 1, x, domain='ZZ'),
        ... Poly(-2*y + 1, y, domain='ZZ'), x, y)
        log(x**2 - 1)/2

    See Also
    ========

    log_to_atan
    r   )Úcollectzu,v)ÚclsF)ÚevaluateNT)Úchopr€   )Úsympy.simplify.radsimpr�   r   r   r   Úxreplacer   Úexpandr!   r   rp   r&   r   r   r‹   ÚkeysÚis_negativeÚcould_extract_minus_signrl   r   Úevalfr	   rƒ   rT   )r2   r-   r*   r   r�   rU   rV   r\   r4   ÚH_mapÚQ_maprA   rJ   rd   Údr:   ÚR_ur0   Úr_urx   ÚR_vÚ
R_v_pairedÚr_vÚDrZ   r[   ÚABÚR_qr5   s                                r;   r(   r(   W  s”  € ðB /Ð.Ð.Ð.Ð.Ð.Ý�5�eÐ$Ñ$Ô$�D€A€qà	�	Š	‰Œ×Ò˜a ¥Q q¡S¡˜\Ñ*Ô*×1Ò1Ñ3Ô3€AØ	�	Š	‰Œ×Ò˜a ¥Q q¡S¡˜\Ñ*Ô*×1Ò1Ñ3Ô3€AàˆG�A•q 5Ð)Ñ)Ô)€EØˆG�A•q 5Ð)Ñ)Ô)€Eà�9Š9•Q”U�AœFÑ#Ô# U§Y¢Y­qµ!´&Ñ%9Ô%9€q€AØ�9Š9•Q”U�AœFÑ#Ô# U§Y¢Y­qµ!´&Ñ%9Ô%9€q€Aå�Y�q˜!˜QÑÔ Ñ#Ô#€Aå
˜!˜QÑ
Ô
€Cà
€{ØˆtåŒV€Fà�xŠx‰zŒzð &:ñ &:ˆÝ�—’˜Q ˜HÑ%Ô% qÑ)Ô)ˆØð 		õ �Q—Z’Z  C Ñ)Ô)¨1Ñ-Ô-ˆAõ
 ”ˆAå˜a Ñ#Ô#ˆàˆ;Ø�4�4àˆ
Øð 	+ð 	+ˆCØ˜*Ð$Ð$¨#¨°ZÐ)?Ð)?Ø”?ð + c×&BÒ&BÑ&DÔ&Dð +Ø×%Ò% s dÑ+Ô+Ð+Ð+Øœð +Ø×%Ò% cÑ*Ô*Ð*øàð 	:ð 	:ˆCà—
’
˜A˜s A sÐ+Ñ,Ô,ˆAà�wŠw˜DˆwÑ!Ô! QÒ&Ð&Øå�Q—Z’Z  C¨¨CÐ 0Ñ1Ô1°1Ñ5Ô5ˆAÝ�Q—Z’Z  C¨¨CÐ 0Ñ1Ô1°1Ñ5Ô5ˆAà�Q‘$˜˜A™‘+×&Ò&Ñ(Ô(ˆBà�c�#˜b™'œ'‘k C­°A°qÑ(9Ô(9Ñ$9Ñ9Ñ9ˆFˆFñ	:õ ˜!˜QÑ
Ô
€Cà
€{Øˆtà�XŠX‰ZŒZð 0ð 0ˆØ�!•C˜Ÿ	š	™œ×(Ò(¨¨AÑ.Ô.Ñ/Ô/Ñ/Ñ/ˆˆà€Mr=   )N)!Ú__doc__Úsympy.core.functionr   Úsympy.core.numbersr   Úsympy.core.singletonr   Úsympy.core.symbolr   r   r   Ú&sympy.functions.elementary.exponentialr	   Ú(sympy.functions.elementary.trigonometricr
   Úsympy.polys.polyerrorsr   Úsympy.polys.polyrootsr   Úsympy.polys.polytoolsr   Úsympy.polys.rootoftoolsr   Úsympy.polysr   r   r   r<   r    r#   rƒ   r‹   r(   © r=   r;   ú<module>r°      sb  ðØ GÐ Gà &Ð &Ð &Ð &Ð &Ð &Ø  Ð  Ð  Ð  Ð  Ð  Ø "Ð "Ð "Ð "Ð "Ð "Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø .Ð .Ð .Ð .Ð .Ð .Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø (Ð (Ð (Ð (Ð (Ð (Ø +Ð +Ð +Ð +Ð +Ð +Ø +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ð +ðjð jð jðZ<ð <ð <ð~Xð Xð Xð Xðv.%ð .%ð .%ðbð ð ðfð fð fð fð fr=   