Ë
    täi:Ž  ã                   ó  — d dl mZ ddlmZ ddlmZmZmZ ed+d„«       Zed,d„«       Z	ed„ «       Z
ed	„ «       Zg d
¢Zd„ Zed-d„«       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed.d„«       Zd„ Zd„ Zd„ Zd„ Zed„ «       Zed.d„«       Zed.d„«       Zed„ «       Zed„ «       Zed/d„«       Zed0d „«       Z d!„ Z!d"„ Z"ed gdfd#„«       Z#edgd fd$„«       Z$d%„ Z%d&„ Z&d'„ Z'd(„ Z(ed1d)„«       Z)ed*„ «       Z*y)2é    )Úprint_functioné   )Úxrangeé   )ÚdefunÚdefun_wrappedÚdefun_staticc                 ó"  ‡ ‡‡‡	— ‰ j                  ‰«      Š‰ j                  ‰«      Š‰dk  r‰ j                  d«      S t        ‰ d«      r‰ j                  }n	i x}‰ _        ‰dk(  r0‰dk(  r‰ j                  ­S ‰|v r|‰   \  }}|‰ j
                  k\  r|­S dŠ	ˆˆ ˆ	ˆfd„}‰ j
                  }	 ‰dkD  r'd‰ _        ‰ j                  |d‰ j                  gd¬	«      Š	|d
z   t        ‰dz  «      z   ‰ _        ‰ j                  |d‰ j                  gd¬	«      }‰ j                  ‰«      ‰z  d‰z  z  ‰ j                  ‰«      ‰dz   z  ‰dz   z  z
  d|z  ‰z  ‰	z  z   }|‰ _        ‰dk(  r"‰ j                  ‰«      r‰ j
                  |f|‰<   |­S # |‰ _        w xY w)Nr   z&Stieltjes constants defined for n >= 0Ústieltjes_cacher   c                 óú   •— | ‰z  }|‰j                   z
  ‰j                  ‰‰j                   | z  z
  «      ‰z  z  d|dz  z   z  ‰j                  d‰j                  z  | z  «      dz
  z  }‰j	                  |«      ‰z  S ©Nr   r   )ÚjÚlnÚexpÚpiÚ_re)ÚxÚxaÚvÚaÚctxÚmagÚns      €€€€úd/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/mpmath/functions/zeta.pyÚfzstieltjes.<locals>.f   sw   ø€ Øˆq‰SˆØ�—‘‰X�s—v‘v˜a §¡ a¡™iÓ(¨!Ñ+Ñ+¨Q¨r°1©u©WÑ5°s·w±w¸qÀÇÁ¹xÈ¹zÓ7JÈ1Ñ7LÑMˆØ�w‰w�q‹z˜CÑÐó    é2   é   é   )Ú	maxdegreeé
   ç      à?r   )ÚconvertÚ
bad_domainÚhasattrr   ÚeulerÚprecÚquadÚinfÚintr   Úisint)
r   r   r   r   r'   Úsr   Úorigr   r   s
   ```      @r   Ú	stieltjesr.      sš  û€ à�‰�A‹€AØ�‰�A‹€AØˆ1‚uØ�~‰~ÐFÓGÐGÜˆsÐ%Ô&Ø×-Ñ-‰à02Ð2ˆ˜#Ô-ØˆA‚vØ�Š6Ø—I‘I�:ÐØ�ÑØ% aÑ(‰GˆD�!Ø�s—x‘xÒØ�r�	Ø
€C÷ ð �8‰8€Dð
ð ˆrŠ6ØˆCŒHØ—(‘(˜1˜q §¡˜k°Q�(Ó7ˆCØ˜"‘9œs 1 c¡6›{Ñ*ˆŒØ�H‰H�Q˜˜3Ÿ7™7˜¨rˆHÓ2ˆØ�F‰F�1‹I�q‰L˜!˜A™#Ñ §¡¨£¨Q¨q©SÑ!1°1°Q±3Ñ!7Ñ7¸!¸A¹#¸a¹%À¹)ÑCˆàˆŒØˆA‚v�#—)‘)˜A”,Ø!Ÿh™h¨˜]ˆ˜ÑØˆ2€Iøð ˆ�ús   Â+B)F Æ	Fc                 ó,  — t        |«      }|| j                  k(  s|| j                  k(  r=|dk  r,|| j                  k(  r|dk(  r| j                  S | j                  S | j                  S |dk(  rÅ| j	                  |«      rY| j                  dd|z  z   «      }| j                  dd|z  z
  «      }| j                  | j                  «       dz  |z  d||z
  z  z
  S | j                  |«      r|S | j	                  | j                  dd|z  z   «      «      | j                  | j                  «      dz  |z  z
  S |dkD  rßd|dz
  z  | j                  |dz
  dd|z  z
  «      z  }d|dz
  z  | j                  |dz
  dd|z  z   «      z  }| j	                  |«      r4|dk(  r'd| j                  | j                  «      z  d||z   z  z   S d||z   z  S |dk(  r6| j                  d| j                  | j                  «      z  d||z   z  z   «      S | j                  d||z   z  «      S y )Nr   r   ç      Ð?y              à?ù       €      à¿r   ç      à¿)r*   r)   ÚninfÚzeroÚ_imÚloggammar   r   ÚisinfÚ	polygammaÚlogr   )r   ÚtÚ
derivativeÚdr   Úbs         r   Úsiegelthetar>   ,   sô  € äˆJ‹€AØ	
ˆc�g‰gŠ˜˜cŸh™hšØˆqŠ5Ø�C—H‘HŠ}  a¢Ø—x‘x�Ø—7‘7ˆNà—8‘8ˆOØˆA‚vØ�7‰7�1Œ:à—‘˜T $ q¡&™[Ó)ˆAØ—‘˜T $ q¡&™[Ó)ˆAØ—F‘F˜3Ÿ6™6“N�? 1Ñ$ QÑ&¨¨q°©s©Ñ3Ð3à�y‰y˜Œ|Ø�Ø—7‘7˜3Ÿ<™<¨¨T°!©V©Ó4Ó5¸¿¹¸s¿v¹v»ÀqÑ8HÈÑ8JÑJÐJØˆ1‚uØ�a˜‘c‰N˜3Ÿ=™=¨¨1©¨d°4¸±6©kÓ:Ñ:ˆØ�Q�q‘S‰M˜#Ÿ-™-¨¨!©¨T°$°q±&©[Ó9Ñ9ˆØ�7‰7�1Œ:Ø�AŠvØ˜CŸG™G C§F¡F›OÑ+¨D°!°A±#©JÑ6Ð6à˜Q˜q™S‘zÐ!à�AŠvØ—w‘w˜t C§G¡G¨C¯F©F£OÑ3°D¸!¸A¹#±JÑ>Ó?Ð?à—w‘w˜t Q q¡S™zÓ*Ð*ð r   c           	      óÄ   ‡ ‡— d‰ j                   z  ‰ j                  d‰ j                  d‰z  dz   d‰ j                  z  z  «      z   «      z  }‰ j	                  ˆ ˆfd„|«      S )Nr   r   é   c                 óF   •— ‰j                  | «      ‰j                  ‰z  z
  S ©N)r>   r   )r:   r   r   s    €€r   Ú<lambda>zgrampoint.<locals>.<lambda>S   s   ø€  #§/¡/°!Ó"4°S·V±V¸A±XÒ"=r   )r   r   ÚlambertwÚeÚfindroot)r   r   Úgs   `` r   Ú	grampointrH   N   sU   ù€ ð 	
ˆ#�&‰&‰�—‘˜˜3Ÿ<™<¨¨1©¨Q©°°3·5±5±Ñ(9Ó:Ñ:Ó;Ñ;€AØ�<‰<Ô=¸qÓAÐAr   c           
      ó  ‡ ‡‡‡‡‡‡‡‡‡‡‡‡— t        |j                  dd«      «      }‰ j                  |«      }‰ j                  |«      }‰ j	                  |«      }‰ j
                  }	 t        |«      d|z  kD  r>|dz  |k  r6‰ j                  ||«      }‰ j                  |«      r‰ j                  |«      S |S ‰ xj
                  dz  c_        ‰ j                  ‰ j                  |«      «      }‰ j                  d‰ j                  |z  z   «      Š|dk(  r1|‰z  }|‰ _        ‰ j                  |«      r‰ j                  |«      S |­S ‰ j                  d‰ j                  |z  z   d¬«      Š‰ j                  |d¬«      Š|dk(  rD‰ j                  |z  ‰‰‰z  z   z  }|‰ _        ‰ j                  |«      r‰ j                  |«      S |­S ‰ j                  d‰ j                  |z  z   d¬«      Š‰ j                  |d¬«      Š‰dz  ‰ j                  ‰z  z
  Š|dk(  rMˆˆˆˆˆfd	„}	‰ j                  |	d«      }| |z  }|‰ _        ‰ j                  |«      r‰ j                  |«      S |­S ‰ xj
                  d
z  c_        ‰ j                  d‰ j                  |z  z   d¬«      Š‰ j                  |d¬«      Š‰dz  d‰ j                  z  ‰z  ‰z  z
  ‰z
  Š|dk(  r\ˆˆˆˆˆˆˆfd„}	‰ j                  |	d«      }‰ j                   |z  |z  }|‰ _        ‰ j                  |«      r‰ j                  |«      S |­S ‰ j                  d‰ j                  |z  z   d¬«      Š‰ j                  |d¬«      Šˆ ˆˆˆˆfd„}	‰ j                  |	d«      Š|dk(  rQˆˆˆ ˆˆˆˆˆˆˆf
d„}	‰ j                  |	d«      }||z  }|‰ _        ‰ j                  |«      r‰ j                  |«      S |­S |dkD  rˆ fd„}
‰ j                  |
||dz
  ¬«      S y # t        $ r Y �ŒGw xY w)Nr;   r   éô  r   é   r"   r   ©r;   c                  ó    •— d‰z  ‰z  ‰‰‰ z  gS ©Nr   © )Úcomb1Útheta1ÚzÚz1Úz2s   €€€€€r   Útermszsiegelz.<locals>.termsz   s   ø€ Ø�b‘D˜‘K  Q u¡WÐ-Ð-r   r!   r   c                  ó2   •— d‰z  ‰z  d‰z  ‰ z  ‰‰‰z  z   gS )Nr   rO   )rP   Úcomb2rQ   rR   rS   rT   Úz3s   €€€€€€€r   rU   zsiegelz.<locals>.terms‡   s(   ø€ Ø�v‘X˜b‘[ ! B¡$ u¡*¨b°°5±©jÐ9Ð9r   é   c                  óv   •— ‰dz  d‰ j                   z  ‰dz  z  ‰z  d‰dz  z  d‰z  ‰z  ‰ j                   ‰z  gS )NrY   éúÿÿÿr   éýÿÿÿéüÿÿÿ©r   )r   rQ   Útheta2Útheta3Útheta4s   €€€€€r   rU   zsiegelz.<locals>.terms‘   sL   ø€ Ø˜‘	˜2˜cŸe™e™8 F¨A¡IÑ-¨fÑ4°b¸À¹±lØˆv‰I�fÑ˜cŸe™e F™lð,ð 	,r   c                  ój   •
— d‰dz  z  ‰z  d‰j                   z  ‰z  ‰z  d‰z  ‰z  d‰z  ‰ z  ‰	‰‰z  gS )Né   r   r[   rY   r^   )
rW   Úcomb3r   rQ   r_   rR   rS   rT   rX   Úz4s
   €€€€€€€€€€r   rU   zsiegelz.<locals>.terms–   sL   ø€ Ø�v˜q‘y‘[ ‘^ R¨¯©¡X¨b¡[°Ñ%7¸¸6¹À"¹Ø�2‘�e‘˜R  5¡ð*ð *r   c                 ó*   •— ‰j                  | d¬«      S )NrY   rL   )Úsiegelz)r   r   s    €r   rC   zsiegelz.<locals>.<lambda>    s   ø€ �c—k‘k !°�kÔ2r   )r   )r*   Úgetr#   r   r5   r'   ÚabsÚrs_zÚ_is_real_typeÚNotImplementedErrorÚexpjr>   Úzetar   Úsum_accuratelyÚdiff)r   r:   Úkwargsr<   Út1Út2r'   r   Úe1rU   ÚhrP   rW   rd   rQ   r_   r`   ra   rR   rS   rT   rX   re   s   `          @@@@@@@@@@@@r   rg   rg   V   sÑ  ÿü€ äˆF�J‰J�| QÓ'Ó(€AØ�‰�A‹€AØ	�‰�‹€BØ	�‰�‹€BØ�8‰8€DðÜˆr‹7�S˜‘XÒ " a¡%¨"¢*Ø—‘˜˜A“ˆAØ× Ñ  Ô#Ø—w‘w˜q“zÐ!ØˆHð ‡H‚H��N…HØ	�‰�#—/‘/ !Ó$Ó	%€BØ�‰��S—U‘U˜1‘W‘Ó€AØˆA‚vØˆq‰DˆØˆŒØ×Ñ˜QÔØ—7‘7˜1“:ÐØˆrˆ	Ø	�‰�#�c—e‘e˜A‘g‘+¨!ˆÓ	,€BØ�_‰_˜Q¨1ˆ_Ó-€FØˆA‚vØ�U‰U�2‰X�r˜!˜F™(‘{Ñ#ˆØˆŒØ×Ñ˜QÔØ—7‘7˜1“:ÐØˆrˆ	Ø	�‰�#�c—e‘e˜A‘g‘+¨!ˆÓ	,€BØ�_‰_˜Q¨1ˆ_Ó-€FØ�A‰I�c—e‘e˜F‘lÑ"€EØˆA‚v÷	.ð 	.à×Ñ˜u aÓ(ˆØˆS�‰UˆØˆŒØ×Ñ˜QÔØ—7‘7˜1“:ÐØˆrˆ	Ø‡H‚H��N…HØ	�‰�#�c—e‘e˜A‘g‘+¨!ˆÓ	,€BØ�_‰_˜Q¨1ˆ_Ó-€FØ�A‰I�a˜Ÿ™‘g˜f‘n VÑ+Ñ+¨FÑ2€EØˆA‚v÷	:ò 	:à×Ñ˜u aÓ(ˆØ�e‰eˆV�B‰Y�q‰[ˆØˆŒØ×Ñ˜QÔØ—7‘7˜1“:ÐØˆrˆ	Ø	�‰�#�c—e‘e˜A‘g‘+¨!ˆÓ	,€BØ�_‰_˜Q¨1ˆ_Ó-€F÷,ð ,ð ×Ñ˜u aÓ(€EØˆA‚v÷	*õ 	*ð ×Ñ˜u aÓ(ˆØ�‰TˆØˆŒØ×Ñ˜QÔØ—7‘7˜1“:ÐØˆrˆ	Øˆ1‚uÛ2ˆØ�x‰x˜˜1  !¡ˆxÓ$Ð$ð øôy ò Úðús   Á)AO3 Â6O3 Ï3	P Ï?P )dgŒ­�±úD,@g|¸Èc¤5@g‚÷�Ç9@glŠ®Äl>@gY°w@@gjDËâËB@gp`§•˜uD@g,¥Š‰Ý©E@ge¸¸È¨ H@gÜËPñãH@gæNƒ~3|J@gáC ¥9L@g7”ðk¬M@gï1ý·wjN@g?aóë3GP@g�ûž�ÅP@gMÎá>øbQ@gY`³OLR@g€§íR@gXàGEIS@gÊXe�—ÕS@giµ®CºT@gHõ&Q/U@gÜ©³7ÛU@gùK`zÈ3V@gÂwG{W@g‡¢êž¯©W@gr x¸÷W@gË»;I2µX@gSñ¾«WTY@gts7oîY@g´~Úx•\Z@gEA�†ÊÊZ@gKÐéãÁ[@g|jú÷[@gäZÝ~”\@gàU-î�]@gBí¼/œ²]@ggÁÆ °W^@gü'åÙ˜¼^@gè›·o_@g¾CYá_@gÚ¡«¾„2`@g#œ-XÎb`@gg’ví¯`@g®ñS5Ø`@gñåÓ�¶Ca@g™{�wa@gÎ:iõ£a@gÀñ¨=”ãa@g±l@b@g'B/K‡mb@gŸ;up¶Áb@gHýÙµ›Ýb@gÕ¬JÊ c@gŸ¤óóœƒc@gZUàx³c@gÒ�d3Ûc@gu…þ&d@g¼ªá’û`d@gÇÄ¸«/±d@g¸2«îæåd@g–1E#e@g× Lé.=e@gOÐ¢N+­e@g“ÆBV"Øe@gÄ'Ò: f@g£åx¹Lf@g�¦KÖS}f@g‡�c Æf@gÿ£ûg@goLc<)3g@gstUSgg@gô.õ+Q­g@g6×p^Ú h@g£™Î�"h@g%¢-!~hh@g@T¥#œh@go··j}Àh@g
¡Ùx(i@g®ã¸†ËOi@gxÛ™Ê†i@g5Í\¡¬i@gkµ£ ýi@gëŠ�Är2j@gÀqß‹vj@gÈ'"«j@gÖ�d�Ñj@g¹hÜlk@g‰Ñ¿)bk@g”y�à–k@gÇWÈ­k@g=I™X9 l@g `Lewl@göõ¶x|ml@g+PýÌªl@g…Š»‹èl@gü¢bn—ÿl@gßöõ]06m@gâJ}Æ�m@c                 ó¼   — dd l }|j                  | «      }|j                  «       D �cg c]  }t        |«      ‘Œ }}t	        |d   «      dk(  sJ ‚|t
        d d  y c c}w )Nr   é   )ÚurllibÚurlopenÚ	readlinesÚfloatÚroundÚ_zeta_zeros)Úurlrx   r<   r   ÚLs        r   Ú_load_zeta_zerosr€   »   sU   € ÛØ�‰�sÓ€AØŸ;™;œ=Ó)™=�aŒˆq�˜=€AÐ)ä��1‘‹;˜"ÒÐÐØ„K‘�Nùò 	*s   ¨Ac           	      ól  — t        |«      }|dk  r | j                  | «      j                  «       S |dk(  rt        d«      ‚|t	        t
        «      kD  r|dk  rt        |«       |t	        t
        «      kD  rt        d«      ‚| j                  d| j                  | j                  t
        |dz
     «      «      S )Nr   zn must be nonzeroi † zn too large for zetazerosr"   r   )r*   ÚzetazeroÚ	conjugateÚ
ValueErrorÚlenr}   r€   rl   ÚmpcrF   rg   )r   r   r~   s      r   Úoldzetazeror‡   Ã   sœ   € äˆA‹€AØˆ1‚uØ�|‰|˜Q˜BÓ×)Ñ)Ó+Ð+ØˆA‚vÜÐ,Ó-Ð-ØŒ3Œ{ÓÒ  V¢Ü˜ÔØŒ3Œ{ÓÒÜ!Ð"=Ó>Ð>Ø�7‰7�3˜Ÿ™ S§[¡[´+¸aÀ¹cÑ2BÓCÓDÐDr   c           	      ó¬  — |dk(  r| j                   S t        |«      dkD  rZ| j                  |«      }d| j                  | j                  |«      «      z  }t        |«      t        |«      | j                  z  k  r|S t        |«      dk  r8| xj
                  t        | j                  t        |«      d«       «      z  c_        | j                  x}}| j                  |«      }d}t        |«      t        |«      | j                  z  kD  rO||z  |z  }|||| j                  |dz   «      z  z  z  }|dz  }t        |«      t        |«      | j                  z  kD  rŒO|S )Nr   éè  r"   g{®Gáz„?r   r   )r4   ri   ÚliÚsqrtÚepsr'   r*   r9   Úoner   Ú	_zeta_int)r   r   r   r=   r,   r:   ÚuÚks           r   Úriemannrr‘   Ð   s!  € àˆA‚vØ�x‰xˆä
ˆ1ƒv�‚}Ø�F‰F�1‹IˆØ�—‘�s—x‘x “{Ó#Ñ#ˆÜˆq‹6”C˜“F˜3Ÿ7™7‘NÒ"ØˆHÜ
ˆ1ƒv�‚}à�Š”C˜Ÿ™¤ Q£¨Ó*Ð*Ó+Ñ+�à�G‰G€O€AˆØ�‰ˆq‹	€AØ	€AÜ
ˆa‹&”3�q“6˜#Ÿ'™'‘>Ò
!Ø�‰E�A‰IˆØ	ˆQ�!�c—m‘m A a¡CÓ(Ñ(Ñ)Ñ)ˆØ	ˆQ‰ˆô ˆa‹&”3�q“6˜#Ÿ'™'‘>Ó
!ð €Hr   c                 óX   — t        |«      }|dk  ryt        | j                  |«      «      S )Nr   r   )r*   r…   Úlist_primes)r   r   s     r   Úprimepir”   ç   s)   € äˆA‹€AØˆ1‚uØÜˆs�‰˜qÓ!Ó"Ð"r   c                 óf  — t        |«      }|dk  r| j                  j                  S |dk  r*| j                  j                  | j	                  |«      «      S | j                  |«      }| j                  |d¬«      | j                  |d¬«      z  dz  | j                  d¬«      z  }| j                  | j                  j                  |«      |z
  j                  d¬«      }| j                  | j                  j                  |«      |z   j                  d¬«      }| j                  j                  ||g«      S )Nr   ia
  r�   )Úroundingr@   r<   )r*   Ú_ivr4   Úmpfr”   rŠ   r‹   r   r   Úfloorr   Úceilr=   )r   r   ÚmidÚerrr   r=   s         r   Úprimepi2r�   ï   só   € äˆA‹€AØˆ1‚uØ�w‰w�|‰|ÐØˆ4‚xØ�w‰w�{‰{˜3Ÿ;™; q›>Ó*Ð*Ø
�&‰&�‹)€Cà
�(‰(�1˜cˆ(Ó
" 3§6¡6¨!°S 6Ó#9Ñ
9¸!Ñ
;¸C¿F¹FÈC¸FÓ<PÑ
P€CØ�	‰	�3—7‘7—;‘;˜sÓ# CÑ'×*Ñ*°Sˆ	Ó9€AØ�‰�#—'‘'—+‘+˜cÓ" 3Ñ&×)Ñ)°CˆÓ8€AØ�7‰7�;‰;˜˜!�uÓÐr   c                 óŽ  ‡ ‡‡— ‰ j                  ‰«      r‰S ‰ j                  ‰«      dk  rt        d«      ‚‰dk(  r‰ j                  S ‰dk(  r&‰ j	                  ‰ j
                  ‰ j                  «      S ‰ j                  ‰«      }|‰ j                  kD  rd‰z  S ‰ j                  t        |«      z   Šˆ ˆˆfd„}‰ j                  |«      S )Nr   z.prime zeta function defined only for re(s) > 0r   r"   c               3   óÚ   •K  — ‰j                   } d}	 |dz  }‰j                  |«      }|sŒ‰‰_         |‰j                  ‰j                  |‰z  «      «      z  |z  }|sy | ‰_         |–— ŒX­w)Nr   r   )r'   Úmoebiusr   rn   )r-   r�   r�   r:   r   r,   Úwps       €€€r   rU   zprimezeta.<locals>.terms  sx   øè ø€ Ø—8‘8ˆDð ˆAØØ�Q‘�Ø—K‘K “N�ÙØØ�”Ø�c—f‘f˜SŸX™X a¨¡c›]Ó+Ñ+¨AÑ-�ÙØà�”Ø’ð ùs   ƒA(A+)
ÚisnanÚrer„   r)   r†   r3   r   r'   r*   ro   )r   r,   ÚrrU   r¡   s   ``  @r   Ú	primezetar¥   ý   s©   ú€ à
‡y�y�„|ØˆØ
‡v�vˆaƒy�A‚~ÜÐIÓJÐJØˆA‚vØ�w‰wˆØˆC‚xØ�w‰w�s—x‘x §¡Ó(Ð(Ø�‰ˆq‹	€AØˆ3�8‰8‚|Ø�A‰vˆà�X‰Xœ˜A›Ñˆö	ð" ×Ñ˜eÓ$Ð$r   c                 ó:  ‡ ‡‡— t        ‰«      Š‰dk  rt        d«      ‚‰dk(  s
‰dk(  r‰dkD  r‰ j                  ‰«      S ‰dk(  r*‰ j                  dd‰z
  «      dz
  ‰ j                  ‰«      z  S ‰dk  r=‰dk(  r‰dz  S ‰dk(  r‰dz
  S ‰dk(  rd‰z  ‰dz
  z  dz   dz  S ‰dk(  r‰‰‰dz
  z  dz   z  S ‰ j	                  ‰«      r‰‰z  S ‰ j                  ‰«      r‰S t        ‰«      dkD  rˆ ˆˆfd	„}‰ j                  |«      ‰‰z  z  S ˆ ˆˆfd
„}‰ j                  |«      S )Nr   z-Bernoulli polynomials only defined for n >= 0r   r"   r   r   rc   g      ø?c               3   óÔ   •K  — ‰j                   } | –— ‰j                   ‰z  }d}|‰k  r=| ‰dz   |z
  z  |z  |z  } |dkD  r|dz  s| ‰j                  |«      z  –— |dz  }|‰k  rŒ<y y ­wr   )r�   Ú	bernoulli)r:   r¤   r�   r   r   rR   s      €€€r   rU   zbernpoly.<locals>.terms6  sz   øè ø€ Ø—‘ˆAØŠGØ—‘˜‘	ˆAØˆAØ�q’&Ø�q˜‘s˜1‘u‘I˜a‘K ‘M�Ø˜Aš ! a¢%Ø˜CŸM™M¨!Ó,Ñ,Ò,Ø�Q‘�ð	 �q•&ùs   ƒA"A(Á&A(c               3   óÞ   •K  — ‰j                  ‰«      –— ‰j                  } d}|‰k  rB| ‰dz   |z
  z  |z  ‰z  } ‰|z
  }|dkD  r|dz  s| ‰j                  |«      z  –— |dz  }|‰k  rŒAy y ­wr   )r¨   r�   )r:   r�   Úmr   r   rR   s      €€€r   rU   zbernpoly.<locals>.termsB  s€   øè ø€ Ø—-‘- Ó"Ò"Ø—‘ˆAØˆAØ�q’&Ø�q˜‘s˜1‘u‘I˜a‘K !‘O�Ø�a‘C�Ø˜Aš ! a¢%Ø˜CŸM™M¨!Ó,Ñ,Ò,Ø�Q‘�ð �q•&ùs   ƒA'A-Á+A-)r*   r„   r¨   Úldexpr7   r¢   ri   ro   )r   r   rR   rU   s   ``` r   Úbernpolyr¬   !  s<  ú€ ô 	ˆA‹€AØˆ1‚uÜÐHÓIÐIØˆA‚v�!�q’&˜Q šUØ�}‰}˜QÓÐØˆC‚xØ—	‘	˜!˜A˜a™CÓ  Ñ" C§M¡M°!Ó$4Ñ4Ð4ØˆA‚vØ�Š6˜!˜q™&�=Ø�Š6˜!˜c™'�>Ø�Š6˜1˜Q™3  !¡™9 Q™;¨™/Ð)Ø�Š6˜!˜Q  #¡™Y s™]Ñ+Ð+Ø
‡y�y�„|Ø�A‰vˆØ
‡y�y�„|ØˆÜ
ˆ1ƒv�‚zö		ð ×!Ñ! %Ó(¨1¨a©4Ñ/Ð/ö		ð ×!Ñ! %Ó(Ð(r   c                 óÄ  ‡ ‡‡— t        ‰«      Š‰dk  rt        d«      ‚‰dk  r!‰dk(  r‰dz  S ‰dk(  r‰dz
  S ‰dk(  r‰‰dz
  z  S ‰ j                  ‰«      r‰‰z  S ‰ j                  ‰«      r‰S ‰dz   }‰dk(  r3d‰ j	                  d|«      dz
  z  ‰ j                  |«      z  |z  ‰dz  z  S ‰dk(  r3d‰ j	                  d|«      dz
  z  ‰ j                  |«      z  |z  ‰dz  z  S ‰dk(  r_‰dz  r‰ j                  S ‰dk  s'‰‰ j                  d‰z  «      z  ‰ j                  d	z  k  r"‰ j	                  ‰ j                  ‰«      ‰ «      S ˆ ˆˆfd
„}‰ j                  |«      |z  S )Nr   z)Euler polynomials only defined for n >= 0r   r   r"   éþÿÿÿéd   g.eÏT>úÝ?r0   c               3   óô   •K  — ‰j                   } d}‰j                  d‰dz   «      }	 ‰|z
  dz   }|dkD  r|dz  sd|z
  ‰j                  |«      z  | z  –— |dz  }|‰kD  ry | ‰z  ‰|z
  dz   z  |z  } |dz  }ŒP­w)Nr   r   r   r"   )r�   r«   r¨   )r:   r�   Úwr   r   r   rR   s       €€€r   rU   zeulerpoly.<locals>.termsg  s�   øè ø€ Ø�G‰GˆØˆØ�I‰I�a˜˜!™ÓˆØØ�!‘�A‘ˆAØ˜’E˜a !šeØ˜‘s˜CŸM™M¨!Ó,Ñ,¨QÑ.Ò.Ø�‰FˆAØ�1ŠuØØ�!‘�Q�q‘S˜‘U‘˜A‘ˆAØ�‰HˆAð ùs   ƒA5A8)r*   r„   r7   r¢   r«   r¨   r4   r   r'   Ú	_eulernumro   )r   r   rR   rª   rU   s   ```  r   Ú	eulerpolyr³   N  sv  ú€ äˆA‹€AØˆ1‚uÜÐDÓEÐEØˆA‚vØ�Š6˜!˜q™&�=Ø�Š6˜!˜c™'�>Ø�Š6˜!˜Q˜q™S™'�>Ø
‡y�y�„|Ø�!‰tˆØ
‡y�y�„|ØˆØ	ˆ!‰€AØˆA‚vØ�3—9‘9˜Q˜q“> !Ñ#Ñ$ S§]¡]°1Ó%5Ñ5°aÑ7¸!¸Q¹$Ñ>Ð>ØˆA‚vØ�#—)‘)˜A˜a“. Ñ"Ñ# C§M¡M°!Ó$4Ñ4°QÑ6¸¸A¹Ñ=Ð=ØˆC‚xØˆqŠ5Ø—8‘8ˆOàˆsŠ7�a˜Ÿ™ 
¨1¡Ó-Ñ-°·±¸±Ò=Ø—9‘9˜SŸ]™]¨1Ó-°¨rÓ2Ð2öð ×Ñ˜eÓ$ qÑ(Ð(r   Fc                 ó   — t        |«      }|rt        | j                  |«      «      S |dk  r | j                  | j                  |«      «      S |dz  r| j                  S | j	                  | j                  |d«      |«      S )Nr¯   r   r"   )r*   r²   r˜   r4   r«   r³   )r   r   Úexacts      r   Úeulernumr¶   v  sm   € äˆA‹€AÙÜ�3—=‘= Ó#Ó$Ð$Øˆ3‚wØ�w‰w�s—}‘} QÓ'Ó(Ð(Øˆ1‚uØ�x‰xˆØ�9‰9�S—]‘] 1 SÓ)¨1Ó-Ð-r   c                 ó�   — | j                   ­}| j                  }d}|}	 |||z  z  }||z  }t        |«      |k  r	 |S ||z  }|dz  }Œ))Nr   )rŒ   r4   ri   )r   r,   rR   ÚtolÚlr�   ÚzkÚterms           r   Úpolylog_seriesr¼   ‚  sg   € Ø�7‰7ˆ(€CØ�‰€AØ	€AØ	
€BØ
Ø�A�q‘D‰yˆØ	ˆT‰	ˆÜˆt‹9�sŠ?Øð €Hð 	ˆa‰ˆØ	ˆQ‰ˆð r   c                 óÜ  — |dk  r|dz  S d| j                   z  }||z   | j                  |«      z  | j                  || j                  |«      |z  «      z  }| j	                  |«      r|dk  r| j                  |«      }| j                  |«      dk  s(| j                  |«      dk(  rF| j                  |«      dk\  r2||| j                  |«      |dz
  z  z  | j                  |dz
  «      z  z  }|S )Nr   y               @r   )r   Úfacr¬   r   rk   r   r5   )r   r   rR   Útwopijr   s        r   Úpolylog_continuationrÀ   �  sÖ   € Øˆ1‚uØ�‰sˆ
Ø�#—&‘&‰[€FØ	�‰ˆ
�3—7‘7˜1“:Ñ §¡¨Q°·±°q³	¸&Ñ0@Ó AÑA€AØ
×Ñ˜Ô  A¢Ø�G‰G�A‹JˆØ
‡w�wˆqƒz�A‚~˜#Ÿ'™' !›*¨š/¨c¯g©g°a«j¸AªoØ	ˆV�C—F‘F˜1“I  !¡Ñ$Ñ$ S§W¡W¨Q¨q©S£\Ñ1Ñ1ˆØ€Hr   c                 óž  — | j                   ­}|dkD  rå| j                  }| j                  |«      }| j                  }d}	 ||z
  dk7  r?| j	                  ||z
  «      |z  | j                  |«      z  }|rt        |«      |k  rn||z  }||z  }|dz  }ŒR|| j                  |«      |dz
  z  | j                  |dz
  «      z  | j                  |dz
  «      | j                  | j                  |«       «      z
  z  z  }n®|dk  r£| j                  | «      | j                  |«       |dz
  z  z  }| j                  |«      }| j                  }	d}
	 | j                  |
|z
  dz   «      }|r4||	z  | j                  |
«      |
|z
  dz   z  z  }t        |«      |k  rn||z  }|	|z  }	|
dz  }
ŒXt        ‚| j                  |«      r|dk  r| j                  |«      }|S )Nr   r   )rŒ   r4   r   r�   rn   r¾   ri   Úharmonicr¨   r„   rk   r   )r   r   rR   r¸   r¹   ÚlogzÚlogmzrª   r»   Úlogkzr�   r=   s               r   Úpolylog_unitcirclerÆ   ›  sÕ  € Ø�7‰7ˆ(€CØˆ1‚uØ�H‰HˆØ�v‰v�a‹yˆØ—‘ˆØˆØØ�!‘˜ŠzØ—x‘x  !¡“} uÑ,¨s¯w©w°q«zÑ9�ÙœC ›I¨šOØØ�T‘	�Ø�T‰MˆEØ�‰FˆAð ð 	
ˆS�V‰V�A‹Y˜˜1™Ñ˜cŸg™g a¨¡c›lÑ*¨C¯L©L¸¸1¹Ó,=¸c¿f¹fÀcÇfÁfÈQÃiÀZÓ>PÑ,PÑQÑQ‰Ø	
ˆQŠØ�G‰G�Q�B‹K˜#Ÿ&™& ›)˜ q¨¡sÑ+Ñ+ˆØ�v‰v�a‹yˆØ—‘ˆØˆØØ—‘˜a ™c !™eÓ$ˆAÙØ˜‘w §¡¨£
¨A¨a©C°©EÑ 2Ñ3�Ü�t“9˜s’?ØØ�T‘	�Ø�T‰MˆEØ�‰FˆAð ô ÐØ
×Ñ˜Ô  A¢Ø�G‰G�A‹JˆØ€Hr   c                 óT  — | j                   }| j                  |«      }t        |«      dk  s“| j                  }d|z
  }| j                  | «      d| j                  z  |z  z  }| j                  |«      ||z  | j                  |d|z   «      z  || z  | j                  |d|z
  «      z  z   z  d| j                  z  |z  z  S d}d}	 | j                  ||z
  «      |z  }	t        |	«      | j                  k  rn||	z  }|dz  }||z  }||z  }ŒE| j                  d|z
  «      | |dz
  z  z  |z   S )Né   r   r   r"   r   )r4   r   ri   r   r   Úgammarn   rŒ   )
r   r,   rR   r   r�   r   Úyr:   r�   r»   s
             r   Úpolylog_generalrË   ¿  s=  € Ø�‰€AØ�‰ˆq‹	€AÜˆq‹6�AŠ:Ø�E‰EˆØˆa‰CˆØ�F‰F�A�2‹J˜˜#Ÿ&™&™ ™
Ñ#ˆØ�y‰y˜‹|˜Q ™T #§(¡(¨1¨S°©UÓ"3Ñ3°a¸!¸±e¸C¿H¹HÀQÀsÈ1ÁuÓ<MÑ6MÑMÑNÐPQÐRU×RXÑRXÑPXÐ[\É}Ñ\Ð\Ø	€AØ	€AØ
Ø�x‰x˜˜!™‹}˜qÑ ˆÜˆt‹9�s—w‘wÒØØ	ˆT‰	ˆØ	ˆQ‰ˆØ	ˆQ‰ˆØ	ˆQ‰ˆð ð �9‰9�Q�q‘S‹>˜A˜2  1¡™+Ñ%¨Ñ)Ð)r   c           	      óÄ  — | j                  |«      }| j                  |«      }|dk(  r| j                  |«      S |dk(  r| j                  |«       S |dk(  r|d|z
  z  S |dk(  r| j                  d|z
  «       S |dk(  r|d|z
  dz  z  S t	        |«      dk  s| j                  |«      st	        |«      dk  rt        | ||«      S t	        |«      dk\  rP| j                  |«      r?d|dz   z  t        | |d|z  «      z  t        | t        | j                  |«      «      |«      z   S | j                  |«      r%t        | t        | j                  |«      «      |«      S t        | ||«      S )Nr   éÿÿÿÿr   r   ç      è?gÍÌÌÌÌÌì?gffffffö?)r#   rn   Úaltzetar   ri   r+   r¼   rÀ   r*   r£   rÆ   rË   )r   r,   rR   s      r   ÚpolylogrÐ   Ó  sK  € à�‰�A‹€AØ�‰�A‹€AØˆA‚vØ�x‰x˜‹{ÐØˆB‚wØ—‘˜A“ˆÐØˆA‚vØ�!�A‘#‰wˆØˆA‚vØ—‘�q˜‘s“ˆ|ÐØˆB‚wØ�!�A‘#˜‘‰zÐÜ
ˆ1ƒv�‚~˜cŸi™i¨œl¬s°1«v¸ª|Ü˜c 1 aÓ(Ð(Ü
ˆ1ƒv�‚}˜Ÿ™ 1œØ�a˜‘c‰{œ>¨#¨q°!°A±#Ó6Ñ6Ô9MÈcÔSVÐWZ×W]ÑW]Ð^_ÓW`ÓSaÐcdÓ9eÑeÐeØ
‡y�y�„|Ü! #¤s¨3¯6©6°!«9£~°qÓ9Ð9Ü˜3  1Ó%Ð%r   c                 ó„  — | j                  |«      r|dk  rt        |«      dz  dk(  r|dz  S |r| j                  |«      }n| j                  |«      }| j	                  |«      r2| j	                  |«      r!| j                  | j                  ||«      «      S d|z  }d| j                  ||«      | j                  ||«      z
  z  S )Nr   r   r   r1   )r+   r*   Úexpjpirm   rk   ÚimrÐ   ©r   r,   rR   r   r   r=   s         r   ÚclsinrÕ   é  s«   € à
‡y�y�„|˜˜Aš¤# a£&¨1¡*°¢/Ø�‰sˆ
Ù	Ø�J‰J�q‹M‰à�H‰H�Q‹KˆØ
×Ñ˜Ô × 1Ñ 1°!Ô 4Ø�v‰v�c—k‘k ! AÓ&Ó'Ð'Ø	ˆ!‰€AØ�C—K‘K  !Ó$ s§{¡{°1°QÓ'7Ñ7Ñ8Ð8r   c                 ó„  — | j                  |«      r|dk  rt        |«      dz  dk(  r|dz  S |r| j                  |«      }n| j                  |«      }| j	                  |«      r2| j	                  |«      r!| j                  | j                  ||«      «      S d|z  }d| j                  ||«      | j                  ||«      z   z  S )Nr   r   r   r"   )r+   r*   rÒ   rm   rk   r£   rÐ   rÔ   s         r   Úclcosr×   ö  s«   € à
‡y�y�„|˜˜Aš¤# a£&¨1¡*°¢/Ø�‰sˆ
Ù	Ø�J‰J�q‹M‰à�H‰H�Q‹KˆØ
×Ñ˜Ô × 1Ñ 1°!Ô 4Ø�v‰v�c—k‘k ! AÓ&Ó'Ð'Ø	ˆ!‰€AØ�—‘˜A˜aÓ  3§;¡;¨q°Ó#3Ñ3Ñ4Ð4r   c                 ój   — 	  | j                   |fi |¤ŽS # t        $ r | j                  |«      cY S w xY wrB   )Ú_altzetarl   Ú_altzeta_generic)r   r,   rq   s      r   rÏ   rÏ     s=   € ð'Øˆs�|‰|˜AÑ( Ñ(Ð(øÜò 'Ø×#Ñ# AÓ&Ò&ð'ús   ‚ •2±2c                 ó€   — |dk(  r| j                   d|z  z   S | j                  dd|z
  «       | j                  |«      z  S )Nr   r   r   )Úln2Úpowm1rn   )r   r,   s     r   rÚ   rÚ   
  s@   € àˆA‚vØ�w‰w˜˜1™‰}ÐØ�I‰I�a˜˜1™ÓÐ §¡¨£Ñ+Ð+r   Nc                 ó|  — t        |«      }|dk(  r|s|s	  | j                  |fi |¤ŽS | j                  |«      }| j                  }|j                  d«      }|j                  d«      }|s(|s&| j                  d«      | j                  |«      d   z
  S |dk(  r†|dk7  r�t        | j                  |«      «      }	t        | j                  |«      «      }
t        |	«      d|z  kD  rd|
z  |k  r|d	k  s|d
k(  r*	 	 |rt        d«        | j                  ||fi |¤Ž|| _        S |dk(  r| j                  S t        |«      }|| j                  k(  r@| j                  |«      | j                  k(  r|dk(  r| j                  S | j                   S |dz  S | j#                  |«      rd|z  S | j                  |«      d| j                  z  kD  r'|dk(  r"|s | j                  | j%                  d| «      z   S  | j&                  |||fi |¤Ž­S # t        $ r Y �Œßw xY w# t        $ r |rt        d«       Y nw xY w	 || _        �Œ# || _        w xY w)Nr   ÚmethodÚverboser"   r   zeuler-maclaurinrJ   r!   rY   zriemann-siegelz4zeta: Attempting to use the Riemann-Siegel algorithmz0zeta: Could not use the Riemann-Siegel algorithmr   )r*   Ú_zetarl   r#   r'   rh   r˜   Ú_convert_paramri   r5   r   ÚprintÚrs_zetar)   r£   r�   r4   r¢   ÚpowerÚ_hurwitz)r   r,   r   r;   rß   rq   r<   r'   rà   rÓ   r£   Úabsss               r   rn   rn     s,  € äˆJ‹€AØˆA‚v‘q™Fð	Ø�3—9‘9˜QÑ) &Ñ)Ð)ð 	�‰�A‹€AØ�8‰8€DØ�Z‰Z˜Ó!€FØ�j‰j˜Ó#€GÙ™
Ø�w‰w�s‹|˜c×0Ñ0°Ó3°AÑ6Ñ6Ð6ØˆA‚v�&Ð-Ò-Ü�—‘˜“‹_ˆÜ�—‘˜“‹_ˆô ˆr‹7�S˜‘XÒ " R¡%¨$¢,°:À²?ØÐ&Ò&ð
 ðÙÜÐTÔUØ&˜3Ÿ;™; q¨*Ñ?¸Ñ?ð  �•ØˆA‚vØ�w‰wˆÜˆq‹6€DØˆs�w‰w‚Ø�6‰6�!‹9˜Ÿ™ÒØ�AŠvØ—w‘w�Ø—8‘8ˆOØ�‰sˆ
Ø	�‰�4ŒØ�‰sˆ
Ø
‡v�vˆaƒy�1�S—X‘X‘:Ò ! q¢&±Ø�w‰w˜Ÿ™ 1 q bÓ)Ñ)Ð)ØˆC�L‰L˜˜A˜qÑ+ FÑ+Ð+Ð+øô] #ò 	Úð	ûô6 +ò ÙÜÐPÔQÙðúð à�–ø˜4�•ús5   –G< Ã5 H Ç<	H	ÈH	ÈH%È"H2 È$H%È%H2 È2	H;c                 ó  — | j                   }|j                  d«      }	 d}| xj                   |z  c_         | j                  |«      \  }}| j                  |«      dk  r$|rt	        d«       	 t        | ||||«      || _         S |rt	        d«       	 ||z   | _         t        | ||||dz   |«      \  }	}
| j                  |	«      | j                  |	|
z   «      z
  }|r%t	        d|	«       t	        d|
«       t	        d	|d
«       ||k  r|	|
z   || _         S t        d|z  t        |dz   d|z  «      «      }||j                  dd|z  «      kD  r| j                  d«      ‚ŒÇ# t        $ r Y nw xY w|sŒçt	        d«       Œó# || _         w xY w)Nrà   r!   r   z#zeta: Attempting reflection formulazzeta: Reflection formula failedz)zeta: Using the Euler-Maclaurin algorithmzTerm 1:zTerm 2:zCancellation:Úbitsr   rÈ   r¯   Úmaxpreczzeta: too much cancellation)r'   rh   râ   r£   rã   Ú_hurwitz_reflectionrl   Ú_hurwitz_emr   ÚmaxÚminÚNoConvergence)r   r,   r   r<   rq   r'   rà   Ú	extraprecÚatypeÚT1ÚT2Úcancellations               r   ræ   ræ   F  s‹  € à�8‰8€DØ�j‰j˜Ó#€GðØˆ	Ø�Š�IÑ�à×%Ñ% aÓ(‰ˆˆ5Ø�6‰6�!‹9�qŠ=ÙÜÐ;Ô<ðÜ*¨3°°1°a¸Ó?ð, ˆ�ñ# ÜÐ=Ô>ØØ˜iÑ'ˆCŒHÜ   a¨¨A¨t°B©w¸Ó@‰FˆB�ØŸ7™7 2›;¨¯©°°B±«Ñ7ˆLÙÜ�i Ô$Ü�i Ô$Ü�o |°VÔ<Ø˜iÒ'Ø˜B‘wð ˆ�ô	    )¡¬S°ÀÑ1AÀ3ÀtÁ8Ó-LÓM�	Ø˜vŸz™z¨)°S¸±XÓ>Ò>Ø×+Ñ+Ð,IÓJÐJð øô 'ò ÙðúâÜÐ7Ô8ùð$ ˆ�ús>   ŸAE5 Á,E ÂBE5 ÄA	E5 Å	E#Å E5 Å"E#Å#E5 Å)E5 Å5	E>c                 ó6  ‡ ‡‡‡— |dk7  rt         ‚‰ j                  |«      }| }‰ j                  |«      r+t        |«      }|dk  r‰ j	                  d|z
  |«      |dz
  z  S |dk(  s|dk(  st         ‚d|z
  Šd}d}	|Š‰ j                  ‰«      dkD  r'‰dz  Š|‰|z  z  }|	dz  }	‰ j                  ‰«      dkD  rŒ'‰ j                  ‰«      dk  r'|‰|z  z  }‰dz  Š|	dz  }	‰ j                  ‰«      dk  rŒ'	 |j
                  \  }
Š|
|	‰z  z  }
d|
cxk  r‰k  sJ ‚ J ‚‰ j                  ˆˆ ˆˆfd„t        d‰dz   «      D «       «      }|d‰ j                  ‰«      z  d‰ j                  z  ‰z  ‰z  z  z  }||z  }|S #  |t        |«      k(  sJ ‚t        |«      }
dŠY Œ—xY w)Nr   r   ÚQÚZc              3   ó‚   •K  — | ]6  }‰j                  ‰d z  d |z  ‰z  z
  «      ‰j                  ‰|‰f«      z  –— Œ8 y­w)r   N)Úcospiræ   )Ú.0r�   r=   r   Úqr:   s     €€€€r   Ú	<genexpr>z&_hurwitz_reflection.<locals>.<genexpr>Ž  sF   øè ø€ ð ÙˆAð —‘˜1˜Q™3˜q ™s 1™u™9Ó% c§l¡l°1°a¸°UÓ&;Õ;Ùùs   ƒ<?r   )
rl   r£   Úisnpintr*   r¬   Ú_mpq_ÚfsumÚrangerÉ   r   )r   r,   r   r<   rñ   ÚresÚnegsr   r   ÚshiftÚprG   r=   rû   r:   s   `           @@@r   rë   rë   k  sÁ  û€ àˆA‚vÜ!Ð!Ø
�&‰&�‹)€CØˆ2€Dà
‡{�{�1„~Ü�‹HˆØ�Š6Ø—<‘<  !¡ QÓ'¨1¨Q©3Ñ/Ð/Ø�SŠL˜E SšLÜ!Ð!Ø	ˆ!‰€Aà	€AØ€EØ	€AØ
�&‰&�‹)�aŠ-Ø	ˆQ‰ˆØ	ˆQ�‰W‰ˆØ�‰
ˆð �&‰&�‹)�a‹-ð �&‰&�‹)�qŠ.Ø	ˆQ�‰W‰ˆØ	ˆQ‰ˆØ�‰
ˆð �&‰&�‹)�q‹.ð
Ø�w‰w‰ˆˆ1ð
 ˆˆq‰�L€AØ�Œ;�QŠ;Ð‰;Ðˆ;Ø�‰ö Ü�q˜˜1™”óó 	€Aàˆˆ3�9‰9�Q‹<‰˜˜3Ÿ6™6™ !™ a™Ñ	'Ñ'€AØˆ�F€AØ€HøðØ”C˜“FŠ{Ðˆ{Ü�‹FˆØŠús   Ã2E7 Å7Fc           
      óž  — | j                  |«      }| }d}|dz  }|}	d}
| j                  |«      rt        | j                  |«      «      }|dz
  }	 | j	                  |||z   ||z
  dz
  |g«      d   d   }|
|z  }
||z   }| j                  |«      }||z  }|g}d|z  }d|z  }|| z  }|r"| j                  |dz   ||z  «      ||dz   z  z  }nd|||z  z  z  }|d|z  |z  z  }dg}|}d}t        d|	dz   «      D �]  }d|z  }|dk(  rdg}n
|dz
  |dz
  g}|D ]Ž  }t        ||dz   «      }||k  r|j                  |d   |z  «       dg|dz   z  }t        |«      D ]  }d|z
  |z
  ||   z  ||<   Œ t        d|dz   «      D ]  }||xx   ||dz
  z
  ||dz
     z  z  cc<   Œ  |}||z  }Œ� | j                  ||«      |z  | j                  |«      z  | z  }||z  }| j                  |«      |k  r|
d|z  |z  fc S ||dz   |dz   z  z  }�Œ |r t        d||d| j                  «      d	|«       ||dz  }}| j                  |«      dk  r|	|	dz  z  }	�Œþ)
Nr   r   r   r"   r   rÍ   z
Sum range:zterm magnitudeÚ	tolerance)r#   r+   r*   r   Ú_zetasumr   Úgammaincr   rî   Úappendr   Úfdotr¨   r   rã   r£   ) r   r,   r   r<   r'   rà   r¸   ÚM1ÚM2ÚNÚlsumÚs1r¹   ÚM2aÚlogM2aÚlogM2adÚlogsÚlogrÚrM2aÚM2asÚtailsumÚUr¤   Úfactr   Új2Úupdsrª   ÚDÚUnÚir:   s                                    r   rì   rì   ”  sÒ  € à�‰�A‹€AØˆ%€Cà	
€BØ	�‰€BØ
€AØ€Dà
‡y�y�„|Ü�—‘˜“
‹OˆØ	
ˆ1‰€BØ
à�L‰L˜˜B˜q™D " R¡%¨¡'¨A¨3Ó/°Ñ2°1Ñ5ˆð
 	�‰	ˆØ�‰dˆØ—‘˜“ˆØ˜!‘)ˆØˆyˆØ�‰xˆØ�‰uˆØ�a�R‰yˆÙØ—l‘l 1 Q¡3¨¨6©	Ó2°R¸!¸A¹#±YÑ>‰Gà˜"˜s R™i™Ñ(ˆGØ�3˜‘= 4Ñ'Ñ'ˆØˆCˆØˆØˆÜ�q˜!˜A™#—ˆAà�1‘ˆBØ�AŠvØ�s‘à˜1™˜b ™d�|�Û�Ü˜˜!˜A™#“J�Ø˜’6Ø—K‘K  R¡¨4¡Ô0Ø�S˜!˜A™#‘Y�Ü ž�A¨Q¨q©S°©U°A°a±D©L B q¢E˜Ü  ! A¡#ž�A¨¨1«°!°Q°q±S±'¸1¸Q¸q¹S¹6Ñ1AÑ(A¬˜Ø�Ø�T‘	‘ð ð —‘˜˜DÓ! AÑ%¨¯©°bÓ(9Ñ9¸D¸5ÑAˆAØ�q‰LˆGØ�w‰w�q‹z˜CÒØ˜b 1™W wÑ.Ð.Ò.Ø�R˜‘T˜B˜q™D‘MÑ!ŠDð) ñ* Ü�,  BÐ(8¸#¿'¹'À!»*ÀkÐSVÔWØ�R˜‘TˆBˆØ�6‰6�!‹9�qŠ=Ø��A‘‰IˆAña r   c                 ó8  ‡ ‡‡
‡— t        ‰ j                  |«      «      d‰ j                  z  k  r	 ‰ j                  |‰|||«      S ‰ j                  |d¬«      Š|dgk7  }t        |«      dk(  }|sg|s*‰ j                  ˆˆfd„t        |dz   «      D «       «      gg fS |r9|d   Š
‰ j                  ˆˆ ˆ
ˆfd„t        |dz   «      D «       «      }d‰
z  |z  gg fS t        |«      }	|st        |	dz   «      }|D �
cg c]  }
‰ j                  ‘Œ }}
|r|D �
cg c]  }
‰ j                  ‘Œ }}
ng }t        |dz   «      D ]Æ  }‰|z   }|‰z  }|r!‰ j                  ‰ j                  ||z  z  «      }|rx‰ j                  |«       }|r)||	z  }|dxx   ||z  z  cc<   |sŒ^|dxx   |z  z  cc<   Œo‰ j                  }|D ])  Š
|‰
xx   ||z  z  cc<   |r|‰
xx   |z  z  cc<   ||z  }Œ+ Œª|dxx   |z  cc<   |sŒº|dxx   z  cc<   ŒÈ ||fS # t        $ r Y �ŒÉw xY wc c}
w c c}
w )	a§  
    Returns [xd0,xd1,...,xdr], [yd0,yd1,...ydr] where

    xdk = D^k     ( 1/a^s     +  1/(a+1)^s      +  ...  +  1/(a+n)^s     )
    ydk = D^k conj( 1/a^(1-s) +  1/(a+1)^(1-s)  +  ...  +  1/(a+n)^(1-s) )

    D^k = kth derivative with respect to s, k ranges over the given list of
    derivatives (which should consist of either a single element
    or a range 0,1,...r). If reflect=False, the ydks are not computed.
    r"   T©rµ   r   r   c              3   ó.   •K  — | ]  }‰|z   ‰z  –— Œ y ­wrB   rO   )rú   r�   r   r  s     €€r   rü   z_zetasum.<locals>.<genexpr>í  s   øè ø€ Ð>±+¨Q˜a ™c D�[±+ùs   ƒc              3   ó^   •K  — | ]$  }‰j                  ‰|z   «      ‰z  ‰|z   ‰z  z  –— Œ& y ­wrB   )r   )rú   r�   r   r   r<   r  s     €€€€r   rü   z_zetasum.<locals>.<genexpr>ð  s/   øè ø€ ÐK¹{¸!˜Ÿ™  !¡› a™¨1¨Q©3°©+Õ5¹{ùs   ƒ*-rÍ   )ri   r£   r'   Ú_zetasum_fastrl   Úfnegr…   rÿ   r   rí   r   r4   Úconjr�   r   )r   r,   r   r   ÚderivativesÚreflectÚhave_derivativesÚhave_one_derivativer   Úmaxdr<   ÚxsÚysr�   r±   ÚxtermÚytermÚlogwr:   r  s   ` `       `        @r   r  r  Õ  s:  û€ ô ˆ3�6‰6�!‹9ƒ~˜˜cŸh™h™Ò&ð	Ø×$Ñ$ Q¨¨1¨k¸7ÓCÐCð �8‰8�A˜Tˆ8Ó"€DØ" q cÑ)ÐÜ˜kÓ*¨aÑ/ÐÙÙØ—H‘HÔ>´&¸¸1¹´+Ó>Ó>Ð?ÀÐCÐCÙØ˜A‘ˆAØ—‘ÖK¼vÀaÈÁc¼{ÓKÓKˆAØ˜!‘G˜a‘K�= "Ð$Ð$Üˆ{Ó€DÙÜ˜D ™F“mˆÙ'Ó	(™K�qˆ#�(‹(˜K€BÐ	(ÙÙ +Ó,¡˜1ˆc�h‹h ˆÑ,àˆÜ�A�a‘CŽ[ˆØ�‰EˆØ�T‘	ˆÙØ—H‘H˜SŸW™W¨¨E©	Ñ2Ó3ˆEÙØ—F‘F˜1“I�:ˆDÙ"Ø˜t‘|�Ø�1“˜ ™Ñ%“ÚØ�q“E˜U T™\Ñ)”Eà—G‘G�Û$�AØ�q“E˜U Q™YÑ&“EÙØ˜1› ¨¡Ñ*›Ø˜‘I‘Añ	 %ð ˆq‹E�U‰N‹EÚØ�1“˜‘”ð- ð. ˆrˆ6€MøôW #ò 	Úð	üò 
)ùâ,s   °H Ã4HÄHÈ	HÈHc           	      óÖ  — | j                  |«      }t        |«      }t        |«      }|dkD  rt        d«      ‚| j                  }	 | xj                  dz  c_        |dk(  rWd}|D ]:  }|sŒ|dk7  sŒd}| j
                  ­}	| xj                  d|dz   z  z  c_        ||	z  }Œ< |r| j                  ­|| _        S | j                  }
t        d|dz   «      D ]y  }|||z     sŒ|dk(  rI|
|||z     | j                  |||fd«      | j                  |||f«      | j                  |«      z  z
  z  z  }
ŒZ|
|||z     | j                  |||f«      z  z  }
Œ{ |
||z  z  }
|| _        |
­S # || _        w xY w)Nr   zarbitrary order derivativesr!   r   TF)r#   r…   r*   rl   r'   rŒ   r)   r4   r   rn   r9   )r   r,   Úchir;   rû   r<   r'   Ú	have_poler   ru   rR   r  s               r   Ú	dirichletr3    s…  € à�‰�A‹€AÜˆC‹€AÜˆJ‹€AØˆ1‚uÜ!Ð"?Ó@Ð@Ø�8‰8€DðØ�Š�B‰�Ø�Š6ØˆIÛ�Ú˜˜a›Ø %�IØŸ™˜�AØ—H’H  1 Q¡3¡Ñ'•HØ˜‘F‘Að ñ ØŸ™�xð ˆ�ð �H‰HˆÜ�q˜˜1™–ˆAØ�1�Q‘3‹xØ˜’6Ø˜˜Q˜q™S™ S§X¡X¨a°!°A°¸Ó%:ØŸ™  Q q EÓ*¨3¯7©7°1«:Ñ5ñ&6ñ 7ñ 7‘Að ˜˜Q˜q™S™ C§H¡H¨Q°°1°Ó$6Ñ6Ñ6‘Að ð 	
ˆQ�‰T‰	ˆàˆŒØˆ2€Iøð ˆ�ús%   Á#E Á)E Á/?E Â6&E ÃA8E Å	E(c                 óf  ‡ ‡‡‡— ‰ j                   }ˆˆ ˆˆfd„}‰ j                  x}}‰ j                  }d}	||kD  rC||z  }|	dz  }	‰ j                  ‰ j	                  |	«      «      Š ||	«      }t        |«      }||kD  rŒCd}
|j                  d«      r�‰ j                  ‰«      }d‰ j                  dz  z  t        d|«      z  ‰|dz
  z  z  ‰ j                  ‰d‰ j                  z  z  «      z  ‰ j                  d‰‰dz  z  «      z  t        ‰ j                  ‰dz  «      «      z  }
t        |
«      }
|­|
|	fS )	Nc                 óL   •— ‰j                  d‰z  ‰‰dz  z  d¬«      ‰‰ z  z  S )Nr"   r   T)Úregularized)r  )r   r   r   Úgammr,   s    €€€€r   rC   z&secondzeta_main_term.<locals>.<lambda>7  s+   ø€ �#—,‘,˜s 1™u a¨¨a©¡i¸T�,ÓBÀ4È1È"Á:ÒMr   r   r   Úerrorr"   rÍ   r   r2   )rŒ   r4   r)   rÓ   Úzetazero_memoizedri   rh   r£   r   rí   r9   r  rÉ   )r   r,   r   rq   r¸   r   Útotsumr»   Úmgr   rœ   Úsgr7  s   ```         @r   Úsecondzeta_main_termr=  5  s)  û€ Ø
�'‰'€CÞM€AØ—H‘HÐ€FˆTØ	�‰€BØ	€AØ
ˆsŠ(Ø�$‰ˆØ	ˆQ‰ˆØ�v‰v�c×+Ñ+¨AÓ.Ó/ˆÙ�‹tˆÜ�‹Yˆð ˆs‹(ð €CØ‡z�z�'ÔØ�V‰V�A‹YˆØ�#—&‘&˜2‘,Ñœs 1 R›yÑ(¨¨R°©V©Ñ4°S·W±W¸TÀ1ÀSÇVÁVÁ8¹_Ó5MÑMØ�\‰\˜$  $¨¡'¡	Ó*ñ+Ü+.¨s¯y©y¸¸1¹«~Ó+>ñ?ˆä�#‹hˆØˆ7�C˜ˆ?Ðr   c                 ó"  ‡ ‡‡— ‰ j                   }ˆˆ ˆfd„}‰ j                  x}}‰ j                  }d}	||kD  s|	dk  r;||z  }|	dz  }	 ||	«      }|dk(  r‰ j                  }nt        |«      }||kD  rŒ5|	dk  rŒ;|j	                  d«      r|}
|­
|	fS )Nc                 óP  •— ‰j                  dd‰z
  z  d‰j                  | «      dz  z  ‰dz  z  «      d‰j                  | «      z  ‰dz
  z  z  ‰j                  | «      z  ‰j                  | «      z  d‰j	                  d‰z  «      z  ‰j                  ‰j
                  «      z  z  S )Nr"   r   r0   r   rÍ   )r  r9   Úmangoldtr‹   rÉ   r   ©r   r   r   r,   s    €€€r   rC   z'secondzeta_prime_term.<locals>.<lambda>K  s›   ø€ �#—,‘,˜s A a¡C™y¨¨c¯g©g°a«j¸!©mÑ);¸aÀ"¹gÑ)EÓFØ
ˆc�g‰g�a‹j‰.˜A˜a™CÑ	 ñ"Ø"%§,¡,¨q£/ñ2Ø25·(±(¸1³+ñ>à	
ˆ3�9‰9�S˜‘UÓÑ	˜CŸH™H S§V¡VÓ,Ñ	,ò.r   r   é	   r   r8  )rŒ   r4   r)   ri   rh   )r   r,   r   rq   r¸   r   r:  r»   r;  r   rœ   s   ```        r   Úsecondzeta_prime_termrC  I  s¢   ú€ Ø
�'‰'€Cõ	.€Að —H‘HÐ€FˆTØ	�‰€BØ	€AØ
ˆsŠ(�a˜!’eØ�$‰ˆØ	ˆQ‰ˆÙ�‹tˆØ�1Š9Ø—‘‰Bä�T“ˆBð ˆs‹(�a˜!“eð ‡z�z�'ÔØˆØˆ7�C˜ˆ?Ðr   c                 óÐ  ‡ ‡‡— ‰ j                  ‰«      rT‰ j                  ‰«      dk  r@t        t        ‰ j                  ‰«      «      «      }|dz  s‰ j	                  d«      | dz  z  S ‰ j
                  }ˆˆ ˆfd„}‰ j                  } |d«      }‰ j                  }d}	||kD  r#||z  }|	dz  }	 ||	«      }t        |«      }||kD  rŒ#‰d‰z  z  |z  ‰ j                  d‰z  «      z  }
|
S )Nr   r   z-0.25r   c                 óJ   •— d‰z  | z  | d‰z  z   ‰j                  | «      z  z  S )Nr0   r"   )r¾   rA  s    €€€r   rC   z%secondzeta_exp_term.<locals>.<lambda>c  s'   ø€ �4˜‘6˜A‘+  # a¡%¡¨¯©°«Ñ3Ò4r   r"   )
r+   r£   r*   r|   r˜   rŒ   r4   r)   ri   rÉ   )r   r,   r   rª   r¸   r   r:  r»   r;  r   r   s   ```        r   Úsecondzeta_exp_termrF  ]  sá   ú€ Ø
‡y�y�„|˜Ÿ™˜q›	 QšÜ”�c—f‘f˜Q“iÓ Ó!ˆØ�1ŠuØ—7‘7˜7Ó# q b¨!¡eÑ,Ð,Ø
�'‰'€CÝ4€AØ�X‰X€FÙˆQ‹4€DØ	�‰€BØ	€AØ
ˆsŠ(Ø�$‰ˆØ	ˆQ‰ˆÙ�‹tˆÜ�‹Yˆð	 ˆs‹(ð
 	
ˆC�‰E‰
�6Ñ˜#Ÿ)™) C¨¡EÓ*Ñ*€AØ€Hr   c           	      óš  ‡ ‡‡— ‰d‰dz
  z  z  d‰ j                  ‰ j                  «      z  ‰ j                  d‰z  «      z  z  }‰ j                  |«      }‰ xj                  |z  c_        ‰d‰dz
  z  z  d‰ j                  ‰ j                  «      z  ‰ j                  d‰z  «      z  z  }‰ j
                  }ˆˆ ˆfd„}‰ j                  }‰ j                  }	d}
 ||
«      }t        |«      }||kD  rA||	k  r<||z  }|
dz  }
 ||
«      }||z  }|
dz  }
 ||
«      }|}	t        |«      }||kD  r||	k  rŒ<||z  }d‰dz
  dz  z  ‰ j                  ‰ j                  d‰ j                  dz  z  ‰z  «      z   ‰dz
  dz  z  z   }|||z   z  }d	}|j                  d
«      rŸ||kD  r||	k  s|||k  r9‰ j                  d«      t        ‰ j                  t        ||z  «      d«      «      z  }||	kD  r9‰ j                  d«      t        ‰ j                  t        ||	z  «      d«      «      z  }t        |‰ j
                  dz  «      }‰ xj                  |z  c_        |­|fS )Nr"   r   rY   c                 ó¸   •— ‰j                  | d«      d‰j                  ‰«      z  | z  z  ‰j                  d| z  «      z  ‰| z   dz
  ‰j                  | «      z  z  S )NrÎ   rY   r"   r   )r¬   r‹   rÉ   r¾   rA  s    €€€r   rC   z*secondzeta_singular_term.<locals>.<lambda>v  sX   ø€ �#—,‘,˜q Ó&¨¨#¯(©(°1«+©¸Ñ'9Ñ9Ø
‡y�y��Q‘ÓñØ˜A™#˜a™% §¡¨£Ñ+ò-r   r®   é   r   rÍ   r   r8  r!   ç      ð?)r‹   r   rÉ   r   r'   rŒ   r4   r)   ri   r&   r9   rh   r˜   r*   rí   )r   r,   r   rq   Úfactorrð   r¸   r   r:  Úmg1r   r»   Úmg2ÚpoleÚstrœ   s   ```             r   Úsecondzeta_singular_termrP  p  s6  ú€ Ø��a˜‘c‘‰^˜Q˜sŸx™x¨¯©Ó/Ñ/°·	±	¸#¸a¹%Ó0@Ñ@ÑA€FØ—‘˜“€IØ‡H‚H�	Ñ…HØ��a˜‘c‘‰^˜Q˜sŸx™x¨¯©Ó/Ñ/°·	±	¸#¸a¹%Ó0@Ñ@ÑA€FØ
�'‰'€Cõ	-€Aà�X‰X€FØ
�'‰'€CØ	€AÙˆQ‹4€DÜ
ˆd‹)€CØ
�Š)˜˜sš
Ø�$‰ˆØ	ˆQ‰ˆÙ�‹tˆØ�$‰ˆØ	ˆA‰ˆÙ�‹tˆØˆÜ�$‹iˆð �Š)˜˜s›
ð ˆd�N€FØˆq�‰s�b‰k‰>˜3Ÿ9™9 S§W¡W¨R°·±¸±	©\¸!©^Ó%<Ñ<¸qÀ¹sÀb¹kÑIÑI€DØ	��f‘Ñ	€BØ
€CØ‡z�z�'ÔØ�s’ ¨¢Ø�cŠzØ—g‘g˜b“k¤3 s§w¡w¬s°6¸#±:«¸rÓ'BÓ#CÑC�Ø�SŠyØ—g‘g˜b“k¤3 s§w¡w¬s°6¸#±:«¸rÓ'BÓ#CÑC�Ü�#�s—w‘w˜r‘zÓ"ˆØ‡H‚H�	Ñ…HØˆ3�ˆ8€Or   c                 ó®  — | j                  |«      }| j                  |«      }| j                  }| j                  |«      r | j                  |«      dk  rŒt	        |dz
  «      |dz  k  r| j
                  S t        t        | j                  |«      «      «      }|dz  r| j
                  S d| dz  z  | j                  d| j                  | d¬«      z
  d| dz   z  «      z  S | j                  }	 t        | ||«      }t        | j                  |«      d	«      }| xj                  |dz   z  c_
        t        | ||d
d
¬«      \  }	}
}t        | ||d
d
¬«      \  }}}t!        | ||d
¬«      \  }}t        | ||«      }|
|z   |z   }|	|z
  |z   |z
  }|j#                  d«      rJt%        d|	«       t%        d|d«       t%        d|«       t%        d|d«       t%        d|«       t%        d|«       || _
        |j#                  d«      rNt        | j                  t	        |«      «      d	«      }t        |d|z  z  | j                  dz  d|z  z  «      }|­|fS |­S # || _
        w xY w)a§  
    Evaluates the secondary zeta function `Z(s)`, defined for
    `\mathrm{Re}(s)>1` by

    .. math ::

        Z(s) = \sum_{n=1}^{\infty} \frac{1}{\tau_n^s}

    where `\frac12+i\tau_n` runs through the zeros of `\zeta(s)` with
    imaginary part positive.

    `Z(s)` extends to a meromorphic function on `\mathbb{C}`  with a
    double pole at `s=1` and  simple poles at the points `-2n` for
    `n=0`,  1, 2, ...

    **Examples**

        >>> from mpmath import *
        >>> mp.pretty = True; mp.dps = 15
        >>> secondzeta(2)
        0.023104993115419
        >>> xi = lambda s: 0.5*s*(s-1)*pi**(-0.5*s)*gamma(0.5*s)*zeta(s)
        >>> Xi = lambda t: xi(0.5+t*j)
        >>> chop(-0.5*diff(Xi,0,n=2)/Xi(0))
        0.023104993115419

    We may ask for an approximate error value::

        >>> secondzeta(0.5+100j, error=True)
        ((-0.216272011276718 - 0.844952708937228j), 2.22044604925031e-16)

    The function has poles at the negative odd integers,
    and dyadic rational values at the negative even integers::

        >>> mp.dps = 30
        >>> secondzeta(-8)
        -0.67236328125
        >>> secondzeta(-7)
        +inf

    **Implementation notes**

    The function is computed as sum of four terms `Z(s)=A(s)-P(s)+E(s)-S(s)`
    respectively main, prime, exponential and singular terms.
    The main term `A(s)` is computed from the zeros of zeta.
    The prime term depends on the von Mangoldt function.
    The singular term is responsible for the poles of the function.

    The four terms depends on a small parameter `a`. We may change the
    value of `a`. Theoretically this has no effect on the sum of the four
    terms, but in practice may be important.

    A smaller value of the parameter `a` makes `A(s)` depend on
    a smaller number of zeros of zeta, but `P(s)`  uses more values of
    von Mangoldt function.

    We may also add a verbose option to obtain data about the
    values of the four terms.

        >>> mp.dps = 10
        >>> secondzeta(0.5 + 40j, error=True, verbose=True)
        main term = (-30190318549.138656312556 - 13964804384.624622876523j)
            computed using 19 zeros of zeta
        prime term = (132717176.89212754625045 + 188980555.17563978290601j)
            computed using 9 values of the von Mangoldt function
        exponential term = (542447428666.07179812536 + 362434922978.80192435203j)
        singular term = (512124392939.98154322355 + 348281138038.65531023921j)
        ((0.059471043 + 0.3463514534j), 1.455191523e-11)

        >>> secondzeta(0.5 + 40j, a=0.04, error=True, verbose=True)
        main term = (-151962888.19606243907725 - 217930683.90210294051982j)
            computed using 9 zeros of zeta
        prime term = (2476659342.3038722372461 + 28711581821.921627163136j)
            computed using 37 values of the von Mangoldt function
        exponential term = (178506047114.7838188264 + 819674143244.45677330576j)
        singular term = (175877424884.22441310708 + 790744630738.28669174871j)
        ((0.059471043 + 0.3463514534j), 1.455191523e-11)

    Notice the great cancellation between the four terms. Changing `a`, the
    four terms are very different numbers but the cancellation gives
    the good value of Z(s).

    **References**

    A. Voros, Zeta functions for the Riemann zeros, Ann. Institute Fourier,
    53, (2003) 665--699.

    A. Voros, Zeta functions over Zeros of Zeta Functions, Lecture Notes
    of the Unione Matematica Italiana, Springer, 2009.
    r   r‰   rÍ   r   r@   Tr   r   r   ÚTrue)r8  rà   )r8  rà   zmain term =z    computed usingzzeros of zetazprime term =z#values of the von Mangoldt functionzexponential term =zsingular term =r8  rJ  )r#   rŒ   r+   r£   ri   r)   r*   r|   Úfractionr¶   r'   rF  rí   r   r=  rC  rP  rh   rã   )r   r,   r   rq   r¸   rª   r'   Út3rð   rr   Úr1Úgtrs   Úr2ÚptÚt4Úr4rœ   r:   r±   s                       r   Ú
secondzetar[  ”  s9  € ðx 	�‰�A‹€AØ�‰�A‹€AØ
�'‰'€CØ
‡y�y�„|˜Ÿ™˜q›	 QšÜˆq�‰s‹8�c˜$‘hÒØ—7‘7ˆNÜ”�c—f‘f˜Q“iÓ Ó!ˆØˆqŠ5Ø—7‘7ˆNà˜A˜2˜q™5‘MØ—<‘<  #§,¡,°¨r¸ ,Ó"=Ñ =¸aÀ1À"ÀQÁ$¹iÓHñIð Jà�8‰8€DðÜ   a¨Ó+ˆÜ˜Ÿ™ › AÓ&ˆ	Ø�Š�I ‘MÑ!�Ü)¨#¨a°¸ÈÔO‰
ˆˆB�Ü*¨3¨q°¸ÈÔP‰
ˆˆB�Ü)¨#¨a°¸Ô?‰ˆˆBÜ   a¨Ó+ˆØ�‰e�B‰hˆØˆr‰E�"‰H�R‰KˆØ�:‰:�iÔ Ü�- Ô$ÜÐ&¨¨OÔ<Ü�. "Ô%ÜÐ&¨Ð,QÔRÜÐ&¨Ô+ÜÐ# RÔ(àˆŒØ‡z�z�'ÔÜ�—‘œ˜A›“ Ó"ˆÜ�#�a˜‘d‘(˜CŸG™G B™J q¨!¡t™OÓ,ˆØˆr�3ˆwˆØˆ2€Iøð ˆ�ús   Ã-C5I É	Ic                 ó°  ‡ ‡‡‡	‡
‡— |dk(  r‰‰ z  S |dk(  r‰ j                  ‰‰«      S ‰dk(  r‰ j                  ‰|«      |z  S ‰ j                  ‰«      dk  rŸ‰ j                  ‰«      rt	        d«      ‚t        ‰ j                  d‰ j                  ‰«      z
  «      «      }‰ j                  }‰ j                  }t        |«      D ]  }||‰|z   ‰z  z  z  }||z  }Œ |‰ j                  |‰‰|z   «      z  |z   S ‰ j                  |«      Š	dd‰‰z  z  z  ‰ j                  d‰z
  ‰ ‰	z  «      ‰	 ‰dz
  z  z  |‰z  z  z   }‰dz  Š
d‰ j                  z  Šˆˆ ˆ	ˆ
ˆˆfd„}|d‰ j                  |d‰ j                  g«      z  z  }‰ j!                  |«      sG‰ j!                  ‰«      s6‰ j!                  ‰«      s%‰ j                  |«      dk  r‰ j#                  |«      }|S )až
  
    Gives the Lerch transcendent, defined for `|z| < 1` and
    `\Re{a} > 0` by

    .. math ::

        \Phi(z,s,a) = \sum_{k=0}^{\infty} \frac{z^k}{(a+k)^s}

    and generally by the recurrence `\Phi(z,s,a) = z \Phi(z,s,a+1) + a^{-s}`
    along with the integral representation valid for `\Re{a} > 0`

    .. math ::

        \Phi(z,s,a) = \frac{1}{2 a^s} +
                \int_0^{\infty} \frac{z^t}{(a+t)^s} dt -
                2 \int_0^{\infty} \frac{\sin(t \log z - s
                    \operatorname{arctan}(t/a)}{(a^2 + t^2)^{s/2}
                    (e^{2 \pi t}-1)} dt.

    The Lerch transcendent generalizes the Hurwitz zeta function :func:`zeta`
    (`z = 1`) and the polylogarithm :func:`polylog` (`a = 1`).

    **Examples**

    Several evaluations in terms of simpler functions::

        >>> from mpmath import *
        >>> mp.dps = 25; mp.pretty = True
        >>> lerchphi(-1,2,0.5); 4*catalan
        3.663862376708876060218414
        3.663862376708876060218414
        >>> diff(lerchphi, (-1,-2,1), (0,1,0)); 7*zeta(3)/(4*pi**2)
        0.2131391994087528954617607
        0.2131391994087528954617607
        >>> lerchphi(-4,1,1); log(5)/4
        0.4023594781085250936501898
        0.4023594781085250936501898
        >>> lerchphi(-3+2j,1,0.5); 2*atanh(sqrt(-3+2j))/sqrt(-3+2j)
        (1.142423447120257137774002 + 0.2118232380980201350495795j)
        (1.142423447120257137774002 + 0.2118232380980201350495795j)

    Evaluation works for complex arguments and `|z| \ge 1`::

        >>> lerchphi(1+2j, 3-j, 4+2j)
        (0.002025009957009908600539469 + 0.003327897536813558807438089j)
        >>> lerchphi(-2,2,-2.5)
        -12.28676272353094275265944
        >>> lerchphi(10,10,10)
        (-4.462130727102185701817349e-11 - 1.575172198981096218823481e-12j)
        >>> lerchphi(10,10,-10.5)
        (112658784011940.5605789002 - 498113185.5756221777743631j)

    Some degenerate cases::

        >>> lerchphi(0,1,2)
        0.5
        >>> lerchphi(0,1,-2)
        -0.5

    Reduction to simpler functions::

        >>> lerchphi(1, 4.25+1j, 1)
        (1.044674457556746668033975 - 0.04674508654012658932271226j)
        >>> zeta(4.25+1j)
        (1.044674457556746668033975 - 0.04674508654012658932271226j)
        >>> lerchphi(1 - 0.5**10, 4.25+1j, 1)
        (1.044629338021507546737197 - 0.04667768813963388181708101j)
        >>> lerchphi(3, 4, 1)
        (1.249503297023366545192592 - 0.2314252413375664776474462j)
        >>> polylog(4, 3) / 3
        (1.249503297023366545192592 - 0.2314252413375664776474462j)
        >>> lerchphi(3, 4, 1 - 0.5**10)
        (1.253978063946663945672674 - 0.2316736622836535468765376j)

    **References**

    1. [DLMF]_ section 25.14

    r   r   z#Lerch transcendent complex infinityr   c                 ó¤   •— ‰j                  ‰‰j                  | ‰z  «      z  | ‰z  z
  «      ‰dz  | dz  z   ‰z  ‰j                  ‰| z  «      z  z  S rN   )ÚsinÚatanÚexpm1)r:   r   r   rG   ru   r¤   r,   s    €€€€€€r   rC   zlerchphi.<locals>.<lambda>}  sP   ø€ �#—'‘'˜!˜CŸH™H Q q¡S›M™/¨!¨A©#Ñ-Ó.Ø
ˆQ‰$ˆq�!‰t‰)�a‰˜#Ÿ)™) A a¡C›.Ñ	(ò*r   )rn   rÐ   r£   rý   r„   r*   rš   r4   r�   r   Úlerchphir   r  r   r(   r)   rÓ   Úchop)r   rR   r,   r   rª   r   Úzpowr   r   rG   ru   r¤   s   ` ``     @@@r   ra  ra    sÇ  ý€ ðb 	ˆA‚vØ�a�R‰yÐàˆA‚vØ�x‰x˜˜1‹~ÐØˆA‚vØ�{‰{˜1˜aÓ  1Ñ$Ð$Ø
‡v�vˆaƒy�1‚}Ø�;‰;�qŒ>ÜÐBÓCÐCÜ�—‘˜˜3Ÿ6™6 !›9™Ó%Ó&ˆØ�H‰HˆØ�w‰wˆÜ˜–ˆAØ�˜˜1™˜q™‘Ñ ˆAØ�A‰I‰Dð ð �c—l‘l 1 Q¨¨!©Ó,Ñ,¨qÑ0Ð0Ø�‰ˆq‹	€AØ	ˆ1ˆQ�‰T‰6‰
�S—\‘\ ! A¡#¨ r¨!¡tÓ,°°°a¸±c©{Ñ:¸QÀ¹TÑAÑA€AØ	ˆA‰€AØ	ˆ#�&‰&‰€A÷	*ð 	*€Aàˆˆ3�8‰8�A˜˜3Ÿ7™7�|Ó$Ñ	$Ñ$€AØ�6‰6�!Œ9˜SŸV™V AœY¨s¯v©v°a¬y¸S¿V¹VÀA»YÈº]Ø�H‰H�Q‹KˆØ€Hr   )r   )r   )z2http://www.dtc.umn.edu/~odlyzko/zeta_tables/zeros1)F)r   r   N)r   r   )g¸…ëQ¸Ž?)+Ú
__future__r   Úlibmp.backendr   Ú	functionsr   r   r	   r.   r>   rH   rg   r}   r€   r‡   r‘   r”   r�   r¥   r¬   r³   r¶   r¼   rÀ   rÆ   rË   rÐ   rÕ   r×   rÏ   rÚ   rn   ræ   rë   rì   r  r3  r=  rC  rF  rP  r[  ra  rO   r   r   Ú<module>rg     s@  ðÝ %å "ß 9Ñ 9àò#ó ð#ðJ ò+ó ð+ðB ñBó ðBð ñJ%ó ðJ%òZ€ò.ð ò
Eó ð
Eð ñó ðð, ñ#ó ð#ð ñó ðð ñ%ó ð%ðF ñ*)ó ð*)ðX ñ%)ó ð%)ðN ò.ó ð.òò	ò"òH*ð( ñ&ó ð&ð* ò
9ó ð
9ð ò
5ó ð
5ð ñ'ó ð'ð ñ,ó ð,ð
 ò3,ó ð3,ðj ò"ó ð"òH'òR=ðB Ø() s°Eò ;ó ð;ðz Ø˜#¨!ò ó ðòBò(ò(ò&"ðH òó ððD ñjó ñjr   