+
    LV-jC‡  ã                   ó  € ^ RI t ^ RIHt ^ RIt^ RIHtHtHt ^ RI	t	^ RI	H
t ^ RIHtHt ^ RIHtHtHt ^ RIHtHtHtHtHtHt ^ RIHt R	 tR
 t ! R R4      t ! R R4      t ! R R4      t  ! R R4      t!R t"R t#R# )é    N)Úproduct)Úassert_allcloseÚassert_equalÚassert_)Úraises)Ú
MapWrapperÚ_ScalarFunctionWrapper)Ú	csr_arrayÚ	csc_arrayÚ	lil_array)Ú_adjust_scheme_to_boundsÚapprox_derivativeÚcheck_derivativeÚgroup_columnsÚ_eps_for_methodÚ_compute_absolute_step)Úrosenc                  óÀ  € . RO. RO. RO. RO. RO. RO. RO.p \         P                  \        \        \        3 F�  pV! V 4      p\         P
                  ! ^4      p\         P                  ! . R	O4      p\        W#4      p\        WT4       . R
Op\         P                  ! . RO4      p\        W#4      p\        WT4       Kƒ  	  \        X4      p\        V4      p\        Wg4       R# )é   N)r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r   )r   r   é   r   r   r   )r   r   é   é   é   r   )r   r   r   r   r   r   )	ÚnpÚasarrayr
   r   r   ÚarangeÚarrayr   r   )Ú	structureÚ	transformÚAÚorderÚgroups_trueÚgroupsÚgroups_1Úgroups_2s           Ús/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/scipy/optimize/tests/test__numdiff.pyÚtest_group_columnsr'      s´   € âÚÚÚÚÚÚð€Iô —j‘j¤)¬Y¼	ÓBˆ	Ù�iÓ ˆÜ—	’	˜!“ˆÜ—h’hÒ1Ó2ˆÜ˜qÓ(ˆÜ�VÔ)â"ˆÜ—h’hÒ1Ó2ˆÜ˜qÓ(ˆÜ�VÖ)ñ Cô ˜QÓ€HÜ˜QÓ€HÜ�Ö$ó    c                  ó�  € \         P                  ! \         P                  4      P                  p R V R,          RV R,          RV R,          /pR Fu  p\	        \        \         P                  \         P                  V4      W,          4       \	        \        \         P                  \         P                  V4      W,          4       Kw  	  \         P                  ! \         P                  4      P                  p R V R,          RV R,          RV R,          /pR F®  p\	        \        \         P                  \         P                  V4      W,          4       \	        \        \         P                  \         P                  V4      W,          4       \	        \        \         P                  \         P                  V4      W,          4       K°  	  R# )ú2-pointç      à?ú3-pointÚcsNçUUUUUUÕ?©r*   r,   r-   )r   ÚfinfoÚfloat64Úepsr   r   Ú
complex128Úfloat32)ÚEPSÚrelative_stepÚmethods      r&   Útest_correct_fp_epsr8   .   s@  € ä
�(Š(”2—:‘:Ó
×
"Ñ
"€CØ  S¥Ø˜s S�zØ˜3 �8ð%€Mó /ˆÜÜœBŸJ™J¬¯
©
°FÓ;ØÕ!ô	#ô 	ÜœBŸM™M¬2¯=©=¸&ÓAØÕ!ö	
ñ	 /ô �(Š(”2—:‘:Ó
×
"Ñ
"€CØ  S¥Ø˜s S�zØ˜3 �8ð%€Mó /ˆÜÜœBŸJ™J¬¯
©
°FÓ;ØÕ!ô	
ô 	ÜœBŸJ™J¬¯
©
°FÓ;ØÕ!ô	
ô 	ÜœBŸJ™J¬¯
©
°FÓ;ØÕ!ö	
ó /r(   c                   ó2   a € ] tR t^Rt o R tR tR tRtV tR# )ÚTestAdjustSchemeToBoundsc                ó
  € \         P                  ! ^4      p\         P                  ! ^R4      p\         P                  ! V4      p\         P                  ! V4      pVP	                  \         P
                  ) 4       VP	                  \         P
                  4       \        W^RW44      w  rV\        WR4       \        \         P                  ! V4      4       \        W^RW44      w  rV\        WR4       \        \         P                  ! V4      4       \        W^RW44      w  rV\        WR4       \        \         P                  ! V( 4      4       \        W^RW44      w  rV\        WR4       \        \         P                  ! V( 4      4       R# )r   ç{®Gáz„?ú1-sidedú2-sidedN)
r   ÚzerosÚfullÚ
empty_likeÚfillÚinfr   r   r   Úall)ÚselfÚx0ÚhÚ	inf_lowerÚ	inf_upperÚ
h_adjustedÚ	one_sideds   &      r&   Útest_no_boundsÚ'TestAdjustSchemeToBounds.test_no_boundsS   s  € Ü�XŠX�a‹[ˆÜ�GŠG�A�tÓˆÜ—M’M "Ó%ˆ	Ü—M’M "Ó%ˆ	Ø�‰œŸ™�wÔØ�‰”r—v‘vÔä 8Ø�1�i ó!7Ñˆ
ä˜
Ô&Ü”—’�yÓ!Ô"ä 8Ø�1�i ó!7Ñˆ
ä˜
Ô&Ü”—’�yÓ!Ô"ä 8Ø�1�i ó!7Ñˆ
ä˜
Ô&Ü”—’˜	�zÓ"Ô#ä 8Ø�1�i ó!7Ñˆ
ä˜
Ô&Ü”—’˜	�zÓ"Ö#r(   c                óÌ  € \         P                  ! . RO4      p\         P                  ! ^4      ) p\         P                  ! ^4      p\         P                  ! . RO4      R,          p\        W^RW#4      w  rV\	        WT4       \        W^RW#4      w  rV\	        V\         P                  ! . RO4      R,          4       \        W^RW#4      w  rW\	        V\         P
                  ! V4      4       \        \         P                  ! V( 4      4       \        W^RW#4      w  rW\	        V\         P                  ! . RO4      R,          4       \        V\         P                  ! . RO4      4       R# )	ç        çš™™™™™¹?r=   r>   N)rO   g333333ë?g333333ë¿)r   r   éÿÿÿÿ)r   rQ   r   )FTT)	r   r   Úonesr   r   Úabsr   rD   r   )rE   rF   ÚlbÚubrG   rJ   Ú_rK   s   &       r&   Útest_with_boundÚ(TestAdjustSchemeToBounds.test_with_boundo   s  € Ü�XŠXÒ(Ó)ˆÜ�gŠg�a‹jˆ[ˆÜ�WŠW�Q‹ZˆÜ�HŠH’ZÓ  4Õ'ˆä0°¸¸9ÀbÓM‰ˆ
Ü˜
Ô&ä0°¸¸9ÀbÓM‰ˆ
Ü˜
¤B§H¢HªZÓ$8¸4Õ$?Ô@ä 8Ø�1�i ó!)Ñˆ
ä˜
¤B§F¢F¨1£IÔ.Ü”—’˜	�zÓ"Ô#ä 8Ø�1�i ó!)Ñˆ
ä˜
¤B§H¢HªZÓ$8¸4Õ$?Ô@Ü�Y¤§¢Ò)<Ó =Ö>r(   c                óÞ  € \         P                  ! R
R
.4      p\         P                  ! RR.4      p\         P                  ! RR .4      p\         P                  ! RR.4      p\        W4^RW4      w  rV\        V\         P                  ! RR.4      4       \        W4^RW4      w  rV\        V\         P                  ! RR
.4      4       \        W4^RW4      w  rW\        V\         P                  ! R R
.4      4       \	        V\         P                  ! RR.4      4       \        W4^RW4      w  rW\        V\         P                  ! RR.4      4       \	        V\         P                  ! RR.4      4       R	# )g¸…ëQ¸ž?gš™™™™™©?rO   r=   gš™™™™™™?r>   FTg¸…ëQ¸Ž?Ng¸…ëQ¸ž¿çš™™™™™¹¿g¸…ëQ¸®¿g¸…ëQ¸Ž¿)r   r   r   r   r   )rE   rT   rU   rF   rG   rJ   rV   rK   s   &       r&   Útest_tight_boundsÚ*TestAdjustSchemeToBounds.test_tight_bounds…   s$  € Ü�XŠX�u˜e�nÓ%ˆÜ�XŠX�t˜T�lÓ#ˆÜ�XŠX�s˜D�kÓ"ˆÜ�HŠH�d˜D�\Ó"ˆä0°¸¸9ÀbÓM‰ˆ
Ü˜
¤B§H¢H¨d°E¨]Ó$;Ô<ä0°¸¸9ÀbÓM‰ˆ
Ü˜
¤B§H¢H¨e°U¨^Ó$<Ô=ä 8Ø�1�i ó!)Ñˆ
ä˜
¤B§H¢H¨d°E¨]Ó$;Ô<Ü�Y¤§¢¨%°¨Ó 7Ô8ä 8Ø�1�i ó!)Ñˆ
ä˜
¤B§H¢H¨e°V¨_Ó$=Ô>Ü�Y¤§¢¨%°¨Ó 7Ö8r(   © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rL   rW   r[   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r&   r:   r:   R   s   ø‡ € ò$ò8?÷,9ð 9r(   r:   c                   ó<  a € ] tR t^œt o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR(R ltR)R ltR tR tR tR tR tR tR tR t]P4                  P7                  R4      R 4       tR tR tR tR t R t!R t"R t#R t$R  t%R! t&R" t'R# t(R$ t)R% t*R&t+V t,R'# )*ÚTestApproxDerivativesDensec                ó.   € \         P                  ! V4      # ©N©r   Úsinh©rE   Úxs   &&r&   Úfun_scalar_scalarÚ,TestApproxDerivativesDense.fun_scalar_scalar�   ó   € Ü�wŠw�q‹zÐr(   c                ó.   € \         P                  ! V4      # ri   ©r   Úcoshrl   s   &&r&   Újac_scalar_scalarÚ,TestApproxDerivativesDense.jac_scalar_scalar    rp   r(   c                ó¼   € \         P                  ! V^ ,          ^,          \         P                  ! V^ ,          4      \         P                  ! V^ ,          4      .4      # ©r   ©r   r   ÚtanÚexprl   s   &&r&   Úfun_scalar_vectorÚ,TestApproxDerivativesDense.fun_scalar_vector£   ó8   € Ü�xŠx˜˜1�˜q�¤"§&¢&¨¨1­£,´·²°q¸µt³Ð=Ó>Ð>r(   c                óê   € \         P                  ! ^V^ ,          ,          \         P                  ! V^ ,          4      R,          \         P                  ! V^ ,          4      .4      P	                  R^4      # ©r   éþÿÿÿrQ   ©r   r   Úcosrz   Úreshaperl   s   &&r&   Újac_scalar_vectorÚ,TestApproxDerivativesDense.jac_scalar_vector¦   óN   € Ü�xŠxØ��1•�X”r—v’v˜a �d“| rÕ)¬2¯6ª6°!°Aµ$«<Ð8ó:ß:A¹'À"Àa».ð	Ir(   c                óœ   € \         P                  ! V^ ,          V^,          ,          4      \         P                  ! V^ ,          4      ,          # rw   ©r   ÚsinÚlogrl   s   &&r&   Úfun_vector_scalarÚ,TestApproxDerivativesDense.fun_vector_scalarª   ó.   € Ü�vŠv�a˜•d˜Q˜q�T•kÓ"¤R§V¢V¨A¨a­D£\Õ1Ð1r(   c                ó’   € \         P                  ! V^,          \         P                  ! V4      \         P                  ! V4      .4      # ©r   rx   rl   s   &&r&   Úwrong_dimensions_funÚ/TestApproxDerivativesDense.wrong_dimensions_fun­   s,   € Ü�xŠx˜˜A�œrŸvšv a›y¬"¯&ª&°«)Ð4Ó5Ð5r(   c           	     ó  € \         P                  ! V^,          \         P                  ! V^ ,          V^,          ,          4      ,          \         P                  ! V^ ,          4      ,          \         P                  ! V^ ,          V^,          ,          4      V^ ,          ,          ,           V^ ,          \         P                  ! V^ ,          V^,          ,          4      ,          \         P                  ! V^ ,          4      ,          .4      # ©r   ©r   r   r‚   rŠ   r‰   rl   s   &&r&   Újac_vector_scalarÚ,TestApproxDerivativesDense.jac_vector_scalar°   ó¢   € Ü�xŠxØˆa�D”2—6’6˜!˜A�$  1¥�+Ó&Õ&¬¯ª°°!µ«Õ5Ü�FŠF�1�Q•4˜!˜A�$•;Ó ! A¥$Õ&õ'àˆa�D”2—6’6˜!˜A�$  1¥�+Ó&Õ&¬¯ª°°!µ«Õ5ð
ó ð 	r(   c                ó  € \         P                  ! V^ ,          \         P                  ! V^,          4      ,          V^,          \         P                  ! V^ ,          4      ,          V^ ,          ^,          V^,          R,          ,          .4      # ©r   ç      à¿©r   r   r‰   r‚   rl   s   &&r&   Úfun_vector_vectorÚ,TestApproxDerivativesDense.fun_vector_vector·   ó`   € Ü�xŠxØˆa�D”2—6’6˜!˜A�$“<ÕØˆa�D”2—6’6˜!˜A�$“<ÕØˆa�D�A�I˜˜!� �Õ$ð
ó ð 	r(   c                ó0  € V^*8X  g   Q h\         P                  ! V^ ,          \         P                  ! V^,          4      ,          V^,          \         P                  ! V^ ,          4      ,          V^ ,          ^,          V^,          R,          ,          .4      # )ú=Used to test passing custom arguments with check_derivative()rš   r›   ©rE   rm   Úargs   &&&r&   Úfun_vector_vector_with_argÚ5TestApproxDerivativesDense.fun_vector_vector_with_arg¾   sl   € à�bŒyÐˆyÜ�xŠxØˆa�D”2—6’6˜!˜A�$“<ÕØˆa�D”2—6’6˜!˜A�$“<ÕØˆa�D�A�I˜˜!� �Õ$ð
ó ð 	r(   c                óú  € \         P                  ! \         P                  ! V^,          4      V^ ,          \         P                  ! V^,          4      ,          .V^,          ) \         P                  ! V^ ,          4      ,          \         P                  ! V^ ,          4      .^V^ ,          ^,          ,          V^,          R,          ,          RV^ ,          ^,          ,          V^,          R,          ,          ..4      # ©r   rš   ç      ø¿r›   rl   s   &&r&   Újac_vector_vectorÚ,TestApproxDerivativesDense.jac_vector_vectorÇ   ó§   € Ü�xŠxÜ�VŠV�A�a•D‹\˜1˜Q�4¤"§&¢&¨¨1­£,Õ.Ð/Ø��dˆU”R—V’V˜A˜a�D“\Õ!¤2§6¢6¨!¨A­$£<Ð0Ø��1•˜•�]˜Q˜q�T T�\Õ)¨4°!°Aµ$¸!µ)Õ+;¸aÀ½dÀd½lÕ+JÐKð
ó ð 	r(   c                ó  € V^*8X  g   Q h\         P                  ! \         P                  ! V^,          4      V^ ,          \         P                  ! V^,          4      ,          .V^,          ) \         P                  ! V^ ,          4      ,          \         P                  ! V^ ,          4      .^V^ ,          ^,          ,          V^,          R,          ,          RV^ ,          ^,          ,          V^,          R,          ,          ..4      # )r    rš   r§   r›   r¡   s   &&&r&   Újac_vector_vector_with_argÚ5TestApproxDerivativesDense.jac_vector_vector_with_argÎ   s³   € à�bŒyÐˆyÜ�xŠxÜ�VŠV�A�a•D‹\˜1˜Q�4¤"§&¢&¨¨1­£,Õ.Ð/Ø��dˆU”R—V’V˜A˜a�D“\Õ!¤2§6¢6¨!¨A­$£<Ð0Ø��1•˜•�]˜Q˜q�T T�\Õ)¨4°!°Aµ$¸!µ)Õ+;¸aÀ½dÀd½lÕ+JÐKð
ó ð 	r(   c                ó¶   € \         P                  ! \         P                  ! W!^ ,          ,          4      \         P                  ! W1^,          ,          4      .4      # rw   ©r   r   rz   ©rE   rm   Úc0Úc1s   &&&&r&   Úfun_parametrizedÚ+TestApproxDerivativesDense.fun_parametrized×   s4   € Ü�xŠxœŸš  q¥T¥	Ó*¬B¯FªF°2¸!½µ9Ó,=Ð>Ó?Ð?r(   c           
     óÚ   € \         P                  ! V\         P                  ! W!^ ,          ,          4      ,          ^ .^ V\         P                  ! W1^,          ,          4      ,          ..4      # rw   r¯   r°   s   &&&&r&   Újac_parametrizedÚ+TestApproxDerivativesDense.jac_parametrizedÚ   sP   € Ü�xŠxØ”"—&’&˜ �d�Ó#Õ# QÐ'Ø�”R—V’V˜B 1¥�IÓ&Õ&Ð'ð
ó ð 	r(   c                ó\   € \         P                  ! V4      R 8:  d   V# \         P                  # )ç:Œ0âŽyE>©r   rS   Únanrl   s   &&r&   Úfun_with_nanÚ'TestApproxDerivativesDense.fun_with_nanà   s    € Ü—F’F˜1“I Ô%ˆqÐ1¬2¯6©6Ð1r(   c                ó\   € \         P                  ! V4      R 8:  d   R# \         P                  # )r¹   ç      ð?rº   rl   s   &&r&   Újac_with_nanÚ'TestApproxDerivativesDense.jac_with_nanã   s    € Ü—f’f˜Q“i 4Ô'ˆsÐ3¬R¯V©VÐ3r(   c                ó®   € \         P                  ! V^ ,          V^,          ,          \         P                  ! V^ ,          V^,          ,          4      .4      # rw   )r   r   r‚   rl   s   &&r&   Úfun_zero_jacobianÚ,TestApproxDerivativesDense.fun_zero_jacobianæ   s7   € Ü�xŠx˜˜1�  !¥�¤b§f¢f¨Q¨q­T°A°aµD­[Ó&9Ð:Ó;Ð;r(   c           
     ó6  € \         P                  ! V^,          V^ ,          .V^,          ) \         P                  ! V^ ,          V^,          ,          4      ,          V^ ,          ) \         P                  ! V^ ,          V^,          ,          4      ,          ..4      # r“   )r   r   r‰   rl   s   &&r&   Újac_zero_jacobianÚ,TestApproxDerivativesDense.jac_zero_jacobiané   so   € Ü�xŠxØˆq�T�1�Q•4ˆLØ��dˆU”R—V’V˜A˜a�D 1 Q¥4�KÓ(Õ(¨1¨Q­4¨%´"·&²&¸¸1½ÀÀ!Å½Ó2EÕ*EÐFð
ó ð 	r(   c                óv   € \         P                  ! V4      P                  4       p\        P                  ! V4      # ri   )r   r   ÚitemÚmathrz   )rE   rm   Úxps   && r&   Újac_non_numpyÚ(TestApproxDerivativesDense.jac_non_numpyï   s(   € ô �ZŠZ˜‹]×ÑÓ!ˆÜ�xŠx˜‹|Ðr(   c                ó  € R p\        V P                  VRR7      p\        V P                  V4      p\        V P                  VRR7      pV P                  V4      p\        W%RR7       \        W5RR7       \        WERR7       R# )	r¿   r*   ©r7   r-   ç�íµ ÷Æ°>©Úrtolç•Ö&è.>çê-�™—q=N©r   rn   rt   r   ©rE   rF   Ú
jac_diff_2Ú
jac_diff_3Ú
jac_diff_4Újac_trues   &     r&   Útest_scalar_scalarÚ-TestApproxDerivativesDense.test_scalar_scalarõ   su   € ØˆÜ& t×'=Ñ'=¸rØ.7ô9ˆ
ä& t×'=Ñ'=¸rÓBˆ
Ü& t×'=Ñ'=¸rØ.2ô4ˆ
à×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4Õ8Ü˜
°5×9r(   c                ó  € R p\        V P                  VRRR7      p\        V P                  VRR7      p\        V P                  VRRR7      pV P                  V4      p\        W%RR7       \        W5RR7       \        WER	R7       R
# )r¿   r*   çÛ"•“\ÿO>©r7   Úabs_step)rà   r-   rÐ   rÑ   rÓ   rÔ   NrÕ   rÖ   s   &     r&   Útest_scalar_scalar_abs_stepÚ6TestApproxDerivativesDense.test_scalar_scalar_abs_step  s€   € àˆÜ& t×'=Ñ'=¸rØ.7À'ôKˆ
ä& t×'=Ñ'=¸rØ07ô9ˆ
ä& t×'=Ñ'=¸rØ.2¸WôFˆ
à×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4Õ8Ü˜
°5×9r(   c           	     óž  € R p\        ^4      ;_uu_ 4       p\        V P                  VRVR7      pRRR4       \        V P                  V\        R7      p\        V P                  VRRR7      pV P	                  \
        P                  ! V4      4      p\        XVRR7       \        WFRR7       \        WVR	R7       R#   + '       g   i     L”; i)
r+   r*   ©r7   ÚworkersN)rå   r-   rÐ   rÑ   rÓ   rÔ   )r   r   r{   Úmapr„   r   Ú
atleast_1dr   )rE   rF   Úmapperr×   rØ   rÙ   rÚ   s   &      r&   Útest_scalar_vectorÚ-TestApproxDerivativesDense.test_scalar_vector  s¢   € ØˆÜ˜�]Œ]˜fÜ*¨4×+AÑ+AÀ2Ø2;ÀVôMˆJ÷ ô ' t×'=Ñ'=¸rÌ3ÔOˆ
Ü& t×'=Ñ'=¸rØ.2¸DôBˆ
à×)Ñ)¬"¯-ª-¸Ó*;Ó<ˆÜ˜
 H°4Õ8Ü˜
°4Õ8Ü˜
°5×9÷ �]ús   –B<Â<C	g      @c           
     ó  € . R
Op\        ^4      ;_uu_ 4       p\        \        VRVRR7      w  r4\        \        VVRR7      w  rVRRR4       \        \        VR^RR7      w  rx\        \        4      p	\        W‘RRR7      w  r«\	        VR,          V	P
                  4       ^ V	n        \        W‘RR	7      w  rÍ\	        VR,          V	P
                  4       ^ V	n        \        W‘RRR7      w  rï\	        VR,          V	P
                  4       \	        XR,          VR,          4       \	        XR,          VR,          4       \	        VR,          VR,          4       \	        XV
4       \	        XV4       \	        W~4       R#   + '       g   i     EL=; i)r+   r*   T)r7   rå   Úfull_output)rå   rì   Nr-   )r7   rì   Únfev)rì   )r+   g      ø?ç       @)r   r   r   r	   r   rí   )rE   rF   rè   Úmd2Úmdct2Úmd3Úmdct3Úmd4Úmdct4ÚsfrÚd2Údct2Úd3Údct3Úd4Údct4s   &               r&   Ú!test_workers_evaluations_and_nfevÚ<TestApproxDerivativesDense.test_workers_evaluations_and_nfev  s=  € ò ˆÜ˜�]Œ]˜fÜ*¬5°"Ø2;ÀVØ7;ô=‰JˆCô +¬5°"Ø39ÀtôM‰JˆC÷	 ô '¤u¨bØ.2¸AØ37ô9‰
ˆô %¤UÓ+ˆÜ$ S°YÈDÔQ‰ˆÜ�T˜&•\ 3§8¡8Ô,ØˆŒÜ$ S¸$Ô?‰ˆÜ�T˜&•\ 3§8¡8Ô,ØˆŒÜ$ S°TÀtÔL‰ˆÜ�T˜&•\ 3§8¡8Ô,ä�U˜6•] D¨¥LÔ1Ü�U˜6•] D¨¥LÔ1Ü�U˜6•] D¨¥LÔ1ä�S˜"ÔÜ�S˜"ÔÜ�SÖ÷9 �]ˆ]ús   ˜,E8Å8F		c                ó2  € \         P                  ! R R	.4      p\        V P                  VRR7      p\        V P                  V4      p\        V P                  VRR7      pV P	                  V4      p\        W%RR7       \        W5RR7       \        WERR7       R# )
ç      Y@r*   rÏ   r-   rÐ   rÑ   çH¯¼šò×z>rÔ   Nrš   )r   r   r   r‹   r•   r   rÖ   s   &     r&   Útest_vector_scalarÚ-TestApproxDerivativesDense.test_vector_scalar?  s‚   € Ü�XŠX�u˜d�mÓ$ˆÜ& t×'=Ñ'=¸rØ.7ô9ˆ
ä& t×'=Ñ'=¸rÓBˆ
Ü& t×'=Ñ'=¸rØ.2ô4ˆ
à×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4Õ8Ü˜
°5×9r(   c                óX  € \         P                  ! R R.4      p\        V P                  VRRR7      p\        V P                  VR\         P                  R7      p\        V P                  VRRR7      pV P                  V4      p\        W%RR7       \        W5RR7       \        WER	R7       R
# )rÿ   r*   rÞ   rß   )rà   Úrel_stepr-   rÐ   rÑ   çßA:ÜÅ)>rÔ   Nrš   )r   r   r   r‹   rC   r•   r   rÖ   s   &     r&   Útest_vector_scalar_abs_stepÚ6TestApproxDerivativesDense.test_vector_scalar_abs_stepK  s”   € ä�XŠX�u˜d�mÓ$ˆÜ& t×'=Ñ'=¸rØ.7À'ôKˆ
ä& t×'=Ñ'=¸rØ07Ä"Ç&Á&ôJˆ
ä& t×'=Ñ'=¸rØ.2¸WôFˆ
à×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4Õ8Ü˜
°5×9r(   c           	     ó”  € \         P                  ! RR.4      p\        V P                  VRR7      p\        V P                  V4      p\	        ^4      ;_uu_ 4       p\        V P                  VRVR7      pRRR4       V P                  V4      p\        W&RR7       \        W6R	R7       \        XVR
R7       R#   + '       g   i     LK; i)rÿ   çš™™™™™É?r*   rÏ   r-   rä   Nçñhãˆµøä>rÑ   rÐ   rÔ   ç      YÀ)r   r   r   rœ   r   r¨   r   )rE   rF   r×   rØ   rè   rÙ   rÚ   s   &      r&   Útest_vector_vectorÚ-TestApproxDerivativesDense.test_vector_vectorY  s¡   € Ü�XŠX�v˜s�mÓ$ˆÜ& t×'=Ñ'=¸rØ.7ô9ˆ
ä& t×'=Ñ'=¸rÓBˆ
Ü˜�]Œ]˜fÜ*¨4×+AÑ+AÀ2Ø26ÀôHˆJ÷ ð ×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4Õ8Ü˜
 H°5×9÷ �]ús   ÁB7Â7C	c                óÖ   € R p\        \        \        V P                  V4       V P                  \        P
                  ! V4      4      p\        \        \        V P                  WR7       R# )r¿   )Úf0N)Úassert_raisesÚRuntimeErrorr   r�   r   rç   Ú
ValueError)rE   rF   r  s   &  r&   Útest_wrong_dimensionsÚ0TestApproxDerivativesDense.test_wrong_dimensionsf  sP   € ØˆÜ”lÔ$5Ø×/Ñ/°ô	5à×&Ñ&¤r§}¢}°RÓ'8Ó9ˆÜ”jÔ"3Ø×/Ñ/°÷	<r(   c                óî   € \         P                  ! RR .4      p\        V P                  VRRR7      p\        V P                  VRR7      pV P	                  V4      p\        W$RR7       \        W4RR7       R# )	rP   r*   g-Cëâ6?)r7   r  )r  r<   rÑ   NrZ   )r   r   r   rœ   r¨   r   )rE   rF   r×   rØ   rÚ   s   &    r&   Útest_custom_rel_stepÚ/TestApproxDerivativesDense.test_custom_rel_stepn  si   € Ü�XŠX�t˜S�kÓ"ˆÜ& t×'=Ñ'=¸rØ.7À$ôHˆ
ä& t×'=Ñ'=¸rØ04ô6ˆ
à×)Ñ)¨"Ó-ˆÜ˜
°4Õ8Ü˜
°4×8r(   c                ó�  € \         P                  ! R R .4      pRpR pRpRpV P                  WVR7      p\         P                  ! RR.4      pV P                  WV4      p\	        V P                  VRVWb3\        VR7      WE3R7      p	\	        V P                  WWb3\        VR7      WE3R7      p
\        W˜RR	7       \        W¨R
R	7       R# )r¿   rO   rî   )r²   rÐ   r   r*   )r7   r  r  ÚargsÚkwargsÚbounds)r  r  r  r  r  rÑ   rÓ   Nç      ð¿g�íµ ÷Æ°¾)r   r   r³   r¶   r   Údictr   )rE   rF   r±   r²   rT   rU   r  r  rÚ   r×   rØ   s   &          r&   Útest_optionsÚ'TestApproxDerivativesDense.test_optionsx  sÇ   € Ü�XŠX�s˜C�jÓ!ˆØˆØˆØˆØˆØ×"Ñ" 2¨bÐ"Ó1ˆÜ—8’8˜U D˜MÓ*ˆØ×(Ñ(¨°Ó4ˆÜ&Ø×!Ñ! 2¨iÀ(Ø˜¤d¨b¤k¸2¸(ôDˆ
ô 'Ø×!Ñ! 2Ø˜¤d¨b¤k¸2¸(ôDˆ
ô 	˜
°4Õ8Ü˜
°4×8r(   c                óv  € \         P                  ! ^4      ) p\         P                  ! ^4      p\         P                  ! R	R.4      p\        \        \
        V P                  W1V3R7       \         P                  ! R
R.4      p\        V P                  VRW3R7      pV P                  V4      p\        WERR7       R# )r   r	  ©r  r¿   r*   ©r7   r  rÐ   rÑ   Ng       Àr  )	r   rR   r   r  r  r   rœ   r¨   r   )rE   rT   rU   rF   Újac_diffrÚ   s   &     r&   Útest_with_bounds_2_pointÚ3TestApproxDerivativesDense.test_with_bounds_2_pointŠ  s—   € Ü�gŠg�a‹jˆ[ˆÜ�WŠW�Q‹Zˆä�XŠX�t˜S�kÓ"ˆÜ”jÔ"3Ø×,Ñ,¨b¸b¸õ	Cô �XŠX�t˜S�kÓ"ˆÜ$ T×%;Ñ%;¸RØ,5¸r¸hôHˆà×)Ñ)¨"Ó-ˆÜ˜°×6r(   c                ó   € \         P                  ! R R .4      p\         P                  ! RR.4      p\         P                  ! R R.4      pV P                  V4      p\        V P                  V4      p\        WTRR7       \        V P                  VV\         P                  3R7      p\        WTRR7       \        V P                  V\         P                  ) V3R7      p\        WTRR7       \        V P                  VW3R7      p\        WTRR7       R# )r¿   rî   rÓ   rÑ   r!  N)r   r   r¨   r   rœ   r   rC   )rE   rT   rU   rF   rÚ   r#  s   &     r&   Útest_with_bounds_3_pointÚ3TestApproxDerivativesDense.test_with_bounds_3_point˜  sÛ   € Ü�XŠX�s˜C�jÓ!ˆÜ�XŠX�s˜C�jÓ!ˆä�XŠX�s˜C�jÓ!ˆØ×)Ñ)¨"Ó-ˆä$ T×%;Ñ%;¸RÓ@ˆÜ˜°Õ6ä$ T×%;Ñ%;¸RØ-/´·±¨Lô:ˆä˜°Õ6ä$ T×%;Ñ%;¸RÜ.0¯f©f¨W°b¨Mô;ˆä˜°Õ6ä$ T×%;Ñ%;¸RØ-/¨Hô6ˆä˜°×6r(   c                ó´  € \         P                  ! R R .4      pVR,
          pVR,           pV P                  V4      p\        V P                  VRW#3R7      p\        WTRR7       \        V P                  VRRW#3R7      p\        WTRR7       \        V P                  WV3R7      p\        WTRR7       \        V P                  VRW#3R	7      p\        WERR7       R
# )ç      $@r  g•Ö&è.!>r*   r"  rÐ   rÑ   ©r7   r  r  r!  ©r  r  N)r   r   r¨   r   rœ   r   )rE   rF   rT   rU   rÚ   r#  s   &     r&   r[   Ú,TestApproxDerivativesDense.test_tight_bounds®  sÏ   € Ü�XŠX�t˜T�lÓ#ˆØ�$�YˆØ�$�YˆØ×)Ñ)¨"Ó-ˆÜ$Ø×"Ñ" B¨yÀ"ÀôKˆä˜°Õ6Ü$Ø×"Ñ" B¨yØ 2 (ô,ˆô 	˜°Õ6ä$Ø×"Ñ" B°B¨xô9ˆä˜°Õ6Ü$Ø×"Ñ" B°¸r¸hôHˆä˜°×6r(   c                ó–  € R	pR pRpV P                  V4      p\        V P                  VRRW3R7      p\        V P                  VRW3R7      p\        WTRR7       \        WdRR7       R pV P                  V4      p\        V P                  VRRW3R7      p\        V P                  VRW3R7      p\        WTRR7       \        WdRR7       R# )
r¹   rO   r*   rÐ   r+  r,  rÑ   rÓ   Nç:Œ0âŽyE¾)rÀ   r   r¼   r   )rE   rT   rU   rF   rÚ   r×   rØ   s   &      r&   Útest_bound_switchesÚ.TestApproxDerivativesDense.test_bound_switchesÂ  sÖ   € ØˆØˆØˆØ×$Ñ$ RÓ(ˆÜ&Ø×Ñ˜r¨)¸dØ�8ôˆ
ô 'Ø×Ñ˜r¨D¸"¸ôCˆ
ä˜
°4Õ8Ü˜
°4Õ8àˆØ×$Ñ$ RÓ(ˆÜ&Ø×Ñ˜r¨)¸dØ�8ôˆ
ô 'Ø×Ñ˜r¨D¸"¸ôCˆ
ä˜
°4Õ8Ü˜
°4×8r(   c                ó  € R pV P                  V4      p\        V P                   VRR7      p\        V P                   V4      p\        W2RR7       \        WBRR7       \        \        \        V P                   V3/ \        RR7      B  R# )r¿   r*   rÏ   rÐ   rÑ   r¹   r-   N)rÌ   r   r   r  Ú	TypeErrorr  )rE   rF   rÚ   r×   rØ   s   &    r&   Útest_non_numpyÚ)TestApproxDerivativesDense.test_non_numpyÙ  sz   € ØˆØ×%Ñ% bÓ)ˆÜ& t×'9Ñ'9¸2Ø.7ô9ˆ
ä& t×'9Ñ'9¸2Ó>ˆ
Ü˜
°4Õ8Ü˜
°4Õ8ô 	”iÔ!2°D×4FÑ4FÈñ 	+Ü DÔ)ô	+r(   c                ó*  aaaa€ \         P                  P                  ^4      pR oV3R lo\         P                  ! ^ ^^d\         P                  R7      oVP                  ^d\         P                  R7      o\         P
                  ! RR.4      p\        SVRSS3R7      p\        SVP                  \         P                  4      RSS3R7      pS! VSS4      P                  \         P                  8X  g   Q h\        WCRR	7       VVV3R
 lp\        WRP                  \         P                  4      RR7      p\        WCRR	7       R pR pR pR p	\         P                  \         P                  \         P                  3 F’  p
\         P                  ! V
4      P                  p\         P
                  ! R4      P                  V
4      p\        RWÆ! V4      R4      pV	! WÜWhV4      p\        WlRVR7      V! V4      ,
          o\        S4      V8  d   K’  Q h	  R# )r   c                 ó>   € V ^ ,          V ^,          V,          ,           # rw   r]   )Úprm   s   &&r&   ÚfuncÚ0TestApproxDerivativesDense.test_fp.<locals>.funcë  s   € Ø�Q•4˜!˜A�$ �(•?Ð"r(   c                 ó"   <€ S! W4      V,
          # ri   r]   )r8  rm   Úyr9  s   &&&€r&   ÚerrÚ/TestApproxDerivativesDense.test_fp.<locals>.errî  s   ø€ Ù˜“: •>Ð!r(   ©Údtype)Úsizer@  r¿   r*   )r7   r  gü©ñÒMbP?)Úatolc                 ó”   <€ V P                   \        P                  8X  g   Q hS! V SS4      P                  \        P                  4      # ri   )r@  r   r4   Úastype)r8  r=  rm   r<  s   &€€€r&   Úerr_fp32Ú4TestApproxDerivativesDense.test_fp.<locals>.err_fp32þ  s6   ø€ Ø—7‘7œbŸj™jÔ(Ð(Ð(Ù�q˜!˜Q“<×&Ñ&¤r§z¡zÓ2Ð2r(   rÏ   c                 ó.   € \         P                  ! V 4      # ri   ©r   r‰   ©rm   s   &r&   ÚfÚ-TestApproxDerivativesDense.test_fp.<locals>.f  ó   € Ü—6’6˜!“9Ðr(   c                 ó.   € \         P                  ! V 4      # ri   )r   r‚   rI  s   &r&   ÚgÚ-TestApproxDerivativesDense.test_fp.<locals>.g	  rL  r(   c                 ó0   € \         P                  ! V 4      ) # ri   rH  rI  s   &r&   ÚhessÚ0TestApproxDerivativesDense.test_fp.<locals>.hess  s   € Ü—F’F˜1“I�:Ðr(   c           
      ó`  € V ^,          \        \        P                  ! V! V4      4      \        P                  ! V! W,           4      4      4      ,          pW@,          \        \        P                  ! V! V4      4      \        P                  ! V! W,           4      4      4      ,          pWV,           # r�   )Úmaxr   rS   )rG   rF   rJ  rQ  r5   Út0Út1s   &&&&&  r&   Ú	calc_atolÚ5TestApproxDerivativesDense.test_fp.<locals>.calc_atol  sj   € à�Q•œœRŸVšV¡D¨£HÓ-¬r¯vªv±d¸2½6³lÓ/CÓDÕDˆBð •œ3œrŸvšv¡a¨£e›}¬b¯fªf±Q°rµv³YÓ.?Ó@Õ@ˆBØ•7ˆNr(   Nrß   r  )r   ÚrandomÚdefault_rngÚlinspacer1   r   r   rD  r4   r@  r   Úfloat16r0   r2   r   rS   )rE   ÚrngÚp0Újac_fp64Újac_fprE  rJ  rN  rQ  rW  r@  r5   rF   rG   rB  r=  r9  rm   r<  s   &              @@@@r&   Útest_fpÚ"TestApproxDerivativesDense.test_fpæ  s¤  û€ ô �i‰i×#Ñ# AÓ&ˆò	#õ	"ô �KŠK˜˜1˜c¬¯©Ô4ˆØ�J‰J˜C¤r§z¡zˆJÓ2ˆÜ�XŠX�t˜T�lÓ#ˆä$ S¨"°YÀaÈÀVÔLˆô # 3¨¯	©	´"·*±*Ó(=Ø*3¸1¸a¸&ôBˆá�2�q˜!‹}×"Ñ"¤b§j¡jÔ0Ð0Ð0Ü˜¨tÕ4÷	3ô # 8¯Y©Y´r·z±zÓ-BØ*3ô5ˆä˜¨tÕ4ò	ò	ò	ò	ô —j‘j¤"§*¡*¬b¯j©jÓ9ˆEÜ—(’(˜5“/×%Ñ%ˆCÜ—’˜#“×%Ñ% eÓ,ˆBÜ& t¨R°°2³¸	ÓBˆAÙ˜Q A¨SÓ1ˆDÜ# A°)Ø-.ô0Ù23°B³%õ8ˆCä�s“8˜d–?Ð"�?ó :r(   c                óÞ  € \         P                  ! R^
.4      p\        V P                  V P                  V4      p\        VR8  4       \        V P                  V P                  V4      p\        VR8  4       \         P                  ! RR.4      p\        V P                  V P                  V4      p\        V^ 8H  4       \        V P                  V P                  V4      p\        V^ 8H  4       R# )r*  rÓ   rÐ   rO   Nç      $À)r   r   r   rœ   r¨   r   rÃ   rÆ   ©rE   rF   Úaccuracys   &  r&   Útest_check_derivativeÚ0TestApproxDerivativesDense.test_check_derivative   sÎ   € Ü�XŠX�u˜b�kÓ"ˆÜ# D×$:Ñ$:Ø$(×$:Ñ$:¸Bó@ˆä�˜4‘Ô Ü# D×$:Ñ$:Ø$(×$:Ñ$:¸Bó@ˆä�˜4‘Ô ä�XŠX�s˜C�jÓ!ˆÜ# D×$:Ñ$:Ø$(×$:Ñ$:¸Bó@ˆä�˜A‘ÔÜ# D×$:Ñ$:Ø$(×$:Ñ$:¸Bó@ˆä�˜A‘Ör(   c                óœ   € \         P                  ! R^
.4      p\        V P                  V P                  VR^*/R7      p\        VR8  4       R# )r*  r¢   )r  rÓ   Nrd  )r   r   r   r£   r¬   r   re  s   &  r&   Ú!test_check_derivative_with_kwargsÚ<TestApproxDerivativesDense.test_check_derivative_with_kwargs1  sG   € Ü�XŠX�u˜b�kÓ"ˆÜ# D×$CÑ$CØ$(×$CÑ$CØ$&Ø,1°2¨;ô8ˆô 	�˜4‘Ö r(   r]   N)r¿   )rP   )-r^   r_   r`   ra   rn   rt   r{   r„   r‹   r�   r•   rœ   r£   r¨   r¬   r³   r¶   r¼   rÀ   rÃ   rÆ   rÌ   rÛ   rá   ré   ÚpytestÚmarkÚ	fail_slowrü   r  r  r  r  r  r  r$  r'  r[   r0  r4  ra  rg  rj  rb   rc   rd   s   @r&   rg   rg   œ   sà   ø‡ € òòò?òIò2ò6òòòòòô@ôò2ò4ò<òòò
:ò:ò:ð ‡[�[×Ñ˜3Óñ ó  ð òD
:ò:ò:ò<ò9ò9ò$7ò7ò,7ò(9ò.+ò8#òt÷"!ð !r(   rg   c                   óŒ   a € ] tR tRt o R tR tR tR t]P                  P                  ^4      R 4       tR tR tR	 tR
tV tR# )ÚTestApproxDerivativeSparsei:  c                óN  € \         P                  P                  R 4      V n        ^2V n        R^\         P
                  ! V P                  4      ,           ,          V n        R^\         P
                  ! V P                  4      ,           ,          V n        \         P                  ! V P                  4      V n	        RV P                  R,          ,          V P                  R&   RV P                  R,          ,          V P                  R&   V P                  V P                  4      V n        R# )i‚´7rP   ºNNr   :r   Nr   NrZ   gËPÊÿÿï?)r   rY  rZ  r]  Únr   rT   rU   ÚemptyrF   ÚjacÚJ_true)rE   s   &r&   Úsetup_methodÚ'TestApproxDerivativeSparse.setup_method<  s·   € Ü—9‘9×(Ñ(¨Ó3ˆŒØˆŒØ˜!œbŸiši¨¯©Ó/Õ/Õ0ˆŒØ˜œRŸYšY t§v¡vÓ.Õ.Õ/ˆŒÜ—(’(˜4Ÿ6™6Ó"ˆŒØ  D§G¡G¨C¥LÕ0ˆ�‰�‰Ø! T§W¡W¨T¥]Õ2ˆ�‰�‰à—h‘h˜tŸw™wÓ'ˆŽr(   c                óÊ   € VR ,          ^,          VRR ^,          ,
          p\         P                  ! ^ ^V,          34      \         P                  ! ^V,          ^ 34      ,           # ):r   NNNrQ   )r   Úhstack)rE   rm   Úes   && r&   ÚfunÚTestApproxDerivativeSparse.funG  sK   € Øˆb�E�1�H�q˜˜"�v˜q•yÕ ˆÜ�yŠy˜!˜Q �U˜Ó$¤r§y¢y°!°aµ%¸°Ó'<Õ<Ð<r(   c                ó"  € VP                   p\        P                  ! W"34      pRV^ ,          ,          VR&   ^V^,          ^,          ,          VR&   \        ^V^,
          4       Fz  pRW^,
          ,          ,          W4V^,
          3&   ^	W,          ^,          ,          ^W,          ,          ,
          W4V3&   ^W^,           ,          ^,          ,          W4V^,           3&   K|  	  ^	VR,          ^,          ,          VR&   RVR,          ,          VR&   V# )	r   éüÿÿÿ©r   r   ©r   r   iúÿÿÿrQ   ©rQ   rQ   r€   ©rQ   r€   )rA  r   r?   Úrange)rE   rm   rs  ÚJÚis   &&   r&   ru  ÚTestApproxDerivativeSparse.jacK  sØ   € Ø�F‰FˆÜ�HŠH�a�VÓˆØ�q˜•t•)ˆˆ$‰Ø�a˜•d˜A•g•+ˆˆ$‰Ü�q˜!˜a�%–ˆAØ˜q 1¥�v�+ˆA��Q•ˆh‰KØ˜!�$ �'•k A¨­¥HÕ,ˆA�ˆd‰GØ˜a !¥�f a�i�-ˆA��Q•ˆh‹Kñ !ð ˜˜"�˜q�•Lˆˆ&‰	Ø˜˜2�•Jˆˆ&‰	àˆr(   c                óÈ   € \         P                  ! W3\        R 7      p^VR&   ^VR&   \        ^V^,
          4       F  p^W#V^,
          V^,           13&   K  	  ^VR&   ^VR&   V# )r?  r€  r�  r‚  rƒ  )r   r?   Úintr„  )rE   rs  r    r†  s   &&  r&   r   Ú$TestApproxDerivativeSparse.structureY  si   € Ü�HŠH�a�V¤3Ô'ˆØˆˆ$‰Øˆˆ$‰Ü�q˜!˜a�%–ˆAØ!"ˆA��Q•˜˜A��ˆoÓñ !àˆˆ&‰	Øˆˆ&‰	àˆr(   c                ó¾  € V P                  V P                  4      p\        P                  ! V P                  4      p\	        W4      pV P
                  P                  V4       \	        W4      p\        ^4      ;_uu_ 4       p\        . R	OW4.\        P                  ) V P                  .\        P                  V P                  .\        V.4       Fï  w  rgr‰p
\        V P                  V P                  VW‰3W3V
R7      p\!        \#        V\$        4      4       \'        VP)                  4       V P*                  RR7       \        P,                  ! V P                  R4      pVR;;,          R
,          uu&   \        V P                  V P                  VWÁV3V
R7      p\'        VP)                  4       V P*                  RR7       Kñ  	  RRR4       R#   + '       g   i     R# ; i)r   )r7   r  Úsparsityrå   rÐ   rÑ   r¹   rr  )r7   r  rŒ  rå   r
  Nr/   rQ   )r   rs  r   r   r   r]  Úshuffler   r   rC   rT   rU   ræ   r   r|  rF   r   Ú
isinstancer
   r   Útoarrayrv  Ú	full_like)rE   r    r!   r$   r%   rè   r7   r#   ÚlÚuÚmfr…  r  s   &            r&   Útest_allÚ#TestApproxDerivativeSparse.test_alld  sS  € à�N‰N˜4Ÿ6™6Ó"ˆÜ—	’	˜$Ÿ&™&Ó!ˆÜ  Ó*ˆØ�‰×Ñ˜ÔÜ  Ó*ˆä˜�]Œ]˜fÜ,3Ú0°8Ð2FÜ—f‘f�W˜dŸg™gÐ&¬¯©°·±Ð(9¼CÀ¸=ö-JÑ(�  bô & d§h¡h°·±ÀØ./¨V¸q¸kØ.0ô2�ô œ
 1¤iÓ0Ô1Ü §	¡	£¨T¯[©[¸tÕDäŸ<š<¨¯©°Ó6�Ø˜— Õ#“Ü% d§h¡h°·±ÀØ/7ÀfÀ+Ø.0ô2�ô   §	¡	£¨T¯[©[¸t×Dñ-J÷ �]�]Š]ús   Â EGÇG	c                óÌ   € V P                  V P                  4      p\        V P                  V P                  VR 7      p\        VP                  4       V P                  RR7       R# ))rŒ  rÐ   rÑ   N)r   rs  r   r|  rF   r   r�  rv  )rE   r    r…  s   &  r&   Útest_no_precomputed_groupsÚ5TestApproxDerivativeSparse.test_no_precomputed_groups}  s@   € Ø�N‰N˜4Ÿ6™6Ó"ˆÜ˜dŸh™h¨¯©¸!Ô<ˆÜ˜Ÿ	™	› T§[¡[°t×<r(   c                ó€  € \         P                  ! V P                  V P                  3\        R 7      p\         P                  ! V P                  4      pR Fe  p\        V P                  V P                  VR7      p\        V P                  V P                  W3VR7      p\        WEP                  4       RRR7       Kg  	  R# )r?  rÏ   )rŒ  r7   gVçž¯Â<g¦ÖVs†ÿ<)rÒ   rB  Nr/   )
r   rR   rs  r‰  r   r   r|  rF   r   r�  )rE   r   r#   r7   ÚJ_denseÚJ_sparses   &     r&   Útest_equivalenceÚ+TestApproxDerivativeSparse.test_equivalence‚  sˆ   € Ü—G’G˜TŸV™V T§V¡VÐ,´CÔ8ˆ	Ü—’˜4Ÿ6™6Ó"ˆÛ2ˆFÜ'¨¯©°$·'±'À&ÔIˆGÜ(Ø—‘˜$Ÿ'™'¨YÐ,?ÈôPˆHä˜G×%5Ñ%5Ó%7Ø!&¨U÷4ó	 3r(   c                ó0  a € V 3R  lp\        S P                  VS P                  S P                  S P                  3R7      p\        VR8  4       \        S P                  VS P                  S P                  S P                  3R7      p\        VR8  4       R# )c                 ó8   <€ \        SP                  V 4      4      # ri   )r
   ru  )rm   rE   s   &€r&   ru  Ú=TestApproxDerivativeSparse.test_check_derivative.<locals>.jac�  s   ø€ Ü˜TŸX™X a›[Ó)Ð)r(   r!  rÓ   N)r   r|  rF   rT   rU   r   )rE   ru  rf  s   f  r&   rg  Ú0TestApproxDerivativeSparse.test_check_derivativeŒ  sr   ø€ õ	*ô $ D§H¡H¨c°4·7±7Ø,0¯G©G°T·W±WÐ+=ô?ˆä�˜4‘Ô ä# D§H¡H¨c°4·7±7Ø,0¯G©G°T·W±WÐ+=ô?ˆä�˜4‘Ö r(   )rv  rT   rs  r]  rU   rF   N)r^   r_   r`   ra   rw  r|  ru  r   rl  rm  rn  r”  r—  rœ  rg  rb   rc   rd   s   @r&   rp  rp  :  sR   ø‡ € ò	(ò=òò	ð ‡[�[×Ñ˜1ÓñEó ðEò0=ò
4÷
!ð 
!r(   rp  c                   ón   a € ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tRtV tR# )Ú"TestApproxDerivativeLinearOperatori™  c                ó.   € \         P                  ! V4      # ri   rj   rl   s   &&r&   rn   Ú4TestApproxDerivativeLinearOperator.fun_scalar_scalar›  rp   r(   c                ó.   € \         P                  ! V4      # ri   rr   rl   s   &&r&   rt   Ú4TestApproxDerivativeLinearOperator.jac_scalar_scalarž  rp   r(   c                ó¼   € \         P                  ! V^ ,          ^,          \         P                  ! V^ ,          4      \         P                  ! V^ ,          4      .4      # rw   rx   rl   s   &&r&   r{   Ú4TestApproxDerivativeLinearOperator.fun_scalar_vector¡  r}   r(   c                óê   € \         P                  ! ^V^ ,          ,          \         P                  ! V^ ,          4      R,          \         P                  ! V^ ,          4      .4      P	                  R^4      # r   r�   rl   s   &&r&   r„   Ú4TestApproxDerivativeLinearOperator.jac_scalar_vector¤  r†   r(   c                óœ   € \         P                  ! V^ ,          V^,          ,          4      \         P                  ! V^ ,          4      ,          # rw   rˆ   rl   s   &&r&   r‹   Ú4TestApproxDerivativeLinearOperator.fun_vector_scalar¨  r�   r(   c           	     ó  € \         P                  ! V^,          \         P                  ! V^ ,          V^,          ,          4      ,          \         P                  ! V^ ,          4      ,          \         P                  ! V^ ,          V^,          ,          4      V^ ,          ,          ,           V^ ,          \         P                  ! V^ ,          V^,          ,          4      ,          \         P                  ! V^ ,          4      ,          .4      # r“   r”   rl   s   &&r&   r•   Ú4TestApproxDerivativeLinearOperator.jac_vector_scalar«  r—   r(   c                ó  € \         P                  ! V^ ,          \         P                  ! V^,          4      ,          V^,          \         P                  ! V^ ,          4      ,          V^ ,          ^,          V^,          R,          ,          .4      # r™   r›   rl   s   &&r&   rœ   Ú4TestApproxDerivativeLinearOperator.fun_vector_vector²  rž   r(   c                óú  € \         P                  ! \         P                  ! V^,          4      V^ ,          \         P                  ! V^,          4      ,          .V^,          ) \         P                  ! V^ ,          4      ,          \         P                  ! V^ ,          4      .^V^ ,          ^,          ,          V^,          R,          ,          RV^ ,          ^,          ,          V^,          R,          ,          ..4      # r¦   r›   rl   s   &&r&   r¨   Ú4TestApproxDerivativeLinearOperator.jac_vector_vector¹  rª   r(   c                ó  € R p\        V P                  VRRR7      p\        V P                  VRR7      p\        V P                  VRRR7      pV P                  V4      p\        P                  P                  R4      p\        ^
4       F€  pVP                  R^
RR7      p\        VP                  V4      WX,          RR	7       \        VP                  V4      WX,          R
R	7       \        VP                  V4      WX,          R
R	7       K‚  	  R# )r¿   r*   T©r7   Úas_linear_operator©r¶  r-   ì   nÊV)©rA  r
  rÑ   çñhãˆµøÔ>Néöÿÿÿr“   )
r   rn   rt   r   rY  rZ  r„  Úuniformr   Údot©	rE   rF   r×   rØ   rÙ   rÚ   r]  r†  r8  s	   &        r&   rÛ   Ú5TestApproxDerivativeLinearOperator.test_scalar_scalarÀ  sí   € ØˆÜ& t×'=Ñ'=¸rØ.7Ø:>ô@ˆ
ô ' t×'=Ñ'=¸rØ:>ô@ˆ
ä& t×'=Ñ'=¸rØ.2Ø:>ô@ˆ
ð ×)Ñ)¨"Ó-ˆÜ�i‰i×#Ñ# NÓ3ˆÜ�r–ˆAØ—‘˜C ¨$�Ó/ˆAÜ˜JŸN™N¨1Ó-¨x­zØ!%õ'ä˜JŸN™N¨1Ó-¨x­zØ!%õ'ä˜JŸN™N¨1Ó-¨x­zØ!%÷'ó r(   c                óz  € R p\        V P                  VRRR7      p\        V P                  VRR7      p\        V P                  VRRR7      pV P                  \        P                  ! V4      4      p\        P
                  P                  R4      p\        ^
4       F›  pVP                  R^
RR7      p\        VP                  V4      VP                  V4      RR	7       \        VP                  V4      VP                  V4      R
R	7       \        VP                  V4      VP                  V4      R
R	7       K�  	  R# )r+   r*   Trµ  r·  r-   r¸  r¹  r
  rÑ   rº  Nr»  r“   )r   r{   r„   r   rç   rY  rZ  r„  r¼  r   r½  r¾  s	   &        r&   ré   Ú5TestApproxDerivativeLinearOperator.test_scalar_vectorÕ  s  € ØˆÜ& t×'=Ñ'=¸rØ.7Ø:>ô@ˆ
ô ' t×'=Ñ'=¸rØ:>ô@ˆ
ä& t×'=Ñ'=¸rØ.2Ø:>ô@ˆ
ð ×)Ñ)¬"¯-ª-¸Ó*;Ó<ˆÜ�i‰i×#Ñ# NÓ3ˆÜ�r–ˆAØ—‘˜C ¨$�Ó/ˆAÜ˜JŸN™N¨1Ó-¨x¯|©|¸A«Ø!%õ'ä˜JŸN™N¨1Ó-¨x¯|©|¸A«Ø!%õ'ä˜JŸN™N¨1Ó-¨x¯|©|¸A«Ø!%÷'ó r(   c           	     ó
  € \         P                  ! R R.4      p\        V P                  VRRR7      p\        V P                  VRR7      p\        V P                  VRRR7      pV P	                  V4      p\         P
                  P                  R4      p\        ^
4       Fá  pVP                  R^
VP                  R7      p\        VP                  V4      \         P                  ! VP                  V4      4      RR	7       \        VP                  V4      \         P                  ! VP                  V4      4      R
R	7       \        VP                  V4      \         P                  ! VP                  V4      4      RR	7       Kã  	  R# )rÿ   r*   Trµ  r·  r-   r¸  r¹  r
  rÑ   rº  r   Nrš   r»  )r   r   r   r‹   r•   rY  rZ  r„  r¼  Úshaper   r½  rç   r¾  s	   &        r&   r  Ú5TestApproxDerivativeLinearOperator.test_vector_scalarê  s+  € Ü�XŠX�u˜d�mÓ$ˆÜ& t×'=Ñ'=¸rØ.7Ø:>ô@ˆ
ô ' t×'=Ñ'=¸rØ:>ô@ˆ
ä& t×'=Ñ'=¸rØ.2Ø:>ô@ˆ
ð ×)Ñ)¨"Ó-ˆÜ�i‰i×#Ñ# NÓ3ˆÜ�r–ˆAØ—‘˜C ¨"¯(©(�Ó3ˆAÜ˜JŸN™N¨1Ó-¬r¯}ª}¸X¿\¹\È!»_Ó/MØ!%õ'ä˜JŸN™N¨1Ó-¬r¯}ª}¸X¿\¹\È!»_Ó/MØ!%õ'ä˜JŸN™N¨1Ó-¬r¯}ª}¸X¿\¹\È!»_Ó/MØ!%÷'ó r(   c                ó’  € \         P                  ! RR.4      p\        V P                  VRRR7      p\        V P                  VRR7      p\        V P                  VRRR7      pV P	                  V4      p\         P
                  P                  R4      p\        ^
4       F¥  pVP                  R^
VP                  R7      p\        VP                  V4      VP                  V4      R	R
7       \        VP                  V4      VP                  V4      RR
7       \        VP                  V4      VP                  V4      RR
7       K§  	  R# )rÿ   r	  r*   Trµ  r·  r-   r¸  r¹  r
  rÑ   rÐ   r   Nr  r»  )r   r   r   rœ   r¨   rY  rZ  r„  r¼  rÃ  r   r½  r¾  s	   &        r&   r  Ú5TestApproxDerivativeLinearOperator.test_vector_vectorÿ  s  € Ü�XŠX�v˜s�mÓ$ˆÜ& t×'=Ñ'=¸rØ.7Ø:>ô@ˆ
ô ' t×'=Ñ'=¸rØ:>ô@ˆ
ä& t×'=Ñ'=¸rØ.2Ø:>ô@ˆ
ð ×)Ñ)¨"Ó-ˆÜ�i‰i×#Ñ# NÓ3ˆÜ�r–ˆAØ—‘˜C ¨"¯(©(�Ó3ˆAÜ˜JŸN™N¨1Ó-¨x¯|©|¸A«ÀTÕJÜ˜JŸN™N¨1Ó-¨x¯|©|¸A«ÀTÕJÜ˜JŸN™N¨1Ó-¨x¯|©|¸A«ÀT×Jó	 r(   c           	     óœ   € \         P                  ! RR.4      p\        \        \        V P
                  VR^\         P                  3R7       R# )rÿ   r	  r*   r"  Nr  )r   r   r  r  r   rœ   rC   )rE   rF   s   & r&   Útest_exceptionÚ1TestApproxDerivativeLinearOperator.test_exception  s9   € Ü�XŠX�v˜s�mÓ$ˆÜ”jÔ"3Ø×,Ñ,¨bØ&°´2·6±6¨{÷	<r(   r]   N)r^   r_   r`   ra   rn   rt   r{   r„   r‹   r•   rœ   r¨   rÛ   ré   r  r  rÈ  rb   rc   rd   s   @r&   r£  r£  ™  sM   ø‡ € òòò?òIò2òòòò'ò*'ò*'ò*K÷$<ð <r(   r£  c                  ó  € R  p \        V RR.RRR7      p\        VRR.4       \        V RR.RR	R7      p\        VRR.4       \        V RR.RRR.R7      p\        VRR.4       \        V RR.RRR	.R7      p\        VRR.4       \        V RR.RR	R.R7      p\        VRR.4       \        V RR.RR\        P                  ) R3R7      p\        VRR.4       \        V RR.RR	R\        P                  3R7      p\        VRR.4       R# )
c                 óž   € \         P                  ! V ^ ,          ^,           4      ) \         P                  ! V ^,          ^,           4      ,           # rw   )r   rS   rI  s   &r&   rJ  Ú"test_absolute_step_sign.<locals>.f!  s2   € Ü—’�q˜•t˜a•xÓ Ð ¤2§6¢6¨!¨A­$°­(Ó#3Õ3Ð3r(   r*   r¹   rß   r¿   )r7   rà   r  NrQ   r  r/  )r   r   r   rC   )rJ  Úgrads     r&   Útest_absolute_step_signrÎ    s;  € ò4ô ˜Q  R °ÀTÔJ€DÜ�D˜4 ˜+Ô&ô ˜Q  R °ÀUÔK€DÜ�D˜3 ˜+Ô&ô Ø	ˆB�ˆ8˜I°°t°ô€Dô �D˜4 ˜+Ô&ô Ø	ˆB�ˆ8˜I°°u°ô€Dô �D˜4 ˜,Ô'ÜØ	ˆB�ˆ8˜I°¸°ô€Dô �D˜3 ˜*Ô%ô Ø	ˆB�ˆ8˜I°Ü—‘�˜ˆ}ô€Dô �D˜3 ˜+Ô&äØ	ˆB�ˆ8˜I°¸rÄ2Ç6Á6¸lô€Dô �D˜4 ˜+Ö&r(   c                  ó<  € . ROp \         P                  ! . RO4      p\         P                  ! \         P                  4      P                  pR VR,          RVR,          RVR,          /p\         P                  ! R4      pV  F´  pW5,          p\         P                  ! VVR,          VR,          V\         P
                  ! V^,          4      ,          .4      p\        RWV4      p\        W‡4       V) ^ 8¬  P                  \        4      ^,          ^,
          p	\        RV) WE4      p\        W‰V,          4       K¶  	  \         P                  ! . R	O4      p\         P                  ! V^ ,          V^ ,          ,          VR ,          V^,          R,          V^,          \         P
                  ! V^,          4      ,          .4      p\        WaVR 4      p\        W‡4       V) ^ 8¬  P                  \        4      ^,          ^,
          p	\        Wa) VR 4      p\        W‰V,          4       R# )
r*   r,   r-   r+   r¿   Nr/   )r
  r   r   g     jø@r.   )rP   r   é
   éd   )
r   r   r0   r1   r2   rS   r   r   rD  Úfloat)
ÚmethodsrF   r5   r6   r  r7   r  Úcorrect_steprà   Úsign_x0s
             r&   Útest__compute_absolute_steprÖ  M  s±  € â*€Gä	�ŠÒ#Ó	$€Bä
�(Š(”2—:‘:Ó
×
"Ñ
"€Cà�3˜•8Ø�3˜•:Øˆc�3�hð€Mô
 
�Š�#‹€BãˆØ Õ(ˆÜ—x’x Ø!)¨B¥Ø!)¨B¥Ø!)¬B¯FªF°2°aµ5«MÕ!9ð!;ó <ˆô
 *¨$°¸Ó?ˆÜ˜Ô/à�3˜!‘8×#Ñ#¤EÓ*¨QÕ.°Õ2ˆÜ)¨$°°°RÓ@ˆÜ˜¨LÕ"8Ö9ñ ô �xŠxÒ)Ó*€HÜ—8’8˜X a�[¨2¨a­5Õ0Ø*¨9Õ5Ø% a�[¨2Õ-Ø% a�[¬2¯6ª6°"°Qµ%«=Õ8ð:ó ;€Lô
 & h°B¸	ÓB€HÜ�HÔ+àˆs�a‰x×Ñ¤Ó&¨Õ*¨QÕ.€GÜ% h°°R¸ÓC€HÜ�H¨Õ4Ö5r(   )$rÊ   Ú	itertoolsr   Únumpyr   Únumpy.testingr   r   r   rl  r   r  Úscipy._lib._utilr   r	   Úscipy.sparser
   r   r   Úscipy.optimize._numdiffr   r   r   r   r   r   Úscipy.optimizer   r'   r8   r:   rg   rp  r£  rÎ  rÖ  r]   r(   r&   Ú<module>rÞ     s|   ðÛ Ý ã ß @Ñ @Û Ý *ç ?ß 8Ñ 8÷<÷ <õ !ò%ò8!
÷HG9ñ G9÷T[!ñ [!÷|\!ñ \!÷~|<ñ |<ò~2'ôj(6r(   