Ë
    täiqf  ã                   óÞ   — d Z ddlZddlZddlZddl­ efd„Z ed«      Z ed«      Z e	d«      Z
 e	d«      Z e	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y)a�  
Limited tests of the elliptic functions module.  A full suite of
extensive testing can be found in elliptic_torture_tests.py

Author of the first version: M.T. Taschuk

References:

[1] Abramowitz & Stegun. 'Handbook of Mathematical Functions, 9th Ed.',
    (Dover duplicate of 1972 edition)
[2] Whittaker 'A Course of Modern Analysis, 4th Ed.', 1946,
    Cambridge University Press

é    N)Ú*c                 ó²   — d}|xr& | j                   j                  |j                   |«      }|xr& | j                  j                  |j                  |«      }|S )NT)ÚrealÚaeÚimag)ÚaÚbÚepsÚress       úi/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/mpmath/tests/test_elliptic.pyÚmpc_aer      sF   € Ø
€CØ
Ò
(�!—&‘&—)‘)˜AŸF™F CÓ(€CØ
Ò
(�!—&‘&—)‘)˜AŸF™F CÓ(€CØ€Jó    é   ÚsnÚcnÚdnc                 ó   — t        | ¬«      S )N©Úk)Úqfromr   s    r   Ú<lambda>r   #   s   € œ5 1�:r   c                  ó‚
  — dt         _        t        ddd«      dk(  sJ ‚t        ddd«      dk(  sJ ‚t        ddd«      dk(  sJ ‚t        ddd«      dk(  sJ ‚t        dd	d«      j                  t	        d	«      «      sJ ‚t        d
d	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t	        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        d
d	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  t        d	«      «      sJ ‚t        dd	d«      j                  d«      sJ ‚t        d
d	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d«      sJ ‚t        dd	d«      j                  d «      sJ ‚t        dd	d«      j                  d!«      sJ ‚y )"Né   Ússr   r   ÚccÚddÚnnr   ç      Ð?r   r   ÚnsÚncÚndÚscÚsdÚcdÚcsÚdcÚdsç      à?g@p4ü(‚Ï?gTiÍ$íï?gý>x¤ò‚ï?gô(ÔÌæ?@gZx:Ç	‚ð?g Ï~?ð?gbUaåAÐ?g]`w73ÿÏ?g’Þòkï?g)– Ì@g
oüì†Að?g¡Óff @)ÚmpÚdpsÚellipfunr   ÚsinÚcosÚcscÚsecÚtanÚcotÚtanhÚsechÚcothÚcoshÚsinhÚcsch© r   r   Útest_ellipfunr9   %   sÕ  € Ø„B„FÜ�D˜!˜QÓ 1Ò$Ð$Ð$Ü�D˜!˜QÓ 1Ò$Ð$Ð$Ü�D˜!˜QÓ 1Ò$Ð$Ð$Ü�D˜!˜QÓ 1Ò$Ð$Ð$Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ% aÔ(Ð(Ð(Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ% aÔ(Ð(Ð(Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤c¨$£iÔ0Ð0Ð0Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ% aÔ(Ð(Ð(Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó"×%Ñ% aÔ(Ð(Ð(Ü�D˜$ Ó"×%Ñ%¤d¨4£jÔ1Ð1Ð1Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ð>Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ð>Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ð>Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(>Ô?Ð?Ð?Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ð>Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ð>Ü�D˜$ Ó$×'Ñ'Ð(=Ô>Ð>Ñ>r   c                  óÊ  — dt         _        t        t        «      } | t        k(  sJ ‚dt         _        t	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d	«      ft	        d
«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      ft	        d«      dz  t	        d«      fg
}|D ]1  }|d   }t        t        |«      «      } | j                  |d   «      rŒ1J ‚ dt         _        y )Néd   é   r   é
   z0.006584651553858370274473060é   z0.01394285727531826872146409é   z0.02227743615715350822901627é   z0.03188334731336317755064299é   z0.04321391826377224977441774é   z0.05702025781460967637754953é   z0.07468994353717944761143751é   z0.09927369733882489703607378é	   z0.1401731269542615524091055r   r   )r)   r*   Úcalculate_nomeÚzeroÚmpfÚsqrtr   )ÚqÚmath1ÚiÚms       r   Útest_calculate_nomerN   S   sI  € Ø„B„Fä”tÓ€AØ”Š9Ðˆ9à„B„Fä�!‹f�R‰iœÐ<Ó=Ð>Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ;Ó<Ð=Ü�!‹f�R‰iœÐ:Ó;Ð<Ü�!‹f�R‰iœÐ:Ó;Ð<ð	>€Eó ˆØˆa‰DˆÜœ4 ›7Ó#ˆØ�t‰t�A�a‘D�zÐˆzð ð
 „B…Fr   c                  ó²  ‡‡‡	— dt         _        t        xŠ	Št        dd«      D ]  Št	        ‰‰	‰«      } | ‰dz
  dz  k(  rŒJ ‚ t
        t        d«      fD ]2  Št        dd«      D ]!  Št        j                  t        ˆˆˆ	fd„«       Œ# Œ4 t
        dz  Š	t
        dz  Št        d«      }t	        d‰	‰«      }|j                  |«      sJ ‚t        d	«      }t	        d‰	‰«      }|j                  |«      sJ ‚t        d
«      }t	        d‰	‰«      }|j                  |«      sJ ‚t        d«      }t	        d‰	‰«      }|j                  |«      sJ ‚t        }t        dz  }t        d«      D ]j  }t        t        j                  «       «      }t        |«      Št	        d|‰«      }|j                  d«      sJ ‚t	        d|‰«      }|j                  d«      rŒjJ ‚ dt         _        y )Nr<   r   rA   r>   c                  ó   •— t        ‰ ‰‰«      S ©N©Újtheta)ÚnrJ   Úzs   €€€r   r   ztest_jtheta.<locals>.<lambda>w   s   ø€ ¬f°Q¸¸1¬or   r=   é   z0.1069552990104042681962096z1.101385760258855791140606z1.178319743354331061795905r?   z0.8219318954665153577314573r@   r   r   )r)   r*   rG   ÚrangerS   ÚonerH   ÚpytestÚraisesÚ
ValueErrorr   ÚpiÚstrÚrandom)
Úvaluer   ÚresultÚz1Úz2rL   ÚqstringrT   rJ   rU   s
          @@@r   Útest_jthetard   m   s±  ú€ Ø„B„Fä€L€AˆÜ�1�QŽZˆÜ�q˜!˜Q“ˆØ˜˜1™˜q™Ó Ð!Ð ð ô ”3�q“6‹]ˆÜ�q˜–ˆAÜ�M‰Mœ*Õ&=Õ>ñ ð ô 	ˆB‰€AÜˆB‰€Aô Ð+Ó
,€CÜ�A�q˜!‹_€FØ�9‰9�SŒ>Ðˆ>ô Ð*Ó
+€CÜ�A�q˜!‹_€FØ�9‰9�SŒ>Ðˆ>ô Ð*Ó
+€CÜ�A�q˜!‹_€FØ�9‰9�SŒ>Ðˆ>ô Ð+Ó
,€CÜ�A�q˜!‹_€FØ�9‰9�SŒ>Ðˆ>ô 
€BÜ	ˆA‰€BÜ�2ŽYˆÜ”f—m‘m“oÓ&ˆÜ�‹LˆÜ˜˜2˜qÓ!ˆØ�y‰y˜Œ|Ðˆ|Ü˜˜2˜qÓ!ˆØ�y‰y˜�|Ðˆ|ð ð „B…Fr   c                  ó8  ‡— dt         _        t         xj                  dz  c_        t        d«      dz  t        dz  z
  t        d«      dz  t        z  z
  Št         xj                  dz  c_        t        d«      t        d«      t        z  z   } t        dd	‰«      }t         xj                  dz  c_        t        d«      dz  t        d
z  z
  t        d«      dz  t        z  z
  Št         xj                  dz  c_        t        j                  t        ˆfd„«       dt         _        d	t        z   dz  }t        d«      dz  t        d«      dz  t        z  z   Št        d«      t        d«      t        z  z   } dt         _        t        d	|‰«      }|j                  | «      sJ ‚dt         _        ddt        z  z   }ddt        z  z   Št        d	|‰«      }dt         _        t        d	|‰«      }|j                  |«      sJ ‚dt         _        dt        z   }t        t        dz  «      }t        d	d«      D ]I  }dt         _        |d	t        d	«      d|z  z  z
  z  Št        d	|‰«      }dt         _        t        d	|‰«      }ŒK |j                  |«      sJ ‚dt         _        t        dddd«      j                  d«      sJ ‚t        dddd«      j                  d«      sJ ‚dt         _        t        dddd«      }|j                  d«      sJ ‚t        dddd«      }|j                  d«      sJ ‚y )Né   rB   r=   i@B rD   z32.0031009628901652627099524264z16.6153027998236087899308935624r?   r   i€–˜ c                  ó   •— t        dd‰ «      S )Nr?   r   rR   )rJ   s   €r   r   z&test_jtheta_issue_79.<locals>.<lambda>°   s   ø€ ¤f¨Q°°1¤or   r;   l   ³'e[>
 l     �Iú5 l   tQüh z$2.4439389177990737589761828991467471z$0.5446453005688226915290954851851490éP   r@   r(   r   r>   g      @r   rE   gîlÞ2<•@é2   g‹3må,òòÆz21359.048926806828939547859396600218966947753213803z4-6148327726309051673317975084654262.4119215720343656)r)   r*   rH   rX   ÚjrS   rY   rZ   r[   r   ÚexprW   )	r   r`   rU   Úr1Úr2Úq1rT   ÚrrJ   s	           @r   Útest_jtheta_issue_79rp   ž   s¯  ø€ ð „B„FÜ‡F‚Fˆb�L…FÜˆA‹ˆr‰	”C˜‘IÑ¤ A£ r¡	¬A¡Ñ-€AÜ‡F‚Fˆb�L…Fô
 Ð/Ó
0Ü
Ð/Ó
0´1Ñ
4ñ5€Cä�A�q˜!‹_€Fä‡F‚Fˆb�L…FÜˆA‹ˆr‰	”C˜‘IÑ¤ A£ r¡	¬A¡Ñ-€AÜ‡F‚Fˆb�L…FÜ
‡M�M”*Ó5Ô6ð „B„FØ	
Œ1‰ˆa‰€AÜˆOÓ˜VÑ#¤c¨/Ó&:¸6Ñ&AÄAÑ&EÑE€Aä
Ð4Ó
5Ü
Ð4Ó
5´qÑ
8ñ9€Cà„B„FÜ�A�q˜!‹_€FØ�9‰9�SŒ>Ðˆ>Ø„B„FØ	ˆAŒa‰C‰€AØˆc”!‰e‰€AÜ	��1�a‹€BØ„B„FÜ	��1�a‹€BØ�5‰5�Œ9Ðˆ9Ø„B„FØ	ŒA‰€AÜ	ŒQˆq‰S‹€Bô �1�aŽ[ˆØŒŒØ�”C˜“F˜2˜q™5‘LÑ Ñ!ˆÜ�A�q˜!‹_ˆØŒŒÜ�A�q˜!‹_‰ð ð �5‰5�Œ9Ðˆ9Ø„B„Fä�!�S˜$ Ó"×%Ñ%Ð&6Ô7Ð7Ð7Ü�!�S˜$ Ó#×&Ñ&Ð'<Ô=Ð=Ð=Ø„B„FÜˆq�#�t˜QÓ€AØ�4‰4ÐDÔEÐEÐEÜˆq�#�t˜RÓ €AØ�4‰4ÐFÔGÐGÑGr   c                  óx  — dt         _        t        t        d«      } t	        d«      D �]  }t        t        j                  «       «      }t        |«      }t        dt        j                  «       z  «      }t        |«      }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }||z
  |z   }	|	j                  d| «      sJ ‚t        d	t        j                  «       z  «      }t        |«      }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }||z
  |z   }	|	j                  d| «      sJ ‚t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }||z
  |z   }	|	j                  d| «      sJ ‚t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }t        d||«      dz  t        dt        |«      dz  z  }||z
  |z   }	|	j                  d| «      sJ ‚t        dt        |«      dz  }t        dt        |«      dz  }t        dt        |«      dz  }||z   |z
  }	|	j                  d| «      r�ŒJ ‚ d
t         _        y)z�
    Tests the some of the jacobi identidies found in Abramowitz,
    Sec. 16.28, Pg. 576. The identities are tested to 1 part in 10^98.
    én   rf   r=   r   r>   r@   r?   r   r;   r   N)r)   r*   Úldexpr
   rW   r]   r^   rH   rS   rG   r   )
Úeps1rL   rc   rJ   ÚzstringrU   Úterm1Úterm2Úterm3Úequalitys
             r   Útest_jtheta_identitiesrz   Ù   s-  € ð
 „B„FÜ”�b‹>€Dä�2�YˆÜ”f—m‘m“oÓ&ˆÜ�‹Lˆä�bœŸ™›Ñ(Ó)ˆÜ�‹Lˆô ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1˜dÔ#Ð$Ð#ä�cœ&Ÿ-™-›/Ñ)Ó*ˆÜ�‹Lˆô ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1˜dÔ#Ð$Ð#ô
 ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1˜dÔ#Ð$Ð#ô
 ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆÜ˜˜1˜a“ !Ñ#¬¨q´$¸Ó(:¸AÑ(=Ñ>ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1˜dÔ#Ð$Ð#ô ˜œ4 Ó# aÑ'ˆÜ˜œ4 Ó# aÑ'ˆÜ˜œ4 Ó# aÑ'ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1˜dÖ#Ð$Ð#ðe ðf „B…Fr   c            	      ó²  — dt         _        t        d«      dz  t        dz  z   } t        d«      dz  t        dz  z   }t        d«      t        d«      t        z  z   }t	        d| |«      }t        ||«      sJ ‚t        d	«      t        d
«      t        z  z   }t	        d| |«      }t        ||«      sJ ‚t        d«      t        d«      t        z  z   }t	        d| |«      }t        ||«      sJ ‚t        d«      t        d«      t        z  z
  }t	        d| |«      }t        ||«      sJ ‚dt         _        t        d«      dz  t        dz  z   } t        d«      dz  t        dz  z   }t         xj                  dz  c_        ddt	        dd|«      t	        dd|«      t	        dd|«      g}dt	        d| |«      t	        d| |«      t	        d| |«      t	        d| |«      g}|d   |d   z  dz  |d   |d   z  dz  z
  |d   |d   z  dz  z   |d   |d   z  dz  |d   |d   z  dz  z
  |d   |d   z  dz  z   |d   |d   z  dz  |d   |d   z  dz  z
  |d   |d   z  dz  z   |d   |d   z  dz  |d   |d   z  dz  z
  |d   |d   z  dz  z   |d   dz  |d   dz  z   |d   dz  z
  g}t         xj                  dz  c_        |D ]  }t        |t        d«      «      rŒJ ‚ dt         _        y )Nrf   r   r@   rD   r?   rC   z%0.31618034835986160705729105731678285z%0.07542013825835103435142515194358975z$1.6530986428239765928634711417951828z$0.2015344864707197230526742145361455r>   z$1.6520564411784228184326012700348340z$0.1998129119671271328684690067401823z%0.37619082382228348252047624089973824z%0.15623022130983652972686227200681074r;   r=   r   r   )r)   r*   rH   rj   rS   r   ÚdosÚmpc)rU   rJ   r   ro   r   ÚtÚxs          r   Útest_jtheta_complexr€     s	  € Ø„B„FÜˆA‹ˆq‰”1�Q‘3‰€AÜˆA‹ˆq‰”1�Q‘3‰€Aä
Ð5Ó
6Ü
Ð5Ó
6¼Ñ
:ñ;€Cäˆq�!�Q‹€AÜ�!�SŒ>Ðˆ>ô Ð4Ó
5Ü
Ð4Ó
5¼Ñ
9ñ:€Cäˆq�!�Q‹€AÜ�!�SŒ>Ðˆ>ô Ð4Ó
5Ü
Ð4Ó
5¼Ñ
9ñ:€Cäˆq�!�Q‹€AÜ�!�SŒ>Ðˆ>ô Ð5Ó
6Ü
Ð5Ó
6¼Ñ
:ñ;€Cäˆq�!�Q‹€AÜ�!�SŒ>Ðˆ>ð „B„FÜˆA‹ˆq‰”1�Q‘3‰€AÜˆA‹ˆq‰”1�Q‘3‰€AÜ‡F‚Fˆb�L…FØ	
ˆ1Œf�Q˜˜1‹oœv a¨¨A›´°q¸!¸Q³Ð@€AØ	
ŒF�1�a˜‹OœV A q¨!›_¬f°Q¸¸1«o¼vÀaÈÈA»ÐO€AØ
ˆA‰$ˆq�‰t‰)�a‰˜1˜Q™4  !¡™9 q™.Ñ	(¨A¨a©D°!°A±$©J¸©?Ñ	:Ø	
ˆ1‰ˆa�‰d‰�Q‰˜!˜A™$˜q ™t™) a™Ñ'¨1¨Q©4°°1±©:¸©/Ñ9Ø	
ˆ1‰ˆa�‰d‰�Q‰˜!˜A™$˜q ™t™) a™Ñ'¨1¨Q©4°°1±©:¸©/Ñ9Ø	
ˆ1‰ˆa�‰d‰�Q‰˜!˜A™$˜q ™t™) a™Ñ'¨1¨Q©4°°1±©:¸©/Ñ9Ø	ˆ!‰ˆa‰�!�A‘$˜‘'Ñ˜A˜a™D !™GÑ#ð		%€Aô
 ‡F‚Fˆb�L…FÛˆÜ�aœ˜Q›Õ Ð!Ð ð à„B…Fr   c                  ó^  ‡	‡
— dt         _        t        dz  t        dz  z   } t        dz  t        dz  z   Š
t	        d«      t	        d«      t        z  z
  }t        d| ‰
d«      }t        ||«      sJ ‚t	        d	«      t	        d
«      t        z  z
  }t        d| ‰
d«      }t        ||«      sJ ‚t	        d«      t	        d«      t        z  z
  }t        d| ‰
d«      }t        ||«      sJ ‚t	        d«      t	        d«      t        z  z   }t        d| ‰
d«      }t        ||«      sJ ‚t        d«      D ]†  }t        t        j                  «       z  t        t        j                  «       z  z   dz  Š
t        dd‰
d«      }t        dd‰
«      t        dd‰
«      z  t        dd‰
«      z  }|j                  |«      rŒ†J ‚ dt         _        t        dz  t        dz  ft        dz  t        dz  z   t        dz  ft        dz  t        dz  t        dz  z   ft        dz  t        dz  z   t        dz  t        dz  z   ffD ]r  \  Š
} dD ]h  Š	t        ‰	| ‰
d«      }t        ˆ	ˆ
fd„| d¬«      }|j                  |«      sJ ‚t        ‰	| ‰
d«      }t        ˆ	ˆ
fd„| d¬«      }|j                  |«      rŒhJ ‚ Œt t        dz  Š
t        } dgdz  }t        d| ‰
d«      t        d| ‰
d«      z  |d<   dD ]!  Š	t        ‰	| ‰
d«      t        ‰	| ‰
«      z  |‰	<   Œ# |d   |d   z   |d   z   |d   z
  }|j                  d«      sJ ‚dt         _        y )Nrf   rC   r?   rD   rA   z$1.5555195883277196036090928995803201z%0.02439761276895463494054149673076275r   z%0.19825296689470982332701283509685662z%0.46038135182282106983251742935250009r>   z%0.36492498415476212680896699407390026z%0.57743812698666990209897034525640369z&-0.38936892528126996010818803742007352z%0.66549886179739128256269617407313625r@   r=   r   é   )r   r>   r?   r@   c                 ó   •— t        ‰| ‰«      S rQ   rR   ©ÚzzrT   rJ   s    €€r   r   ztest_djtheta.<locals>.<lambda>m  ó   ø€ ¤¨¨2¨qÔ!1r   )rT   c                 ó   •— t        ‰| ‰«      S rQ   rR   r„   s    €€r   r   ztest_djtheta.<locals>.<lambda>p  r†   r   )r>   r?   r@   r   )r)   r*   rX   rj   rH   rS   r   rW   r^   r   ÚdiffrG   )rU   r   r`   rL   r   r	   ro   rl   ry   rT   rJ   s            @@r   Útest_djthetar‰   C  s#  ù€ Ø„B„FäˆA‰”�!‘‰€AÜˆA‰”�!‘‰€Aä
Ð4Ó
5Ü
Ð5Ó
6¼Ñ
:ñ;€Cä�A�q˜!˜QÓ€FÜ�&˜#ÔÐÐô Ð5Ó
6Ü
Ð5Ó
6¼Ñ
:ñ;€Cä�A�q˜!˜QÓ€FÜ�&˜#ÔÐÐô Ð5Ó
6Ü
Ð5Ó
6¼Ñ
:ñ;€Cä�A�q˜!˜QÓ€FÜ�&˜#ÔÐÐô Ð6Ó
7Ü
Ð5Ó
6¼Ñ
:ñ;€Cä�A�q˜!˜QÓ€FÜ�&˜#ÔÐÐä�2ŽYˆÜ”—‘“Ñ ¤1¤V§]¡]£_Ñ#4Ñ4°aÑ7ˆä�1�a˜˜AÓˆÜ�1�a˜‹OœF 1 a¨›OÑ+¬F°1°a¸«OÑ;ˆØ�t‰t�A�wˆˆwð ð „B„FÜ�Q‘œ˜A™�¤ Q¡¬¨1©¡¬c°!©eÐ 4Ü	ˆQ‰”�A‘œ˜!™‘Ðœs 1™u¤q¨¡s™{¬C°©E´A°a±C©KÐ8ó:‰ˆˆ!ãˆAÜ�q˜!˜Q Ó"ˆAÜÔ1°1¸Ô:ˆBØ—4‘4˜”8ˆO�8Ü�q˜!˜Q Ó"ˆAÜÔ1°1¸Ô:ˆBØ—4‘4˜•8ˆO�8ñ ð:ô 	ˆA‰€AÜ€AØ	
ˆˆA‰€AÜ�!�Q˜˜1Óœf Q¨¨1¨aÓ0Ñ0€A€a�DÛˆÜ�a˜˜A˜qÓ!¤&¨¨A¨q£/Ñ1ˆˆ!Šð à�‰t�a˜‘d‰{˜Q˜q™TÑ! A a¡DÑ(€HØ�;‰;�qŒ>Ðˆ>Ø„B…Fr   c                  ó  — dt         _        t        t        t        «      } | t        k(  sJ ‚t	        d«      D ]M  }t        t        j                  «       «      }t        |«      }t        t        |«      }|j                  d«      rŒMJ ‚ dt         _        t        dz  }t        d«      }t        t        d«      }t        ||«      } | j                  |«      sJ ‚t        d«      }t        ||«      } | j                  |«      sJ ‚dt         _        y	)
z;
    Test some special cases of the sn(z, q) function.
    r;   r=   r   r<   z0.09983341664682815230681420éœÿÿÿz0.09981686718599080096451168r   N)r)   r*   ÚjsnrG   rW   r]   r^   rH   r   rX   rs   )r`   rL   rc   rJ   ry   Úargr   rM   s           r   Útest_jsnrŽ   ~  sÛ   € ð „B„Fô ””t‹_€FØ”TŠ>Ðˆ>ô �2ŽYˆÜ”f—m‘m“oÓ&ˆÜ�‹Lˆä”t˜Q“<ˆØ�{‰{˜1�~Ðˆ~ð ð" „B„FÜ
ˆb‰&€Cä
Ð,Ó
-€CÜŒc�4Ó€AÜ��a‹[€FØ�9‰9�SŒ>Ðˆ>ô Ð,Ó
-€CÜ��c‹]€FØ�9‰9�SŒ>Ðˆ>Ø„B…Fr   c                  ó¾  — dt         _        t        t        j                  «       «      } t	        | «      }t        t        |«      }|j                  t        «      sJ ‚dt         _        t        dz  }t        t        d«      }t	        d«      }t        ||«      }|j                  |«      sJ ‚t	        d«      }t        ||«      }|j                  |«      sJ ‚dt         _        y)	z;
    Test some special cases of the cn(z, q) function.
    r;   r<   r=   r‹   z0.9950041652780257660955620z0.9950058256237368748520459r   N)
r)   r*   r]   r^   rH   ÚjcnrG   r   rX   rs   )rc   rJ   r   r�   rM   r   r`   s          r   Útest_jcnr‘   «  s´   € ð „B„Fô ”&—-‘-“/Ó"€GÜˆG‹€AÜ	ŒT�1‹€BØ�5‰5”Œ:Ðˆ:ð „B„FÜ
ˆb‰&€CÜŒc�4Ó€Aä
Ð+Ó
,€CÜ��a‹[€FØ�9‰9�SŒ>Ðˆ>ô Ð+Ó
,€CÜ��c‹]€FØ�9‰9�SŒ>Ðˆ>Ø„B…Fr   c                  óJ  — dt         _        t        t        j                  «       «      } t	        | «      }t        t        |«      }|j                  t        «      sJ ‚dt         _        t	        d«      }t        dz  }t        ||«      }|j                  |«      sJ ‚dt         _        y)z;
    Test some special cases of the dn(z, q) function.
    r;   r<   z0.9995017055025556219713297r=   r   N)	r)   r*   r]   r^   rH   ÚjdnrG   r   rX   )ÚmstringrM   r   r   r�   r`   s         r   Útest_jdnr•   Ð  s~   € ð „B„Fô ”&—-‘-“/Ó"€GÜˆG‹€Aä	ŒT�1‹€BØ�5‰5”Œ:Ðˆ:à„B„Fä
Ð+Ó
,€CÜ
ˆb‰&€CÜ��c‹]€FØ�9‰9�SŒ>Ðˆ>Ø„B…Fr   c                  óD  — dt         _        d} t        | «      D ]’  }t        t	        j                  «       «      }t        |«      }t        dt	        j                  «       z  «      }t        |«      }t        ||«      dz  }t        ||«      dz  }t        |z
  |z
  }|j                  d«      rŒ’J ‚ t        | «      D ]¨  }t        t	        j                  «       «      }	t        «      }
|
j                  «       }t        dt	        j                  «       z  «      }t        |«      }|dz  t        ||
«      dz  z  }t        ||
«      dz  }t        |z
  |z
  }|j                  d«      rŒ¨J ‚ t        | «      D �]#  }t        t	        j                  «       «      }	t        |	«      }
|
j                  «       }t        t	        j                  «       «      }t        |«      }|dz  t        ||
«      dz  z  }d|dz  z
  }t        ||
«      dz  }||z
  |z
  }|j                  d«      sJ ‚t        |dz  «      }t        ||
«      }|j                  t        «      sJ ‚t        ||
«      }|j                  d«      sJ ‚|
}t        |t        «      }|j                  t        «      r�Œ$J ‚ dt         _        y)	zx
    Tests the some of the jacobi elliptic function identities found
    on Mathworld. Haven't found in Abramowitz.
    r;   rA   r>   r   r=   r   r   N)r)   r*   rW   r]   r^   rH   rŒ   r�   rX   r   rI   r“   ÚellipkrG   )ÚNrL   rc   rJ   ru   rU   rv   rw   ry   r”   rM   r   rx   ÚKro   r_   s                   r   Útest_sn_cn_dn_identitiesrš   ç  s>  € ð
 „B„FØ	€AÜ�1ŽXˆÜ”f—m‘m“oÓ&ˆÜ�‹LˆÜ�cœ&Ÿ-™-›/Ñ)Ó*ˆÜ�‹Lˆô �A�q“	˜1‘ˆÜ�A�q“	˜1‘ˆÜ˜‘; Ñ&ˆØ�{‰{˜1�~Ðˆ~ð ô �1ŽXˆÜ”f—m‘m“oÓ&ˆÜ�‹LˆØ�F‰F‹HˆÜ�bœŸ™›Ñ(Ó)ˆÜ�‹LˆØ�1‘”s˜1˜a“y !‘|Ñ#ˆÜ�A�q“	˜1‘ˆÜ˜‘; Ñ&ˆØ�{‰{˜1�~Ðˆ~ð ô �1�XˆÜ”f—m‘m“oÓ&ˆÜ�‹LˆØ�F‰F‹HˆÜ”f—m‘m“oÓ&ˆÜ�‹Lˆð �1‘”s˜1˜a“y !‘|Ñ#ˆØ�A�q‘D‘ˆÜ�A�q“	˜1‘ˆØ˜5‘= 5Ñ(ˆØ�{‰{˜1Œ~Ðˆ~ä�1�a‘4‹Lˆô ��1‹IˆØ�t‰t”CŒyÐˆyô �q˜!“9ˆØ�{‰{˜1Œ~Ðˆ~ð ˆÜ�A”t“ˆØ�x‰xœŽ}Ðˆ}ð= ð@ „B…Fr   c                  óà  — dt         _        t        d«      t        d«      t        z  z   } t        d«      dz  t        dz  z   }t        d«      dz  t        dz  z   }t	        ||«      }t        || «      sJ ‚t        d	«      t        d
«      t        z  z
  } t        ||«      }t        || «      sJ ‚t        d«      t        d«      t        z  z
  } t        ||«      }t        || «      sJ ‚dt         _        y )Nrf   z!0.2495674401066275492326652143537z"0.12017344422863833381301051702823r   r@   rD   r?   rC   z!0.9762691700944007312693721148331z!0.0307203994181623243583169154824z%0.99639490163039577560547478589753039z%0.01346296520008176393432491077244994r   )r)   r*   rH   rj   rŒ   r   r�   r“   )r   ÚurM   ro   s       r   Útest_sn_cn_dn_complexr�   +  så   € Ø„B„Fä
Ð1Ó
2Ü
Ð2Ó
3´aÑ
7ñ8€CäˆA‹ˆq‰”1�Q‘3‰€AÜˆA‹ˆq‰”1�Q‘3‰€AÜˆAˆq‹	€AÜ�!�SŒ>Ðˆ>ô Ð1Ó
2Ü
Ð1Ó
2´1Ñ
4ñ5€CäˆAˆq‹	€Aô �!�SŒ>Ðˆ>ô Ð5Ó
6Ü
Ð5Ó
6´qÑ
8ñ9€CäˆAˆq‹	€AÜ�!�SŒ>Ðˆ>Ø„B…Fr   c                  óz  — dt         _        t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        t        t         d«      j                  d	«      sJ ‚t        dt        t         «      j                  d
«      sJ ‚t        dt        dz
  t        «      j                  d«      sJ ‚t        dt        z
  t         dt        z   «      j                  d«      sJ ‚t        ddd«      dk(  sJ ‚t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚d\  } }}t        | ||«      j                  d«      sJ ‚t        | ||«      j                  d«      sJ ‚t        || |«      j                  d«      sJ ‚t        ||| «      j                  d«      sJ ‚t        || |«      j                  d«      sJ ‚t        ||| «      j                  d«      sJ ‚dD �]ˆ  }|t         _        t        ddd«      j                  d«      sJ ‚t        ddd«      j                  d«      sJ ‚t        t        t         d«      j                  d«      sJ ‚t        t        dz
  t        d«      j                  t        dd«      «      sJ ‚t        ddd«      j                  d«      sJ ‚t        t        t         d«      j                  d«      sJ ‚t        t        dz
  t        dt        z
  «      j                  t        dd«      «      sJ ‚t        dd«      j                  t        ­«      sJ ‚t        dd«      j                  t        ­«      sJ ‚t        dt        «      j                  t        dd «      «      sJ ‚t        t         t        «      j                  t        d!d"«      «      sJ ‚t        dd«      j                  t        dz  «      sJ ‚t        t        d«      j                  t        d#d$«      «      sJ ‚t        dddd«      j                  d%«      sJ ‚t        dddd&«      j                  d'«      sJ ‚t        ddddt        z   «      j                  t        d(d)«      «      sJ ‚t        t        t         dd«      j                  d*«      sJ ‚t        dt        z   dt        z
  dd«      j                  d+«      sJ ‚t        t        t         ddt        z
  «      j                  t        d,d-«      «      sJ ‚t        dt        z   dt        z
  dd.t        z   «      j                  t        d/d0«      «      sJ ‚t        dt        z   dt        z
  t         dt        z   «      j                  t        d1d2«      «      sJ ‚t        ddd«      j                  t        ­«      sJ ‚t        ddd«      j                  d3«      sJ ‚t        dt        t         «      j                  d4«      sJ ‚t        t        dz
  t        d«      j                  t        d5d6«      «      sJ ‚t        t         t        dz
  t        «      j                  t        d7d8«      «      sJ ‚t        dt        d9«      d«      j                  d:«      r�Œ‰J ‚ dt         _        t        d;d<d=d>«      j                  d?d@¬A«      sJ ‚t        dBdCddD«      j                  dEd@¬A«      sJ ‚t        dFdGdHdI«      j                  dJd@¬A«      sJ ‚t        dFdKdHdI«      j                  dLdM¬A«      sJ ‚t        dFdNdHdI«      j                  dOd@¬A«      sJ ‚t        dFdPdHdI«      j                  dQd@¬A«      sJ ‚t        dFdRdHdI«      j                  dS«      sJ ‚t        dFdTdHdI«      j                  dU«      sJ ‚t        dVdWdX«      j                  dY«      sJ ‚t        dZd[«      j                  d\«      sJ ‚t        d]d^«      j                  d_«      sJ ‚t        d`da«      j                  db«      sJ ‚t        d[dZ«      j                  dc«      sJ ‚t        d[d`«      j                  dd«      sJ ‚y )eNr   r   r>   r   g2e¤_Áü?r?   r@   gçÃ×i+"Å?g€P$Må?yçföFUô?¸6¨·?@y,™¢R<¹ý¿Õ8á*Èî¿éþÿÿÿéÿÿÿÿy# ÿ6Í2ý?çzä°Œó¿é   g»{ I|`ó?)r   y              ð?y      ð¿      ð?yaüÇfG†ä?Etw\–â?)rA   r   rf   é<   r;   zo1.3110287771460599052324197949455597068413774757158115814084108519003952935352071251151477664807145467230678763r(   zn1.854074677301371918433850347195260046217598823521766905585928045056021776838119978357271861650371897277771871zp0.79612586584233913293056938229563057846592264089185680214929401744498956943287031832657642790719940442165621412zp-1.2138566698364959864300942567386038975419875860741507618279563735753073152507112254567291141460317931258599889zp0.58408284167715170669284916892566789240351359699303216166309375305508295130412919665541330837704050454472379308zo1.0441445654064360931078658361850779139591660747973017593275012615517220315993723776182276555339288363064476126zp0.93912050218619371196624617169781141161485651998254431830645241993282941057500174238125105410055253623847335313zq-0.53296252018635269264859303449447908970360344322834582313172115220559316331271520508208025270300138589669326136r   g      @zo1.1107207345395915617539702475151734246536554223439225557713489017391086982748684776438317336911913093408525532zp-1.1107207345395915617539702475151734246536554223439225557713489017391086982748684776438317336911913093408525532zo1.2260849569072198222319655083097718755633725139745941606203839524036426936825652935738621522906572884239069297zq-0.34471136988767679699935618332997956653521218571295874986708834375026550946053920574015526038040124556716711353zp0.77778596920447389875196055840799837589537035343923012237628610795937014001905822029050288316217145443865649819zo0.1983248499342877364755170948292130095921681309577950696116251029742793455964385947473103628983664877025779304zp0.77688623778582332014190282640545501102298064276022952731669118325952563819813258230708177398475643634103990878rA   zp0.14297579667156753833233879421985774801466647854232626336218889885463800128817976132826443904216546421431528308zp0.13613945827770535203521374457913768360237593025944342652613569368333226052158214183059386307242563164036672709zq-0.38207561624427164249600936454845112611060375760094156571007648297226090050927156176977091273224510621553615189zo1.6490011662710884518243257224860232300246792717163891216346170272567376981346412066066050103935109581019055806zp0.94148358841220238083044612133767270187474673547917988681610772381758628963408843935027667916713866133196845063zo1.8260115229009316249372594065790946657011067182850435297162034335356430755397401849070610280860044610878657501zo1.2290661908643471500163617732957042849283739403009556715926326841959667290840290081010472716420690899886276961éýÿÿÿzq-0.61127970812028172123588152373622636829986597243716610650831553882054127570542477508023027578037045504958619422zp-1.0684038390006807880182112972232562745485871763154040245065581157751693730095703406209466903752930797510491155zo1.8249027393703805304622013339009022294368078659619988943515764258335975852685224202567854526307030593012768954zp-1.2218475784827035854568450371590419833166777535029296025352291308244564398645467465067845461070602841312456831zo1.7255030280692277601061148835701141842692457170470456590515892070736643637303053506944907685301315299153040991zp0.42360654239698954330324956174109581824072295516347109253028968632986700241706737986160014699730561497106114281zp0.44660591677018372656731970402124510811555212083508861036067729944477855594654762496407405328607219895053798354zp0.70768352357515390073102719507612395221369717586839400605901402910893345301718731499237159587077682267374159282zp0.36023392184473309033675652092928695596803358846377334894215349632203382573844427952830064383286995172598964266zp0.40348623401722113740956336997761033878615232917480045914551915169013722542827052849476969199578321834819903921z0.0796zo1.0284758090288040009838871385180217366569777284430590125081211090574701293154645750017813190805144572673802094y      ð¿      à¿y      $À      Ày      $À      Ày      À      $@y+õÍ¸qÀ?¹ÿ3(º?g:Œ0âŽyE>)Úabs_epsg˜nƒÀÊÿ?y'1¬Ú@mçû©ñÒù¿g¸…ëQ¸Ày¦9Éâ]ÜÕ¿9Dü‹ÓBÙ¿gQkšwœ¢Ó?yÙÎ÷Sã%ÀÓMbX9ä?gX9´Èvú?g«>W[±¿î¿yöf0Ä�[ò¿áŽ£­©5Á¿yÙÎ÷Sã%ÀÓMbX9ä¿y˜Ý¶ç#ü?,e«‹¹›Ä¿gñhãˆµøä>yÙÎ÷Sã%Àvqà-°?yv0ÓÄÆ¾ò¿Í=T©óµ±¿yÙÎ÷Sã%À‰µø ãy?yµgÿÝ%Æò¿‹Xd±æ¯¿yÙÎ÷Sã%Àvqà-°¿y9òÈàpxü?Ž`µêæ£?yÙÎ÷Sã%À‰µø ãy¿yc¡Ÿörü?˜à?^JY®?yÍÌÌÌÌÌ @®Gázî?yffffff@\�Âõ(\ï?y      @{®Gáz„?y8Y+Ö}Ú¿§©©íõ<@y       @      ð¿y       @      ð?yÖRØ¹ý?Y\‡n•ûò¿y       @      à¿y      à?      ð?y;‰’=ôùí?>î—%yæù¿g       @y      ð?      ð?yü=Rÿï?I‹ú¹OÀyÖRØ¹ý?Y\‡n•ûò?y“iæ2)G@LÈ !'- @)r)   r*   Úelliprdr   rj   ÚelliprgÚelliprfr}   Úelliprcr\   Úln2ÚelliprjrH   Úellippi)r   ÚyrU   rT   s       r   Útest_elliptic_integralsr­   D  s9	  € à„B„FÜ�1�Q�q‹>×ÑÐ2Ô3Ð3Ð3Ü�1�Q�q‹>×ÑÐ3Ô4Ð4Ð4Ü”1”a�R˜‹?×ÑÐ4Ô5Ð5Ð5Ü�1”Qœ�r‹?×ÑÐLÔMÐMÐMÜ�1”Q�q‘SœÓ×ÑÐOÔPÐPÐPÜ�2”a‘4œ˜˜2œa™4Ó ×#Ñ#Ð$RÔSÐSÐSä�1�Q�q‹>˜QÒÐÐÜ�1�Q�r‹?×Ñ˜aÔ Ð Ð Ü�1�R˜‹?×Ñ˜aÔ Ð Ð Ü�2�a˜‹?×Ñ˜aÔ Ð Ð Ü�1�Q�q‹>×ÑÐ5Ô6Ð6Ð6Ü�1�Q�q‹>×ÑÐ5Ô6Ð6Ð6Ü�1�Q�q‹>×ÑÐ5Ô6Ð6Ð6à�E€A€aˆÜ�1�Q�q‹>×ÑÐMÔNÐNÐNÜ�1�Q�q‹>×ÑÐMÔNÐNÐNÜ�1�Q�q‹>×ÑÐMÔNÐNÐNÜ�1�Q�q‹>×ÑÐMÔNÐNÐNÜ�1�Q�q‹>×ÑÐMÔNÐNÐNÜ�1�Q�q‹>×ÑÐMÔNÐNÐNä!ˆØŒŒÜ�q˜˜1‹~× Ñ ð  "Sô  Tð  	Tð  TÜ�s˜1˜QÓ×"Ñ"ð  $Tô  Uð  	Uð  UÜ”qœ!˜˜A‹×!Ñ!ð  #Sô  Tð  	Tð  TÜ”q˜‘sœ1˜QÓ×"Ñ"¤3ð  (ZØ~ó$@ô Að 	Að Aä�q˜˜1‹~× Ñ ð  "Tô  Uð  	Uð  UÜ”qœ!˜˜A‹×!Ñ!ð  #Tô  Uð  	Uð  UÜ”q˜‘sœ1˜Qœq™SÓ!×$Ñ$¤Sð  *\Øó&Aô Bð 	Bð Bä�q˜‹×!Ñ!¤2 #Ô&Ð&Ð&Ü�t˜A‹×!Ñ!¤3 $Ô'Ð'Ð'Ü�qœ‹|�‰œsð  $UØ~ó @ô Að 	Að Aäœ�rœ!‹}×Ñ¤ð  %VØó!Aô Bð 	Bð Bä�t˜BÓ×"Ñ"¤3 q¡5Ô)Ð)Ð)Ü”q˜‹}×Ñ¤ð  %WØ}ó!ô @ð 	@ð @ä�q˜˜1˜QÓ×"Ñ"ð  $Vô  Wð  	Wð  WÜ�q˜˜1˜QÓ×"Ñ"ð  $Vô  Wð  	Wð  WÜ�q˜˜1˜R¤™TÓ"×%Ñ%¤cð  +]Øó'Aô Bð 	Bð Bä”qœ!˜˜A˜aÓ ×#Ñ#ð  %Vô  Wð  	Wð  WÜ�rœ!‘t˜Bœq™D  1Ó%×(Ñ(ð  *\ô  ]ð  	]ð  ]Ü”qœ!˜˜A˜a¤™cÓ"×%Ñ%¤cð  +\Ø}ó'ô @ð 	@ð @ä�rœ!‘t˜Bœq™D  2¤a¡4Ó(×+Ñ+¬Cð  1dØ~ó-@ô Að 	Að Aä�rœ!‘t˜Bœq™D¤!  B¤q¡DÓ)×,Ñ,¬Sð  2cØ~ó.@ô Að 	Að Aô �q˜˜BÓ×"Ñ"¤B 3Ô'Ð'Ð'Ü�q˜˜1‹~× Ñ ð  "Sô  Tð  	Tð  TÜ�qœœA˜2‹×!Ñ!ð  #Uô  Vð  	Vð  VÜ”q˜‘sœ1˜QÓ×"Ñ"¤3ð  (ZØ~ó$@ô Að 	Að Aäœ�rœ!˜A™#œaÓ ×#Ñ#¤Cð  )[Ø~ó%@ô Að 	Að Aä�qœ#˜h›-¨Ó+×.Ñ.ð  0aö  bð  	bð  bðQ "ðR „B„Fô �7˜F F¨FÓ3×6Ñ6Ð7cÐmqÐ6ÔrÐrÐrÜ�5˜.¨!¨VÓ4×7Ñ7Ð8eÐosÐ7ÔtÐtÐtÜ�6˜=¨%°Ó9×<Ñ<Ð=iÐswÐ<ÔxÐxÐxÜ�6˜=¨%°Ó9×<Ñ<Ð=fÐptÐ<ÔuÐuÐuÜ�6˜>¨5°'Ó:×=Ñ=Ð>jÐtxÐ=ÔyÐyÐyÜ�6˜?¨E°7Ó;×>Ñ>Ð?iÐswÐ>ÔxÐxÐxô �6˜>¨5°'Ó:×=Ñ=Ð>jÔkÐkÐkÜ�6˜?¨E°7Ó;×>Ñ>Ð?kÔlÐlÐlä�; ¨[Ó9×<Ñ<Ð=mÔnÐnÐnä�8˜XÓ&×)Ñ)Ð*SÔTÐTÐTÜ�8˜XÓ&×)Ñ)Ð*UÔVÐVÐVÜ�3˜Ó!×$Ñ$Ð%OÔPÐPÐPÜ�8˜XÓ&×)Ñ)Ð*SÔTÐTÐTÜ�8˜SÓ!×$Ñ$Ð%OÔPÐPÑPr   c                  ó:   — t        t        t        ¬«      «      sJ ‚y )N)rM   )Úisnanr   Únanr8   r   r   Útest_issue_238r±   �  s   € Ü”œ”ÔÐÑr   )Ú__doc__Úmpmathr^   rY   r
   r   rH   rG   rX   r+   rŒ   r�   r“   rF   r9   rN   rd   rp   rz   r€   r‰   rŽ   r‘   r•   rš   r�   r­   r±   r8   r   r   Ú<module>r´      s¨   ðñó Û Û ä àó ñ ˆ1ƒv€Ù	ˆ!ƒf€áˆtƒn€Ùˆtƒn€Ùˆtƒn€á%€ò)?ò\ò4.òb9Hòv;òz+òZ9òv+òZ#òJò.BòHò2WQórr   