a
    kº”hý‘  ã                   @   s¨  d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	m
Z
mZ d dlmZ d dlmZmZ d dlmZmZ d dlmZmZmZ d d	lmZmZ d d
lmZ d dlmZmZ d dl m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+ d dl,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl m7Z7m8Z8m9Z9m:Z:m;Z; d dl<m=Z>m?Z@mAZBmCZC d dlDmEZE d dlFmGZGmHZH d dlImJZJmKZKmLZLmMZM eCƒ ZNdd„ ZOdd„ ZPdd„ ZQdd„ ZRdd „ ZSd!d"„ ZTd#d$„ ZUd%d&„ ZVd'd(„ ZWd)d*„ ZXd+d,„ ZYd-d.„ ZZd/d0„ Z[d1d2„ Z\eHd3d4„ ƒZ]d5d6„ Z^d7d8„ Z_d9d:„ Z`d;d<„ Zad=d>„ Zbd]d@dA„ZcdBdC„ ZddDdE„ ZedFdG„ ZfdHdI„ ZgdJdK„ ZhdLdM„ ZidNdO„ ZjdPdQ„ ZkdRdS„ ZldTdU„ ZmdVdW„ ZndXdY„ ZodZd[„ Zpd\S )^é    )Úproduct)ÚSum)ÚdiffÚexpand_func)ÚIÚRationalÚooÚpi)ÚS)ÚSymbolÚsymbols)Ú	conjugateÚ
polar_lift)ÚexpÚ	exp_polarÚlog)ÚcoshÚsinh)Úsqrt)ÚcosÚsin)ÚbesseliÚbesseljÚbesselkÚbesselyÚhankel1Úhankel2Úhn1Úhn2ÚjnÚjn_zerosÚyn)ÚgammaÚ
uppergamma)Úhyper)ÚIntegral)ÚO)Úseries)ÚairyaiÚairybiÚairyaiprimeÚairybiprimeÚmarcumq)Úrandom_complex_numberÚverify_numericallyÚtest_derivative_numericallyÚ_randint)Ú
besselsimp)ÚraisesÚslow)ÚzÚnÚkÚxc                  C   s\   t tttttfD ]} t| tƒ tƒtƒsJ ‚qt	t
ttfD ]} t| tddƒtƒtƒs8J ‚q8d S )Niöÿÿÿé
   )r   r   r   r   r   r   ÚtdÚrandcplxr4   r   r!   r   r   Úrandint©Úf© r>   úW/var/www/auris/lib/python3.9/site-packages/sympy/functions/special/tests/test_bessel.pyÚtest_bessel_rand!   s    r@   c                      sB   t tttttttfD ](‰ tt	‡ fdd„ƒ tt	‡ fdd„ƒ qd S )Nc                      s   ˆ dƒS )Né   r>   r>   r<   r>   r?   Ú<lambda>+   ó    z'test_bessel_twoinputs.<locals>.<lambda>c                      s   ˆ dddƒS )NrA   é   é   r>   r>   r<   r>   r?   rB   ,   rC   )
r   r   r   r   r   r   r   r!   r2   Ú	TypeErrorr>   r>   r<   r?   Útest_bessel_twoinputs)   s    rG   c                   C   s”   t dtƒ t¡dksJ ‚t dttƒƒ t¡td ks8J ‚t ddttƒ ƒ t¡ttƒks\J ‚t ttƒtt   t¡ddt ttd ƒ  ksJ ‚d S ©Nr   rA   rD   )r   r7   Úas_leading_termr   r   r4   r"   r>   r>   r>   r?   Útest_besselj_leading_term/   s     $rJ   c                   C   sŽ   t dtƒ t¡dttƒ dtdƒ  dtj  t ks:J ‚t dttƒƒ t¡dtt  ks^J ‚t ddttƒ ƒ t¡dtttƒ  ksŠJ ‚d S )Nr   rD   rA   éþÿÿÿéÿÿÿÿ)	r   r7   rI   r   r
   Ú
EulerGammar	   r   r   r>   r>   r>   r?   Útest_bessely_leading_term8   s    :$rN   c                   C   s`   t dtƒ t¡dksJ ‚t dttƒƒ t¡td ks8J ‚t ddttƒ ƒ t¡ttƒks\J ‚d S rH   )r   r7   rI   r   r   r>   r>   r>   r?   Útest_besseli_leading_term>   s     rO   c                  C   s¢  t dtƒ t¡ttƒ tj tdƒ ks,J ‚t dttƒƒ t¡dt ksLJ ‚t ddttƒ ƒ t¡ddttƒ  ksxJ ‚t tdƒd tƒ t¡dtdƒd  ttdƒd ƒ ttdƒd   ksÄJ ‚t tdƒd tƒ t¡t tdƒ d tƒ t¡ksúJ ‚t dt	tƒƒ t¡t ddƒksJ ‚t ddt ƒ t¡tt
ƒtdt  ƒ tdt ƒ ksZJ ‚t ddttƒ ƒ t¡tt
ƒtdt  ƒ tdt ƒ ksšJ ‚tddd} t | tƒ t¡ | tdƒd	 i¡t tdƒd	 tƒ t¡ t¡ksìJ ‚t | tƒ t¡ | td
ƒd	 i¡t td
ƒd	 tƒ t¡ t¡ks2J ‚t | tƒ t¡ | di¡t dtƒ t¡ t¡kshJ ‚t | tƒ t¡ | di¡t dtƒ t¡ t¡ksžJ ‚d S )Nr   rD   rA   é   rE   ÚnzT)Znonzeroé   iñÿÿÿrK   )r   r7   rI   r   r
   rM   r   r   r"   r   r	   r   r   Úsubsr'   )rQ   r>   r>   r?   Útest_besselk_leading_termD   s    , ,L6$<@FF6rT   c                   C   sP  t dtƒ t¡dtd d  td d  ttd ƒ ks<J ‚t dtd ƒ t¡dtd d  td	 d  ttd ƒ ks|J ‚t dtd t ƒ t¡dtd d  td
 d  dtd  d  td d  ttd ƒ ksÜJ ‚t dttƒt ƒjtdddtd  dtd  d  dtd
  d  ttd
dƒ d  ttddƒ d  dttddƒ  d  ttd ƒ kspJ ‚t dtdt  ƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ ksÖJ ‚t dtdt ƒƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ ks<J ‚t dttƒƒ t¡td dtd
  d  dtd  d  ttd ƒ ksŠJ ‚t ddttƒ ƒ t¡ttƒttd
dƒ d  ttddƒ d  ttddƒ d  ttddƒ d  ttd dƒ d!  ttd ƒ ksJ ‚t d"ttƒƒjtddt dttƒƒjtddksLJ ‚d S )#Nr   rA   rD   é   é@   é   çš™™™™™ñ?çš™™™™™@çš™™™™™@rE   é   rP   é   ©r5   é×   é 	  é   rR   é€  é/   é)   éÀ   é   é`   é0   éI   é€  é   é   é	   é@  é   é€Q rK   )r   r7   r'   r&   r   r   r   r   r>   r>   r>   r?   Útest_besselj_seriesU   sZ    <@0ÿ
ÿ
ÿ
4ÿÿÿþ
þ@ÿ
ÿ0ÿÿ
ÿN.ÿÿÿþ
þrp   c                  C   s  dt j t dtdƒ t  dttƒ t  } tdtƒjtdd| td ttƒ dt  ddt j  dt   tdƒdt     ttd ttƒ ƒ ksžJ ‚tdtƒjtdddtt  tttƒt tdƒt  ddt j  dt     td ttƒ dt  t d	ƒd dt j  d
t   tdƒdt     ttd ttƒ ƒ ksRJ ‚tdtƒjtdddttd   dt  td ttƒdt  tdƒdt   t dƒd dt j  dt     ttd ttƒ ƒ ksÞJ ‚tdtƒjtdddttd   dtt   tdt   td ttƒdt  tdƒdt   t dƒd dt j  dt     ttd ttƒ ƒ kszJ ‚tdtd ƒjtdddt j t dtdƒ t  dttƒ t  td dttƒ t ddt j  dt   tdƒdt     ttd ttƒ ƒ ksJ ‚tdtd t ƒjtdd| ddt j  td  dt  td dt     dt t  td ttƒ dt  dt  tdƒdt     td ttƒ t ddt   tdƒt    ttd ttƒ ƒ ksîJ ‚tdtdt  ƒjtdd| dt t  td ttƒ dt  ddt j  dt   tdƒdt   dt    ttd ttƒ ƒ ks|J ‚tdtdt ƒƒjtdd| tt  td ttƒ dt  ddt j  dt   tdƒdt   d	dt     ttd ttƒ ƒ ks
J ‚tdttƒƒjtdddttd  d td    ddt j  td  d td   t  tttƒt tdƒt    td dttƒ dt  ddt   t d	ƒd dt j  d
t   dtdƒ dt     ttd ttƒ ƒ ksøJ ‚tddt	tƒ ƒjtdddtt	tƒ  t	tƒttƒt ddt j  t    tt dƒd  ttƒ dt  t d	ƒd dt j  dt     tt d	ƒd  ttƒdt  t dƒd dt j  dt     ttd ttƒ ƒ ksâJ ‚tdttƒƒjtddtdttƒƒjtddksJ ‚d S )NrD   r   rU   r]   rA   rK   rE   é   rP   r\   éüÿÿÿiðÿÿÿé   rn   rW   rg   rX   rZ   gš™™™™™á¿rj   rL   éùÿÿÿrR   r8   )
r
   rM   r	   r   r7   r   r'   r&   r   r   ©Úconstr>   r>   r?   Útest_bessely_seriesh   sÐ    .*ÿÿÿ
4ÿÿÿÿþ<ÿÿÿ,
ÿ$ÿÿþ"ÿÿÿÿÿþ>0ÿ,þþÿ

ÿ,ÿÿÿþÿ,ÿ
ÿÿþ2&ÿÿBÿþý($ÿÿÿÿþýrw   c                   C   sÆ  t dtƒ t¡dtd d  td d  ttd ƒ ks<J ‚t dtd ƒ t¡dtd d  td	 d  ttd ƒ ks|J ‚t dtd t ƒ t¡dtd d  td
 d  dtd  d  td d  ttd ƒ ksÜJ ‚t dttƒt ƒjtdddtd  dtd  d  dtd
  d  ttd
ƒd  d  ttdƒd  d  dttdƒd   d  ttd ƒ ksvJ ‚t dtdt  ƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ ksÜJ ‚t dtdt ƒƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ ksBJ ‚t dttƒƒ t¡td td
 d  dtd  d  ttd ƒ ksŒJ ‚t ddttƒ ƒ t¡ttƒttd
ƒd  d  ttdƒd  d  ttdƒd  d  ttdƒd  d  ttdƒd  d   ttd ƒ ks"J ‚t d!ttƒƒjtddt dttƒƒjtddksXJ ‚t dtƒjttddtdƒtdt ƒdt td
ƒd  d"  d
dt tdƒd   d#  d$dt tdƒd   d%  tdt tdƒd  ttfƒ  t	tƒ dtt
ƒ  ks
J ‚t dtƒjtt ddtdƒtd&t ƒd&t td
ƒd  d"  d
d&t tdƒd   d#  d$d&t tdƒd   d%  td&t tdƒd  tt fƒ  t	t ƒ dtt
ƒ  ksÂJ ‚d S )'Nr   rA   rD   rU   rV   rW   rX   rY   rZ   rE   re   rP   r\   r]   éÙ   r_   é   rR   ra   é1   rb   rd   r`   rf   rg   ri   rj   rk   rl   rm   rn   ro   rK   rq   é€   r[   é   rL   )r   r7   r'   r&   r   r
   r   r   r   r   r	   r>   r>   r>   r?   Útest_besseli_seriesŒ   sv    <@@
ÿ
ÿ
4ÿÿÿÿ
ÿ@ÿ
ÿ@ÿ
ÿJDÿÿÿ
ÿ6<ÿÿÿÿ
ÿZÿÿÿ
ÿr}   c                  C   s„  t dƒtj t tƒ } tdtƒjtdd| td t tƒ d tjd  t dƒd  tdƒd    ttd t tƒ ƒ ks~J ‚tdtƒjtdddt tt tƒd t dƒd  tdƒd  tjd    td t tƒd tdƒd	  t dƒd  tjd    ttd t tƒ ƒ ksJ ‚tdtƒjtdddtd  tdƒd  td t tƒ d
 tjd
  t dƒd
  tdƒd    ttd t tƒ ƒ ksšJ ‚tdtƒjtdddtd  tdƒd  ttƒ ksÔJ ‚tdtd ƒjtddt dƒtj dt tƒ  td dt tƒ tjd  t dƒd  tdƒd    ttd t tƒ ƒ ksVJ ‚tdtd t ƒjtdd| ddtj  td d td d
    t td t tƒ d t dƒd  tdƒd    td t tƒ d tdƒd  t dƒd    ttd t tƒ ƒ ksJ ‚tdtdt  ƒjtdd| t td t tƒ d tdƒd  tjd  t dƒd    ttd t tƒ ƒ ksŒJ ‚tdt dt ƒƒjtdd| td  td t tƒ d tjd  tdƒd  t dƒd    ttd t tƒ ƒ ksJ ‚tddttƒ ƒjtddddttƒ  ttƒt tƒd tdƒd  tj   ttdƒd  t tƒd tdƒd
  tjd    ttdƒd  t tƒd tdƒd  tjd    ttd t tƒ ƒ ksÖJ ‚tdttƒƒjtddtdttƒƒjtddksJ ‚tdtd ƒjtdddtd  tdƒd  ttd ƒ ksNJ ‚tdtd ƒjtdddtd  tdƒd  td t tƒ d tjd
  t dƒd
  tdƒd    ttd t tƒ ƒ ksÐJ ‚td tdtƒ jtdddttd ƒ ksJ ‚tdtƒjtt	ddtdƒtt
ƒ tdt ƒdt tdƒd  d
  ddt tdƒd   d  ddt tdƒd   d  tdt tdƒd  tt	fƒ  tt ƒ d ks¶J ‚tdtƒjtt	 ddtdƒtt
ƒ t tdt ƒ tdt tdƒd   d
  dt dt tdƒd   d  dt dt tdƒd   d  tdt tdƒd  tt	 fƒ  tt ƒ d ks€J ‚d S )NrD   r   rU   r]   rA   rE   r\   rP   rV   rq   é    rX   rZ   gš™™™™™Ñ¿rR   rj   rs   é$   rK   rW   r{   r[   r|   rl   rL   )r   r
   rM   r7   r   r'   r&   r   r   r   r	   r   r   ru   r>   r>   r?   Útest_besselk_series£   sÐ    6ÿÿ
0
ÿÿ(ÿÿþ:ÿ
ÿ
ÿÿ:"
ÿ
ÿ
ÿÿþ$ÿÿ
ÿ
ÿÿ,þþ2
ÿÿ
ÿÿ$6ÿÿ($ÿ$ÿÿ0þþ6B‚2DÿÿÿÿÿPÿÿÿÿÿr€   c                   C   sÌ  t tdƒd tƒjtdddtdƒd  ttdƒd ƒ ttdƒd   dttdƒd ƒ ttdƒd   ddtdƒd     ttdƒ d ƒttdƒd   ddtdƒd     ttd ƒ ksÊJ ‚t tdƒd tƒjtddttd ƒttƒ ttt d ƒ ttdƒd  ttd ƒ d  ttd ƒ ks<J ‚t tdƒd ttƒƒjtddttd ƒttdƒd   ttd ƒttdƒd    ttd ƒttdƒd   d  ttd ƒttdƒd   d  ttd ƒttdƒd   d	  ttd ƒ ksJ ‚t tdƒd td ƒjtddttd ƒt ttd ƒt  ttd ƒ ksXJ ‚t tdƒ d tƒ t¡t tdƒd tƒ t¡ksJ ‚t tdƒ d tƒ t¡t tdƒd tƒ t¡ksÈJ ‚d S )
NrP   rE   rD   r]   rA   rU   rW   rR   rs   )r   r
   r7   r'   r"   r&   r   r	   r>   r>   r>   r?   Útest_besselk_frac_order_seriesÆ   s@    H6ÿ4þ
þ
,ÿÿ
ÿ8ÿÿþþ
þ,ÿ
ÿ8r   c                   C   sZ  t ttƒ t¡t td tƒd t td tƒd  ks8J ‚tttƒ t¡ttd tƒd ttd tƒd  kspJ ‚tttƒ t¡ttd tƒd ttd tƒd  ks¨J ‚tttƒ t¡ttd tƒ d ttd tƒd  ksâJ ‚tttƒ t¡ttd tƒd ttd tƒd  ksJ ‚tttƒ t¡ttd tƒd ttd tƒd  ksVJ ‚d S )NrA   rD   )	r   r5   r4   r   r   r   r   r   r   r>   r>   r>   r?   Ú	test_diffÕ   s    888::r‚   c                  C   sØ  t ttƒ t¡tdt t ƒtttj tƒ ks4J ‚t	ttƒ t
¡tdt t ƒt
ttj tƒ kshJ ‚tttƒ t ¡tt t t d ƒt tttƒt ƒ ks¤J ‚t ttƒ t¡ttt t d ƒtttt ƒt ƒ ksàJ ‚tƒ } tt | tƒt | tƒ t¡tƒs
J ‚tt | tƒt | tƒ t	¡tƒs.J ‚tt| tƒt| tƒ t ¡tƒsRJ ‚tt| tƒt| tƒ t	¡tƒsvJ ‚tt	| tƒt	| tƒ t ¡tƒsšJ ‚tt	| tƒt	| tƒ t¡tƒs¾J ‚tt| tƒt| tƒ t ¡tƒsâJ ‚tt| tƒt| tƒ t¡tƒsJ ‚tt| tƒt| tƒ t	¡tƒs*J ‚t
| tƒt
| tƒ t¡ksJJ ‚t| tƒt| tƒ t¡ksjJ ‚t| tƒt| tƒ t¡ksŠJ ‚t| tƒt| tƒ t
¡ksªJ ‚t| tƒt| tƒ t
¡ksÊJ ‚t| tƒt| tƒ t
¡ksêJ ‚| }t t	fD ]F}t|tƒt|tƒ |¡ksJ ‚t|tƒt|tƒ |¡ksöJ ‚qöt|tƒ t ¡tdƒttƒ tdt ƒ t |tj tƒ d ks„J ‚t|tƒ t	¡d|  tdƒ ttƒ tdt ƒ t	| tj tƒ d ksÔJ ‚tddd}tddƒ}||fD ]–}t t	fD ]†}t
|tƒt
|tƒ |¡ks"J ‚t|tƒt|tƒ |¡ksBJ ‚t|tƒt|tƒ |¡ksbJ ‚t|tƒt|tƒ |¡ksþJ ‚qþqòtt
tttftt
t t	fƒD ].\}}t||tƒ||tƒ |¡tƒs¤J ‚q¤d S )	NrD   rA   rL   r5   T©Úintegeréõÿÿÿr8   )r   r5   r4   Úrewriter   r   r	   r
   ÚHalfr   r!   r   r   r   r   r:   Útnr   r   r   r   r;   r   )ÚnuÚorderr=   ÚNÚriÚfuncZrefuncr>   r>   r?   Útest_rewriteÞ   sT    44&ÿ&ÿ$$$$$$$$$       $FP
   (
ÿrŽ   c                  C   sD  t ttjtƒ t¡ƒtdƒttƒ tt	ƒttƒ  ks:J ‚t t
tjtƒ t¡ƒtdƒ ttƒ tt	ƒttƒ  ksvJ ‚tttjtƒƒtdƒttƒ tt	ƒttƒ  ksªJ ‚tttddƒtƒƒtdƒttƒ tt	ƒttƒ  ksâJ ‚tttddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ksHJ ‚tttddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ks®J ‚tt
tjtƒƒtdƒttƒ  tt	ƒttƒ  ksæJ ‚tt
tddƒtƒƒtdƒttƒ tt	ƒttƒ  ks J ‚tt
tddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ks„J ‚tt
tddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ksêJ ‚tttjtƒƒtdƒttƒ tt	ƒttƒ  ks J ‚tttddƒtƒƒtdƒttƒ tt	ƒttƒ  ksZJ ‚tttddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ks¾J ‚tttddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   ks"J ‚tttjtƒƒtttddƒtƒƒ  krttt	ƒtt ƒ tdƒttƒ  kszn J ‚tttddƒtƒƒtttddƒtƒƒ  krîtdƒtt	ƒ td dt  d  tt ƒ dttddƒ   ksôn J ‚tdddd} t t| d tƒƒt| tƒd	|  d d	|  t| tƒ t t| d
 tƒ  t  ksXJ ‚t t| d tƒƒt| tƒ d|  d d|  t| tƒ t t| d
 tƒ  t  ks°J ‚t t| d tƒƒt| tƒd|  d d|  t| tƒ t t| d
 tƒ  t  ksJ ‚t t
| d tƒƒt
| tƒ d|  d d|  t
| tƒ t t
| d
 tƒ  t  ks^J ‚t t| tj tƒ t¡ƒtdƒttƒ tt t	 | tj  d ƒ ttt	 d ƒ t| tttt	 d ƒ ƒ tt	ƒ ksÜJ ‚t t| tj tƒ t¡ƒtdƒttƒ t| tƒ tt	ƒ ksJ ‚tddd}tddd}tddd}tt
ttfD ]H}|||ƒjdu shJ ‚||tƒjd u s~J ‚|ttƒjd u sNJ ‚qNttfD ]}|||ƒjdu s J ‚q t
tfD ]}|||ƒjd u sÆJ ‚qÆtt
ttfD ]N}t |ttƒƒ|ttddksJ ‚t |t tƒƒ|t tddksðJ ‚qðd S )NrD   rL   rP   rE   éûÿÿÿr5   T)r„   ÚpositiverK   rA   rU   Úr©ÚrealÚp©r   Úirƒ   F©Úevaluate)r   r   r
   r‡   r4   r†   r   r   r   r	   r   r!   r   r1   r   r   r   r   r   r   r   r   r   Úis_extended_realr7   r   )r5   r‘   r”   r–   Úbesselxr>   r>   r?   Útest_expand  s¦    ÿ ÿ48Jÿ
Jÿ
 ÿ
:Hÿ
Jÿ
6ÿ
Hÿ
Hÿ
ÿ
 ÿÿ
>þ<ÿ
>ÿ
<ÿ
>ÿ
*ÿÿÿÿ
 ÿ
"r›   c                  C   sš  dd„ } t ddddd}ttttfD ]<}tdtddƒ d ƒd }tt||t	ƒƒ||t	ƒƒs$J ‚q$| t
t|tƒƒt|d tƒd|d  t|d tƒ t  ƒs¢J ‚| t
t| tƒƒt| d tƒd| d  t| d tƒ t  ƒsêJ ‚| t
t|tƒƒt|d tƒ d|d  t|d tƒ t  ƒs.J ‚| t
t| tƒƒt| d tƒ d| d  t| d tƒ t  ƒszJ ‚| t
t|tƒƒt|d tƒd|d  t|d tƒ t  ƒs¼J ‚| t
t| tƒƒt| d tƒd| d  t| d tƒ t  ƒsJ ‚| t
t|tƒƒt|d tƒ d|d  t|d tƒ t  ƒsJJ ‚| t
t| tƒƒt| d tƒ d| d  t| d tƒ t  ƒs–J ‚d S )	Nc                 S   s   t | |ƒo| |kS ©N)rˆ   )ÚeqZansr>   r>   r?   Úchecke  s    ztest_slow_expand.<locals>.checkrA   r   rD   )ÚaÚbÚdÚcr…   r8   )r:   r   r   r   r   r
   r;   rˆ   r1   r4   r   r7   )rž   Zrnrš   rŒ   r>   r>   r?   Útest_slow_expandc  s:     *ÿ0ÿ,ÿ
2ÿ
*ÿ
0ÿ
,ÿ
2ÿr£   c                 C   s   t t| |ƒƒS rœ   )r   r   ©r5   r4   r>   r>   r?   Úmjnƒ  s    r¥   c                 C   s   t t| |ƒƒS rœ   )r   r!   r¤   r>   r>   r?   Úmyn‡  s    r¦   c                  C   sæ  t dƒ} tddƒdksJ ‚tddƒdks,J ‚tddƒtjks@J ‚t| dƒt| dddks\J ‚tdtƒdksnJ ‚tdt ƒdks‚J ‚td| ƒt| ƒ|  ksœJ ‚td| ƒt| ƒ| d  t| ƒ|   ksÆJ ‚td| ƒd| d  d|   t| ƒ d| d  t| ƒ  ksJ ‚td| ƒd	| d
  d| d   t| ƒ d|  d	| d   t| ƒ  ksRJ ‚td
| ƒd|  d| d   d| d   t| ƒ d| d
  d| d   t| ƒ  ksªJ ‚td| ƒd| d  d| d
   d	| d   t| ƒ d|  d| d   d| d   t| ƒ  ksJ ‚td| ƒd|  d| d   d| d   d| d   t| ƒ d| d  d| d
   d| d   t| ƒ  ks~J ‚ttt	| ƒƒtt	| ƒksœJ ‚tddƒ 
¡ tddƒksºJ ‚ttddƒ 
d¡gddt  gƒsâJ ‚d S )Nr4   r   rA   rL   Fr—   rD   rE   r[   rU   rW   éi   rP   é-   i—ÿÿÿr8   i±  i¤  i›(  rR   iu  éÒ   ie×ÿÿiì  é   ù       @      @ùÍÌÌÌÌÌ@333333Ó?gM°»’s¹?gM™â¶ê«?)r   r   r
   ÚComplexInfinityr   r¥   r   r   r   r5   Úevalfr   r   ©r4   r>   r>   r?   Útest_jn‹  s2    *@L.ÿ2&ÿ:*ÿÿr°   c                  C   sò   t dƒ} td| ƒt| ƒ |  ks$J ‚td| ƒt| ƒ | d  t| ƒ|   ksPJ ‚td| ƒd| d  d|   t| ƒ d| d  t| ƒ   ksJ ‚ttt| ƒƒtt| ƒks¬J ‚tddƒ ¡ tddƒksÈJ ‚ttddƒ d¡gd	d
t	  gƒsîJ ‚d S )Nr4   r   rA   rD   rE   r«   r¬   r8   gˆ=;€H¶Ç?gÔLs’Ž?)
r   r¦   r   r   r   r!   r5   r®   r   r   r¯   r>   r>   r?   Útest_yn¨  s    ,@ÿr±   c                   C   sD   t dƒtdtƒ ¡ v sJ ‚tdtƒdtd  dtd   ks@J ‚d S )Nr[   rE   rU   rW   rD   )r
   r¦   r	   Zatomsr>   r>   r>   r?   Útest_sympify_yn¶  s    r²   çíµ ÷Æ°>c                 C   s.   t | |ƒD ]\}}t|| ƒ|k s
 dS q
dS )NFT)ÚzipÚabs)rŸ   r    ZtolÚuÚvr>   r>   r?   r   »  s    r   c                   C   s|   t tddƒg d¢ƒsJ ‚t tddƒg d¢ƒs0J ‚t tddƒg d¢ƒsHJ ‚t tddƒg d	¢ƒs`J ‚t tddƒg d
¢ƒsxJ ‚d S )Nr   rU   )gz ‹üú!	@güÞ¦?û!@g/ö^|Ù"@güÞ¦?û!)@rA   )gP5z5@ù@g°¹2¨æ@gî@òèÎ%@gÁr„ä!,@rD   )góX32È@g@…#H¥0"@gö#EdX¥(@gÓØ^z/@rE   )gÿ¯:r¤ó@gW%‘}Õ$@g,¶IEce+@gæmrì0@)gÔ©¢x] @geqÿ‘éh'@g7¨ýÖN.@g©Á4M2@)r   r    r>   r>   r>   r?   Útest_jn_zerosÂ  s
    r¸   c                  C   sL  t dddt dƒt dddd  } }}ttfD ] }|ddƒtju sHJ ‚|d	dƒtju s\J ‚|d
dƒtju spJ ‚|ddƒtju s„J ‚|ddt  dƒtju s J ‚|d
t dƒtju s¸J ‚|dt dƒtju sÐJ ‚|| dƒtjkrð|| dƒtjksôJ ‚||dƒtjkr||dƒtjksJ ‚||dƒtju s.J ‚q.t	ddƒtj
u sHJ ‚tddƒtju s^J ‚t	tfD ]6}|dt dƒtju s„J ‚|tdƒtju sfJ ‚qftt	fD ]6}||tjƒtju sÂJ ‚||tj
ƒtju s¦J ‚q¦ttfD ]>}||ttj ƒtju sJ ‚||ttj
 ƒtju sæJ ‚qættfD ]r}|dtƒ|dtƒksLJ ‚|d
tƒ|dtƒksfJ ‚||  tƒ|| tƒks‚J ‚|| tƒ||tƒks.J ‚q.tt	fD ]„}|dtƒ|dtƒksÈJ ‚|d
tƒ|dtƒ ksäJ ‚||  tƒd|  || tƒ ksJ ‚|| tƒd| ||tƒ ksªJ ‚qªttfD ]6}||t ƒt | t|   ||tƒ ks8J ‚q8tdt ƒtdtƒksŒJ ‚tdt ƒtdtƒ ksªJ ‚tdt ƒtdtƒksÆJ ‚tdt ƒtdtƒ ksäJ ‚tdtt ƒtdtƒksJ ‚tdtt ƒttdtƒ ks$J ‚tdtt ƒt tdtƒ ksHJ ‚d S )Nr5   Trƒ   Úmr6   F)r„   Zzeror   gÍÌÌÌÌÌ @éýÿÿÿgffffff$ÀrA   rE   rK   rr   rU   rL   rD   )r   r   r   r
   ZOneZZeror­   r   ÚNaNr   ÚNegativeInfinityr   ÚInfinityr4   )r5   r¹   r6   r=   r>   r>   r?   Útest_bessel_evalÊ  sT    &$(  $(4"r¾   c                  C   s>   t tttttttfD ]$} | dtj	ƒ| dtj	ddksJ ‚qd S )NrA   Fr—   )
r   r   r   r   r   r   r!   r   r
   r»   r<   r>   r>   r?   Útest_bessel_nan  s    r¿   c                   C   sˆ  t dtƒ td¡dksJ ‚t dtƒ td¡dks4J ‚t dtƒ tt¡dksNJ ‚t tdƒd tƒ td¡dkspJ ‚t tdƒd tƒ td¡dks’J ‚t tdƒd tƒ tt¡dks´J ‚t tdt ƒ td¡dksÒJ ‚tdtƒ td¡dksìJ ‚tdtƒ td¡dksJ ‚tdtƒ td¡dks$J ‚tdtƒ td¡dks@J ‚tdtƒ td¡dks\J ‚tdtƒ td¡dksxJ ‚tdtƒ td¡dks”J ‚tdtd dt  ƒ td¡dks¼J ‚tdtƒ td¡dksØJ ‚t	ddƒ td	¡dksôJ ‚t
d
dtd  d ƒ td¡dksJ ‚tddt ƒ td¡dks<J ‚td	dt d ƒ td¡dks`J ‚tdtd d ƒ td
¡dks„J ‚d S )NrD   rA   Tr   FrE   rn   rU   rP   rW   rR   rl   rq   )r   r7   Zis_meromorphicr   r
   r   r   r   r   r   r   r   r   r!   r>   r>   r>   r?   Útest_meromorphic  s*    """(( $rÀ   c                  C   sd  t dƒ} t ddd}t ddd}t ddd}t d	dd
}ttttttfD ]d}|| dƒ ¡ |t| ƒdƒkslJ ‚|| |ƒ ¡ |t| ƒ|ƒksŒJ ‚|| |ƒ ¡ |t| ƒ|ƒksHJ ‚qHtdd}ttttfD ]Þ}|| dt	 ƒ ¡ |t| ƒdt	 ƒksðJ ‚|| dƒ ¡ |t| ƒdƒksJ ‚|| dƒ ¡ |t| ƒdƒks4J ‚|| |ƒ ¡ |t| ƒt|ƒƒksZJ ‚|| |ƒ ¡ |t| ƒ|ƒks|J ‚t
|| |ƒ ¡ |t| ƒt|ƒƒƒsÄJ ‚qÄt| dt	 ƒ ¡ tt| ƒdt	 ƒksÎJ ‚t| dƒ ¡ tt| ƒdƒksðJ ‚t| dƒ ¡ tt| ƒdƒksJ ‚t| |ƒ ¡ tt| ƒ|ƒks4J ‚t| |ƒ ¡ tt| ƒt|ƒƒksZJ ‚t
t| |ƒ ¡ tt| ƒt|ƒƒƒs‚J ‚t| dt	 ƒ ¡ tt| ƒdt	 ƒks¬J ‚t| dƒ ¡ tt| ƒdƒksÎJ ‚t| dƒ ¡ tt| ƒdƒksðJ ‚t| |ƒ ¡ tt| ƒ|ƒksJ ‚t| |ƒ ¡ tt| ƒt|ƒƒks8J ‚t
t| |ƒ ¡ tt| ƒt|ƒƒƒs`J ‚d S )Nr5   r4   F)Zextended_realr7   TÚyr•   Út©ÚnegativerL   g      à?)r    rA   r   )r   r   r   r   r   r   r   r   r:   r   rˆ   )r5   r4   r7   rÁ   rÂ   r=   Zrzr>   r>   r?   Útest_conjugate  s:      "
(""&"(*"""&(*"""&rÅ   c                  C   s¼  t ttƒtƒt ttƒksJ ‚tttƒtƒtttƒks8J ‚tddd} t | tdt t ƒt ƒt | tƒkslJ ‚t | ttƒƒt | tƒksˆJ ‚t| tdt t ƒt ƒt| tƒks°J ‚t| ttƒƒt| tƒksÌJ ‚dd„ }tdƒ}t |tdt t ƒt ƒt	dt t | ƒt |tƒ ksJ ‚t|tdt t ƒt ƒt	dt t | ƒt|tƒ ksXJ ‚|t dƒshJ ‚|t tƒsxJ ‚|t tƒsˆJ ‚|tdƒs˜J ‚|ttƒs¨J ‚|ttƒs¸J ‚d S )Nr5   Trƒ   rD   c                 S   s”   ddl m} |ddƒ}| ||ttt ƒ ƒ| ||tt t ƒ ƒ }d}| || | |t  ƒ| || | |t  ƒ }t| ¡ | ¡  ƒ ¡ dk S )Nr   )ÚuniformrA   rP   gVçž¯Ò<g»½×Ùß|Û=)Úsympy.core.randomrÆ   r   r   r	   rµ   r5   )r   ÚsrÆ   r¢   ÚexprZepsZexpr2r>   r>   r?   rˆ   N  s    
.0ztest_branching.<locals>.tnr‰   )
r   r   r6   r7   r   r   r   r	   r   r   )r5   rˆ   r‰   r>   r>   r?   Útest_branchingD  s"    ((>>rÊ   c                  C   s¶   t dƒ} t ddd}t ddd}tt| ƒƒtt| ƒƒks<J ‚t|ƒjsJJ ‚t|t|  ƒ ¡ t|t|  ƒd t|t|  ƒd  tt|t|  ƒt|t|  ƒ  d fks²J ‚d S )Nr4   r7   Tr’   rÁ   rD   )r   r   r(   r™   r   Zas_real_imag)r4   r7   rÁ   r>   r>   r?   Útest_airy_basea  s    &&þrË   c               
   C   sì  t ddd} t ddd}t ddd}tt| ƒtƒs6J ‚td	ƒd
tdd
ƒ d
ttdd
ƒƒ  ksbJ ‚ttƒd	ksrJ ‚tt ƒd	ks„J ‚tt| ƒ| ƒt| ƒksžJ ‚tt| ƒ| d	d
ƒd
tddƒ ttdd
ƒƒ dt	  d
tddƒ |  ttdd
ƒƒ dt	   t
| d
 ƒ ksJ ‚t| ƒ t¡d
tdd
ƒ  |  tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ  d
tdd
ƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   ks J ‚tt| ƒ t¡tƒsºJ ‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 ks$J ‚t| ƒ t¡|  ttdd
ƒd| td
dƒ  d
 ƒ d
| td
dƒ tdd
ƒ   | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ d
  ksºJ ‚t|ƒ t¡t|ƒttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 ksJ ‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ d| d tdd
ƒ | tdd
ƒ    tdd
tdd
ƒ  | tdd
ƒ  ƒ d d| d tdd
ƒ | tdd
ƒ   tdd
tdd
ƒ  | tdd
ƒ  ƒ d  ksèJ ‚d S )Nr4   Fr’   rÂ   TrÃ   r”   r•   r   rE   rA   rD   rP   rW   r>   rU   rl   rL   )r   Ú
isinstancer(   r   r"   r   r   r*   r'   r	   r&   r†   r$   r   r   r   r   r)   ©r4   rÂ   r”   r>   r>   r?   Útest_airyain  sR    ,Vÿ
@:ÿÿ
*"ÿÿÿ
B<ÿÿ
& ÿÿÿ
 TJÿÿrÎ   c                  C   sî  t ddd} t ddd}t ddd}tt| ƒtƒs6J ‚td	ƒd
tddƒ d
ttdd
ƒƒ  ksbJ ‚ttƒtu srJ ‚tt ƒd	ks„J ‚tt| ƒ| ƒt| ƒksžJ ‚tt| ƒ| d	d
ƒd
tdd
ƒ ttdd
ƒƒ dt	  d
tdd
ƒ |  ttdd
ƒƒ dt	   t
| d
 ƒ ksJ ‚t| ƒ t¡d
tddƒ |  tdtdd
ƒf| d
 d ƒ ttdd
ƒƒ d
tddƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   ksšJ ‚tt| ƒ t¡tƒs´J ‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 ksJ ‚t| ƒ t¡td
ƒ| ttdd
ƒd| td
dƒ  d
 ƒ | td
dƒ tdd
ƒ  | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ   d
 ks¶J ‚t|ƒ t¡td
ƒt|ƒ ttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 ks"J ‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒd| d tdd
ƒ | tdd
ƒ    tdd
tdd
ƒ  | tdd
ƒ  ƒ d d| d tdd
ƒ | tdd
ƒ   tdd
tdd
ƒ  | tdd
ƒ  ƒ d  ksêJ ‚d S )Nr4   Fr’   rÂ   TrÃ   r”   r•   r   rE   rP   rW   rD   rA   r>   rU   rl   rL   )r   rÌ   r)   r   r"   r   r   r+   r'   r	   r&   r†   r$   r   r(   r   r   r   rÍ   r>   r>   r?   Útest_airybi’  sV    ,Vÿ
::ÿÿ
*"ÿÿÿ
B8ÿÿÿ
. ÿÿÿ
 RJÿÿrÏ   c               
   C   sÜ  t ddd} t ddd}t ddd}tt| ƒtƒs6J ‚td	ƒd
tdd
ƒ  d
ttdd
ƒƒ  ksdJ ‚ttƒd	kstJ ‚tt| ƒ| ƒ| t| ƒ ks’J ‚tt| ƒ| d	d
ƒd
tdd
ƒ  d
ttdd
ƒƒ  d
tdd
ƒ | d  dttdd
ƒƒ   t	| d
 ƒ ksþJ ‚t| ƒ 
t¡d
tdd
ƒ | d  tdtdd
ƒf| d
 d ƒ dttdd
ƒƒ  d
tdd
ƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   ks’J ‚tt| ƒ 
t¡tƒs¬J ‚t|ƒ 
t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 ksJ ‚t| ƒ 
t¡| d ttdd
ƒd| td
dƒ  d
 ƒ d
| td
dƒ tdd
ƒ   | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ d
  ks®J ‚t|ƒ 
t¡|ttdd
ƒd|td
dƒ  d
 ƒ ttdd
ƒd|td
dƒ  d
 ƒ  d
 ksJ ‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ| tdd
ƒ | d tdd
ƒ  d  tdd
tdd
ƒ  | tdd
ƒ  ƒ d | tdd
ƒ | d tdd
ƒ  d tdd
tdd
ƒ  | tdd
ƒ  ƒ d  ksØJ ‚d S )Nr4   Fr’   rÂ   TrÃ   r”   r•   r   rE   rD   rA   rW   r>   rP   rl   rL   rK   )r   rÌ   r*   r   r"   r   r   r(   r'   r&   r†   r$   r   r   r   r   r+   rÍ   r>   r>   r?   Útest_airyaiprime¶  sH    .TÿB:ÿÿ
*"ÿÿÿ
D<ÿÿ
Lÿ
 RJÿÿrÐ   c                  C   sê  t ddd} t ddd}t ddd}tt| ƒtƒs6J ‚td	ƒd
tddƒ ttdd
ƒƒ ks^J ‚ttƒtu snJ ‚tt ƒd	ks€J ‚tt| ƒ| ƒ| t| ƒ ksžJ ‚tt| ƒ| d	d
ƒd
tddƒ ttdd
ƒƒ d
tddƒ | d  dttdd
ƒƒ   t	| d
 ƒ ksJ ‚t| ƒ 
t¡d
tddƒ | d  tdtdd
ƒf| d
 d ƒ dttdd
ƒƒ  d
tddƒ tdtdd
ƒf| d
 d ƒ ttdd
ƒƒ  ks–J ‚tt| ƒ 
t¡tƒs°J ‚t|ƒ 
t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 ksJ ‚t| ƒ 
t¡td
ƒ| d ttdd
ƒd| td
dƒ  d
 ƒ | td
dƒ tdd
ƒ  | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ   d
 ks¶J ‚t|ƒ 
t¡td
ƒ| ttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 ksJ ‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ| tdd
ƒ | d tdd
ƒ  d  tdd
tdd
ƒ  | tdd
ƒ  ƒ d | tdd
ƒ | d tdd
ƒ  d tdd
tdd
ƒ  | tdd
ƒ  ƒ d  ksæJ ‚d S )Nr4   Fr’   rÂ   TrÃ   r”   r•   r   rE   rA   rW   rP   rD   r>   rl   rL   rK   )r   rÌ   r+   r   r"   r   r   r)   r'   r&   r†   r$   r   r(   r   r   r   r*   rÍ   r>   r>   r?   Útest_airybiprimeØ  sN    (Nÿ
B6ÿÿ
*"ÿÿÿ
F8ÿÿÿ
Rÿ
 RJÿÿrÑ   c                  C   s¢  t dƒ} t dƒ}t dƒ}tdddƒdks,J ‚t| d|ƒt| |d d ƒt| ƒ ksVJ ‚tdddƒdttddƒƒ d ks|J ‚td|dƒd	t|d  d ƒ ks¢J ‚tdtdƒd	ttd  d ƒ ksÈJ ‚td	||ƒtjt|d  ƒt	d|d ƒ d  ksþJ ‚td||ƒtjt|d  ƒt	d|d ƒ d  t|d  ƒt	d	|d ƒ  ksRJ ‚t
td	|d
ƒ|ƒ|td	|d
ƒ td|d
ƒ  ksˆJ ‚t
tdd
|ƒ|ƒ|d  t|d  d tddƒ ƒ t	d	d
| ƒ d
 ksØJ ‚t dƒ}tdd
dƒjt|dt|d t|d  d tddƒ ƒ t	d	d
| ƒ |dtfƒd
 ks>J ‚ttddd
ƒ t¡ d¡gdgƒsfJ ‚t dƒ}tdddƒjt|dtdƒttddƒ| t	|dƒ |dtfƒ ks¶J ‚ttd	d
d	ƒ t¡ d¡gdgƒsÞJ ‚td	||dd t	¡tjt|d  ƒt	d|d ƒ d  ks J ‚td||dd t	¡tjt|d  ƒt	d|d ƒ d  t|d  ƒt	d	|d ƒ  ks~J ‚td
||ƒ t	¡t	d	|d ƒt	d|d ƒ t|d  ƒ tj t|d  ƒt	d|d ƒ d  ksæJ ‚tdddƒ t	¡tdƒt	ddƒ d t	ddƒt	d
dƒ t	ddƒ t	d	dƒ tdƒ  tj ksJJ ‚t| ||ƒ t	¡t| ||ƒksnJ ‚t dd d!}t|||ƒ t	¡t|||ƒksžJ ‚d S )"Nr¹   rŸ   r    r   rD   rP   é   içÿÿÿrA   rE   rl   r7   rU   ©r7   rK   r8   gZp¤hLé?r6   rº   r   rt   )r6   iÛÿÿÿrR   é#   gyÏhÿH§ï?Fr—   rq   iÀÿÿÿrV   Trƒ   )r   r,   r#   r"   r   r   r	   r
   r‡   r   r   r†   r%   r   r   r®   r   )r¹   rŸ   r    r7   r6   r>   r>   r?   Útest_marcumqû  sV    *&&&6T6P@ÿ
ÿ
*ÿ
ÿ
B8ÿ8ÿÿ$.ÿÿ$rÕ   c               	   C   sj   t dƒ} tdddƒjt| d t| d t| d  d tddƒ ƒ tdd|  ƒ | dtfƒd ¡sfJ ‚d S )Nr7   rD   rE   rU   rÓ   rl   rA   )	r   r,   r†   r%   Zdummy_eqr   r   r   r   rÓ   r>   r>   r?   Útest_issue_26134$  s    @ÿrÖ   N)r³   )qÚ	itertoolsr   Zsympy.concrete.summationsr   Zsympy.core.functionr   r   Zsympy.core.numbersr   r   r   r	   Zsympy.core.singletonr
   Zsympy.core.symbolr   r   Z$sympy.functions.elementary.complexesr   r   Z&sympy.functions.elementary.exponentialr   r   r   Z%sympy.functions.elementary.hyperbolicr   r   Z(sympy.functions.elementary.miscellaneousr   Z(sympy.functions.elementary.trigonometricr   r   Zsympy.functions.special.besselr   r   r   r   r   r   r   r   r   r    r!   Z'sympy.functions.special.gamma_functionsr"   r#   Zsympy.functions.special.hyperr$   Zsympy.integrals.integralsr%   Zsympy.series.orderr&   Zsympy.series.seriesr'   r(   r)   r*   r+   r,   rÇ   r-   r:   r.   rˆ   r/   r9   r0   Zsympy.simplifyr1   Zsympy.testing.pytestr2   r3   Z	sympy.abcr4   r5   r6   r7   r;   r@   rG   rJ   rN   rO   rT   rp   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>   r?   Ú<module>   sr   4	$#	;J

7%$$"#)