Ë
    çÿæiï–  ã                   óv  — d dl Z d dlZd dlZd dlmZ d dlmZmZ d dl	m
c mZ d dlm
c mZ d dlmZmZmZmZmZmZ d dlmZmZmZ d dlmZmZ d dlmZ d dl m!Z! d	„ Z"d
„ Z# e#e«      Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*g e%ddf‘e%ddf‘e%ddf‘e%ddf‘e%ddf‘e%ddf‘e%ddf‘e%ddf‘e%d df‘e%d!df‘e%d"d#f‘e&dd$f‘e&dd%f‘e&dd%f‘e&dd&f‘e&dd$f‘e&dd$f‘e&dd'f‘e&ddf‘e&d df‘e&d!d(f‘e&d"df‘e'ddf‘e'ddf‘e'ddf‘e'dd)f‘e'dd*f‘e'dd(f‘e'ddf‘e'dd+f‘e'd d+f‘e'd!df‘e'd"df‘e(d,d'f‘e(d-df‘e(d.df‘e(d/df‘e(d0df‘e(d1d'f‘e(d2d'f‘e(d3d'f‘e(d4d)f‘e(d5d)f‘e(d6d)f‘e)d,d%f‘e)d-d&f‘e)d.d$f‘e)d/d)f‘e)d0d'f‘e)d1d$f‘e)d2d&f‘e)d3d&f‘e)d4d'f‘e)d5d'f‘e)d6d$f‘Z+ ee«       G d7„ d8«      «       Z, ee«       G d9„ d:«      «       Z-y);é    N)Údeepcopy)ÚstatsÚspecial)Úarray_namespaceÚis_cupyÚis_numpyÚxp_ravelÚxp_sizeÚmake_xp_test_case)Úxp_assert_closeÚxp_assert_equalÚxp_assert_less)Úfind_minimumÚ	find_root)Ú_CHANDRUPATLA_TESTS)Úpermutationsc                 ó   ‡ — ˆ fd„}|S )Nc                 ó   •‡ — ˆ ˆfd„}|S )Nc                  ó  •— | d   j                   }| D �cg c]  }t        |‰¬«      ‘Œ } }g }t        t        j                  |«      «      D ](  }| D �cg c]  }||   ‘Œ	 }}|j                   ‰|Ž «       Œ* |S c c}w c c}w )Nr   )Úxp)Úshaper	   ÚrangeÚmathÚprodÚappend)Ú
arg_arraysr   Ú	arg_arrayÚresÚiÚarg_scalarsÚfr   s         €€ú{/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/scipy/optimize/tests/test_chandrupatla.pyÚwrappedz._vectorize.<locals>.decorator.<locals>.wrapped   s…   ø€ Ø˜q‘M×'Ñ'ˆEÙFPÓQÁj¸œ( 9°Ö4ÀjˆJÐQØˆCÜœ4Ÿ9™9 UÓ+Ö,�Ù=GÓH¹Z°	˜y¨›|¸Z�ÐHØ—
‘
™1˜k˜?Õ+ð -ð ˆJùò Rùò Is   •A8ÁA=© )r!   r#   r   s   ` €r"   Ú	decoratorz_vectorize.<locals>.decorator   s   ù€ õ	ð ˆó    r$   )r   r%   s   ` r"   Ú
_vectorizer'      s   ø€ ô
ð Ðr&   c                 ó   ‡ — ˆ fd„}|S )Nc                 óì  •‡— h d£}|D �ci c]  }||v sŒ||j                  |«      “Œ }}|j                  dd «      Št        ‰«      rˆˆ	fd„}n‰} ‰	| |f||dœ|¤Ž}‰	t        k(  r3|j                  \  |_        |_        |j                  \  |_        |_        n>|j                  \  |_        |_	        |_        |j                  \  |_        |_
        |_        |j                  |_        |`|`|`|S c c}w )N>   ÚfatolÚfrtolÚxatolÚxrtolÚcallbackc                 ó6  •— ‰t         k(  r3| j                  \  | _        | _        | j                  \  | _        | _        n>| j                  \  | _        | _        | _        | j                  \  | _        | _        | _        | j                  | _
        | `| `| `	 ‰| «      S ©N)r   ÚbracketÚxlÚxrÚ	f_bracketÚflÚfrÚxmÚfmÚf_xÚfun)r   Ú	_callbackÚfuncs    €€r"   r.   zC_wrap_chandrupatla.<locals>._chandrupatla_wrapper.<locals>.callback8   s}   ø€ Øœ9Ò$Ø%(§[¡[‘N�C”F˜CœFØ%(§]¡]‘N�C”F˜C�Fà-0¯[©[Ñ*�C”F˜CœF C¤FØ-0¯]©]Ñ*�C”F˜CœF C¤FØŸ'™'�”Ø�KØ�MØ�GÙ  “~Ð%r&   )Ú
tolerancesr.   )ÚpopÚcallabler   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   )
r!   r1   ÚkwargsÚtol_keysÚkeyr=   r.   r   r;   r<   s
           @€r"   Ú_chandrupatla_wrapperz1_wrap_chandrupatla.<locals>._chandrupatla_wrapper2   sæ   ù€ â7ˆÙ6>ÓP±h¨sÀ#ÈÂ-�c˜6Ÿ:™: c›?Ñ*°hˆ
ÐPØ—J‘J˜z¨4Ó0ˆ	Ü�IÔö&ð !ˆHá�1�gÐR¨*¸xÑRÈ6ÑRˆØ”9ÒØ Ÿ[™[‰NˆCŒF�C”FØ Ÿ]™]‰NˆCŒF�C•Fà%(§[¡[Ñ"ˆCŒF�C”F˜CœFØ%(§]¡]Ñ"ˆCŒF�C”F˜CœFØ—'‘'ˆŒØˆKØˆMØˆGØˆ
ùò; Qs
   ‹	C1•C1r$   )r<   rC   s   ` r"   Ú_wrap_chandrupatlarD   1   s   ø€ ô ðB !Ð r&   c                 óH   — dd| dz  z
  dz  z  d| dz  z
  z   dd| z
  dz  z  z   S )Néd   é   ç      @é   ç       @r$   ©Úxs    r"   Úf1rM   Y   s7   € Ø��A�r‘E‘	˜A‰~Ñ  1 b¡5¡Ñ)¨A¨q°©s°R©i©KÑ7Ð7r&   c                 ó   — d| dz
  dz  z   S )Né   rJ   é   r$   rK   s    r"   Úf2rQ   ]   s   € Ø��B‘˜‰{‰?Ðr&   c                 óF   — t        | «      }|j                  | «      d| z  z
  S )NrO   )r   Úexp©rL   r   s     r"   Úf3rU   a   s"   € Ü	˜Ó	€BØ�6‰6�!‹9�q˜‘s‰?Ðr&   c                 ó0   — | dz  d| dz  z  z
  d| z  z
  dz   S )Nç      @rO   rH   g      4@r$   rK   s    r"   Úf4rX   f   s&   € Øˆb‰5�1�Q˜‘U‘7‰?˜S ™UÑ" RÑ'Ð'r&   c                 ó6   — d| dz  z  d| dz  z  z
  d| z  z
  dz   S )Né   é   rI   é   r$   rK   s    r"   Úf5r]   j   s*   € ØˆQ�‰T‰6�A�a˜‘d‘F‰?˜Q˜q™SÑ  1Ñ$Ð$r&   c                 óà   — d}d} | |«      } | |«      }||z
  }||kD  r||||| fn|||||f\  }}}}}t        |«      D ]&  }||z  }||z   }	 | |	«      }
|
|k  r||	||
f\  }}}}Œ& n ||	||
fS )Ng�ö—›wãù?rF   )r   )r<   Úx1Úx2ÚphiÚmaxiterrM   rQ   Ústepr   Úx3rU   s              r"   Ú_bracket_minimumre   n   s¹   € Ø
€CØ€GÙ	ˆb‹€BÙ	ˆb‹€BØ�‰7€DØ79¸B²w˜R  R¨¨d¨UÑ3Ø"$ b¨"¨b°$Ð!7ñ €BˆˆB��Dô �7Ž^ˆØ�‰ˆØ�$‰YˆÙ�"‹XˆØ�Š7Ø  R¨˜^‰NˆB��B™áð ð ˆr�2�r˜2˜rÐ!Ð!r&   éÿÿÿÿé   éþÿÿÿé   éüÿÿÿiøÿÿÿé   iðÿÿÿé   iàÿÿÿé   iÀÿÿÿé   i€ÿÿÿé   i ÿÿÿi þÿÿi üÿÿé   rZ   rP   r\   é	   é   é
   é   é   çš™™™™™©¿gš™™™™™¹¿g333333Ã¿gš™™™™™É¿g      Ð¿g333333Ó¿gffffffÖ¿gš™™™™™Ù¿gÍÌÌÌÌÌÜ¿ç      à¿gš™™™™™á¿c            
       ó  — e Zd Zd„ Zej
                  j                  dd«      ej
                  j                  dd ej                  ddd«      g«      d	„ «       «       Z	ej
                  j                  d
 e
«       dddg«      d„ «       Zd„ Zd„ Zd„ Zej
                  j                  de«      d„ «       Zej
                  j                  ddddgf«      ej
                  j                  dd«      d„ «       «       Zd„ Zd„ Zd„ Zy)ÚTestChandrupatlaMinimizec                 ó¶   — t        ||«      }|j                  d||z
  dz  z  «       d|j                  z  dz  z  }|j                  ||j                  ¬«      d   S )Nrw   rI   g      à?©Údtyper$   )r   rS   ÚpiÚasarrayr|   )ÚselfrL   Úlocr   r   s        r"   r!   zTestChandrupatlaMinimize.fÀ   sY   € Ü˜Q Ó$ˆØ�v‰v�d˜a ™e a™ZÑ'Ó(Ð(¨A¨b¯e©e©G°c©>Ñ9ˆØ�z‰z˜# Q§W¡WˆzÓ-¨bÑ1Ð1r&   r|   ©Úfloat32Úfloat64r€   ç333333ã?gÍÌÌÌÌÌð¿çÍÌÌÌÌÌð?rs   c                 ó”  ‡‡— dddœ‰   }t        ‰‰«      Šˆˆfd„dD «       }‰j                  |‰¬«      }‰j                  ‰j                  t        j                  j                  d«       ‰¬«      |j                  «      }t        | j                  g|¢­d|fiŽ}t        |j                  ||¬	«       t        |j                  |«       y )
Ng{®Gázt?g�íµ ÷Æ >r�   c              3   óD   •K  — | ]  }‰j                  |‰¬ «      –— Œ y­w)r{   N)r~   )Ú.0Úxir|   r   s     €€r"   Ú	<genexpr>z6TestChandrupatlaMinimize.test_basic.<locals>.<genexpr>Ì   s   øè ø€ ÐD¹°2�2—:‘:˜b¨�:×.¹ùs   ƒ ©éûÿÿÿr   rO   r{   r   Úargs©Úrtol)Úgetattrr~   Úbroadcast_tor   ÚnormÚpdfr   Ú_chandrupatla_minimizer!   r   rL   r   r:   )r   r€   r   r|   r�   r1   r:   r   s     ``    r"   Ú
test_basicz#TestChandrupatlaMinimize.test_basicÅ   s¥   ù€ ð
  ¨DÑ1°%Ñ8ˆÜ˜˜EÓ"ˆÜD¹ÓDˆØ�j‰j˜ EˆjÓ*ˆØ�o‰o˜bŸj™j¬%¯*©*¯.©.¸Ó*;Ð);À5˜jÓIÈ3Ï9É9ÓUˆä$ T§V¡VÐC¨gÒC¸S¸FÑCˆÜ˜Ÿ™˜s¨Õ.Ü˜Ÿ™ Õ%r&   r   ©rr   ©r[   é   ©r[   rI   rI   c           
      ó®  ‡ ‡‡— |r"|j                  ddd«      j                  |«      n|j                  d«      }|f}|j                  d«      |j                  d«      |j                  d«      fŠt        |«      ˆˆ fd„«       }ˆˆ fd	„Šd
‰_        t        ‰g‰¢­d|iŽ} ||«      }g d¢}|D ]g  }	|j                  |D �
cg c]  }
t        |
|	«      ‘Œ c}
«      }t        t        ||	«      «      }t        ||«       t        ||	«      j                  |k(  rŒgJ ‚ t        |j                   ‰ j                  |j                  g|¢­Ž «       t        |j                   ‰ j                  |j                  g|¢­Ž «       t        |j                    ‰ j                  |j"                  g|¢­Ž «       t        |j$                   ‰ j                  |j&                  g|¢­Ž «       |j)                  |j*                  «      ‰j                  k(  sJ ‚|j)                  |j,                  «      ‰j                  dz
  k(  sJ ‚|j/                  |j0                  j2                  d«      sJ ‚|j/                  |j4                  j2                  d«      sJ ‚|j/                  |j*                  j2                  d«      sJ ‚|j/                  |j,                  j2                  d«      sJ ‚y c c}
w )Nrv   r…   rr   r„   ç      Àç        rW   c                 ó8   •— t        ‰j                  g‰¢­d| fiŽS )Nr�   )r”   r!   )Ú
loc_singler1   r   s    €€r"   Úchandrupatla_singlezHTestChandrupatlaMinimize.test_vectorization.<locals>.chandrupatla_singleÜ   s   ø€ ä)¨$¯&©&ÐO°7ÒOÀ*ÀÑOÐOr&   c                  óR   •— ‰xj                   dz  c_          ‰j                  | i |¤ŽS ©NrG   ©Úf_evalsr!   ©r�   r@   r!   r   s     €€r"   r!   z6TestChandrupatlaMinimize.test_vectorization.<locals>.fà   ó&   ø€ Ø�IŠI˜‰N�IØ�4—6‘6˜4Ð* 6Ñ*Ð*r&   r   r�   )rL   r:   ÚsuccessÚstatusÚnfevÚnitr2   r7   r3   r5   r8   r6   r[   ÚboolÚintegral)ÚlinspaceÚreshaper~   r'   r£   r”   Ústackr�   r	   r   r   r:   r!   rL   r5   r2   r8   r7   r6   r3   Úmaxr¨   r©   Úisdtyper¦   r|   r§   )r   r   r   r€   r�   rŸ   r   ÚrefsÚattrsÚattrÚrefÚref_attrÚres_attrr1   r!   s   `            @@r"   Útest_vectorizationz+TestChandrupatlaMinimize.test_vectorizationÔ   sO  ú€ ñ >Cˆb�k‰k˜%  rÓ*×2Ñ2°5Ô9ÈÏ
É
ÐSVËˆØˆvˆØ—*‘*˜S“/ 2§:¡:¨b£>°2·:±:¸b³>ÐAˆä	�B‹ô	Pó 
ð	Põ	+ð ˆŒ	ä$ QÐ<¨Ò<°tÑ<ˆÙ" 3Ó'ˆò5ˆãˆDØ—x‘x¹tÓ D¹t¸¤¨¨dÕ!3¸tÑ DÓEˆHÜ¤¨¨TÓ 2Ó3ˆHÜ˜H hÔ/Ü˜3 Ó%×+Ñ+¨uÓ4Ð4Ð4ð	 ô 	˜Ÿ™  §¡¨¯©Ð!5°Ò!5Ô6Ü˜Ÿ™  §¡ s§v¡vÐ 5°Ò 5Ô6Ü˜Ÿ™  §¡ s§v¡vÐ 5°Ò 5Ô6Ü˜Ÿ™  §¡ s§v¡vÐ 5°Ò 5Ô6Ø�v‰v�c—h‘hÓ 1§9¡9Ò,Ð,Ð,Ø�v‰v�c—g‘g‹ !§)¡)¨a¡-Ò/Ð/Ð/à�z‰z˜#Ÿ+™+×+Ñ+¨VÔ4Ð4Ð4Ø�z‰z˜#Ÿ*™*×*Ñ*¨JÔ7Ð7Ð7Ø�z‰z˜#Ÿ(™(Ÿ.™.¨*Ô5Ð5Ð5Ø�z‰z˜#Ÿ'™'Ÿ-™-¨Ô4Ð4Ñ4ùò !Es   Â>K
c                 ó*  ‡— ˆfd„}‰j                  d‰j                  ¬«      f}‰j                  dgdz  ‰j                  ¬«      ‰j                  dgdz  ‰j                  ¬«      ‰j                  t        j
                  gdz  ‰j                  ¬«      f}t        |g|¢­|ddœŽ}‰j                  t        j                  t        j                  t        j                  t        j                  g‰j                  ¬«      }t        |j                  |«       y )Nc                 óä   •— d„ d„ d„ ˆfd„g}g }t        t        |«      «      D ]:  }| |df   }t        t        |«      |   «      }|j	                   ||   |«      «       Œ< ‰j                  |«      S )Nc                 ó   — | dz
  dz  S )Nç      @rI   r$   rK   s    r"   Ú<lambda>z@TestChandrupatlaMinimize.test_flags.<locals>.f.<locals>.<lambda>  ó   €   C¡¨Aš~r&   c                 ó   — | dz
  S ©Nrs   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_flags.<locals>.f.<locals>.<lambda>  ó   € ˜q 2švr&   c                 ó   — | dz
  dz  S )Nr»   r˜   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_flags.<locals>.f.<locals>.<lambda>  r½   r&   c                 óZ   •— ‰j                  | ‰j                  ‰j                  «      «      S r0   ©Ú	full_liker~   ÚnanrT   s    €r"   r¼   z@TestChandrupatlaMinimize.test_flags.<locals>.f.<locals>.<lambda>  s   ø€ ˜rŸ|™|¨A¨r¯z©z¸"¿&¹&Ó/AÔBr&   .)r   r
   Úintr	   r   r®   )ÚxsÚjsÚfuncsr   r   rL   Újr   s          €r"   r!   z.TestChandrupatlaMinimize.test_flags.<locals>.f   sv   ø€ Ù-Ù%Ù-ÛBðDˆEð ˆCÜœ7 2›;Ö'�Ø�q˜#�v‘J�Üœ › Q™Ó(�Ø—
‘
˜8˜5 ™8 A›;Õ'ð (ð —8‘8˜C“=Ð r&   r˜   r{   r   rI   rs   ©r�   rb   )ÚarangeÚint64r~   rƒ   Únpr}   r”   ÚeimÚ_ECONVERGEDÚ	_ESIGNERRÚ	_ECONVERRÚ
_EVALUEERRÚint32r   r§   )r   r   r!   r�   r1   r   Ú	ref_flagss    `     r"   Ú
test_flagsz#TestChandrupatlaMinimize.test_flagsý   sÛ   ø€ ô
	!ð —	‘	˜! 2§8¡8�	Ó,Ð.ˆØ—:‘:˜q˜c !™e¨2¯:©:�:Ó6Ø—:‘:˜q˜c !™e¨2¯:©:�:Ó6Ø—:‘:œrŸu™u˜g a™i¨r¯z©z�:Ó:ð<ˆô % QÐH¨ÑH°tÀRÒHˆà—J‘J¤§¡´·±ÄÇÁÜ #§¡ð 0Ø79·x±xð ó Aˆ	ä˜Ÿ
™
 IÕ.r&   c                 óŠ  — t         j                  j                  d«      }|j                  |j                  d¬«      «      }|j                  d|j                  ¬«      |j                  d«      |j                  d«      f}|f}t        |dddd¬«      }|j                  «       }d	|d
<   t        | j                  g|¢­i |¤Ž}|j                  |j                  |j                  z
  «      }	|j                  d|d
   z  |j                  ¬«      }
t        |	|j                  d|
|j                  ¬«      «       d|d
<   t        | j                  g|¢­i |¤Ž}|j                  |j                  |j                  z
  «      }|j                  d|d
   z  |j                  ¬«      }
t        ||j                  d|
|j                  ¬«      «       t        ||	«       |j                  «       }d	|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                  |j                  z
  «      }	|j                  d|d   z  |j                  |j                  «      z  |j                  ¬«      }
t        |	|
«       d|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                  |j                  z
  «      }|j                  d|d   z  |j                  |j                  «      z  |j                  ¬«      }
t        ||
«       t        ||	«       |j                  «       }d	|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                   d|j"                  z  z
  |j$                  z   «      }|j                  d|d   z  |j                  ¬«      }
t        ||j                  d|
|j                  ¬«      «       d|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                   d|j"                  z  z
  |j$                  z   «      }|j                  d|d   z  |j                  ¬«      }
t        ||j                  d|
|j                  ¬«      «       t        ||«       |j                  «       }d	|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                   d|j"                  z  z
  |j$                  z   «      }|j                  d|d   z  |j                  |j&                  «      z  |j                  ¬«      }
t        ||
«       d|d<   t        | j                  g|¢­i |¤Ž}|j                  |j                   d|j"                  z  z
  |j$                  z   «      }|j                  d|d   z  t        |j&                  «      z  |j                  ¬«      }
t        ||
«       t        ||«       y )Nì   ™FA92 r[   ©ÚsizerŒ   r{   r   rO   )r�   r,   r-   r*   r+   çü©ñÒMbP?r,   r˜   ©r[   ç�íµ ÷Æ°>r-   r*   rI   r+   )rÎ   ÚrandomÚdefault_rngr~   rƒ   ÚdictÚcopyr”   r!   Úabsr3   r2   r|   r   ÚfullrL   r5   r8   r6   r:   )r   r   ÚrngÚpr1   r�   Úkwargs0r@   Úres1Új1ÚtolÚres2Új2Úh1Úh2s                  r"   Útest_convergencez)TestChandrupatlaMinimize.test_convergence  s³  € ä�i‰i×#Ñ#Ð$7Ó8ˆØ�J‰J�s—z‘z q�zÓ)Ó*ˆØ—:‘:˜b¨¯
©
�:Ó3°R·Z±ZÀ³]ÀBÇJÁJÈqÃMÐRˆØˆtˆÜ˜D¨°¸!À1ÔEˆà—‘“ˆØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜dŸg™gÑ%Ó&ˆØ�j‰j˜˜6 '™?Ñ*°!·'±'ˆjÓ:ˆÜ�r˜2Ÿ7™7 4¨°A·G±G˜7Ó<Ô=Øˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜dŸg™gÑ%Ó&ˆØ�j‰j˜˜6 '™?Ñ*°!·'±'ˆjÓ:ˆÜ�r˜2Ÿ7™7 4¨°A·G±G˜7Ó<Ô=Ü�r˜2Ôà—‘“ˆØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜dŸg™gÑ%Ó&ˆØ�j‰j˜˜6 '™?Ñ*¨2¯6©6°$·&±&«>Ñ9ÀÇÁˆjÓIˆÜ�r˜3ÔØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜dŸg™gÑ%Ó&ˆØ�j‰j˜˜6 '™?Ñ*¨2¯6©6°$·&±&«>Ñ9ÀÇÁˆjÓIˆÜ�r˜3ÔÜ�r˜2Ôà—‘“ˆØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜a $§'¡'™kÑ)¨D¯G©GÑ3Ó4ˆØ�j‰j˜˜6 '™?Ñ*°!·'±'ˆjÓ:ˆÜ�r˜2Ÿ7™7 4¨°A·G±G˜7Ó<Ô=Øˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜a $§'¡'™kÑ)¨D¯G©GÑ3Ó4ˆØ�j‰j˜˜6 '™?Ñ*°!·'±'ˆjÓ:ˆÜ�r˜2Ÿ7™7 4¨°A·G±G˜7Ó<Ô=Ü�r˜2Ôà—‘“ˆØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜a $§'¡'™kÑ)¨D¯G©GÑ3Ó4ˆØ�j‰j˜˜6 '™?Ñ*¨2¯6©6°$·(±(Ó+;Ñ;À1Ç7Á7ˆjÓKˆÜ�r˜3ÔØˆˆw‰Ü% d§f¡fÐA¨wÒA¸&ÑAˆØ�V‰V�D—G‘G˜a $§'¡'™kÑ)¨D¯G©GÑ3Ó4ˆØ�j‰j˜˜6 '™?Ñ*¬3¨t¯x©x«=Ñ8ÀÇÁˆjÓHˆÜ�r˜3ÔÜ�r˜2Õr&   c                 ó  ‡ ‡‡‡‡‡— ‰j                  d«      Š‰j                  d«      ‰j                  d«      ‰j                  d«      fŠdŠt        ‰ j                  g‰¢­‰f‰dœŽ}‰j                  |j                  «      rJ ‚‰j                  |j                  ‰dz   k(  «      sJ ‚‰j                  |j                  ‰k(  «      sJ ‚ˆˆˆˆˆ ˆfd„Š‰j                  ‰_	        ‰j                  ‰_
        d‰_        d ‰_        t        ‰ j                  g‰¢­‰f‰d	œŽ}|j                  «       D ][  }|d
k(  r1||   t        j                  k(  sJ ‚||   t        j                   k(  rŒ7J ‚||   ‰j                  |   cxk(  r
||   k(  rŒXJ ‚ J ‚ y )Nç~ý,œã?rŒ   r   rO   rË   r[   c                 óì  •— ‰xj                   dz  c_         | ‰_        t        | d«      sJ ‚‰j                   dk(  r(| j                  | j                  | j
                  f‰k(  s~J ‚| j                  ‰j                  k(  | j
                  ‰j
                  k7  z  }| j                  ‰j                  k7  | j
                  ‰j
                  k(  z  }‰j                  ||z  «      sJ ‚| j                  ‰_        | j
                  ‰_        | j                  t        j                  k(  sJ ‚t        ‰j                  | j                  ‰«      | j                  «       t        ‰j                  | j                  ‰«      | j                  «       t        ‰j                  | j
                  ‰«      | j                  «       t        ‰j                  | j                  ‰«      | j                   «       ‰j                   ‰k(  rt"        ‚y ©NrG   rL   r   )Úiterr   Úhasattrr2   r7   r3   Úallr§   rÏ   Ú_EINPROGRESSr   r!   r5   r8   r6   rL   r:   ÚStopIteration)	r   Ú
changed_xrÚ
changed_xlr1   r.   r€   rb   r   r   s	      €€€€€€r"   r.   z@TestChandrupatlaMinimize.test_maxiter_callback.<locals>.callback^  sm  ø€ Ø�MŠM˜QÑ�MØˆHŒLÜ˜3 Ô$Ð$Ð$Ø�}‰} Ò!àŸ™ §¡¨¯©Ð/°7Ò:Ð:Ð:à!Ÿf™f¨¯©Ñ3¸¿¹À(Ç+Á+Ñ8MÑN�
Ø!Ÿf™f¨¯©Ñ3¸¿¹À(Ç+Á+Ñ8MÑN�
Ø—v‘v˜j¨:Ñ5Ô6Ð6Ð6àŸ&™&ˆHŒKØŸ&™&ˆHŒKØ—:‘:¤×!1Ñ!1Ò1Ð1Ð1Ü˜DŸF™F 3§6¡6¨3Ó/°·±Ô8Ü˜DŸF™F 3§6¡6¨3Ó/°·±Ô8Ü˜DŸF™F 3§6¡6¨3Ó/°·±Ô8Ü˜DŸF™F 3§5¡5¨#Ó.°·±Ô8Ø�}‰} Ò'Ü#Ð#ð (r&   rf   ©r�   r.   r§   )r~   r”   r!   Úanyr¦   rõ   r¨   r©   rÅ   r2   r3   ró   r   ÚkeysrÏ   rÒ   Ú
_ECALLBACK)	r   r   r   rê   rB   r1   r.   r€   rb   s	   ``   @@@@r"   Útest_maxiter_callbackz.TestChandrupatlaMinimize.test_maxiter_callbackR  so  ý€ à�j‰j˜Ó"ˆØ—:‘:˜b“> 2§:¡:¨a£=°"·*±*¸Q³-Ð@ˆØˆä$ T§V¡Vð 6¨gñ 6¸S¸FØ-4ò6ˆà—6‘6˜#Ÿ+™+Ô&Ð&Ð&Ø�v‰v�c—h‘h '¨!¡)Ñ+Ô,Ð,Ð,Ø�v‰v�c—g‘g Ñ(Ô)Ð)Ð)÷	$ñ 	$ð, —f‘fˆŒØ—f‘fˆŒØˆŒØˆŒä% d§f¡fð 9¨wñ 9¸c¸VØ/7ò9ˆð
 —8‘8–:ˆCØ�hŠØ˜3‘x¤3§=¡=Ò0Ð0Ð0à˜C‘y¤C§N¡NÓ2Ð2Ð2à˜C‘y H§L¡L°Ñ$5ÔA¸¸S¹ÓAÐAÑAÐAÐAñ r&   Úcasec                 óX  — |\  }}}d}||z   }t        |||«      \  }}}}	}
}d}d}d}d}|j                  |«      |j                  |«      |j                  ||j                  ¬«      f}t        |g|¢­||||dœŽ}t	        |j
                  |j                  ||j                  ¬«      «       y )Ngš™™™™™É?g-Cëâ6?rÝ   g¼‰Ø—²Òœ<r{   )r,   r*   r-   r+   )re   r~   rƒ   r”   r   r©   rÔ   )r   rÿ   r   r<   r_   r©   rc   r`   rd   rM   rQ   rU   r,   r*   r-   r+   r1   r   s                     r"   Útest_nit_expectedz*TestChandrupatlaMinimize.test_nit_expected†  sÀ   € ð
 ‰ˆˆb�#ð ˆØ�$‰YˆÜ!1°$¸¸BÓ!?ÑˆˆB��B˜˜Bð ˆØˆØˆØˆà—*‘*˜R“. "§*¡*¨R£.°"·*±*¸RÀrÇzÁz°*Ó2RÐRˆÜ$ Tð L¨Gñ L¸5Ø+0¸ÀUòLˆä˜Ÿ™ §¡¨C°r·x±x Ó!@ÕAr&   gÍÌÌÌÌÌä?gffffffæ?©Úfloat16r‚   rƒ   c           	      ó   ‡‡— t        ‰‰«      Š‰j                  |‰¬«      }‰j                  d‰¬«      ‰j                  d‰¬«      ‰j                  d‰¬«      f}ˆˆfd„}t        |g|¢­d|fiŽ}|j                  j                  ‰k(  sJ ‚t        |j                  |t        j                  ‰j                  ‰«      j                  «      ¬«       y )Nr{   éýÿÿÿrG   rO   c                 óV   •— | j                   ‰k(  sJ ‚‰j                  | |z
  dz  ‰«      S ©NrI   )r|   Úastype)rL   r€   r|   r   s     €€r"   r!   z.TestChandrupatlaMinimize.test_dtype.<locals>.f¨  s.   ø€ Ø—7‘7˜eÒ#Ð#Ð#Ø—9‘9˜a #™g¨™\¨5Ó1Ð1r&   r�   rŽ   )
r�   r~   r”   rL   r|   r   r   ÚsqrtÚfinfoÚeps)r   r€   r|   r   r1   r!   r   s     ``   r"   Ú
test_dtypez#TestChandrupatlaMinimize.test_dtype�  s´   ù€ ô ˜˜EÓ"ˆà�j‰j˜ EˆjÓ*ˆØ—:‘:˜b¨�:Ó.Ø—:‘:˜a u�:Ó-Ø—:‘:˜a u�:Ó-ð/ˆõ	2ô % QÐ>¨Ò>¸°vÑ>ˆØ�u‰u�{‰{˜eÒ#Ð#Ð#Ü˜Ÿ™˜s¬¯©°2·8±8¸E³?×3FÑ3FÓ)GÖHr&   c                 óÖ  — d}|j                  d«      |j                  d«      |j                  d«      f}t        j                  t        |¬«      5  t	        d g|¢­Ž  d d d «       d}|j                  d«      |j                  d«      |j                  d«      f}t        j                  t        |¬«      5  t	        d„ g|¢­Ž  d d d «       d	}|j                  d
dg«      |j                  ddg«      |j                  g d¢«      f}t        j                  t        t
        f|¬«      5  t	        d„ g|¢­Ž  d d d «       d}|j                  ddg«      |j                  ddg«      |j                  ddg«      f}t        j                  t        |¬«      5  t	        d„ g|¢­Ž  d d d «       d}|j                  d«      |j                  d«      |j                  d«      f}t        j                  t        |¬«      5  t	        d„ g|¢­ddiŽ d d d «       t        j                  t        |¬«      5  t	        d„ g|¢­d|j                  iŽ d d d «       t        j                  t        |¬«      5  t	        d„ g|¢­ddiŽ d d d «       t        j                  t        |¬«      5  t	        d„ g|¢­d|j                  iŽ d d d «       d}t        j                  t        |¬«      5  t	        d„ g|¢­ddiŽ d d d «       t        j                  t        |¬«      5  t	        d „ g|¢­ddiŽ d d d «       d!}t        j                  t        |¬«      5  t	        d"„ g|¢­d#d$iŽ d d d «       y # 1 sw Y   �ŒxY w# 1 sw Y   �Œ¬xY w# 1 sw Y   �ŒHxY w# 1 sw Y   �ŒêxY w# 1 sw Y   �Œ�xY w# 1 sw Y   �Œ^xY w# 1 sw Y   �Œ7xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒÜxY w# 1 sw Y   Œ´xY w# 1 sw Y   y xY w)%Nú`func` must be callable.rj   r   r˜   ©Úmatchú3Abscissae and function output must be real numbers.ù      À      ð?c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>»  ó   € ©Qr&   z...be broadcast...rh   r  ©r[   r˜   rO   c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Á  r  r&   z:The shape of the array returned by `func` must be the samerO   c                 ó   — | d   | d   | d   gS )N)r   .)rG   .r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Æ  s   € ¨a°©i¸¸6¹ÀAÀfÁIÑ-Nr&   ú(Tolerances must be non-negative scalars.c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ì  r  r&   r,   rf   c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Î  r  r&   r-   c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ð  r  r&   r*   Úekkic                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ò  r  r&   r+   ú)`maxiter` must be a non-negative integer.c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ö  r  r&   rb   ç      ø?c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ø  r  r&   ú`callback` must be callable.c                 ó   — | S r0   r$   rK   s    r"   r¼   z@TestChandrupatlaMinimize.test_input_validation.<locals>.<lambda>Ü  r  r&   r.   Ú	shrubbery)r~   ÚpytestÚraisesÚ
ValueErrorr”   ÚRuntimeErrorrÅ   )r   r   Úmessager1   s       r"   Útest_input_validationz.TestChandrupatlaMinimize.test_input_validation°  sû  € ð -ˆØ—*‘*˜R“. "§*¡*¨Q£-°·±¸A³Ð>ˆÜ�]‰]œ:¨WÖ5Ü" 4Ð2¨'Ó2÷ 6ð HˆØ—*‘*˜WÓ% r§z¡z°!£}°b·j±jÀ³mÐCˆÜ�]‰]œ:¨WÖ5Ü"¡;Ð9°Ó9÷ 6ð 'ˆØ—*‘*˜b "˜XÓ&¨¯
©
°A°q°6Ó(:¸B¿J¹JÂyÓ<QÐQˆä�]‰]œJ¬Ð5¸WÖEÜ"¡;Ð9°Ó9÷ Fð OˆØ—*‘*˜b "˜XÓ&¨¯
©
°A°q°6Ó(:¸B¿J¹JÈÈ1ÀvÓ<NÐNˆÜ�]‰]œ:¨WÖ5Ü"Ñ#Nð -Ø$+ó-÷ 6ð =ˆØ—*‘*˜R“. "§*¡*¨Q£-°·±¸A³Ð>ˆÜ�]‰]œ:¨WÖ5Ü"¡;ÐC°ÒCÀÒC÷ 6ä�]‰]œ:¨WÖ5Ü"¡;ÐG°ÒGÀÇÁÒG÷ 6ä�]‰]œ:¨WÖ5Ü"¡;ÐG°ÒGÀÒG÷ 6ä�]‰]œ:¨WÖ5Ü"¡;ÐG°ÒGÀÇÁÒG÷ 6ð >ˆÜ�]‰]œ:¨WÖ5Ü"¡;ÐF°ÒFÀ#ÒF÷ 6ä�]‰]œ:¨WÖ5Ü"¡;ÐE°ÒEÀ"ÒE÷ 6ð 1ˆÜ�]‰]œ:¨WÖ5Ü"¡;ÐO°ÒOÀ;ÒO÷ 6Ð5÷M 6Ñ5ú÷
 6Ñ5ú÷ FÑEú÷
 6Ñ5ú÷ 6Ñ5úç5Ñ5úç5Ñ5úç5Ñ5ú÷ 6Ð5úç5Ð5ú÷ 6Ð5ús„   ÁMÂ4M,Ä%M9ÆNÇ5NÈ)N É'N-ÊN:ËOÌOÍOÍM)Í,M6Í9NÎNÎNÎ N*Î-N7Î:OÏOÏOÏO(c                 ó  — |j                  ddd«      d d …|j                  f   }|j                  t        t	        g d¢«      «      «      j
                  }t        | j                  g|¢­d|fiŽ}|j                  t        j                  |j                  |«      |j                  | j                  ||«      k(  z  «      sJ ‚|j                  d d …df   }t        |j                  |j                  j
                  |«      ddiŽ y )	Nrf   rG   rP   r‹   r�   r   r�   çVçž¯Ò<)r¬   Únewaxisr~   Úlistr   ÚTr”   r!   rõ   ÚxpxÚiscloserL   r:   r   Úbroadcast_arrays)r   r   r€   Úbracketsr   r´   s         r"   Útest_bracket_orderz+TestChandrupatlaMinimize.test_bracket_orderÞ  sÆ   € à�k‰k˜"˜a Ó#¢A r§z¡z MÑ2ˆØ—:‘:œd¤<²
Ó#;Ó<Ó=×?Ñ?ˆÜ$ T§V¡VÐD¨hÒD¸c¸VÑDˆØ�v‰v”c—k‘k #§%¡%¨Ó-°·±¸D¿F¹FÀ3ÈÓ<LÑ1LÑMÔNÐNÐNØ�e‰e’A�q�D‰kˆÜ˜×,Ñ,¨S¯U©U¯W©W°cÓ:ÐGÀÓGr&   c                 óR  ‡— ˆfd„}‰j                  d«      ‰j                  d«      ‰j                  d«      f}t        j                  d¬«      5  t        |g|¢­dddœŽ}d d d «       j                  sJ ‚t        |j                  ‰j                  d«      d	¬
«       t        |j                  ‰j                  d«      d¬«       d„ }‰j                  d«      ‰j                  d«      ‰j                  d«      f}t        |g|¢­Ž }|j                  sJ ‚t        |j                  ‰j                  d«      «       d„ }‰j                  d«      ‰j                  d«      ‰j                  d«      f}t        |g|¢­ddiŽ}|j                  sJ |j                  |k(  «       ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚d„ }‰j                  d«      ‰j                  d«      ‰j                  d«      f}‰j                  d«      }t        |g|¢­d|fiŽ}t        |j                  |«       ˆfd„}‰j                  d«      ‰j                  d«      ‰j                  ‰j                  «      f}t        |g|¢­dddddœŽ}|j                  sJ ‚|j                  |j                  cxk  r|j                  k  sJ ‚ J ‚ ||j                  «       ||j                  «      cxk(  r ||j                  «      k(  sJ ‚ J ‚y # 1 sw Y   �Œ¾xY w)Nc                 óP   •— ‰j                  | j                  d«      sJ ‚| dz
  dz  S )Núreal floatingrG   rI   ©r°   r|   rT   s    €r"   r!   z6TestChandrupatlaMinimize.test_special_cases.<locals>.fë  s)   ø€ Ø—:‘:˜aŸg™g Ô7Ð7Ð7Ø˜‘E˜A‘:Ðr&   éùÿÿÿr   rZ   Úignore©Úinvalid)r*   r+   ç      ð?rÛ   rŽ   rœ   g¬÷N’~h©Úatolc                 ó   — | dz
  dz  S ©NrG   rI   r$   rK   s    r"   r!   z6TestChandrupatlaMinimize.test_special_cases.<locals>.fø  ó   € Ø�a‘C˜!‘8ˆOr&   rG   c                 ó   — | dz
  dz  S rA  r$   rK   s    r"   r!   z6TestChandrupatlaMinimize.test_special_cases.<locals>.f  rB  r&   r  gš™™™™™ñ?rO   rb   r[   rh   c                 ó   — | |z
  dz  dz
  S )NrI   rG   r$   ©rL   Úcs     r"   r!   z6TestChandrupatlaMinimize.test_special_cases.<locals>.f  s   € Ø�a‘C˜!‘8˜a‘<Ðr&   rf   çUUUUUUÕ?r�   c                 ó(   •— ‰j                  | «       S r0   )ÚsinrT   s    €r"   r!   z6TestChandrupatlaMinimize.test_special_cases.<locals>.f  s   ø€ Ø—F‘F˜1“I�:Ðr&   ©r,   r-   r*   r+   )r~   rÎ   Úerrstater”   r¦   r   rL   r:   r   r2   r3   r©   r¨   r§   r}   r7   )r   r   r!   r1   r   rF  s    `    r"   Útest_special_casesz+TestChandrupatlaMinimize.test_special_casesç  s›  ø€ ô	ð —*‘*˜R“. "§*¡*¨Q£-°·±¸A³Ð>ˆÜ�[‰[ Ö*Ü(¨ÐG¨WÑG¸AÀQÒGˆC÷ +à�{Š{Ðˆ{Ü˜Ÿ™˜rŸz™z¨"›~°DÕ9Ü˜Ÿ™ §¡¨B£°fÕ=ò	ð —*‘*˜Q“- §¡¨A£°·
±
¸1³Ð=ˆÜ$ QÐ1¨Ò1ˆØ�{Š{Ðˆ{Ü˜Ÿ™˜rŸz™z¨"›~Ô.ò	ð —*‘*˜R“. "§*¡*¨S£/°2·:±:¸a³=Ð@ˆÜ$ QÐ<¨Ò<¸!Ñ<ˆØ�vŠvÐ(�s—v‘v Ñ(Ó(ˆvØ�w‰w˜!Š|Ðˆ|Ø�x‰x˜1Š}Ðˆ}Ø�z‰z˜RÒÐÐØ�u‰u˜Š|Ðˆ|ò	 ð —*‘*˜R“. "§*¡*¨Q£-°·±¸A³Ð>ˆØ�J‰J�s‹OˆÜ$ QÐ<¨Ò<¸°tÑ<ˆÜ˜Ÿ™˜qÔ!ô	ð —*‘*˜Q“- §¡¨A£°·
±
¸2¿5¹5Ó0AÐAˆÜ$ QÐU¨ÑU¸ÀÈ!ÐSTÒUˆØ�{Š{Ðˆ{à�v‰v˜Ÿ™Ô' §¡Ò'Ð'Ñ'Ð'Ð'Ù�—‘‹y™A˜cŸf™f›IÔ2©¨3¯6©6«Ò2Ð2Ñ2Ð2Ñ2÷] +Ñ*ús   ÁLÌL&N)Ú__name__Ú
__module__Ú__qualname__r!   r%  ÚmarkÚparametrizerÎ   r¬   r•   Útupler·   rÖ   rî   rþ   Úcasesr  r  r*  r4  rL  r$   r&   r"   ry   ry   ½   s#  „ ò2ð
 ‡[�[×Ñ˜WÐ&<Ó=Ø‡[�[×Ñ˜U S¨+¨"¯+©+°e¸TÀ2Ó*FÐ$GÓHñ&ó Ió >ð&ð ‡[�[×Ñ˜W¡u£w°°v¸yÐ&IÓJñ%5ó Kð%5òP/ò2:òx2Bðh ‡[�[×Ñ˜V UÓ+ñBó ,ðBð, ‡[�[×Ñ˜U T¨D°#¨;Ð$7Ó8Ø‡[�[×Ñ˜WÐ&GÓHñIó Ió 9ðIò",Pò\Hó73r&   ry   c            	       óÀ  — e Zd Zd„ Zej
                  j                  dd ej                  ddd«      g«      d„ «       Z	ej
                  j                  d e
«       d	d
dg«      d„ «       Zd„ Zd„ Zd„ Zej
                  j                  de«      d„ «       Zej
                  j                  ddddgf«      ej
                  j                  dd«      d„ «       «       Zd„ Zd„ Zy)ÚTestFindRootc                 ó2   — t        j                  |«      |z
  S r0   )r   Úndtr)r   Úqrå   s      r"   r!   zTestFindRoot.f$  s   € Ü�|‰|˜A‹ Ñ"Ð"r&   rå   r„   rv   r…   rs   c                 ób  — |j                  d«      |j                  d«      }}t        | j                  ||f|j                  |«      f¬«      }|j                  t        j                  «       j                  |«      |j                  |«      j                  ¬«      }t        |j                  |«       y )Nr›   rW   ©r�   r{   )	r~   r   r!   r   r’   Úppfr|   r   rL   )r   rå   r   ÚaÚbr   r´   s          r"   r•   zTestFindRoot.test_basic'  s}   € ð �z‰z˜#‹ §
¡
¨2£ˆ1ˆÜ˜Ÿ™  A ¨b¯j©j¸«mÐ-=Ô>ˆØ�j‰jœŸ™›×)Ñ)¨!Ó,°B·J±J¸q³M×4GÑ4GˆjÓHˆÜ˜Ÿ™˜sÕ#r&   r   r–   r—   r™   c           
      ó–  ‡ ‡— |r&t        j                  ddd«      j                  |«      nt        j                  d«      }|j	                  |«      }|f}|j
                  }t         j                  ˆ fd„«       }ˆˆ fd„Šd‰_        |j	                  d|j                  ¬	«      |j	                  d
|j                  ¬	«      f}t        ‰||¬«      }	 ||«      j                  «       }
|
D �cg c]  }|j                  ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j                  |«       |
D �cg c]  }|j                  ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j                  |d¬«       t        |	j                   ‰ j                  |	j                  g|¢­Ž «       |
D �cg c]  }t        |j                   «      ‘Œ }}|j                  |j	                  ||j                  ¬	«      |«      }t        |	j                   |«       |
D �cg c]  }|j"                  ‘Œ }}|j                  |j	                  ||j$                  ¬	«      |«      }t        |	j"                  |«       |
D �cg c]  }|j&                  ‘Œ }}|j                  |j	                  ||j$                  ¬	«      |«      }t)        |«      r@t        |	j&                  |«       |j+                  |	j&                  «      ‰j                  k(  sBJ ‚|	j&                  j,                  |k(  sJ ‚|	j&                  j
                  |j$                  k(  sJ ‚|
D �cg c]  }|j.                  ‘Œ }}|j                  |j	                  ||j$                  ¬	«      |«      }t)        |«      rCt        |	j.                  |«       |j+                  |	j.                  «      ‰j                  dz
  k(  sBJ ‚|	j.                  j,                  |k(  sJ ‚|	j.                  j
                  |j$                  k(  sJ ‚|
D �cg c]  }|j0                  d   ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j0                  d   |«       |
D �cg c]  }|j0                  d   ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j0                  d   |«       t3        |	j0                  d   |	j0                  d   «       |j5                  |	j                  «      }|j7                  |	j                  |   |	j0                  d   |   k(  |	j                  |   |	j0                  d   |   k(  z  «      sJ ‚t)        |«      rdnd}|
D �cg c]  }|j8                  d   ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j8                  d   ||¬«       t        |	j8                  d    ‰ j                  |	j0                  d   g|¢­Ž «       |
D �cg c]  }|j8                  d   ‘Œ }}|j                  |j	                  ||¬	«      |«      }t        |	j8                  d   ||¬«       t        |	j8                  d    ‰ j                  |	j0                  d   g|¢­Ž «       |j7                  |j;                  |	j                  |   «      |j=                  |j;                  |	j8                  d   |   «      |j;                  |	j8                  d   |   «      «      k(  «      sJ ‚y c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w )Nrv   r…   rr   r„   c                 ó6   •— t        ‰j                  d| f¬«      S )N)rŒ   rO   rZ  )r   r!   )rå   r   s    €r"   Úfind_root_singlez9TestFindRoot.test_vectorization.<locals>.find_root_single9  s   ø€ ä˜TŸV™V W°A°4Ô8Ð8r&   c                  óR   •— ‰xj                   dz  c_          ‰j                  | i |¤ŽS r¡   r¢   r¤   s     €€r"   r!   z*TestFindRoot.test_vectorization.<locals>.f=  r¥   r&   r   r›   r{   rW   rZ  r,  r>  rI   rG   g•Ö&è.>)rÎ   r¬   r­   rƒ   r~   r|   Ú	vectorizer£   r   ÚravelrL   r   r9   r   r!   rª   r¦   r§   rÔ   r¨   r   r¯   r   r©   r1   r   Úisfiniterõ   r4   râ   Úminimum)r   r   r   rå   Úp_xpÚargs_xpr|   r`  r1   r   r±   r´   Úref_xÚref_fÚref_successÚ
ref_statusÚref_nfevÚref_nitÚref_xlÚref_xrÚfiniter?  Úref_flÚref_frr!   s   `                       @r"   r·   zTestFindRoot.test_vectorization/  sý  ù€ ñ =BŒR�[‰[˜  bÓ)×1Ñ1°%Ô8Ü—*‘*˜S“/ð 	
à�z‰z˜!‹}ˆØ�'ˆØ—
‘
ˆä	�‰ó	9ó 
ð	9õ	+ð ˆŒ	à—*‘*˜S¨¯
©
�*Ó3°R·Z±ZÀÈ"Ï*É*°ZÓ5UÐUˆÜ˜˜7¨Ô1ˆÙ Ó"×(Ñ(Ó*ˆá"&Ó'¡$˜3�—“ $ˆÐ'Ø—
‘
˜2Ÿ:™: e°5˜:Ó9¸5ÓAˆÜ˜Ÿ™˜uÔ%á$(Ó)¡D˜S�—“ DˆÐ)Ø—
‘
˜2Ÿ:™: e°5˜:Ó9¸5ÓAˆÜ˜Ÿ™ ¨UÕ3Ü˜Ÿ™  §¡¨¯©Ð!8°Ò!8Ô9á48Ó9±D¨S”t˜CŸK™KÕ(°DˆÐ9Ø—j‘j §¡¨K¸r¿w¹w Ó!GÈÓOˆÜ˜Ÿ™ [Ô1á,0Ó1©D S�c—j“j¨Dˆ
Ð1Ø—Z‘Z §
¡
¨:¸R¿X¹X 
Ó FÈÓNˆ
Ü˜Ÿ
™
 JÔ/á(,Ó-© �C—H“H¨ˆÐ-Ø—:‘:˜bŸj™j¨¸¿¹˜jÓBÀEÓJˆÜ�BŒ<Ü˜CŸH™H hÔ/Ø—6‘6˜#Ÿ(™(Ó# q§y¡yÒ0Ð0Ð0à—8‘8—>‘> UÒ*Ð*Ð*Ø—8‘8—>‘> R§X¡XÒ-Ð-Ð-á&*Ó+¡d˜s�3—7“7 dˆÐ+Ø—*‘*˜RŸZ™Z¨°r·x±x˜ZÓ@À%ÓHˆÜ�BŒ<Ü˜CŸG™G WÔ-Ø—6‘6˜#Ÿ'™'“? a§i¡i°¡kÒ1Ð1Ð1à—7‘7—=‘= EÒ)Ð)Ð)Ø—7‘7—=‘= B§H¡HÒ,Ð,Ð,á,0Ó1©D S�#—+‘+˜a“.¨DˆÐ1Ø—‘˜BŸJ™J v°U˜JÓ;¸UÓCˆÜ˜Ÿ™ A™¨Ô/á,0Ó1©D S�#—+‘+˜a“.¨DˆÐ1Ø—‘˜BŸJ™J v°U˜JÓ;¸UÓCˆÜ˜Ÿ™ A™¨Ô/ä�s—{‘{ 1‘~ s§{¡{°1¡~Ô6Ø—‘˜SŸU™UÓ#ˆØ�v‰v�s—u‘u˜V‘}¨¯©°A©°vÑ(>Ñ>ØŸ™˜v™¨#¯+©+°a©.¸Ñ*@Ñ@ñBô Cð 	Cð Cô ! œ‰u¨$ˆá.2Ó3©d s�#—-‘- Ó"¨dˆÐ3Ø—‘˜BŸJ™J v°U˜JÓ;¸UÓCˆÜ˜Ÿ™ aÑ(¨&°tÕ<Ü˜Ÿ™ aÑ(¨&¨$¯&©&°·±¸Q±Ð*JÀ'Ò*JÔKá.2Ó3©d s�#—-‘- Ó"¨dˆÐ3Ø—‘˜BŸJ™J v°U˜JÓ;¸UÓCˆÜ˜Ÿ™ aÑ(¨&°tÕ<Ü˜Ÿ™ aÑ(¨&¨$¯&©&°·±¸Q±Ð*JÀ'Ò*JÔKà�v‰v�b—f‘f˜SŸW™W V™_Ó-Ø—j‘j §¡¨¯©°aÑ(8¸Ñ(@Ó!AØ!#§¡¨¯©°aÑ(8¸Ñ(@Ó!AóCñCô Dð 	Dñ Dùò{ (ùò *ùò
 :ùò 2ùò .ùò ,ùò 2ùò 2ùò 4ùò
 4s<   Ã'\Ä9\Æ>\#È#\(É?\-Í\2Ð$\7Ñ<\<Õ:]Ø]c                 ó´  ‡— ˆfd„}‰j                  d‰j                  ¬«      f}‰j                  dgdz  «      ‰j                  ‰j                  gdz  «      }}t	        |||f|d¬«      }‰j                  t
        j                  t
        j                  t
        j                  t
        j                  g‰j                  ¬«      }t        |j                  |«       y )Nc           	      óJ  •— |j                   ‰j                  k(  sJ ‚t        ‰«      r=d„ d„ d„ ˆfd„g}t        | |«      D ��cg c]  \  }} |t	        |«         |«      ‘Œ c}}S d„ d„ d„ ˆfd„g}t        | |«      D ��cg c]  \  }} ||   |«      ‘Œ c}}S c c}}w c c}}w )	Nc                 ó   — | dz
  S ©Nr»   r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>�  s   €  1 s¢7r&   c                 ó   — | dz
  S r¿   r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>‘  s   €  1 r¢6r&   c                 ó   — | dz
  dz  S ©Nçš™™™™™¹?r[   r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>’  s   €  A¨¡G¨a¢<r&   c                 óZ   •— ‰j                  | ‰j                  ‰j                  «      «      S r0   rÃ   rT   s    €r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>“  s   ø€  2§<¡<°°2·:±:¸b¿f¹fÓ3EÔ#Fr&   c                 ó   — | dz
  S rv  r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>–  s   € ˜q 3šwr&   c                 ó   — | dz
  S r¿   r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>—  rÀ   r&   c                 ó   — | dz
  dz  S ry  r$   rK   s    r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>˜  r½   r&   c                 ó   •— ‰j                   S r0   )rÅ   rT   s    €r"   r¼   z4TestFindRoot.test_flags.<locals>.f.<locals>.<lambda>™  s	   ø€ ˜rŸvšvr&   )r|   rÍ   r   ÚziprÆ   )rÇ   rÈ   rÉ   rL   rÊ   r   s        €r"   r!   z"TestFindRoot.test_flags.<locals>.fŠ  s¯   ø€ ð —8‘8˜rŸx™xÒ'Ð'Ð'Ü�rŒ{Ù*Ù)Ù/ÛFðH�ô 69¸¸R´[ÔA±[©T¨Q°˜˜œc !›f™ aÕ(°[ÒAÐAá&Ù%Ù-Û%ð'ˆEô -0°°B¬KÔ8©K¡D A q�H�E˜!‘H˜Q•K¨KÒ8Ð8ùó Bùó 9s   ÁBÂ Br˜   r{   rœ   rI   rË   )rÌ   rÍ   r~   r}   r   rÏ   rÐ   rÑ   rÒ   rÓ   rÔ   r   r§   )r   r   r!   r�   r\  r]  r   rÕ   s    `      r"   rÖ   zTestFindRoot.test_flags‡  s¯   ø€ ô	9ð$ —	‘	˜! 2§8¡8�	Ó,Ð.ˆØ�z‰z˜2˜$˜q™&Ó! 2§:¡:¨r¯u©u¨g°a©iÓ#8ˆ1ˆÜ˜˜A˜q˜6¨°aÔ8ˆà—J‘J¤§¡Ü #§¡Ü #§¡Ü #§¡ð 0ð 8:·x±xð ó Aˆ	ô 	˜Ÿ
™
 IÕ.r&   c           	      óî	  — t         j                  j                  d«      }|j                  |j                  d¬«      «      }|j                  d«       |j                  d«      f}|f}t	        |t	        dddd¬«      ¬«      }t        |«      }d|d	   d
<   t        | j                  |fi |¤Ž}t        |j                  d   |j                  d   z
  |j                  ||j                  d«      «      «       d|d	   d
<   t        | j                  |fi |¤Ž}	t        |	j                  d   |	j                  d   z
  |j                  ||j                  d«      «      «       t        |	j                  d   |	j                  d   z
  |j                  d   |j                  d   z
  «       t        |«      }d|d	   d<   t        | j                  |fi |¤Ž}t        |j                  d   |j                  d   z
  d|j                  |j                  «      z  «       d|d	   d<   t        | j                  |fi |¤Ž}	t        |	j                  d   |	j                  d   z
  d|j                  |	j                  «      z  «       t        |	j                  d   |	j                  d   z
  |j                  d   |j                  d   z
  «       t        |«      }d|d	   d<   t        | j                  |fi |¤Ž}t        |j                  |j                  «      |j                  ||j                  d«      «      «       d|d	   d<   t        | j                  |fi |¤Ž}	t        |j                  |	j                  «      |j                  ||j                  d«      «      «       t        |j                  |	j                  «      |j                  |j                  «      «       t        |«      }d|d	   d<   |\  }
}|j                  |j                   | j                  |
g|¢­Ž «      |j                   | j                  |g|¢­Ž «      «      }t        | j                  |fi |¤Ž}t        |j                  |j                  «      d|z  «       d|d	   d<   t        | j                  |fi |¤Ž}	t        |j                  |	j                  «      d|z  «       t        |j                  |	j                  «      |j                  |j                  «      «       y )NrØ   r[   rÙ   rW   r   rJ  ©r�   r=   rÛ   r=   r,   rG   rÝ   r-   r*   r+   )rÎ   rÞ   rß   r~   rà   r   r   r!   r   r1   rÄ   râ   rL   r9   re  )r   r   rä   rå   r1   r�   ræ   r@   rç   rê   r_   r`   Úf0s                r"   rî   zTestFindRoot.test_convergence¦  s  € ä�i‰i×#Ñ#Ð$7Ó8ˆØ�J‰J�s—z‘z q�zÓ)Ó*ˆØ—J‘J˜r“N�? B§J¡J¨r£NÐ3ˆØˆtˆÜ˜D¬T¸ÀÈ!ÐSTÔ-UÔVˆä˜'Ó"ˆØ(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�t—|‘| A‘¨¯©°a©Ñ8Ø—|‘| A r§z¡z°$Ó'7Ó8ô	:à(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�t—|‘| A‘¨¯©°a©Ñ8Ø—|‘| A r§z¡z°$Ó'7Ó8ô	:ä�t—|‘| A‘¨¯©°a©Ñ8Ø—|‘| A‘¨¯©°a©Ñ8ô	:ô ˜'Ó"ˆØ(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�t—|‘| A‘¨¯©°a©Ñ8¸$ÀÇÁÈÏÉÃÑ:OÔPØ(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�t—|‘| A‘¨¯©°a©Ñ8Ø˜bŸf™f T§V¡V›nÑ,ô	.ä�t—|‘| A‘¨¯©°a©Ñ8Ø—|‘| A‘¨¯©°a©Ñ8ô	:ô ˜'Ó"ˆØ(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�r—v‘v˜dŸh™hÓ'¨¯©°a¸¿¹ÀDÓ9IÓ)JÔKØ(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�r—v‘v˜dŸh™hÓ'¨¯©°a¸¿¹ÀDÓ9IÓ)JÔKÜ�r—v‘v˜dŸh™hÓ'¨¯©°·±Ó)9Ô:ä˜'Ó"ˆØ(,ˆˆ|Ñ˜WÑ%Ø‰ˆˆBØ�Z‰Z˜Ÿ™˜v˜tŸv™v bÐ0¨4Ò0Ó1°2·6±6¸&¸$¿&¹&ÀÐ:KÀdÒ:KÓ3LÓMˆÜ˜Ÿ™ Ñ3¨FÑ3ˆÜ�r—v‘v˜dŸh™hÓ'¨¨b©Ô1Ø(,ˆˆ|Ñ˜WÑ%Ü˜Ÿ™ Ñ3¨FÑ3ˆÜ�r—v‘v˜dŸh™hÓ'¨¨b©Ô1Ü�r—v‘v˜dŸh™hÓ'¨¯©°·±Ó)9Õ:r&   c                 ó¬  ‡ ‡‡‡‡‡‡	— ‰j                  d«      Š	‰j                  d«      ‰j                  d«      fŠdŠˆfd„Šd ‰_        d ‰_        t        ‰‰‰	f‰¬«      }‰j	                  |j
                  «      rJ ‚‰j                  |j                  ‰dz   k(  «      sJ ‚‰j                  |j                  ‰k(  «      sJ ‚ˆˆˆˆ	ˆ ˆfd„Šd	‰_	        d ‰_
        d d g‰_        t        ‰‰‰	f‰¬
«      }|j                  «       D ]Ñ  }|dk(  rqt        ||   ‰j                  t        j                  ‰j                   ¬«      «       t        ||   ‰j                  t        j"                  ‰j                   ¬«      «       Œy|dv r1t        ||   d   ||   d   «       t        ||   d   ||   d   «       Œ®|j%                  d«      rŒÀt        ||   ||   «       ŒÓ y )Nrð   r›   rW   rO   c                 óT   •— t        j                  | «      |z
  }| ‰_        |‰_        |S r0   )r   rW  rL   r9   )rX  rå   r   r!   s      €r"   r!   z-TestFindRoot.test_maxiter_callback.<locals>.fß  s(   ø€ Ü—,‘,˜q“/ AÑ%ˆCØˆAŒCØˆAŒEØˆJr&   rË   rI   c                 óò  •— ‰xj                   dz  c_         | ‰_        t        | d«      sJ ‚‰j                   dk(  r#| j                  d   | j                  d   f‰k(  s”J ‚| j                  d   ‰j                  d   k(  | j                  d   ‰j                  d   k7  z  | j                  d   ‰j                  d   k7  | j                  d   ‰j                  d   k(  z  z  }‰j	                  |«      sJ ‚| j                  d   ‰j                  d<   | j                  d   ‰j                  d<   | j
                  t        j                  k(  sJ ‚t        ‰j                  | j                  d   ‰«      | j                  d   «       t        ‰j                  | j                  d   ‰«      | j                  d   «       t        ‰j                  | j                  ‰«      | j                  «       ‰j                   ‰k(  rt        ‚y rò   )ró   r   rô   r1   rõ   r§   rÏ   rö   r   r!   r4   rL   r9   r÷   )r   Úchangedr1   r.   rb   rå   r   r   s     €€€€€€r"   r.   z4TestFindRoot.test_maxiter_callback.<locals>.callbackì  s±  ø€ Ø�MŠM˜QÑ�MØˆHŒLÜ˜3 Ô$Ð$Ð$Ø�}‰} Ò!àŸ™ A™¨¯©°A©Ð7¸7ÒBÐBÐBà Ÿ[™[¨™^¨x×/?Ñ/?ÀÑ/BÑBØ"Ÿ{™{¨1™~°×1AÑ1AÀ!Ñ1DÑDñFà"Ÿ{™{¨1™~°×1AÑ1AÀ!Ñ1DÑDØ!$§¡¨Q¡°8×3CÑ3CÀAÑ3FÑ!FñHñI�ð —v‘v˜g”Ð&�à"%§+¡+¨a¡.ˆH×Ñ˜QÑØ"%§+¡+¨a¡.ˆH×Ñ˜QÑØ—:‘:¤×!1Ñ!1Ò1Ð1Ð1Ü˜DŸF™F 3§;¡;¨q¡>°1Ó5°s·}±}ÀQÑ7GÔHÜ˜DŸF™F 3§;¡;¨q¡>°1Ó5°s·}±}ÀQÑ7GÔHÜ˜DŸF™F 3§5¡5¨!Ó,¨c¯g©gÔ6Ø�}‰} Ò'Ü#Ð#ð (r&   rf   rú   r§   r{   >   r1   r4   r   rG   Ú_)r~   rL   r9   r   rû   r¦   rõ   r¨   r©   ró   r   r1   rü   r   rÏ   rÒ   rÔ   rý   Ú
startswith)
r   r   r   rê   rB   r1   r.   r!   rb   rå   s
   ``   @@@@@r"   rþ   z"TestFindRoot.test_maxiter_callbackÙ  sœ  þ€ à�J‰J�xÓ ˆØ—:‘:˜c“? B§J¡J¨r£NÐ3ˆØˆô	ð
 ˆŒØˆŒä˜˜7¨!¨°wÔ?ˆØ—6‘6˜#Ÿ+™+Ô&Ð&Ð&Ø�v‰v�c—h‘h '¨!¡)Ñ+Ô,Ð,Ð,Ø�v‰v�c—g‘g Ñ(Ô)Ð)Ð)÷	$ñ 	$ð, ˆŒØˆŒØ  $˜<ˆÔä˜˜G¨1¨$¸ÔBˆð —8‘8–:ˆCØ�hŠÜ  C¡¨"¯*©*´S·]±]È"Ï(É(¨*Ó*SÔTÜ  S¡	¨2¯:©:´c·n±nÈBÏHÉH¨:Ó+UÕVØÐ0Ñ0Ü  S¡	¨!¡¨c°#©h°q©kÔ:Ü  S¡	¨!¡¨c°#©h°q©kÕ:Ø—‘ Ô$Øä  S¡	¨3¨s©8Õ4ñ r&   rÿ   c                 óÖ  — |\  }}}}}|j                  |d   |j                  ¬«      |j                  |d   |j                  ¬«      f}|j                  ||j                  ¬«      }t        ||t        dd¬«      ¬«      }t	        |j
                  |j                   ||«      |j                  ¬«      dd	¬
«       t        |j                  |j                  ||j                  ¬«      «       y )Nr   r{   rG   g»½×Ùß|û=gñhãˆµøä>)r-   r,   ©r=   g:Œ0âŽyE>gü©ñÒMb`?)r�   r?  )	r~   rƒ   r   rà   r   r9   r   r¨   rÔ   )	r   rÿ   r   r!   r1   ÚrootÚnfevalÚidr   s	            r"   r  zTestFindRoot.test_nit_expected  sÁ   € ð
 (,Ñ$ˆˆ7�D˜& "ð
 —:‘:˜g a™j°·
±
�:Ó;Ø—:‘:˜g a™j°·
±
�:Ó;ð=ˆà�z‰z˜$ b§j¡jˆzÓ1ˆä˜˜7¬t¸%ÀtÔ/LÔMˆÜ˜Ÿ™ §¡©A¨d«G¸2¿:¹: Ó!FØ!¨õ	.ä˜Ÿ™ "§*¡*¨V¸2¿8¹8 *Ó"DÕEr&   rŒ  g�•C‹lçã?gV-²�ïã?r|   r  c                 ó  ‡‡— t        ‰«       }|r‰dk(  rt        j                  d«       t        ‰‰d «      Š‰€t        j                  ‰› d‰› �«       ˆˆfd„}‰j	                  d‰¬«      ‰j	                  d‰¬«      }}‰j	                  |‰¬«      }t        |||f|fdd	i¬
«      }	 t        |j                  |d	¬«       y # t        $ r< |j                  j                  ‰k(  sJ ‚‰j                  |j                  dk(  «       Y y w xY w)Nr  z0`float16` dtype only supported for NumPy arrays.z does not support c                 óT   •— | |z
  dz  }t        ‰«      r‰j                  |‰¬«      S |S )NrH   r{   )r   r~   )rL   rŒ  r   r|   r   s      €€r"   r!   z"TestFindRoot.test_dtype.<locals>.f5  s0   ø€ Ø�t‘8 Ñ"ˆCÜ˜Œ|Ø—z‘z #¨U�zÓ3Ð3ØˆJr&   r  r{   r[   r,   rÛ   r‚  r>  r   )r   r%  Úskipr�   r~   r   r   rL   ÚAssertionErrorr|   rõ   r9   )	r   rŒ  r|   r   Ú	not_numpyr!   r\  r]  r   s	     ``     r"   r  zTestFindRoot.test_dtype)  s÷   ù€ ô ! ›Ð$ˆ	Ù˜ )Ò+Ü�K‰KÐJÔKä˜˜E 4Ó(ˆØˆ=Ü�K‰K˜2˜$Ð0°°Ð8Ô9õ	ð �z‰z˜" EˆzÓ*¨B¯J©J°qÀ¨JÓ,Fˆ1ˆØ�z‰z˜$ eˆzÓ,ˆÜ˜˜A˜q˜6¨¨¸WÀd¸OÔLˆð	!Ü˜CŸE™E 4¨dÖ3øÜò 	!Ø—5‘5—;‘; %Ò'Ð'Ð'Ø�F‰F�3—7‘7˜a‘<Ö ð	!ús   Â(C ÃADÄDc                 ób  — d„ }d}t        j                  t        |¬«      5  |j                  d«      |j                  d«      f}t	        d |«       d d d «       d}t        j                  t        |¬«      5  |j                  d«      |j                  d«      f}t	        ||«       d d d «       d}t        j                  t        t
        f|¬«      5  |j                  d	d
g«      |j                  g d¢«      f}t	        ||«       d d d «       d}t        j                  t        |¬«      5  |j                  d
d
g«      |j                  ddg«      f}t	        d„ |«       d d d «       d}|j                  d«      |j                  d«      f}t        j                  t        |¬«      5  t	        ||t        d¬«      ¬«       d d d «       t        j                  t        |¬«      5  t	        ||t        |j                  ¬«      ¬«       d d d «       t        j                  t        |¬«      5  t	        ||t        d¬«      ¬«       d d d «       t        j                  t        |¬«      5  t	        ||t        |j                  ¬«      ¬«       d d d «       d}t        j                  t        |¬«      5  t	        ||d¬«       d d d «       t        j                  t        |¬«      5  t	        ||d¬«       d d d «       d}t        j                  t        |¬«      5  t	        ||d¬«       d d d «       y # 1 sw Y   �ŒØxY w# 1 sw Y   �Œ‘xY w# 1 sw Y   �Œ@xY w# 1 sw Y   �ŒôxY w# 1 sw Y   �Œ¡xY w# 1 sw Y   �ŒhxY w# 1 sw Y   �Œ9xY w# 1 sw Y   ŒÿxY w# 1 sw Y   Œ×xY w# 1 sw Y   Œ±xY w# 1 sw Y   y xY w)Nc                 ó   — | S r0   r$   rK   s    r"   r<   z0TestFindRoot.test_input_validation.<locals>.funcG  s   € ØˆHr&   r  r  rj   r˜   r  r  z@(not be broadcast|Attempting to broadcast a dimension of length)rh   r  r  z,The shape of the array returned by `func`...rO   c                 ó   — | d   | d   | d   gS )Nr   rG   r$   rK   s    r"   r¼   z4TestFindRoot.test_input_validation.<locals>.<lambda>^  s   €   1¡ q¨¡t¨Q¨q©TÑ 2r&   r  rf   )r,   r‹  )r-   r  )r*   )r+   r  r   ©rb   r"  r$  )r.   )r%  r&  r'  r~   r   r(  rà   rÅ   )r   r   r<   r)  r1   s        r"   r*  z"TestFindRoot.test_input_validationD  s�  € ò	ð -ˆÜ�]‰]œ:¨WÖ5Ø—j‘j “n b§j¡j°£mÐ3ˆGÜ�d˜GÔ$÷ 6ð HˆÜ�]‰]œ:¨WÖ5Ø—j‘j Ó'¨¯©°A«Ð6ˆGÜ�d˜GÔ$÷ 6ð UˆÜ�]‰]œJ¬Ð5¸WÖEØ—j‘j " b Ó*¨B¯J©J²yÓ,AÐAˆGÜ�d˜GÔ$÷ Fð AˆÜ�]‰]œ:¨WÖ5Ø—j‘j " b Ó*¨B¯J©J¸¸1°vÓ,>Ð>ˆGÜÑ2°GÔ<÷ 6ð =ˆØ—*‘*˜R“. "§*¡*¨Q£-Ð/ˆÜ�]‰]œ:¨WÖ5Ü�d˜G´¸2´Õ?÷ 6ä�]‰]œ:¨WÖ5Ü�d˜G´¸2¿6¹6Ô0BÕC÷ 6ä�]‰]œ:¨WÖ5Ü�d˜G´¸6Ô0BÕC÷ 6ä�]‰]œ:¨WÖ5Ü�d˜G´¸2¿6¹6Ô0BÕC÷ 6ð >ˆÜ�]‰]œ:¨WÖ5Ü�d˜G¨SÕ1÷ 6ä�]‰]œ:¨WÖ5Ü�d˜G¨RÕ0÷ 6ð 1ˆÜ�]‰]œ:¨WÖ5Ü�d˜G¨kÕ:÷ 6Ð5÷O 6Ñ5ú÷
 6Ñ5ú÷ FÑEú÷
 6Ñ5ú÷ 6Ñ5úç5Ñ5úç5Ñ5úç5Ð5ú÷ 6Ð5úç5Ð5ú÷ 6Ð5úsƒ   ¡/L&Á5/L3Ã3M Ä'4MÆ"MÇ#M'È$M4É #NÊ(NËNÌN%Ì&L0Ì3L=Í M
ÍMÍM$Í'M1Í4M>ÎN
ÎNÎN"Î%N.c                 ó 
  ‡— d„ }‰j                  g d¢«      ‰j                  g d¢«      }}t        j                  dd¬«      5  t        |||f«      }d d d «       ‰j	                  j
                  «      sJ ‚t        |j                  dd  ‰j                  d|j                  d   «      «       ˆfd	„}t        |‰j                  d
«      ‰j                  d«      f«      }|j
                  sJ ‚t        |j                  ‰j                  d«      «       d„ }‰j                  ddg«      }t        |‰j                  d«      ‰j                  d«      f|f¬«      }t        |j
                  ‰j                  ddg«      «       t        |j                  ‰j                  ‰j                  dg«      «       d„ }t        j                  d¬«      5  ‰j                  ‰j                  «      }t        |||f«      }d d d «       |j
                  sJ ‚t        |j                  ‰j                  ‰j                  «      «       d„ }‰j                  d«      ‰j                  d«      }}t        |||fd¬«      }t        |j
                  ‰j                  d«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                   d   |«       t        |j                   d   |«       t        |j                  |«       t        || | fd¬«      }t        |j                  | «       t        |||fd¬«      }t        |j
                  ‰j                  d«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                  ‰j                  d‰j                  ¬«      «       t        |j                  ‰j                  d«      «       d„ }t        |‰j                  d«      ‰j                  d«      f‰j                  d«      ¬«      }t        |j                  ‰j                  d«      «       y # 1 sw Y   �Œ—xY w# 1 sw Y   �ŒxY w)Nc                 ó&   — d| z  dz   d|  dz   z  z
  S r¡   r$   rK   s    r"   r!   z*TestFindRoot.test_special_cases.<locals>.fy  s   € Ø�q‘5˜1‘9˜q Q B¨¡F™|Ñ+Ð+r&   )rz  rœ   rœ   rz  )çÍÌÌÌÌÌì?r=  rš  r=  r:  )Údivider<  rG   rÜ   r   c                 óP   •— ‰j                  | j                  d«      sJ ‚| dz  dz
  S )Nr7  é   rG   r8  rT   s    €r"   r!   z*TestFindRoot.test_special_cases.<locals>.f†  s)   ø€ Ø—:‘:˜aŸg™g Ô7Ð7Ð7à˜‘7˜Q‘;Ðr&   r9  rO   r=  c                 ó   — | dz  |z
  S r  r$   )rL   rŒ  s     r"   r!   z*TestFindRoot.test_special_cases.<locals>.f’  s   € Ø�a‘4˜$‘;Ðr&   rZ  FTc                 ó   — d| z  S r¡   r$   rK   s    r"   r!   z*TestFindRoot.test_special_cases.<locals>.fš  s   € Ø�Q‘3ˆJr&   r;  c                 ó   — | dz  dz
  S )Nr[   rG   r$   rK   s    r"   r!   z*TestFindRoot.test_special_cases.<locals>.f¤  s   € Ø�a‘4˜!‘8ˆOr&   g      ÀrW   r—  rh   r{   rI   r[   c                 ó   — || z  dz
  S r¡   r$   rE  s     r"   r!   z*TestFindRoot.test_special_cases.<locals>.f¾  s   € Ø�Q‘3˜‘7ˆNr&   rf   rG  )r~   rÎ   rK  r   rõ   r¦   r   rL   rã   r   rÅ   Úinfr§   rÔ   r©   r¨   r1   )r   r   r!   r\  r]  r   rŒ  r¢  s    `      r"   rL  zTestFindRoot.test_special_casesu  s¥  ø€ ò	,ð �z‰zÒ,Ó-°·
±
Ò;OÓ0Pˆ1ˆä�[‰[ °(Ö;Ü˜A  1˜vÓ&ˆC÷ <ð �v‰v�c—k‘kÔ"Ð"Ð"Ü˜Ÿ™˜a˜b˜	 2§7¡7¨4°·±°q±Ó#:Ô;ô	ô ˜˜BŸJ™J r›N¨B¯J©J°q«MÐ:Ó;ˆØ�{Š{Ðˆ{Ü˜Ÿ™˜rŸz™z¨"›~Ô.ò	ð �z‰z˜1˜a˜&Ó!ˆÜ˜˜BŸJ™J q›M¨2¯:©:°a«=Ð9ÀÀÔHˆÜ˜Ÿ™ R§Z¡Z°¸°Ó%>Ô?Ü˜Ÿ™˜rŸz™z¨2¯6©6°2¨,Ó7Ô8ò	ô �[‰[ Ö*Ø—*‘*˜RŸV™VÓ$ˆCÜ˜A  S˜zÓ*ˆC÷ +ð �{Š{Ðˆ{Ü˜Ÿ™˜rŸz™z¨"¯&©&Ó1Ô2ò	ð �z‰z˜#‹ §
¡
¨2£ˆ1ˆÜ˜˜A˜q˜6¨1Ô-ˆÜ˜Ÿ™ R§Z¡Z°Ó%6Ô7Ü˜Ÿ
™
 B§J¡J¨r¸¿¹ JÓ$BÔCÜ˜Ÿ™ §¡¨A°R·X±X Ó!>Ô?Ü˜Ÿ™ "§*¡*¨Q°b·h±h *Ó"?Ô@Ü˜Ÿ™ A™¨Ô*Ü˜Ÿ™ A™¨Ô*ä˜Ÿ™˜qÔ!ä˜˜Q˜B  ˜8¨QÔ/ˆÜ˜Ÿ™ ˜rÔ"ô ˜˜A˜q˜6¨1Ô-ˆÜ˜Ÿ™ R§Z¡Z°Ó%5Ô6Ü˜Ÿ
™
 B§J¡J¨q¸¿¹ JÓ$AÔBÜ˜Ÿ™ §¡¨A°R·X±X Ó!>Ô?Ü˜Ÿ™ "§*¡*¨Q°b·h±h *Ó"?Ô@Ü˜Ÿ™˜rŸz™z¨"›~Ô.ò	ô ˜˜BŸJ™J r›N¨B¯J©J°q«MÐ:ÀÇÁÈAÃÔOˆÜ˜Ÿ™˜rŸz™z¨#›Õ/÷I <Ñ;ú÷> +Ñ*ús   ÁS&Ç*S3Ó&S0Ó3S=N)rM  rN  rO  r!   r%  rP  rQ  rÎ   r¬   r•   rR  r·   rÖ   rî   rþ   r   r  r  r*  rL  r$   r&   r"   rU  rU  !  s  „ ò#ð ‡[�[×Ñ˜S 3¨¨¯©°E¸4ÀÓ(DÐ"EÓFñ$ó Gð$ð ‡[�[×Ñ˜W¡u£w°°v¸yÐ&IÓJñUDó KðUDòn/ò>1;òf;5ðz ‡[�[×Ñ˜VÐ%8Ó9ñFó :ðFð$ ‡[�[×Ñ˜V e¨e°U¨^Ð%<Ó=Ø‡[�[×Ñ˜WÐ&GÓHñ!ó Ió >ð!ò2/;óbM0r&   rU  ).r   r%  ÚnumpyrÎ   rá   r   Úscipyr   r   Ú(scipy._lib._elementwise_iterative_methodÚ_libÚ_elementwise_iterative_methodrÏ   Úscipy._lib.array_api_extraÚarray_api_extrar0  Úscipy._lib._array_apir   r   r   r	   r
   r   Úscipy._lib._array_api_no_0dr   r   r   Úscipy.optimize.elementwiser   r   Úscipy.optimize._tstutilsr   Ú	itertoolsr   r'   rD   r”   rM   rQ   rU   rX   r]   re   rS  ry   rU  r$   r&   r"   Ú<module>r¯     s\  ðÛ Û Û Ý ç  ß 6Ð 6ß (Ð (÷?÷ ?÷9ñ 9÷ ?Ý 8å "òò:"!ñJ ,¨LÓ9Ð ò8òòò
(ò%ò"ð(8	ØˆˆR€Lð8	àˆˆR€Lð8	ð ˆˆR€Lð8	ð ˆˆR€Lð	8	ð
 ˆˆb€Mð8	ð ˆˆb€Mð8	ð ˆˆb€Mð8	ð ˆˆr€Nð8	ð ˆˆr€Nð8	ð ˆˆr€Nð8	ð ˆ�€Oð8	ð ˆˆQ€Kð8	ð ˆˆQ€Kð8	ð ˆˆQ€Kð8	ð ˆˆQ€Kð8	ð  ˆˆa€Lð!8	ð" ˆˆa€Lð#8	ð$ ˆˆa€Lð%8	ð& ˆˆr€Nð'8	ð( ˆˆr€Nð)8	ð* ˆˆr€Nð+8	ð, ˆ�€Oð-8	ð. ˆˆR€Lð/8	ð0 ˆˆR€Lð18	ð2 ˆˆR€Lð38	ð4 ˆˆR€Lð58	ð6 ˆˆb€Mð78	ð8 ˆˆb€Mð98	ð: ˆˆb€Mð;8	ð< ˆˆr€Nð=8	ð> ˆˆr€Nð?8	ð@ ˆˆr€NðA8	ðB ˆ�€OðC8	ðD ˆ�€NðE8	ðF ˆ�€OðG8	ðH ˆ�€OðI8	ðJ ˆ�€OðK8	ðL ˆ�€OðM8	ðN ˆ�€NðO8	ðP ˆ�€NðQ8	ðR ˆ�€NðS8	ðT ˆ�€OðU8	ðV ˆ�€OðW8	ðX ˆ�€OðY8	ðZ ˆ�€Nð[8	ð\ ˆ�€Nð]8	ð^ ˆ�€Nð_8	ð` ˆ�€Oða8	ðb ˆ�€Nðc8	ðd ˆ�€Nðe8	ðf ˆ�€Nðg8	ðh ˆ�€Nði8	ðj ˆ�€Nðk8	ðl ˆ�€Nðm8	ðn ˆ�€Nðo8	€ñv �<Ó ÷`3ð `3ó !ð`3ñF �9Ó÷`0ð `0ó ñ`0r&   