§
    OŠtjS  ã                  óê  — d Z ddlmZ ddlmZ ddlmZmZmZ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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' ddl(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/m0Z0 ddl1m2Z2 ddl3m4Z4 ddl5m6Z6 ddl7m8Z8 e4e&fd„¦   «         Z9e4e&fd„¦   «         Z:e4e&fd„¦   «         Z;e4d„ ¦   «         Z< G d„ de2¦  «        Z= G d „ d!ee2e¦  «        Z>d"S )#z!Sparse rational function fields. é    )Úannotations)Úreduce)ÚaddÚmulÚltÚleÚgtÚge)ÚExpr)ÚMod)ÚExp1)ÚS)ÚSymbol)ÚCantSympifyÚsympify)ÚExpBase)ÚDomain)ÚDomainElement©ÚFractionField)ÚPolynomialRing)Úconstruct_domain)ÚlexÚMonomialOrder)ÚCoercionFailed)Úbuild_options)Ú_parallel_dict_from_expr)ÚPolyRingÚPolyElement)ÚDefaultPrinting)Úpublic)Úis_sequence)Úpollutec                ó:   — t          | ||¦  «        }|f|j        z   S )zFConstruct new rational function field returning (field, x1, ..., xn). ©Ú	FracFieldÚgens©ÚsymbolsÚdomainÚorderÚ_fields       úP/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/fields.pyÚfieldr.      s$   € õ �w ¨Ñ.Ô.€FØˆ9�v”{Ñ"Ð"ó    c                ó6   — t          | ||¦  «        }||j        fS )zHConstruct new rational function field returning (field, (x1, ..., xn)). r%   r(   s       r-   Úxfieldr1   $   s"   € õ �w ¨Ñ.Ô.€FØ�F”KÐ Ð r/   c                óp   — t          | ||¦  «        }t          d„ |j        D ¦   «         |j        ¦  «         |S )zSConstruct new rational function field and inject generators into global namespace. c                ó   — g | ]	}|j         ‘Œ
S © )Úname)Ú.0Úsyms     r-   ú
<listcomp>zvfield.<locals>.<listcomp>.   s   € Ð2Ð2Ð2˜3ˆcŒhÐ2Ð2Ð2r/   )r&   r#   r)   r'   r(   s       r-   Úvfieldr9   *   s=   € õ �w ¨Ñ.Ô.€FÝÐ2Ð2 &¤.Ð2Ñ2Ô2°F´KÑ@Ô@Ð@Ø€Mr/   c                óš  — d}t          | ¦  «        s| gd}} t          t          t          | ¦  «        ¦  «        } t	          ||¦  «        }g }| D ])}|                     |                     ¦   «         ¦  «         Œ*t          ||¦  «        \  }}|j        €3t          d„ |D ¦   «         g ¦  «        }t          ||¬¦  «        \  |_        }	t          |j        |j        |j        ¦  «        }
g }t          dt          |¦  «        d¦  «        D ]8}|                      |
t#          |||dz   …         ¦  «        ¦  «        ¦  «         Œ9|r
|
|d         fS |
|fS )a«  Construct a field deriving generators and domain
    from options and input expressions.

    Parameters
    ==========

    exprs   : py:class:`~.Expr` or sequence of :py:class:`~.Expr` (sympifiable)

    symbols : sequence of :py:class:`~.Symbol`/:py:class:`~.Expr`

    options : keyword arguments understood by :py:class:`~.Options`

    Examples
    ========

    >>> from sympy import exp, log, symbols, sfield

    >>> x = symbols("x")
    >>> K, f = sfield((x*log(x) + 4*x**2)*exp(1/x + log(x)/3)/x**2)
    >>> K
    Rational function field in x, exp(1/x), log(x), x**(1/3) over ZZ with lex order
    >>> f
    (4*x**2*(exp(1/x)) + x*(exp(1/x))*(log(x)))/((x**(1/3))**5)
    FTNc                óP   — g | ]#}t          |                     ¦   «         ¦  «        ‘Œ$S r4   )ÚlistÚvalues)r6   Úreps     r-   r8   zsfield.<locals>.<listcomp>Y   s(   € Ð9Ð9Ð9¨S•d˜3Ÿ:š:™<œ<Ñ(Ô(Ð9Ð9Ð9r/   )Úoptr   é   )r"   r<   Úmapr   r   ÚextendÚas_numer_denomr   r*   Úsumr   r&   r'   r+   ÚrangeÚlenÚappendÚtuple)Úexprsr)   ÚoptionsÚsingler?   ÚnumdensÚexprÚrepsÚcoeffsÚ_r,   ÚfracsÚis                r-   ÚsfieldrS   1   sc  € ð4 €FÝ�uÑÔð &Ø˜ ˆvˆå••W˜eÑ$Ô$Ñ%Ô%€EÝ
˜ Ñ
)Ô
)€CØ€GØð .ð .ˆØ�Š�t×*Ò*Ñ,Ô,Ñ-Ô-Ð-Ð-Ý(¨°#Ñ6Ô6�I€Dˆ#à
„zÐõ Ð9Ð9°DÐ9Ñ9Ô9¸2Ñ>Ô>ˆÝ(¨°SÐ9Ñ9Ô9‰ˆŒ
�Aå�s”x ¤¨S¬YÑ7Ô7€FØ€EÝ�1•c˜$‘i”i Ñ#Ô#ð 1ð 1ˆØ�Š�V�V�E $ q¨¨1© u¤+Ñ.Ô.Ñ/Ô/Ñ0Ô0Ð0Ð0àð Ø˜˜aœÐ!Ð!à˜ˆÐr/   c                  óÂ   — e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   ded<   efd„Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd„ Zd d„Zd d„Zd„ Zd„ Zd„ ZeZd„ Zd„ Zd„ Zd„ ZdS )!r&   z2Multivariate distributed rational function field. r   Úringztuple[FracElement, ...]r'   ztuple[Expr, ...]r)   ÚintÚngensr   r*   r   r+   c                óÎ  — t          |||¦  «        }|j        }|j        }|j        }|j        }| j        ||||f}t                               | ¦  «        }||_        t          |¦  «        |_
        ||_        ||_        ||_        ||_        ||_        t          ||j        ¦  «        j        |_        |                     |j        ¦  «        |_        |                     |j        ¦  «        |_        |                     ¦   «         |_        t'          |j        |j        ¦  «        D ]B\  }}	t)          |t*          ¦  «        r(|j        }
t/          ||
¦  «        st1          ||
|	¦  «         ŒC|S ©N)r   r)   rW   r*   r+   Ú__name__ÚobjectÚ__new__Ú_hash_tupleÚhashÚ_hashrU   ÚFracElementÚzeroÚraw_newÚdtypeÚoneÚ_gensr'   ÚzipÚ
isinstancer   r5   ÚhasattrÚsetattr)Úclsr)   r*   r+   rU   rW   r]   ÚobjÚsymbolÚ	generatorr5   s              r-   r\   zFracField.__new__q   s?  € Ý˜ ¨Ñ/Ô/ˆØ”,ˆØ”
ˆØ”ˆØ”
ˆà”| W¨e°V¸UÐCˆå�nŠn˜SÑ!Ô!ˆØ%ˆŒÝ˜Ñ%Ô%ˆŒ	ØˆŒØˆŒØˆŒ	ØˆŒ
ØˆŒ	å  T¤YÑ/Ô/Ô7ˆŒ	à—9’9˜TœYÑ'Ô'ˆŒØ—)’)˜DœHÑ%Ô%ˆŒà—9’9‘;”;ˆŒå!$ S¤[°#´(Ñ!;Ô!;ð 	2ð 	2ÑˆF�IÝ˜&¥&Ñ)Ô)ð 2Ø”{�å˜s DÑ)Ô)ð 2Ý˜C  yÑ1Ô1Ð1øàˆ
r/   c                óN   ‡ — t          ˆ fd„‰ j        j        D ¦   «         ¦  «        S )z(Return a list of polynomial generators. c                ó:   •— g | ]}‰                      |¦  «        ‘ŒS r4   ©rc   )r6   ÚgenÚselfs     €r-   r8   z#FracField._gens.<locals>.<listcomp>•   s#   ø€ ÐBÐBÐB¨3�t—z’z #‘”ÐBÐBÐBr/   )rH   rU   r'   ©rr   s   `r-   re   zFracField._gens“   s*   ø€ åÐBÐBÐBÐB°$´)´.ÐBÑBÔBÑCÔCÐCr/   c                ó*   — | j         | j        | j        fS rY   )r)   r*   r+   rs   s    r-   Ú__getnewargs__zFracField.__getnewargs__—   s   € Ø”˜dœk¨4¬:Ð6Ð6r/   c                ó   — | j         S rY   )r_   rs   s    r-   Ú__hash__zFracField.__hash__š   s
   € ØŒzÐr/   c                óº   — |                       |¦  «        r,| j                             |                     ¦   «         ¦  «        S t	          d| j        ›d|›d�¦  «        ‚)Nzexpected a ú, got z instead)Ú
is_elementrU   ÚindexÚto_polyÚ
ValueErrorrc   )rr   rq   s     r-   r{   zFracField.index�   sR   € Ø�?Š?˜3ÑÔð 	QØ”9—?’? 3§;¢;¡=¤=Ñ1Ô1Ð1å�*ÀÄ
À
À
È3È3È3ÐOÑPÔPÐPr/   c                ó˜   — t          |t          ¦  «        o5| j        | j        | j        | j        f|j        |j        |j        |j        fk    S rY   )rg   r&   r)   rW   r*   r+   ©rr   Úothers     r-   Ú__eq__zFracField.__eq__£   sI   € Ý˜%¥Ñ+Ô+ð DØŒ\˜4œ: t¤{°D´JÐ?ØŒ]˜EœK¨¬°u´{ÐCòDð	Dr/   c                ó   — | |k     S rY   r4   r   s     r-   Ú__ne__zFracField.__ne__¨   s   € Ø˜5’=Ð Ð r/   c                óB   — t          |t          ¦  «        o
|j        | k    S )zBTrue if ``element`` is an element of this field. False otherwise. )rg   r`   r.   ©rr   Úelements     r-   rz   zFracField.is_element«   s   € å˜'¥;Ñ/Ô/ÐI°G´MÀTÒ4IÐIr/   Nc                ó.   — |                       ||¦  «        S rY   rp   ©rr   ÚnumerÚdenoms      r-   rb   zFracField.raw_new¯   s   € Ø�zŠz˜% Ñ'Ô'Ð'r/   c                óz   — |€| j         j        }|                     |¦  «        \  }}|                      ||¦  «        S rY   )rU   rd   Úcancelrb   rˆ   s      r-   ÚnewzFracField.new²   s8   € Øˆ= $¤)¤-˜%Ø—|’| EÑ*Ô*‰ˆˆuØ�|Š|˜E 5Ñ)Ô)Ð)r/   c                ó6   — | j                              |¦  «        S rY   )r*   Úconvertr…   s     r-   Ú
domain_newzFracField.domain_new·   s   € ØŒ{×"Ò" 7Ñ+Ô+Ð+r/   c                óÖ  — 	 |                       | j                             |¦  «        ¦  «        S # t          $ r¯ | j        }|j        sŸ|j        r˜| j        }|                     ¦   «         }|                     |¦  «        }|                     | 	                    |¦  «        ¦  «        }|                     | 
                    |¦  «        ¦  «        }|                      ||¦  «        cY S ‚ w xY wrY   )r�   rU   Ú
ground_newr   r*   Úis_FieldÚhas_assoc_FieldÚ	get_fieldr�   r‰   rŠ   rb   )rr   r†   r*   rU   Úground_fieldr‰   rŠ   s          r-   r’   zFracField.ground_newº   så   € ð	Ø—8’8˜DœI×0Ò0°Ñ9Ô9Ñ:Ô:Ð:øÝð 	ð 	ð 	Ø”[ˆFà”?ð  vÔ'=ð Ø”y�Ø%×/Ò/Ñ1Ô1�Ø&×.Ò.¨wÑ7Ô7�ØŸš¨×(:Ò(:¸7Ñ(CÔ(CÑDÔD�ØŸš¨×(:Ò(:¸7Ñ(CÔ(CÑDÔD�Ø—|’| E¨5Ñ1Ô1Ð1Ð1Ð1àð	øøøs   ‚,/ ¯B5C(Ã&C(c                óh  — t          |t          ¦  «        r¶| |j        k    r|S t          | j        t          ¦  «        r*| j        j        |j        k    r|                      |¦  «        S t          | j        t          ¦  «        r<| j        j                             ¦   «         |j        k    r|                      |¦  «        S t          d¦  «        ‚t          |t          ¦  «        �r|                     ¦   «         \  }}t          | j        t          ¦  «        r0|j        | j        j        k    r| j                             |¦  «        }nvt          | j        t          ¦  «        rB|j        | j        j                             ¦   «         k    r| j                             |¦  «        }n|                     | j        ¦  «        }| j                             |¦  «        }|                      ||¦  «        S t          |t          ¦  «        rSt!          |¦  «        dk    r@t#          t%          | j        j        |¦  «        ¦  «        \  }}|                      ||¦  «        S t          |t*          ¦  «        rt          d¦  «        ‚t          |t,          ¦  «        r|                      |¦  «        S |                      |¦  «        S )NÚ
conversionr@   Úparsing)rg   r`   r.   r*   r   r’   r   rU   Úto_fieldÚNotImplementedErrorr   Úclear_denomsÚto_ringÚset_ringrb   rH   rF   r<   rA   Úring_newr�   Ústrr   Ú	from_expr)rr   r†   rŠ   r‰   s       r-   Ú	field_newzFracField.field_newÊ   sE  € Ý�g�{Ñ+Ô+ð "	,Ø�w”}Ò$Ð$Ø�å˜$œ+¥}Ñ5Ô5ð 8Ø”Ô! W¤]Ò2Ð2Ø—’ wÑ/Ô/Ð/Ý˜DœK­Ñ8Ô8ð 8Ø”Ô ×)Ò)Ñ+Ô+¨w¬}Ò<Ð<Ø—’ wÑ/Ô/Ð/å)¨,Ñ7Ô7Ð7Ý˜¥Ñ-Ô-ñ 	,Ø"×/Ò/Ñ1Ô1‰LˆE�5å˜$œ+¥~Ñ6Ô6ð 2Ø”
˜dœkÔ.Ò.Ð.Øœ	×,Ò,¨UÑ3Ô3��Ý˜DœK­Ñ7Ô7ð 2Ø”
˜dœkÔ/×7Ò7Ñ9Ô9Ò9Ð9Øœ	×,Ò,¨UÑ3Ô3��àŸš t¤yÑ1Ô1�à”I×(Ò(¨Ñ/Ô/ˆEØ—<’<  uÑ-Ô-Ð-Ý˜¥Ñ'Ô'ð 	,­C°©L¬L¸AÒ,=Ð,=Ý¥ D¤IÔ$6¸Ñ @Ô @ÑAÔA‰LˆE�5Ø—8’8˜E 5Ñ)Ô)Ð)Ý˜¥Ñ%Ô%ð 	,Ý% iÑ0Ô0Ð0Ý˜¥Ñ&Ô&ð 	,Ø—>’> 'Ñ*Ô*Ð*à—?’? 7Ñ+Ô+Ð+r/   c                ó”   ‡‡‡‡— | j         Št          d„ ‰                     ¦   «         D ¦   «         ¦  «        Šˆˆˆˆfd„Š ‰|¦  «        S )Nc              3  óz   K  — | ]6}|j         st          |t          ¦  «        ¯||                     ¦   «         fV — Œ7d S rY   )Úis_Powrg   r   Úas_base_exp)r6   rq   s     r-   ú	<genexpr>z*FracField._rebuild_expr.<locals>.<genexpr>ó   s]   è è € ð 7ð 7°CØŒzð7Ý'¨­WÑ5Ô5ð7˜˜SŸ_š_Ñ.Ô.Ð/ð 7ð 7ð 7ð 7ð 7ð 7r/   c           	     ó¸  •— ‰	                      | ¦  «        }|�|S | j        r5t          t          t	          t          ‰| j        ¦  «        ¦  «        ¦  «        S | j        r5t          t          t	          t          ‰| j        ¦  «        ¦  «        ¦  «        S | j	        st          | t          t          f¦  «        r—|                      ¦   «         \  }}‰
D ]L\  }\  }}||k    r>t          ||¦  «        dk    r*‰	                      |¦  «        t          ||z  ¦  «        z  c S ŒM|j        r)|t"          j        ur ‰|¦  «        t          |¦  «        z  S n3‰	                      d| z  ¦  «        �d‰	                      d| z  ¦  «        z  S 	 ‰                     | ¦  «        S # t(          $ r9 ‰j        s0‰j        r)‰                     ¦   «                              | ¦  «        cY S ‚ w xY w)Nr   é   )ÚgetÚis_Addr   r   r<   rA   ÚargsÚis_Mulr   r¥   rg   r   r   r¦   r   rV   Ú
is_Integerr   ÚOner�   r   r“   r”   r•   )rM   rm   ÚbÚerq   ÚbgÚegÚ_rebuildr*   ÚmappingÚpowerss          €€€€r-   r´   z)FracField._rebuild_expr.<locals>._rebuildö   sÖ  ø€ ØŸš DÑ)Ô)ˆIàÐ$Ø Ð Ø”ð -Ý�c¥4­¨H°d´iÑ(@Ô(@Ñ#AÔ#AÑBÔBÐBØ”ð -Ý�c¥4­¨H°d´iÑ(@Ô(@Ñ#AÔ#AÑBÔBÐBØ”ð 	-¥
¨4µ'½4°Ñ AÔ Að 	-Ø×'Ò'Ñ)Ô)‘��1à%+ð ;ð ;‘M�C™˜"˜bØ˜Q’w�w¥3 q¨"¡:¤:°¢? ?Ø&Ÿ{š{¨3Ñ/Ô/µ°Q°r±T±´Ñ:Ð:Ð:Ð:øØ”<ð / A­Q¬U N NØ#˜8 A™;œ;­¨A©¬Ñ.Ð.øØ—’˜Q˜t™VÑ$Ô$Ð0Ø˜Ÿš Q t¡VÑ,Ô,Ñ,Ð,ðØ—~’~ dÑ+Ô+Ð+øÝ!ð ð ð Ø”ð ¨6Ô+Að Ø!×+Ò+Ñ-Ô-×5Ò5°dÑ;Ô;Ð;Ð;Ð;àð	øøøs   ÆF Æ?GÇG)r*   rH   Úkeys)rr   rM   rµ   r´   r*   r¶   s     `@@@r-   Ú_rebuild_exprzFracField._rebuild_exprñ   sw   øøøø€ Ø”ˆÝð 7ð 7¸7¿<º<¹>¼>ð 7ñ 7ô 7ñ 7ô 7ˆð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð8 ˆx˜‰~Œ~Ðr/   c                ó"  — t          t          t          | j        | j        ¦  «        ¦  «        ¦  «        }	 |                      t          |¦  «        |¦  «        }|                      |¦  «        S # t          $ r t          d| ›d|›�¦  «        ‚w xY w)Nz=expected an expression convertible to a rational function in ry   )
Údictr<   rf   r)   r'   r¸   r   r¢   r   r}   )rr   rM   rµ   Úfracs       r-   r¡   zFracField.from_expr  sš   € Ý•t�C ¤¨d¬iÑ8Ô8Ñ9Ô9Ñ:Ô:ˆð	(Ø×%Ò%¥g¨d¡m¤m°WÑ=Ô=ˆDð —>’> $Ñ'Ô'Ð'øõ ð 	wð 	wð 	wÝ�*ÐjnÐjnÐjnÐptÐptÐuÑvÔvÐvð	wøøøs   ¶#A. Á. Bc                ó    — t          | ¦  «        S rY   r   rs   s    r-   Ú	to_domainzFracField.to_domain  s   € Ý˜TÑ"Ô"Ð"r/   c                óB   — t          | j        | j        | j        ¦  «        S rY   )r   r)   r*   r+   rs   s    r-   r�   zFracField.to_ring!  s   € Ý˜œ d¤k°4´:Ñ>Ô>Ð>r/   rY   )rZ   Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r   r\   re   ru   rw   r{   r�   rƒ   rz   rb   r�   r�   r’   r¢   Ú__call__r¸   r¡   r½   r�   r4   r/   r-   r&   r&   g   s‚  € € € € € € Ø<Ð<à€N€N�NØ!Ð!Ð!Ñ!ØÐÐÑØ€J€J�JØ€N€N�NØÐÐÑà,/ð  ð  ð  ð  ðDDð Dð Dð7ð 7ð 7ðð ð ðQð Qð QðDð Dð Dð
!ð !ð !ðJð Jð Jð(ð (ð (ð (ð*ð *ð *ð *ð
,ð ,ð ,ðð ð ð #,ð #,ð #,ðJ €Hð!ð !ð !ðF(ð (ð (ð#ð #ð #ð?ð ?ð ?ð ?ð ?r/   r&   c                  óø   — e Zd ZdZd'd„Zd'd„Zd„ Zd„ Zd„ Zd„ Z	dZ
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d'd$„Z&d'd%„Z'd'd&„Z(dS )(r`   z=Element of multivariate distributed rational function field. Nc                óp   — |€|j         j        }n|st          d¦  «        ‚|| _        || _        || _        d S )Nzzero denominator)rU   rd   ÚZeroDivisionErrorr.   r‰   rŠ   )rr   r.   r‰   rŠ   s       r-   Ú__init__zFracElement.__init__'  sB   € Øˆ=Ø”J”NˆEˆEØð 	8Ý#Ð$6Ñ7Ô7Ð7àˆŒ
ØˆŒ
ØˆŒ
ˆ
ˆ
r/   c                ó:   — |                       | j        ||¦  «        S rY   )Ú	__class__r.   ©Úfr‰   rŠ   s      r-   rb   zFracElement.raw_new1  s   € Ø�{Š{˜1œ7 E¨5Ñ1Ô1Ð1r/   c                ó<   —  | j         |                     |¦  «        Ž S rY   )rb   rŒ   rÊ   s      r-   r�   zFracElement.new4  s   € ØˆqŒy˜%Ÿ,š, uÑ-Ô-Ð.Ð.r/   c                óD   — | j         dk    rt          d¦  «        ‚| j        S )Nr©   zf.denom should be 1)rŠ   r}   r‰   ©rË   s    r-   r|   zFracElement.to_poly7  s#   € ØŒ7�aŠ<ˆ<ÝÐ2Ñ3Ô3Ð3ØŒwˆr/   c                ó4   — | j                              ¦   «         S rY   )r.   r½   rs   s    r-   ÚparentzFracElement.parent<  s   € ØŒz×#Ò#Ñ%Ô%Ð%r/   c                ó*   — | j         | j        | j        fS rY   )r.   r‰   rŠ   rs   s    r-   ru   zFracElement.__getnewargs__?  s   € Ø”
˜DœJ¨¬
Ð3Ð3r/   c                óh   — | j         }|€(t          | j        | j        | j        f¦  «        x| _         }|S rY   )r_   r^   r.   r‰   rŠ   )rr   r_   s     r-   rw   zFracElement.__hash__D  s4   € Ø”
ˆØˆ=Ý!% t¤z°4´:¸t¼zÐ&JÑ!KÔ!KÐKˆDŒJ˜Øˆr/   c                óŠ   — |                       | j                             ¦   «         | j                             ¦   «         ¦  «        S rY   )rb   r‰   ÚcopyrŠ   rs   s    r-   rÔ   zFracElement.copyJ  s.   € Ø�|Š|˜DœJŸOšOÑ-Ô-¨t¬z¯ªÑ/@Ô/@ÑAÔAÐAr/   c                ó¾   — | j         |k    r| S |j        }| j                             |¦  «        }| j                             |¦  «        }|                     ||¦  «        S rY   )r.   rU   r‰   rž   rŠ   r�   )rr   Ú	new_fieldÚnew_ringr‰   rŠ   s        r-   Ú	set_fieldzFracElement.set_fieldM  sY   € ØŒ:˜Ò"Ð"ØˆKà ”~ˆHØ”J×'Ò'¨Ñ1Ô1ˆEØ”J×'Ò'¨Ñ1Ô1ˆEØ—=’= ¨Ñ.Ô.Ð.r/   c                ó@   —  | j         j        |Ž  | j        j        |Ž z  S rY   )r‰   Úas_exprrŠ   )rr   r)   s     r-   rÚ   zFracElement.as_exprV  s&   € Ø!ˆtŒzÔ! 7Ð+Ð,>¨D¬JÔ,>ÀÐ,HÑHÐHr/   c                óÖ   — t          |t          ¦  «        r0| j        |j        k    r | j        |j        k    o| j        |j        k    S | j        |k    o| j        | j        j        j        k    S rY   )rg   r`   r.   r‰   rŠ   rU   rd   ©rË   Úgs     r-   r�   zFracElement.__eq__Y  s_   € Ý�a�Ñ%Ô%ð 	@¨!¬'°Q´WÒ*<Ð*<Ø”7˜aœgÒ%Ð<¨!¬'°Q´WÒ*<Ð<à”7˜a’<Ð? A¤G¨q¬w¬|Ô/?Ò$?Ð?r/   c                ó   — | |k     S rY   r4   rÜ   s     r-   rƒ   zFracElement.__ne___  s   € Ø˜’6ˆzÐr/   c                ó*   — t          | j        ¦  «        S rY   )Úboolr‰   rÎ   s    r-   Ú__bool__zFracElement.__bool__b  s   € Ý�A”G‰}Œ}Ðr/   c                óf   — | j                              ¦   «         | j                             ¦   «         fS rY   )rŠ   Úsort_keyr‰   rs   s    r-   rã   zFracElement.sort_keye  s)   € Ø”
×#Ò#Ñ%Ô% t¤z×':Ò':Ñ'<Ô'<Ð=Ð=r/   c                ó¤   — | j                              |¦  «        r0 ||                      ¦   «         |                     ¦   «         ¦  «        S t          S rY   )r.   rz   rã   ÚNotImplemented)Úf1Úf2Úops      r-   Ú_cmpzFracElement._cmph  sB   € ØŒ8×Ò˜rÑ"Ô"ð 	"Ø�2�b—k’k‘m”m R§[¢[¡]¤]Ñ3Ô3Ð3å!Ð!r/   c                ó8   — |                       |t          ¦  «        S rY   )ré   r   ©ræ   rç   s     r-   Ú__lt__zFracElement.__lt__n  ó   € Ø�wŠw�r�2‰ŒÐr/   c                ó8   — |                       |t          ¦  «        S rY   )ré   r   rë   s     r-   Ú__le__zFracElement.__le__p  rí   r/   c                ó8   — |                       |t          ¦  «        S rY   )ré   r	   rë   s     r-   Ú__gt__zFracElement.__gt__r  rí   r/   c                ó8   — |                       |t          ¦  «        S rY   )ré   r
   rë   s     r-   Ú__ge__zFracElement.__ge__t  rí   r/   c                óB   — |                       | j        | j        ¦  «        S ©z"Negate all coefficients in ``f``. ©rb   r‰   rŠ   rÎ   s    r-   Ú__pos__zFracElement.__pos__w  s   € à�yŠy˜œ !¤'Ñ*Ô*Ð*r/   c                óD   — |                       | j         | j        ¦  «        S rõ   rö   rÎ   s    r-   Ú__neg__zFracElement.__neg__{  s   € à�yŠy˜!œ'˜ 1¤7Ñ+Ô+Ð+r/   c                ó\  — | j         j        }	 |                     |¦  «        }d|d fS # t          $ ry |j        sn|j        rg|                     ¦   «         }	 |                     |¦  «        }d|                     |¦  «        |                     |¦  «        fcY S # t          $ r Y nw xY wY dS w xY w)Nr©   éÿÿÿÿ)r   NN)	r.   r*   r�   r   r“   r”   r•   r‰   rŠ   )rr   r†   r*   r–   s       r-   Ú_extract_groundzFracElement._extract_ground  sê   € Ø”Ô"ˆð	$Ø—n’n WÑ-Ô-ˆGð �g˜tÐ#Ð#øõ ð 	!ð 	!ð 	!Ø”?ð X vÔ'=ð XØ%×/Ò/Ñ1Ô1�ðXØ*×2Ò2°7Ñ;Ô;�Gð ˜|×1Ò1°'Ñ:Ô:¸L×<NÒ<NÈwÑ<WÔ<WÐWÐWÐWÐWøõ &ð ð ð Ø�Dðøøøð
 !�=�=ð	!øøøs3   Ž( ¨,B+ÁBÁ*+B+Â
B$Â!B+Â#B$Â$B+Â*B+c                óÌ  — | j         }|s| S | s|S |                     |¦  «        rx| j        |j        k    r(|                      | j        |j        z   | j        ¦  «        S |                      | j        |j        z  | j        |j        z  z   | j        |j        z  ¦  «        S |j                             |¦  «        r+|                      | j        | j        |z  z   | j        ¦  «        S t          |t          ¦  «        r€t          |j        t          ¦  «        r|j        j         |j         k    rnªt          |j         j        t          ¦  «        r*|j         j        j         |k    r| 
                    | ¦  «        S t          S t          |t          ¦  «        rEt          |j        t          ¦  «        r|j        j        |j        k    rn| 
                    | ¦  «        S |  
                    |¦  «        S )z(Add rational functions ``f`` and ``g``. )r.   rz   rŠ   r�   r‰   rU   rg   r`   r*   r   Ú__radd__rå   r   r   ©rË   rÝ   r.   s      r-   Ú__add__zFracElement.__add__“  s©  € à”ˆàð 	)ØˆHØð 	)ØˆHØ×Ò˜aÑ Ô ð 	)ØŒw˜!œ'Ò!Ð!Ø—u’u˜QœW q¤wÑ.°´Ñ8Ô8Ð8à—u’u˜QœW Q¤W™_¨q¬w°q´w©Ñ>ÀÄÈÌÁÑPÔPÐPØŒZ×"Ò" 1Ñ%Ô%ð 	)Ø—5’5˜œ 1¤7¨1¡9Ñ,¨a¬gÑ6Ô6Ð6å˜!�[Ñ)Ô)ð )Ý˜eœl­MÑ:Ô:ð *¸u¼|Ô?QÐUVÔU\Ò?\Ð?\ØÝ ¤¤µÑ>Ô>ð *À1Ä7Ä>ÔCWÐ[`ÒC`ÐC`ØŸ:š: a™=œ=Ð(å)Ð)Ý˜A�{Ñ+Ô+ð )Ý˜eœl­NÑ;Ô;ð )ÀÄÔ@QÐUVÔU[Ò@[Ð@[ØàŸ:š: a™=œ=Ð(à�zŠz˜!‰}Œ}Ðr/   c                óž  — | j         j                             |¦  «        r+|                      | j        | j        |z  z   | j        ¦  «        S |                      |¦  «        \  }}}|dk    r+|                      | j        | j        |z  z   | j        ¦  «        S |st          S |                      | j        |z  | j        |z  z   | j        |z  ¦  «        S ©Nr©   ©r.   rU   rz   r�   r‰   rŠ   rü   rå   ©rË   Úcrè   Úg_numerÚg_denoms        r-   rþ   zFracElement.__radd__²  s¿   € ØŒ7Œ<×"Ò" 1Ñ%Ô%ð 	7Ø—5’5˜œ 1¤7¨1¡9Ñ,¨a¬gÑ6Ô6Ð6à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜œ 1¤7¨7¡?Ñ2°A´GÑ<Ô<Ð<Øð 	MÝ!Ð!à—5’5˜œ ™¨1¬7°7©?Ñ:¸A¼GÀG¹OÑLÔLÐLr/   c                ó¬  — | j         }|s| S | s| S |                     |¦  «        rx| j        |j        k    r(|                      | j        |j        z
  | j        ¦  «        S |                      | j        |j        z  | j        |j        z  z
  | j        |j        z  ¦  «        S |j                             |¦  «        r+|                      | j        | j        |z  z
  | j        ¦  «        S t          |t          ¦  «        r€t          |j        t          ¦  «        r|j        j         |j         k    rnªt          |j         j        t          ¦  «        r*|j         j        j         |k    r| 
                    | ¦  «        S t          S t          |t          ¦  «        rEt          |j        t          ¦  «        r|j        j        |j        k    rn| 
                    | ¦  «        S |                      |¦  «        \  }}}|dk    r+|                      | j        | j        |z  z
  | j        ¦  «        S |st          S |                      | j        |z  | j        |z  z
  | j        |z  ¦  «        S )z-Subtract rational functions ``f`` and ``g``. r©   )r.   rz   rŠ   r�   r‰   rU   rg   r`   r*   r   Ú__rsub__rå   r   r   rü   ©rË   rÝ   r.   rè   r  r  s         r-   Ú__sub__zFracElement.__sub__¿  s  € à”ˆàð 	)ØˆHØð 	)Ø�2ˆIØ×Ò˜aÑ Ô ð 	)ØŒw˜!œ'Ò!Ð!Ø—u’u˜QœW q¤wÑ.°´Ñ8Ô8Ð8à—u’u˜QœW Q¤W™_¨q¬w°q´w©Ñ>ÀÄÈÌÁÑPÔPÐPØŒZ×"Ò" 1Ñ%Ô%ð 	)Ø—5’5˜œ 1¤7¨1¡9Ñ,¨a¬gÑ6Ô6Ð6å˜!�[Ñ)Ô)ð )Ý˜eœl­MÑ:Ô:ð *¸u¼|Ô?QÐUVÔU\Ò?\Ð?\ØÝ ¤¤µÑ>Ô>ð *À1Ä7Ä>ÔCWÐ[`ÒC`ÐC`ØŸ:š: a™=œ=Ð(å)Ð)Ý˜A�{Ñ+Ô+ð )Ý˜eœl­NÑ;Ô;ð )ÀÄÔ@QÐUVÔU[Ò@[Ð@[ØàŸ:š: a™=œ=Ð(à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜œ 1¤7¨7¡?Ñ2°A´GÑ<Ô<Ð<Øð 	MÝ!Ð!à—5’5˜œ ™¨1¬7°7©?Ñ:¸A¼GÀG¹OÑLÔLÐLr/   c                ó¤  — | j         j                             |¦  «        r,|                      | j         | j        |z  z   | j        ¦  «        S |                      |¦  «        \  }}}|dk    r,|                      | j         | j        |z  z   | j        ¦  «        S |st          S |                      | j         |z  | j        |z  z   | j        |z  ¦  «        S r  r  r  s        r-   r	  zFracElement.__rsub__å  sÆ   € ØŒ7Œ<×"Ò" 1Ñ%Ô%ð 	8Ø—5’5˜!œ'˜ A¤G¨A¡IÑ-¨q¬wÑ7Ô7Ð7à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜!œ'˜ A¤G¨G¡OÑ3°Q´WÑ=Ô=Ð=Øð 	NÝ!Ð!à—5’5˜!œ'˜ 'Ñ)¨A¬G°G©OÑ;¸Q¼WÀW¹_ÑMÔMÐMr/   c                ó2  — | j         }| r|s|j        S |                     |¦  «        r0|                      | j        |j        z  | j        |j        z  ¦  «        S |j                             |¦  «        r#|                      | j        |z  | j        ¦  «        S t          |t          ¦  «        r€t          |j	        t          ¦  «        r|j	        j         |j         k    rnªt          |j         j	        t          ¦  «        r*|j         j	        j         |k    r|                     | ¦  «        S t          S t          |t          ¦  «        rEt          |j	        t          ¦  «        r|j	        j        |j        k    rn|                     | ¦  «        S |                      |¦  «        S )z-Multiply rational functions ``f`` and ``g``. )r.   ra   rz   r�   r‰   rŠ   rU   rg   r`   r*   r   Ú__rmul__rå   r   r   rÿ   s      r-   Ú__mul__zFracElement.__mul__ò  sd  € à”ˆàð 	)˜ð 	)Ø”:ÐØ×Ò˜aÑ Ô ð 	)Ø—5’5˜œ ¤™¨!¬'°!´'©/Ñ:Ô:Ð:ØŒZ×"Ò" 1Ñ%Ô%ð 	)Ø—5’5˜œ ™ A¤GÑ,Ô,Ð,å˜!�[Ñ)Ô)ð )Ý˜eœl­MÑ:Ô:ð *¸u¼|Ô?QÐUVÔU\Ò?\Ð?\ØÝ ¤¤µÑ>Ô>ð *À1Ä7Ä>ÔCWÐ[`ÒC`ÐC`ØŸ:š: a™=œ=Ð(å)Ð)Ý˜A�{Ñ+Ô+ð )Ý˜eœl­NÑ;Ô;ð )ÀÄÔ@QÐUVÔU[Ò@[Ð@[ØàŸ:š: a™=œ=Ð(à�zŠz˜!‰}Œ}Ðr/   c                óh  — | j         j                             |¦  «        r#|                      | j        |z  | j        ¦  «        S |                      |¦  «        \  }}}|dk    r#|                      | j        |z  | j        ¦  «        S |st          S |                      | j        |z  | j        |z  ¦  «        S r  r  r  s        r-   r  zFracElement.__rmul__  s¥   € ØŒ7Œ<×"Ò" 1Ñ%Ô%ð 	-Ø—5’5˜œ ™ A¤GÑ,Ô,Ð,à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜œ ™¨!¬'Ñ2Ô2Ð2Øð 	;Ý!Ð!à—5’5˜œ ™¨!¬'°'©/Ñ:Ô:Ð:r/   c                óæ  — | j         }|st          ‚|                     |¦  «        r0|                      | j        |j        z  | j        |j        z  ¦  «        S |j                             |¦  «        r#|                      | j        | j        |z  ¦  «        S t          |t          ¦  «        r€t          |j	        t          ¦  «        r|j	        j         |j         k    rnªt          |j         j	        t          ¦  «        r*|j         j	        j         |k    r|                     | ¦  «        S t          S t          |t          ¦  «        rEt          |j	        t          ¦  «        r|j	        j        |j        k    rn|                     | ¦  «        S |                      |¦  «        \  }}}|dk    r#|                      | j        | j        |z  ¦  «        S |st          S |                      | j        |z  | j        |z  ¦  «        S )z0Computes quotient of fractions ``f`` and ``g``. r©   )r.   rÆ   rz   r�   r‰   rŠ   rU   rg   r`   r*   r   Ú__rtruediv__rå   r   r   rü   r
  s         r-   Ú__truediv__zFracElement.__truediv__  s¼  € à”ˆàð 	-Ý#Ð#Ø×Ò˜aÑ Ô ð 	-Ø—5’5˜œ ¤™¨!¬'°!´'©/Ñ:Ô:Ð:ØŒZ×"Ò" 1Ñ%Ô%ð 	-Ø—5’5˜œ !¤'¨!¡)Ñ,Ô,Ð,å˜!�[Ñ)Ô)ð -Ý˜eœl­MÑ:Ô:ð *¸u¼|Ô?QÐUVÔU\Ò?\Ð?\ØÝ ¤¤µÑ>Ô>ð *À1Ä7Ä>ÔCWÐ[`ÒC`ÐC`ØŸ>š>¨!Ñ,Ô,Ð,å)Ð)Ý˜A�{Ñ+Ô+ð -Ý˜eœl­NÑ;Ô;ð -ÀÄÔ@QÐUVÔU[Ò@[Ð@[ØàŸ>š>¨!Ñ,Ô,Ð,à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜œ !¤'¨'¡/Ñ2Ô2Ð2Øð 	;Ý!Ð!à—5’5˜œ ™¨!¬'°'©/Ñ:Ô:Ð:r/   c                óz  — | st           ‚| j        j                             |¦  «        r#|                      | j        |z  | j        ¦  «        S |                      |¦  «        \  }}}|dk    r#|                      | j        |z  | j        ¦  «        S |st          S |                      | j        |z  | j        |z  ¦  «        S r  )	rÆ   r.   rU   rz   r�   rŠ   r‰   rü   rå   r  s        r-   r  zFracElement.__rtruediv__:  s³   € Øð 	-Ý#Ð#ØŒWŒ\×$Ò$ QÑ'Ô'ð 	-Ø—5’5˜œ ™ A¤GÑ,Ô,Ð,à ×0Ò0°Ñ3Ô3ÑˆˆG�Wà�Š7ˆ7Ø—5’5˜œ ™¨!¬'Ñ2Ô2Ð2Øð 	;Ý!Ð!à—5’5˜œ ™¨!¬'°'©/Ñ:Ô:Ð:r/   c                ó¼   — |dk    r&|                       | j        |z  | j        |z  ¦  «        S | st          ‚|                       | j        | z  | j        | z  ¦  «        S )z+Raise ``f`` to a non-negative power ``n``. r   )rb   r‰   rŠ   rÆ   )rË   Úns     r-   Ú__pow__zFracElement.__pow__I  s]   € à�Š6ˆ6Ø—9’9˜QœW a™Z¨¬°!©Ñ4Ô4Ð4Øð 	7Ý#Ð#à—9’9˜QœW q b™[¨!¬'°A°2©+Ñ6Ô6Ð6r/   c                óì   — |                      ¦   «         }|                      | j                             |¦  «        | j        z  | j        | j                             |¦  «        z  z
  | j        dz  ¦  «        S )a  Computes partial derivative in ``x``.

        Examples
        ========

        >>> from sympy.polys.fields import field
        >>> from sympy.polys.domains import ZZ

        >>> _, x, y, z = field("x,y,z", ZZ)
        >>> ((x**2 + y)/(z + 1)).diff(x)
        2*x/(z + 1)

        r@   )r|   r�   r‰   ÚdiffrŠ   )rË   Úxs     r-   r  zFracElement.diffR  sW   € ð �IŠI‰KŒKˆØ�uŠu�Q”W—\’\ !‘_”_ Q¤WÑ,¨q¬w°q´w·|²|ÀA±´Ñ/FÑFÈÌÐQRÉ
ÑSÔSÐSr/   c                ó  — dt          |¦  «        cxk     r| j        j        k    r=n n:|                      t	          t          | j        j        |¦  «        ¦  «        ¦  «        S t          d| j        j        ›dt          |¦  «        ›�¦  «        ‚)Nr   z expected at least 1 and at most z values, got )rF   r.   rW   Úevaluater<   rf   r'   r}   )rË   r=   s     r-   rÃ   zFracElement.__call__c  s…   € Ø�s�6‰{Œ{Ð+Ð+Ò+Ð+˜aœgœmÒ+Ð+Ð+Ð+Ð+Ø—:’:�d¥3 q¤w¤|°VÑ#<Ô#<Ñ=Ô=Ñ>Ô>Ð>å�*ÐTUÔT[ÔTaÐTaÐTaÕcfÐgmÑcnÔcnÐcnÐoÑpÔpÐpr/   c                ó¤  — t          |t          ¦  «        rC|€Ad„ |D ¦   «         }| j                             |¦  «        | j                             |¦  «        }}nJ|                     ¦   «         }| j                             ||¦  «        | j                             ||¦  «        }}|j                             ¦   «         }|                     ||¦  «        S )Nc                ó@   — g | ]\  }}|                      ¦   «         |f‘ŒS r4   ©r|   ©r6   ÚXÚas      r-   r8   z(FracElement.evaluate.<locals>.<listcomp>k  ó)   € Ð2Ð2Ð2¡t q¨!�1—9’9‘;”; Ð"Ð2Ð2Ð2r/   )	rg   r<   r‰   r  rŠ   r|   rU   rš   r�   )rË   r  r"  r‰   rŠ   r.   s         r-   r  zFracElement.evaluatei  s¸   € Ý�a�ÑÔð 	J 1 9Ø2Ð2¨qÐ2Ñ2Ô2ˆAØœ7×+Ò+¨AÑ.Ô.°´×0@Ò0@ÀÑ0CÔ0C�5ˆEˆEà—	’	‘”ˆAØœ7×+Ò+¨A¨qÑ1Ô1°1´7×3CÒ3CÀAÀqÑ3IÔ3I�5ˆEà”
×#Ò#Ñ%Ô%ˆØ�yŠy˜ Ñ&Ô&Ð&r/   c                ór  — t          |t          ¦  «        rC|€Ad„ |D ¦   «         }| j                             |¦  «        | j                             |¦  «        }}nJ|                     ¦   «         }| j                             ||¦  «        | j                             ||¦  «        }}|                      ||¦  «        S )Nc                ó@   — g | ]\  }}|                      ¦   «         |f‘ŒS r4   r  r   s      r-   r8   z$FracElement.subs.<locals>.<listcomp>v  r#  r/   )rg   r<   r‰   ÚsubsrŠ   r|   r�   )rË   r  r"  r‰   rŠ   s        r-   r&  zFracElement.subst  s™   € Ý�a�ÑÔð 	B 1 9Ø2Ð2¨qÐ2Ñ2Ô2ˆAØœ7Ÿ<š<¨™?œ?¨A¬G¯LªL¸©O¬O�5ˆEˆEà—	’	‘”ˆAØœ7Ÿ<š<¨¨1Ñ-Ô-¨q¬w¯|ª|¸A¸qÑ/AÔ/A�5ˆEà�uŠu�U˜EÑ"Ô"Ð"r/   c                ó   — t           ‚rY   )r›   )rË   r  r"  s      r-   ÚcomposezFracElement.compose~  s   € Ý!Ð!r/   rY   ))rZ   r¿   rÀ   rÁ   rÇ   rb   r�   r|   rÐ   ru   r_   rw   rÔ   rØ   rÚ   r�   rƒ   rá   rã   ré   rì   rï   rñ   ró   r÷   rù   rü   r   rþ   r  r	  r  r  r  r  r  r  rÃ   r  r&  r(  r4   r/   r-   r`   r`   $  sp  € € € € € ØGÐGðð ð ð ð2ð 2ð 2ð 2ð/ð /ð /ðð ð ð
&ð &ð &ð4ð 4ð 4ð €Eðð ð ðBð Bð Bð/ð /ð /ðIð Ið Ið@ð @ð @ðð ð ðð ð ð>ð >ð >ð"ð "ð "ðð ð ðð ð ðð ð ðð ð ð+ð +ð +ð,ð ,ð ,ð$ð $ð $ð(ð ð ð>Mð Mð Mð$Mð $Mð $MðLNð Nð Nðð ð ð4;ð ;ð ;ð;ð ;ð ;ðB;ð ;ð ;ð7ð 7ð 7ðTð Tð Tð"qð qð qð	'ð 	'ð 	'ð 	'ð#ð #ð #ð #ð"ð "ð "ð "ð "ð "r/   r`   N)?rÁ   Ú
__future__r   Ú	functoolsr   Úoperatorr   r   r   r   r	   r
   Úsympy.core.exprr   Úsympy.core.modr   Úsympy.core.numbersr   Úsympy.core.singletonr   Úsympy.core.symbolr   Úsympy.core.sympifyr   r   Ú&sympy.functions.elementary.exponentialr   Úsympy.polys.domains.domainr   Ú!sympy.polys.domains.domainelementr   Ú!sympy.polys.domains.fractionfieldr   Ú"sympy.polys.domains.polynomialringr   Úsympy.polys.constructorr   Úsympy.polys.orderingsr   r   Úsympy.polys.polyerrorsr   Úsympy.polys.polyoptionsr   Úsympy.polys.polyutilsr   Úsympy.polys.ringsr   r   Úsympy.printing.defaultsr    Úsympy.utilitiesr!   Úsympy.utilities.iterablesr"   Úsympy.utilities.magicr#   r.   r1   r9   rS   r&   r`   r4   r/   r-   ú<module>rA     sã  ðØ 'Ð 'à "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð Ð Ð à -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -à  Ð  Ð  Ð  Ð  Ð  Ø Ð Ð Ð Ð Ð Ø #Ð #Ð #Ð #Ð #Ð #Ø "Ð "Ð "Ð "Ð "Ð "Ø $Ð $Ð $Ð $Ð $Ð $Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø :Ð :Ð :Ð :Ð :Ð :Ø -Ð -Ð -Ð -Ð -Ð -Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø =Ð =Ð =Ð =Ð =Ð =Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø :Ð :Ð :Ð :Ð :Ð :Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø "Ð "Ð "Ð "Ð "Ð "Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø )Ð )Ð )Ð )Ð )Ð )àØ!$ð #ð #ð #ñ „ð#ð
 Ø"%ð !ð !ð !ñ „ð!ð
 Ø"%ð ð ð ñ „ðð ð2ð 2ñ „ð2ðj{?ð {?ð {?ð {?ð {?�ñ {?ô {?ð {?ðz["ð ["ð ["ð ["ð ["�- °+ñ ["ô ["ð ["ð ["ð ["r/   