§
    ¢éUgæ�  ã                   óf  — d dl Z d dlZd dlZd dlmZmZmZmZm	Z	m
Z
 d dlmZ d dlZd dlmZmZmZmZmZmZmZmZmZmZmZmZ dd i fd„Zg d¢Zd„ Zd„ Zd	„ Zd
„ Z  G d„ d¦  «        Z! G d„ d¦  «        Z" G d„ d¦  «        Z# G d„ d¦  «        Z$ G d„ d¦  «        Z%d„ Z&d„ Z'd„ Z( G d„ d¦  «        Z)dS )é    N)Úassert_almost_equalÚassert_array_equalÚassert_array_almost_equalÚassert_allcloseÚassert_equalÚassert_)Úraises)ÚKroghInterpolatorÚkrogh_interpolateÚBarycentricInterpolatorÚbarycentric_interpolateÚapproximate_taylor_polynomialÚCubicHermiteSplineÚpchipÚPchipInterpolatorÚpchip_interpolateÚAkima1DInterpolatorÚCubicSplineÚmake_interp_splinec                 óH  — t           j                             d¦  «         g d¢}t          t	          dt          |¦  «        dz   ¦  «        ¦  «        }|                     |t          |¦  «        dz   z  d¦  «         t          j        j        d|z   Ž                      |¦  «        }t          j	        |¦  «        }	| t          u r@t          j        j        d|z   Ž                      |¦  «        }
  | |||
fd|i|¤Ž|	¦  «        }n  | ||fd|i|¤Ž|	¦  «        }|pd|j        d |…         z   |z   |j        |d …         dd …         z   }t          |j        |¦  «         |r›|j        dk    r�| t          u rK  | t          |¦  «        t          |¦  «        t          |
¦  «        fd|i|¤Žt          |	¦  «        ¦  «         n<  | t          |¦  «        t          |¦  «        fd|i|¤Žt          |	¦  «        ¦  «         |	j        dk    rŸ|€Ÿ|j        d |…         dt          |¦  «        z  z   |j        |d …         dd …         z   }|t          d ¦  «        f||j        z  z  dz            }|                     |¦  «        }t          j        ||¦  «        \  }}t%          ||¦  «         d S d S d S )	NéÒ  )éÿÿÿÿr   é   é   é   é   r   r   ©é   Úaxis© ©r   )ÚnpÚrandomÚseedÚlistÚrangeÚlenÚinsertÚrandÚ	transposeÚzerosr   Úshaper   ÚsizeÚsliceÚndimÚreshapeÚbroadcast_arraysr   )Úinterpolator_clsÚx_shapeÚy_shapeÚderiv_shaper   Ú
extra_argsÚxÚsÚyÚxiÚdydxÚyiÚtarget_shapeÚbs_shapeÚyvs                  úc/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/interpolate/tests/test_polyint.pyÚcheck_shaperA      sê  € å„I‡N‚N�4ÑÔÐàÐÐ€AÝ�U�1•c˜'‘l”l 1‘nÑ%Ô%Ñ&Ô&€AØ‡H‚HˆT•S˜‘\”\ !‘^Ñ$ aÑ(Ô(Ð(Ý
Œ	Œ˜ ™Ð)×3Ò3°AÑ6Ô6€Aå	Œ�'Ñ	Ô	€BØÕ-Ð-Ð-ÝŒyŒ~  w¡Ð0×:Ò:¸1Ñ=Ô=ˆØBÐÐ˜a  DÐBÐB¨tÐB°zÐBÐBÀ2ÑFÔFˆˆà<ÐÐ˜a Ð<Ð<¨Ð<°Ð<Ð<¸RÑ@Ô@ˆà Ð& B¨!¬'°%°4°%¬.Ñ8ØñØ !¤¨¨¨¤¨q¨r¨rÔ 2ñ3€Lå�”˜<Ñ(Ô(Ð(ð ð 5�1”6˜A’:�:ØÕ1Ð1Ð1ð+ÐÐ�T !™WœW¥d¨1¡g¤g­t°D©z¬zð +ð +Àð +Ø)ð+ð +Ý+/°©8¬8ñ5ô 5ð 5ð 5ð+ÐÐ�T !™WœW¥d¨1¡g¤gð +ð +°Dð +Ø)ð+ð +Ý+/°©8¬8ñ5ô 5ð 5ð 
„w�‚{€{�{Ð*Ø”7˜5˜D˜5”> D­¨W©¬Ñ$5Ñ5¸¼ÀÀÀ¼ÀqÀrÀrÔ8JÑJˆØ•�t‘”� ¨¬¡Ñ/°4Ñ7Ô8ˆØ�ZŠZ˜Ñ!Ô!ˆåÔ# B¨Ñ+Ô+‰ˆˆAÝ˜˜AÑÔÐÐÐð €{Ð*Ð*ó    )r    ©r   r!   )r   r   é   c                  ó\  — d„ } t           t          t          t          t          t
          | fD ]€}t          D ]v}t          D ]l}t          t          |¦  «         t          |¦  «        ¦  «        D ]>}|t
          k    rt          |||d |¦  «         Œ!dD ]}d|i}t          |||d ||¦  «         ŒŒ?ŒmŒwŒ�d S )Nc                 ó&   — t          | ||¬¦  «        S ©N©r   )r   ©r7   r9   r   s      r@   Ú
spl_interpztest_shapes.<locals>.spl_interp?   s   € Ý! ! Q¨TÐ2Ñ2Ô2Ð2rB   )ÚnaturalÚclampedÚbc_type)
r
   r   r   r   r   r   ÚSHAPESr&   r'   rA   )rJ   ÚipÚs1Ús2r   ÚbcÚextras          r@   Útest_shapesrT   =   s  € ð3ð 3ð 3õ !Õ"9Õ;MÝÕ)­;¸
ðDð 
Gð 
Gˆåð 	Gð 	GˆBÝð Gð G�Ý!¥3 r¡7¤7 (­C°©G¬GÑ4Ô4ð Gð G�DØ�[Ò(Ð(Ý# B¨¨B°°dÑ;Ô;Ð;Ð;à"8ð Gð G˜BØ%.° O˜EÝ'¨¨B°°D¸$ÀÑFÔFÐFÐFðGð	GðGð	Gð
Gð 
GrB   c                  óà   ‡— t           t          fD ]]Šdˆfd„	} t          D ]M}t          D ]C}t          t	          |¦  «         t	          |¦  «        ¦  «        D ]}t          | ||d|¦  «         ŒŒDŒNŒ^d S )Nr   c                 ó(   •—  ‰| ||¦  «        j         S ©N©Úderivatives)r7   r9   r   rO   s      €r@   Úinterpolator_derivsz/test_derivs_shapes.<locals>.interpolator_derivsP   s   ø€ Ø�2�a˜˜D‘>”>Ô-Ð-rB   r   rC   )r
   r   rN   r&   r'   rA   )rZ   rP   rQ   r   rO   s       @r@   Útest_derivs_shapesr[   N   s½   ø€ Ý Õ"9Ð:ð Ið Iˆð	.ð 	.ð 	.ð 	.ð 	.ð 	.õ ð 	Ið 	IˆBÝð Ið I�Ý!¥3 r¡7¤7 (­C°©G¬GÑ4Ô4ð Ið I�DÝÐ 3°R¸¸TÀ4ÑHÔHÐHÐHðIðIð	Ið	Ið IrB   c                  ó<  — dd„} dd„}dd„}dd„}dd„}dd„}dd„}dd	„}dd
„}dd„}	dd„}
dd„}dd„}| |||||||||	|
||fD ]W}t           D ]M}t           D ]C}t          t          |¦  «         t          |¦  «        ¦  «        D ]}t          |||d|¦  «         ŒŒDŒNŒXd S )Nr   c                 ó.   — t          | ||¦  «        j        S rW   )r
   Ú
derivativerI   s      r@   Úkrogh_derivz&test_deriv_shapes.<locals>.krogh_derivZ   s   € Ý   A tÑ,Ô,Ô7Ð7rB   c                 ó.   — t          | ||¦  «        j        S rW   )r   r^   rI   s      r@   Ú
bary_derivz%test_deriv_shapes.<locals>.bary_deriv]   s   € Ý& q¨!¨TÑ2Ô2Ô=Ð=rB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   ©r   r^   rI   s      r@   Úpchip_derivz&test_deriv_shapes.<locals>.pchip_deriv`   s    € Ý�Q˜˜4Ñ Ô ×+Ò+Ñ-Ô-Ð-rB   c                 óJ   — t          | ||¦  «                             d¦  «        S ©Nr   rc   rI   s      r@   Úpchip_deriv2z'test_deriv_shapes.<locals>.pchip_deriv2c   s"   € Ý�Q˜˜4Ñ Ô ×+Ò+¨AÑ.Ô.Ð.rB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   ©r   ÚantiderivativerI   s      r@   Úpchip_antiderivz*test_deriv_shapes.<locals>.pchip_antiderivf   s    € Ý�Q˜˜4Ñ Ô ×/Ò/Ñ1Ô1Ð1rB   c                 óJ   — t          | ||¦  «                             d¦  «        S rf   ri   rI   s      r@   Úpchip_antideriv2z+test_deriv_shapes.<locals>.pchip_antideriv2i   s"   € Ý�Q˜˜4Ñ Ô ×/Ò/°Ñ2Ô2Ð2rB   c                 óB   —  G d„ dt           ¦  «        } || ||¦  «        S )Nc                   ó   — e Zd Zd„ ZdS )ú9test_deriv_shapes.<locals>.pchip_deriv_inplace.<locals>.Pc                 ó.   — t          j        | |d¦  «        S )Nr   )r   Ú__call__)Úselfr7   s     r@   rr   zBtest_deriv_shapes.<locals>.pchip_deriv_inplace.<locals>.P.__call__n   s   € Ý(Ô1°$¸¸1Ñ=Ô=Ð=rB   N)Ú__name__Ú
__module__Ú__qualname__rr   r    rB   r@   ÚPrp   m   s   € € € € € ð>ð >ð >àˆDrB   rw   )r   )r7   r9   r   rw   s       r@   Úpchip_deriv_inplacez.test_deriv_shapes.<locals>.pchip_deriv_inplacel   sA   € ð	ð 	ð 	ð 	ð 	Õ!ñ 	ô 	ð 	ð ˆq��A�t‰}Œ}ÐrB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   )r   r^   rI   s      r@   Úakima_derivz&test_deriv_shapes.<locals>.akima_derivs   s    € Ý" 1 a¨Ñ.Ô.×9Ò9Ñ;Ô;Ð;rB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   )r   rj   rI   s      r@   Úakima_antiderivz*test_deriv_shapes.<locals>.akima_antiderivv   s    € Ý" 1 a¨Ñ.Ô.×=Ò=Ñ?Ô?Ð?rB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   )r   r^   rI   s      r@   Úcspline_derivz(test_deriv_shapes.<locals>.cspline_derivy   s    € Ý˜1˜a Ñ&Ô&×1Ò1Ñ3Ô3Ð3rB   c                 óH   — t          | ||¦  «                             ¦   «         S rW   )r   rj   rI   s      r@   Úcspline_antiderivz,test_deriv_shapes.<locals>.cspline_antideriv|   s    € Ý˜1˜a Ñ&Ô&×5Ò5Ñ7Ô7Ð7rB   c                 óJ   — t          | ||¬¦  «                             ¦   «         S rG   )r   r^   rI   s      r@   Ú
bspl_derivz%test_deriv_shapes.<locals>.bspl_deriv   s#   € Ý! ! Q¨TÐ2Ñ2Ô2×=Ò=Ñ?Ô?Ð?rB   c                 óJ   — t          | ||¬¦  «                             ¦   «         S rG   )r   rj   rI   s      r@   Úbspl_antiderivz)test_deriv_shapes.<locals>.bspl_antideriv‚   s#   € Ý! ! Q¨TÐ2Ñ2Ô2×AÒAÑCÔCÐCrB   r    rC   )rN   r&   r'   rA   )r_   ra   rd   rg   rk   rm   rx   rz   r|   r~   r€   r‚   r„   rO   rP   rQ   r   s                    r@   Útest_deriv_shapesr…   Y   s¿  € ð8ð 8ð 8ð 8ð>ð >ð >ð >ð.ð .ð .ð .ð/ð /ð /ð /ð2ð 2ð 2ð 2ð3ð 3ð 3ð 3ðð ð ð ð<ð <ð <ð <ð@ð @ð @ð @ð4ð 4ð 4ð 4ð8ð 8ð 8ð 8ð@ð @ð @ð @ðDð Dð Dð Dð ˜J¨°\ÐCVØÐ 0°+¸ØÐ/°¸^ðMð 6ð 6ˆõ ð 	6ð 	6ˆBÝð 6ð 6�Ý!¥3 r¡7¤7 (­C°©G¬GÑ4Ô4ð 6ð 6�DÝ  B¨¨B°Ñ5Ô5Ð5Ð5ð6ð6ð	6ð6ð 6rB   c                  ó  — g d¢} g d¢}t           t          t          fD ]'} || |¦  «        }t          | || ¦  «        ¦  «         Œ(g d¢}t	          | ||¦  «        }t          | || ¦  «        ¦  «         t          | || d¦  «        ¦  «         d S )N©r   r   r   r   )r   r   ù              ð?r   )r   y       €      ð¿r   y              @r   )r
   r   r   r   r   )r7   r9   rO   Úpr;   s        r@   Útest_complexrŠ   Ž   s§   € Øˆˆ€AØˆˆ€Aå Õ"9½;ÐGð !ð !ˆØˆBˆq�!‰HŒHˆÝ˜˜1˜1˜Q™4œ4Ñ Ô Ð Ð àˆ?ˆ?€DÝ˜1˜a Ñ&Ô&€AÝ�A�q�q˜‘t”tÑÔÐÝ�D˜!˜!˜A˜q™'œ'Ñ"Ô"Ð"Ð"Ð"rB   c                   óŒ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )Ú	TestKroghc                 óü   — t           j                             g d¢¦  «        | _        t          j        ddd¦  «        | _        t          j        ddd¦  «        | _        |                      | j        ¦  «        | _        d S ©N)éüÿÿÿrD   r   r   éþÿÿÿr   r   éd   rD   ©r"   Ú
polynomialÚ
PolynomialÚ	true_polyÚlinspaceÚtest_xsÚxsÚys©rs   s    r@   Úsetup_methodzTestKrogh.setup_method�   sc   € Ýœ×1Ò1Ð2CÐ2CÐ2CÑDÔDˆŒÝ”{ 2 a¨Ñ,Ô,ˆŒÝ”+˜b  1Ñ%Ô%ˆŒØ—.’. ¤Ñ)Ô)ˆŒˆˆrB   c                 ó¦   — t          | j        | j        ¦  «        }t          |                      | j        ¦  «         || j        ¦  «        ¦  «         d S rW   ©r
   r˜   r™   r   r•   r—   ©rs   rw   s     r@   Útest_lagrangezTestKrogh.test_lagrange£   óC   € Ý˜dœg d¤gÑ.Ô.ˆÝ˜DŸNšN¨4¬<Ñ8Ô8¸¸¸4¼<¹¼ÑIÔIÐIÐIÐIrB   c                 ó2  — t          | j        | j        ¦  «        }t          |                      d¦  «         |d¦  «        ¦  «         t          |                      t          j        d¦  «        ¦  «         |t          j        d¦  «        ¦  «        ¦  «         d S ©Né   )r
   r˜   r™   r   r•   r"   Úarrayrž   s     r@   Útest_scalarzTestKrogh.test_scalar§   ss   € Ý˜dœg d¤gÑ.Ô.ˆÝ˜DŸNšN¨1Ñ-Ô-¨a¨a°©d¬dÑ3Ô3Ð3Ý˜DŸNšN­2¬8°A©;¬;Ñ7Ô7¸¸½2¼8ÀA¹;¼;¹¼ÑHÔHÐHÐHÐHrB   c                 ó   — t          | j        | j        ¦  «        }|                     | j        ¦  «        }t          |j        d         ¦  «        D ]>}t           | j         	                    |¦  «        | j        ¦  «        ||         ¦  «         Œ?d S ©Nr   )
r
   r˜   r™   rY   r—   r&   r,   r   r•   Úderiv©rs   rw   ÚDÚis       r@   Útest_derivativeszTestKrogh.test_derivatives¬   sŒ   € Ý˜dœg d¤gÑ.Ô.ˆØ�MŠM˜$œ,Ñ'Ô'ˆÝ�q”w˜q”zÑ"Ô"ð 	&ð 	&ˆAÝÐ 7 ¤× 4Ò 4°QÑ 7Ô 7¸¼Ñ EÔ EØ ! !¤ñ&ô &ð &ð &ð	&ð 	&rB   c                 óL  — t          | j        | j        ¦  «        }|                     | j        t          | j        ¦  «        dz   ¦  «        }t          |j        d         ¦  «        D ]>}t           | j	         
                    |¦  «        | j        ¦  «        ||         ¦  «         Œ?d S )Nr   r   )r
   r˜   r™   rY   r—   r'   r&   r,   r   r•   r¨   r©   s       r@   Útest_low_derivativeszTestKrogh.test_low_derivatives³   sš   € Ý˜dœg d¤gÑ.Ô.ˆØ�MŠM˜$œ,¥s¨4¬7¡|¤|°A¡~Ñ6Ô6ˆÝ�q”w˜q”zÑ"Ô"ð 	&ð 	&ˆAÝÐ 7 ¤× 4Ò 4°QÑ 7Ô 7¸¼Ñ EÔ EØ ! !¤ñ&ô &ð &ð &ð	&ð 	&rB   c                 óö   — t          | j        | j        ¦  «        }d}|                     | j        |¦  «        }t          |¦  «        D ]1}t          |                     | j        |¦  «        ||         ¦  «         Œ2d S ©Né
   )r
   r˜   r™   rY   r—   r&   r   r^   ©rs   rw   ÚmÚrr«   s        r@   Útest_derivativezTestKrogh.test_derivativeº   sy   € Ý˜dœg d¤gÑ.Ô.ˆØˆØ�MŠM˜$œ, qÑ)Ô)ˆÝ�q‘”ð 	Cð 	CˆAÝ §¢¨T¬\¸!Ñ <Ô <¸Q¸q¼TÑBÔBÐBÐBð	Cð 	CrB   c           	      óH  — t          | j        | j        ¦  «        }t          t	          | j        ¦  «        dt	          | j        ¦  «        z  ¦  «        D ]O}t          |                     | j        |¦  «        t          j	        t	          | j        ¦  «        ¦  «        ¦  «         ŒPd S rf   )
r
   r˜   r™   r&   r'   r   r^   r—   r"   r+   ©rs   rw   r«   s      r@   Útest_high_derivativezTestKrogh.test_high_derivativeÁ   sŒ   € Ý˜dœg d¤gÑ.Ô.ˆÝ•s˜4œ7‘|”| Q¥s¨4¬7¡|¤|¡^Ñ4Ô4ð 	=ð 	=ˆAÝ §¢¨T¬\¸!Ñ <Ô <Ý "¤­¨T¬\Ñ):Ô):Ñ ;Ô ;ñ=ô =ð =ð =ð	=ð 	=rB   c                 óÚ  — | j         }t          j                             g d¢¦  «        }t          j                             g d¢¦  «        }t          j         || j        ¦  «         || j        ¦  «         || j        ¦  «        fd¬¦  «        }t          | j        |d¬¦  «        }|                     | j        ¦  «        }t          |j
        d         ¦  «        D ]’}t          ||         t          j         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «        fd¬¦  «        ¦  «         Œ“d S ©N©r�   rD   r   r   ©é   éýÿÿÿr   éûÿÿÿr   r   rH   r   )r•   r"   r“   r”   Ústackr˜   r
   rY   r—   r&   r,   r   r¨   ©rs   Úpoly1Úpoly2Úpoly3r™   rw   rª   r«   s           r@   Útest_ndim_derivativeszTestKrogh.test_ndim_derivativesÇ   sM  € Ø”ˆÝ”×(Ò(¨¨¨Ñ8Ô8ˆÝ”×(Ò(Ð);Ð);Ð);Ñ<Ô<ˆÝŒX�u�u˜TœW‘~”~ u u¨T¬W¡~¤~°u°u¸T¼W±~´~ÐFÈRÐPÑPÔPˆå˜dœg r°Ð2Ñ2Ô2ˆØ�MŠM˜$œ,Ñ'Ô'ˆÝ�q”w˜q”zÑ"Ô"ð 	/ð 	/ˆAÝ˜A˜aœDÝœH n e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&Bð&Dð +-ð.ñ .ô .ñ/ô /ð /ð /ð	/ð 	/rB   c                 óÀ  — | j         }t          j                             g d¢¦  «        }t          j                             g d¢¦  «        }t          j         || j        ¦  «         || j        ¦  «         || j        ¦  «        fd¬¦  «        }t          | j        |d¬¦  «        }t          |j        ¦  «        D ]¥}t          | 
                    | j        |¦  «        t          j         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «        fd¬¦  «        ¦  «         Œ¦d S rº   )r•   r"   r“   r”   rÀ   r˜   r
   r&   Únr   r^   r—   r¨   ©rs   rÂ   rÃ   rÄ   r™   rw   r«   s          r@   Útest_ndim_derivativezTestKrogh.test_ndim_derivativeÖ   s@  € Ø”ˆÝ”×(Ò(¨¨¨Ñ8Ô8ˆÝ”×(Ò(Ð);Ð);Ð);Ñ<Ô<ˆÝŒX�u�u˜TœW‘~”~ u u¨T¬W¡~¤~°u°u¸T¼W±~´~ÐFÈRÐPÑPÔPˆå˜dœg r°Ð2Ñ2Ô2ˆÝ�q”s‘”ð 	/ð 	/ˆAÝ˜AŸLšL¨¬°qÑ9Ô9ÝœH n e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&Bð&Dð +-ð.ñ .ô .ñ/ô /ð /ð /ð	/ð 	/rB   c                 ó¦   — t          | j        | j        ¦  «        }t          |                      | j        ¦  «         || j        ¦  «        ¦  «         d S rW   r�   rž   s     r@   Útest_hermitezTestKrogh.test_hermiteä   r    rB   c           	      ó  ‡‡‡— g d¢Št          j        ddgddgddgg¦  «        Št          ‰‰¦  «        }ˆˆfd„t          ‰j        d         ¦  «        D ¦   «         }t          j        ddd¦  «        Št           |‰¦  «        t          j        ˆfd	„|D ¦   «         ¦  «        j        ¦  «         t          | 	                    ‰¦  «        t          j
        t          j        ˆfd
„|D ¦   «         ¦  «        d¦  «        ¦  «         d S )N©r   r   r   r   r   r   c                 óD   •— g | ]}t          ‰‰d d …|f         ¦  «        ‘ŒS rW   )r
   )Ú.0r«   r˜   r™   s     €€r@   ú
<listcomp>z)TestKrogh.test_vector.<locals>.<listcomp>ì   s0   ø€ ÐHÐHÐH°Õ  2 a a a¨ c¤7Ñ+Ô+ÐHÐHÐHrB   r   r   r‘   c                 ó&   •— g | ]} |‰¦  «        ‘ŒS r    r    ©rÏ   r‰   r—   s     €r@   rÐ   z)TestKrogh.test_vector.<locals>.<listcomp>ï   ó!   ø€ Ð'?Ð'?Ð'?°q¨¨¨'©
¬
Ð'?Ð'?Ð'?rB   c                 ó:   •— g | ]}|                      ‰¦  «        ‘ŒS r    rX   rÒ   s     €r@   rÐ   z)TestKrogh.test_vector.<locals>.<listcomp>ñ   s%   ø€ Ð(LÐ(LÐ(LÀA¨¯ª°wÑ)?Ô)?Ð(LÐ(LÐ(LrB   )r   r   r   )r"   r¤   r
   r&   r,   r–   r   ÚasarrayÚTrY   r*   )rs   rw   ÚPir—   r˜   r™   s      @@@r@   Útest_vectorzTestKrogh.test_vectorè   s  øøø€ ØˆYˆYˆÝŒX˜˜!�u˜a ˜U A a 5Ð)Ñ*Ô*ˆÝ˜b Ñ$Ô$ˆØHÐHÐHÐHÐHµU¸2¼8ÀA¼;Ñ5GÔ5GÐHÑHÔHˆÝ”+˜b  3Ñ'Ô'ˆÝ˜A˜A˜g™JœJÝœJÐ'?Ð'?Ð'?Ð'?¸BÐ'?Ñ'?Ô'?Ñ@Ô@ÔBñ	Dô 	Dð 	Då˜AŸMšM¨'Ñ2Ô2Ý”�RœZÐ(LÐ(LÐ(LÐ(LÈÐ(LÑ(LÔ(LÑMÔMØñô ñ	ô 	ð 	ð 	ð 	rB   c                 ól   — t          | j        | j        ¦  «        }t           |g ¦  «        g ¦  «         d S rW   )r
   r˜   r™   r   rž   s     r@   Ú
test_emptyzTestKrogh.test_emptyô   s3   € Ý˜dœg d¤gÑ.Ô.ˆÝ˜1˜1˜R™5œ5 "Ñ%Ô%Ð%Ð%Ð%rB   c           	      ó¼  — t          | j        | j        ¦  «        }t          t	          j         |d¦  «        ¦  «        d¦  «         t          t	          j         |t	          j        d¦  «        ¦  «        ¦  «        d¦  «         t          t	          j         |dg¦  «        ¦  «        d¦  «         t          t	          j         |ddg¦  «        ¦  «        d¦  «         d S ©Nr   r    r!   r   )r   )r
   r˜   r™   r   r"   r,   r¤   rž   s     r@   Útest_shapes_scalarvaluez!TestKrogh.test_shapes_scalarvalueø   s¯   € Ý˜dœg d¤gÑ.Ô.ˆÝ�2œ8 A A a¡D¤D™>œ>¨2Ñ.Ô.Ð.Ý�2œ8 A A¥b¤h¨q¡k¤k¡N¤NÑ3Ô3°RÑ8Ô8Ð8Ý�2œ8 A A q c¡F¤FÑ+Ô+¨TÑ2Ô2Ð2Ý�2œ8 A A q¨ e¡H¤HÑ-Ô-¨tÑ4Ô4Ð4Ð4Ð4rB   c           	      ó&  — t          | j        | j        ¦  «        }|j        }t	          t          j        |                     d¦  «        ¦  «        |f¦  «         t	          t          j        |                     t          j        d¦  «        ¦  «        ¦  «        |f¦  «         t	          t          j        |                     dg¦  «        ¦  «        |df¦  «         t	          t          j        |                     ddg¦  «        ¦  «        |df¦  «         d S ©Nr   r   r   )	r
   r˜   r™   rÇ   r   r"   r,   rY   r¤   ©rs   rw   rÇ   s      r@   Ú"test_shapes_scalarvalue_derivativez,TestKrogh.test_shapes_scalarvalue_derivativeÿ   sÔ   € Ý˜dœg d¤gÑ.Ô.ˆØŒCˆÝ�2œ8 A§M¢M°!Ñ$4Ô$4Ñ5Ô5¸°tÑ<Ô<Ð<Ý�2œ8 A§M¢Mµ"´(¸1±+´+Ñ$>Ô$>Ñ?Ô?À!ÀÑFÔFÐFÝ�2œ8 A§M¢M°1°#Ñ$6Ô$6Ñ7Ô7¸!¸A¸Ñ?Ô?Ð?Ý�2œ8 A§M¢M°1°Q°%Ñ$8Ô$8Ñ9Ô9¸A¸a¸5ÑAÔAÐAÐAÐArB   c           	      óŒ  — t          | j        t          j        | j        t          j        d¦  «        ¦  «        ¦  «        }t          t          j         |d¦  «        ¦  «        d¦  «         t          t          j         |dg¦  «        ¦  «        d¦  «         t          t          j         |ddg¦  «        ¦  «        d¦  «         d S ©Nr   r   )r   )r   r   r   )r   r   )r
   r˜   r"   Úouterr™   Úaranger   r,   rž   s     r@   Útest_shapes_vectorvaluez!TestKrogh.test_shapes_vectorvalue  s™   € Ý˜dœg¥b¤h¨t¬wµr´yÀ±|´|Ñ&DÔ&DÑEÔEˆÝ�2œ8 A A a¡D¤D™>œ>¨4Ñ0Ô0Ð0Ý�2œ8 A A q c¡F¤FÑ+Ô+¨UÑ3Ô3Ð3Ý�2œ8 A A q¨ e¡H¤HÑ-Ô-¨uÑ5Ô5Ð5Ð5Ð5rB   c                 ój  — t          | j        t          j        | j        dg¦  «        ¦  «        }t          t          j         |d¦  «        ¦  «        d¦  «         t          t          j         |dg¦  «        ¦  «        d¦  «         t          t          j         |ddg¦  «        ¦  «        d¦  «         d S ©Nr   r   r!   )r   r   )r   r   )r
   r˜   r"   rä   r™   r   r,   rž   s     r@   Útest_shapes_1d_vectorvaluez$TestKrogh.test_shapes_1d_vectorvalue  s“   € Ý˜dœg¥b¤h¨t¬w¸°sÑ&;Ô&;Ñ<Ô<ˆÝ�2œ8 A A a¡D¤D™>œ>¨4Ñ0Ô0Ð0Ý�2œ8 A A q c¡F¤FÑ+Ô+¨UÑ3Ô3Ð3Ý�2œ8 A A q¨ e¡H¤HÑ-Ô-¨uÑ5Ô5Ð5Ð5Ð5rB   c           	      óæ  — t          | j        t          j        | j        t          j        d¦  «        ¦  «        ¦  «        }|j        }t          t          j        | 	                    d¦  «        ¦  «        |df¦  «         t          t          j        | 	                    dg¦  «        ¦  «        |ddf¦  «         t          t          j        | 	                    ddg¦  «        ¦  «        |ddf¦  «         d S ©Nr   r   r   r   )
r
   r˜   r"   rä   r™   rå   rÇ   r   r,   rY   rà   s      r@   Ú"test_shapes_vectorvalue_derivativez,TestKrogh.test_shapes_vectorvalue_derivative  s¾   € Ý˜dœg¥b¤h¨t¬wµr´yÀ±|´|Ñ&DÔ&DÑEÔEˆØŒCˆÝ�2œ8 A§M¢M°!Ñ$4Ô$4Ñ5Ô5¸¸!°uÑ=Ô=Ð=Ý�2œ8 A§M¢M°1°#Ñ$6Ô$6Ñ7Ô7¸!¸A¸a¸ÑAÔAÐAÝ�2œ8 A§M¢M°1°Q°%Ñ$8Ô$8Ñ9Ô9¸A¸aÀ¸7ÑCÔCÐCÐCÐCrB   c           
      óÐ  — t          | j        | j        ¦  «        }t          }t	           || j        ¦  «         || j        | j        | j        ¦  «        ¦  «         t	          |                     | j        d¦  «         || j        | j        | j        d¬¦  «        ¦  «         t	          |                     | j        d¦  «         || j        | j        | j        ddg¬¦  «        ¦  «         d S ©Nr   ©Úderr   r   )r
   r˜   r™   r   r   r—   r^   rY   )rs   rw   Úkis      r@   Útest_wrapperzTestKrogh.test_wrapper  sÞ   € Ý˜dœg t¤wÑ/Ô/ˆÝˆÝ˜A˜A˜dœl™OœO¨R¨R°´¸¼À$Ä,Ñ-OÔ-OÑPÔPÐPÝ˜AŸLšL¨¬°qÑ9Ô9Ø˜B˜tœw¨¬°´À1ÐEÑEÔEñ	Gô 	Gð 	Gå˜AŸMšM¨$¬,¸Ñ:Ô:Ø˜B˜tœw¨¬°´ÀAÀqÀ6ÐJÑJÔJñ	Lô 	Lð 	Lð 	Lð 	LrB   c           	      óÞ   — g d¢}t          j        g d¢¦  «        }t          ||¦  «        }t          t	           ||¦  «        |z
  |                     |d¦  «        z  ¦  «        dd¬¦  «         d S )N)r   éê   iÔ  i¾  i¨  i’  i|  i$	  i   iÄ  iè   i03  i`ê  )gffffffî¿gë‹¥Ä…Žë¿g™ä‘‰¥ê¿gÑ!p$Ð€ä¿gV¶0‡´¸Þ¿g�¤x*ZÖ¿g�º„àDöÐ¿g²æ2û]ÔÀ¿g ´½H. À¿gŽ»9C�À¿gÜ6D.›À¿gG°/áéøµ¿gš™™™™™©?r   r   g»½×Ùß|Û=©Úatol)r"   r¤   r
   r   Úabsr^   )rs   r7   Ú
offset_cdfÚfs       r@   Útest_int_inputszTestKrogh.test_int_inputs#  s–   € ðð ð ˆå”Xð ?ð ?ð ?ñ @ô @ˆ
õ ˜a Ñ,Ô,ˆå�˜Q˜Q˜q™TœT JÑ.°!·,²,¸qÀ!Ñ2DÔ2DÑDÑEÔEØ ð	'ñ 	'ô 	'ð 	'ð 	'ð 	'rB   c                 ót  — t          j        g d¢¦  «        t          j        g d¢¦  «        }}t          ||¦  «        }|                     d¦  «        }t          ||j        ¦  «                             d¦  «        dt          ||j        ¦  «                             d¦  «        z  z   }t          ||d¬¦  «         d S )N)r   r   r   r   r   )r   rˆ   r   r   rˆ   r   rˆ   çVçž¯Ò<rõ   )r"   r¤   r
   rY   ÚrealÚimagr   )rs   r7   r9   ÚfuncÚcmplxÚcmplx2s         r@   Útest_derivatives_complexz"TestKrogh.test_derivatives_complex0  s²   € åŒxÐ)Ð)Ð)Ñ*Ô*­B¬HÐ5KÐ5KÐ5KÑ,LÔ,Lˆ1ˆÝ   AÑ&Ô&ˆØ× Ò  Ñ#Ô#ˆå# A q¤vÑ.Ô.×:Ò:¸1Ñ=Ô=ØÕ& q¨!¬&Ñ1Ô1×=Ò=¸aÑ@Ô@Ñ@ñAˆå˜˜v¨EÐ2Ñ2Ô2Ð2Ð2Ð2rB   c                 óÖ   — t          j        t          d¬¦  «        5  t          t	          j        d¦  «        t	          j        d¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz40 degrees provided,©Úmatché(   )ÚpytestÚwarnsÚUserWarningr
   r"   rå   Úonesrš   s    r@   Útest_high_degree_warningz"TestKrogh.test_high_degree_warning:  sœ   € ÝŒ\�+Ð-CÐDÑDÔDð 	:ð 	:Ý�bœi¨™mœm­R¬W°R©[¬[Ñ9Ô9Ð9ð	:ð 	:ð 	:ñ 	:ô 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:øøøð 	:ð 	:ð 	:ð 	:ð 	:ð 	:s   œ5AÁA"Á%A"N)rt   ru   rv   r›   rŸ   r¥   r¬   r®   rµ   r¸   rÅ   rÉ   rË   rØ   rÚ   rÝ   rá   ræ   ré   rì   rò   rú   r  r  r    rB   r@   rŒ   rŒ   œ   sd  € € € € € ð*ð *ð *ðJð Jð JðIð Ið Ið
&ð &ð &ð&ð &ð &ðCð Cð Cð=ð =ð =ð/ð /ð /ð/ð /ð /ðJð Jð Jð
ð 
ð 
ð&ð &ð &ð5ð 5ð 5ðBð Bð Bð6ð 6ð 6ð6ð 6ð 6ðDð Dð DðLð Lð Lð'ð 'ð 'ð3ð 3ð 3ð:ð :ð :ð :ð :rB   rŒ   c                   ó   — e Zd Zd„ ZdS )Ú
TestTaylorc                 óú   — d}t          t          j        d|dd¦  «        }t          |dz   ¦  «        D ]/}t	           |d¦  «        d¦  «         |                     ¦   «         }Œ0t	           |d¦  «        d¦  «         d S )NrD   r   r   é   )r   r"   Úexpr&   r   r¨   )rs   Údegreer‰   r«   s       r@   Útest_exponentialzTestTaylor.test_exponential@  s|   € ØˆÝ)­"¬&°!°V¸QÀÑCÔCˆÝ�v˜a‘x‘”ð 	ð 	ˆAÝ   !¡¤ QÑ'Ô'Ð'Ø—’‘	”	ˆAˆAÝ˜A˜A˜a™DœD Ñ#Ô#Ð#Ð#Ð#rB   N)rt   ru   rv   r  r    rB   r@   r  r  ?  s#   € € € € € ð$ð $ð $ð $ð $rB   r  c                   ó’   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestBarycentricc                 óü   — t           j                             g d¢¦  «        | _        t          j        ddd¦  «        | _        t          j        ddd¦  «        | _        |                      | j        ¦  «        | _        d S rŽ   r’   rš   s    r@   r›   zTestBarycentric.setup_methodJ  sc   € Ýœ×1Ò1Ð2CÐ2CÐ2CÑDÔDˆŒÝ”{ 2 q¨#Ñ.Ô.ˆŒÝ”+˜b ! QÑ'Ô'ˆŒØ—.’. ¤Ñ)Ô)ˆŒˆˆrB   c                 ó¦   — t          | j        | j        ¦  «        }t           || j        ¦  «        |                      | j        ¦  «        ¦  «         d S rW   )r   r˜   r™   r   r—   r•   rž   s     r@   rŸ   zTestBarycentric.test_lagrangeP  sC   € Ý# D¤G¨T¬WÑ5Ô5ˆÝ˜˜˜$œ,™œ¨¯ª¸¼Ñ)EÔ)EÑFÔFÐFÐFÐFrB   c                 ó2  — t          | j        | j        ¦  «        }t           |d¦  «        |                      d¦  «        ¦  «         t           |t          j        d¦  «        ¦  «        |                      t          j        d¦  «        ¦  «        ¦  «         d S r¢   )r   r˜   r™   r   r•   r"   r¤   rž   s     r@   r¥   zTestBarycentric.test_scalarT  ss   € Ý# D¤G¨T¬WÑ5Ô5ˆÝ˜˜˜!™œ˜dŸnšn¨QÑ/Ô/Ñ0Ô0Ð0Ý˜˜�"œ( 1™+œ+™œ¨¯ªµr´xÀ±{´{Ñ(CÔ(CÑDÔDÐDÐDÐDrB   c                 ó   — t          | j        | j        ¦  «        }|                     | j        ¦  «        }t          |j        d         ¦  «        D ]>}t           | j         	                    |¦  «        | j        ¦  «        ||         ¦  «         Œ?d S r§   )
r   r˜   r™   rY   r—   r&   r,   r   r•   r¨   r©   s       r@   r¬   z TestBarycentric.test_derivativesY  s‡   € Ý# D¤G¨T¬WÑ5Ô5ˆØ�MŠM˜$œ,Ñ'Ô'ˆÝ�q”w˜q”zÑ"Ô"ð 	Ið 	IˆAÝÐ3˜DœN×0Ò0°Ñ3Ô3°D´LÑAÔAÀ1ÀQÄ4ÑHÔHÐHÐHð	Ið 	IrB   c                 óP  — t          | j        | j        ¦  «        }|                     | j        t          | j        ¦  «        dz   ¦  «        }t          |j        d         ¦  «        D ]@}t           | j	         
                    |¦  «        | j        ¦  «        ||         d¬¦  «         ŒAd S )Nr   r   çê-�™—q=rõ   )r   r˜   r™   rY   r—   r'   r&   r,   r   r•   r¨   r©   s       r@   r®   z$TestBarycentric.test_low_derivatives_  s¢   € Ý# D¤G¨T¬WÑ5Ô5ˆØ�MŠM˜$œ,­¨D¬G©¬°Q©Ñ7Ô7ˆÝ�q”w˜q”zÑ"Ô"ð 	(ð 	(ˆAÝÐ3˜DœN×0Ò0°Ñ3Ô3°D´LÑAÔAØ˜aœDØ!&ð(ñ (ô (ð (ð (ð	(ð 	(rB   c                 óö   — t          | j        | j        ¦  «        }d}|                     | j        |¦  «        }t          |¦  «        D ]1}t          |                     | j        |¦  «        ||         ¦  «         Œ2d S r°   )r   r˜   r™   rY   r—   r&   r   r^   r²   s        r@   rµ   zTestBarycentric.test_derivativeg  sy   € Ý# D¤G¨T¬WÑ5Ô5ˆØˆØ�MŠM˜$œ,¨Ñ*Ô*ˆÝ�q‘”ð 	Að 	AˆAÝ˜AŸLšL¨¬°qÑ9Ô9¸1¸Q¼4Ñ@Ô@Ð@Ð@ð	Að 	ArB   c           	      óH  — t          | j        | j        ¦  «        }t          t	          | j        ¦  «        dt	          | j        ¦  «        z  ¦  «        D ]O}t          |                     | j        |¦  «        t          j	        t	          | j        ¦  «        ¦  «        ¦  «         ŒPd S )NrD   )
r   r˜   r™   r&   r'   r   r^   r—   r"   r+   r·   s      r@   r¸   z$TestBarycentric.test_high_derivativen  sŒ   € Ý# D¤G¨T¬WÑ5Ô5ˆÝ•s˜4œ7‘|”| Q¥s¨4¬7¡|¤|¡^Ñ4Ô4ð 	9ð 	9ˆAÝ˜AŸLšL¨¬°qÑ9Ô9ÝœH¥S¨¬Ñ%6Ô%6Ñ7Ô7ñ9ô 9ð 9ð 9ð	9ð 	9rB   c                 óÞ  — | j         }t          j                             g d¢¦  «        }t          j                             g d¢¦  «        }t          j         || j        ¦  «         || j        ¦  «         || j        ¦  «        fd¬¦  «        }t          | j        |d¬¦  «        }|                     | j        ¦  «        }t          |j
        d         ¦  «        D ]”}t          ||         t          j         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «        fd¬¦  «        d¬¦  «         Œ•d S ©Nr»   r¼   r   rH   r   r  rõ   )r•   r"   r“   r”   rÀ   r˜   r   rY   r—   r&   r,   r   r¨   rÁ   s           r@   rÅ   z%TestBarycentric.test_ndim_derivativest  sW  € Ø”ˆÝ”×(Ò(¨¨¨Ñ8Ô8ˆÝ”×(Ò(Ð);Ð);Ð);Ñ<Ô<ˆÝŒX�u�u˜TœW‘~”~ u u¨T¬W¡~¤~°u°u¸T¼W±~´~ÐFÈRÐPÑPÔPˆå# D¤G¨R°aÐ8Ñ8Ô8ˆØ�MŠM˜$œ,Ñ'Ô'ˆÝ�q”w˜q”zÑ"Ô"ð 	(ð 	(ˆAÝ˜A˜aœDÝœH n e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&Bð&Dð +-ð.ñ .ô .ð "'ð(ñ (ô (ð (ð (ð	(ð 	(rB   c                 óÄ  — | j         }t          j                             g d¢¦  «        }t          j                             g d¢¦  «        }t          j         || j        ¦  «         || j        ¦  «         || j        ¦  «        fd¬¦  «        }t          | j        |d¬¦  «        }t          |j        ¦  «        D ]§}t          | 
                    | j        |¦  «        t          j         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «         |                     |¦  «        | j        ¦  «        fd¬¦  «        d¬¦  «         Œ¨d S r  )r•   r"   r“   r”   rÀ   r˜   r   r&   rÇ   r   r^   r—   r¨   rÈ   s          r@   rÉ   z$TestBarycentric.test_ndim_derivative„  sJ  € Ø”ˆÝ”×(Ò(¨¨¨Ñ8Ô8ˆÝ”×(Ò(Ð);Ð);Ð);Ñ<Ô<ˆÝŒX�u�u˜TœW‘~”~ u u¨T¬W¡~¤~°u°u¸T¼W±~´~ÐFÈRÐPÑPÔPˆå# D¤G¨R°aÐ8Ñ8Ô8ˆÝ�q”s‘”ð 	(ð 	(ˆAÝ˜AŸLšL¨¬°qÑ9Ô9ÝœH n e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&BØ&4 e§k¢k°!¡n¤n°T´\Ñ&BÔ&Bð&Dð +-ð.ñ .ô .ð "'ð(ñ (ô (ð (ð (ð	(ð 	(rB   c                 óÎ   — t          | j        ¦  «        }|                     | j        ¦  «         t	          |                      | j        ¦  «         || j        ¦  «        ¦  «         d S rW   )r   r˜   Úset_yir™   r   r•   r—   rž   s     r@   Útest_delayedzTestBarycentric.test_delayed“  sS   € Ý# D¤GÑ,Ô,ˆØ	�Š�”ÑÔÐÝ˜DŸNšN¨4¬<Ñ8Ô8¸!¸!¸D¼L¹/¼/ÑJÔJÐJÐJÐJrB   c                 ó&  — t          | j        d d…         | j        d d…         ¦  «        }|                     | j        dd …         | j        dd …         ¦  «         t	          |                      | j        ¦  «         || j        ¦  «        ¦  «         d S )Nr   )r   r˜   r™   Úadd_xir   r•   r—   rž   s     r@   Útest_appendzTestBarycentric.test_append˜  s{   € Ý# D¤G¨B¨Q¨B¤K°´¸¸!¸´Ñ=Ô=ˆØ	�Š�”˜˜˜”˜dœg a b bœkÑ*Ô*Ð*Ý˜DŸNšN¨4¬<Ñ8Ô8¸!¸!¸D¼L¹/¼/ÑJÔJÐJÐJÐJrB   c                 ój  ‡‡‡‡— g d¢Št          j        ddgddgddgg¦  «        Št          Š ‰‰‰¦  «        }ˆˆˆfd„t          ‰j        d         ¦  «        D ¦   «         }t          j        ddd¦  «        Št           |‰¦  «        t          j        ˆfd	„|D ¦   «         ¦  «        j        ¦  «         d S )
NrÍ   r   r   r   c                 ó<   •— g | ]} ‰‰‰d d …|f         ¦  «        ‘ŒS rW   r    )rÏ   r«   ÚBIr˜   r™   s     €€€r@   rÐ   z/TestBarycentric.test_vector.<locals>.<listcomp>¢  s1   ø€ Ð;Ð;Ð; 1ˆbˆb��R˜˜˜˜1˜”XÑÔÐ;Ð;Ð;rB   r   r   r‘   c                 ó&   •— g | ]} |‰¦  «        ‘ŒS r    r    rÒ   s     €r@   rÐ   z/TestBarycentric.test_vector.<locals>.<listcomp>¥  rÓ   rB   )	r"   r¤   r   r&   r,   r–   r   rÕ   rÖ   )rs   rw   r×   r(  r—   r˜   r™   s      @@@@r@   rØ   zTestBarycentric.test_vector�  sÕ   øøøø€ ØˆYˆYˆÝŒX˜˜1�v  1˜v¨¨1 vÐ.Ñ/Ô/ˆÝ$ˆØˆBˆr�2‰JŒJˆØ;Ð;Ð;Ð;Ð;Ð;­¨b¬h°q¬kÑ(:Ô(:Ð;Ñ;Ô;ˆÝ”+˜b ! SÑ)Ô)ˆÝ˜A˜A˜g™JœJÝœJÐ'?Ð'?Ð'?Ð'?¸BÐ'?Ñ'?Ô'?Ñ@Ô@ÔBñ	Dô 	Dð 	Dð 	Dð 	DrB   c           	      ó¼  — t          | j        | j        ¦  «        }t          t	          j         |d¦  «        ¦  «        d¦  «         t          t	          j         |t	          j        d¦  «        ¦  «        ¦  «        d¦  «         t          t	          j         |dg¦  «        ¦  «        d¦  «         t          t	          j         |ddg¦  «        ¦  «        d¦  «         d S rÜ   )r   r˜   r™   r   r"   r,   r¤   rž   s     r@   rÝ   z'TestBarycentric.test_shapes_scalarvalue§  s¯   € Ý# D¤G¨T¬WÑ5Ô5ˆÝ�2œ8 A A a¡D¤D™>œ>¨2Ñ.Ô.Ð.Ý�2œ8 A A¥b¤h¨q¡k¤k¡N¤NÑ3Ô3°RÑ8Ô8Ð8Ý�2œ8 A A q c¡F¤FÑ+Ô+¨TÑ2Ô2Ð2Ý�2œ8 A A q¨! f¡I¤IÑ.Ô.°Ñ5Ô5Ð5Ð5Ð5rB   c           	      ó&  — t          | j        | j        ¦  «        }|j        }t	          t          j        |                     d¦  «        ¦  «        |f¦  «         t	          t          j        |                     t          j        d¦  «        ¦  «        ¦  «        |f¦  «         t	          t          j        |                     dg¦  «        ¦  «        |df¦  «         t	          t          j        |                     ddg¦  «        ¦  «        |df¦  «         d S rß   )	r   r˜   r™   rÇ   r   r"   r,   rY   r¤   rà   s      r@   rá   z2TestBarycentric.test_shapes_scalarvalue_derivative®  sÔ   € Ý# D¤G¨D¬GÑ4Ô4ˆØŒCˆÝ�2œ8 A§M¢M°!Ñ$4Ô$4Ñ5Ô5¸°tÑ<Ô<Ð<Ý�2œ8 A§M¢Mµ"´(¸1±+´+Ñ$>Ô$>Ñ?Ô?À!ÀÑFÔFÐFÝ�2œ8 A§M¢M°1°#Ñ$6Ô$6Ñ7Ô7¸!¸A¸Ñ?Ô?Ð?Ý�2œ8 A§M¢M°1°Q°%Ñ$8Ô$8Ñ9Ô9¸A¸a¸5ÑAÔAÐAÐAÐArB   c           	      óŒ  — t          | j        t          j        | j        t          j        d¦  «        ¦  «        ¦  «        }t          t          j         |d¦  «        ¦  «        d¦  «         t          t          j         |dg¦  «        ¦  «        d¦  «         t          t          j         |ddg¦  «        ¦  «        d¦  «         d S rã   )r   r˜   r"   rä   r™   rå   r   r,   rž   s     r@   ræ   z'TestBarycentric.test_shapes_vectorvalue¶  s™   € Ý# D¤G­R¬X°d´g½r¼yÈ¹|¼|Ñ-LÔ-LÑMÔMˆÝ�2œ8 A A a¡D¤D™>œ>¨4Ñ0Ô0Ð0Ý�2œ8 A A q c¡F¤FÑ+Ô+¨VÑ4Ô4Ð4Ý�2œ8 A A q¨! f¡I¤IÑ.Ô.°Ñ7Ô7Ð7Ð7Ð7rB   c                 ój  — t          | j        t          j        | j        dg¦  «        ¦  «        }t          t          j         |d¦  «        ¦  «        d¦  «         t          t          j         |dg¦  «        ¦  «        d¦  «         t          t          j         |ddg¦  «        ¦  «        d¦  «         d S rè   )r   r˜   r"   rä   r™   r   r,   rž   s     r@   ré   z*TestBarycentric.test_shapes_1d_vectorvalue¼  s“   € Ý# D¤G­R¬X°d´gÀ¸sÑ-CÔ-CÑDÔDˆÝ�2œ8 A A a¡D¤D™>œ>¨4Ñ0Ô0Ð0Ý�2œ8 A A q c¡F¤FÑ+Ô+¨VÑ4Ô4Ð4Ý�2œ8 A A q¨ e¡H¤HÑ-Ô-¨vÑ6Ô6Ð6Ð6Ð6rB   c           	      óæ  — t          | j        t          j        | j        t          j        d¦  «        ¦  «        ¦  «        }|j        }t          t          j        | 	                    d¦  «        ¦  «        |df¦  «         t          t          j        | 	                    dg¦  «        ¦  «        |ddf¦  «         t          t          j        | 	                    ddg¦  «        ¦  «        |ddf¦  «         d S rë   )
r   r˜   r"   rä   r™   rå   rÇ   r   r,   rY   rà   s      r@   rì   z2TestBarycentric.test_shapes_vectorvalue_derivativeÂ  s¾   € Ý# D¤G­B¬H°T´W½R¼YÀq¹\¼\Ñ,JÔ,JÑKÔKˆØŒCˆÝ�2œ8 A§M¢M°!Ñ$4Ô$4Ñ5Ô5¸¸!°uÑ=Ô=Ð=Ý�2œ8 A§M¢M°1°#Ñ$6Ô$6Ñ7Ô7¸!¸A¸a¸ÑAÔAÐAÝ�2œ8 A§M¢M°1°Q°%Ñ$8Ô$8Ñ9Ô9¸A¸aÀ¸7ÑCÔCÐCÐCÐCrB   c           
      óÐ  — t          | j        | j        ¦  «        }t          }t	           || j        ¦  «         || j        | j        | j        ¦  «        ¦  «         t	          |                     | j        d¦  «         || j        | j        | j        d¬¦  «        ¦  «         t	          |                     | j        d¦  «         || j        | j        | j        ddg¬¦  «        ¦  «         d S rî   )r   r˜   r™   r   r   r—   r^   rY   )rs   rw   Úbis      r@   rò   zTestBarycentric.test_wrapperÉ  sÞ   € Ý# D¤G¨T¬WÑ5Ô5ˆÝ$ˆÝ˜˜˜$œ,™œ¨¨¨D¬G°T´W¸d¼lÑ)KÔ)KÑLÔLÐLÝ˜Ÿš T¤\°1Ñ5Ô5Ø˜B˜tœw¨¬°´À1ÐEÑEÔEñ	Gô 	Gð 	Gå˜Ÿš d¤l°AÑ6Ô6Ø˜B˜tœw¨¬°´ÀAÀqÀ6ÐJÑJÔJñ	Lô 	Lð 	Lð 	Lð 	LrB   c                 ó¢   — dt          j        dd¦  «        z  }t          j        dd¦  «        }t          ||d¦  «        }t          |d¦  «         d S )Niè  r   é   g     ŽÂ@g      #@)r"   rå   r   r   )rs   r7   r9   Úvalues       r@   Útest_int_inputzTestBarycentric.test_int_inputÒ  sP   € Ø•2”9˜Q Ñ#Ô#Ñ#ˆÝŒI�a˜ÑÔˆÝ'¨¨1¨jÑ9Ô9ˆÝ˜E 3Ñ'Ô'Ð'Ð'Ð'rB   c                 ór  — d}t          j        |dz   ¦  «                             t           j        ¦  «        }t          j        |t           j        z  |z  ¦  «        }d|z  }|dxx         dz  cc<   |dxx         dz  cc<   t          |¦  «        }|j        d         }t          |j        d|z  z  |¦  «         d S )NiL  r   r   r   ç      à?r   )	r"   rå   ÚastypeÚfloat64ÚcosÚpir   Úwir   )rs   rÇ   Újr7   Úwrw   Úfactors          r@   Útest_large_chebyshevz$TestBarycentric.test_large_chebyshevØ  sµ   € ð ˆÝŒI�a˜!‘eÑÔ×#Ò#¥B¤JÑ/Ô/ˆÝŒF�1•r”u‘9˜q‘=Ñ!Ô!ˆð �A‰IˆØ	ˆ!ˆˆŒ�‰ˆˆ‰Ø	ˆ"ˆˆŒ�‰ˆˆ‰å# AÑ&Ô&ˆð ”�a”ˆÝ˜AœD A¨¡JÑ/°Ñ3Ô3Ð3Ð3Ð3rB   c                 óö   — t          ddgddg¦  «        }t          j        d¬¦  «        5   ||j        ¦  «        }d d d ¦  «         n# 1 swxY w Y   t	          ||j                             ¦   «         ¦  «         d S )Nr   r   r   Úraise)Údivide)r   r"   Úerrstater:   r   r<   Úravel)rs   rw   r<   s      r@   Útest_warningzTestBarycentric.test_warningñ  s´   € õ $ Q¨ F¨Q°¨FÑ3Ô3ˆÝŒ[ Ð(Ñ(Ô(ð 	ð 	Ø��1”4‘”ˆBð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 	˜B ¤§
¢
¡¤Ñ-Ô-Ð-Ð-Ð-s   ªAÁAÁAc                 óæ   — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        t          d¬¦  «        5  t          ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)çš™™™™™¹?r6  çÍÌÌÌÌÌì?r6  r‡   z)Interpolation points xi must be distinct.r  )r"   r¤   r  r	   Ú
ValueErrorr   )rs   Úxisr™   s      r@   Útest_repeated_nodez"TestBarycentric.test_repeated_nodeü  sÀ   € õ ŒhÐ+Ð+Ð+Ñ,Ô,ˆÝŒX�l�l�lÑ#Ô#ˆÝŒ]�:Ø!LðNñ Nô Nð 	-ð 	-å# C¨Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   ÁA&Á&A*Á-A*N)rt   ru   rv   r›   rŸ   r¥   r¬   r®   rµ   r¸   rÅ   rÉ   r"  r%  rØ   rÝ   rá   ræ   ré   rì   rò   r4  r?  rE  rK  r    rB   r@   r  r  I  s|  € € € € € ð*ð *ð *ðGð Gð GðEð Eð Eð
Ið Ið Ið(ð (ð (ðAð Að Að9ð 9ð 9ð(ð (ð (ð (ð (ð (ðKð Kð Kð
Kð Kð Kð
Dð Dð Dð6ð 6ð 6ðBð Bð Bð8ð 8ð 8ð7ð 7ð 7ðDð Dð DðLð Lð Lð(ð (ð (ð4ð 4ð 4ð2	.ð 	.ð 	.ð-ð -ð -ð -ð -rB   r  c                   óL   — e Zd Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ ZdS )Ú	TestPCHIPé   c                 ó  — t           j                             d¦  «         t          j        t           j                             |¦  «        ¦  «        }t           j                             |¦  «        }t	          ||¦  «        ||fS )Nr   )r"   r#   r$   Úsortr   )rs   Únptsr:   r<   s       r@   Ú_make_randomzTestPCHIP._make_random  s_   € Ý
Œ	�Š�tÑÔÐÝŒW•R”Y×%Ò% dÑ+Ô+Ñ,Ô,ˆÝŒY×Ò˜dÑ#Ô#ˆÝ�R˜‰}Œ}˜b "Ð$Ð$rB   c                 ó€  — |                       ¦   «         \  }}}t          t          |¦  «        dz
  ¦  «        D ]…}||         ||dz            }}||         ||dz            }}||k    r||}}t          j        ||d¦  «        }	 ||	¦  «        }
t          ||
dz   k    |
|dz   k    z                       ¦   «         ¦  «         Œ†d S )Nr   r±   rü   ©rR  r&   r'   r"   r–   r   Úall©rs   r‰   r:   r<   r«   Úx1Úx2Úy1Úy2ÚxpÚyps              r@   Útest_overshootzTestPCHIP.test_overshoot  sØ   € à×%Ò%Ñ'Ô'‰	ˆˆ2ˆrÝ•s˜2‘w”w˜q‘yÑ!Ô!ð 	Eð 	EˆAØ˜”U˜B˜q ™sœG�ˆBØ˜”U˜B˜q ™sœG�ˆBØ�BŠwˆwØ˜R�B�Ý”˜R  RÑ(Ô(ˆBØ��2‘”ˆBÝ�b˜B ™JÒ&¨2°°e±Ò+;Ñ<×AÒAÑCÔCÑDÔDÐDÐDð	Eð 	ErB   c                 ó„  — |                       ¦   «         \  }}}t          t          |¦  «        dz
  ¦  «        D ]‡}||         ||dz            }}||         ||dz            }}t          j        ||d¦  «        }	 ||	¦  «        }
t          ||z
  |
dd …         |
d d…         z
  z  dk                         ¦   «         ¦  «         Œˆd S )Nr   r±   r   rT  rV  s              r@   Útest_monotonezTestPCHIP.test_monotone  sÍ   € à×%Ò%Ñ'Ô'‰	ˆˆ2ˆrÝ•s˜2‘w”w˜q‘yÑ!Ô!ð 	=ð 	=ˆAØ˜”U˜B˜q ™sœG�ˆBØ˜”U˜B˜q ™sœG�ˆBÝ”˜R  RÑ(Ô(ˆBØ��2‘”ˆBÝ�b˜‘e  1 2 2¤¨¨B¨Q¨B¬¡Ñ0°1Ò4×9Ò9Ñ;Ô;Ñ<Ô<Ð<Ð<ð	=ð 	=rB   c                 ó&  — t          j        g d¢g d¢g¦  «        }t          j        d¦  «        } t          |d         |d         ¦  «        |¦  «        }|dz  } t          |d         |d         ¦  «        |¦  «        }t	          ||dd¬¦  «         d S )	N)
r   r   r½   é   é/   é<   éO   éW   éc   r‘   )
éßÿÿÿrg  iíÿÿÿr�   r½   é   é&   é-   é5   é7   r‘   r   r   ç      ð?ç›+¡†›„=)rö   Úrtol)r"   r¤   rå   r   r   )rs   ÚdataÚxxÚcurveÚdata1Úcurve1s         r@   Ú	test_castzTestPCHIP.test_cast#  s¢   € åŒxÐ@Ð@Ð@ØDÐDÐDðFñ Gô GˆåŒY�s‰^Œ^ˆØ'•�d˜1”g˜t AœwÑ'Ô'¨Ñ+Ô+ˆà�s‘
ˆØ*•�u˜Q”x  q¤Ñ*Ô*¨2Ñ.Ô.ˆå˜˜v¨E¸Ð>Ñ>Ô>Ð>Ð>Ð>rB   c                 óN  — d}t          j        t          j        |¦  «        ¦  «        }t	          |d d …df         |d d …df         ¦  «        }d}t          j        t          j        |¦  «        ¦  «        }t          |d d …df          ||d d …df         ¦  «        dd¬¦  «         d S )Na  
          7.99   0.00000E+0
          8.09   0.27643E-4
          8.19   0.43750E-1
          8.70   0.16918E+0
          9.20   0.46943E+0
         10.00   0.94374E+0
         12.00   0.99864E+0
         15.00   0.99992E+0
         20.00   0.99999E+0
        r   r   a^  
           7.9900       0.0000
           9.1910       0.4640
          10.3920       0.9645
          11.5930       0.9965
          12.7940       0.9992
          13.9950       0.9998
          15.1960       0.9999
          16.3970       1.0000
          17.5980       1.0000
          18.7990       1.0000
          20.0000       1.0000
        ç        g-Cëâ6
?©ro  rö   )r"   ÚloadtxtÚioÚStringIOr   r   )rs   ÚdataStrrp  ÚpchÚ	resultStrÚresults         r@   Útest_nagzTestPCHIP.test_nag/  s¬   € ð

ˆõ Œz�"œ+ gÑ.Ô.Ñ/Ô/ˆÝ�D˜˜˜˜1˜”I˜t A A A a CœyÑ)Ô)ˆðˆ	õ ”�BœK¨	Ñ2Ô2Ñ3Ô3ˆÝ˜˜q˜q˜q ˜sœ S S¨°°°°!°¬Ñ%5Ô%5¸BÀTÐJÑJÔJÐJÐJÐJrB   c                 ó0  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          ||¦  «        t          ||¦  «        fD ]2}|d         |d         fD ]}t           ||d¦  «        dk    ¦  «         Œ Œ3d S )N)rw  rG  g      Ð?gffffffÖ?)çš™™™™uq@g     @@ç     @�@ç     ˆ£@)r‚  r„  g     p—@rƒ  r   r   r   )r"   r¤   r   r   )rs   r7   rY  rZ  ÚppÚts         r@   Útest_endslopeszTestPCHIP.test_endslopesR  s³   € õ ŒHÐ+Ð+Ð+Ñ,Ô,ˆÝŒXÐ3Ð3Ð3Ñ4Ô4ˆÝŒXÐ4Ð4Ð4Ñ5Ô5ˆÝ˜˜B‘<”<¥ q¨"¡¤Ð.ð 	'ð 	'ˆBØ˜”d˜A˜bœE�]ð 'ð '�Ý˜˜˜1˜a™œ AšÑ&Ô&Ð&Ð&ð'ð	'ð 	'rB   c                 óR  — t          j        d¦  «        }t          j        |¦  «        }t          j        ¦   «         5  t          j        d¦  «         t          ||¦  «        }d d d ¦  «         n# 1 swxY w Y   t          j        ddd¦  «        }t           ||¦  «        d¦  «         d S )Nr±   Úerrorr   é	   ée   rw  )	r"   rå   Ú
zeros_likeÚwarningsÚcatch_warningsÚfilterwarningsr   r–   r   )rs   r7   r9   r}  rq  s        r@   Útest_all_zeroszTestPCHIP.test_all_zeros\  sÕ   € ÝŒI�b‰MŒMˆÝŒM˜!ÑÔˆõ Ô$Ñ&Ô&ð 	ð 	ÝÔ# GÑ,Ô,Ð,Ý˜˜1‘+”+ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ[˜˜A˜sÑ#Ô#ˆÝ�S�S˜‘W”W˜bÑ!Ô!Ð!Ð!Ð!s   ¼%A-Á-A1Á4A1c                 ó–   — t          j        ddd¦  «        }t          ddgddg¦  «        }t           ||¦  «        d|z  d¬¦  «         d S )Nr   r   r2  r   rü   rõ   )r"   r–   r   r   )rs   r7   r‰   s      r@   Útest_two_pointszTestPCHIP.test_two_pointsh  sU   € õ
 ŒK˜˜1˜bÑ!Ô!ˆÝ�1�a�&˜1˜a˜&Ñ!Ô!ˆÝ˜˜˜!™œ˜a ™c¨Ð.Ñ.Ô.Ð.Ð.Ð.rB   c           	      óú   — t          t          g d¢g d¢dgd¬¦  «        dg¦  «         t          t          g d¢g d¢dgd¬¦  «        dg¦  «         t          t          g d¢g d¢dgddg¬¦  «        dgdgg¦  «         d S )	N©r   r   r   )r   rD   r   r6  r   rï   rm  r   g      @)r   r   rš   s    r@   Útest_pchip_interpolatez TestPCHIP.test_pchip_interpolateq  s¹   € Ý!Ý˜g˜g˜g w w w°°¸1Ð=Ñ=Ô=ØˆDñ	ô 	ð 	õ 	"Ý˜g˜g˜g w w w°°¸1Ð=Ñ=Ô=ØˆEñ	ô 	ð 	õ 	"Ý˜g˜g˜g w w w°°¸A¸q¸6ÐBÑBÔBØˆU�Q�CˆLñ	ô 	ð 	ð 	ð 	rB   c                 óv   — t          ddgddg¦  «        }|                     ¦   «         }t          |d¦  «         d S )Nr   r   r   r6  )r   Úrootsr   )rs   r‰   r´   s      r@   Ú
test_rootszTestPCHIP.test_roots~  s<   € å�1�a�&˜2˜q˜'Ñ"Ô"ˆØ�GŠG‰IŒIˆÝ˜˜3ÑÔÐÐÐrB   N)rN  )rt   ru   rv   rR  r]  r_  ru  r€  r‡  r�  r’  r•  r˜  r    rB   r@   rM  rM    s¶   € € € € € ð%ð %ð %ð %ð
Eð 
Eð 
Eð=ð =ð =ð
?ð 
?ð 
?ð!Kð !Kð !KðF'ð 'ð 'ð
"ð 
"ð 
"ð/ð /ð /ðð ð ð ð  ð  ð  ð  rB   rM  c                   óf   — e Zd Ze	 	 dd„¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ ZdS )ÚTestCubicSplineú
not-a-knotrn  c           	      ó:  — | j         }| j        }t          j        |¦  «        }|                     |j        d         gdg|j        dz
  z  z   ¦  «        }|dd…         }t          |ddd…f         |ddd…f         |dz  z  |ddd…f         |dz  z  z   |ddd…f         |z  z   |ddd…f         z   ||¬¦  «         t          |ddd…f         d|ddd…f         z  |dz  z  d|ddd…f         z  |z  z   |ddd…f         z   ||¬¦  «         t          |ddd…f         d|ddd…f         z  |z  |ddd…f         z   ||¬¦  «         |j        dk    r'|dk    r!|dk    rt          |d         d||¬¦  «         dS |d	k    r›t           | |d         d¦  «         | |d         d¦  «        ||¬¦  «         t           | |d         d¦  «         | |d         d¦  «        ||¬¦  «         t           | |d         d¦  «         | |d         d¦  «        ||¬¦  «         dS |dk    r{|j        dk    rP | |d         ¦  «         | |d         ¦  «        z
  |d         z  }t           | |d         d¦  «        |||¬¦  «         nœt          |d
         |d         ||¬¦  «         n||dk    r$t           | |d         d¦  «        d||¬¦  «         nR|dk    r$t           | |d         d¦  «        d||¬¦  «         n(|\  }	}
t           | |d         |	¦  «        |
||¬¦  «         |dk    r}|j        dk    rQ | |d         ¦  «         | |d         ¦  «        z
  |d         z  }t           | |d         d¦  «        |||¬¦  «         dS t          |d         |d         ||¬¦  «         dS |dk    r%t           | |d         d¦  «        d||¬¦  «         dS |dk    r+t           | |d         d¦  «        dd|z  d|z  ¬¦  «         dS |\  }	}
t           | |d         |	¦  «        |
||¬¦  «         dS )zVCheck that spline coefficients satisfy the continuity and boundary
        conditions.r   r   r   Nr   r   rx  r›  Úperiodic)r   r   )r   r   rL   rK   )r   r   )r   r�   )	r7   Úcr"   Údiffr0   r,   r/   r   r-   )ÚSÚbc_startÚbc_endÚtolr7   rž  ÚdxÚdxiÚslopeÚorderr3  s              r@   Úcheck_correctnessz!TestCubicSpline.check_correctness†  sö  € ð
 ŒCˆØŒCˆÝŒW�Q‰ZŒZˆØ�ZŠZ˜œ !œ˜¨¨¨q¬v¸©zÑ(:Ñ:Ñ;Ô;ˆØ��"�Œgˆõ 	˜˜!˜Q˜R˜R˜%œ ! A s¨ s F¤)¨c°1©fÑ"4°q¸¸C¸R¸C¸´yÀ3ÈÁ6Ñ7IÑ"IØ˜!˜S˜b˜S˜&œ	 C™ñ#(Ø*+¨A¨s°¨s¨F¬)ñ#4Ø:=ÀCð	Iñ 	Iô 	Ið 	Iå˜˜!˜Q˜R˜R˜%œ ! a¨¨3¨B¨3¨¤i¡-°#°q±&Ñ"8Ø˜A˜a  " ˜fœI™¨Ñ+ñ#,Ø./°°3°B°3°¬iñ#8Ø>AÈð	Mñ 	Mô 	Mð 	Må˜˜!˜Q˜R˜R˜%œ ! a¨¨3¨B¨3¨¤i¡-°#Ñ"5¸¸!¸S¸b¸S¸&¼	Ñ"AØ  sð	,ñ 	,ô 	,ð 	,ð Œ6�QŠ;ˆ;˜8 |Ò3Ð3¸À,Ò8NÐ8NÝ˜A˜aœD !¨#°CÐ8Ñ8Ô8Ð8ØˆFð �zÒ!Ð!Ý˜A˜A˜a œd A™JœJ¨¨¨!¨B¬%°©¬¸#ÀCÐHÑHÔHÐHÝ˜A˜A˜a œd A™JœJ¨¨¨!¨B¬%°©¬¸#ÀCÐHÑHÔHÐHÝ˜A˜A˜a œd A™JœJ¨¨¨!¨B¬%°©¬¸#ÀCÐHÑHÔHÐHØˆFð �|Ò#Ð#ØŒv˜Š{ˆ{Ø˜˜1˜Qœ4™œ 1 1 Q q¤T¡7¤7Ñ*¨b°¬eÑ3�Ý   ! A¤$¨¡
¤
¨E¸À#ÐFÑFÔFÐFÐFå  $¤¨¨4¬°sÀÐEÑEÔEÐEÐEØ˜Ò"Ð"Ý˜A˜A˜a œd A™JœJ¨°¸#Ð>Ñ>Ô>Ð>Ð>Ø˜Ò"Ð"Ý˜A˜A˜a œd A™JœJ¨°¸#Ð>Ñ>Ô>Ð>Ð>à#‰LˆE�5Ý˜A˜A˜a œd E™NœN¨E¸À#ÐFÑFÔFÐFà�\Ò!Ð!ØŒv˜Š{ˆ{Ø˜˜1˜Qœ4™œ 1 1 Q q¤T¡7¤7Ñ*¨b°¬eÑ3�Ý   ! A¤$¨¡
¤
¨E¸À#ÐFÑFÔFÐFÐFÐFå  %¤¨!¨E¬(¸À3ÐGÑGÔGÐGÐGÐGØ�yÒ Ð Ý˜A˜A˜a œe Q™KœK¨°¸3Ð?Ñ?Ô?Ð?Ð?Ð?Ø�yÒ Ð Ý˜A˜A˜a œe Q™KœK¨°°3±¸Q¸s¹UÐCÑCÔCÐCÐCÐCà!‰LˆE�5Ý˜A˜A˜a œe U™OœO¨U¸À3ÐGÑGÔGÐGÐGÐGrB   c           	      óÌ  — t          |j        ¦  «        }||= t          j        |¦  «        }|                     d¦  «         t          j        |¦  «        }|                     d¦  «         dddd|fd|fg}|d d…         D ],}t          ||||¬¦  «        }	|                      |	||¦  «         Œ-|D ]5}
|D ]0}t          ||||
|f¬¦  «        }	|                      |	|
|d	¬
¦  «         Œ1Œ6d S )Nr   r   r›  rK   rL   r   r   ©r   rM   g›+¡†›„=©r£  )r%   r,   r"   ÚemptyÚfillr   r¨  )rs   r7   r9   r   r5   Úfirst_derivÚsecond_derivÚbc_allrR   r   r¡  r¢  s               r@   Úcheck_all_bczTestCubicSpline.check_all_bcÂ  s6  € Ý˜1œ7‘m”mˆØ˜ÐÝ”h˜{Ñ+Ô+ˆØ×Ò˜ÑÔÐÝ”x Ñ,Ô,ˆØ×Ò˜"ÑÔÐàØØØ�ÐØ�Ðð
ˆð ˜˜!˜”*ð 	.ð 	.ˆBÝ˜A˜q t°RÐ8Ñ8Ô8ˆAØ×"Ò" 1 b¨"Ñ-Ô-Ð-Ð-àð 	Gð 	GˆHØ ð Gð G�Ý  1¨4¸(ÀFÐ9KÐLÑLÔL�Ø×&Ò& q¨(°FÀÐ&ÑFÔFÐFÐFðGð	Gð 	GrB   c                 óÔ  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }dd|j        fD ]°}|                      |d |…         |d |…         d¦  «         t          j        d|df¦  «        }|d |…         |dd d …df<   |d |…         dz
  |dd d …df<   |d |…         dz   |dd d …df<   |d |…         dz   |dd d …df<   |                      |d |…         |d¦  «         Œ±d S )N)r   r   r6  r   r   g      @g      @rŠ  )r   g      à¿r   r   g      @r   r   r6  r   r   r   r   )r"   r¤   r-   r±  r¬  )rs   r7   r9   rÇ   ÚYs        r@   Útest_generalzTestCubicSpline.test_generalÙ  s'  € ÝŒHÐ4Ð4Ð4Ñ5Ô5ˆÝŒHÐ4Ð4Ð4Ñ5Ô5ˆØ�Q˜œ�ð 	+ð 	+ˆAØ×Ò˜a   œe Q r¨ r¤U¨AÑ.Ô.Ð.å”˜!˜Q ˜Ñ#Ô#ˆAØ˜2˜A˜2œˆAˆa����Aˆg‰JØ˜2˜A˜2œ ™ˆAˆa����Aˆg‰JØ˜2˜A˜2œ ™ˆAˆa����Aˆg‰JØ˜2˜A˜2œ ™ˆAˆa����Aˆg‰JØ×Ò˜a   œe Q¨Ñ*Ô*Ð*Ð*ð	+ð 	+rB   c                 ó´  — dD ]Ô}t          j        ddt           j        z  |¦  «        }t          j        |¦  «        }t	          ||d¬¦  «        }|                      |dd¦  «         t          j        d|df¦  «        }||dd d …df<   |dz   |dd d …df<   |dz
  |dd d …df<   |dz   |dd d …df<   t	          ||dd¬¦  «        }|                      |dd¦  «         ŒÕd S )	N)r   r   rD   r   r   r�  ©rM   r   rD   rª  )r"   r–   r:  r9  r   r¨  r¬  )rs   rÇ   r7   r9   r   r³  s         r@   Útest_periodiczTestCubicSpline.test_periodicæ  s  € Øð 	>ð 	>ˆAÝ”˜A˜q¥2¤5™y¨!Ñ,Ô,ˆAÝ”�q‘	”	ˆAÝ˜A˜q¨*Ð5Ñ5Ô5ˆAØ×"Ò" 1 j°*Ñ=Ô=Ð=å”˜!˜Q ˜Ñ#Ô#ˆAØˆAˆa����Aˆg‰JØ˜Q™ˆAˆa����Aˆg‰JØ˜Q™ˆAˆa����Aˆg‰JØ˜Q™ˆAˆa����Aˆg‰JÝ˜A˜q q°*Ð=Ñ=Ô=ˆAØ×"Ò" 1 j°*Ñ=Ô=Ð=Ð=ð	>ð 	>rB   c                 ó   — t          j        ddt           j        z  d¦  «        }t          j        |¦  «        }t	          ||d¬¦  «        }t           |d¦  «         |ddt           j        z  z   ¦  «        d¬¦  «         d S )	Nr   r   r±   r�  r¶  r   r  )Údecimal)r"   r–   r:  r9  r   r   ©rs   r7   r9   r   s       r@   Útest_periodic_evalz"TestCubicSpline.test_periodic_evalõ  ss   € ÝŒK˜˜1�rœu™9 bÑ)Ô)ˆÝŒF�1‰IŒIˆÝ˜˜1 jÐ1Ñ1Ô1ˆÝ˜A˜A˜a™DœD ! ! A¨­B¬E©	¡MÑ"2Ô"2¸BÐ?Ñ?Ô?Ð?Ð?Ð?rB   c                 ó²   — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          ||dd¬¦  «        }|                      |dd¦  «         d S )N)rH  çÍÌÌÌÌÌô?gffffffþ?çÍÌÌÌÌÌ @çÍÌÌÌÌÌ@ç      @g333333@gš™™™™™@gÍÌÌÌÌÌ@g      @g      @g      @g       @gffffff"@g      %@gš™™™™™&@g333333'@g      (@g333333)@g      *@gš™™™™™*@)r½  g      ø?gš™™™™™ý?r¾  r¿  gš™™™™™@g333333@g333333@gffffff @r¾  ç      @gffffff@rÁ  g333333ÿ?gffffffö?rH  gffffffæ?g333333ã?r6  gš™™™™™Ù?r½  r�  )rM   Úextrapolate)r"   r¤   r   r¨  rº  s       r@   Ú*test_second_derivative_continuity_gh_11758z:TestCubicSpline.test_second_derivative_continuity_gh_11758û  s€   € åŒHð Oð Oð Oñ Pô PˆåŒHð Pð Pð Pñ Qô Qˆå˜˜1 j¸jÐIÑIÔIˆØ×Ò˜q *¨jÑ9Ô9Ð9Ð9Ð9rB   c                 ó0  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          ||d¬¦  «        }|                      |dd¦  «         t	           |                     d¦  «        |¦  «        t          j        g d¢¦  «        ¦  «         d S )N)rm  g      @rÀ  )rm  g      .@rm  r�  r¶  r   )ç      HÀrÅ  rÅ  )r"   r¤   r   r¨  r   r^   rº  s       r@   Útest_three_pointsz!TestCubicSpline.test_three_points  s—   € õ ŒHÐ%Ð%Ð%Ñ&Ô&ˆÝŒHÐ%Ð%Ð%Ñ&Ô&ˆÝ˜˜1 jÐ1Ñ1Ô1ˆØ×Ò˜q *¨jÑ9Ô9Ð9Ý˜˜Ÿš Q™œ¨Ñ*Ô*­B¬HÐ5JÐ5JÐ5JÑ,KÔ,KÑLÔLÐLÐLÐLrB   c                 ó
  — t          j        g d¢¦  «        }t          j        ddgddgddgg¦  «        }t          ||d¬¦  «        }|                      |dd¦  «         t          ||d d …df         d¬¦  «        }t          ||d d …df         d¬¦  «        }t          j        ddd	¦  «        }t           ||¦  «        d d …df          ||¦  «        ¦  «         t           ||¦  «        d d …df          ||¦  «        ¦  «         d S )
N)rw  rm  rÀ  rw  rm  r�  r¶  r   r   r   rD   )r"   r¤   r   r¨  r–   r   )rs   r7   r9   r   ÚS0ÚS1Úqs          r@   Ú#test_periodic_three_points_multidimz3TestCubicSpline.test_periodic_three_points_multidim  s  € õ ŒH�_�_�_Ñ%Ô%ˆÝŒH�s˜C�j 3¨ *¨s°C¨jÐ9Ñ:Ô:ˆÝ˜˜1 jÐ1Ñ1Ô1ˆØ×Ò˜q *¨jÑ9Ô9Ð9Ý˜˜A˜a˜a˜a ˜dœG¨ZÐ8Ñ8Ô8ˆÝ˜˜A˜a˜a˜a ˜dœG¨ZÐ8Ñ8Ô8ˆÝŒK˜˜1˜aÑ Ô ˆÝ˜˜˜!™œ˜Q˜Q˜Q ˜Tœ
 B B q¡E¤EÑ*Ô*Ð*Ý˜˜˜!™œ˜Q˜Q˜Q ˜Tœ
 B B q¡E¤EÑ*Ô*Ð*Ð*Ð*rB   c                 ó  — t          j        g d¢t          ¬¦  «        }t          j        g d¢t          ¬¦  «        }t          ||¦  «        }|                      |¦  «         t          j        g d¢¦  «        }t          ||¦  «        }|                      |¦  «         t          ||dz  d¬¦  «        }|                      |dd	¦  «         t          j        g d¢¦  «        }t          ||d
dg¬¦  «        }|                      |d
d¦  «         d S )N)r   r   r   r   )Údtype)r¿   r   r   r   )y      ð¿      ð?rw  y      ð?      ð¿y      à?      ø¿r   )rK   ©r   y               @r¶  rK   rÎ  )r   y       @      à?)r   y      à?      ð¿)r"   r¤   Úintr   r¨  rº  s       r@   Útest_dtypeszTestCubicSpline.test_dtypes  s	  € ÝŒH�\�\�\­Ð-Ñ-Ô-ˆÝŒH�]�]�]­#Ð.Ñ.Ô.ˆÝ˜˜1ÑÔˆØ×Ò˜qÑ!Ô!Ð!åŒHÐ1Ð1Ð1Ñ2Ô2ˆÝ˜˜1ÑÔˆØ×Ò˜qÑ!Ô!Ð!å˜˜1 ™6Ð+?Ð@Ñ@Ô@ˆØ×Ò˜q )¨WÑ5Ô5Ð5åŒH�]�]�]Ñ#Ô#ˆÝ˜˜1 }°mÐ&DÐEÑEÔEˆØ×Ò˜q -°Ñ?Ô?Ð?Ð?Ð?rB   c                 ó  — t           j                             d¦  «        }t          j        |                     d¬¦  «        ¦  «        }d|                     d¬¦  «        z   }t          ||¦  «        }|                      |d¬¦  «         d S )Nr   r‘   )r-   g     ˆÃ@g‚vIhÂ%<=r«  )r"   r#   ÚRandomStaterP  Úuniformr   r¨  )rs   Úrngr7   r9   r   s        r@   Útest_small_dxzTestCubicSpline.test_small_dx.  sz   € ÝŒi×#Ò# AÑ&Ô&ˆÝŒG�C—K’K S�KÑ)Ô)Ñ*Ô*ˆØ�#—+’+ 3�+Ñ'Ô'Ñ'ˆÝ˜˜1ÑÔˆØ×Ò˜q eÐÑ,Ô,Ð,Ð,Ð,rB   c           
      ó˜  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        t           j        dddg¦  «        }t          j        g d¢¦  «        }t          j        t           j        dddg¦  «        }g d¢}dg}dg}	t          t          t
          ||¦  «         t          t          t
          ||¦  «         t          t          t
          ||¦  «         t          t          t
          ||¦  «         t          t          t
          ||¦  «         t          t          t
          |d d …t           j        f         |¦  «         t          t          t
          ||	¦  «         g d	¢}
|
D ]!}t          t          t
          ||d
|d¦  «         Œ"t           j        ||f         }d}ddg d¢ff}ddd
d
ggff}t          t          t
          ||d
|d¦  «         t          t          t
          ||d
|d¦  «         t          t          t
          ||d
|d¦  «         t          t          t
          ||d
dd¦  «         d S )Nr‡   )y      ð?      ð?r   r   r   r   r   r   )r   r   r   r   r”  r   ))r�  rL   ))r   r   )r   r±   )©r   r   )rw  rw  z
not-a-typor   T)rL   r×  rL   )r   r   r   r�  )r"   r¤   ÚnanÚassert_raisesrI  r   ÚnewaxisÚc_)rs   r7   r9   ÚxcÚxnÚxoÚynÚy3rW  rY  Úwrong_bcrM   r³  Úbc1Úbc2Úbc3s                   r@   Útest_incorrect_inputsz%TestCubicSpline.test_incorrect_inputs5  s$  € ÝŒH�\�\�\Ñ"Ô"ˆÝŒH�\�\�\Ñ"Ô"ˆÝŒXÐ'Ð'Ð'Ñ(Ô(ˆÝŒX•r”v˜q ! QÐ'Ñ(Ô(ˆÝŒX�l�l�lÑ#Ô#ˆÝŒX•r”v˜q ! QÐ'Ñ(Ô(ˆØˆYˆYˆØˆSˆØˆSˆå•j¥+¨r°1Ñ5Ô5Ð5Ý•j¥+¨r°1Ñ5Ô5Ð5Ý•j¥+¨q°"Ñ5Ô5Ð5Ý•j¥+¨r°1Ñ5Ô5Ð5Ý•j¥+¨q°"Ñ5Ô5Ð5Ý•j¥+¨q°°°µB´J°Ô/?ÀÑCÔCÐCÝ•j¥+¨r°2Ñ6Ô6Ð6ð"ð "ð "ˆð  ð 	Kð 	KˆGÝ�*¥k°1°a¸¸GÀTÑJÔJÐJÐJõ ŒE�!�Q�$ŒKˆØ!ˆØ˜1˜i˜i˜i˜.Ð)ˆØ˜1  1˜v˜h˜-Ð(ˆÝ•j¥+¨q°!°Q¸¸TÑBÔBÐBÝ•j¥+¨q°!°Q¸¸TÑBÔBÐBÝ•j¥+¨q°!°Q¸¸TÑBÔBÐBõ 	•j¥+¨q°!°Q¸
ÀDÑIÔIÐIÐIÐIrB   N)r›  r›  rn  )rt   ru   rv   Ústaticmethodr¨  r±  r´  r·  r»  rÃ  rÆ  rË  rÐ  rÕ  rå  r    rB   r@   rš  rš  …  sä   € € € € € ØØ;GØ#ð9Hð 9Hð 9Hñ „\ð9HðvGð Gð Gð.+ð +ð +ð>ð >ð >ð@ð @ð @ð:ð :ð :ð
Mð 
Mð 
Mð+ð +ð +ð@ð @ð @ð"-ð -ð -ð&Jð &Jð &Jð &Jð &JrB   rš  c                  ó®   — g d¢} g d¢}g d¢}t          | ||¦  «        }t           || ¦  «        |d¬¦  «         t           || d¦  «        |d¬¦  «         d S )N)r   r   r£   )r   r   r   )r   r   r£   rü   )ro  r   )r   r   )r7   r9   r;   r8   s       r@   Ú#test_CubicHermiteSpline_correctnessrè  ^  sp   € Øˆ	ˆ	€AØˆ
ˆ
€AØˆ9ˆ9€DÝ˜1˜a Ñ&Ô&€AÝ�A�A�a‘D”D˜! %Ð(Ñ(Ô(Ð(Ý�A�A�a˜‘G”G˜T¨Ð.Ñ.Ô.Ð.Ð.Ð.rB   c                  ó°   — g d¢} g d¢}g d¢}t          t          t          | ||¦  «         ddt          j        g}t          t          t          | ||¦  «         d S )Nr”  )r   r   rD   )r   r   r   r   r   r   )rÙ  rI  r   r"   rØ  )r7   r9   r;   Údydx_with_nans       r@   Ú&test_CubicHermiteSpline_error_handlingrë  g  s^   € Øˆ	ˆ	€AØˆ	ˆ	€AØˆ=ˆ=€DÝ•*Õ0°!°Q¸Ñ=Ô=Ð=à˜�2œ6�N€MÝ•*Õ0°!°Q¸ÑFÔFÐFÐFÐFrB   c                  óB  — t          j        ddg¦  «        } t          j        ddg¦  «        }t          j        ddg¦  «        }t          | ||¦  «        }|                     d¬¦  «        }t	          |j        j        d	         d	¦  «         t	          |j        d
¦  «         d S )Ngü©ñÒMbP?gü©ñÒMb`?g˜‡�B…Ü»>gdJ©†²>gƒ½ª/"œù¿g³%«"œù¿T)rÂ  r   r   )r"   r¤   r   r—  r   rž  r,   r-   )r7   r9   Údyr‰   r´   s        r@   Útest_roots_extrapolate_gh_11185rî  q  s“   € Ý
Œ�%˜�Ñ Ô €AÝ
Œ�. .Ð1Ñ2Ô2€AÝ	Œ�; 	Ð*Ñ	+Ô	+€BÝ˜1˜a Ñ$Ô$€Að 	
�Š˜DˆÑ!Ô!€AÝ�””˜1”˜qÑ!Ô!Ð!Ý�”˜ÑÔÐÐÐrB   c                   ót  — e Zd Zej                             d ej        d¦  «         ej        d¦  «        g¦  «        ej                             dg d¢¦  «        ej                             dg d¢¦  «        ej                             dee	g¦  «        d	„ ¦   «         ¦   «         ¦   «         ¦   «         Z
ej                             d ej        d¦  «         ej        d¦  «        g¦  «        ej                             dg d¢¦  «        ej                             deeg¦  «        d
„ ¦   «         ¦   «         ¦   «         ZdS )ÚTestZeroSizeArraysr9   )r±   r   rD   )r±   rD   r   rM   )r›  r�  rK   rL   r   rÍ   Úclsc                 óì  — t          j        d¦  «        }t          j        d¦  «        } ||||¬¦  «        } ||¦  «        j        dk    sJ ‚ ||¦  «        j        |j        |j        dd …         z   k    sJ ‚t          j        |d|¦  «        } |||||¬¦  «        }|j        d |…         |j        fz   |j        |dz   d …         z   }	 ||¦  «        j        dk    sJ ‚ ||¦  «        j        |	k    sJ ‚d S )Nr±   r   r¶  r   r   )rM   r   ©r"   rå   r-   r,   Úmoveaxis)
rs   rñ  r9   rM   r   r7   ÚxvalÚobjÚytÚshs
             r@   Útest_zero_sizez!TestZeroSizeArrays.test_zero_size…  s  € õ ŒI�b‰MŒMˆÝŒy˜‰|Œ|ˆàˆc�!�Q Ð(Ñ(Ô(ˆØˆs�4‰yŒyŒ~ Ò"Ð"Ð"Ð"Øˆs�4‰yŒyŒ $¤*¨q¬w°q°r°r¬{Ñ":Ò:Ð:Ð:Ð:õ Œ[˜˜A˜tÑ$Ô$ˆàˆc�!�R ¨tÐ4Ñ4Ô4ˆØŒX�e�t�eŒ_ ¤	˜}Ñ,¨r¬x¸¸Q¹¸¸Ô/@Ñ@ˆØˆs�4‰yŒyŒ~ Ò"Ð"Ð"Ð"Øˆs�4‰yŒyŒ "Ò$Ð$Ð$Ð$Ð$Ð$rB   c                 óæ  — t          j        d¦  «        }t          j        d¦  «        } |||¦  «        } ||¦  «        j        dk    sJ ‚ ||¦  «        j        |j        |j        dd …         z   k    sJ ‚t          j        |d|¦  «        } ||||¬¦  «        }|j        d |…         |j        fz   |j        |dz   d …         z   } ||¦  «        j        dk    sJ ‚ ||¦  «        j        |k    sJ ‚d S )Nr±   r   r   r   rH   ró  )	rs   rñ  r9   r   r7   rõ  rö  r÷  rø  s	            r@   Útest_zero_size_2z#TestZeroSizeArrays.test_zero_size_2›  s  € õ
 ŒI�b‰MŒMˆÝŒy˜‰|Œ|ˆàˆc�!�Q‰iŒiˆØˆs�4‰yŒyŒ~ Ò"Ð"Ð"Ð"Øˆs�4‰yŒyŒ $¤*¨q¬w°q°r°r¬{Ñ":Ò:Ð:Ð:Ð:õ Œ[˜˜A˜tÑ$Ô$ˆàˆc�!�R˜dÐ#Ñ#Ô#ˆØŒX�e�t�eŒ_ ¤	˜}Ñ,¨r¬x¸¸Q¹¸¸Ô/@Ñ@ˆØˆs�4‰yŒyŒ~ Ò"Ð"Ð"Ð"Øˆs�4‰yŒyŒ "Ò$Ð$Ð$Ð$Ð$Ð$rB   N)rt   ru   rv   r  ÚmarkÚparametrizer"   r+   r   r   rù  r   r   rû  r    rB   r@   rð  rð  ~  su  € € € € € ð „[×Ò˜S 8 2¤8¨JÑ#7Ô#7Ø#+ 2¤8¨JÑ#7Ô#7ð#9ñ :ô :à„[×Ò˜YØMÐMÐMñOô Oà„[×Ò˜V Y Y YÑ/Ô/Ø„[×Ò˜UÐ%7¸Ð$EÑFÔFð%ð %ñ GÔFñ 0Ô/ñOô Oñ:ô :ð%ð  „[×Ò˜S 8 2¤8¨JÑ#7Ô#7Ø#+ 2¤8¨JÑ#7Ô#7ð#9ñ :ô :à„[×Ò˜V Y Y YÑ/Ô/Ø„[×Ò˜UÐ%6Ð8KÐ$LÑMÔMð%ð %ñ NÔMñ 0Ô/ñ:ô :ð%ð %ð %rB   rð  )*r�  rz  Únumpyr"   Únumpy.testingr   r   r   r   r   r   r  r	   rÙ  Úscipy.interpolater
   r   r   r   r   r   r   r   r   r   r   r   rA   rN   rT   r[   r…   rŠ   rŒ   r  r  rM  rš  rè  rë  rî  rð  r    rB   r@   ú<module>r     sã  ðØ €€€Ø 	€	€	€	Ø Ð Ð Ð ð,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð +Ð *Ð *Ð *Ð *Ð *Ø €€€ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð AEÈ1Øð$ð $ð $ð $ðN 
%Ð	$Ð	$€ðGð Gð Gð"Ið Ið Ið26ð 26ð 26ðj#ð #ð #ð`:ð `:ð `:ð `:ð `:ñ `:ô `:ð `:ðF$ð $ð $ð $ð $ñ $ô $ð $ðz-ð z-ð z-ð z-ð z-ñ z-ô z-ð z-ðz| ð | ð | ð | ð | ñ | ô | ð | ð~VJð VJð VJð VJð VJñ VJô VJð VJðr/ð /ð /ðGð Gð Gð
ð 
ð 
ð/%ð /%ð /%ð /%ð /%ñ /%ô /%ð /%ð /%ð /%rB   