Ë
    3^(h2”  ã                   óÆ  — d dl mZmZ ed„ «       Zed„ «       Zed3d„«       Zed3d„«       Zed3d„«       Zed„ «       Zed„ «       Z	ed	„ «       Z
ed
„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zd„ Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zd„ Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zd„ Zd„ Zed3d„«       Z ed3d „«       Z!d4d!„Z"ed3d"„«       Z#ed5d#„«       Z$d$„ Z%ed%„ «       Z&ed&„ «       Z'ei fd'„«       Z(ed6d(„«       Z)ei fd)„«       Z*ed6d*„«       Z+d+„ Z,d,„ Z-d-„ Z.d.i fd/„Z/ed3d0„«       Z0ed3d1„«       Z1y2)7é   )ÚdefunÚdefun_wrappedc                 ó&   — | j                  d|«      S )zCComputes the Bessel function `J_0(x)`. See :func:`~mpmath.besselj`.é    ©Úbesselj©ÚctxÚxs     úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/mpmath/functions/bessel.pyÚj0r      ó   € ð �;‰;�q˜!ÓÐó    c                 ó&   — | j                  d|«      S )zDComputes the Bessel function `J_1(x)`.  See :func:`~mpmath.besselj`.r   r   r	   s     r   Új1r      r   r   c                 óò  ‡ ‡‡‡	‡
‡— t        ‰«      t        u rd}n>‰ j                  ‰«      Š‰ j                  ‰«      }|rt        ‰ j	                  ‰«      «      Š|r!‰dk  rd‰z   ‰ j
                  ‰ ‰|fi |¤Žz  S ‰ j                  ‰«      Š‰ j                  ‰«      Š	|r½‰ j                  |«      Š
‰ j                  ‰
«      r|‰
dk\  rwt        ‰
«      Š
‰ j                  }	 ‰ xj                  dz  c_        ‰ j                  ˆ ˆ
ˆˆfd„t        ‰
dz   «      D «       «      }|‰ _        |‰ j                  d«      ‰
 z  z  }|S ˆ	ˆ ˆfd„} ‰ j                  |‰‰
gfi |¤Ž}|S |s1|r/t        ‰	«      d	k  r!t        ‰«      d
k  r	 ‰ j                  ‰‰«      S ‰sB‰s‰ j                  ‰z   ‰z   }n¦‰ j!                  ‰«      dkD  r‰‰z  }nŒ‰ j"                  ‰z   ‰z   }ny‰ j                  }	 ‰ xj                  t%        dt        ‰	«      z  ‰ j                  «      z  c_        ‰ j'                  ‰dd¬«      Šˆ	ˆ ˆfd„} ‰ j                  |‰gfi |¤Ž}|‰ _        |­}|S # |‰ _        w xY w# t        $ r Y ŒÙw xY w# |‰ _        w xY w)NTr   éÿÿÿÿé   c              3   ó†   •K  — | ]8  }d |z  ‰j                  ‰|«      z  ‰j                  d|z  ‰z   ‰z
  ‰«      z  –— Œ: y­w)r   é   N)Úbinomialr   )Ú.0Úkr
   ÚdÚnÚzs     €€€€r   ú	<genexpr>zbesselj.<locals>.<genexpr>%   sI   øè ø€ ò )Øð ! 1™W s§|¡|°A°aÓ'8Ñ8¸3¿;¹;ÀqÈÁsÈ1ÁuÈQÁwÈqÓ;QÕQñ )ùs   ƒ>Ar   r   c                 ó
  •— ‰j                  ‰j                  ‰‰‰j                  ‰z   ¬«      dd¬«      }d| |z
  dz   z  d| |z
  dz   z  g}d‰j                  ‰g|d| z  z
  d| |z
  gg || dz   dz  | dz   dz  g|| dz   gz   |fg}|S )N©Úprecç      Ð¿T©Úexactç      à?r   r   ©Úfmulr    Úpi©r   r   ÚrÚBÚTÚMr
   r   s        €€€r   Úhzbesselj.<locals>.h+   s¬   ø€ Ø—H‘H˜SŸX™X a¨°·±¸!±˜XÓ<¸eÈ4�HÓP�Ø˜!˜A™#˜a™%‘[ # q¨¡s¨1¡u¡+Ð.�Ø˜Ÿ™ �l A a¨¡c¡E¨#¨a°©c ?°2°a¸!¸A¹#¸s¹ÀAÀaÁCÈÁ9Ð8MÈaÐQRÐSTÑQTÐPUÉgÐVWÐXÐY�Ø�r   é
   é   é   r$   r"   c                 ó¤   •— ‰j                  ‰j                  ‰‰t        d‰j                  ‰z   «      ¬«      d¬«      }‰g| gg | dz   gg | dz   g|fgS )Nr   r   Tr"   r   )Úfnegr&   Úmaxr    )r   r)   r,   r
   Úws     €€€r   r-   zbesselj.<locals>.hG   s[   ø€ ØŸ™ §¡¨!¨Q´S¸¸3¿8¹8ÀA¹:Ó5F Ó!GÈt˜ÓT�AØ˜S 1 # r¨A¨a©C¨5°"°q¸±s°e¸QÐ?Ð@Ð@r   )ÚtypeÚintÚconvertÚisintÚ_rer   Úmagr    ÚfsumÚrangeÚmpfÚ	hypercombÚabsÚ_besseljÚNotImplementedErrorÚoneÚreÚinfÚminr&   )r
   r   r   Ú
derivativeÚkwargsÚn_isintÚorigÚvr-   r,   r   r4   s   ```      @@@r   r   r      s_  ý€ äˆAƒw”#�~Ø‰à�K‰K˜‹NˆØ—)‘)˜A“,ˆÙÜ�C—G‘G˜A“J“ˆAÙ�1�q’5Ø�Q‰w˜˜Ÿ™ a R¨¨JÑA¸&ÑAÑAÐAØ�‰�A‹€AØ�‰�‹
€AÙØ�K‰K˜
Ó#ˆð
 �9‰9�QŒ<˜A šFÜ�A“ˆAØ—8‘8ˆDð Ø—’˜B‘•Ø—H‘Hö )Ü" 1 Q¡3›Zô)ó )�ð  �”Ø�—‘˜“˜q˜bÑ!Ñ!ˆAðJ €HöGð
 �—‘˜a ! A Ñ1¨&Ñ1ˆAð< €Hñ7 ¡¬C°«F°RªK¼CÀ»FÀRºKðØ—|‘| A qÓ)Ð)ñ ÙØ—G‘G˜a‘K ‘M‘Ø—‘˜“˜Q’Ø�a‘C‘à—G‘G˜a‘K !‘O‘ð —8‘8ˆDð
 ð —’œC ¤# a£&¡¨#¯(©(Ó3Ñ3•Ø—H‘H˜Q ¨4�HÓ0�öAð "�C—M‘M ! a SÑ3¨FÑ3�à�”ØˆBˆØ€HøðM  �•ûô 'ò Ùðûð,  �•ús+   Ã>I Å>I Ç!A%I- É	IÉ	I*É)I*É-	I6c                 óö  ‡ ‡‡	— ‰ j                  |«      }‰ j                  ‰«      Š‰sr|rt        ‚|sd|z   ‰z   S ‰ j                  |«      rd|‰z   z  S ‰ j                  |«      }|dk(  r‰ j                  |‰z   z  S |dkD  rd|‰z   z  S ‰ j
                  |‰z   z   S ‰ j                  ‰«      Š	|r0‰ j                  |«      }ˆ	ˆ ˆfd„} ‰ j                  |||gfi |¤Ž}|S ˆ	ˆ ˆfd„} ‰ j                  ||gfi |¤Ž}|S )Nr   r   c                 ó  •— ‰j                  ‰j                  ‰‰‰j                  ‰z   ¬«      dd¬«      }d| |z
  dz   z  d| |z
  dz   z  | dz   g}d‰j                  ‰g|d| z  z
  d| |z
  g| dz   g|| dz   dz  | dz   dz  g||fg}|S )Nr   ç      Ð?Tr"   r$   r   r   r%   r(   s        €€€r   r-   zbesseli.<locals>.hf   s©   ø€ Ø—‘˜Ÿ™ ! Q¨S¯X©X°a©Z˜Ó8¸$Àd�ÓKˆAØ�a˜‘c˜!‘e‘˜c 1 Q¡3 q¡5™k¨1¨Q©3Ð/ˆAØ�S—V‘V˜A�,  ! A¡#¡ c¨!¨A©#˜°°!±¨u°Q¸¸1¹¸c¹	À1ÀQÁ3ÈÁ)Ð7LÈQÈqÐQÐRˆAØˆHr   c           	      óª   •— ‰j                  ‰dd¬«      }‰j                  ||t        d‰j                  ‰z   «      ¬«      }|g| gg | dz   gg | dz   g|fgS )Nr$   Tr"   r   r   r   )r&   r3   r    )r   r4   r)   r,   r
   r   s      €€€r   r-   zbesseli.<locals>.hm   sb   ø€ Ø—‘˜˜C t�Ó,ˆAØ—‘˜˜A¤C¨¨#¯(©(°1©*Ó$5�Ó6ˆAØ�S˜1˜#˜r A a¡C 5¨"¨q°©s¨e°QÐ7Ð8Ð8r   )r7   Ú
ValueErrorr8   rC   ÚnanrD   r:   r>   )
r
   r   r   rF   rG   r)   r   r-   rJ   r,   s
   ` `      @r   ÚbesselirQ   P   s	  ú€ à�‰�A‹€AØ�‰�A‹€AÙÙÜÐÙà�Q‘3�q‘5ˆLØ�9‰9�QŒ<Ø�a˜‘c‘7ˆNØ�F‰F�1‹IˆØ�Š6Ø—7‘7˜A˜a™C‘=Ð Ø�ŠUØ�a˜‘c‘7ˆNà—7‘7˜A˜a™C‘=Ð Ø�‰�‹
€AÙØ�K‰K˜
Ó#ˆö	ð
 ˆC�M‰M˜!˜a ˜UÑ- fÑ-ˆð €Hö	9ð ˆC�M‰M˜!˜a˜SÑ+ FÑ+ˆØ€Hr   c                 ó"  — |sÍ|rt         ‚|s| j                   ||z   z   S | j                  |«      r| j                  ||z   z  S | j	                  |«      }|dz   }| j                  |«      r |dkD  r| j                   ||z   z   S d||z   z  S |dk  r/t        | j                  |«      «      dz  r| j                  ||z   z   S | j                  ||z   z   S | xj                  dz  c_	        | j                  |«      \  }}|| j                   k  r(| j                  ­}	| xj                  dz  c_	        ||	z  }n|dk  r| xj                  |z  c_	        | j                  |«      \  }
} | j                  |||fi |¤Ž|
z   | j                  | ||fi |¤Žz
  |z  S )Nr$   r   r   r.   )rO   rD   ÚimrP   rC   r8   r6   ÚfloorÚninfr    Únint_distanceÚepsÚcospi_sinpir   )r
   r   r   rF   rG   r)   ÚqÚmr   r-   ÚcosÚsins               r   Úbesselyr]   t   sŠ  € áÙäÐÙà—G‘G�8˜q ™sÑ#Ð#Ø�6‰6�!Œ9Ø—7‘7˜a ™c‘?Ð"Ø�F‰F�1‹IˆØˆc‰EˆØ�9‰9�QŒ<Ø�1ŠuØŸ™�x 1 Q¡3Ñ'Ð'à˜A˜a™C‘yÐ ØˆqŠ5”S˜Ÿ™ 1›Ó&¨Ò*Ø—7‘7˜a ™c‘?Ð"à—8‘8˜q ™sÑ#Ð#à‡H‚H��N…HØ×Ñ˜QÓ�D€A€qØˆC�H‰Hˆ9‚}Ø�W‰WˆHˆØ�Š�A‰�Ø	ˆQ‰‰Ø	
ˆQŠØ�Š�A‰�à�‰˜qÓ!�H€CˆØˆC�K‰K˜˜!˜JÑ0¨Ñ0°Ñ4Øˆ�‰�Q�B�q˜Ñ- fÑ-ñ.Ø/2ñ3ð 3r   c                 óº   ‡ ‡— ‰s‰ j                   S ‰ j                  ‰«      }|dk  rˆfd„}n‰ xj                  |z  c_        ˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nr   c                 óv   •— ‰dz  dz  }‰dg|  | dz
  g| gg g d| z
  g|f}‰dg| |  dz
  g|  gg g d| z   g|f}||fS )Nr   r   © )r   r)   ÚT1ÚT2r   s       €r   r-   zbesselk.<locals>.hŸ   so   ø€ Ø�1‘�q‘ˆAØ�Q�˜1˜"˜a ™c˜ Q C¨¨R°!°A±#°¸Ð9ˆBØ�Q�˜!˜a˜R ™T˜ a R D¨"¨b°1°Q±3°%¸Ð:ˆBØ�r�6ˆMr   c           	      óx   •— ‰j                   dz  ‰‰j                  ‰ «      gg d¢g g | dz   d| z
  gg dd‰z  z  fgS )Nr   )r$   ç      à¿r   r$   r   )r'   Úexp©r   r
   r   s    €€r   r-   zbesselk.<locals>.hª   sO   ø€ Ø—f‘f˜Q‘h  3§7¡7¨A¨2£;Ð/²¸rÀ2Ø�3‘˜˜A™�  B¨¨!©¡Hð.ð /ð /r   )rD   r:   r    r>   )r
   r   r   rG   r,   r-   s   ` `   r   Úbesselkrg   ˜   sX   ù€ áØ�w‰wˆØ�‰�‹
€AØˆ1‚uõ	ð 	�Š�A‰�õ	/ð ˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 ón   —  | j                   ||fi |¤Ž| j                   | j                  ||fi |¤Žz  z   S ©N©r   Újr]   ©r
   r   r   rG   s       r   Úhankel1rm   ¯   ó:   € àˆ3�;‰;�q˜Ñ$˜VÑ$ s§u¡u¨[¨S¯[©[¸¸1Ñ-F¸vÑ-FÑ'FÑFÐFr   c                 ón   —  | j                   ||fi |¤Ž| j                   | j                  ||fi |¤Žz  z
  S ri   rj   rl   s       r   Úhankel2rp   ³   rn   r   c                 ó:  — |dk(  rH| j                  |«      dkD  r|S | j                  |«      dk  r| j                  |z   S | j                  |z  S | j                  d|d¬«      }d|z   }| j	                  |«      ||z  z   | j
                  ||z
  dd|z  z   |fi |¤Žz  S )Nr   rd   Tr"   r$   r   r   )rC   rD   rP   r&   re   Úhyp1f1)r
   r   rZ   r   rG   r   Úys          r   Úwhitmrt   ·   s£   € àˆA‚và�6‰6�!‹9�tÒØˆHØ�V‰V�A‹Y˜ÒØ—7‘7˜Q‘;Ðà—7‘7˜Q‘;ÐØ�‰��q ˆÓ%€AØˆA‰€AØ�7‰7�1‹:˜˜1™Ñ˜z˜sŸz™z¨!¨A©#¨q°°1±©u°aÑB¸6ÑBÑBÐBr   c                 ó2  — |dk(  rDt        | j                  |«      «      }|dk  r|S |dkD  r| j                  |z   S | j                  |z  S | j	                  d|d¬«      }d|z   }| j                  |«      ||z  z   | j                  ||z
  dd|z  z   |fi |¤Žz  S )Nr   r$   rd   Tr"   r   r   )r?   rC   rD   rP   r&   re   Úhyperu)r
   r   rZ   r   rG   Úgr   rs   s           r   Úwhitwrx   Å   s¢   € àˆA‚vÜ�—‘�q“	‹NˆØˆsŠ7ØˆHØ�ŠWØ—7‘7˜Q‘;Ðà—7‘7˜Q‘;ÐØ�‰��q ˆÓ%€AØˆA‰€AØ�7‰7�1‹:˜˜1™Ñ˜z˜sŸz™z¨!¨A©#¨q°°1±©u°aÑB¸6ÑBÑBÐBr   c                 ób  ‡ ‡— ‰ j                  |«      \  }}‰ j                  |«      \  }}‰ j                  ‰«      Š‰s@‰ j                  |«      dk  r‰ j                  d|z
  g||z
  dz   g«      S ‰ j                  ‰z   S d|z   |z
  }‰ j                  |«      \  }}	 ‰ j
                  }		 ‰ xj
                  dz  c_        ‰ j                  dd||f||gd‰z  ‰ j
                  ¬«      }
|
‰|z  z  |	‰ _        S # |	‰ _        w xY w# ‰ j                  $ r Y nw xY wˆ ˆfd„} ‰ j                  |||gfi |¤ŽS )Nr   r.   r   r   r   )Úmaxtermsc                 óÊ   •— ‰j                  |«      }‰j                  |gddgg | |z
  dz   |g| g|g‰f}‰j                   |‰gddd|z
  gg | d|z
  g| |z
  dz   gd|z
  g‰f}||fS )Nr   r   r   )Úsinpir'   )ÚaÚbr4   ra   rb   r
   r   s        €€r   r-   zhyperu.<locals>.hé   s‹   ø€ Ø�I‰I�a‹LˆØ�v‰v�aˆj˜!˜B˜  A a¡C¨¡E¨! 9¨a¨S°!°°QÐ7ˆØ—‘ˆw�q˜ˆm˜Q˜r ! A¡#˜J r¨1¨Q¨q©S¨'°1°Q±3°q±5°'¸1¸Q¹3¸%ÀÐBˆØ�2ˆvˆr   )	Ú_convert_paramr7   rC   Ú	gammaprodrD   r    ÚhypsumÚNoConvergencer>   )r
   r}   r~   r   rG   ÚatypeÚbtypeÚbbÚbbtyperI   rJ   r-   s   `  `        r   rv   rv   Ó   s8  ù€ à×!Ñ! !Ó$�H€A€uØ×!Ñ! !Ó$�H€A€uØ�‰�A‹€AÙØ�6‰6�!‹9˜Š>Ø—=‘= ! A¡# ¨¨!©¨A© wÓ/Ð/à—7‘7˜Q‘;ÐØ	
ˆ1‰ˆQ‰€BØ×#Ñ# BÓ'�J€Bˆð	Ø�x‰xˆð	Ø�HŠH˜‰N�HØ—
‘
˜1˜a %¨ °1°b°'¸2¸a¹4È#Ï(É(�
ÓSˆAØ�q˜!‘t‘8àˆC�Hø�tˆC�HûØ×Ñò Ùðúõð
 ˆ3�=‰=˜˜Q˜q˜EÑ, VÑ,Ð,s+   ÂD  Â(AC4 Ã,D  Ã4	C=Ã=D  Ä DÄDc                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc                 ó†   •— ‰dz  d‰j                  ‰j                  «      z  g| dz   dgg | dz   gdgd| dz   g‰dz  dz   fgS ©Nr   r$   r   r   ç      ø?©Úsqrtr'   rf   s    €€r   r-   zstruveh.<locals>.hõ   sa   ø€ Ø�A‘#�s˜3Ÿ8™8 C§F¡FÓ+Ñ+Ð,¨q°©s°B¨i¸¸aÀ¹e¸WÀqÀcÈCÐQRÐSVÑQVÈ<Ð[\Ð]^Ñ[^ÐabÑZbÐYbÐcÐdÐdr   ©r7   r>   ©r
   r   r   rG   r-   s   ` `  r   Ústruvehr�   ð   s=   ù€ à�‰�A‹€AØ�‰�A‹€Aõeàˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc                 ó„   •— ‰dz  d‰j                  ‰j                  «      z  g| dz   dgg | dz   gdgd| dz   g‰dz  dz  fgS r‰   r‹   rf   s    €€r   r-   zstruvel.<locals>.hþ   s^   ø€ Ø�A‘#�s˜3Ÿ8™8 C§F¡FÓ+Ñ+Ð,¨q°©s°B¨i¸¸aÀ¹e¸WÀqÀcÈCÐQRÐSVÑQVÈ<ÐZ[Ð\]ÑZ]Ð`aÑYaÐbÐcÐcr   r�   rŽ   s   ` `  r   Ústruvelr’   ù   s=   ù€ à�‰�A‹€AØ�‰�A‹€Aõdàˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 óŠ   ‡ ‡‡— ‰ j                  |«      d   }‰ j                  ‰«      Šˆ ˆˆfd„} ‰ j                  ||gfi |¤ŽS )Nr   c                 ó0  •— ‰j                   }| |z  }|dz  }||z
  ||z   d|z
  d|z   f\  }}}}‰j                  |«      \  }}	‰dk(  r
|‰z  |	g|g}}
‰dk(  r|‰z  | g|	g}}
‰j                  ‰d¬«      }
ddgg ||gdg||g|f}dgg ||gdg||g|f}||fS )Nr0   r   r   r!   ©Úmult)Úmpq_1_2rX   Úsquare_exp_arg)rJ   r~   ÚurZ   Úa1Úa2Úb1Úb2ÚcÚsÚAr*   r4   ra   rb   r
   Úwhichr   s                  €€€r   r-   z_anger.<locals>.h  sì   ø€ Ø�K‰KˆØˆa‰CˆØˆa‰CˆØ˜‘c˜1˜Q™3  !¡ Q q¡SÐ(‰ˆˆ2ˆb�Ø�‰˜qÓ!‰ˆˆ1Ø�AŠ:Ø�a‘C˜�8˜a˜SˆqˆAØ�AŠ:Ø�a‘C˜!˜�9˜q˜cˆqˆAØ×Ñ˜q uÐÓ-ˆØ��A�˜˜R ˜G a S¨2¨b¨'°1Ð4ˆØ���R˜"˜R˜ 1 #¨¨2 w°Ð1ˆØ�2ˆvˆr   ©r   r7   r>   )r
   r¡   rJ   r   rG   r-   s   `` `  r   Ú_angerr£     sF   ú€ Ø×Ñ˜1Ó˜aÑ €AØ�‰�A‹€Aöð ˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 ó    — t        | d||fi |¤ŽS ©Nr   ©r£   ©r
   rJ   r   rG   s       r   Úangerjr¨     ó   € ä�#�q˜!˜QÑ) &Ñ)Ð)r   c                 ó    — t        | d||fi |¤ŽS ©Nr   r¦   r§   s       r   Úweberer¬     r©   r   c                 ó°   ‡ ‡— ‰ j                  |«      d   }‰ j                  |«      d   }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  |||gfi |¤ŽS )Nr   c           	      óª   •— ‰j                   }‰j                  ‰d¬«      }| |z
  dz   | |z   dz   ‰gdd| dz   gg g dg|| |z
  dz   z  || |z   dz   z  g|ffS )Nr!   r•   r   r   r0   ©r—   r˜   )r™   rJ   r~   r4   r
   r   s       €€r   r-   zlommels1.<locals>.h"  s€   ø€ Ø�K‰KˆØ×Ñ˜q uÐÓ-ˆØ�1‘�Q‘˜˜!™˜A™˜qÐ! B¨¨A¨a©C =°"°b¸1¸#Ø��!‘�A‘‰Y�q˜!˜A™#˜a™%‘yÐ! 1ð&ð 'ð 	'r   r¢   ©r
   r™   rJ   r   rG   r-   s   `  `  r   Úlommels1r±     s]   ù€ à×Ñ˜1Ó˜aÑ €AØ×Ñ˜1Ó˜aÑ €AØ�‰�A‹€Aõ'ð
 ˆ3�=‰=˜˜Q˜q˜EÑ, VÑ,Ð,r   c                 ó°   ‡ ‡— ‰ j                  |«      d   }‰ j                  |«      d   }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  |||gfi |¤ŽS )Nr   c           	      óf  •— ‰j                   }‰j                  ‰d¬«      }| |z
  dz   | |z   dz   ‰gdd| dz   gg g dg|| |z
  dz   z  || |z   dz   z  g|f}d‰g| |z   dz
  | g||| |z   dz   z  g||| z
  dz   z  gg d|z
  g|f}d‰g| |z
  dz
  |g| || |z
  dz   z  g|d| z
  |z
  z  gg d|z   g|f}|||fS )Nr!   r•   r   r   r0   r   r¯   )	r™   rJ   r~   r4   ra   rb   ÚT3r
   r   s	          €€r   r-   zlommels2.<locals>.h4  s  ø€ Ø�K‰KˆØ×Ñ˜q uÐÓ-ˆØ�‰c�!‰e�Q�q‘S˜‘U˜AÐ  R¨¨1© ¨r°2¸°s¸QÀÀ!ÁÀAÁ¹YÀqÈ!ÈAÉ#ÈaÉ%ÁyÐ<QÐSTÐTˆØ�ˆV�a˜‘c˜!‘e˜a˜R�[ 1 a¨¨1©¨Q©¡i .°1°a¸±c¸!±e±9°+¸rÀAÀaÁCÀ5È!ÐKˆØ�ˆV�a˜‘c˜!‘e˜Q�Z 1 " a¨¨1©¨Q©¡i °1°a¸±c¸!±e±9°+¸rÀAÀaÁCÀ5È!ÐKˆð �2�rˆzÐr   r¢   r°   s   `  `  r   Úlommels2rµ   )  s]   ù€ à×Ñ˜1Ó˜aÑ €AØ×Ñ˜1Ó˜aÑ €AØ�‰�A‹€Aõð  ˆ3�=‰=˜˜Q˜q˜EÑ, VÑ,Ð,r   c                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc           	      óÞ   •— ‰dz  dz   }‰j                  d| z  «      \  }}|‰dz  gd| gg | dz   gg dd| dz   z  d| z  dz   g|f}|‰dz  gd| dz   gg | dz   gg dd| dz   z  d| z  dz   g|f}||fS )Né   ç      è¿r   r   r$   rŠ   r0   ©rX   ©r   r)   r[   r\   ra   rb   r
   r   s         €€r   r-   zber.<locals>.hK  s¯   ø€ Ø�‰c�A‰XˆIˆØ—?‘? 5¨¡7Ó+‰ˆˆSØ�1�Q‘3ˆZ˜!˜Q˜  a¨¡c U¨B°°c¸1¸Q¹3±iÀÀQÁÀqÁÐ0IÈ1ÐLˆØ�1�Q‘3ˆZ˜!˜Q˜q™S˜ 2¨¨!© u¨b°3¸¸Q¸q¹S¹	À3ÀqÁ5ÈÁ7Ð2KÈQÐNˆØ�2ˆvˆr   r�   rŽ   s   ` `  r   Úberr¼   F  ó>   ù€ à�‰�A‹€AØ�‰�A‹€Aõð ˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc           	      óÞ   •— ‰dz  dz   }‰j                  d| z  «      \  }}|‰dz  gd| dz   gg | dz   gg dd| dz   z  d| z  dz   g|f}|‰dz  gd| gg | dz   gg dd| dz   z  d| z  dz   g|f}||fS )Nr¸   ç      è?r   r   rŠ   r$   r0   rº   r»   s         €€r   r-   zbei.<locals>.hX  s¯   ø€ Ø�‰c�A‰XˆIˆØ—?‘? 4¨¡6Ó*‰ˆˆSØ�1�Q‘3ˆZ˜!˜Q˜q™S˜ 2¨¨!© u¨b°3¸¸Q¸q¹S¹	À3ÀqÁ5ÈÁ7Ð2KÈQÐNˆØ�1�Q‘3ˆZ˜!˜Q˜  a¨¡c U¨B°°c¸1¸Q¹3±iÀÀQÁÀqÁÐ0IÈ1ÐLˆØ�2ˆvˆr   r�   rŽ   s   ` `  r   ÚbeirÁ   S  r½   r   c                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc           
      óÀ  •— ‰dz  dz   }‰
j                  d| z  «      \  }}‰
j                  d| z  «      \  }}d‰d|z  g|  dz
  | dg|  gg g ddd| z   z  d| dz   z  g|f}d‰| g|  dz
  d| z   dg|  dz
  gg g ddd| z   z  d| dz   z  g|f}d‰d|z  g| dz
  |  dg| gg g ddd| z
  z  dd| z  z
  g|f}d‰| g| dz
  d| z
  dg| dz
  gg g ddd| z
  z  dd| z  z
  g|f}	||||	fS )	Nr¸   rM   rÀ   r   r0   r   r$   rŠ   rº   ©r   r)   Úcos1Úsin1Úcos2Úsin2ra   rb   r´   ÚT4r
   r   s             €€r   r-   zker.<locals>.he  so  ø€ Ø�‰c�A‰XˆIˆØ—_‘_ T¨!¡VÓ,‰
ˆˆdØ—_‘_ T¨!¡VÓ,‰
ˆˆdØ��A�d‘Fˆ^˜q˜b ™d A q˜\¨Q¨B¨4°°R¸#¸sÀAÀaÁC¹yÈ#ÈqÐQRÉsÉ)Ð9TÐVWÐWˆØ��T�Eˆ]˜a˜R ™T 1 Q¡3¨˜N¨a¨R°©T¨F°B¸¸SÀ#ÀqÈÁsÁ)ÈSÐRSÐTUÑRUÉYÐ<WÐYZÐZˆØ��A�d‘Fˆ^˜a ™c A 2 q˜\¨A¨3°°B¸¸cÀ1ÀQÁ3¹iÈÈ3ÈqÉ5ÉÐ8QÐSTÐTˆØ��T�Eˆ]˜Q˜q™S ! A¡# q˜M¨A¨a©C¨5°"°b¸3ÀÀQÀqÁSÁ	È1ÈSÐQRÉUÉ7Ð:SÐUVÐVˆØ�2�r˜2ˆ~Ðr   r�   rŽ   s   ` `  r   ÚkerrÊ   `  ó>   ù€ à�‰�A‹€AØ�‰�A‹€Aõð ˆ3�=‰=˜˜Q˜CÑ* 6Ñ*Ð*r   c                 ó€   ‡ ‡— ‰ j                  |«      }‰ j                  ‰«      Šˆ ˆfd„} ‰ j                  ||gfi |¤ŽS )Nc           
      ó¸  •— ‰dz  dz   }‰
j                  d| z  «      \  }}‰
j                  d| z  «      \  }}| d‰gd| dz
  d| z
  g| dz
  gg g ddd| z
  z  dd| z  z
  g|f}| d‰gd| dz
  |  g| gg g ddd| z
  z  dd| z  z
  g|f}| d‰gd|  dz
  | g|  gg g dd| dz   z  d| dz   z  g|f}| d‰gd|  dz
  | dz   g|  dz
  gg g dd| dz   z  d| dz   z  g|f}	||||	fS )	Nr¸   rÀ   rM   r   r   r0   rŠ   r$   rº   rÄ   s             €€r   r-   zkei.<locals>.hu  sk  ø€ Ø�‰c�A‰XˆIˆØ—_‘_ T¨!¡VÓ,‰
ˆˆdØ—_‘_ T¨!¡VÓ,‰
ˆˆdØˆe�Q˜ˆ]˜Q  !¡ Q q¡S˜M¨A¨a©C¨5°"°b¸3ÀÀQÀqÁSÁ	È1ÈSÐQRÉUÉ7Ð:SÐUVÐVˆØˆe�Q˜ˆ]˜Q  !¡ a R˜L¨1¨#¨r°2¸¸SÀ!ÀAÁ#¹YÈÈ#ÈaÉ%ÉÐ7PÐRSÐSˆØˆe�Q˜ˆ]˜Q   1¡ a˜L¨A¨2¨$°°B¸¸cÀ1ÀQÁ3¹iÈÈaÐPQÉcÉÐ8SÐUVÐVˆØˆe�Q˜ˆ]˜Q   1¡ a¨¡c˜N¨a¨R°©T¨F°B¸¸SÀ#ÀqÈÁsÁ)ÈSÐRSÐTUÑRUÉYÐ<WÐYZÐZˆØ�2�r˜2ˆ~Ðr   r�   rŽ   s   ` `  r   ÚkeirÎ   p  rË   r   c                 ó.   ‡ ‡— ‰ j                   Šˆ ˆfd„}|S )Nc                 ó˜   •— | j                   }| j                  }|j                  ‰d«      \  }}||k\  r|­S | ‰| «      f|‰<   |‰   d   S )N)r   r   r   )Ú_misc_const_cacher    Úget)r
   Úcacher    ÚprJ   ÚfÚnames        €€r   Ú	f_wrappedzc_memo.<locals>.f_wrappedƒ  sX   ø€ Ø×%Ñ%ˆØ�x‰xˆØ�i‰i˜˜fÓ%‰ˆˆ!Ø�Š9Ø�2ˆIà¡ 3£˜.ˆE�$‰KØ˜‘;˜q‘>Ð!r   )Ú__name__)rÕ   r×   rÖ   s   ` @r   Úc_memorÙ   �  s   ù€ Ø�:‰:€Dõ"ð Ðr   c                 ór   — d| j                  d«      | j                  | j                  d«      dz  «      z  z  S )Nr   é	   r   r0   ©ÚcbrtÚgammar=   ©r
   s    r   Ú
_airyai_C1rà   Ž  s/   € à�—‘˜“˜cŸi™i¨¯©°«
°1©Ó5Ñ5Ñ6Ð6r   c                 ór   — d| j                  d«      | j                  | j                  d«      dz  «      z  z  S )Nr   r0   r   rÜ   rß   s    r   Ú
_airyai_C2râ   ’  s/   € à�—‘˜!“˜sŸy™y¨¯©°«°A©Ó6Ñ6Ñ7Ð7r   c                 ót   — d| j                  dd«      | j                  | j                  d«      dz  «      z  z  S )Nr   r0   é   r   ©ÚnthrootrÞ   r=   rß   s    r   Ú
_airybi_C1rç   –  s2   € à�—‘˜A˜aÓ  3§9¡9¨S¯W©W°Q«Z¸©\Ó#:Ñ:Ñ;Ð;r   c                 ón   — | j                  dd«      | j                  | j                  d«      dz  «      z  S )Nr0   rä   r   rå   rß   s    r   Ú
_airybi_C2ré   š  s-   € à�;‰;�q˜Ó˜cŸi™i¨¯©°«
°1©Ó5Ñ5Ð5r   c                 ó°   — | j                   }	 | j                  dd«      | j                  d«      z  d| j                  z  z  }|| _         |­S # || _         w xY w)Nr0   ú2/3r   )r    ÚpowerrÞ   r'   )r
   r    rJ   s      r   Ú_airybi_n2_infrí   ž  sT   € Ø�8‰8€DðØ�I‰I�a˜Ó˜sŸy™y¨Ó/Ñ/°°3·6±6±Ñ:ˆàˆŒØˆ2€Iøð ˆ�ús   Ž4A Á	Ac                 ó  — |dk(  rï|dk  r|S | j                   }| j                  }	 | xj                  dz  c_        | j                  |dz   |z  «      | j                  d||z  «      z  | j                  z  }|dk(  r3|| j                  d|dz   z  |z  «      z  }|| j                  dd«      z  }n;|t        | j                  d|dz   z  |z  «      «      z  }|| j                  dd«      z  }|| _        |­|z   S t        ‚# || _        w xY w)	NÚZr   r.   r   r0   r   rë   z1/6)Úmpq_1_3r    rÞ   rì   r'   r|   r?   rA   )r
   r   r   Úntyper¡   r)   r    rJ   s           r   Ú_airyderiv_0rò   ¨  s  € Ø�‚|ØˆqŠ5ØˆHØ�K‰KˆØ�x‰xˆð
	Ø�HŠH˜‰N�HØ—	‘	˜1˜Q™3 ™'Ó" S§Y¡Y¨q°°1±Ó%5Ñ5¸¿¹Ñ>ˆAØ˜ŠzØ�S—Y‘Y˜q ! A¡#™w q™yÓ)Ñ)�Ø�S—Y‘Y˜q Ó'Ñ'‘à”S˜Ÿ™ 1 a¨¡c¡7¨1¡9Ó-Ó.Ñ.�Ø�S—Y‘Y˜q Ó'Ñ'�àˆCŒHØˆr�A‰vˆô "Ð!øð	 ˆC�Hús   ¦CC; Ã;	Dc           	      ó–  ‡ ‡‡— ‰ j                  ‰«      Š|r‰ j                  |«      \  }}nd}‰ j                  ‰«      s¾‰r¼|rŠdk(  r…|dk(  rR‰‰ j                  k(  r‰ j	                  d«      dz  d‰z  z   S ‰‰ j
                  k(  r‰ j	                  d«      dz  d‰z  z   S |dk  r)‰‰ j                  k(  r‰S ‰‰ j
                  k(  r	d|z  ‰ z  S |s‰‰ j                  k(  s‰‰ j
                  k(  rd‰z  S t        d«      ‚‰r(t        dt        d‰ j                  ‰«      z  «      «      ŠndŠ|r…|dk(  rˆ ˆˆfd	„} ‰ j                  |g fi |¤ŽS ‰dk(  rt        ‰ ‰|d«      S ˆ ˆˆfd
„} ‰ j                  ||gfi |¤Ž}‰ j                  ‰«      r"‰ j                  |«      r‰ j                  |«      }|S ˆ ˆˆfd„} ‰ j                  |g fi |¤ŽS )Nr   rï   r   r   r0   éþÿÿÿzessential singularity of Ai(z)rŠ   c                  óB  •— ‰j                  ‰
«      dkD  rŽ‰xj                  ‰	z  c_        ‰
dz  } d| z  }d| z  dz  }‰xj                  ‰	z  c_        ‰j                  |«       d‰j                  ‰j                  «      z  z  ‰j                  ‰
d«      z  }|gdgg g dd	gg |ffS ‰xj                  ‰	z  c_        ‰
dz  d
z  } ‰xj                  ‰	z  c_        t        ‰«      dz  }t        ‰«      }|‰
gddgg g g ‰j                  g| f}|gdgg g g ‰j                  g| f}||fS )Nr¸   rŠ   r¹   rô   r0   r   r   )r   rä   )é   rä   rÛ   r$   )
r9   r    re   rŒ   r'   ræ   rà   râ   Úmpq_5_3rð   ©r4   r)   r™   ÚCÚC1ÚC2ra   rb   r
   Ú	extraprecr   s           €€€r   r-   zairyai.<locals>.hÝ  s,  ø€ à—7‘7˜1“: ’>Ø—H’H 	Ñ)•HØ˜3™�A E¨!¡G °°A±°a±¨QØ—H’H 	Ñ)•HØŸ™ ›˜ Q s§x¡x°·±Ó'7Ñ%7Ñ8¸¿¹ÀQÀqÓ9IÑI�AØ˜C   B r¨6°%¨.¸¸AÐ>Ð?Ð?ð —H’H 	Ñ)•HØ˜1™˜q™�AØ—H’H 	Ñ)•HÜ# C›¨3Ñ.�BÜ# C›�BØ˜Q˜  1  b¨¨B°·±¨}¸QÐ>�BØ˜˜q˜c " R¨¨C¯K©K¨=¸Ð:�BØ˜r˜6�Mr   c                 ó’  •— ‰xj                   ‰z  c_         ‰dz  dz  }‰xj                   ‰z  c_         ‰j                  ‰j                  ‰j                  }}}|}d}d| z
  |z  }d| z
  |z  }d| |z  z
  }	d‰g| |z
  |  g|g|||	g||g|||	g|f}
|}d| z
  |z  }d| |z  z
  }d| z
  |z  }	d‰‰ g| |z
  |  dg|g|||	g||g|||	g|f}|
|fS ©Nr0   rÛ   r   r   r¸   )r    rð   Úmpq_2_3Úmpq_4_3)r   r4   Úq13Úq23Úq43rš   r›   rœ   r�   Úb3ra   rb   r
   rü   r   s               €€€r   r-   zairyai.<locals>.hô  s  ø€ Ø—’˜IÑ%•Ø�q‘D˜‘F�Ø—’˜IÑ%•Ø!Ÿk™k¨3¯;©;¸¿¹˜�C�Ø�˜1˜ ! A¡# s¡˜b°°!±°S©y¨B¸Q¸qÀ¹u¹W¸"Ø˜�V˜a ™e a R˜[¨2¨$°°B°r°
Ø˜�G˜b  B˜Z¨ð+�à�˜A˜a™C ™9˜¨¨1¨S©5© b°a¸±c¸3±Y°"Ø˜˜Q˜B�Z ! C¡%¨!¨¨Q °"°¸¸2¸b°zØ˜�G˜b  B˜Z¨ð+�à˜2�v�r   c                  ó<  •— ‰j                  ‰
«      dkD  r�‰xj                  ‰	z  c_        ‰
dz  } d| z  }d| z  dz  }‰xj                  ‰	z  c_        ‰j                  |«      d‰j                  ‰j                  «      z  ‰j                  ‰
d«      z  z  }|gdgg g dd	gg |ffS ‰xj                  ‰	z  c_        ‰
dz  d
z  } ‰xj                  ‰	z  c_        t        ‰«      }t        ‰«      }|gdgg g g ‰j                  g| f}‰
|z  gdgg g g ‰j                  g| f}||fS )Nr¸   rŠ   r¹   rô   r0   r   r   )r   rä   )é   rä   rÛ   )
r9   r    re   rŒ   r'   ræ   rà   râ   rÿ   r   rø   s           €€€r   r-   zairyai.<locals>.h  s%  ø€ Ø�w‰w�q‹z˜AŠ~ð —’˜IÑ%•Ø�s‘F�  a¡˜A¨R°©T°!©V¨Ø—’˜IÑ%•Ø—G‘G˜A“J  #§(¡(¨3¯6©6Ó"2Ñ 2°3·;±;¸qÀÓ3CÑ CÑD�Ø˜˜Q˜C  2 u¨U m°B°qÐ9Ð:Ð:à—’˜IÑ%•Ø�q‘D˜1‘H�Ø—’˜IÑ%•Ü “_�Ü “_�Ø�T˜1˜#˜b  B¨¯© }°QÐ6�Ø˜‘d�V˜Q˜C  2 b¨#¯+©+¨°qÐ8�Ø˜2�v�r   )r7   r   ÚisnormalrD   r=   rU   rO   r3   r6   r:   r>   rò   Ú_is_real_typer8   r9   ©	r
   r   rF   rG   r   rñ   r-   rJ   rü   s	   ``      @r   Úairyair
  ¾  sÄ  ú€ à�‰�A‹€AÙØ×%Ñ% jÓ1‰ˆ‰5àˆà�<‰<˜Œ?™qÙ�˜#’Ø�BŠwØ˜Ÿ™’<ØŸ7™7 1›: a™<¨!¨A©#Ñ-Ð-Ø˜Ÿ™’=ØŸ7™7 2›; q™=¨1¨Q©3Ñ.Ð.Ø�2ŠvØ˜Ÿ™’<Ø�HØ˜Ÿ™’=Ø ™7 q b™>Ð)Ù�q˜CŸG™G’| q¨C¯H©H¢}Ø�Q‘3ˆJäÐ9Ó:Ð:áÜ˜œ3˜s 3§7¡7¨1£:™~Ó.Ó/‰	àˆ	ÙØ�Š6ö"ð$ !�3—=‘=  BÑ1¨&Ñ1Ð1à�AŠvÜ# C¨¨A¨u°aÓ8Ð8öð �—‘˜a ! Ñ/¨Ñ/ˆAØ× Ñ  Ô#¨¯	©	°!¬Ø—G‘G˜A“J�ØˆHö	ð& ˆs�}‰}˜Q Ñ- fÑ-Ð-r   c           	      ó   ‡ ‡‡— ‰ j                  ‰«      Š|r‰ j                  |«      \  }}nd}‰ j                  ‰«      sƒ‰r�|rMdk(  rH‰‰ j                  k(  r‰S ‰‰ j                  k(  r(|dk(  rd‰z  S |dk(  rt        ‰ «      S |dk  r	d|z  ‰ z  S |s%‰‰ j                  k(  r‰S ‰‰ j                  k(  rd‰z  S t        d«      ‚‰r(t        dt        d‰ j                  ‰«      z  «      «      ŠndŠ|r…|dk(  rˆ ˆˆfd„} ‰ j                  |g fi |¤ŽS ‰dk(  rt        ‰ ‰|d«      S ˆ ˆˆfd	„} ‰ j                  ||gfi |¤Ž}‰ j                  ‰«      r"‰ j                  |«      r‰ j                  |«      }|S ˆ ˆˆfd
„} ‰ j                  |g fi |¤ŽS )Nr   rï   r   r   rô   zessential singularity of Bi(z)rŠ   c                  óþ   •— ‰xj                   ‰z  c_         ‰dz  dz  } ‰xj                   ‰z  c_         t        ‰«      dz  }t        ‰«      }|‰gddgg g g ‰j                  g| f}|gdgg g g ‰j                  g| f}||fS )Nr0   rÛ   r$   r   r   )r    rç   ré   r÷   rð   ©r4   rú   rû   ra   rb   r
   rü   r   s        €€€r   r-   zairybi.<locals>.h;  sŒ   ø€ Ø—’˜IÑ%•Ø�q‘D˜1‘H�Ø—’˜IÑ%•Ü “_ SÑ(�Ü “_�Ø˜�V˜Q˜q˜E " R¨¨C¯K©K¨=¸Ð:�Ø�T˜1˜#˜b  B¨¯© }°QÐ6�Ø˜2�v�r   c                 óÀ  •— ‰xj                   ‰z  c_         ‰dz  dz  }‰xj                   ‰z  c_         ‰j                  ‰j                  ‰j                  }}}‰j                  }‰j
                  }|}d}d| z
  |z  }	d| z
  |z  }
d| |z  z
  }d‰g| |z
  |  g|g|	|
|g||g|	|
|g|f}|}d| z
  |z  }	d| |z  z
  }
d| z
  |z  }d‰g| |z
  d| z
  g|g|	|
|g||g|	|
|g|f}||fS rþ   )r    rð   rÿ   r   Úmpq_1_6Úmpq_5_6)r   r4   r  r  r  Úq16Úq56rš   r›   rœ   r�   r  ra   rb   r
   rü   r   s                 €€€r   r-   zairybi.<locals>.hH  s&  ø€ Ø—’˜IÑ%•Ø�q‘D˜‘F�Ø—’˜IÑ%•Ø!Ÿk™k¨3¯;©;¸¿¹˜�C�Ø—k‘k�Ø—k‘k�Ø�˜1˜ ! A¡# s¡˜b°°!±°S©y¨B¸Q¸qÀ¹u¹W¸"Ø˜�V˜a ™e a R˜[¨2¨$°°B°r°
Ø˜�G˜b  B˜Z¨ð+�à�˜A˜a™C ™9˜¨¨1¨S©5© b°a¸±c¸3±Y°"Ø˜�V˜a ™e Q q¡S˜\¨B¨4°"°R¸°Ø˜�G˜b  B˜Z¨ð+�à˜2�v�r   c                  óú   •— ‰xj                   ‰z  c_         ‰dz  dz  } ‰xj                   ‰z  c_         t        ‰«      }t        ‰«      }|gdgg g g ‰j                  g| f}‰|z  gdgg g g ‰j                  g| f}||fS )Nr0   rÛ   r   )r    rç   ré   rÿ   r   r  s        €€€r   r-   zairybi.<locals>.h[  s‡   ø€ Ø�HŠH˜	Ñ!�HØ�1‘�q‘ˆAØ�HŠH˜	Ñ!�HÜ˜C“ˆBÜ˜C“ˆBØ��q�c˜"˜R  C§K¡K =°Ð2ˆBØ�B‘$�˜˜˜B˜r " c§k¡k ]°1Ð4ˆBØ�r�6ˆMr   )r7   r   r  rD   rU   rí   rO   r3   r6   r:   r>   rò   r  r8   r9   r	  s	   ``      @r   Úairybir    sš  ú€ à�‰�A‹€AÙØ×%Ñ% jÓ1‰ˆ‰5àˆà�<‰<˜Œ?™qÙ�˜#’Ø�C—G‘GŠ|Ø�Ø�C—H‘HŠ}Ø˜’7Ø˜Q™3�JØ˜’7Ü)¨#Ó.Ð.Ø�r’6Ø ™7 q b™>Ð)ÙØ�C—G‘GŠ|Ø�Ø�C—H‘HŠ}Ø˜‘s�
äÐ9Ó:Ð:ÙÜ˜œ3˜s 3§7¡7¨1£:™~Ó.Ó/‰	àˆ	ÙØ�Š6öð !�3—=‘=  BÑ1¨&Ñ1Ð1à�AŠvÜ# C¨¨A¨u°aÓ8Ð8öð �—‘˜a ! Ñ/¨Ñ/ˆAØ× Ñ  Ô#¨¯	©	°!¬Ø—G‘G˜A“J�ØˆHö	ð ˆs�}‰}˜Q Ñ- fÑ-Ð-r   c                 ó(  ‡ — d„ }d„ }t        |«      }|dk  rt        d«      ‚|dvrt        d«      ‚|dk(  rs|r5‰ j                  ˆ fd„ |d	‰ j                  z  d
|z  d	z
  z  dz  «       «      S ‰ j                  ‰ j                   |d	‰ j                  z  d
|z  dz
  z  dz  «       «      S |dk(  rx|dk(  rs|r5‰ j                  ˆ fd„ |d	‰ j                  z  d
|z  dz
  z  dz  «       «      S ‰ j                  ‰ j
                   |d	‰ j                  z  d
|z  d	z
  z  dz  «       «      S |dk(  rç|dk(  rá|rld	‰ j                  z  d
|z  d	z
  z  dz  d‰ j                  z  z   }‰ j                  ‰ j                  d«      d	z  «       ||«      z  }‰ j                  ˆ fd„|«      S d	‰ j                  z  d
|z  dz
  z  dz  d‰ j                  z  z   }‰ j                  ‰ j                  d«      d	z  «       ||«      z  }‰ j                  ‰ j
                  |«      S y y )Nc                 ó*   — | dz  dd| dz  dz  z  z
  z  S )NçUUUUUUå?r   rö   r   é0   r`   ©Úts    r   ÚUz_airy_zero.<locals>.Uh  ó    € �Q˜‘Y  ! Q¨¡T¨"¡W¡+¡Ñ.Ð.r   c                 ó*   — | dz  dd| dz  dz  z  z   z  S )Nr  r   r  r   r  r`   r  s    r   r+   z_airy_zero.<locals>.Ti  r  r   r   zk cannot be less than 1©r   r   z%Derivative should lie between 0 and 1r   c                 ó(   •— ‰j                  | d«      S r«   )r
  ©r   r
   s    €r   ú<lambda>z_airy_zero.<locals>.<lambda>q  ó   ø€ ¨#¯*©*°Q°q«/€ r   r0   r¸   é   Fc                 ó(   •— ‰j                  | d«      S r«   ©r  r   s    €r   r!  z_airy_zero.<locals>.<lambda>v  r"  r   Ty              è?c                 ó(   •— ‰j                  | d«      S r«   r%  r   s    €r   r!  z_airy_zero.<locals>.<lambda>}  r"  r   )	r6   rO   Úfindrootr'   r
  r  Úln2Úexpjpir=   )	r
   r¡   r   rF   Úcomplexr  r+   r  rŸ   s	   `        r   Ú
_airy_zeror+  f  s  ø€ â.Ú.ÜˆA‹€AØˆ1‚uÜÐ2Ó3Ð3Ø˜ÑÜÐ@ÓAÐAØ�‚zÙØ—<‘<Ó 9Ù�1�S—V‘V‘8˜Q˜q™S ™UÑ# AÑ%Ó&Ð&ó(ð (à�|‰|˜CŸJ™J©¨1¨S¯V©V©8°Q°q±S¸±UÑ+;¸AÑ+=Ó)>Ð(>Ó?Ð?Ø�‚z�g Ò&ÙØ—<‘<Ó 9Ù�1�S—V‘V‘8˜Q˜q™S ™UÑ# AÑ%Ó&Ð&ó(ð (à�|‰|˜CŸJ™J©¨1¨S¯V©V©8°Q°q±S¸±UÑ+;¸AÑ+=Ó)>Ð(>Ó?Ð?Ø�‚z�g ’oÙØ�#—&‘&‘˜!˜A™#˜a™%Ñ  Ñ" U¨3¯7©7¡]Ñ2ˆAØ—
‘
˜3Ÿ7™7 1›: a™<Ó(©1¨Q«4Ñ/ˆAØ—<‘<Ó 9¸1Ó=Ð=Øˆc�f‰f‰H�a˜‘c˜!‘eÑ˜QÑ  s§w¡w¡Ñ.ˆØ�J‰J�s—w‘w˜q“z !‘|Ó$¡q¨£tÑ+ˆØ�|‰|˜CŸJ™J¨Ó*Ð*ð &€zr   c                 ó    — t        | d||d«      S )Nr   F©r+  )r
   r   rF   s      r   Ú
airyaizeror.  ‚  s   € ä�c˜1˜a ¨UÓ3Ð3r   c                 ó    — t        | d|||«      S r«   r-  )r
   r   rF   r*  s       r   Ú
airybizeror0  †  s   € ä�c˜1˜a ¨WÓ5Ð5r   c           	      óF  ‡ ‡‡‡‡— ‰ j                  ‰«      Š‰ j                  ‰«      r?‰‰ j                  k(  r‰dk(  rd‰z  S ‰dk(  r‰S ‰‰ j                  k(  rd‰z  S t	        d«      ‚‰r(t        dt        d‰ j                  ‰«      z  «      «      ŠndŠ‰j                  d«      rt        ‚	 ‰ j                  ‰«      dkD  r²‰dk(  rRt        ‰ j                  ‰«      «      ‰ j                  dz  dz  k  r%ˆ ˆfd„}‰ j                  |g ‰ j                  d	¬
«      S ‰dk(  rVt        ‰ j                  ‰ «      «      d‰ j                  z  dz  dz  k  r%ˆ ˆfd„}‰ j                  |g ‰ j                  d	¬
«      S ˆ ˆˆˆˆfd„} ‰ j                  |g fi ‰¤ŽS # ‰ j                  $ r Y Œ.w xY w)Nr   r   zessential singularityrŠ   rF   r0   g+‡ÙÎ÷ï?c            	      óD   •— ‰ j                   ‰gddgg g g d¢g d‰dz  z  ffS ©Nr   ))r   r0   )r   r0   r   rÛ   r0   ©r'   ©r
   r   s   €€r   r-   z_scorer.<locals>.hž  s/   ø€ Ø!Ÿf™f Q˜Z¨¨B¨°°2²oÀbÈÈ1ÈaÉ4ÉÐPÐRÐRr   T)rz   Úforce_seriesr   c            	      óF   •— ‰ j                    ‰gddgg g g d¢g d‰dz  z  ffS r3  r4  r5  s   €€r   r-   z_scorer.<locals>.h¢  s1   ø€ Ø"Ÿv™v˜g a˜[¨"¨R¨°°B²ÀrÈ!ÈAÈqÉDÉ&ÐQÐSÐSr   c                  ó6  •—  ‰j                   ‰	fi ‰¤Ždz  } d‰j                  z  }‰dk(  r
| dz  } |dz  }‰xj                  ‰z  c_        ‰	dz  dz  }‰xj                  ‰z  c_        | gdgg g g g df}|‰	gddgg g dg‰j                  ‰j                  g|f}||fS )Nr0   rô   r   r   r   rÛ   r   )r  r'   r    r   r÷   )
r    r*   r4   ra   rb   r
   rü   rG   r¡   r   s
        €€€€€r   r-   z_scorer.<locals>.h§  s¸   ø€ ØˆC�J‰J�qÑ#˜FÑ# AÑ%ˆØˆs�v‰v‰IˆØ�AŠ:Ø�‰FˆAØ�‰GˆAØ�Š�IÑ�Øˆq‰D�‰FˆØ�Š�IÑ�ØˆS�1�#�r˜2˜r 2 qÐ(ˆØ�ˆU�R˜�F˜B  Q C¨#¯+©+°c·k±kÐ)BÀAÐEˆØ�2ˆvˆr   )r7   ÚisinfrD   rU   rO   r3   r6   r:   rÒ   rA   r?   Úargr'   r>   r    r‚   )r
   r   r¡   rG   r-   rü   s   ```` @r   Ú_scorerr;  Š  s€  ü€ Ø�‰�A‹€AØ
‡y�y�„|Ø�—‘Š<Ø˜Šz ! A¡#˜:Ø˜Šz !˜8Ø�—‘Š=Ø�Q‘3ˆJÜÐ0Ó1Ð1ÙÜ˜œ3˜s 3§7¡7¨1£:™~Ó.Ó/‰	àˆ	Ø‡z�z�,ÔÜ!Ð!ðØ�7‰7�1‹:˜Š>Ø˜Šzœc #§'¡'¨!£*›o°·±°q±¸5Ñ0@Ò@õSà—}‘} Q¨°S·X±XÈD�}ÓQÐQØ˜Šzœc #§'¡'¨1¨"£+Ó.°°3·6±6±¸!±¸eÑ1CÒCõTà—}‘} Q¨°S·X±XÈD�}ÓQÐQ÷ð ð ˆ3�=‰=˜˜BÑ) &Ñ)Ð)øð ×Ñò Ùðús   Â+A*F ÄAF ÆF ÆF c                 ó   — t        | |d|«      S r¥   ©r;  ©r
   r   rG   s      r   Úscorergir?  µ  ó   € ä�3˜˜1˜fÓ%Ð%r   c                 ó   — t        | |d|«      S r«   r=  r>  s      r   ÚscorerhirB  ¹  r@  r   c                 ó  — ||f|v r"|||f   d   | j                   k\  r|||f   d   ­S | j                  d|z  dz   «      }| j                  d|z   | j                  |z  z   «      }| j                  d|z   | j                  |z  z
  «      }d|z  | j                  | j                   |z  |z   |z   dz  |z
  «      z  }| j                  |«      s"| j                  |«      s| j                  |«      }| j                   |f|||f<   |S )Nr   r   r   )r    Úloggammark   re   r'   rS   rC   )r
   ÚlÚetaÚ_cacheÚG3ÚG1ÚG2rJ   s           r   ÚcoulombcrK  ½  sþ   € à	ˆ3€x�6Ñ˜f Q s U™m¨AÑ.°#·(±(Ò:Ø�q˜�u‘˜aÑ Ð Ð Ø	�‰�a˜‘c˜!‘eÓ	€BØ	�‰�a˜‘c˜#Ÿ%™% ™)‘mÓ	$€BØ	�‰�a˜‘c˜#Ÿ%™% ™)‘mÓ	$€BØ	ˆ1‰ˆs�w‰w˜Ÿ™˜ ™ B™ rÑ)¨1Ñ,¨rÑ1Ó2Ñ2€AØ�F‰F�1ŒI˜Ÿ™ œØ�F‰F�1‹IˆØ—X‘X˜q�M€Fˆ1ˆSˆ5�MØ€Hr   c                 óú   ‡ ‡‡— ˆ ˆˆfd„} ‰ j                   |||gfi |¤Ž}|rX‰ j                  |«      sG‰ j                  |«      s6‰ j                  ‰«      s%‰ j                  ‰«      dk\  r‰ j                  |«      }|S )Nc                 ó:  •— 	 ‰j                   ‰z  }‰j                  |‰	d¬«      }‰j                  |dd¬«      }‰j                  | |«      }|‰	‰j                  |«      gd| dz   dgg g d| z   ||z  z   gd| z  dz   g|f}|fS # t        $ r dgdgg g g g df}Y |fS w xY w)NTr"   rô   r   r   r   r   )rk   r&   rK  re   rO   )
rE  rF  ÚjwÚjwzÚjwz2rù   ra   r
   r4   r   s
          €€€r   r-   zcoulombf.<locals>.hÐ  sÎ   ø€ ð	.Ø—‘�q‘ˆBØ—(‘(˜2˜q¨�(Ó-ˆCØ—8‘8˜C ¨4�8Ó0ˆDØ—‘˜Q Ó$ˆAØ�Q˜Ÿ™ ›Ð%¨¨1¨Q©3° {°B¸¸Q¸q¹SÀÀCÁ¹Z¸LØ�1‘�Q‘�˜ðˆBð ˆuˆøô ò 	.Ø��r�d˜B  B¨¨AÐ-‰BØˆuˆð	.ús   ƒA;B ÂBÂBr   )r>   rS   rC   ©	r
   rE  rF  r   r4   ÚchoprG   r-   rJ   s	   `  ``    r   ÚcoulombfrS  Ê  sg   ú€ ö
ð 	ˆ�‰�a˜!˜C˜Ñ+ FÑ+€AÙ�S—V‘V˜A”Y¨¯©°¬¸s¿v¹vÀa¼yØ	�‰�‹�aŠØ�F‰F�1‹IˆØ€Hr   c                 ó²   ‡ ‡‡— ‰‰f|v r!|‰‰f   d   ‰ j                   k\  r
|‰‰f   d   S ˆ ˆˆfd„}‰ j                  |d«      }‰ j                   |f|‰‰f<   |S )Nr   r   c                  ó  •— ‰ dz
  } ‰j                   ‰z  }‰j                  d‰z   |z   «      dz  ‰j                  d‰z   |z
  «      dz  ‰j                  d| z   |z   «      dz  ‰j                  d| z   |z
  «      dz  ‰dz    ‰j                  z  gS )Nr   y       €      à¿y              à?r$   )rk   rD  r'   )Úl2Újetar
   rF  rE  s     €€€r   Útermsz_coulomb_chi.<locals>.termså  sš   ø€ ØˆR�‰TˆØ�u‰u�S‰yˆØ—‘˜Q˜q™S ™XÓ&¨%Ñ0Ø�L‰L˜˜1™˜T™Ó" dÑ+Ø�L‰L˜˜2™˜d™Ó# tÑ,Ø�L‰L˜˜2™˜d™Ó# uÑ-Ø�‰eˆH�S—V‘V‰Oð	ð 	r   )r    Úsum_accurately)r
   rE  rF  rG  rX  rJ   s   ```   r   Ú_coulomb_chirZ  á  sm   ú€ à	ˆ3€x�6Ñ˜f Q s U™m¨AÑ.°#·(±(Ò:Ø�a˜�e‰}˜QÑÐöð 	×Ñ˜5 !Ó$€AØ—X‘X˜q�M€Fˆ1ˆSˆ5�MØ€Hr   c                 ó>  ‡ ‡‡— ‰ j                  |«      s‰ j                  |«      }ˆ ˆˆfd„} ‰ j                  |||gfi |¤Ž}|rX‰ j                  |«      sG‰ j                  |«      s6‰ j                  ‰«      s%‰ j                  ‰«      dk\  r‰ j                  |«      }|S )Nc                 ó8  •— ‰j                  | dz  «      rdgdgg g g g df}|fS |  dz
  }	 ‰j                  | |«      }‰j                  ‰z  }‰j                  |«      }‰j	                  |«      }‰j                  | |«      }‰j                  ||«      }	‰j                  |‰z  «      }
d|z  ‰z  }||‰|
|gdd| dz   ddgg g d| z   ||z  z   gd| z  dz   g|f}| |	‰|
gdd|dz   dgg g d|z   ||z  z   gd|z  dz   g|f}||fS # t        $ r dgdgg g g g df}|fcY S w xY w)Nr   r   r   r   rô   )r8   rZ  rk   r\   r[   rK  re   rO   )rE  rF  ra   rV  ÚchirN  rŸ   rž   rú   rû   r™   r   rb   r
   r4   r   s                €€€r   r-   zcoulombg.<locals>.hø  s}  ø€ à�9‰9�Q�q‘SŒ>Ø��r�d˜B  B¨¨AÐ-ˆBØ�5ˆLØˆR�‰Tˆð	Ø×"Ñ" 1 cÓ*ˆCØ—‘�q‘ˆBØ—‘˜“ˆA #§'¡'¨#£,˜aØ—‘˜a Ó$ˆBØ—‘˜b Ó%ˆBØ—‘˜˜1™“ˆAØ�2‘�a‘ˆAØ�R˜˜A˜qÐ! B¨¨1¨Q©3°°1Ð#5°r¸2Ø�1‘�R˜‘V‘�˜q ™s 1™u˜g qð)ˆBà�"�b˜!˜Q� B¨¨2¨a©4°Ð#3¸¸BØ�2‘�b˜‘f‘�  "¡ Q¡˜x¨ð+ˆBà�r�6ˆMøÜò 	Ø��r�d˜B  B¨¨AÐ-ˆBØ�5ŠLð	ús   «CC? Ã?DÄDr   )Ú_imr9   r>   rQ  s	   `  ``    r   Úcoulombgr_  ñ  s�   ú€ ð
 �7‰7�1Œ:Ø�G‰G�A‹Jˆöð, 	ˆ�‰�a˜!˜C˜Ñ+ FÑ+€AÙ�S—W‘W˜Q”Z¨#¯'©'°#¬,ÀÇÁÈÄØ	�‰�‹�qŠØ�G‰G�A‹JˆØ€Hr   c                 óR  — d|dz  z  }|dk(  r |sd|z  d|z  z   dz
  | j                   z  dz  }|dk(  r |sd|z  d|z  z   dz
  | j                   z  dz  }|dk(  r |rd|z  d|z  z   dz
  | j                   z  dz  }|dk(  r |rd|z  d|z  z   dz
  | j                   z  dz  }|s€}|dz
   d|z  z  }d|dz
  z  d|z  dz
  z  dd|z  dz  z  z  }	d	|dz
  z  d
|dz  z  d|z  z
  dz   z  dd|z  dz  z  z  }
d|dz
  z  d|dz  z  d|dz  z  z
  d|z  z   dz
  z  dd|z  dz  z  z  }|r‰}|dz    d|z  z  }dd|dz  z  d|z  z   dz
  z  dd|z  dz  z  z  }	d	d
|dz  z  d|dz  z  z   d|z  z
  dz   z  dd|z  dz  z  z  }
dd|dz  z  d|dz  z  z   d|dz  z  z
  d|z  z   dz
  z  dd|z  dz  z  z  }	
g}|}d}t        dt        |«      «      D ]9  }t        ||   «      t        ||dz
     «      k  r	|||   z  }Œ,t        ||   «      }Œ; t        |«      dz
  k(  rt        |d   «      }||fS ) aj  
    Computes an estimate for the location of the Bessel function zero
    j_{v,m}, y_{v,m}, j'_{v,m} or y'_{v,m} using McMahon's asymptotic
    expansion (Abramowitz & Stegun 9.5.12-13, DLMF 20.21(vi)).

    Returns (r,err) where r is the estimated location of the root
    and err is a positive number estimating the error of the
    asymptotic expansion.
    r¸   r   r   r0   r#  éüÿÿÿrö   é   iàÿÿÿéS   iÖ  iÃ  r   r  iÀÿÿÿi%  iÿX iO2 iuÈ_ éi   éR   rÛ   i  iß  iÑ  i,† i il"q i»QY g        r   )r'   r<   Úlenr?   )r
   ÚkindÚprimerJ   rZ   r™   r~   Ús1Ús2Ús3Ús4Ús5rX  rŸ   ÚerrÚis                   r   Úmcmahonrp    sè  € ð 	
ˆ!ˆQ‰$‰€AØˆq‚y™ Q q¡S¨¨1©¡W¨Q¡Y°·±Ñ$6°qÑ$8 Øˆq‚y™ Q q¡S¨¨1©¡W¨Q¡Y°·±Ñ$6°qÑ$8 Øˆq‚y‘U  1¡ Q q¡S¡¨¡¨C¯F©FÑ 2°1Ñ 4˜AØˆq‚y‘U  1¡ Q q¡S¡¨¡¨C¯F©FÑ 2°1Ñ 4˜AÙØˆØ�‰sˆV�Q�q‘S‰\ˆØ��1‘‰X�q˜‘s˜2‘vÑ  1 Q¡3¨¡(¡
Ñ+ˆØ�!�A‘#‰Y˜˜1˜a™4™  A¡™ dÑ*Ñ+¨R°°1±°q±©[Ñ9ˆØ�!�A‘#‰Y˜˜Q ™T™	 &¨¨A©¡+Ñ-¨g°a©iÑ7¸Ñ?Ñ@À#ÀqÈÁsÈQÁhÁ,ÑOˆÙØˆØ�‰sˆV�Q�q‘S‰\ˆØ��1�a‘4‘˜˜1™‘˜Q‘Ñ  A a¡C¨!¡8¡Ñ,ˆØ�"�Q˜‘T‘'˜$˜q !™t™)Ñ# D¨¡FÑ*¨4Ñ/Ñ0°"°a¸±c¸A±X±+Ñ>ˆØ�$�q˜!‘t‘)˜F 1 a¡4™KÑ'¨°°1±©Ñ4°W¸Q±YÑ>¸wÑFÑGÈÈaÐPQÉcÐTUÉXÉÑVˆØ��2�b˜Ð€EØ
€AØ
€CÜ�1”S˜“ZÓ ò  ˆÜˆu�Q‰x‹=œ3˜u Q q¡S™z›?Ò*Ø��q‘‰M‰Aä�e˜A‘h“-‰Cð	 ð
 	ŒC�‹J�q‰LÒÜ�%˜‘)‹nˆØˆcˆ6€Mr   c                 óR  — |dk  rt        d«      ‚|dz   }g }g }	 | j                  |||«      }|D �cg c]  }| j                   ||«      «      ‘Œ }}t        |dz
  «      D �	cg c]   }	||	   ||	dz      z  dk(  r||	   ||	dz      f‘Œ" }
}	t	        |
«      |k(  r|
S |dz  }Œ„c c}w c c}	w )zî
    Given f known to have exactly n simple roots within [a,b],
    return a list of n intervals isolating the roots
    and having opposite signs at the endpoints.

    TODO: this can be optimized, e.g. by reusing evaluation points.
    r   zn cannot be less than 1r   r   )rO   ÚlinspaceÚsignr<   rf  )r
   rÕ   r}   r~   r   ÚNÚpointsÚsignsr   ro  Úok_intervalss              r   Úgeneralized_bisectionrx  ;  sÕ   € ð 	ˆ1‚uÜÐ2Ó3Ð3Ø	ˆ!‰€AØ€FØ€EØ
Ø—‘˜a  !Ó$ˆØ)/Ö0 A�—‘™!˜A›$•Ð0ˆÐ0Ü9>¸qÀ¹s»ö *°AØ�Q‰x˜˜a ™c™
Ñ" bÒ(ð   ™ 6¨!¨A©#¡;Ò/ð *ˆð *äˆ|Ó Ò!ØÐØˆa‰Cˆð ùâ0ùò*s   ²BÁ"%B$c                 ó,   — | j                  ||dd¬«      S )NÚillinoisF)ÚsolverÚverify)r'  )r
   rÕ   Úabs      r   Úfind_in_intervalr~  Q  s   € Ø�<‰<˜˜2 j¸ˆ<Ó?Ð?r   g{®Gáz„?c           	      óh  ‡ ‡— ‰ j                   }t        |‰ j                  ‰«      ‰ j                  |«      «      dz   }	 |‰ _         ‰ j                  ‰«      Št	        |«      }t	        |«      }‰dk  rt        d«      ‚|dk  rt        d«      ‚|dvrt        d«      ‚|dk(  r|rˆ ˆfd„}	nˆ ˆfd	„}	|d
k(  r|rˆ ˆfd„}	nˆ ˆfd„}	|dk(  r`|r^|dk(  rY‰dk(  r‰ j                  |‰ _         S ‰dk  r<d
‰ j                  ‰d‰z   z  ‰d
z   z  «      z  }
t        ‰ 	|
dz  d
|
z  f«      |‰ _         S ||‰|f|v rt        ‰ 	|||‰|f   «      |‰ _         S t        ‰ ||‰|«      \  }
}||k  rt        ‰ 	|
|z
  |
|z   f«      |‰ _         S |dk(  r|sd}|dk(  r|rd}|d
k(  r|sd}|d
k(  r|rd}|dz   }	 t        ‰ ||‰|«      \  }}||k  rct        ‰ ||‰|dz   «      \  }}t        ‰ 	d||z   z  |«      }t        |«      D ]  \  }}||||‰|dz   f<   Œ t        ‰ |	||dz
     «      |‰ _         S |d
z  }Œ€# |‰ _         w xY w)Nr.   r   zv cannot be negativer   zm cannot be less than 1r  z prime should lie between 0 and 1c                 ó,   •— ‰j                  ‰| d¬«      S ©Nr   )rF   r   ©r   r
   rJ   s    €€r   r!  zbessel_zero.<locals>.<lambda>c  ó   ø€  C§K¡K°°!¸q KÓ$A€ r   c                 ó(   •— ‰j                  ‰| «      S ri   r   r‚  s    €€r   r!  zbessel_zero.<locals>.<lambda>d  ó   ø€  C§K¡K°°!Ó$4€ r   r   c                 ó,   •— ‰j                  ‰| d¬«      S r�  ©r]   r‚  s    €€r   r!  zbessel_zero.<locals>.<lambda>f  rƒ  r   c                 ó(   •— ‰j                  ‰| «      S ri   r‡  r‚  s    €€r   r!  zbessel_zero.<locals>.<lambda>g  r…  r   g333333@gÍÌÌÌÌÌü?gš™™™™™é?g       @r$   )r    r3   r:   r=   r6   rO   ÚzerorŒ   r~  rp  rx  Ú	enumerate)r
   rg  rh  rJ   rZ   ÚisoltolÚ_interval_cacher    ÚworkprecrÕ   r)   rn  Úlowr   Úr1Úr2Úerr2Ú	intervalsr   r}  s   `  `                r   Úbessel_zeror“  T  s   ù€ Ø�8‰8€DÜ�4˜Ÿ™ › S§W¡W¨Q£ZÓ0°Ñ3€Hð0ØˆŒØ�G‰G�A‹JˆÜ�‹FˆÜ�E“
ˆØˆqŠ5ÜÐ3Ó4Ð4ØˆqŠ5ÜÐ6Ó7Ð7Ø˜‰~ÜÐ?Ó@Ð@Ø�1Š9ÙÔA‘aÜ4�aØ�1Š9ÙÔA‘aÜ4�að �1Š9™ 1¨¢6Ø�AŠvØ—x‘xð6 ˆ�ð5 �AŠvà�c—h‘h˜q ! A¡#™w¨¨!©™}Ó-Ñ-�Ü'¨¨Q°°2±°q¸±s°Ó<ð. ˆ�ð- ��q˜Ð˜Ñ.Ü# C¨¨O¸DÀÀqÈ¸NÑ,KÓLð* ˆ�ô) ˜˜d E¨1¨aÓ0‰ˆˆ3Ø�Š=Ü# C¨¨Q¨w©Y¸¸'¹	Ð,BÓCð$ ˆ�ð! �1Š9™U¨# CØ�1Š9™ c Ø�1Š9™U¨# CØ�1Š9™ c Øˆa‰CˆØÜ˜c 4¨°°1Ó5‰GˆB�Ø�WŠ}Ü" 3¨¨e°Q¸¸!¹Ó<‘��DÜ1°#°q¸#¸sÀBÀrÁE¹{ÈAÓN�	Ü& yÓ1ò ;‘E�A�rØ8:�O D¨¨q°°1±Ð$4Ò5ð;ä'¨¨Q°	¸!¸A¹#±Ó?ð ˆ�ð �a‘C�ð øð ˆ�ús+   ¾B!H( Ã'9H( Ä(H( Å+H( Å>BH( È"H( È(	H1c                 ó"   — t        | d|||«      ­S )aÿ  
    For a real order `\nu \ge 0` and a positive integer `m`, returns
    `j_{\nu,m}`, the `m`-th positive zero of the Bessel function of the
    first kind `J_{\nu}(z)` (see :func:`~mpmath.besselj`). Alternatively,
    with *derivative=1*, gives the first nonnegative simple zero
    `j'_{\nu,m}` of `J'_{\nu}(z)`.

    The indexing convention is that used by Abramowitz & Stegun
    and the DLMF. Note the special case `j'_{0,1} = 0`, while all other
    zeros are positive. In effect, only simple zeros are counted
    (all zeros of Bessel functions are simple except possibly `z = 0`)
    and `j_{\nu,m}` becomes a monotonic function of both `\nu`
    and `m`.

    The zeros are interlaced according to the inequalities

    .. math ::

        j'_{\nu,k} < j_{\nu,k} < j'_{\nu,k+1}

        j_{\nu,1} < j_{\nu+1,2} < j_{\nu,2} < j_{\nu+1,2} < j_{\nu,3} < \cdots

    **Examples**

    Initial zeros of the Bessel functions `J_0(z), J_1(z), J_2(z)`::

        >>> from mpmath import *
        >>> mp.dps = 25; mp.pretty = True
        >>> besseljzero(0,1); besseljzero(0,2); besseljzero(0,3)
        2.404825557695772768621632
        5.520078110286310649596604
        8.653727912911012216954199
        >>> besseljzero(1,1); besseljzero(1,2); besseljzero(1,3)
        3.831705970207512315614436
        7.01558666981561875353705
        10.17346813506272207718571
        >>> besseljzero(2,1); besseljzero(2,2); besseljzero(2,3)
        5.135622301840682556301402
        8.417244140399864857783614
        11.61984117214905942709415

    Initial zeros of `J'_0(z), J'_1(z), J'_2(z)`::

        0.0
        3.831705970207512315614436
        7.01558666981561875353705
        >>> besseljzero(1,1,1); besseljzero(1,2,1); besseljzero(1,3,1)
        1.84118378134065930264363
        5.331442773525032636884016
        8.536316366346285834358961
        >>> besseljzero(2,1,1); besseljzero(2,2,1); besseljzero(2,3,1)
        3.054236928227140322755932
        6.706133194158459146634394
        9.969467823087595793179143

    Zeros with large index::

        >>> besseljzero(0,100); besseljzero(0,1000); besseljzero(0,10000)
        313.3742660775278447196902
        3140.807295225078628895545
        31415.14114171350798533666
        >>> besseljzero(5,100); besseljzero(5,1000); besseljzero(5,10000)
        321.1893195676003157339222
        3148.657306813047523500494
        31422.9947255486291798943
        >>> besseljzero(0,100,1); besseljzero(0,1000,1); besseljzero(0,10000,1)
        311.8018681873704508125112
        3139.236339643802482833973
        31413.57032947022399485808

    Zeros of functions with large order::

        >>> besseljzero(50,1)
        57.11689916011917411936228
        >>> besseljzero(50,2)
        62.80769876483536093435393
        >>> besseljzero(50,100)
        388.6936600656058834640981
        >>> besseljzero(50,1,1)
        52.99764038731665010944037
        >>> besseljzero(50,2,1)
        60.02631933279942589882363
        >>> besseljzero(50,100,1)
        387.1083151608726181086283

    Zeros of functions with fractional order::

        >>> besseljzero(0.5,1); besseljzero(1.5,1); besseljzero(2.25,4)
        3.141592653589793238462643
        4.493409457909064175307881
        15.15657692957458622921634

    Both `J_{\nu}(z)` and `J'_{\nu}(z)` can be expressed as infinite
    products over their zeros::

        >>> v,z = 2, mpf(1)
        >>> (z/2)**v/gamma(v+1) * \
        ...     nprod(lambda k: 1-(z/besseljzero(v,k))**2, [1,inf])
        ...
        0.1149034849319004804696469
        >>> besselj(v,z)
        0.1149034849319004804696469
        >>> (z/2)**(v-1)/2/gamma(v) * \
        ...     nprod(lambda k: 1-(z/besseljzero(v,k,1))**2, [1,inf])
        ...
        0.2102436158811325550203884
        >>> besselj(v,z,1)
        0.2102436158811325550203884

    r   ©r“  ©r
   rJ   rZ   rF   s       r   Úbesseljzeror—  ‰  s   € ô` ˜˜Q 
¨A¨qÓ1Ð1Ð1r   c                 ó"   — t        | d|||«      ­S )aÆ  
    For a real order `\nu \ge 0` and a positive integer `m`, returns
    `y_{\nu,m}`, the `m`-th positive zero of the Bessel function of the
    second kind `Y_{\nu}(z)` (see :func:`~mpmath.bessely`). Alternatively,
    with *derivative=1*, gives the first positive zero `y'_{\nu,m}` of
    `Y'_{\nu}(z)`.

    The zeros are interlaced according to the inequalities

    .. math ::

        y_{\nu,k} < y'_{\nu,k} < y_{\nu,k+1}

        y_{\nu,1} < y_{\nu+1,2} < y_{\nu,2} < y_{\nu+1,2} < y_{\nu,3} < \cdots

    **Examples**

    Initial zeros of the Bessel functions `Y_0(z), Y_1(z), Y_2(z)`::

        >>> from mpmath import *
        >>> mp.dps = 25; mp.pretty = True
        >>> besselyzero(0,1); besselyzero(0,2); besselyzero(0,3)
        0.8935769662791675215848871
        3.957678419314857868375677
        7.086051060301772697623625
        >>> besselyzero(1,1); besselyzero(1,2); besselyzero(1,3)
        2.197141326031017035149034
        5.429681040794135132772005
        8.596005868331168926429606
        >>> besselyzero(2,1); besselyzero(2,2); besselyzero(2,3)
        3.384241767149593472701426
        6.793807513268267538291167
        10.02347797936003797850539

    Initial zeros of `Y'_0(z), Y'_1(z), Y'_2(z)`::

        >>> besselyzero(0,1,1); besselyzero(0,2,1); besselyzero(0,3,1)
        2.197141326031017035149034
        5.429681040794135132772005
        8.596005868331168926429606
        >>> besselyzero(1,1,1); besselyzero(1,2,1); besselyzero(1,3,1)
        3.683022856585177699898967
        6.941499953654175655751944
        10.12340465543661307978775
        >>> besselyzero(2,1,1); besselyzero(2,2,1); besselyzero(2,3,1)
        5.002582931446063945200176
        8.350724701413079526349714
        11.57419546521764654624265

    Zeros with large index::

        >>> besselyzero(0,100); besselyzero(0,1000); besselyzero(0,10000)
        311.8034717601871549333419
        3139.236498918198006794026
        31413.57034538691205229188
        >>> besselyzero(5,100); besselyzero(5,1000); besselyzero(5,10000)
        319.6183338562782156235062
        3147.086508524556404473186
        31421.42392920214673402828
        >>> besselyzero(0,100,1); besselyzero(0,1000,1); besselyzero(0,10000,1)
        313.3726705426359345050449
        3140.807136030340213610065
        31415.14112579761578220175

    Zeros of functions with large order::

        >>> besselyzero(50,1)
        53.50285882040036394680237
        >>> besselyzero(50,2)
        60.11244442774058114686022
        >>> besselyzero(50,100)
        387.1096509824943957706835
        >>> besselyzero(50,1,1)
        56.96290427516751320063605
        >>> besselyzero(50,2,1)
        62.74888166945933944036623
        >>> besselyzero(50,100,1)
        388.6923300548309258355475

    Zeros of functions with fractional order::

        >>> besselyzero(0.5,1); besselyzero(1.5,1); besselyzero(2.25,4)
        1.570796326794896619231322
        2.798386045783887136720249
        13.56721208770735123376018

    r   r•  r–  s       r   Úbesselyzeror™  û  s   € ôr ˜˜Q 
¨A¨qÓ1Ð1Ð1r   N)r   )F)r   F)r   T)2Ú	functionsr   r   r   r   r   rQ   r]   rg   rm   rp   rt   rx   rv   r�   r’   r£   r¨   r¬   r±   rµ   r¼   rÁ   rÊ   rÎ   rÙ   rà   râ   rç   ré   rí   rò   r
  r  r+  r.  r0  r;  r?  rB  rK  rS  rZ  r_  rp  rx  r~  r“  r—  r™  r`   r   r   ú<module>r›     sF  ðß +àñó ðð ñó ðð ò@ó ð@ðD ò!ó ð!ðF ò!3ó ð!3ðF ñ+ó ð+ð, ñGó ðGð ñGó ðGð ñCó ðCð ñCó ðCð ñ-ó ð-ð8 ñ+ó ð+ð ñ+ó ð+ò+ð& ñ*ó ð*ð ñ*ó ð*ð ñ	-ó ð	-ð ñ-ó ð-ð8 ñ
+ó ð
+ð ñ
+ó ð
+ð ñ+ó ð+ð ñ+ó ð+ò ð ñ7ó ð7ð ñ8ó ð8ð ñ<ó ð<ð ñ6ó ð6òò"ð, òY.ó ðY.ðv òI.ó ðI.óV+ð8 ò4ó ð4ð ò6ó ð6ò)*ðV ñ&ó ð&ð ñ&ó ð&ð Ø!#ò 
ó ð
ð òó ðð, Ø%'ò ó ðð ò ó ð òD%òNò,@ð 15Àbó 3ðj òo2ó ðo2ðb òX2ó ñX2r   