§
    µ³Ùgñ} ã                   óž  — d dl 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 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mZmZ d dlmZmZ d dlm Z  d dl!m"Z"m#Z# d d	l$m%Z% d d
l&m'Z' d dlm(Z(  G d„ d¦  «        Z) G d„ d¦  «        Z* G d„ d¦  «        Z+ G d„ d¦  «        Z,ej-         .                    deeg¦  «        d„ ¦   «         Z/ G d„ d¦  «        Z0 G d„ d¦  «        Z1 G d„ d¦  «        Z2 G d„ d¦  «        Z3 G d„ d¦  «        Z4 G d „ d!¦  «        Z5 G d"„ d#¦  «        Z6 G d$„ d%¦  «        Z7d&„ Z8ej9        fd'„Z:d(„ Z;d,d)„Z<d,d*„Z=d,d+„Z>dS )-é    )Úxp_assert_equalÚxp_assert_closeÚassert_almost_equalÚassert_array_almost_equal)ÚraisesN)ÚmgridÚpiÚsinÚpoly1d)Úinterp1dÚinterp2dÚlagrangeÚPPolyÚBPolyÚsplrepÚsplevÚ
splantiderÚsplintÚsprootÚAkima1DInterpolatorÚNdPPolyÚBSplineÚPchipInterpolator)ÚpochÚgamma)Ú_ppoly)Úassert_deallocatedÚIS_PYPY)Ú_run_concurrent_barrier)Únquad)Úbinomc                   ó   — e Zd Zd„ ZdS )ÚTestInterp2Dc                 óæ   — t           ddd…dt          d…f         \  }}t          |d|z  z   ¦  «        }t          t          ¦  «        5  t          |||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   é   y              4@y              5@ç      à?)r   r	   r
   Úassert_raisesÚNotImplementedErrorr   )ÚselfÚyÚxÚzs       ú^/granary/edev/quantum/lib/python3.11/site-packages/scipy/interpolate/tests/test_interpolate.pyÚtest_interp2dzTestInterp2D.test_interp2d   s¹   € Ý�Q�q˜�W˜a¥ 3˜hÐ&Ô'‰ˆˆ1Ý��#�a‘%‘‰LŒLˆÝÕ.Ñ/Ô/ð 	ð 	Ý�Q˜˜1ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA&Á&A*Á-A*N)Ú__name__Ú
__module__Ú__qualname__r.   © ó    r-   r#   r#      s#   € € € € € ðð ð ð ð r3   r#   c                   ór  — 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(d„Zd(d„Zd„ Zd„ Zd„ Zd„ Zd(d„Zd(d„Zd„ Zej        dfd„Zd„ Zej          !                    e"d¬¦  «        d„ ¦   «         Z#d„ Z$d „ Z%d!„ Z&d"„ Z'd#„ Z(ej          )                    d$d%¦  «        d&„ ¦   «         Z*d'S ))ÚTestInterp1Dc                 óä  — t          j        d¦  «        | _        t          j        d¦  «        | _        t          j        d¦  «        | _        | j                             d¦  «        | _        t          j        d¦  «        | _        t          j        d¦  «        | _        t          j	        dg¦  «        | _
        t          j	        dg¦  «        | _        t          j        d¦  «                             d¦  «        | _        t          j        d¦  «                             d¦  «        | _        t          j        d¦  «                             d	¦  «        | _        t          j        d¦  «                             d¦  «        | _        t          j        d
¦  «                             d¦  «        | _        t          j        d
¦  «                             d¦  «        | _        t          j        d¦  «                             d¦  «        | _        d| j        d d …df<   d| j        d d …df<   t          j        d¦  «                             d¦  «        | _        d| j        dd d …f<   d| j        dd d …f<   d| _        d S )Nç      @ç      $@)r%   é   ç       @ç        g      4@©r%   é
   )r=   r%   )r%   r%   r9   g      >@)r%   é   r9   )r>   r%   r9   é   r   éâÿÿÿéÿÿÿÿç      YÀ)ÚnpÚarangeÚx5Úx10Úy10ÚreshapeÚx25Úx2Úy2ÚarrayÚx1Úy1Úy210Úy102Úy225Úy25Úy235Úy325Úy210_edge_updatedÚy102_edge_updatedÚ
fill_value©r)   s    r-   Úsetup_methodzTestInterp1D.setup_method$   sÓ  € Ý”)˜B‘-”-ˆŒÝ”9˜S‘>”>ˆŒÝ”9˜S‘>”>ˆŒØ”8×#Ò# EÑ*Ô*ˆŒÝ”)˜B‘-”-ˆŒÝ”)˜B‘-”-ˆŒÝ”(˜B˜4‘.”.ˆŒÝ”(˜B˜4‘.”.ˆŒå”I˜c‘N”N×*Ò*¨7Ñ3Ô3ˆŒ	Ý”I˜c‘N”N×*Ò*¨7Ñ3Ô3ˆŒ	Ý”I˜c‘N”N×*Ò*¨9Ñ5Ô5ˆŒ	Ý”9˜S‘>”>×)Ò)¨&Ñ1Ô1ˆŒÝ”I˜c‘N”N×*Ò*¨9Ñ5Ô5ˆŒ	Ý”I˜c‘N”N×*Ò*¨9Ñ5Ô5ˆŒ	õ
 "$¤¨3¡¤×!7Ò!7¸Ñ!@Ô!@ˆÔØ')ˆÔ˜q˜q˜q !˜tÑ$Ø(+ˆÔ˜q˜q˜q "˜uÑ%õ "$¤¨3¡¤×!7Ò!7¸Ñ!@Ô!@ˆÔØ')ˆÔ˜q ! ! !˜tÑ$Ø(+ˆÔ˜r 1 1 1˜uÑ%à ˆŒˆˆr3   c                 ó
  — dD ];}t          | j        | j        |¬¦  «         t          | j        | j        |d¬¦  «         Œ<t          | j        | j        dd¬¦  «         t          | j        | j        dt          j        dg¦  «        ¬¦  «         t          | j        | j        dd¬¦  «         t          | j        | j        dd¬¦  «         t          | j        | j        dd	¬¦  «         t          | j        | j        d
¬¦  «         t          | j        | j        d¬¦  «         t          | j        | j        d¬¦  «         t          | j        | j        d¬¦  «         t          | j        | j        ddd	¬¦  «         t          | j        | j        dd
t          j        d¦  «        ¬¦  «         t          | j        | j        dd
t          j        d¦  «        t          j        d¦  «        f¬¦  «         t          | j        | j        dd
t          j        d¦  «        df¬¦  «         t          t          t           | j
        | j        ¦  «         t          t          t           | j        t          j        d
¦  «        ¦  «         t          t          t           | j        | j        ¦  «         t          t          t           | j        | j        ¦  «         t          t          t           | j        | j        ¦  «         t          | j        | j        ¦  «         t          | j        | j        d
¬¦  «         t          t          t           | j        | j        ¦  «         t          t          t           | j        | j        ¦  «         t          t          t           | j        | j        dd¬¦  «         t          t          t           | j        | j        dg d¢¬¦  «         t          t          t           | j        | j        dt          j        d¦  «        ¬¦  «         t          t          t           | j        | j        ddgg¬¦  «         t          t          t           | j        | j        dddg¬¦  «         t          t          t           | j        | j        dt          j        g ¦  «        ¬¦  «         t          t          t           | j        | j        dd¬¦  «         t          t          t           | j        | j        dd
ddg¬¦  «         t          t          t           | j        | j        dd
dddgf¬¦  «         d S )N)	Únearestú
nearest-upÚzeroÚlinearÚslinearÚ	quadraticÚcubicÚpreviousÚnext©ÚkindÚextrapolate©re   rW   r^   )rA   é   rA   )rA   )rA   rA   r   rh   r%   r>   ©re   ÚaxisrW   r=   ©rj   )rA   rA   rA   r2   r;   )r   rF   rG   rC   rL   rO   rJ   Úonesr'   Ú
ValueErrorrI   rK   rP   rM   rN   ©r)   re   s     r-   Útest_validationzTestInterp1D.test_validationM   s¬  € ð
?ð 	Nð 	NˆDå�T”X˜tœx¨dÐ3Ñ3Ô3Ð3Ý�T”X˜tœx¨d¸}ÐMÑMÔMÐMÐMÝ�”˜4œ8¨(¸wÐGÑGÔGÐGÝ�”˜4œ8¨(ÝœH b T™NœNð	,ñ 	,ô 	,ð 	,å�”˜4œ8¨(Ø!ð	#ñ 	#ô 	#ð 	#å�”˜4œ8¨(Øð	 ñ 	 ô 	 ð 	 å�”˜4œ8¨(Ø$ð	&ñ 	&ô 	&ð 	&å�”˜4œ8¨!Ð,Ñ,Ô,Ð,Ý�”˜4œ8¨!Ð,Ñ,Ô,Ð,Ý�”˜4œ8¨!Ð,Ñ,Ô,Ð,Ý�”˜4œ8¨!Ð,Ñ,Ô,Ð,Ý�”˜4œ9¨8¸"Ø$ð	&ñ 	&ô 	&ð 	&å�”˜$œ)¨(¸ÝœG B™KœKð	)ñ 	)ô 	)ð 	)å�”˜$œ)¨(¸ÝœW R™[œ[­"¬'°"©+¬+Ð6ð	8ñ 	8ô 	8ð 	8å�”˜$œ)¨(¸ÝœW R™[œ[¨"Ð-ð	/ñ 	/ô 	/ð 	/õ 	•j¥(¨D¬H°d´hÑ?Ô?Ð?õ 	•j¥(¨D¬Hµb´h¸q±k´kÑBÔBÐBõ 	•j¥(¨D¬H°d´gÑ>Ô>Ð>Ý•j¥(¨D¬G°T´XÑ>Ô>Ð>Ý•j¥(¨D¬H°d´iÑ@Ô@Ð@Ý�”˜4œ9Ñ%Ô%Ð%Ý�”˜4œ9¨1Ð-Ñ-Ô-Ð-õ 	•j¥(¨D¬G°T´XÑ>Ô>Ð>Ý•j¥(¨D¬H°d´gÑ>Ô>Ð>õ 	•j¥(¨D¬H°d´hÀXØ!-ð	/ñ 	/ô 	/ð 	/å•j¥(¨D¬H°d´hÀXØ!-  ð	/ñ 	/ô 	/ð 	/å•j¥(¨D¬H°d´hÀXÝ!#¤¨,Ñ!7Ô!7ð	9ñ 	9ô 	9ð 	9å•j¥(¨D¬H°d´hÀXØ#% $ ð	)ñ 	)ô 	)ð 	)å•j¥(¨D¬H°d´hÀXØ"$ b ð	+ñ 	+ô 	+ð 	+å•j¥(¨D¬H°d´hÀXÝ!#¤¨"¡¤ð	/ñ 	/ô 	/ð 	/å•j¥(¨D¬H°d´hÀXØ!#ð	%ñ 	%ô 	%ð 	%å•j¥(¨D¬G°T´YÀXØ¨"¨b¨ð	3ñ 	3ô 	3ð 	3å•j¥(¨D¬G°T´YÀXØ¨"¨r°2¨h¨ð	9ñ 	9ô 	9ð 	9ð 	9ð 	9r3   c                 ó&  — t          | j        | j        ¦  «        j        sJ ‚t          | j        | j        d¬¦  «        j        rJ ‚t          | j        | j        ¦  «        j        sJ ‚t          | j        | j        d¬¦  «        j        rJ ‚t          j        t          | j        | j        ¦  «        j        ¦  «        sJ ‚t          | j        | j        d¬¦  «        j        dk    sJ ‚t          | j        | j        d¬¦  «        j        dk    sJ ‚t          | j        | j        ¦  «        j        dk    sJ ‚t          | j        | j	        ¦  «        j        dk    sJ ‚t          | j        | j
        d¬	¦  «        j        dk    sJ ‚t          t          | j        | j        ¦  «        j        | j        ¦  «         t          t          | j        | j        ¦  «        j        | j        ¦  «         t          t          | j        | j	        ¦  «        j        | j	        ¦  «         d S )
NF)Úcopy)Úbounds_errorç      @©rW   )ç      ð?r:   r   rh   rk   )r   rF   rG   rq   rr   rC   ÚisnanrW   rj   rO   rP   r   r+   r*   rX   s    r-   Ú	test_initzTestInterp1D.test_init‘   sÜ  € õ ˜œ $¤(Ñ+Ô+Ô0Ð0Ð0Ð0Ý˜DœH d¤h°UÐ;Ñ;Ô;Ô@Ð@Ð@Ð@Ý˜œ $¤(Ñ+Ô+Ô8Ð8Ð8Ð8Ý˜DœH d¤h¸UÐCÑCÔCÔPÐPÐPÐPÝŒx� ¤¨4¬8Ñ4Ô4Ô?Ñ@Ô@Ð@Ð@Ð@Ý˜œ $¤(°sÐ;Ñ;Ô;ÔFÈ#ÒMÐMÐMÐMÝ˜œ 4¤8¸
ÐCÑCÔCÔNØòð ð ð õ ˜œ $¤(Ñ+Ô+Ô0°AÒ5Ð5Ð5Ð5Ý˜œ $¤)Ñ,Ô,Ô1°QÒ6Ð6Ð6Ð6Ý˜œ $¤)°!Ð4Ñ4Ô4Ô9¸QÒ>Ð>Ð>Ð>Ý� ¤¨4¬8Ñ4Ô4Ô6¸¼ÑAÔAÐAÝ� ¤¨4¬8Ñ4Ô4Ô6¸¼ÑAÔAÐAÝ� ¤¨4¬9Ñ5Ô5Ô7¸¼ÑCÔCÐCÐCÐCr3   c                 óš  — t          | j        | j        ¦  «        }t          | j        d d d…         | j        d d d…         ¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «         |g d¢¦  «        ¦  «         t          | j        d d d…         | j        d d d…         d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t          | j        d d d…         | j        d d d…         d¬¦  «        }t          t          || j        ¦  «         t          | j        | j        ¦  «        }t          | j        d d d…         | j        d d …d d d…f         ¦  «        }t           || j        ¦  «         || j        ¦  «        ¦  «         d S )NrA   ç333333ó?©g333333@gffffff@ç      @F)Úassume_sortedT)	r   rF   rG   r   rC   rL   r'   rm   rO   )r)   Úinterp10Úinterp10_unsortedÚinterp10_assume_kwÚinterp10_assume_kw2Úinterp10_y_2dÚinterp10_y_2d_unsorteds          r-   Útest_assume_sortedzTestInterp1D.test_assume_sorted¤   sÜ  € å˜DœH d¤hÑ/Ô/ˆÝ$ T¤X¨d¨d°¨d¤^°T´X¸d¸dÀ¸d´^ÑDÔDÐå!Ð"3Ð"3°D´HÑ"=Ô"=¸t¼xÑHÔHÐHÝ!Ð"3Ð"3°CÑ"8Ô"8½"¼(À3¹-¼-ÑHÔHÐHÝ!Ð"3Ð"3°O°O°OÑ"DÔ"DØ"* (¨?¨?¨?Ñ";Ô";ñ	=ô 	=ð 	=õ & d¤h¨t¨t°¨t¤n°d´h¸t¸tÀ¸t´nØ49ð;ñ ;ô ;Ðå!Ð"4Ð"4°T´XÑ">Ô">ÀÄÑIÔIÐIå& t¤x°°°"°¤~°t´xÀÀÀ"À´~Ø59ð;ñ ;ô ;Ðõ 	•jÐ"5°t´xÑ@Ô@Ð@õ ! ¤¨4¬9Ñ5Ô5ˆÝ!)¨$¬(°4°4°R°4¬.¸$¼)ÀAÀAÀAÀtÀtÈÀtÀGÔ:LÑ!MÔ!MÐÝ! - -°´Ñ"9Ô"9Ø"8Ð"8¸¼Ñ"BÔ"Bñ	Dô 	Dð 	Dð 	Dð 	Dr3   c                 ó:   — dD ]}|                       |¦  «         Œd S )N)r^   r_   )Ú_check_linearrn   s     r-   Útest_linearzTestInterp1D.test_linear¾   s2   € Ø)ð 	%ð 	%ˆDØ×Ò˜tÑ$Ô$Ð$Ð$ð	%ð 	%r3   c                 ó@  — t          | j        | j        |¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         t          | j        | j        |d¬¦  «        }t           |g d¢¦  «        t	          j        g d¢¦  «        d¬¦  «         t          |dd	¬
¦  «        }t          t          t           | j        | j        fi |¤Ž d S )Nrd   ry   rz   rf   rg   ©ç      ð¿r   é	   é   ç›+¡†›„=©ÚrtolT©re   rW   rr   )r   rF   rG   r   rC   rL   r   ÚasarrayÚdictr'   rm   )r)   re   r}   ÚextrapolatorÚoptss        r-   r…   zTestInterp1D._check_linearÂ   s5  € å˜DœH d¤h°TÐ:Ñ:Ô:ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸#±´Ñ?Ô?Ð?Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨?¨?¨?Ñ";Ô";ñ	=ô 	=ð 	=õ   ¤¨$¬(¸Ø+8ð:ñ :ô :ˆå˜˜ _ _ _Ñ5Ô5Ýœ
Ð#3Ð#3Ð#3Ñ4Ô4¸5ð	Bñ 	Bô 	Bð 	Bõ ˜Ø,Ø!%ð'ñ 'ô 'ˆõ 	•j¥(¨D¬H°d´hÐGÐGÀ$ÐGÐGÐGÐGÐGr3   c                 óˆ  — t           j        t           j        t           j        t           j        fD ]T}t          j        d|¬¦  «        }|} t          ||d¬¦  «        |¦  «        }|j        |k    sJ ‚t          ||d¬¦  «         ŒUg d¢}t           j	        dd	g} t          ||¦  «        |¦  «        }t          ||d¬¦  «         d S )
Né   ©Údtyper^   rd   çVçž¯Ò<©Úatol©r   rh   r%   r   rh   )
rC   Úfloat16Úfloat32Úfloat64Ú
longdoublerD   r   r—   r   Únan)r)   Údtypr+   r*   Úyps        r-   Útest_linear_dtypeszTestInterp1D.test_linear_dtypesÕ   s×   € õ ”ZÝ”ZÝ”ZÝ”]ð$ð 	/ð 	/ˆDõ ”	˜! 4Ð(Ñ(Ô(ˆAØˆAØ.•˜!˜Q XÐ.Ñ.Ô.¨qÑ1Ô1ˆBØ”8˜tÒ#Ð#Ð#Ð#Ý˜B ¨Ð.Ñ.Ô.Ð.Ð.ð ˆIˆIˆÝŒV�Q˜ˆNˆØ�X�a˜‰^Œ^˜AÑÔˆÝ˜˜A EÐ*Ñ*Ô*Ð*Ð*Ð*r3   c                 óÐ  — t           j        t           j        t           j        g}|t           j        t           j        gz   }g d¢}|D ] }t          j        dd|¬¦  «        }|D ]„}t          j        | dz  ¦  «                             |¦  «        }|D ]T}|                     |¦  «        }	|D ]:}
t          |||
d¬¦  «        }t           ||	¦  «        |dd|› d	|› d
|› �¬¦  «         Œ;ŒUŒ…Œ¡d S )N)r_   r]   r`   ra   r   r=   r–   rs   F©re   rr   çH¯¼šò×z>z, ú )rš   Úcheck_dtypeÚerr_msg)rC   rœ   r�   rž   Ú	complex64Ú
complex128rD   ÚexpÚastyper   r   )r)   Údt_rÚdt_rcÚspline_kindsÚdtxr+   Údtyr*   ÚdtnÚxnewre   Úfs               r-   Útest_slinear_dtypesz TestInterp1D.test_slinear_dtypesê   s=  € õ ”
�BœJ­¬
Ð3ˆØ�œ¥b¤mÐ4Ñ4ˆØ@Ð@Ð@ˆØð 
	Gð 
	GˆCÝ”	˜!˜R sÐ+Ñ+Ô+ˆAØð Gð G�Ý”F˜A˜2˜c™6‘N”N×)Ò)¨#Ñ.Ô.�Øð Gð G�CØŸ8š8 C™=œ=�DØ ,ð Gð G˜Ý$ Q¨°À5ÐIÑIÔI˜Ý'¨¨¨$©¬°¸Ø49Ø36Ð0EÐ0E¸#Ð0EÐ0EÀÐ0EÐ0EðGñ Gô Gð Gð GðGðGðGð
	Gð 
	Gr3   c                 óŽ  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         d S )Nra   rd   ry   ç      ø?rz   ©r   rF   rG   r   rC   rL   ©r)   r}   s     r-   Ú
test_cubiczTestInterp1D.test_cubicü   sµ   € å˜DœH d¤h°WÐ=Ñ=Ô=ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸#±´Ñ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸#±´Ñ?Ô?Ð?Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨?¨?¨?Ñ";Ô";ñ	>ô 	>ð 	>ð 	>ð 	>r3   c                 ór  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         t          | j        | j        dd¬	¦  «        }t           |g d
¢¦  «        g d¢d¬¦  «         t          ddd¬¦  «        }t          t          t           | j        | j        fi |¤Ž d S )Nr[   rd   ry   ru   r¸   rz   ©r:   r{   r{   rf   rg   rˆ   ©r;   r   rŠ   rŠ   rŒ   r�   Tr�   ©
r   rF   rG   r   rC   rL   r   r‘   r'   rm   ©r)   r}   r’   r“   s       r-   Útest_nearestzTestInterp1D.test_nearest  sF  € õ ˜DœH d¤h°YÐ?Ñ?Ô?ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨<¨<¨<Ñ"8Ô"8ñ	;ô 	;ð 	;õ   ¤¨$¬(¸Ø+8ð:ñ :ô :ˆå˜˜ _ _ _Ñ5Ô5Ø&˜˜¨Uð	4ñ 	4ô 	4ð 	4õ ˜Ø,Ø!%ð'ñ 'ô 'ˆõ 	•j¥(¨D¬H°d´hÐGÐGÀ$ÐGÐGÐGÐGÐGr3   c                 ór  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         t          | j        | j        dd	¬
¦  «        }t           |g d¢¦  «        g d¢d¬¦  «         t          dd	d¬¦  «        }t          t          t           | j        | j        fi |¤Ž d S )Nr\   rd   ry   ru   r¸   r:   rz   r½   rf   rg   rˆ   r¾   rŒ   r�   Tr�   r¿   rÀ   s       r-   Útest_nearest_upzTestInterp1D.test_nearest_up  sF  € õ ˜DœH d¤h°\ÐBÑBÔBˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨<¨<¨<Ñ"8Ô"8ñ	;ô 	;ð 	;õ   ¤¨$¬(¸Ø+8ð:ñ :ô :ˆå˜˜ _ _ _Ñ5Ô5Ø&˜˜¨Uð	4ñ 	4ô 	4ð 	4õ ˜Ø,Ø!%ð'ñ 'ô 'ˆõ 	•j¥(¨D¬H°d´hÐGÐGÀ$ÐGÐGÐGÐGÐGr3   c           
      óv  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         t          | j        | j        dd¬	¦  «        }t           |g d
¢¦  «        t          j        dddgd¬¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        t          j        t          j        ddddg¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        t          j        t          j        ddddgt          j        t          j        ddddgg¦  «         t          | j        | j	        ddd¬¦  «        }t           |g d¢¦  «        t          j        t          j        gddgddgg¦  «         t          ddd¬¦  «        }t          t          t           | j        | j        fi |¤Ž t          g d¢g d¢ddd¬¦  «        }t           |g d¢¦  «        t          j        t          j        ddd d d g¦  «         t          g d!¢g d"¢ddd#¬¦  «        }t           |g d¢¦  «        t          j        t          j        ddd d d g¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        t          j        t          j        ddd$d$gt          j        t          j        ddd$d$gg¦  «         t          | j        | j        ddd¬¦  «        }t           |g d¢¦  «        t          j        t          j        gddgd$d$gg¦  «         d S )%Nrb   rd   ry   ru   r¸   rz   ©r:   r7   r{   rf   rg   rˆ   r   rŠ   rŒ   r�   ©rA   éþÿÿÿr9   r•   é   é   r9   r•   é   é   é   ri   ©rÇ   r9   rÈ   r=   r‹   Tr�   r›   ©r   rh   rA   ©re   rW   r|   ©rÇ   rA   r   rh   r%   r>   r9   rh   rA   ©r%   r   rh   ©rA   r   rh   Fr@   ©r   rF   rG   r   rC   rL   r   r    rO   rP   r‘   r'   rm   rU   rV   ©r)   r}   r’   Úinterpolator1DÚinterpolator2DÚinterpolator2DAxis0r“   s          r-   Útest_previouszTestInterp1D.test_previous/  sE  € å˜DœH d¤h°ZÐ@Ñ@Ô@ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨<¨<¨<Ñ"8Ô"8ñ	;ô 	;ð 	;õ   ¤¨$¬(¸Ø+8ð:ñ :ô :ˆå˜˜ _ _ _Ñ5Ô5Ýœ  A qÐ)°ð	7ñ 	7ô 	7ð 	7õ " $¤(¨D¬H¸:Ø-:ð<ñ <ô <ˆå˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ýœ¥¤¨¨A¨q°!Ð4ñ	6ô 	6ð 	6õ " $¤(¨D¬I¸JØ-:ð<ñ <ô <ˆå˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ýœ&¥"¤&¨!¨Q°°1Ð5Ýœ&¥"¤&¨"¨b°"°bÐ9ð;ñ	<ô 	<ð 	<õ ' t¤x°´ÀØ,-¸-ðIñ Iô IÐåÐ+Ð+¨K¨K¨KÑ8Ô8Ýœ&¥"¤&Ð)Ø˜b˜Ø˜b˜ð#ñ	$ô 	$ð 	$õ
 ˜Ø,Ø!%ð'ñ 'ô 'ˆõ 	•j¥(¨D¬H°d´hÐGÐGÀ$ÐGÐGÐGõ " ) ) )Ø", * *°:Ø-:Ø04ð6ñ 6ô 6ˆõ 	˜˜Ð'>Ð'>Ð'>Ñ?Ô?Ýœ¥¤¨¨A¨r°2°rÐ:ñ	<ô 	<ð 	<õ " ) ) )Ø", * *°:Ø-:Ø05ð7ñ 7ô 7ˆõ 	˜˜Ð'>Ð'>Ð'>Ñ?Ô?Ýœ¥¤¨¨A¨r°2°rÐ:ñ	<ô 	<ð 	<õ " $¤(¨DÔ,BØ'1Ø-:ð<ñ <ô <ˆõ 	˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ýœ&¥"¤&¨!¨Q°°SÐ9Ýœ&¥"¤&¨"¨b°#°sÐ;ð=ñ	>ô 	>ð 	>õ ' t¤x°Ô1GØ,6Ø,-¸-ðIñ Iô IÐõ 	Ð+Ð+¨K¨K¨KÑ8Ô8Ýœ&¥"¤&Ð)Ø˜b˜Ø˜s˜ð%ñ	&ô 	&ð 	&ð 	&ð 	&r3   c           
      óv  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         t          | j        | j        dd¬	¦  «        }t           |g d
¢¦  «        dddt          j        gd¬¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        ddddt          j        t          j        g¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        ddddt          j        t          j        gddddt          j        t          j        gg¦  «         t          | j        | j	        ddd¬¦  «        }t           |g d¢¦  «        ddgddgt          j        t          j        gg¦  «         t          ddd¬¦  «        }t          t          t           | j        | j        fi |¤Ž t          g d¢g d¢ddd¬¦  «        }t           |g d¢¦  «        dddddt          j        t          j        g¦  «         t          g d ¢g d!¢ddd"¬¦  «        }t           |g d¢¦  «        dddddt          j        t          j        g¦  «         t          | j        | j        dd¬	¦  «        }t           |g d¢¦  «        d#d#ddt          j        t          j        gd#d#ddt          j        t          j        gg¦  «         t          | j        | j        ddd¬¦  «        }t           |g d¢¦  «        d#d#gddgt          j        t          j        gg¦  «         d S )$Nrc   rd   ry   r:   r¸   rz   )rs   r{   r{   rf   rg   rˆ   r   rŠ   rŒ   r�   rÆ   r9   r•   r=   rÊ   rË   ri   rÍ   rh   r‹   Tr�   r›   rÎ   rÏ   rÐ   rA   rÑ   rÒ   Fr?   rÓ   rÔ   s          r-   Ú	test_nextzTestInterp1D.test_nextt  sE  € å˜DœH d¤h°VÐ<Ñ<Ô<ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨<¨<¨<Ñ"8Ô"8ñ	;ô 	;ð 	;õ   ¤¨$¬(¸Ø+8ð:ñ :ô :ˆå˜˜ _ _ _Ñ5Ô5Ø˜A˜q¥"¤&Ð)°ð	7ñ 	7ô 	7ð 	7õ " $¤(¨D¬H¸6Ø-:ð<ñ <ô <ˆå˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ø˜A˜q !¥R¤V­R¬VÐ4ñ	6ô 	6ð 	6õ " $¤(¨D¬I¸FØ-:ð<ñ <ô <ˆå˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ø˜Q  1¥b¤f­b¬fÐ5Ø˜b " b­"¬&µ"´&Ð9ð;ñ	<ô 	<ð 	<õ ' t¤x°´ÀØ,-¸-ðIñ Iô IÐåÐ+Ð+¨K¨K¨KÑ8Ô8Ø˜Q˜Ø˜b˜Ýœ&¥"¤&Ð)ð+ñ	,ô 	,ð 	,õ
 ˜Ø,Ø!%ð'ñ 'ô 'ˆõ 	•j¥(¨D¬H°d´hÐGÐGÀ$ÐGÐGÐGõ " ) ) )Ø", * *°6Ø-:Ø04ð6ñ 6ô 6ˆõ 	˜˜Ð'>Ð'>Ð'>Ñ?Ô?Ø˜A˜q ! R­¬µ´Ð8ñ	:ô 	:ð 	:õ " ) ) )Ø", * *°6Ø-:Ø05ð7ñ 7ô 7ˆõ 	˜˜Ð'>Ð'>Ð'>Ñ?Ô?Ø˜A˜q ! R­¬µ´Ð8ñ	:ô 	:ð 	:õ " $¤(¨DÔ,BØ'-Ø-:ð<ñ <ô <ˆõ 	˜˜Ð'=Ð'=Ð'=Ñ>Ô>Ø˜b ! Q­¬µ´Ð7Ø˜b " b­"¬&µ"´&Ð9ð;ñ	<ô 	<ð 	<õ ' t¤x°Ô1GØ,2Ø,-¸-ðIñ Iô IÐõ 	Ð+Ð+¨K¨K¨KÑ8Ô8Ø˜b˜Ø˜b˜Ýœ&¥"¤&Ð)ð+ñ	,ô 	,ð 	,ð 	,ð 	,r3   c                 óŽ  — t          | j        | j        d¬¦  «        }t           || j        ¦  «        | j        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |g d¢¦  «        t	          j        g d¢¦  «        ¦  «         d S )Nr]   rd   ry   ru   r¸   rz   rÅ   r¹   rº   s     r-   Ú	test_zerozTestInterp1D.test_zero¹  sµ   € å˜DœH d¤h°VÐ<Ñ<Ô<ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨3¡-¤-µ´¸"±´Ñ>Ô>Ð>Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨<¨<¨<Ñ"8Ô"8ñ	:ô 	:ð 	:ð 	:ð 	:r3   c                 ó¢   — t          t          ||¦  «         	  ||¦  «         d S # t          $ r}|› t          |¦  «        v sJ ‚Y d }~d S d }~ww xY w©N)r'   rm   Ústr)r)   ÚinterpolantÚ
test_arrayÚ
fail_valueÚerrs        r-   Úbounds_check_helperz TestInterp1D.bounds_check_helperÂ  s{   € õ 	•j +¨zÑ:Ô:Ð:ð	1ØˆK˜
Ñ#Ô#Ð#Ð#Ð#øÝð 	1ð 	1ð 	1Ø!�O¥s¨3¡x¤xÐ/Ð/Ð/Ð/Ð/Ð/Ð/Ð/Ð/Ð/øøøøð	1øøøs   ˜% ¥
A¯A	Á	Ar^   c                 ó4  — t          | j        | j        | j        d|¬¦  «        }t	           |d¦  «        t          j        | j        ¦  «        ¦  «         t	           |d¦  «        t          j        | j        ¦  «        ¦  «         t	           |dgdgdgdggg¦  «        t          j        | j        ¦  «        d¬¦  «         t	          |                     t          j        g d¢¦  «        ¦  «        t          j        g d	¢g d
¢g¦  «        ¦  «         t          | j        | j        d|¬¦  «        }|                      |dd¦  «         |                      |dd¦  «         |                      |g d¢d¦  «         |                      |g d¢d¦  «          |g d¢¦  «         d S )NF)rW   rr   re   gffffff&@g333333Àg333333)@gÍÌÌÌÌL3@)Úcheck_shape)r‰   r;   r7   ç      "@ç      &@)TFFFF)FFFFTT)rr   re   r‰   rè   )r;   r‰   r;   )r;   ru   ç      5@ré   )r;   r7   rç   )	r   rF   rG   rW   r   rC   rL   Ú_check_boundsrä   )r)   re   Úextrap10Úraises_bounds_errors       r-   Ú_bounds_checkzTestInterp1D._bounds_checkË  sÖ  € å˜DœH d¤h¸4¼?Ø).°Tð;ñ ;ô ;ˆõ 	˜˜ ™œ­¬°´Ñ(AÔ(AÑBÔBÐBÝ˜˜ ™œ­¬°´Ñ(AÔ(AÑBÔBÐBÝ˜˜ D 6¨D¨6°D°6¸D¸6Ð"BÐ!CÑDÔDÝœ8 D¤OÑ4Ô4À%ð	Iñ 	Iô 	Ið 	Iå˜×.Ò.Ý!œxÐ(CÐ(CÐ(CÑDÔDñFô Fåœ8Ð%GÐ%GÐ%GØ%GÐ%GÐ%Gð%Iñ Jô Jñ	Kô 	Kð 	Kõ
 ' t¤x°´ÈØ,0ð2ñ 2ô 2Ðð 	× Ò Ð!4°d¸DÑAÔAÐAØ× Ò Ð!4°d¸DÑAÔAÐAØ× Ò Ð!4Ð6FÐ6FÐ6FÈÑMÔMÐMØ× Ò Ð!4Ð6FÐ6FÐ6FÈÑMÔMÐMàÐ˜O˜O˜OÑ,Ô,Ð,Ð,Ð,r3   c                 ó®  — t          j        d¦  «                             t          ¦  «        }t          j        d¦  «                             t          ¦  «        }t	          |||t           j        d¬¦  «        } ||dz
  ¦  «        }t          j        |d         ¦  «        sJ ‚t          |t           j        t           j        |d d…         f         ¦  «         d S )Nr=   Fr�   rh   r   rA   )	rC   rD   r­   Úintr   r    rv   r   Úr_)r)   re   r+   r*   ÚcÚyis         r-   Ú_bounds_check_int_nan_fillz'TestInterp1D._bounds_check_int_nan_fillã  s¦   € ÝŒI�b‰MŒM× Ò ¥Ñ%Ô%ˆÝŒI�b‰MŒM× Ò ¥Ñ%Ô%ˆÝ�Q˜ µ´ÀeÐLÑLÔLˆØˆQˆq�1‰u‰XŒXˆÝŒx˜˜1œ‰ŒÐÐÐÝ! "¥b¤e­B¬F°A°c°r°c´F¨NÔ&;Ñ<Ô<Ð<Ð<Ð<r3   c                 ód   — dD ],}|                       |¦  «         |                      |¦  «         Œ-d S )N)r^   ra   r[   rb   rc   r_   r]   r`   )rí   ró   rn   s     r-   Útest_boundszTestInterp1D.test_boundsë  sH   € ð5ð 	2ð 	2ˆDà×Ò˜tÑ$Ô$Ð$Ø×+Ò+¨DÑ1Ô1Ð1Ð1ð	2ð 	2r3   c                 óÈ  — t          | j        | j        |dd¬¦  «        }t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |ddg¦  «        dd	g¦  «         | j        | j        | j        | j	        fD �]l}t          | j
        ||d
d	d¬¦  «        }t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         t           |ddg¦  «        t	          j        d¦  «        ¦  «         t          | j
        ||d
dd¬¦  «        }t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        t	          j        d¦  «        ¦  «         |j        dk    r#dd	gg|j        d         z  g|j        d         z  }ndd	gg|j        d         z  }t           |ddg¦  «        |¦  «         �Œng d¢}| j        | j        fD ](}t          t          t           | j
        ||d
|d¬¦  «         Œ)t          | j
        | j        |d
|d¬¦  «        }t           |d¦  «        g d¢gdz  ¦  «         t           |d¦  «        g d¢gdz  ¦  «         t           |ddg¦  «        d	d	gddgddgggdz  ¦  «         d	dg}t          t          t           | j
        | j        |d
|d¬¦  «         | j        | j        | j	        fD ]­}t          | j
        ||d
|d¬¦  «        }d	dg}|j        dk    r|g|j        d         z  }t           |d¦  «        |¦  «         t           |d¦  «        |¦  «         d	d	gddgg}|j        dk    r|g|j        d         z  }t           |ddg¦  «        |¦  «         Œ®t	          j        g d¢¦  «        d	f}| j        | j        fD ](}t          t          t           | j
        ||d
|d¬¦  «         Œ)t          | j
        | j        |d
|d¬¦  «        }t           |d¦  «        t	          j        d¦  «        ¦  «         t           |d¦  «        g d¢gdz  ¦  «         t           |ddg¦  «        dd	gdd	gdd	gggdz  ¦  «         t	          j        ddg¦  «        d	f}t          t          t           | j
        | j        |d
|d¬¦  «         | j        | j        | j	        fD ]¿}t          | j
        ||d
|d¬¦  «        }t           |d¦  «        t	          j        d	¦  «        ¦  «         ddg}|j        dk    r|g|j        d         z  }t           |d¦  «        |¦  «         dd	gdd	gg}|j        dk    r|g|j        d         z  }t           |ddg¦  «        |¦  «         ŒÀg d¢g d¢f}| j        | j        fD ](}t          t          t           | j
        ||d
|d¬¦  «         Œ)t!          d¦  «        D ]¦}|dk    rt#          d„ |D ¦   «         ¦  «        }t          | j
        | j        |d
|d¬¦  «        }t           |d¦  «        g d¢gdz  ¦  «         t           |d¦  «        g d¢gdz  ¦  «         t           |ddg¦  «        dd	gddgddgggdz  ¦  «         Œ§ddgd	dgf}t          t          t           | j
        | j        |d
|d¬¦  «         | j        | j        | j	        fD ]Í}t          | j
        ||d
|d¬¦  «        }d	dg}|j        dk    r|g|j        d         z  }t           |d¦  «        |¦  «         ddg}|j        dk    r|g|j        d         z  }t           |d¦  «        |¦  «         dd	gddgg}|j        dk    r|g|j        d         z  }t           |ddg¦  «        |¦  «         ŒÎd	dgddgg}| j        | j        | j	        fD ](}t          t          t           | j
        ||d
|d¬¦  «         Œ)t!          d¦  «        D ]¢}|dk    rt	          j        |¦  «        }t          | j
        | j        |d
|d¬¦  «        }t           |d¦  «        d	dgddgg¦  «         t           |d¦  «        d	dgddgg¦  «         t           |ddg¦  «        d	d	gddggddgddggg¦  «         Œ£ddgddggd	dgddggf}| j        | j        | j	        fD ](}t          t          t           | j
        ||d
|d¬¦  «         Œ)t!          d¦  «        D ]Â}|dk    r4t	          j        |d         ¦  «        t	          j        |d         ¦  «        f}t          | j
        | j        |d
|d¬¦  «        }t           |d¦  «        d	dgddgg¦  «         t           |d¦  «        ddgddgg¦  «         t           |ddg¦  «        dd	gddggddgddggg¦  «         ŒÃd S )N)éœÿÿÿéd   Fr�   r=   g      Y@éöÿÿÿrB   r÷   rø   rA   )re   rj   rW   rr   r>   rh   r   )rø   éÈ   é,  r%   rú   rû   )r÷   é8ÿÿÿéÔþÿÿrü   rý   c              3   ó>   K  — | ]}t          j        |¦  «        V — Œd S rÞ   )rC   rL   )Ú.0rµ   s     r-   ú	<genexpr>z1TestInterp1D._check_fill_value.<locals>.<genexpr>R  s*   è è € Ð"CÐ"C°1¥2¤8¨A¡;¤;Ð"CÐ"CÐ"CÐ"CÐ"CÐ"Cr3   iè  iÐ  iüÿÿi0øÿÿ)r   rF   rG   r   rC   r�   rS   rT   rQ   rR   rE   ÚndimÚshaper'   rm   rL   ÚrangeÚtuple)r)   re   Úinterpr*   ÚresultrW   Úiis          r-   Ú_check_fill_valuezTestInterp1D._check_fill_valueñ  sx  € Ý˜$œ( D¤H°4Ø%0¸uðFñ Fô Fˆå! & &¨¡*¤*­b¬j¸Ñ.>Ô.>Ñ?Ô?Ð?Ý! & &¨¡+¤+­r¬z¸%Ñ/@Ô/@ÑAÔAÐAÝ! & &¨#¨r¨Ñ"3Ô"3°d¸C°[ÑAÔAÐAð ”)˜TœY¨¬	°4´8Ð<ð 	Añ 	AˆAÝ˜dœg q¨t¸"Ø),¸5ðBñ Bô BˆFå% f f¨R¡j¤jµ"´*¸TÑ2BÔ2BÑCÔCÐCÝ% f f¨S¡k¤kµ2´:¸dÑ3CÔ3CÑDÔDÐDÝ% f f¨c°2¨YÑ&7Ô&7½¼ÀDÑ9IÔ9IÑJÔJÐJõ ˜dœg q¨t¸"Ø)4À5ðJñ Jô JˆFå% f f¨R¡j¤jµ"´*¸TÑ2BÔ2BÑCÔCÐCÝ% f f¨S¡k¤kµ2´:¸eÑ3DÔ3DÑEÔEÐEØŒv˜Š{ˆ{Ø  #˜;˜-¨!¬'°!¬*Ñ4Ð5¸¼À¼
ÑB��à ˜+˜¨¬°¬Ñ3�Ý% f f¨c°2¨YÑ&7Ô&7¸Ñ@Ô@Ð@Ñ@ð %�_�_ˆ
Ø”)˜TœYÐ'ð 	Nð 	NˆAÝ�*¥h°´¸ÀØ!¨jÀuðNñ Nô Nð Nð Nå˜$œ' 4¤9°4¸bØ%/¸eðEñ Eô Eˆå! & &¨¡*¤*¨¨¨Ð.?À!Ñ.CÑDÔDÐDÝ! & &¨¡+¤+°°°Ð/@À1Ñ/DÑEÔEÐEÝ! & &¨#¨r¨Ñ"3Ô"3¸¸S°zØ8;¸S°zØ8;¸S°zð7Cð 6DàFGñ6Hñ 	Iô 	Ið 	Ið
 ˜3�Zˆ
Ý•j¥(¨D¬G°T´YÀTØ¨*À5ð	Jñ 	Jô 	Jð 	Jà”)˜TœY¨¬Ð1ð 	Að 	AˆAÝ˜dœg q¨t¸"Ø)3À%ðIñ Iô IˆFà˜3�ZˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨R¡j¤j°&Ñ9Ô9Ð9Ý% f f¨S¡k¤k°6Ñ:Ô:Ð:Ø˜C�j 3¨ *Ð-ˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨c°2¨YÑ&7Ô&7¸Ñ@Ô@Ð@Ð@õ ”hÐ1Ð1Ð1Ñ2Ô2°CÐ8ˆ
Ø”)˜TœYÐ'ð 	Nð 	NˆAÝ�*¥h°´¸ÀØ!¨jÀuðNñ Nô Nð Nð Nå˜$œ' 4¤9°4¸bØ%/¸eðEñ Eô Eˆå! & &¨¡*¤*­b¬j¸Ñ.>Ô.>Ñ?Ô?Ð?Ý! & &¨¡+¤+Ð0BÐ0BÐ0BÐ/CÀaÑ/GÑHÔHÐHÝ! & &¨#¨r¨Ñ"3Ô"3¸¸c°{Ø8<¸c°{Ø8<¸c°{ð7Dð 6EàGHñ6Iñ 	Jô 	Jð 	Jõ
 ”h  d˜|Ñ,Ô,¨cÐ2ˆ
Ý•j¥(¨D¬G°T´YÀTØ¨*À5ð	Jñ 	Jô 	Jð 	Jà”)˜TœY¨¬Ð1ð 	Að 	AˆAÝ˜dœg q¨t¸"Ø)3À%ðIñ Iô IˆFå% f f¨R¡j¤jµ"´*¸S±/´/ÑBÔBÐBØ˜D�\ˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨S¡k¤k°6Ñ:Ô:Ð:Ø˜S�k D¨# ;Ð/ˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨c°2¨YÑ&7Ô&7¸Ñ@Ô@Ð@Ð@ð )Ð(Ð(¨/¨/¨/Ð:ˆ
Ø”)˜TœYÐ'ð 	Nð 	NˆAÝ�*¥h°´¸ÀØ!¨jÀuðNñ Nô Nð Nð Nå˜‘(”(ð 		Nð 		NˆBØ�QŠwˆwÝ"Ð"CÐ"C¸
Ð"CÑ"CÔ"CÑCÔC�
Ý˜dœg t¤y°tÀ"Ø)3À%ðIñ Iô IˆFå% f f¨R¡j¤j°?°?°?Ð2CÀaÑ2GÑHÔHÐHÝ% f f¨S¡k¤kÐ4FÐ4FÐ4FÐ3GÈ!Ñ3KÑLÔLÐLÝ% f f¨c°2¨YÑ&7Ô&7¸DÀ#¸;Ø<@À#¸;Ø<@À#¸;ð;Hð :IàKLñ:Mñ Nô Nð Nð Nð ˜T�l S¨# JÐ/ˆ
Ý•j¥(¨D¬G°T´YÀTØ¨*À5ð	Jñ 	Jô 	Jð 	Jà”)˜TœY¨¬Ð1ð 	Að 	AˆAÝ˜dœg q¨t¸"Ø)3À%ðIñ Iô IˆFà˜3�ZˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨R¡j¤j°&Ñ9Ô9Ð9Ø˜D�\ˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨S¡k¤k°6Ñ:Ô:Ð:Ø˜S�k D¨# ;Ð/ˆFØŒv˜Š{ˆ{Ø ˜ A¤G¨A¤JÑ.�Ý% f f¨c°2¨YÑ&7Ô&7¸Ñ@Ô@Ð@Ð@ð ˜C�j 4¨ ,Ð/ˆ
Ø”)˜TœY¨¬Ð1ð 	Nð 	NˆAÝ�*¥h°´¸ÀØ!¨jÀuðNñ Nô Nð Nð Nå˜‘(”(ð 
	Kð 
	KˆBØ�QŠwˆwÝœX jÑ1Ô1�
Ý˜dœg t¤y°tÀ"Ø)3À%ðIñ Iô IˆFå% f f¨R¡j¤j°C¸°:ÀÀd¸|Ð2LÑMÔMÐMÝ% f f¨S¡k¤k°S¸#°JÀÀtÀÐ3MÑNÔNÐNÝ% f f¨c°2¨YÑ&7Ô&7¸CÀ¸:Ø<?À¸:ð;Gà<@À$¸<Ø<@À$¸<ð;Ið:Jñ Kô Kð Kð Kð ˜d�| e¨U ^Ð4Ø˜S�z D¨$ <Ð0ð2ˆ
à”)˜TœY¨¬Ð1ð 	Nð 	NˆAÝ�*¥h°´¸ÀØ!¨jÀuðNñ Nô Nð Nð Nå˜‘(”(ð 	Lð 	LˆBØ�QŠwˆwÝ œh z°!¤}Ñ5Ô5µr´xÀ
È1ÄÑ7NÔ7NÐO�
Ý˜dœg t¤y°tÀ"Ø)3À%ðIñ Iô IˆFå% f f¨R¡j¤j°C¸°:ÀÀd¸|Ð2LÑMÔMÐMÝ% f f¨S¡k¤k°T¸4°LØ5:¸E°Nð4Dñ Eô Eð Eå% f f¨c°2¨YÑ&7Ô&7¸DÀ#¸;Ø<@À#¸;ð;Hà<AÀ4¸=Ø<AÀ4¸=ð;Jð:Kñ Lô Lð Lð Lð	Lð 	Lr3   c                 ó:   — dD ]}|                       |¦  «         Œd S ©N)r^   r[   ra   r_   r`   r]   rb   rc   )r  rn   s     r-   Útest_fill_valuezTestInterp1D.test_fill_value’  s4   € ð1ð 	)ð 	)ˆDà×"Ò" 4Ñ(Ô(Ð(Ð(ð	)ð 	)r3   c                 ó€   — t          | j        | j        d¬¦  «        }|j        dk    sJ ‚d|_        |j        dk    sJ ‚d S )Ng     À^@rt   g     t@)r   rF   rG   rW   )r)   r  s     r-   Útest_fill_value_writeablez&TestInterp1D.test_fill_value_writeable˜  sP   € å˜$œ( D¤H¸Ð?Ñ?Ô?ˆØÔ  EÒ)Ð)Ð)Ð)Ø!ˆÔØÔ  EÒ)Ð)Ð)Ð)Ð)Ð)r3   c           	      ó˜  — t          | j        | j        |¬¦  «        }t           |t	          j        ddgddgg¦  «        ¦  «        t	          j        ddgddgg¦  «        ¦  «         t           |d¦  «        t          j        ¦  «        sJ ‚ |d¦  «        j        dk    sJ ‚t          | j        | j	        |¬¦  «        }t           |d¦  «        t	          j        dd	g¦  «        ¦  «         t           |t	          j        ddg¦  «        ¦  «        t	          j        ddgd	d
gg¦  «        ¦  «         t          | j        | j
        d|¬¦  «        }t           |d¦  «        t	          j        ddg¦  «        ¦  «         t           |t	          j        ddg¦  «        ¦  «        t	          j        ddgddgg¦  «        ¦  «         t	          j        ddgddgg¦  «        }t           ||¦  «        t	          j        ddgddggddgd
dggg¦  «        ¦  «         t           ||¦  «        t	          j        ddgdd	ggddgddggg¦  «        ¦  «         d S )Nrd   rs   r7   r:   ç      @ry   r2   ru   rè   ç      (@r   ©rj   re   r{   g      *@g      .@g      1@r8   ç      @g      ,@)r   rF   rG   r   rC   rL   Ú
isinstanceÚndarrayr  rO   rP   )r)   re   r}   Ú	interp210Ú	interp102Úx_news         r-   Ú_nd_check_interpzTestInterp1D._nd_check_interpŸ  sš  € õ ˜DœH d¤h°TÐ:Ñ:Ô:ˆÝ! ( (­2¬8°b¸"°XÀÀB¸xÐ4HÑ+IÔ+IÑ"JÔ"JÝ"$¤(¨R°¨H°r¸2°hÐ+?Ñ"@Ô"@ñ	Bô 	Bð 	Bõ ˜(˜( 3™-œ-­¬Ñ4Ô4Ð4Ð4Ð4Øˆx˜‰}Œ}Ô" bÒ(Ð(Ð(Ð(õ ˜TœX t¤y°tÐ<Ñ<Ô<ˆ	Ý! ) )¨B¡-¤-µ´¸2¸s¸)Ñ1DÔ1DÑEÔEÐEÝ! ) )­B¬H°b¸"°XÑ,>Ô,>Ñ"?Ô"?Ý"$¤(¨R°¨H°s¸C°jÐ+AÑ"BÔ"Bñ	Dô 	Dð 	Dõ ˜TœX t¤y°q¸tÐDÑDÔDˆ	Ý! ) )¨B¡-¤-µ´¸3À¸*Ñ1EÔ1EÑFÔFÐFÝ! ) )­B¬H°b¸"°XÑ,>Ô,>Ñ"?Ô"?Ý"$¤(¨R°¨H°r¸2°hÐ+?Ñ"@Ô"@ñ	Bô 	Bð 	Bõ ”˜2˜r˜( R¨ HÐ-Ñ.Ô.ˆÝ! ) )¨EÑ"2Ô"2Ý"$¤(¨b°"¨X¸¸B°xÐ,@Ø.1°3¨Z¸#¸s¸Ð,Dð,Fñ #Gô #Gñ	Hô 	Hð 	Hõ 	" ) )¨EÑ"2Ô"2Ý"$¤(¨b°"¨X¸¸S°zÐ,BØ.0°"¨X¸¸S°zÐ,Bð,Dñ #Eô #Eñ	Fô 	Fð 	Fð 	Fð 	Fr3   c                 óø  — g d¢} t          j        t          j        |¦  «        ¦  «        j        |Ž }t	          |¦  «        D ]·\  }}t          j        |¦  «        }t          ||||¬¦  «        }t           ||¦  «        ||¬¦  «         t          j        d¦  «                             d¦  «        dz  }t          |¦  «        }	g d¢|	||dz   …<    ||¦  «        j        t          |	¦  «        k    s
J |¦   «         ‚Œ¸d S )N)é   r9   é   é   r  ©r©   r  )r%   r>   rh   r  rh   )
rC   rD   ÚprodrH   Ú	enumerater   r   Úlistr  r  )
r)   re   Úar*   ÚnÚsr+   r,   rJ   Úbs
             r-   Ú_nd_check_shapezTestInterp1D._nd_check_shape¿  sý   € àˆLˆLˆØ)�BŒI•b”g˜a‘j”jÑ!Ô!Ô)¨1Ð-ˆÝ˜a‘L”Lð 	1ð 	1‰DˆAˆqÝ”	˜!‘”ˆAÝ˜˜A A¨DÐ1Ñ1Ô1ˆAÝ% a a¨¡d¤d¨A°tÐ<Ñ<Ô<Ð<å”˜5Ñ!Ô!×)Ò)¨'Ñ2Ô2°SÑ8ˆBÝ�Q‘”ˆAØ �y�yˆAˆa��!‘ˆe‰HØ�1�R‘5”5”;¥%¨¡(¤(Ò*Ð*Ð*¨DÑ*Ô*Ð*Ð*ð	1ð 	1r3   c                 ód   — dD ],}|                       |¦  «         |                      |¦  «         Œ-d S )N)r^   ra   r_   r`   r[   r]   rb   rc   )r  r%  rn   s     r-   Útest_ndzTestInterp1D.test_ndÍ  sH   € ð1ð 	'ð 	'ˆDà×!Ò! $Ñ'Ô'Ð'Ø× Ò  Ñ&Ô&Ð&Ð&ð	'ð 	'r3   c                 ó  — t          j        g d¢¦  «        }||dz  z  }|                     |¦  «        }t          |||¬¦  «        }t	          |d d…          ||¦  «        d d…         ¦  «         t          j        ddd¦  «        }t          ||j        |¬¦  «        }t          ||j        |¬¦  «        }t	           ||¦  «        j         ||¦  «        ¦  «         t	           ||¦  «        j         ||¦  «        ¦  «         d S )N)
rh   ç      @r>   gÍÌÌÌÌÌ@r  gš™™™™™@gš™™™™™@g       @g      #@r=   ù      ð?       @rd   rA   rh   r=   é   )rC   rL   r­   r   r   ÚlinspaceÚrealÚimag)	r)   r—   re   r+   r*   rñ   ÚxiÚcrÚcis	            r-   Ú_check_complexzTestInterp1D._check_complexÓ  sþ   € ÝŒHÐ@Ð@Ð@ÑAÔAˆØ��f‘ÑˆØ�HŠH�U‰OŒOˆõ �Q˜ Ð%Ñ%Ô%ˆÝ! ! C R C¤&¨!¨!¨A©$¬$¨s°¨s¬)Ñ4Ô4Ð4õ Œ[˜˜B Ñ#Ô#ˆÝ�a˜œ dÐ+Ñ+Ô+ˆÝ�a˜œ dÐ+Ñ+Ô+ˆÝ! ! ! B¡%¤%¤*¨b¨b°©f¬fÑ5Ô5Ð5Ý! ! ! B¡%¤%¤*¨b¨b°©f¬fÑ5Ô5Ð5Ð5Ð5r3   c                 ó�   — dD ]B}|                       t          j        |¦  «         |                       t          j        |¦  «         ŒCd S r
  )r2  rC   rª   r«   rn   s     r-   Útest_complexzTestInterp1D.test_complexã  sP   € ð1ð 	5ð 	5ˆDà×Ò¥¤¨dÑ3Ô3Ð3Ø×Ò¥¤¨tÑ4Ô4Ð4Ð4ð	5ð 	5r3   zTest not meaningful on PyPy)Úreasonc                 óÔ   — t          j        dd¦  «        }t          j        dd¦  «        }t          t          ||¦  «        5 } |ddg¦  «         ~d d d ¦  «         d S # 1 swxY w Y   d S )Nr   rh   çš™™™™™¹?çš™™™™™É?)rC   r,  r   r   )r)   r+   r*   r  s       r-   Útest_circular_refszTestInterp1D.test_circular_refsé  s°   € õ ŒK˜˜1ÑÔˆÝŒK˜˜1ÑÔˆå¥¨!¨QÑ/Ô/ð 	°6ØˆF�C˜�:ÑÔÐØð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁAÁA!Á$A!c                 óª   — dD ]O}t          j        g d¢t           j        ¬¦  «        }t          |||¬¦  «        }t	           ||¦  «        |¦  «         ŒPd S )N)r[   rb   rc   )r   é2   é   r–   rd   )rC   rL   Úint8r   r   )r)   re   r+   r  s       r-   Útest_overflow_nearestz"TestInterp1D.test_overflow_nearestó  sd   € à3ð 	0ð 	0ˆDÝ”˜˜˜­R¬WÐ5Ñ5Ô5ˆAÝ˜!˜Q TÐ*Ñ*Ô*ˆBÝ% b b¨¡e¤e¨QÑ/Ô/Ð/Ð/ð	0ð 	0r3   c                 ó<  — t          j        d¦  «                             t          ¦  «        }|                     ¦   «         }t           j        |d<   dD ]I}t          |||¬¦  «        } |ddg¦  «        }t          j        |¦  «                             ¦   «         sJ ‚ŒJd S )Nr=   r  )r]   r_   rd   gš™™™™™@r  )	rC   rD   r­   Úfloatrq   r    r   ÚisfiniteÚall)r)   r+   r*   re   ÚirÚvalss         r-   Útest_local_nanszTestInterp1D.test_local_nansú  sš   € õ ŒI�b‰MŒM× Ò ¥Ñ'Ô'ˆØ�FŠF‰HŒHˆÝŒvˆˆ!‰Ø'ð 	+ð 	+ˆDÝ˜!˜Q TÐ*Ñ*Ô*ˆBØ�2�s˜C�j‘>”>ˆDÝ”;˜tÑ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r3   c                 ó  — t          j        d¦  «                             t          ¦  «        }|                     ¦   «         }|                     ¦   «         }t           j        |d<   dD ]š}t          |||¬¦  «        }t          |||¬¦  «        }dddgddgddggfD ]f}t          j        |¦  «        } ||¦  «         ||¦  «        }	}t          j        |	¦  «         	                    ¦   «         sJ ‚|j
        |	j
        k    sJ ‚ŒgŒ›d S )Nr•   r>   )r`   ra   rd   r  rh   r9   )rC   rD   r­   r@  rq   r    r   r�   rv   rB  r  )
r)   r+   r*   Úynre   rC  Úirnr´   ÚoutÚoutns
             r-   Útest_spline_nanszTestInterp1D.test_spline_nans  s  € õ ŒI�a‰LŒL×Ò¥Ñ&Ô&ˆØ�FŠF‰HŒHˆØ�VŠV‰XŒXˆÝ”ˆˆ1‰à*ð 	/ð 	/ˆDÝ˜!˜Q TÐ*Ñ*Ô*ˆBÝ˜1˜b tÐ,Ñ,Ô,ˆCØ˜Q ˜F a¨ V¨a°¨VÐ$4Ð5ð /ð /�Ý”z $Ñ'Ô'�Ø˜B˜q™EœE 3 3 q¡6¤6�T�Ý”x ‘~”~×)Ò)Ñ+Ô+Ð+Ð+Ð+Ø”y D¤JÒ.Ð.Ð.Ð.Ð.ð	/ð	/ð 	/r3   c                 óî   — t          j        d¦  «        t           j        z  }t          j        d¦  «        }t	          t
          ¦  «        5  t          ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr=   ra   rd   )rC   rl   r    rD   r'   rm   r   )r)   r+   r*   s      r-   Útest_all_nanszTestInterp1D.test_all_nans  sª   € åŒG�B‰KŒK�"œ&Ñ ˆÝŒI�b‰MŒMˆÝ�:Ñ&Ô&ð 	)ð 	)Ý�Q˜ Ð(Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)s   Á
A*Á*A.Á1A.c                 óZ  — t          j        dd¦  «        }t          j        | dz  ¦  «        }t          j        ddd¦  «        }dD ]d}||j        _        d|j        _        dD ]G}t          |||¬	¦  «        } ||¦  «        }t          j        |¦  «                             ¦   «         sJ ‚ŒHŒed S )
Nr   r=   rs   rŠ   r7  ©TFF)r^   r[   r]   r_   r`   ra   rd   )rC   rD   r¬   ÚflagsÚ	writeabler   rA  rB  )r)   r+   r*   r´   Úxnew_writeablere   rµ   rD  s           r-   Útest_read_onlyzTestInterp1D.test_read_only  sÄ   € ÝŒI�a˜ÑÔˆÝŒF�A�2˜‘8ÑÔˆÝŒy˜˜A˜sÑ#Ô#ˆà+ð 	/ð 	/ˆNØ#1ˆDŒJÔ Ø %ˆAŒGÔð"ð /ð /�å˜Q ¨Ð-Ñ-Ô-�Ø�q˜‘w”w�Ý”{ 4Ñ(Ô(×,Ò,Ñ.Ô.Ð.Ð.Ð.Ð.ð	/ð	/ð 	/r3   re   )r^   r[   r\   rb   rc   c                 ó.  — t          dgdg|dd¬¦  «        }t           |g d¢¦  «        t          j        g d¢¦  «        ¦  «         t          dgdg|d¬	¦  «        }t	          t
          d
¬¦  «        5   |d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr¸   r  Fr<   )re   rr   rW   )rh   r¸   r%   )r:   r  r=   Tr¥   zx_new is above©Úmatchr:   )r   r   rC   r�   r'   rm   )r)   re   rµ   s      r-   Útest_single_valuezTestInterp1D.test_single_value,  sð   € õ
 �c�U˜Q˜C d¸Ø 'ð)ñ )ô )ˆå˜˜˜+˜+˜+™œ­¬
°<°<°<Ñ(@Ô(@ÑAÔAÐAå�c�U˜Q˜C d¸Ð>Ñ>Ô>ˆÝ�:Ð-=Ð>Ñ>Ô>ð 	ð 	ØˆAˆc‰FŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Á1B
Â
BÂBN)r^   )+r/   r0   r1   rY   ro   rw   rƒ   r†   r…   r£   r¶   r»   rÁ   rÃ   rØ   rÚ   rÜ   rä   rí   ró   rõ   r  r  r  r  r%  r'  rC   r«   r2  r4  ÚpytestÚmarkÚskipifr   r9  r>  rE  rK  rM  rS  ÚparametrizerW  r2   r3   r-   r5   r5   "   s›  € € € € € ð'!ð '!ð '!ðRB9ð B9ð B9ðHDð Dð Dð&Dð Dð Dð4%ð %ð %ðHð Hð Hð&+ð +ð +ð*Gð Gð Gð$>ð >ð >ðHð Hð Hð*Hð Hð Hð*C&ð C&ð C&ðJC,ð C,ð C,ðJ:ð :ð :ð1ð 1ð 1ð-ð -ð -ð -ð0=ð =ð =ð =ð2ð 2ð 2ð_Lð _Lð _LðB)ð )ð )ð*ð *ð *ðFð Fð Fð Fð@1ð 1ð 1ð 1ð'ð 'ð 'ð $&¤=°xð 6ð 6ð 6ð 6ð 5ð 5ð 5ð „[×Ò˜Ð(EÐÑFÔFðð ñ GÔFðð0ð 0ð 0ð	+ð 	+ð 	+ð/ð /ð /ð$)ð )ð )ð/ð /ð /ð „[×ÒØÐGñô ðð ñô ðð ð r3   r5   c                   ó   — e Zd Zd„ ZdS )ÚTestLagrangec                 óÞ   — t          g d¢¦  «        }t          j        t          |j        ¦  «        ¦  «        } ||¦  «        }t          ||¦  «        }t          |j        |j        ¦  «         d S )N)r9   r%   rh   r  r>   )r   rC   rD   ÚlenÚcoeffsr   r   )r)   ÚpÚxsÚysÚpls        r-   Útest_lagrangezTestLagrange.test_lagrange<  s^   € Ý�;�;�;ÑÔˆÝŒY•s˜1œ8‘}”}Ñ%Ô%ˆØˆQˆr‰UŒUˆÝ�b˜‰_Œ_ˆÝ! !¤(¨2¬9Ñ5Ô5Ð5Ð5Ð5r3   N)r/   r0   r1   re  r2   r3   r-   r]  r]  :  s#   € € € € € ð6ð 6ð 6ð 6ð 6r3   r]  c                   ó>   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	S )
ÚTestAkima1DInterpolatorc                 ó  — t          j        dd¦  «        }t          j        g d¢¦  «        }t          ||¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t	           ||¦  «        |¦  «         d S )Nr;   rè   ©r;   r:   ru   rs   r:   r{   ç      @rj  gš™™™™™@çffffff@rs   ©r;   r&   ru   r¸   r)  ç      @g      @rk  g      @gÍÌÌÌÌÌ@g333333!@gÍÌÌÌÌÌ#@r8   ©r;   g      ö?r:   r¸   g     @ÿ?g     à@gŒ.ºè¢‹@gß^äë@gn ¹ä@gGNBÐ@grcß–÷·@g¦	£ÎI@rs   ©rC   rD   rL   r   r   ©r)   r+   r*   Úakr/  rò   s         r-   Ú	test_evalz!TestAkima1DInterpolator.test_evalE  s˜   € ÝŒI�b˜#ÑÔˆÝŒHÐEÐEÐEÑFÔFˆÝ   AÑ&Ô&ˆÝŒXð ð ð ñ ô ˆåŒXð ð ð ñ ô ˆõ
 	˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r3   c                 ó
  — t          j        dd¦  «        }t          j        g d¢¦  «        }t          ||d¬¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t	           ||¦  «        |¦  «         d S )Nr;   rè   ri  Úmakima©Úmethodrl  )r;   gFð?ðƒõ?r:   gš™™™™÷?gš™™™™ÿ?g…¶g{¶'@gú>J(j@g?±Ôç§ð@gqÁü@gýÞÀÇð³@gû•Š9~@g­Áøo¢
@rs   ro  rp  s         r-   Útest_eval_modz%TestAkima1DInterpolator.test_eval_modR  sŸ   € õ ŒI�b˜#ÑÔˆÝŒHÐEÐEÐEÑFÔFˆÝ   A¨hÐ7Ñ7Ô7ˆÝŒXð &ð &ð &ñ 'ô 'ˆåŒXð 5ð 5ð 5ñ 6ô 6ˆõ 	˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r3   c                 ój  — t          j        dd¦  «        }t          j        g d¢¦  «        }t          j        |d|z  f¦  «        }t	          ||¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        |d|z  f¦  «        }t           ||¦  «        |¦  «         d S )Nr;   rè   ri  r:   rl  rn  )rC   rD   rL   Úcolumn_stackr   r   rp  s         r-   Útest_eval_2dz$TestAkima1DInterpolator.test_eval_2dc  sÆ   € ÝŒI�b˜#ÑÔˆÝŒHÐEÐEÐEÑFÔFˆÝŒO˜Q  Q¡˜KÑ(Ô(ˆÝ   AÑ&Ô&ˆÝŒXð &ð &ð &ñ 'ô 'ˆåŒXð 8ð 8ð 8ñ 9ô 9ˆõ Œ_˜b " r¡'˜]Ñ+Ô+ˆÝ˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r3   c                 ó  — t          j        dd¦  «        }t          j        g d¢¦  «        }t          j        d¦  «        }||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	          ||¦  «        }t          j        g d
¢¦  «        }t          j        d¦  «        }t          j        g d¢¦  «        }||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 S )Nr;   rè   ri  )r‹   r%   r%   r   r:   rh   rs   r  rl  )é   r%   r%   rn  )rC   rD   rL   Úemptyr   r   )r)   r+   Úy_r*   rq  r/  rò   Úyi_s           r-   Útest_eval_3dz$TestAkima1DInterpolator.test_eval_3dt  sf  € ÝŒI�b˜#ÑÔˆÝŒXÐFÐFÐFÑGÔGˆÝŒH�ZÑ Ô ˆØˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ý   AÑ&Ô&ˆÝŒXð &ð &ð &ñ 'ô 'ˆåŒX�jÑ!Ô!ˆÝŒhð 9ð 9ð 9ñ :ô :ˆð ˆˆ1ˆ1ˆ1ˆa�ˆ7‰Ø˜3‘hˆˆ1ˆ1ˆ1ˆa�ˆ7‰Ø˜3‘hˆˆ1ˆ1ˆ1ˆa�ˆ7‰Ø˜3‘hˆˆ1ˆ1ˆ1ˆa�ˆ7‰Ý˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r3   c                 ó(  — t          j        g d¢¦  «        }t          j        ||dz  f¦  «        j        }t	          ||¦  «        }t          j        ddg¦  «        } ||¦  «        }t          |t          j        ||dz  f¦  «        j        ¦  «         d S )Nr›   r%   r&   r¸   )rC   rL   ÚvstackÚTr   r   )r)   r+   r*   rq  Úx_evalÚy_evals         r-   Ú%test_degenerate_case_multidimensionalz=TestAkima1DInterpolator.test_degenerate_case_multidimensional�  sŠ   € åŒH�Y�Y�YÑÔˆÝŒI�q˜!˜Q™$�iÑ Ô Ô"ˆÝ   AÑ&Ô&ˆÝ”˜3 ˜*Ñ%Ô%ˆØ��F‘”ˆÝ˜¥¤	¨6°6¸1±9Ð*=Ñ >Ô >Ô @ÑAÔAÐAÐAÐAr3   c                 ó  — t          j        dd¦  «        }t          j        g d¢¦  «        }t          ||¦  «        }d}t	          j        t          |¬¦  «        5  |                     d d ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr;   rè   ri  z9Extending a 1-D Akima interpolator is not yet implementedrU  )rC   rD   rL   r   rX  r   r(   Úextend)r)   r+   r*   rq  rV  s        r-   Útest_extendz#TestAkima1DInterpolator.test_extend–  sË   € ÝŒI�b˜#ÑÔˆÝŒHÐEÐEÐEÑFÔFˆÝ   AÑ&Ô&ˆØKˆÝŒ]Õ.°eÐ<Ñ<Ô<ð 	"ð 	"Ø�IŠI�d˜DÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   ÁA=Á=BÂBc                 óì   — t          j        dd¦  «        }t          j        g d¢¦  «        }d}t          j        t
          |¬¦  «        5  t          ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr;   rè   ri  z `method`=invalid is unsupported.rU  Úinvalidru  )rC   rD   rL   rX  r   r(   r   )r)   r+   r*   rV  s       r-   Útest_mod_invalid_methodz/TestAkima1DInterpolator.test_mod_invalid_methodž  s½   € ÝŒI�b˜#ÑÔˆÝŒHÐEÐEÐEÑFÔFˆØ2ˆÝŒ]Õ.°eÐ<Ñ<Ô<ð 	8ð 	8Ý  1¨YÐ7Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 	8ð 	8s   Á	A)Á)A-Á0A-c                 ó   — t          j        ddd¦  «        }|dz  }t          j        ddd¦  «        }|dz  }t          ||d¬	¦  «        }t          ||d
¬	¦  «        }t          ||d ¬	¦  «        }t           ||¦  «         ||¦  «        d¬¦  «         t	           ||¦  «        dd…         t          j        dt           j        ¦  «        ¦  «         t	           ||¦  «        dd…         t          j        dt           j        ¦  «        ¦  «         t           ||d¬	¦  «         ||¦  «        d¬¦  «         t          | ||¦  «        d¬¦  «         d S )Néûÿÿÿr9   r‹   r%   rù   r=   é   T©rf   Fr˜   r™   r   r  éüÿÿÿrA   r>   )rC   r,  r   r   r   Úfullr    )r)   r+   r*   Úx_extÚy_extÚak_trueÚak_falseÚak_nones           r-   Útest_extrapolate_attrz-TestAkima1DInterpolator.test_extrapolate_attr¥  sI  € åŒK˜˜A˜rÑ"Ô"ˆØˆq‰DˆÝ”˜C  RÑ(Ô(ˆØ�q‘ˆå% a¨¸Ð=Ñ=Ô=ˆÝ& q¨!¸Ð?Ñ?Ô?ˆÝ% a¨¸Ð=Ñ=Ô=ˆå˜˜ ™œ¨¨°©¬¸eÐDÑDÔDÐDÝ˜˜ ™œ¨¨!¨Ô,­b¬g°a½¼Ñ.@Ô.@ÑAÔAÐAÝ˜˜ ™œ¨¨2¨Ô.µ´¸½2¼6Ñ0BÔ0BÑCÔCÐCå˜˜ °DÐ9Ñ9Ô9¸7¸7À5¹>¼>ÐPUÐVÑVÔVÐVå˜˜w˜w u™~œ~°EÐ:Ñ:Ô:Ð:Ð:Ð:r3   N)r/   r0   r1   rr  rw  rz  r€  r†  r‰  rŒ  r˜  r2   r3   r-   rg  rg  D  s�   € € € € € ð$ð $ð $ð$ð $ð $ð"$ð $ð $ð"$ð $ð $ð2Bð Bð Bð"ð "ð "ð8ð 8ð 8ð;ð ;ð ;ð ;ð ;r3   rg  rv  c                 óô   — t          j        dd¦  «        }t          j        g d¢¦  «        }|d|z  z
  }d}t          j        t
          |¬¦  «        5   | ||¦  «         d d d ¦  «         n# 1 swxY w Y   d„ }d S )Nr;   rè   ri  y               @zreal valuesrU  c                 ó¶   — t          j        ddd¦  «        }|dz  }t          j        ddd¦  «        }t          ||d¬	¦  «        }d
„ }t          d|||¦  «         d S )NrŽ  r9   r‹   r%   rù   r=   r�  Tr�  c                 ó   —  ||¦  «         d S rÞ   r2   )Ú_rq  r“  s      r-   Ú	worker_fnz9test_complex.<locals>.test_concurrency.<locals>.worker_fnÊ  s   € ØˆBˆu‰IŒIˆIˆIˆIr3   )rC   r,  r   r   )r)   r+   r*   r“  rq  r�  s         r-   Útest_concurrencyz&test_complex.<locals>.test_concurrencyÃ  sp   € åŒK˜˜A˜rÑ"Ô"ˆØˆq‰DˆÝ”˜C  RÑ(Ô(ˆÝ   A°4Ð8Ñ8Ô8ˆð	ð 	ð 	õ 	   I¨r°5Ñ9Ô9Ð9Ð9Ð9r3   )rC   rD   rL   rX  r   rm   )rv  r+   r*   Úmsgrž  s        r-   r4  r4  ¹  sÏ   € õ 	Œ	�"�cÑÔ€AÝ
ŒÐAÐAÐAÑBÔB€AØ	ˆBˆq‰D‰€AØ
€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð ð Øˆˆq�!‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
:ð 
:ð 
:ð 
:ð 
:s   ÁA*Á*A.Á1A.c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )ÚTestPPolyCommonc                 óÜ   — t          j        ddgddgddgg¦  «        }t          j        g d¢¦  «        }t          t          t          ||¦  «         t          t          t
          ||¦  «         d S )Nrh   r  r%   r9   r>   r  )r   rh   r&   )rC   rL   r'   rm   r   r   )r)   rñ   r+   s      r-   Útest_sort_checkzTestPPolyCommon.test_sort_checkÒ  se   € ÝŒH�q˜!�f˜q !˜f q¨! fÐ-Ñ.Ô.ˆÝŒH�[�[�[Ñ!Ô!ˆÝ•j¥%¨¨AÑ.Ô.Ð.Ý•j¥%¨¨AÑ.Ô.Ð.Ð.Ð.r3   c                 óˆ   — t          t          ¦  «        5  t          ddgddg¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrh   r%   r   )r'   rm   r   rX   s    r-   Útest_ctor_czTestPPolyCommon.test_ctor_cØ  sŒ   € å�:Ñ&Ô&ð 	"ð 	"Ý�1�a�&˜1˜a˜&Ñ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   •7·;¾;c                 ó‚  — t           j                             d¦  «         d}t          j        t           j        ddt           j                             d¦  «        z  df         ¦  «        }dt           j                             |dz   t          |¦  «        dz
  dd¦  «        z  dz
  }t          t          fD �]} ||d d …d d…f         |d d…         ¦  «        }| 	                    |d d …dd …f         |dd …         ¦  «          ||d d …dd …f         |dd …         ¦  «        }| 	                    |d d …d d…f         |d d…         ¦  «          |||¦  «        }t          |j        |j        ¦  «         t          |j        |j        ¦  «         t          |j        |j        ¦  «         t          |j        |j        ¦  «         �Œd S )	NéÒ  r>   r   r=   r?   r%   rh   rŠ   )rC   ÚrandomÚseedÚuniquerð   Úrandr_  r   r   rˆ  r   rñ   r+   )r)   Úorderr+   rñ   ÚclsÚppÚpp2Úpp3s           r-   r‰  zTestPPolyCommon.test_extendÝ  s¥  € å
Œ	�Š�tÑÔÐàˆÝŒI•b”e˜A˜r¥B¤I§N¢N°2Ñ$6Ô$6Ñ6¸Ð:Ô;Ñ<Ô<ˆØ�bŒi�nŠn˜U 1™W¥c¨!¡f¤f¨Q¡h°°1Ñ5Ô5Ñ5¸Ñ9ˆå�5�>ð 	*ñ 	*ˆCØ��Q�q�q�q˜˜!˜�t”W˜a   œfÑ%Ô%ˆBØ�IŠI�a˜˜˜˜!˜"˜"˜”g˜q   œvÑ&Ô&Ð&à�#�a˜˜˜˜2˜3˜3˜”i  2 3 3¤Ñ(Ô(ˆCØ�JŠJ�q˜˜˜˜C˜R˜C˜”y ! C R C¤&Ñ)Ô)Ð)à�#�a˜‘)”)ˆCå˜BœD #¤%Ñ(Ô(Ð(Ý˜BœD #¤%Ñ(Ô(Ð(Ý˜CœE 3¤5Ñ)Ô)Ð)Ý˜CœE 3¤5Ñ)Ô)Ð)Ñ)ð	*ð 	*r3   c                 ó¦  — t           j                             d¦  «         t          j        ddd¦  «        }t           j                             dd¦  «        }t          j        ddd¦  «        }t           j                             dd¦  «        }t
          t          fD ]¶} |||¦  «        } |||¦  «        } |||¦  «        }|                     ||dd …         ¦  «         t          j        dddd	¬
¦  «        }	t          j        ddd¦  «        }
t           ||	¦  «         ||	¦  «        ¦  «         t           ||
¦  «         ||
¦  «        ¦  «         Œ·d S )Nr§  r   rh   r  r%   r9   r  rû   F)Úendpoint)	rC   r¨  r©  r,  r«  r   r   rˆ  r   )r)   r+   rñ   rJ   Úc2r­  Úpp1r¯  Úpp_combÚxi1Úxi2s              r-   Útest_extend_diff_ordersz'TestPPolyCommon.test_extend_diff_ordersó  s<  € å
Œ	�Š�tÑÔÐåŒK˜˜1˜aÑ Ô ˆÝŒI�NŠN˜1˜aÑ Ô ˆåŒ[˜˜A˜qÑ!Ô!ˆÝŒY�^Š^˜A˜qÑ!Ô!ˆå�5�>ð 	4ð 	4ˆCØ�#�a˜‘)”)ˆCØ�#�b˜"‘+”+ˆCà�c˜!˜Q‘i”iˆGØ�NŠN˜2˜r ! " "œvÑ&Ô&Ð&õ ”+˜a  C°%Ð8Ñ8Ô8ˆCÝ”+˜a  CÑ(Ô(ˆCå˜C˜C ™HœH g g¨c¡l¤lÑ3Ô3Ð3Ý˜C˜C ™HœH g g¨c¡l¤lÑ3Ô3Ð3Ð3ð	4ð 	4r3   c                 óJ  — t           j                             d¦  «         d}t          j        t           j                             ddd¦  «        ¦  «        }t           j                             |dz   |j        d         dz
  dd¦  «        }t          t          fD �]} |||¦  «        } ||d d …d d…f         |d d…         ¦  «        }| 	                    |d d …dd …f         |dd …         ¦  «          ||d d …dd …f         |dd …         ¦  «        }| 	                    |d d …d d…f         |d d…         ¦  «         t          |j        |j        ¦  «         t          |j        |j        ¦  «         t          |j        |j        ¦  «         t          |j        |j        ¦  «         �Œd S )Nr   r>   r=   é   rh   r%   rŠ   )rC   r¨  r©  ÚsortÚuniformr«  r  r   r   rˆ  r   rñ   r+   )r)   r¬  r+   rñ   r­  ra  Úp1Úp2s           r-   Útest_extend_descendingz&TestPPolyCommon.test_extend_descending  sŽ  € Ý
Œ	�Š�qÑÔÐàˆÝŒG•B”I×%Ò% a¨¨RÑ0Ô0Ñ1Ô1ˆÝŒI�NŠN˜5 1™9 a¤g¨a¤j°1¡n°a¸Ñ;Ô;ˆå�5�>ð 	'ñ 	'ˆCØ��A�q‘	”	ˆAà��Q�q�q�q˜"˜1˜"�u”X˜q  " œvÑ&Ô&ˆBØ�IŠI�a˜˜˜˜1˜2˜2˜”h  " # #¤Ñ'Ô'Ð'à��Q�q�q�q˜"˜#˜#�v”Y  " # #¤Ñ'Ô'ˆBØ�IŠI�a˜˜˜˜3˜B˜3˜”i  3 B 3¤Ñ(Ô(Ð(å˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ñ&ð	'ð 	'r3   c           	      óð  — t           j                             d¦  «         t           j                             ddddd¦  «        }t          j        t           j                             d¦  «        ¦  «        }t           j                             dd	¦  «        }t
          t          fD ]$} |||¦  «        } ||¦  «        j        d
k    sJ ‚Œ%t
          t          fD ] } ||d         |¦  «        }t          j         |d¦  «        ¦  «        dk    sJ ‚t          j         |t          j        d¦  «        ¦  «        ¦  «        dk    sJ ‚t          t          |t          j        ddgdggt          ¬¦  «        ¦  «         Œ¡d S )Nr§  r•   rÈ   r9   r  r  r|  r>   r  )r>   r  r9   r  r  ).r   r   r   r&   r2   r7  r8  çš™™™™™Ù?r–   )rC   r¨  r©  r«  r»  r   r   r  rL   r'   rm   Úobject)r)   rñ   r+   Úxpr­  ra  s         r-   Ú
test_shapezTestPPolyCommon.test_shape!  sZ  € Ý
Œ	�Š�tÑÔÐÝŒI�NŠN˜1˜b ! Q¨Ñ*Ô*ˆÝŒG•B”I—N’N 2Ñ&Ô&Ñ'Ô'ˆÝŒY�^Š^˜A˜qÑ!Ô!ˆÝ�5�>ð 	2ð 	2ˆCØ��A�q‘	”	ˆAØ�1�R‘5”5”; /Ò1Ð1Ð1Ð1Ð1õ �5�>ð 	Vð 	VˆCØ��A�l”O QÑ'Ô'ˆAå”8˜A˜A˜c™FœFÑ#Ô# rÒ)Ð)Ð)Ð)Ý”8˜A˜A�bœh s™mœmÑ,Ô,Ñ-Ô-°Ò3Ð3Ð3Ð3å�* a­¬°C¸°:À¸uÐ2EÍVÐ)TÑ)TÔ)TÑUÔUÐUÐUð	Vð 	Vr3   c                 óR  — t           j                             ddddd¦  «        }t          j        t           j                             d¦  «        ¦  «        }t           j                             dd¦  «        }t          t
          fD ]#} |||¦  «        }d	„ }t          d
|||¦  «         Œ$d S )Nr•   rÈ   r9   r  r  r|  r>   r  c                 ó   —  ||¦  «         d S rÞ   r2   )rœ  r  rÃ  s      r-   r�  z3TestPPolyCommon.test_concurrency.<locals>.worker_fn<  s   € Ø��r‘
”
�
�
�
r3   r=   )rC   r¨  r«  r»  r   r   r   )r)   rñ   r+   rÃ  r­  r  r�  s          r-   rž  z TestPPolyCommon.test_concurrency3  s£   € åŒI�NŠN˜1˜b ! Q¨Ñ*Ô*ˆÝŒG•B”I—N’N 2Ñ&Ô&Ñ'Ô'ˆÝŒY�^Š^˜A˜qÑ!Ô!ˆå�5�>ð 	?ð 	?ˆCØ�S˜˜A‘Y”YˆFðð ð õ $ B¨	°6¸2Ñ>Ô>Ð>Ð>ð	?ð 	?r3   c           	      ó\  — t           j                             d¦  «         t          j        t           j                             d¦  «        ¦  «        }t           j                             d¦  «        dz  }|j        |j        }}t           j                             d¦  «        }t          t          fD ]}} |||¦  «         |||¦  «         |||¦  «        }	}}dD ]T}
t           |||
¦  «        j         |||
¦  «        ¦  «         t           |||
¦  «        j         |	||
¦  «        ¦  «         ŒUŒ~d S )Né90  r|  )r•   rÈ   y      ð?333333Ó?r9   r›   )	rC   r¨  r©  r»  r-  r.  r   r   r   )r)   r+   rñ   Úc_reÚc_imrÃ  r­  ra  Úp_reÚp_imÚnus              r-   Útest_complex_coefz!TestPPolyCommon.test_complex_coefB  s  € Ý
Œ	�Š�uÑÔÐÝŒG•B”I×$Ò$ RÑ(Ô(Ñ)Ô)ˆÝŒI×Ò˜WÑ%Ô%¨Ñ3ˆØ”V˜QœVˆdˆÝŒY×Ò˜aÑ Ô ˆÝ�5�>ð 	>ð 	>ˆCØ˜C  1™IœI s s¨4°¡|¤|°S°S¸¸q±\´\�TˆtˆAØð >ð >�Ý   " b¡	¤	¤°°°R¸±´Ñ=Ô=Ð=Ý   " b¡	¤	¤°°°R¸±´Ñ=Ô=Ð=Ð=ð>ð	>ð 	>r3   c                 ó(  — t           j                             d¦  «         t           j                             dddddd¦  «        }|j        }t           j                             d¦  «        }d	D �]k}|j        |d
z            }t          j        t           j                             |d
z   ¦  «        ¦  «        }t          t          fD �]} ||||¬¦  «        }|j        j        |||dz   …         |d |…         z   ||dz   d …         z   k    sJ ‚ ||¦  «        }	|d |…         |j        z   |d|z   d …         z   }
|	j        |
k    sJ ‚ ||||¬¦  «         	                    ¦   «          ||||¬¦  «         	                    d¦  «         ||||¬¦  «         
                    ¦   «          ||||¬¦  «         
                    d¦  «        fD ]}|j        |j        k    sJ ‚Œ�Œ�ŒmdD ]6}t          t          fD ]%}t          t          |fi t          |||¬¦  «        ¤Ž Œ&Œ7d S )NrÈ  r>   r  r9   r  r  r•   )rh   r%   ©r   rh   r%   r>   rh   rk   r%   )rA   r  r9   r  )rñ   r+   rj   )rC   r¨  r©  r«  r  r»  r   r   rñ   Ú
derivativeÚantiderivativerj   r'   rm   r‘   )r)   rñ   Úc_srÃ  rj   Úmr+   r­  ra  ÚresÚ
targ_shaper½  s               r-   Ú	test_axiszTestPPolyCommon.test_axisN  s\  € Ý
Œ	�Š�uÑÔÐÝŒI�NŠN˜1˜a  A q¨!Ñ,Ô,ˆØŒgˆÝŒY×Ò˜fÑ%Ô%ˆØ ð 	-ñ 	-ˆDØ”˜˜Q™”ˆAÝ”�œ	Ÿš q¨¡sÑ+Ô+Ñ,Ô,ˆAÝ�u�~ð -ñ -�Ø�C˜˜1 4Ð(Ñ(Ô(�Ø”s”y C¨¨T°!©V¨Ô$4°s¸5¸D¸5´zÑ$AÀCÈÈQÉÈÈÄLÑ$PÒPÐPÐPÐPØ�a˜‘e”e�Ø   $ œZ¨"¬(Ñ2°S¸¸4¹¸¸´\ÑA�
Ø”y JÒ.Ð.Ð.Ð.ð ˜3˜q !¨$Ð/Ñ/Ô/×:Ò:Ñ<Ô<Ø˜3˜q !¨$Ð/Ñ/Ô/×:Ò:¸1Ñ=Ô=Ø˜3˜q !¨$Ð/Ñ/Ô/×>Ò>Ñ@Ô@Ø˜3˜q !¨$Ð/Ñ/Ô/×>Ò>¸qÑAÔAðCð -ð -�Bð œ7 a¤fÒ,Ð,Ð,Ð,Ð,ñ	-ñ-ð  "ð 	Lð 	LˆDÝ�u�~ð Lð L�Ý�j¨#ÐKÐKµ¸¸QÀTÐ1JÑ1JÔ1JÐKÐKÐKÐKðLð	Lð 	Lr3   N)r/   r0   r1   r£  r¥  r‰  r¸  r¿  rÄ  rž  rÎ  r×  r2   r3   r-   r¡  r¡  Ð  s£   € € € € € ð/ð /ð /ð"ð "ð "ð
*ð *ð *ð,4ð 4ð 4ð2'ð 'ð 'ð*Vð Vð Vð$?ð ?ð ?ð
>ð 
>ð 
>ðLð Lð Lð Lð Lr3   r¡  c                   ód   — e Zd Z G d„ de¦  «        Z G d„ de¦  «        Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )ÚTestPolySubclassingc                   ó   — e Zd ZdS )úTestPolySubclassing.PN©r/   r0   r1   r2   r3   r-   ÚPrÛ  l  ó   € € € € € Øˆr3   rÝ  c                   ó   — e Zd ZdS )úTestPolySubclassing.BNrÜ  r2   r3   r-   ÚBrà  o  rÞ  r3   rá  c                 ó8  — t           j                             d¦  «         t          j        t           j                             d¦  «        ¦  «        }t           j                             d¦  «        }|                      ||¦  «        |                      ||¦  «        fS )Nr§  r>   )r  r%   )rC   r¨  r©  r»  rÝ  rá  )r)   r+   rñ   s      r-   Ú_make_polynomialsz%TestPolySubclassing._make_polynomialsr  sm   € Ý
Œ	�Š�tÑÔÐÝŒG•B”I×$Ò$ QÑ'Ô'Ñ(Ô(ˆÝŒI×Ò˜VÑ$Ô$ˆØ�vŠv�a˜‰|Œ|˜TŸVšV A q™\œ\Ð)Ð)r3   c                 óÚ   — |                       ¦   «         \  }}||fD ](}|                     ¦   «         }|j        |j        k    sJ ‚Œ)|                     ¦   «         }|j        |j        k    sJ ‚d S rÞ   )rã  rÑ  Ú	__class__rÒ  )r)   r®  Úbpra  ÚpdÚppas         r-   Útest_derivativez#TestPolySubclassing.test_derivativex  s{   € Ø×'Ò'Ñ)Ô)‰ˆˆBØ�b�ð 	/ð 	/ˆAØ—’‘”ˆBØ”; "¤,Ò.Ð.Ð.Ð.Ð.à×ÒÑ!Ô!ˆØŒ|˜sœ}Ò,Ð,Ð,Ð,Ð,Ð,r3   c                 ó   — t           j                             d¦  «         t          j        t           j        dt           j                             d¦  «        df         ¦  «        }t           j                             t          |¦  «        ¦  «        }t          ||d¬¦  «        }| j         	                    |¦  «        }|j
        | j        k    sJ ‚d S )Nr§  r   r‹   rh   ©r#  )rC   r¨  r©  r»  rð   r«  r_  r   rÝ  Úfrom_splinerå  )r)   r+   r*   Úsplr®  s        r-   Útest_from_splinez$TestPolySubclassing.test_from_spline�  sž   € Ý
Œ	�Š�tÑÔÐÝŒG•B”E˜!�RœYŸ^š^¨BÑ/Ô/°Ð2Ô3Ñ4Ô4ˆÝŒI�NŠN�3˜q™6œ6Ñ"Ô"ˆå�Q˜˜QÐÑÔˆØŒV×Ò Ñ$Ô$ˆØŒ|˜tœvÒ%Ð%Ð%Ð%Ð%Ð%r3   c                 óä   — |                       ¦   «         \  }}| j                             |¦  «        }|j        | j        k    sJ ‚| j                             |¦  «        }|j        | j        k    sJ ‚d S rÞ   )rã  rÝ  Úfrom_bernstein_basisrå  rá  Úfrom_power_basis)r)   r®  ræ  r´  Úbp1s        r-   Útest_conversionsz$TestPolySubclassing.test_conversionsŠ  sq   € Ø×'Ò'Ñ)Ô)‰ˆˆBàŒf×)Ò)¨"Ñ-Ô-ˆØŒ} ¤Ò&Ð&Ð&Ð&àŒf×%Ò% bÑ)Ô)ˆØŒ} ¤Ò&Ð&Ð&Ð&Ð&Ð&r3   c                 óx   — g d¢}dgdgdgg}| j                              ||¦  «        }|j        | j         k    sJ ‚d S )Nr›   rh   r%   r>   )rá  Úfrom_derivativesrå  )r)   r+   r*   ræ  s       r-   Útest_from_derivativesz)TestPolySubclassing.test_from_derivatives“  sN   € ØˆIˆIˆØˆS�1�#˜�sˆOˆØŒV×$Ò$ Q¨Ñ*Ô*ˆØŒ|˜tœvÒ%Ð%Ð%Ð%Ð%Ð%r3   N)r/   r0   r1   r   rÝ  r   rá  rã  ré  rî  ró  rö  r2   r3   r-   rÙ  rÙ  k  s³   € € € € € ðð ð ð ð ˆEñ ô ð ðð ð ð ð ˆEñ ô ð ð*ð *ð *ð-ð -ð -ð&ð &ð &ð'ð 'ð 'ð&ð &ð &ð &ð &r3   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„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )Ú	TestPPolyc                 ó8  — t          j        ddgddgddgg¦  «        }t          j        g d¢¦  «        }t          ||¦  «        }t           |d¦  «        t          j        d	¦  «        ¦  «         t           |d
¦  «        t          j        d¦  «        ¦  «         d S )Nrh   r  r%   r9   r>   r  ©r   r&   rh   ç333333Ó?ç…ëQ¸…@çffffffæ?ç¤p=
×£@©rC   rL   r   r   r�   ©r)   rñ   r+   ra  s       r-   Útest_simplezTestPPoly.test_simple›  s�   € ÝŒH�q˜!�f˜q !˜f q¨! fÐ-Ñ.Ô.ˆÝŒH�[�[�[Ñ!Ô!ˆÝ�!�Q‰KŒKˆÝ˜˜˜#™œ¥¤
Ð+?Ñ @Ô @ÑAÔAÐAÝ˜˜˜#™œ¥¤
Ð+KÑ LÔ LÑMÔMÐMÐMÐMr3   c                 óì  — t          j        ddgddgddgg¦  «        }t          j        g d¢¦  «        }t          ||d¬	¦  «        }t           |d
¦  «        t          j        d¦  «        ¦  «         t           |d¦  «        t          j        d¦  «        ¦  «         t           |d
d¦  «        t          j        d¦  «        ¦  «         t           |dd¦  «        t          j        d¦  «        ¦  «         d S )Nrh   r  r%   r9   r>   r  rú  Úperiodicr�  gÍÌÌÌÌÌô?rü  ç333333Ó¿rþ  gÍÌÌÌÌÌ@gffffff@rÿ  r   s       r-   Útest_periodiczTestPPoly.test_periodic¢  sö   € ÝŒH�q˜!�f˜q !˜f q¨! fÐ-Ñ.Ô.ˆÝŒH�[�[�[Ñ!Ô!ˆÝ�!�Q JÐ/Ñ/Ô/ˆå˜˜˜#™œÝœ
Ð#=Ñ>Ô>ñ	@ô 	@ð 	@å˜˜˜$™œÝœ
Ð#MÑNÔNñ	Pô 	Pð 	Põ 	˜˜˜#˜q™	œ	¥2¤:¨kÑ#:Ô#:Ñ;Ô;Ð;Ý˜˜˜$ ™
œ
¥B¤JÐ/BÑ$CÔ$CÑDÔDÐDÐDÐDr3   c                 ó|  — t          j        ddgddgddgg¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          ||d	¬
¦  «         dD ]]}||j        _        ||j        _        t          ||¦  «        } ||¦  «        }t          j        |¦  «                             ¦   «         sJ ‚Œ^d S )Nrh   r  r%   r9   r>   r  rú  )r   r7  r8  r  r�  rO  )rC   rL   r   rP  rQ  rA  rB  )r)   rñ   r+   r´   rQ  rµ   rD  s          r-   rS  zTestPPoly.test_read_only¯  sË   € ÝŒH�q˜!�f˜q !˜f q¨! fÐ-Ñ.Ô.ˆÝŒH�[�[�[Ñ!Ô!ˆÝŒx˜˜˜Ñ&Ô&ˆÝˆa� 
Ð+Ñ+Ô+Ð+à&ð 	+ð 	+ˆIØ )ˆAŒGÔØ )ˆAŒGÔÝ�a˜‘”ˆAØ�1�T‘7”7ˆDÝ”;˜tÑ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r3   c           	      ó¶  — d„ }t           j                             d¦  «        }d}dD �]°}t          j        |                     dd|dz   ¦  «        ¦  «        }|                     dd|dz   |f¬	¦  «        }t          j        |¦  «        }|d d d …f         t          j        |dz   ¦  «        d d d
…d f         z  } ||¦  «        }	||z  }
t          j        |	j        |
¦  «        }||z  }t          ||d¬¦  «        }t          |d d …d d d
…f         |d d d
…         d¬¦  «        }|                     ddd¦  «        }t           ||¦  «         ||¦  «        d¬¦  «         t           ||d¦  «         ||d¦  «        d¬¦  «         |                     ¦   «         }|                     ¦   «         }t           ||¦  «         ||¦  «        d¬¦  «         |                     ¦   «         }|                     ¦   «         }|                     ddd¦  «        D ]\  }}|                     ||¦  «        }|                     ||¦  «        }t          ||d¬¦  «         t           ||¦  «         ||¦  «        z
   ||¦  «         ||¦  «        z
  d¬¦  «         Œ€|                     ¦   «         }|                     ¦   «         }t          |t          j        |¦  «        d¬¦  «         �Œ²d S )Nc                 óÆ   — t          j        | dz   ¦  «                             dd¦  «        }t          j        | dz   ¦  «        }t          ||¦  «        }|d d d…d d d…f         S )Nrh   rA   )rC   rD   rH   r!   )Úpowerr"  Úkrá  s       r-   Úbinom_matrixz/TestPPoly.test_descending.<locals>.binom_matrix½  s_   € Ý”	˜% !™)Ñ$Ô$×,Ò,¨R°Ñ3Ô3ˆAÝ”	˜% !™)Ñ$Ô$ˆAÝ�a˜‘”ˆAØ�T�T�r�T˜4˜4˜R˜4�Z”=Ð r3   r   r>   ©r=   rº  r?   r=   rh   rÇ   r%   ©ÚsizerA   Tr�  rù   rº  rø   ç‚vIhÂ%<=r�   ©r9   r%   çê-�™—q=)rC   r¨  ÚRandomStater»  r¼  ÚdiffrD   Údotrƒ  r   r   rÑ  rÒ  Ú	integrateÚroots)r)   r  Úrngr	  rÔ  r+   ÚcaÚhÚh_powersrá  ÚcapÚcdpÚcdÚparç  Úx_testÚpa_dÚpd_dÚpa_iÚpd_ir!  r$  Úint_aÚint_dÚroots_dÚroots_as                             r-   Útest_descendingzTestPPoly.test_descending¼  sô  € ð	!ð 	!ð 	!õ Œi×#Ò# AÑ&Ô&ˆàˆØð %	Cñ %	CˆAÝ”˜Ÿš A r¨1¨q©5Ñ1Ô1Ñ2Ô2ˆAØ—’˜R ¨%°!©)°Q¨�Ñ8Ô8ˆBå”˜‘
”
ˆAØ˜˜q˜q˜q˜”z¥R¤Y¨u°q©yÑ%9Ô%9¸$¸$¸B¸$À¸*Ô%EÑEˆHØ�˜UÑ#Ô#ˆAØ�x‘-ˆCÝ”&˜œ˜cÑ"Ô"ˆCØ�x‘ˆBå�r˜1¨$Ð/Ñ/Ô/ˆBÝ�r˜!˜!˜!˜T˜T˜r˜T˜'”{ A d d¨ d¤G¸Ð>Ñ>Ô>ˆBà—[’[  b¨#Ñ.Ô.ˆFÝ˜B˜B˜v™JœJ¨¨¨6©
¬
¸Ð?Ñ?Ô?Ð?Ý˜B˜B˜v q™MœM¨2¨2¨f°a©=¬=¸uÐEÑEÔEÐEà—=’=‘?”?ˆDØ—=’=‘?”?ˆDå˜D˜D ™LœL¨$¨$¨v©,¬,¸UÐCÑCÔCÐCð
 ×$Ò$Ñ&Ô&ˆDØ×$Ò$Ñ&Ô&ˆDØŸš C¨¨VÑ4Ô4ð ,ð ,‘��1ØŸš Q¨Ñ*Ô*�ØŸš Q¨Ñ*Ô*�Ý  u°5Ð9Ñ9Ô9Ð9Ý   Q¡¤¨$¨$¨q©'¬'Ñ 1°4°4¸±7´7¸T¸TÀ!¹W¼WÑ3DØ%*ð,ñ ,ô ,ð ,ð ,ð —h’h‘j”jˆGØ—h’h‘j”jˆGÝ˜G¥R¤W¨WÑ%5Ô%5¸EÐBÑBÔBÐBÑBðK%	Cð %	Cr3   c                 óZ  — t           j                             ddddd¦  «        }t          j        g d¢¦  «        }t	          ||¦  «        }|j        j        |j        k    sJ ‚|j        j        |j        k    sJ ‚ |d¦  «        j        |j        dd …         k    sJ ‚ |t           j                             dd¦  «        ¦  «        j        d|j        dd …         z   k    sJ ‚|                     ¦   «         }|j        j        d	k    sJ ‚| 	                    ¦   «         }|j        j        d
k    sJ ‚d S )Nr  r%   rh   r>   rú  rû  r9   ©r9   r  ©r9   r%   rh   r%   r>   )r  r%   rh   r%   r>   )
rC   r¨  r«  rL   r   r+   r  rñ   rÑ  rÒ  )r)   rñ   r+   ra  ÚdpÚips         r-   Útest_multi_shapezTestPPoly.test_multi_shapeí  s  € ÝŒI�NŠN˜1˜a  A qÑ)Ô)ˆÝŒH�[�[�[Ñ!Ô!ˆÝ�!�Q‰KŒKˆØŒsŒy˜AœGÒ#Ð#Ð#Ð#ØŒsŒy˜AœGÒ#Ð#Ð#Ð#Øˆq�‰vŒvŒ|˜qœw q r rœ{Ò*Ð*Ð*Ð*àˆq•”—’  1Ñ%Ô%Ñ&Ô&Ô,°¸¼ÀÀÀ¼Ñ0DÒDÐDÐDÐDà�\Š\‰^Œ^ˆØŒtŒz˜_Ò,Ð,Ð,Ð,Ø×ÒÑÔˆØŒtŒz˜_Ò,Ð,Ð,Ð,Ð,Ð,r3   c                 óŽ  — t           j                             d¦  «         t          j        ddgddgddggt          ¬¦  «        }t          j        g d	¢¦  «        }t          j        ||¦  «        }t           |d
¦  «        t          j        d¦  «        ¦  «         t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr§  rh   r  r%   r9   r>   r  r–   rú  rû  rü  rý  rþ  )	rC   r¨  r©  rL   r@  r   Úconstruct_fastr   r�   r   s       r-   Útest_construct_fastzTestPPoly.test_construct_fastü  s®   € Ý
Œ	�Š�tÑÔÐÝŒH�q˜!�f˜q !˜f q¨! fÐ-µUÐ;Ñ;Ô;ˆÝŒH�[�[�[Ñ!Ô!ˆÝÔ   AÑ&Ô&ˆÝ˜˜˜#™œ¥¤
Ð+?Ñ @Ô @ÑAÔAÐAÝ˜˜˜#™œ¥¤
Ð+KÑ LÔ LÑMÔMÐMÐMÐMr3   c                 ó   — t           j                             d¦  «        }|                     ddd¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }t          ||¦  «        }t           j        d         }t          |||¦  «        }t           ||¦  «        |¦  «         t          |d d …d d …df         ||¦  «        }t           ||¦  «        d d …df         |¦  «         d S )	Nr§  r>   rÈ   é   r   r‹   rh   )rû  r&   g…ëQ¸Õ?ç333333ã?)
rC   r¨  r  r«  r»  rð   r   Ú_ppoly_eval_1r   Ú_ppoly_eval_2)r)   r  rñ   r+   ra  rÃ  Úexpecteds          r-   Ú#test_vs_alternative_implementationsz-TestPPoly.test_vs_alternative_implementations  sã   € ÝŒi×#Ò# DÑ)Ô)ˆØ�HŠH�Q˜˜BÑÔˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆå�!�Q‰KŒKˆåŒUÐ&Ô'ˆÝ   A rÑ*Ô*ˆÝ˜˜˜"™œ˜xÑ(Ô(Ð(å   1 1 1 Q Q Q q 5¤¨1¨bÑ1Ô1ˆÝ˜˜˜"™œ˜a˜a˜a ˜dœ XÑ.Ô.Ð.Ð.Ð.r3   c                 óÈ  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||d¬¦  «        }t          j	        |¦  «        }t          j
        ddd¦  «        }t           ||¦  «        t          ||¦  «        ¦  «         t          |Ž }t          j	        |¦  «        }t           ||¦  «         ||¦  «        ¦  «         |\  }	}
}dD ];}t          |	|
||¬¦  «        }t          j	        |¦  «        }|j        |j        k    sJ ‚Œ<d S )	Nr§  r   r‹   rh   rë  rú   )NTFr�  )rC   r¨  r  r»  rð   r«  r_  r   r   rì  r,  r   r   r   rf   )r)   r  r+   r*   rí  r®  r/  r$  ÚpppÚtrñ   r
  Úextrapra  s                 r-   rî  zTestPPoly.test_from_spline  sK  € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜QÐÑÔˆÝÔ˜sÑ#Ô#ˆåŒ[˜˜A˜sÑ#Ô#ˆÝ˜˜˜2™œ¥ b¨#¡¤Ñ/Ô/Ð/õ �SˆMˆÝÔ Ñ"Ô"ˆÝ˜˜˜B™œ   2¡¤Ñ'Ô'Ð'ð ‰ˆˆ1ˆaØ)ð 	2ð 	2ˆFÝ˜˜1˜a¨VÐ4Ñ4Ô4ˆAÝÔ! !Ñ$Ô$ˆAØ”= A¤MÒ1Ð1Ð1Ð1Ð1ð	2ð 	2r3   c                 ó*  — t           j                             d¦  «         t          j        g d¢g¦  «        j        }t          j        g d¢g¦  «        j        }t          j        ddgg¦  «        j        }t          j        ddg¦  «        }t          ||¦  «        }t          ||¦  «        }t          ||¦  «        }t          |                     ¦   «         j        |j        ¦  «         t          |                     d¦  «        j        |j        ¦  «         d S )	Nr§  )r  r>   r%   rh   )rÈ   r  r%   é   r  r   rh   r%   )	rC   r¨  r©  rL   rƒ  r   r   rÑ  rñ   )r)   rñ   ÚdcÚddcr+   r®  ÚdppÚddpps           r-   Útest_derivative_simplez TestPPoly.test_derivative_simple)  sÝ   € Ý
Œ	�Š�tÑÔÐÝŒH�l�l�l�^Ñ$Ô$Ô&ˆÝŒX�}�}�}�oÑ&Ô&Ô(ˆÝŒh˜ ˜Ð'Ñ(Ô(Ô*ˆÝŒH�a˜�VÑÔˆå�1�a‰[Œ[ˆÝ�B˜‰lŒlˆÝ�S˜!‰}Œ}ˆå˜Ÿš™œÔ)¨3¬5Ñ1Ô1Ð1Ý˜Ÿš aÑ(Ô(Ô*¨D¬FÑ3Ô3Ð3Ð3Ð3r3   c           	      óì  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||d¬¦  «        }t          j	        |¦  «        }t          j
        ddd¦  «        }t          dd¦  «        D ]+}t           |||¦  «        t          |||¦  «        ¦  «         Œ,d S )Nr§  r   r‹   rh   rë  rú   r>   )rC   r¨  r  r»  rð   r«  r_  r   r   rì  r,  r  r   r   ©r)   r  r+   r*   rí  r®  r/  Údxs           r-   Útest_derivative_evalzTestPPoly.test_derivative_eval7  sÖ   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜QÐÑÔˆÝÔ˜sÑ#Ô#ˆåŒ[˜˜A˜sÑ#Ô#ˆÝ˜˜1‘+”+ð 	<ð 	<ˆBÝ˜B˜B˜r 2™JœJ­¨b°#°rÑ(:Ô(:Ñ;Ô;Ð;Ð;ð	<ð 	<r3   c                 ó  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||dd¬¦  «        }t          j	        |¦  «        }t          j
        ddd¦  «        }t          dd¦  «        D ]>}t           |||¦  «         |                     |¦  «        |¦  «        d	|fz  ¬
¦  «         Œ?d S )Nr§  r   r‹   rh   r9   ©r#  r
  rú   r=   zdx=%dr  )rC   r¨  r  r»  rð   r«  r_  r   r   rì  r,  r  r   rÑ  rE  s           r-   ré  zTestPPoly.test_derivativeC  sù   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆåŒ[˜˜A˜sÑ#Ô#ˆÝ˜˜2‘,”,ð 	5ð 	5ˆBÝ˜B˜B˜r 2™JœJÐ(9¨¯ª°bÑ(9Ô(9¸"Ñ(=Ô(=Ø$+¨r¨e¡Oð5ñ 5ô 5ð 5ð 5ð	5ð 	5r3   c                 ó.  — t          dggddg¦  «        }t          |                     ¦   «         j        t          dgdggddg¦  «        j        ¦  «         t          |                     ¦   «         j        t          dgdggddg¦  «        j        ¦  «         d S )Nru   r   rh   )r   r   rÒ  rñ   r+   )r)   ra  s     r-   Útest_antiderivative_of_constantz)TestPPoly.test_antiderivative_of_constantP  s�   € å�B�4�&˜1˜a˜&Ñ!Ô!ˆÝ˜×(Ò(Ñ*Ô*Ô,­e°a°S¸1¸#°JÀÀAÀÑ.GÔ.GÔ.IÑJÔJÐJÝ˜×(Ò(Ñ*Ô*Ô,­e°a°S¸1¸#°JÀÀAÀÑ.GÔ.GÔ.IÑJÔJÐJÐJÐJr3   c                 óº  — t          ddggg d¢¦  «        }|                     ¦   «         }t          |j        ddgddgg¦  «         t          |j        g d¢¦  «         t          |                     dd¦  «        t          j        d¦  «        ¦  «         t          t          j         |d¦  «         |d¦  «        z
  ¦  «        t          j        d¦  «        ¦  «         d S )	Nru   r&   r›   rh   r   )r;   rh   r%   r%   r¸   )	r   rÒ  r   rñ   r+   r   r  rC   r�   )r)   ra  Úqs      r-   Ú#test_antiderivative_regression_4355z-TestPPoly.test_antiderivative_regression_4355V  sÎ   € å�B˜�9�+˜y˜y˜yÑ)Ô)ˆØ×ÒÑÔˆÝ˜œ˜q #˜h¨¨A¨Ð/Ñ0Ô0Ð0Ý˜œ˜[˜[˜[Ñ)Ô)Ð)Ý˜Ÿš A qÑ)Ô)­2¬:°c©?¬?Ñ;Ô;Ð;Ý�œ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;Ñ/Ô/Ýœ
 3™œñ	)ô 	)ð 	)ð 	)ð 	)r3   c                 ó¨  — t           j                             d¦  «         t          j        g d¢g d¢g¦  «        j        }t          j        g d¢g d¢g¦  «        j        }t          j        g d¢g d¢g¦  «        j        }t          j        g d¢¦  «        }t          ||¦  «        }|                     ¦   «         }|                     d	¦  «        }|                     ¦   «         }t          |j        |¦  «         t          |j	        j        |j        ¦  «         t          |j	        j        |j        ¦  «         t          |j	        j        |j        ¦  «         d S )
Nr§  )r>   r%   rh   )r   r   ç      û?)rh   rh   rh   r   )r   r   rP  ç      Õ?)ç      Ð?gUUUUUUÕ?r&   r   r   )r   r   g      ë?rQ  g«ªªªª*£?)r   rR  rh   r%   )
rC   r¨  r©  rL   rƒ  r   rÒ  r   r+   rñ   )	r)   rñ   ÚicÚiicr+   r®  ÚippÚiippÚiipp2s	            r-   Útest_antiderivative_simplez$TestPPoly.test_antiderivative_simple`  s=  € Ý
Œ	�Š�tÑÔÐõ ŒH�i�i�i   Ð0Ñ1Ô1Ô3ˆõ ŒX�|�|�|Ð%=Ð%=Ð%=Ð>Ñ?Ô?ÔAˆõ ŒhÐ-Ð-Ð-ØHÐHÐHðJñ Kô KÜKLð 	åŒH�\�\�\Ñ"Ô"ˆå�1�a‰[Œ[ˆØ×ÒÑ!Ô!ˆØ× Ò  Ñ#Ô#ˆØ×"Ò"Ñ$Ô$ˆå˜œ˜qÑ!Ô!Ð!Ý˜œœ ¤Ñ&Ô&Ð&Ý˜œœ #¤%Ñ(Ô(Ð(Ý˜œœ	 3¤5Ñ)Ô)Ð)Ð)Ð)r3   c           
      óÆ  — t           j                             d¦  «        }t          j        ddd¦  «        dz  }|                     t          |¦  «        ¦  «        }t          ||dd¬¦  «        }t          j        |¦  «        }t          dd¦  «        D ]Î}| 
                    |¦  «        }|                     |¦  «        }t          |j        |j        ¦  «         t          |¦  «        D ]x}	|                     |	¦  «        }d	}
|
|j        d d
…         z  d|
z
  |j        dd …         z  z   }t           ||j        dd …         ¦  «         ||¦  «        dd||	fz  ¬¦  «         ŒyŒÏd S )Nr§  r   rh   r?   r%   r9   rI  r=   r  rA   r¦   z
dx=%d k=%d)rŽ   r©   )rC   r¨  r  r,  r«  r_  r   r   rì  r  rÒ  rÑ  r   rñ   r+   )r)   r  r+   r*   rí  r®  rF  rU  r¯  r
  Úrr²  s               r-   Ú!test_antiderivative_vs_derivativez+TestPPoly.test_antiderivative_vs_derivativex  sx  € ÝŒi×#Ò# DÑ)Ô)ˆÝŒK˜˜1˜bÑ!Ô! 1Ñ$ˆØ�HŠH•S˜‘V”VÑÔˆÝ�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆå˜˜2‘,”,ð 	Kð 	KˆBØ×#Ò# BÑ'Ô'ˆCð —.’. Ñ$Ô$ˆCÝ˜BœD #¤%Ñ(Ô(Ð(õ ˜2‘Y”Yð Kð K�Ø—n’n QÑ'Ô'�à�Ø˜SœU 3 B 3œZ™<¨1¨q©5°#´%¸¸¸´)Ñ*;Ñ;�å   C¤E¨!¨"¨"¤I¡¤°°°H±´Ø%)°<À2ÀqÀ'Ñ3IðKñ Kô Kð Kð KðKð	Kð 	Kr3   c                 ó8  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||dd¬¦  «        }t          j	        |¦  «        }t          dd¦  «        D ]f}|                     |¦  «        }t          ||¦  «        }t          j        ddd¦  «        }	t           ||	¦  «        t          |	|¦  «        d	¬
¦  «         Œgd S )Nr§  r   r‹   rh   r9   rI  r=   rú   r¦   r�   )rC   r¨  r  r»  rð   r«  r_  r   r   rì  r  rÒ  r   r,  r   r   )
r)   r  r+   r*   rí  r®  rF  r¯  Úspl2r/  s
             r-   Útest_antiderivative_vs_splinez'TestPPoly.test_antiderivative_vs_spline�  s  € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆå˜˜2‘,”,ð 	'ð 	'ˆBØ×#Ò# BÑ'Ô'ˆCÝ˜c 2Ñ&Ô&ˆDå”˜Q  3Ñ'Ô'ˆBÝ˜C˜C ™GœG¥U¨2¨t¡_¤_Ø!%ð'ñ 'ô 'ð 'ð 'ð	'ð 	'r3   c                 ó\  — t          j        g d¢g d¢g¦  «        j        }t          j        g d¢¦  «        }t          ||¦  «        }|                     ¦   «         }t           |d¦  «         |d¦  «        d¬¦  «         |                     ¦   «         }t          |j        |j        ¦  «         d S )N)r%   rh   r%   r%   )r%   rh   r>   r>   rú  gAíþÿÿß?g_p‰   à?g:Œ0âŽyE>r�   )rC   rL   rƒ  r   rÒ  r   rÑ  rñ   )r)   rñ   r+   ra  r-  r¾  s         r-   Útest_antiderivative_continuityz(TestPPoly.test_antiderivative_continuity   s¢   € ÝŒH�l�l�l L L LÐ1Ñ2Ô2Ô4ˆÝŒH�[�[�[Ñ!Ô!ˆå�!�Q‰KŒKˆØ×ÒÑÔˆõ 	˜˜˜:™œ¨¨¨:©¬¸TÐBÑBÔBÐBð �]Š]‰_Œ_ˆÝ˜œ˜aœcÑ"Ô"Ð"Ð"Ð"r3   c                 ó<  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||dd¬¦  «        }t          j	        |¦  «        }d\  }}| 
                    ||¦  «        }|                     ¦   «         }	t          | |	|¦  «         |	|¦  «        z
  d¬	¦  «         t          |t          |||¦  «        d¬	¦  «         d
\  }}| 
                    ||d¬¦  «        }t          | |	|¦  «         |	|¦  «        z
  d¬	¦  «         t          j        | 
                    ||d¬¦  «        ¦  «                             ¦   «         sJ ‚d S )Nr§  r   r‹   rh   r9   rI  )rû  çÍÌÌÌÌÌì?F©Úcheck_0d)r  rb  Tr�  )rC   r¨  r  r»  rð   r«  r_  r   r   rì  r  rÒ  r   r   rv   rB  )
r)   r  r+   r*   rí  r®  r!  r$  ÚigrU  s
             r-   Útest_integratezTestPPoly.test_integrate®  su  € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆà‰ˆˆ1Ø�\Š\˜!˜QÑÔˆà×ÒÑ!Ô!ˆÝ˜˜C˜C ™FœF S S¨¡V¤V™O°eÐ<Ñ<Ô<Ð<Ý˜�F 1 a¨Ñ-Ô-¸Ð>Ñ>Ô>Ð>à‰ˆˆ1Ø�\Š\˜!˜Q¨Dˆ\Ñ1Ô1ˆÝ˜˜C˜C ™FœF S S¨¡V¤V™O°eÐ<Ñ<Ô<Ð<åŒx˜Ÿš Q¨°u˜Ñ=Ô=Ñ>Ô>×BÒBÑDÔDÐDÐDÐDÐDÐDr3   c                 ó0  — t          j        g d¢¦  «        }t          j        ddgddgddgddgg¦  «        }dD ]\}||j        _        t	          ||¦  «        }|                     dd	¦  «        }t          j        |¦  «                             ¦   «         sJ ‚Œ]d S )
N©rh   r%   r  r;   r‰   r:   ç       €ru   rO  rh   r  )rC   rL   rP  rQ  r   r  rA  rB  )r)   r+   rñ   rQ  rÝ  rD  s         r-   Útest_integrate_readonlyz!TestPPoly.test_integrate_readonlyÃ  s¥   € ÝŒH�Y�Y�YÑÔˆÝŒH�r˜2�h  c 
¨R°¨I¸¸B°xÐ@ÑAÔAˆà&ð 	+ð 	+ˆIØ )ˆAŒGÔå�a˜‘”ˆAØ—;’;˜q !Ñ$Ô$ˆDå”;˜tÑ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r3   c           	      óÔ  — t          j        g d¢¦  «        }t          j        ddgddgddgddgg¦  «        }t          ||d¬¦  «        }|                     ¦   «         }t          j         |d	¦  «         |d
¦  «        z
  ¦  «        }t          |                     d
d	¦  «        |¦  «         t          |                     dd¦  «        |¦  «         t          |                     dd¦  «        t          j        d|z  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d¦  «        z
  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  d	|z  z   ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d¦  «        z
  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d¦  «        z
  ¦  «        ¦  «         t          |                     dd¦  «        t          j         |d¦  «         |d¦  «        z
  d|z  z
  ¦  «        ¦  «         d S ©Nrh  r;   r‰   r:   ri  ru   r  r�  r  rh   rù   iùÿÿÿr‘  r%   r¸   r)  rm  r9   g      /@r�  r   rA   r>   i÷ÿÿÿ)rC   rL   r   rÒ  r�   r   r  ©r)   r+   rñ   rÝ  ÚIÚ
period_ints         r-   Útest_integrate_periodicz!TestPPoly.test_integrate_periodicÏ  s:  € ÝŒH�Y�Y�YÑÔˆÝŒH�r˜2�h  c 
¨R°¨I¸¸B°xÐ@ÑAÔAˆå�!�Q JÐ/Ñ/Ô/ˆØ×ÒÑÔˆå”Z   !¡¤ q q¨¡t¤t¡Ñ,Ô,ˆ
å˜Ÿš A qÑ)Ô)¨:Ñ6Ô6Ð6Ý˜Ÿš C¨Ñ,Ô,¨jÑ9Ô9Ð9Ý˜Ÿš C¨Ñ,Ô,­b¬j¸¸Z¹Ñ.HÔ.HÑIÔIÐIå˜Ÿš C¨Ñ-Ô-Ýœ
 1 1 S¡6¤6¨A¨A¨c©F¬F¡?Ñ3Ô3ñ	5ô 	5ð 	5å˜Ÿš C¨Ñ+Ô+Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;°°°1±´Ñ#5¸¸¸#¹¼Ñ#>Ñ?Ô?ñ	Aô 	Að 	Aå˜Ÿš H¨fÑ5Ô5Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;°°°1±´Ñ#5¸¸¸#¹¼Ñ#>Ñ?Ô?ñ	Aô 	Að 	Aå˜Ÿš C¨Ñ0Ô0Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;°°°1±´Ñ#5¸¸¸#¹¼Ñ#>ÀÀZÁÑ#OÑPÔPñ	Rô 	Rð 	Rå˜Ÿš A rÑ*Ô*Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;Ñ/Ô/ñ	1ô 	1ð 	1å˜Ÿš B¨Ñ,Ô,Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;Ñ/Ô/ñ	1ô 	1ð 	1å˜Ÿš A sÑ+Ô+Ýœ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;°°Z±Ñ#?Ñ@Ô@ñ	Bô 	Bð 	Bð 	Bð 	Br3   c                 ó@  — t          j        ddd¦  «        dz  }t          j        d|z  ¦  «        }t          ||dd¬¦  «        }t	          j        |¦  «        }|                     ¦   «         }||dk    |d	k    z           }t          |t          |¦  «        d
¬¦  «         d S )Nr   rh   r+  r%   r?   r>   rI  gVçž¯Ò¼g     ð?r˜   r™   )	rC   r,  r
   r   r   rì  r  r   r   )r)   r+   r*   rí  r®  rZ  s         r-   Ú
test_rootszTestPPoly.test_rootsë  s–   € ÝŒK˜˜1˜bÑ!Ô! 1Ñ$ˆÝŒF�2�a‘4‰LŒLˆå�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆà�HŠH‰JŒJˆØˆq�IŠ~ ! y¢.Ñ1Ô2ˆÝ˜�6 #™;œ;¨UÐ3Ñ3Ô3Ð3Ð3Ð3r3   c                 óÌ  — t          j        ddgddgddgg¦  «        j        }t          j        g d¢¦  «        }t          ||¦  «        }t	          |                     ¦   «         ddt           j        dg¦  «         d}|                     ¦   «         }|dd d …fxx         |z  cc<   t          ||¦  «        }t	          |                     |¦  «        ddt           j        dg¦  «         d S )	NrA   rR  r   )r   rÁ  r4  ru   rÁ  g333333ë?r:   rh   )	rC   rL   rƒ  r   r   r  r    rq   Úsolve)r)   rñ   r+   r®  ÚconstÚc1r´  s          r-   Útest_roots_idzerozTestPPoly.test_roots_idzeroö  sí   € õ ŒH�r˜4�j 1 a &¨2¨t¨*Ð5Ñ6Ô6Ô8ˆÝŒHÐ'Ð'Ð'Ñ(Ô(ˆå�1�a‰[Œ[ˆÝ˜Ÿš™
œ
Ø˜s¥B¤F¨JÐ7ñ	9ô 	9ð 	9ð ˆØ�VŠV‰XŒXˆØ
ˆ1ˆaˆaˆaˆ4ˆˆŒ�EÑˆˆ‰Ý�B˜‰lŒlˆå˜Ÿ	š	 %Ñ(Ô(Ø˜s¥B¤F¨JÐ7ñ	9ô 	9ð 	9ð 	9ð 	9r3   c                 ó¢  — dgdgg}ddg}t          ||¦  «        }t          |                     ¦   «         dt          j        g¦  «         t          |                     d¦  «        dt          j        g¦  «         t          |                     d¦  «        g ¦  «         ddgddgg}g d¢}t          ||¦  «        }t          |                     ¦   «         dt          j        dt          j        g¦  «         t          |                     d¦  «        dt          j        dt          j        g¦  «         t          |                     d¦  «        g ¦  «         d S )Nr   rh   r›   )r   r   r  rC   r    rt  r   s       r-   Útest_roots_all_zerozTestPPoly.test_roots_all_zero	  s  € àˆS�1�#ˆJˆØ�ˆFˆÝ�!�Q‰KŒKˆÝ˜Ÿš™	œ	 A¥r¤v ;Ñ/Ô/Ð/Ý˜Ÿš ™
œ
 Q­¬ KÑ0Ô0Ð0Ý˜Ÿš ™
œ
 BÑ'Ô'Ð'à�ˆV�a˜�VÐˆØˆIˆIˆÝ�!�Q‰KŒKˆÝ˜Ÿš™	œ	 A¥r¤v¨qµ"´&Ð#9Ñ:Ô:Ð:Ý˜Ÿš ™
œ
 Q­¬°µ2´6Ð$:Ñ;Ô;Ð;Ý˜Ÿš ™
œ
 BÑ'Ô'Ð'Ð'Ð'r3   c                 ój  — t          j        g d¢g d¢g¦  «        j        }t          j        g d¢¦  «        }t          ||¦  «        }t	          |                     ¦   «         t          j        ddg¦  «        ¦  «         t	          |                     d¬¦  «        t          j        dg¦  «        ¦  «         d S )N)rh   r   rA   )rA   r   r   rÒ   g       Àr;   Fr�  )rC   rL   rƒ  r   r   r  r�   ©r)   rñ   r+   r®  s       r-   Útest_roots_repeatedzTestPPoly.test_roots_repeated  s™   € õ
 ŒH�j�j�j * * *Ð-Ñ.Ô.Ô0ˆÝŒH�Z�Z�ZÑ Ô ˆå�1�a‰[Œ[ˆÝ˜Ÿš™
œ
¥B¤J°°c¨{Ñ$;Ô$;Ñ<Ô<Ð<Ý˜Ÿš¨U˜Ñ3Ô3µR´ZÀÀÑ5FÔ5FÑGÔGÐGÐGÐGr3   c                 ó  — t          j        dgdgg¦  «        j        }t          j        g d¢¦  «        }t          ||¦  «        }t	          |                     ¦   «         t          j        dg¦  «        ¦  «         t	          |                     d¬¦  «        t          j        g ¦  «        ¦  «         t	          |                     d¦  «        t          j        dg¦  «        ¦  «         t	          |                     dd¬¦  «        t          j        g ¦  «        ¦  «         t	          |                     d¦  «        t          j        g ¦  «        ¦  «         t	          |                     dd¬¦  «        t          j        g ¦  «        ¦  «         d S )Nrh   rA   rú  r&   F)Údiscontinuityr¸   )rC   rL   rƒ  r   r   r  r�   rt  r{  s       r-   Útest_roots_discontzTestPPoly.test_roots_discont%  s&  € åŒH�q�c˜B˜4�[Ñ!Ô!Ô#ˆÝŒH�[�[�[Ñ!Ô!ˆÝ�1�a‰[Œ[ˆÝ˜Ÿš™
œ
¥B¤J°¨uÑ$5Ô$5Ñ6Ô6Ð6Ý˜Ÿš¨u˜Ñ5Ô5µr´zÀ"±~´~ÑFÔFÐFõ 	˜Ÿš ™œ¥r¤z°3°%Ñ'8Ô'8Ñ9Ô9Ð9Ý˜Ÿš °E˜Ñ:Ô:½B¼JÀr¹N¼NÑKÔKÐKå˜Ÿš ™œ¥r¤z°"¡~¤~Ñ6Ô6Ð6Ý˜Ÿš °E˜Ñ:Ô:½B¼JÀr¹N¼NÑKÔKÐKÐKÐKr3   c                 ó‚  — t           j                             d¦  «        }d}dD �]|}t          dd¦  «        D �]g}t          j        t           j        dd|                     d¦  «        z  df         ¦  «        }d|                     |dz   t          |¦  «        dz
  dd	¦  «        z  dz
  }t          ||¦  «        }d|                     ¦   «         fD ]Ï}| 	                    |d
|¬¦  «        }	t          d¦  «        D ]¥}
t          d	¦  «        D ]“}|	|
|f         }|j
        dk    r|||j
        z  } |||¬¦  «        d d …|
|f         } ||d|¬¦  «        d d …|
|f         }d|›dt          |¦  «        › �}t          ||z
  |z  t          j        d¦  «        d|d
¬¦  «         Œ”Œ¦ŒÐ�Œi�Œ~|dk    sJ t          |¦  «        ¦   «         ‚d S )Nr§  r   rO  rº  r=   r?   r%   rh   r>   F)r~  rf   r�  )rÍ  rf   ú(z) r = r;   r¦   )rš   r©   ræ   rø   )rC   r¨  r  r  rª  rð   r«  r_  r   rt  r  Úreprr   r�   )r)   r  Únumrf   r¬  r+   rñ   r®  r*   rZ  ÚiÚjÚrrÚvalÚcmpvalrŸ  s                   r-   Útest_roots_randomzTestPPoly.test_roots_random4  s  € åŒi×#Ò# DÑ)Ô)ˆàˆà(ð 	Pñ 	PˆKÝ˜q "™œð Pñ P�Ý”I�bœe A r¨C¯HªH°R©L¬LÑ'8¸"Ð$<Ô=Ñ>Ô>�Ø�c—h’h˜u Q™w­¨A©¬¨q©°!°QÑ7Ô7Ñ7¸!Ñ;�å˜1˜a‘[”[�Ø˜SŸZšZ™\œ\Ð*ð Pð P�AØŸš °%À[˜ÑQÔQ�Aå" 1™XœXð Pð P˜Ý!& q¡¤ð Pð P˜AØ!" 1 Q 3¤˜BØ!œw¨š{˜{à # r¤w¡ Ø&( b¨¸Ð&EÑ&EÔ&EÀaÀaÀaÈÈ!ÀeÔ&L Ø)+¨¨B°1Ø8Cð*Eñ *Eô *EØEFÀQÀQÀqÈÀUô*L à&I¨+Ð&IÐ&I½tÀB¹x¼xÐ&IÐ&I Ý /°°Q±¸&Ñ0@Å"Ä*ÈSÁ/Ä/Ø59Ø8;Èð!Pñ !Pô !Pð !PøðPðPñPñPð. �SŠyˆyˆy�$˜s™)œ)‰yŒyˆyˆyˆyr3   c           
      ór  — t           j                             d¦  «        }t          dd¦  «        D �]…}|                     |dd¦  «        }|dk    r
d|d d …ddf<   d|                     ¦   «         fD �]C}t          j        |j        t          ¬¦  «        }t          j	        |||¦  «         |dk    r)t          j
        |¦  «                             ¦   «         sJ ‚Œh| }d}t          |¦  «        D ]A}|||d f         ||dz
  |z
  z  z  z  }|t          ||d f         ||dz
  |z
  z  z  ¦  «        z  }ŒBt          j        d	¬
¦  «        5  ||z  }d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         }|t          j
        |¦  «                  }t          |t          j        |¦  «        d¬¦  «         �ŒE�Œ‡d S )Nr§  rh   rÊ   é‚   r>   )rh   r%   rh   r   r–   Úignore)r‹  g»½×Ùß|Û=r™   )rC   r¨  r  r  r«  r}  r  Úcomplexr   Ú_croots_poly1rv   rB  ÚabsÚerrstateÚravelr   Ú
zeros_like)	r)   r  r
  rñ   r*   ÚwrÕ  Úcresr„  s	            r-   Útest_roots_crootszTestPPoly.test_roots_crootsT  s  € åŒi×#Ò# DÑ)Ô)ˆå�q˜"‘”ð 	Eñ 	EˆAØ—’˜˜A˜sÑ#Ô#ˆAà�AŠvˆvà"��!�!�!�A�a�%‘à˜Ÿš™œÐ&ð Eñ E�Ý”H˜QœW­GÐ4Ñ4Ô4�ÝÔ$ Q¨¨1Ñ-Ô-Ð-à˜’6�6Ýœ8 A™;œ;Ÿ?š?Ñ,Ô,Ð,Ð,Ð,Øà�b�Ø�Ý˜q™œð 8ð 8�AØ˜1˜Q˜t˜Vœ9 q¨1¨Q©3¨q©5¡zÑ1Ñ1�CØ�C  ! D &¤	¨A°°!±°A±©JÑ 6Ñ7Ô7Ñ7�D�DÝ”[¨Ð2Ñ2Ô2ð  ð  Ø˜4‘K�Cð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à—i’i‘k”k�Ø�2œ8 C™=œ=˜.Ô)�Ý ¥R¤]°3Ñ%7Ô%7¸eÐDÑDÔDÐDÑDñ#Eð	Eð 	Es   ÅEÅEÅEc                 óÐ  — t          j        g d¢g¦  «        j        }t          j        ddg¦  «        }dD �]¯}t          |||¬¦  «        }|                     ¦   «         }|                     ¦   «         }|du rµt          j         |ddg¦  «        ¦  «                             ¦   «         sJ ‚t          j         |ddg¦  «        ¦  «                             ¦   «         sJ ‚t          j         |ddg¦  «        ¦  «                             ¦   «         sJ ‚|                     ¦   «         dgk    sJ ‚Œöt           |ddg¦  «        d	d
g¦  «         t          j         |ddg¦  «        ¦  «         
                    ¦   «         rJ ‚t          j         |ddg¦  «        ¦  «         
                    ¦   «         rJ ‚t          |                     ¦   «         t          j        ddg¦  «        ¦  «         �Œ±d S )NrÒ   r   rh   ©TFNr�  Fçš™™™™™¹¿çš™™™™™ñ?g®Gáz®ï?gèz®GáÊ¿ru   r‰   )rC   rL   rƒ  r   rÑ  rÒ  rv   rB  r  r   Úanyr�   )r)   rñ   r+   rf   r®  Úpp_dÚpp_is          r-   r˜  zTestPPoly.test_extrapolate_attrr  sÝ  € åŒH�j�j�j�\Ñ"Ô"Ô$ˆÝŒH�a˜�VÑÔˆà.ð 	Eñ 	EˆKÝ�q˜!¨Ð5Ñ5Ô5ˆBØ—=’=‘?”?ˆDØ×$Ò$Ñ&Ô&ˆDà˜eÐ#Ð#Ý”x   D¨# ;¡¤Ñ0Ô0×4Ò4Ñ6Ô6Ð6Ð6Ð6Ý”x   d¨C [Ñ 1Ô 1Ñ2Ô2×6Ò6Ñ8Ô8Ð8Ð8Ð8Ý”x   d¨C [Ñ 1Ô 1Ñ2Ô2×6Ò6Ñ8Ô8Ð8Ð8Ð8Ø—x’x‘z”z a SÒ(Ð(Ð(Ð(Ð(å   D¨# ;¡¤°(¸HÐ1EÑFÔFÐFÝœ8 D D¨$°¨Ñ$5Ô$5Ñ6Ô6×:Ò:Ñ<Ô<Ð<Ð<Ð<Ýœ8 D D¨$°¨Ñ$5Ô$5Ñ6Ô6×:Ò:Ñ<Ô<Ð<Ð<Ð<Ý §¢¡
¤
­B¬J¸¸T°{Ñ,CÔ,CÑDÔDÐDÑDð	Eð 	Er3   N)r/   r0   r1   r  r  rS  r(  r.  r1  r8  rî  rC  rG  ré  rK  rN  rX  r[  r^  r`  rf  rj  rp  rr  rw  ry  r|  r  r‰  r•  r˜  r2   r3   r-   rø  rø  š  sà  € € € € € ðNð Nð NðEð Eð Eð+ð +ð +ð/Cð /Cð /Cðb-ð -ð -ðNð Nð Nð/ð /ð /ð2ð 2ð 2ð.4ð 4ð 4ð
<ð 
<ð 
<ð5ð 5ð 5ðKð Kð Kð)ð )ð )ð*ð *ð *ð0Kð Kð Kð0'ð 'ð 'ð #ð #ð #ðEð Eð Eð*
+ð 
+ð 
+ðBð Bð Bð8	4ð 	4ð 	4ð9ð 9ð 9ð&(ð (ð (ð 
Hð 
Hð 
HðLð Lð Lð$ð $ð $ð@Eð Eð Eð<Eð Eð Eð Eð Er3   rø  c                   óP   — 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S )Ú	TestBPolyc                 óŒ   — ddg}dgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr   rh   r>   r7  rs   ©r   r   rC   r�   ©r)   r+   rñ   ræ  s       r-   r  zTestBPoly.test_simple‰  sG   € Ø�ˆFˆØˆSˆEˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œ¥¤¨B¡¤Ñ0Ô0Ð0Ð0Ð0r3   c                 ó�   — ddg}dgdgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr   rh   r>   r7  ggfffff@r   r¡  s       r-   Útest_simple2zTestBPoly.test_simple2�  sM   € Ø�ˆFˆØˆS�1�#ˆJˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œ¥¤¨NÑ!;Ô!;Ñ<Ô<Ð<Ð<Ð<r3   c                 ó”   — ddg}dgdgdgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr   rh   r>   r  r8  g433333@r   r¡  s       r-   Útest_simple3zTestBPoly.test_simple3•  sb   € Ø�ˆFˆØˆS�1�#˜�sˆOˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œÝ”
ÐDÑEÔEñ	Gô 	Gð 	Gð 	Gð 	Gr3   c                 ó˜   — ddg}dgdgdgdgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr   rh   r%   rû  g:ßO�—nð?r   r¡  s       r-   Útest_simple4zTestBPoly.test_simple4œ  sh   € Ø�ˆFˆØˆS�1�#˜�s˜Q˜CÐ ˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œÝœ
ð (.ñ /ô /ñ	
ô 	
ð 	
ð 	
ð 	
r3   c                 óœ   — ddg}dgdgdgdgdgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         d S )Nr   rh   r•   r%   rû  g”Ô	h"l@r   r¡  s       r-   Útest_simple5zTestBPoly.test_simple5§  sl   € Ø�ˆFˆØˆS�1�#˜�s˜Q˜C ! Ð%ˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œÝœ
ð &(ñ )ô )ñ	
ô 	
ð 	
ð 	
ð 	
r3   c                 ó¤  — g d¢}ddgddgddgg}t          ||d¬¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         t           |d	¦  «        t          j        d
¦  «        ¦  «         t           |dd¦  «        t          j        d¦  «        ¦  «         t           |d	d¦  «        t          j        d¦  «        ¦  «         d S )N©r   rh   r>   r>   r   r%   r  r�  g333333@gHáz®Gñ?gÍÌÌÌÌÌô¿ç[�Âõ(\Ï?rh   çÌÌÌÌÌÌÀrý  r   r¡  s       r-   r  zTestBPoly.test_periodic³  sÉ   € ØˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆå�1�a ZÐ0Ñ0Ô0ˆå˜˜˜3™œ¥¤¨JÑ!7Ô!7Ñ8Ô8Ð8Ý˜˜˜4™œ¥"¤*¨^Ñ"<Ô"<Ñ=Ô=Ð=å˜˜˜3 ™
œ
¥B¤J¨xÑ$8Ô$8Ñ9Ô9Ð9Ý˜˜˜4 ™œ¥R¤Z°Ñ%<Ô%<Ñ=Ô=Ð=Ð=Ð=r3   c           	      ón  — t           j                             d¦  «        }d}dD �]}t          j        |                     dd|dz   ¦  «        ¦  «        }|                     dd|dz   |f¬¦  «        }|d d d	…                              ¦   «         }t          ||d
¬¦  «        }t          |d d …d d d	…f         |d d d	…         d
¬¦  «        }|                     ddd¦  «        }	t           ||	¦  «         ||	¦  «        d¬¦  «         t           ||	d¦  «         ||	d¦  «        d¬¦  «         |                     ¦   «         }
|                     ¦   «         }t           |
|	¦  «         ||	¦  «        d¬¦  «         | 	                    ¦   «         }| 	                    ¦   «         }|                     ddd¦  «        D ]\  }}| 
                    ||¦  «        }| 
                    ||¦  «        }t          ||d¬¦  «         t           ||¦  «         ||¦  «        z
   ||¦  «         ||¦  «        z
  d¬¦  «         Œ€�Œd S )Nr   r>   r  r=   rh   r˜  r7  r  rA   Tr�  rù   rº  rø   r  r�   r  r  )rC   r¨  r  r»  r¼  rq   r   r   rÑ  rÒ  r  )r)   r  r	  rÔ  r+   r  r  r  rç  r  r   r!  r"  r#  r!  r$  r$  r%  s                     r-   r(  zTestBPoly.test_descending¿  sH  € ÝŒi×#Ò# AÑ&Ô&ˆàˆØð 	,ñ 	,ˆAÝ”˜Ÿš A r¨1¨q©5Ñ1Ô1Ñ2Ô2ˆAØ—’˜T 3¨e°a©i¸¨^�Ñ<Ô<ˆBà�D�D�b�D”—’‘”ˆBå�r˜1¨$Ð/Ñ/Ô/ˆBÝ�r˜!˜!˜!˜T˜T˜r˜T˜'”{ A d d¨ d¤G¸Ð>Ñ>Ô>ˆBà—[’[  b¨#Ñ.Ô.ˆFÝ˜B˜B˜v™JœJ¨¨¨6©
¬
¸Ð?Ñ?Ô?Ð?Ý˜B˜B˜v q™MœM¨2¨2¨f°a©=¬=¸uÐEÑEÔEÐEà—=’=‘?”?ˆDØ—=’=‘?”?ˆDå˜D˜D ™LœL¨$¨$¨v©,¬,¸UÐCÑCÔCÐCð
 ×$Ò$Ñ&Ô&ˆDØ×$Ò$Ñ&Ô&ˆDØŸš C¨¨VÑ4Ô4ð ,ð ,‘��1ØŸš Q¨Ñ*Ô*�ØŸš Q¨Ñ*Ô*�Ý  u°5Ð9Ñ9Ô9Ð9Ý   Q¡¤¨$¨$¨q©'¬'Ñ 1°4°4¸±7´7¸T¸TÀ!¹W¼WÑ3DØ%*ð,ñ ,ô ,ð ,ð ,ñ	,ð/	,ð 	,r3   c                 ó$  — t           j                             d¦  «        }|                     ddddd¦  «        }t          j        g d¢¦  «        }t          ||¦  «        }|j        j        |j        k    sJ ‚|j        j        |j        k    sJ ‚ |d¦  «        j        |j        dd …         k    sJ ‚ ||                     dd¦  «        ¦  «        j        d	|j        dd …         z   k    sJ ‚| 	                    ¦   «         }|j        j        d
k    sJ ‚d S )Nr§  r  r%   rh   r>   rú  rû  r9   r*  r+  )
rC   r¨  r  r«  rL   r   r+   r  rñ   rÑ  )r)   r  rñ   r+   ra  r,  s         r-   r.  zTestBPoly.test_multi_shapeá  s  € ÝŒi×#Ò# DÑ)Ô)ˆØ�HŠH�Q˜˜1˜a Ñ#Ô#ˆÝŒH�[�[�[Ñ!Ô!ˆÝ�!�Q‰KŒKˆØŒsŒy˜AœGÒ#Ð#Ð#Ð#ØŒsŒy˜AœGÒ#Ð#Ð#Ð#Øˆq�‰vŒvŒ|˜qœw q r rœ{Ò*Ð*Ð*Ð*Øˆq�—’˜!˜Q‘”Ñ Ô Ô&¨&°1´7¸1¸2¸2´;Ñ*>Ò>Ð>Ð>Ð>à�\Š\‰^Œ^ˆØŒtŒz˜_Ò,Ð,Ð,Ð,Ð,Ð,r3   c           	      óä   — ddg}dgdgdgg}t          ||¦  «        }d}|dz  }t           ||¦  «        t          j        dd|z
  z  d|z
  z  d|z  d|z
  z  z   d|z  |z  z   ¦  «        ¦  «         d S )Nr   r%   r>   rh   r  r7  r   )r)   r+   rñ   ræ  Úxvalr#  s         r-   Útest_interval_lengthzTestBPoly.test_interval_lengthî  s˜   € Ø�ˆFˆØˆS�1�#˜�sˆOˆÝ�1�a‰[Œ[ˆØˆØ�1‰HˆÝ˜˜˜4™œÝœ
 1¨¨!©¡9¨a°©c¡?°U¸1±W¸aÀ¹c±]Ñ#BÀQÈÁUÈ1ÁWÑ#LÑMÔMñ	
ô 	
ð 	
ð 	
ð 	
r3   c                 óð   — g d¢}ddgddgddgg}t          ||¦  «        }t           |d¦  «        t          j        d¦  «        ¦  «         t           |d¦  «        t          j        d¦  «        ¦  «         d S )	Nr«  r>   r   r%   rÁ  gGáz®Gñ?ç333333û?r¬  r   r¡  s       r-   Útest_two_intervalszTestBPoly.test_two_intervalsø  sz   € ØˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆÝ�1�a‰[Œ[ˆå˜˜˜3™œ¥¤¨KÑ!8Ô!8Ñ9Ô9Ð9Ý˜˜˜3™œ¥¤¨NÑ!;Ô!;Ñ<Ô<Ð<Ð<Ð<r3   c                 ó6  — ddg}dgdgdgg}t          ||¦  «        }dD ]ù}t          |||¬¦  «        }|                     ¦   «         }|du rgt          j         |d	d
g¦  «        ¦  «                             ¦   «         sJ ‚t          j         |d	d
g¦  «        ¦  «                             ¦   «         sJ ‚Œ“t          j         |d	d
g¦  «        ¦  «                             ¦   «         rJ ‚t          j         |d	d
g¦  «        ¦  «                             ¦   «         rJ ‚Œúd S )Nr   r%   r>   rh   r  r—  r�  Fr˜  gÍÌÌÌÌÌ @)r   rÑ  rC   rv   rB  rš  )r)   r+   rñ   ræ  rf   Úbp_ds         r-   r˜  zTestBPoly.test_extrapolate_attr   s0  € Ø�ˆFˆØˆS�1�#˜�sˆOˆÝ�1�a‰[Œ[ˆà.ð 	=ð 	=ˆKÝ�q˜!¨Ð5Ñ5Ô5ˆBØ—=’=‘?”?ˆDØ˜eÐ#Ð#Ý”x   D¨# ;¡¤Ñ0Ô0×4Ò4Ñ6Ô6Ð6Ð6Ð6Ý”x   d¨C [Ñ 1Ô 1Ñ2Ô2×6Ò6Ñ8Ô8Ð8Ð8Ð8Ð8åœ8 B B¨¨c {¡O¤OÑ4Ô4×8Ò8Ñ:Ô:Ð:Ð:Ð:Ýœ8 D D¨$°¨Ñ$5Ô$5Ñ6Ô6×:Ò:Ñ<Ô<Ð<Ð<Ð<Ð<ð	=ð 	=r3   N)r/   r0   r1   r  r£  r¥  r§  r©  r  r(  r.  r²  rµ  r˜  r2   r3   r-   rž  rž  ˆ  s½   € € € € € ð1ð 1ð 1ð=ð =ð =ðGð Gð Gð	
ð 	
ð 	
ð

ð 

ð 

ð
>ð 
>ð 
>ð ,ð  ,ð  ,ðD-ð -ð -ð
ð 
ð 
ð=ð =ð =ð=ð =ð =ð =ð =r3   rž  c                   óP   — 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S )ÚTestBPolyCalculusc                 ó"  ‡— g d¢}ddgddgddgg}t          ||¦  «        Š‰                     ¦   «         }t           |d¦  «        t          j        d¦  «        ¦  «         t           |d¦  «        t          j        d¦  «        ¦  «         t          t          j        ˆfd	„d
D ¦   «         ¦  «        t          j        g d¢¦  «        ¦  «         t          t          j        ˆfd„d
D ¦   «         ¦  «        t          j        g d¢¦  «        ¦  «         d S )Nr«  r>   r   r%   rÁ  r­  r´  rý  c                 ó(   •— g | ]} ‰d |¦  «        ‘ŒS )rÁ  r2   ©rÿ   rÍ  ræ  s     €r-   ú
<listcomp>z5TestBPolyCalculus.test_derivative.<locals>.<listcomp>  ó#   ø€ Ð#DÐ#DÐ#D°B B B s¨B¡K¤KÐ#DÐ#DÐ#Dr3   ©rh   r%   r>   )r­  r{   r;   c                 ó(   •— g | ]} ‰d |¦  «        ‘ŒS )r´  r2   r¼  s     €r-   r½  z5TestBPolyCalculus.test_derivative.<locals>.<listcomp>  r¾  r3   )rý  ru   r   )r   rÑ  r   rC   r�   )r)   r+   rñ   Úbp_derræ  s       @r-   ré  z!TestBPolyCalculus.test_derivative  s  ø€ ØˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆÝ�1�a‰[Œ[ˆØ—’‘”ˆÝ˜˜˜s™œ¥R¤Z°Ñ%9Ô%9Ñ:Ô:Ð:Ý˜˜˜s™œ¥R¤Z°¡_¤_Ñ5Ô5Ð5õ 	�œ
Ð#DÐ#DÐ#DÐ#D¸)Ð#DÑ#DÔ#DÑEÔEÝœ
Ð#7Ð#7Ð#7Ñ8Ô8ñ	
ô 	
ð 	
õ 	�œ
Ð#DÐ#DÐ#DÐ#D¸)Ð#DÑ#DÔ#DÑEÔEÝœ
 < < <Ñ0Ô0ñ	
ô 	
ð 	
ð 	
ð 	
r3   c                 ó  — t           j                             d¦  «        }d\  }}t          j        |                     |¦  «        ¦  «        }|                     ||dz
  f¦  «        }t	          ||¦  «        }t          j        |¦  «        }t          |¦  «        D ]n}|                     ¦   «         }|                     ¦   «         }t          j	        |d         |d         d¦  «        }	t           ||	¦  «         ||	¦  «        ¦  «         Œod S ©Nr§  ©r9   r•   rh   r   rA   é   )rC   r¨  r  r»  r   r   rð  r  rÑ  r,  r   )
r)   r  rÔ  r
  r+   rñ   ræ  r®  ÚdrÃ  s
             r-   Útest_derivative_ppolyz'TestBPolyCalculus.test_derivative_ppoly!  sæ   € åŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒG�C—J’J˜q‘M”MÑ"Ô"ˆØ�JŠJ˜˜1˜Q™3�xÑ Ô ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆå�q‘”ð 	,ð 	,ˆAØ—’‘”ˆBØ—’‘”ˆBÝ”˜Q˜qœT 1 R¤5¨"Ñ-Ô-ˆBÝ˜B˜B˜r™FœF B B r¡F¤FÑ+Ô+Ð+Ð+ð		,ð 	,r3   c           	      óü  — t           j                             d¦  «        }d\  }}t          j        |                     |¦  «        ¦  «        }|                     ||dz
  f¦  «        }|                     ¦   «         |dz  fD ]|}t          ||¦  «        }t          j        |d         |d         d¦  «        }t          |¦  «        D ]8}	t           |||	¦  «         | 	                    |	¦  «        |¦  «        ¦  «         Œ9Œ}d S )Nr§  rÄ  rh   r*  r   rA   rÅ  )
rC   r¨  r  r»  rq   r   r,  r  r   rÑ  )
r)   r  rÔ  r
  r+   rñ   Úccræ  rÃ  r„  s
             r-   Útest_deriv_inplacez$TestBPolyCalculus.test_deriv_inplace0  sû   € ÝŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒG�C—J’J˜q‘M”MÑ"Ô"ˆØ�JŠJ˜˜1˜Q™3�xÑ Ô ˆð —6’6‘8”8˜Q ™\Ð*ð 	Að 	AˆBÝ�r˜1‘”ˆBÝ”˜Q˜qœT 1 R¤5¨"Ñ-Ô-ˆBÝ˜1‘X”Xð Að A�Ý   2 q¡	¤	Ð+;¨2¯=ª=¸Ñ+;Ô+;¸BÑ+?Ô+?Ñ@Ô@Ð@Ð@ðAð	Að 	Ar3   c           
      ó$  — g d¢}ddgddgg}t          ||¦  «        }|                     ¦   «         }t          j        ddd¦  «        }t	           ||¦  «        t          j        |dk     |dz  dz  d|z  |dz  dz
  z  d	z   ¦  «        d
d
¬¦  «         d S )Nr«  r   rh   r>   r‹   r%   r:   r&   g      è?r  ©rš   rŽ   )r   rÒ  rC   r,  r   Úwhere)r)   r+   rñ   ræ  ÚbiÚxxs         r-   rX  z,TestBPolyCalculus.test_antiderivative_simple=  sº   € ð ˆIˆIˆØ�ˆV�a˜�VÐˆå�1�a‰[Œ[ˆØ×ÒÑ Ô ˆåŒ[˜˜A˜rÑ"Ô"ˆÝ˜˜˜2™œÝœ  a¢¨¨Q©°©Ø),¨r©°R¸±U¸Q±YÑ)?À$Ñ)FñHô Hà"¨ð	0ñ 	0ô 	0ð 	0ð 	0ð 	0r3   c                 ó²  — t           j                             d¦  «        }t          j        |                     d¦  «        ¦  «        }|                     d¦  «        }t	          ||¦  «        }t          j        |d         |d         d¦  «        }t           |                     ¦   «                              ¦   «         |¦  «         ||¦  «        dd¬¦  «         d S )	Nr§  r‹   ©r  r=   r%   r>   r   rA   rø   r  rÌ  )	rC   r¨  r  r»  r   r,  r   rÒ  rÑ  ©r)   r  r+   rñ   ræ  rÏ  s         r-   Útest_der_antiderz"TestBPolyCalculus.test_der_antiderQ  s¾   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�}Ñ%Ô%ˆÝ�1�a‰[Œ[ˆåŒ[˜˜1œ˜q œu cÑ*Ô*ˆÝÐ8˜×)Ò)Ñ+Ô+×6Ò6Ñ8Ô8¸Ñ<Ô<Ø˜˜2™œ U°ð	8ñ 	8ô 	8ð 	8ð 	8ð 	8r3   c                 óÞ  — t           j                             d¦  «        }t          j        |                     d¦  «        ¦  «        }|                     d¦  «        }t	          ||¦  «        }t          j        |¦  «        }t          j        |d         |d         d¦  «        }t           | 	                    d¦  «        |¦  «         | 	                    d¦  «        |¦  «        dd¬	¦  «         d S )
Nr§  r‹   rÑ  r   rA   r=   r%   r  rÌ  )
rC   r¨  r  r»  r   r   rð  r,  r   rÒ  )r)   r  r+   rñ   ræ  r®  rÏ  s          r-   Útest_antider_ppolyz$TestBPolyCalculus.test_antider_ppoly[  sÚ   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�}Ñ%Ô%ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆåŒ[˜˜1œ˜q œu bÑ)Ô)ˆåÐ,˜×)Ò)¨!Ñ,Ô,¨RÑ0Ô0Ø,˜×)Ò)¨!Ñ,Ô,¨RÑ0Ô0°uÀ5ð	Jñ 	Jô 	Jð 	Jð 	Jð 	Jr3   c                 ót  — t           j                             d¦  «        }t          j        |                     d¦  «        ¦  «        }|                     d¦  «        }t	          ||¦  «                             ¦   «         }|j        dd…         }t           ||dz
  ¦  «         ||dz   ¦  «        dd¬¦  «         d S )	Nr§  r‹   ©r  r=   rh   rA   rŒ   r  rÌ  )rC   r¨  r  r»  r   rÒ  r+   r   rÒ  s         r-   Útest_antider_continuousz)TestBPolyCalculus.test_antider_continuousg  s±   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�wÑÔˆÝ�1�a‰[Œ[×'Ò'Ñ)Ô)ˆàŒT�!�B�$ŒZˆÝ˜˜˜2 ™:™œØ˜˜2 ™:™œ¨U¸ð	@ñ 	@ô 	@ð 	@ð 	@ð 	@r3   c                 ó|  — t           j                             d¦  «        }t          j        |                     d¦  «        ¦  «        }|                     d¦  «        }t	          ||¦  «        }t          j        |¦  «        }t          |                     dd¦  «        |                     dd¦  «        ddd¬¦  «         d S )	Nr§  r‹   r×  r   rh   r  F)rš   rŽ   rd  )	rC   r¨  r  r»  r   r   rð  r   r  )r)   r  r+   rñ   ræ  r®  s         r-   rf  z TestBPolyCalculus.test_integrateq  s¬   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�wÑÔˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆÝ˜Ÿš Q¨Ñ*Ô*ØŸš Q¨Ñ*Ô*°¸UÈUð	Tñ 	Tô 	Tð 	Tð 	Tð 	Tr3   c                 ó–  — dgg}ddg}t          ||¦  «        }t          |                     dd¦  «        t          j        d¦  «        dd¬¦  «         t          ||d¬¦  «        }t          j        |                     dd¦  «        ¦  «        sJ ‚t          |                     ddd	¬¦  «        t          j        d¦  «        dd¬¦  «         d S )
Nrh   r   r%   r:   rŒ   F)rš   rd  r�  T)r   r   r  rC   r�   rv   )r)   rñ   r+   r$  Úb1s        r-   Útest_integrate_extrapz'TestBPolyCalculus.test_integrate_extrapz  sÝ   € ØˆSˆEˆØ�ˆFˆÝ�!�Q‰KŒKˆõ 	˜Ÿš A qÑ)Ô)­2¬:°b©>¬>Ø"¨Uð	4ñ 	4ô 	4ð 	4õ �1�a UÐ+Ñ+Ô+ˆÝŒx˜Ÿš Q¨Ñ*Ô*Ñ+Ô+Ð+Ð+Ð+Ý˜Ÿš Q¨°t˜Ñ<Ô<Ýœ
 2™œ¨U¸Uð	Dñ 	Dô 	Dð 	Dð 	Dð 	Dr3   c                 ó´  — t          j        g d¢¦  «        }t          j        ddgddgddgddgg¦  «        }t          j        t	          ||¦  «        d¬¦  «        }|                     ¦   «         } |d	¦  «         |d
¦  «        z
  }t          |                     d
d	¦  «        |¦  «         t          |                     dd¦  «        |¦  «         t          |                     dd¦  «        d|z  ¦  «         t          |                     dd¦  «         |d¦  «         |d¦  «        z
  ¦  «         t          |                     dd¦  «         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  ¦  «         t          |                     dd¦  «         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  ¦  «         t          |                     dd¦  «         |d¦  «         |d
¦  «        z
   |d	¦  «        z    |d¦  «        z
  d	|z  z   ¦  «         t          |                     dd¦  «         |d¦  «         |d¦  «        z
  ¦  «         t          |                     dd¦  «         |d¦  «         |d¦  «        z
  ¦  «         t          |                     dd¦  «         |d¦  «         |d¦  «        z
  d|z  z
  ¦  «         d S rl  )rC   rL   r   rñ  r   rÒ  r   r  rm  s         r-   rp  z)TestBPolyCalculus.test_integrate_periodic‰  s¹  € ÝŒH�Y�Y�YÑÔˆÝŒH�r˜2�h  c 
¨R°¨I¸¸B°xÐ@ÑAÔAˆåÔ"¥5¨¨A¡;¤;¸JÐGÑGÔGˆØ×ÒÑÔˆà�Q�q‘T”T˜A˜A˜a™DœD‘[ˆ
å˜Ÿš A qÑ)Ô)¨:Ñ6Ô6Ð6Ý˜Ÿš C¨Ñ,Ô,¨jÑ9Ô9Ð9Ý˜Ÿš C¨Ñ,Ô,¨a°*©nÑ=Ô=Ð=å˜Ÿš C¨Ñ-Ô-¨q¨q°©v¬v¸¸¸#¹¼©Ñ?Ô?Ð?Ý˜Ÿš C¨Ñ+Ô+¨Q¨Q¨q©T¬T°A°A°a±D´D©[¸1¸1¸Q¹4¼4Ñ-?À!À!ÀCÁ&Ä&Ñ-HÑIÔIÐIÝ˜Ÿš H¨fÑ5Ô5Ø˜˜!™œ˜q˜q ™tœt™ a a¨¡d¤dÑ*¨Q¨Q¨s©V¬VÑ3ñ	5ô 	5ð 	5å˜Ÿš C¨Ñ0Ô0Ø˜˜!™œ˜q˜q ™tœt™ a a¨¡d¤dÑ*¨Q¨Q¨s©V¬VÑ3°a¸*±nÑDñ	Fô 	Fð 	Fõ 	˜Ÿš A rÑ*Ô*¨A¨A¨a©D¬D°1°1°Q±4´4©KÑ8Ô8Ð8Ý˜Ÿš B¨Ñ,Ô,¨a¨a°©d¬d°Q°Q°q±T´T©kÑ:Ô:Ð:Ý˜Ÿš A sÑ+Ô+¨Q¨Q¨q©T¬T°A°A°a±D´D©[¸1¸z¹>Ñ-IÑJÔJÐJÐJÐJr3   c                 óŒ  — dgg}ddg}t          ||¦  «        }t          j        ddd¦  «        }t           |                     d¦  «        |¦  «         |                     ¦   «         |¦  «        dd¬¦  «         t           |                     d¦  «        |¦  «         |                     d¦  «        |¦  «        dd¬¦  «         d S )Nrh   r   rÅ  rA   r  rÌ  )r   rC   r,  r   rÑ  rÒ  )r)   rñ   r+   r$  rÏ  s        r-   Útest_antider_negz"TestBPolyCalculus.test_antider_neg¡  sÙ   € àˆSˆEˆØ�ˆFˆÝ�!�Q‰KŒKˆåŒ[˜˜A˜rÑ"Ô"ˆåÐ(˜Ÿš RÑ(Ô(¨Ñ,Ô,Ð.@¨a×.>Ò.>Ñ.@Ô.@ÀÑ.DÔ.DØ"¨ð	0ñ 	0ô 	0ð 	0å˜˜Ÿš Q™œ¨Ñ+Ô+Ð-A¨Q×-=Ò-=¸bÑ-AÔ-AÀ"Ñ-EÔ-EØ"¨ð	0ñ 	0ô 	0ð 	0ð 	0ð 	0r3   N)r/   r0   r1   ré  rÇ  rÊ  rX  rÓ  rÕ  rØ  rf  rÜ  rp  rß  r2   r3   r-   r¹  r¹    sË   € € € € € ð
ð 
ð 
ð ,ð ,ð ,ðAð Að Að0ð 0ð 0ð(8ð 8ð 8ð
Jð 
Jð 
Jð@ð @ð @ðTð Tð TðDð Dð DðKð Kð Kð00ð 0ð 0ð 0ð 0r3   r¹  c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestPolyConversionsc                 ó$  — g d¢}ddgddgddgg}t          ||¦  «        }t          j        |¦  «        }t          j        |¦  «        }ddg}t	           ||¦  «         ||¦  «        ¦  «         t	           ||¦  «         ||¦  «        ¦  «         d S )	Nr«  r>   r%   rh   r•   r  r7  çffffffö?)r   r   rñ  rð  r   )r)   r+   rñ   r®  ræ  r´  rÃ  s          r-   Útest_bp_from_ppz#TestPolyConversions.test_bp_from_pp°  sŸ   € ØˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆÝ�1�a‰[Œ[ˆÝÔ# BÑ'Ô'ˆÝÔ(¨Ñ,Ô,ˆà�3ˆZˆÝ˜˜˜2™œ   2¡¤Ñ'Ô'Ð'Ý˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r3   c                 ó  — t           j                             d¦  «        }d\  }}t          j        |                     |¦  «        ¦  «        }|                     ||dz
  f¦  «        }t	          ||¦  «        }t          j        |¦  «        }t	          j        |¦  «        }t          j        |d         |d         d¦  «        }	t           ||	¦  «         ||	¦  «        ¦  «         t           ||	¦  «         ||	¦  «        ¦  «         d S rÃ  )
rC   r¨  r  r»  r   r   rñ  rð  r,  r   )
r)   r  rÔ  r
  r+   rñ   r®  ræ  r´  rÃ  s
             r-   Útest_bp_from_pp_randomz*TestPolyConversions.test_bp_from_pp_random»  sà   € ÝŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒG�C—J’J˜q‘M”MÑ"Ô"ˆØ�JŠJ˜˜1˜Q™3�xÑ Ô ˆÝ�1�a‰[Œ[ˆÝÔ# BÑ'Ô'ˆÝÔ(¨Ñ,Ô,ˆåŒ[˜˜1œ˜q œu bÑ)Ô)ˆÝ˜˜˜2™œ   2¡¤Ñ'Ô'Ð'Ý˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r3   c                 ó$  — g d¢}ddgddgddgg}t          ||¦  «        }t          j        |¦  «        }t          j        |¦  «        }ddg}t	           ||¦  «         ||¦  «        ¦  «         t	           ||¦  «         ||¦  «        ¦  «         d S )Nr«  r>   rh   r  r%   r7  rã  )r   r   rð  rñ  r   )r)   r+   rñ   ræ  r®  rò  rÃ  s          r-   Útest_pp_from_bpz#TestPolyConversions.test_pp_from_bpÈ  sŸ   € ØˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆÝÔ$ RÑ(Ô(ˆà�3ˆZˆÝ˜˜˜2™œ   2¡¤Ñ'Ô'Ð'Ý˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r3   c                 óf  — g d¢}ddgddgddgg}t          ||¦  «        }t          t          ¦  «        5  t          j        |¦  «         d d d ¦  «         n# 1 swxY w Y   t	          ||¦  «        }t          t          ¦  «        5  t	          j        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr«  r>   rh   r  r%   )r   r'   Ú	TypeErrorrð  r   rñ  )r)   r+   rñ   r®  ræ  s        r-   Útest_broken_conversionsz+TestPolyConversions.test_broken_conversionsÓ  s6  € àˆIˆIˆØ�ˆV�a˜�V˜a ˜VÐ$ˆÝ�1�a‰[Œ[ˆÝ�9Ñ%Ô%ð 	+ð 	+ÝÔ& rÑ*Ô*Ð*ð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+õ �1�a‰[Œ[ˆÝ�9Ñ%Ô%ð 	'ð 	'ÝÔ" 2Ñ&Ô&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'ð 	'ð 	's#   ´AÁAÁAÂB&Â&B*Â-B*N)r/   r0   r1   rä  ræ  rè  rë  r2   r3   r-   rá  rá  ¯  sP   € € € € € ð	)ð 	)ð 	)ð)ð )ð )ð	)ð 	)ð 	)ð
'ð 
'ð 
'ð 
'ð 
'r3   rá  c                   ón   — 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S )ÚTestBPolyFromDerivativesc                 ó\   — t          j        dddgdg¦  «        }t          |ddg¦  «         d S )Nr   rh   r%   r>   r:   rs   ©r   Ú_construct_from_derivativesr   )r)   rv  s     r-   Útest_make_poly_1z)TestBPolyFromDerivatives.test_make_poly_1á  s6   € ÝÔ.¨q°!°a°S¸1¸#Ñ>Ô>ˆÝ˜˜R ˜HÑ%Ô%Ð%Ð%Ð%r3   c                 ó  — t          j        ddddgdg¦  «        }t          |g d¢¦  «         t          j        ddddgdg¦  «        }t          |g d¢¦  «         t          j        dddgddg¦  «        }t          |g d¢¦  «         d S )Nr   rh   )ru   ru   ru   r%   r>   )r:   rm  ru   )r:   g      à¿ru   rï  ©r)   rv  r³  Úc3s       r-   Útest_make_poly_2z)TestBPolyFromDerivatives.test_make_poly_2å  sœ   € ÝÔ.¨q°!°a¸°V¸a¸SÑAÔAˆÝ˜˜L˜L˜LÑ)Ô)Ð)õ Ô.¨q°!°a¸°V¸a¸SÑAÔAˆÝ˜˜N˜N˜NÑ+Ô+Ð+õ Ô.¨q°!°a°S¸1¸a¸&ÑAÔAˆÝ˜˜N˜N˜NÑ+Ô+Ð+Ð+Ð+r3   c                 ó  — t          j        ddg d¢dg¦  «        }t          |g d¢¦  «         t          j        dddgg d¢¦  «        }t          |g d¢¦  «         t          j        ddddgdd	g¦  «        }t          |g d
¢¦  «         d S )Nr   rh   r¿  r  )ru   ç«ªªªªªú?g«ªªªªª@r  )r  r%   r>   )ru   gUUUUUU	@g«ªªªªª
@r  r%   r>   )ru   r÷  rs   r  rï  ró  s       r-   Útest_make_poly_3z)TestBPolyFromDerivatives.test_make_poly_3ñ  s§   € åÔ.¨q°!°Y°Y°YÀÀÑDÔDˆÝ˜Ð1Ð1Ð1Ñ2Ô2Ð2õ Ô.¨q°!°a°S¸)¸)¸)ÑDÔDˆÝ˜Ð2Ð2Ð2Ñ3Ô3Ð3õ Ô.¨q°!°a¸°V¸aÀ¸VÑDÔDˆÝ˜Ð.Ð.Ð.Ñ/Ô/Ð/Ð/Ð/r3   c                 ó  — t           j                             d¦  «        }t           j        d|                     d¦  «        f         }t           j        d|                     d¦  «        f         }t	          j        dd||¦  «        }t	          |d d …d f         ddg¦  «        }t          d¦  «        D ]X}t           |d¦  «        ||         d¬¦  «         t           |d	¦  «        ||         d¬¦  «         |                     ¦   «         }ŒYd S )
NrÈ  r   r9   rh   r  r;   Frc  ru   )	rC   r¨  r  rð   r   rð  r  r   rÑ  )r)   r  ÚyaÚybrñ   r®  r…  s          r-   Útest_make_poly_12z*TestBPolyFromDerivatives.test_make_poly_12þ  sò   € ÝŒi×#Ò# EÑ*Ô*ˆÝŒU�1�c—j’j ‘m”mÐ#Ô$ˆÝŒU�1�c—j’j ‘m”mÐ#Ô$ˆåÔ-¨a°°B¸Ñ;Ô;ˆÝ�1�Q�Q�Q˜�W”:  1˜vÑ&Ô&ˆÝ�q‘”ð 	!ð 	!ˆAÝ˜B˜B˜r™FœF B q¤E°EÐ:Ñ:Ô:Ð:Ý˜B˜B˜r™FœF B q¤E°EÐ:Ñ:Ô:Ð:Ø—’‘”ˆBˆBð	!ð 	!r3   c                 ód  — t           j                             d¦  «        }ddg}d\  }}|                     |ddddf¦  «        }t          ||¦  «        }t          j        ||¦  «        }t          ||¦  «        }t          j        ddd¦  «        }	t           ||	¦  «         ||	¦  «        ¦  «         d S )	NrÈ  r   rh   )r•   r9   r%   r>   r  r‹   )rC   r¨  r  r   Ú_raise_degreer,  r   )
r)   r  r+   r
  rÆ  rñ   ræ  rv  rò  rÃ  s
             r-   Útest_raise_degreez*TestBPolyFromDerivatives.test_raise_degree
  s©   € ÝŒi×#Ò# EÑ*Ô*ˆØ�ˆFˆØ‰ˆˆ1Ø�JŠJ˜˜1˜a  A�Ñ'Ô'ˆÝ�1�a‰[Œ[ˆåÔ   AÑ&Ô&ˆÝ�B˜‰lŒlˆåŒ[˜˜A˜rÑ"Ô"ˆÝ˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r3   c                 óN   — t          t          t          j        ddgdg¦  «         d S )Nr   rh   ©r'   rm   r   rõ  rX   s    r-   Ú
test_xi_yiz#TestBPolyFromDerivatives.test_xi_yi  s%   € Ý•j¥%Ô"8¸1¸a¸&À1À#ÑFÔFÐFÐFÐFr3   c                 ó`   — g d¢}dgdgdgg}t          t          t          j        ||¦  «         d S )N©r   r   rh   r   r  )r)   r/  rò   s      r-   Útest_coords_orderz*TestBPolyFromDerivatives.test_coords_order  s9   € ØˆYˆYˆØˆc�A�3˜˜ˆ_ˆÝ•j¥%Ô"8¸"¸bÑAÔAÐAÐAÐAr3   c                 óT  — g d¢}ddgdgddgddgg}t          j        ||¦  «        }|j        j        dk    sJ ‚|                     ¦   «         }dD ]X}t           ||¦  «        t          j        d¦  «        ¦  «         t           ||¦  «        t          j        d¦  «        ¦  «         ŒYd S )NrÐ  r   )r  r>   )r;   r7  ru   r™  gffffffþ?r:   r)  r;   )r   rõ  rñ   r  rÑ  r   rC   r�   )r)   r/  rò   r®  ÚppdrÃ  s         r-   Ú
test_zerosz#TestBPolyFromDerivatives.test_zeros  s·   € Øˆ\ˆ\ˆØ�!ˆf�q�c˜A˜q˜6 A q 6Ð*ˆÝÔ# B¨Ñ+Ô+ˆØŒtŒz˜VÒ#Ð#Ð#Ð#à�mŠm‰oŒoˆØ2ð 	6ð 	6ˆBÝ˜B˜B˜r™FœF¥B¤J¨s¡O¤OÑ4Ô4Ð4Ý˜C˜C ™GœG¥R¤Z°¡_¤_Ñ5Ô5Ð5Ð5ð	6ð 	6r3   c                 óæ   ‡‡— t           j                             d¦  «        Št          j        d„ t	          |dz   ¦  «        D ¦   «         ¦  «        }ˆˆfd„t	          |dz   ¦  «        D ¦   «         }||fS )Nr§  c                 ó   — g | ]
}d |dz  z  ‘ŒS )ru   r%   r2   )rÿ   r…  s     r-   r½  z<TestBPolyFromDerivatives._make_random_mk.<locals>.<listcomp>.  s    € Ð7Ð7Ð7 q˜˜a ™d™Ð7Ð7Ð7r3   rh   c                 ó:   •— g | ]}‰                      ‰¦  «        ‘ŒS r2   )r¨  )rÿ   r…  r
  r  s     €€r-   r½  z<TestBPolyFromDerivatives._make_random_mk.<locals>.<listcomp>/  s#   ø€ Ð0Ð0Ð0 ˆc�jŠj˜‰mŒmÐ0Ð0Ð0r3   )rC   r¨  r  r�   r  )r)   rÔ  r
  r/  rò   r  s     `  @r-   Ú_make_random_mkz(TestBPolyFromDerivatives._make_random_mk+  sp   øø€ åŒi×#Ò# DÑ)Ô)ˆÝŒZÐ7Ð7­E°!°A±#©J¬JÐ7Ñ7Ô7Ñ8Ô8ˆØ0Ð0Ð0Ð0Ð0¥U¨1¨Q©3¡Z¤ZÐ0Ñ0Ô0ˆØ�2ˆvˆr3   c                 ó
  ‡— d\  }}|                       ||¦  «        \  }}t          j        ||¦  «        }t          |dz  ¦  «        D ];Št	           ||¦  «        ˆfd„|D ¦   «         ¦  «         |                     ¦   «         }Œ<d S )N©r9   rÈ   r%   c                 ó    •— g | ]
}|‰         ‘ŒS r2   r2   )rÿ   Úyyr¬  s     €r-   r½  z;TestBPolyFromDerivatives.test_random_12.<locals>.<listcomp>8  s   ø€ Ð$<Ð$<Ð$<°2 R¨¤YÐ$<Ð$<Ð$<r3   )r  r   rõ  r  r   rÑ  )r)   rÔ  r
  r/  rò   r®  r¬  s         @r-   Útest_random_12z'TestBPolyFromDerivatives.test_random_122  s–   ø€ Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBÝÔ# B¨Ñ+Ô+ˆå˜1˜a™4‘[”[ð 	!ð 	!ˆEÝ˜B˜B˜r™FœFÐ$<Ð$<Ð$<Ð$<¸Ð$<Ñ$<Ô$<Ñ=Ô=Ð=Ø—’‘”ˆBˆBð	!ð 	!r3   c           	      óœ   — d\  }}|                       ||¦  «        \  }}t          t          t          j        fi t          ||d¬¦  «        ¤Ž d S )Nr  r   ©r/  rò   Úorders)r  r'   rm   r   rõ  r‘   ©r)   rÔ  r
  r/  rò   s        r-   Útest_order_zeroz(TestBPolyFromDerivatives.test_order_zero;  sc   € Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBÝ•j¥%Ô"8ð 	0ð 	0Ý˜" ¨AÐ.Ñ.Ô.ð	0ð 	0ð 	0ð 	0ð 	0r3   c           
      óÜ   — d\  }}|                       ||¦  «        \  }}t          j        ||d|z  dz
  ¬¦  «         t          t          t          j        fi t          ||d|z  ¬¦  «        ¤Ž d S )Nr  r%   rh   ©r  r  )r  r   rõ  r'   rm   r‘   r  s        r-   Útest_orders_too_highz-TestBPolyFromDerivatives.test_orders_too_highA  s‡   € Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBåÔ˜r 2¨a°©c°!©eÐ4Ñ4Ô4Ð4Ý•j¥%Ô"8ð 	2ð 	2Ý˜" ¨A¨a©CÐ0Ñ0Ô0ð	2ð 	2ð 	2ð 	2ð 	2r3   c           	      ó,  — d\  }}|                       ||¦  «        \  }}d}t          j        |||¬¦  «        }t          |dz  dz   ¦  «        D ]N}t	           ||dd…         dz
  ¦  «         ||dd…         dz   ¦  «        ¦  «         |                     ¦   «         }ŒOt          j         ||dd…         dz
  ¦  «         ||dd…         dz   ¦  «        ¦  «        rJ ‚d}t          j        |||¬¦  «        }t          |dz  ¦  «        D ]N}t	           ||dd…         dz
  ¦  «         ||dd…         dz   ¦  «        ¦  «         |                     ¦   «         }ŒOt          j         ||dd…         dz
  ¦  «         ||dd…         dz   ¦  «        ¦  «        rJ ‚d S )	Nr  r9   r  r%   rh   rA   r  r  )r  r   rõ  r  r   rÑ  rC   Úallclose)r)   rÔ  r
  r/  rò   r¬  r®  r…  s           r-   Útest_orders_globalz+TestBPolyFromDerivatives.test_orders_globalI  sÄ  € Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBð ˆÝÔ# B¨°5Ð9Ñ9Ô9ˆå�u˜a‘x ‘zÑ"Ô"ð 	!ð 	!ˆAÝ˜B˜B˜r ! B $œx¨%Ñ/Ñ0Ô0°"°"°R¸¸"¸´XÀÑ5EÑ2FÔ2FÑGÔGÐGØ—’‘”ˆBˆBÝ”;˜r˜r " Q r T¤(¨UÑ"2Ñ3Ô3°R°R¸¸1¸R¸4¼À5Ñ8HÑ5IÔ5IÑJÔJÐJÐJÐJð
 ˆÝÔ# B¨°5Ð9Ñ9Ô9ˆÝ�u˜a‘x‘”ð 	!ð 	!ˆAÝ˜B˜B˜r ! B $œx¨%Ñ/Ñ0Ô0°"°"°R¸¸"¸´XÀÑ5EÑ2FÔ2FÑGÔGÐGØ—’‘”ˆBˆBÝ”;˜r˜r " Q r T¤(¨UÑ"2Ñ3Ô3°R°R¸¸1¸R¸4¼À5Ñ8HÑ5IÔ5IÑJÔJÐJÐJÐJÐJÐJr3   c           	      óî  — d\  }}|                       ||¦  «        \  }}d„ t          |¦  «        D ¦   «         }t          |dd…         ¦  «        D ]¥\  }}t          j        |||¬¦  «        }t          ||         dz  dz   ¦  «        D ]>}	t           ||dz
  ¦  «         ||dz   ¦  «        ¦  «         |                     ¦   «         }Œ?t          j         ||dz
  ¦  «         ||dz   ¦  «        ¦  «        rJ ‚Œ¦d S )N)r  rÈ   c                 ó   — g | ]}|d z   ‘ŒS )rh   r2   )rÿ   Úos     r-   r½  z>TestBPolyFromDerivatives.test_orders_local.<locals>.<listcomp>e  s   € Ð*Ð*Ð*˜A�!�a‘%Ð*Ð*Ð*r3   rh   rA   r  r%   r  )	r  r  r  r   rõ  r   rÑ  rC   r  )
r)   rÔ  r
  r/  rò   r  r„  r+   r®  r…  s
             r-   Útest_orders_localz*TestBPolyFromDerivatives.test_orders_locala  s  € Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBà*Ð*¥ q¡¤Ð*Ñ*Ô*ˆÝ˜b  2 œhÑ'Ô'ð 	Að 	A‰DˆAˆqÝÔ'¨¨B°vÐ>Ñ>Ô>ˆBÝ˜6 !œ9¨™>¨AÑ-Ñ.Ô.ð %ð %�Ý   1 u¡9¡¤¨r¨r°!°e±)©}¬}Ñ=Ô=Ð=Ø—]’]‘_”_��Ý”{ 2 2 a¨%¡i¡=¤=°"°"°Q¸±Y±-´-Ñ@Ô@Ð@Ð@Ð@Ð@ð	Að 	Ar3   c                 ó:  — t           j                             d¦  «        }d\  }}t          j        |                     |dz   ¦  «        ¦  «        }|                     |dz   |dddf¦  «        }t	          j        ||¦  «        }|j        j        d|z  |dddfk    sJ ‚d S )Nr§  )r  r9   rh   r  r  r•   r%   )rC   r¨  r  r»  r   rõ  rñ   r  )r)   r  rÔ  r
  r/  rò   r®  s          r-   Útest_yi_trailing_dimsz.TestBPolyFromDerivatives.test_yi_trailing_dimsm  s™   € ÝŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒW�S—Z’Z  !¡‘_”_Ñ%Ô%ˆØ�ZŠZ˜˜1™˜a  A qÐ)Ñ*Ô*ˆÝÔ# B¨Ñ+Ô+ˆØŒtŒz˜a ™c 1 a¨¨AÐ.Ò.Ð.Ð.Ð.Ð.Ð.r3   c                 ó  — t          j        d¦  «        }t          j        ddgdgdgg|¬¦  «        }t	           |d¦  «        t          j        d¦  «        ¦  «         t          j        d¦  «        }t          j        ddgdgdgg|¬¦  «        }t	           |d¦  «        t          j        d¦  «        ¦  «         d}t          j        ddgdgdgg|¬¦  «        }t	           |d¦  «        t          j        d¦  «        ¦  «         d}d S )Nrh   r   r  )rC   Úint32r   rõ  r   r�   Úint64)r)   r  ra  s      r-   Útest_gh_5430z%TestBPolyFromDerivatives.test_gh_5430u  sõ   € õ
 ”˜!‘”ˆÝÔ" A q 6¨Q¨C°!°¨:¸fÐEÑEÔEˆÝ˜A˜A˜a™DœD¥"¤*¨Q¡-¤-Ñ0Ô0Ð0Ý”˜!‘”ˆÝÔ" A q 6¨Q¨C°!°¨:¸fÐEÑEÔEˆÝ˜A˜A˜a™DœD¥"¤*¨Q¡-¤-Ñ0Ô0Ð0ØˆåÔ" A q 6¨Q¨C°!°¨:¸fÐEÑEÔEˆÝ˜A˜A˜a™DœD¥"¤*¨Q¡-¤-Ñ0Ô0Ð0Øˆˆˆr3   N)r/   r0   r1   rñ  rõ  rø  rü  rÿ  r  r  r  r  r  r  r  r  r   r"  r&  r2   r3   r-   rí  rí  à  s  € € € € € ð&ð &ð &ð
,ð 
,ð 
,ð0ð 0ð 0ð
!ð 
!ð 
!ð)ð )ð )ðGð Gð GðBð Bð Bð
	6ð 	6ð 	6ðð ð ð!ð !ð !ð0ð 0ð 0ð2ð 2ð 2ðKð Kð Kð0
Að 
Að 
Að/ð /ð /ðð ð ð ð r3   rí  c                   ón   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zej        j        d
„ ¦   «         ZdS )ÚTestNdPPolyc                 ó€  — t           j                             d¦  «        }|                     dd¦  «        }t          j        ddd¦  «        }|                     d¦  «        }t          ||f¦  «        } ||f¦  «        }t          |d d …d d …d f         ||¦  «                             ¦   «         }t          ||¦  «         d S )Nr§  r  r9   r   rh   r  rú   )	rC   r¨  r  r«  r,  r   r5  r‘  r   )r)   r  rñ   r+   r/  ra  Úv1Úv2s           r-   Útest_simple_1dzTestNdPPoly.test_simple_1dˆ  s¯   € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜‰NŒNˆÝŒK˜˜1˜cÑ"Ô"ˆà�XŠX�c‰]Œ]ˆå�A˜�tÑÔˆØˆQ�ˆu‰XŒXˆå˜1˜Q˜Q˜Q˜q˜q˜q ˜Xœ;¨¨2Ñ.Ô.×4Ò4Ñ6Ô6ˆÝ˜˜BÑÔÐÐÐr3   c           
      ó  — t           j                             d¦  «        }|                     dddd¦  «        }t          j        ddd¦  «        }t          j        ddd¦  «        d	z  }|                     d
¦  «        }|                     d
¦  «        }t          j        t          |¦  «        dg|j        ¬¦  «        }|                     t           j	        ¦  «         t          j        |                     ddd¦  «        ||ft          j        ddgt           j        ¬¦  «        t           j        ||f         t          j        ddgt           j        ¬¦  «        d|¦  «         |                     ¦   «         }t#          |||f||¦  «        }t%          ||¦  «         t'          |||f¦  «        }	dD ]V}
 |	t           j        ||f         |
¬¦  «        }t#          |||f|||
¬¦  «        }t%          ||t)          |
¦  «        ¬¦  «         ŒWd S )Nr§  r  r9   r  r  r   rh   r•   r%   rú   r–   rº  é*   )N©r   r   ©r   rh   )rh   r   )r%   r>   )rŠ   r%   ©rÍ  r  )rC   r¨  r  r«  r,  r}  r_  r—   Úfillr    r   Úevaluate_ndrH   rL   ÚintcÚc_r‘  Ú_ppoly2d_evalr   r   r‚  )r)   r  rñ   r+   r*   r/  rò   r*  r+  ra  rÍ  s              r-   Útest_simple_2dzTestNdPPoly.test_simple_2d–  sÓ  € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜˜1˜aÑ Ô ˆÝŒK˜˜1˜cÑ"Ô"ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆà�XŠX�c‰]Œ]ˆØ�XŠX�c‰]Œ]ˆåŒX•s˜2‘w”w �l¨!¬'Ð2Ñ2Ô2ˆØ
�Š•”‰ŒˆÝÔ˜1Ÿ9š9 S¨#¨qÑ1Ô1Ø˜q˜6Ýœ8 Q¨ Fµ"´'Ð:Ñ:Ô:Ýœ5  R œ=Ýœ8 Q¨ Fµ"´'Ð:Ñ:Ô:ØØñ	ô 	ð 	ð �XŠX‰ZŒZˆÝ˜1˜q !˜f b¨"Ñ-Ô-ˆÝ˜˜BÑÔÐå�A˜˜1�vÑÔˆØ@ð 	6ð 	6ˆBØ�•2”5˜˜R˜”= RÐ(Ñ(Ô(ˆBÝ˜q 1 a &¨"¨b°RÐ8Ñ8Ô8ˆBÝ˜B ­D°©H¬HÐ5Ñ5Ô5Ð5Ð5ð	6ð 	6r3   c           	      óD  — t           j                             d¦  «        }|                     dddddd¦  «        }t          j        dd	d¦  «        }t          j        dd	d¦  «        d
z  }t          j        dd	d¦  «        dz  }|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }t          ||||f¦  «        }	dD ]I}
 |	|||f|
¬¦  «        }t          ||||f||||
¬¦  «        }t          ||t          |
¦  «        ¬¦  «         ŒJd S )Nr§  r  r9   r  r  r•   rŠ   r   rh   r%   r=   r>   é(   )N©r   r   r   ©r   rh   r   ©rh   r   r   )r%   r>   r   )r  r   r%   r1  r  )	rC   r¨  r  r«  r,  r   Ú_ppoly3d_evalr   r‚  )r)   r  rñ   r+   r*   r,   r/  rò   Úzira  rÍ  r*  r+  s                r-   Útest_simple_3dzTestNdPPoly.test_simple_3d³  s*  € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜˜1˜a  AÑ&Ô&ˆÝŒK˜˜1˜cÑ"Ô"ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆà�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆå�A˜˜1˜a�yÑ!Ô!ˆðð 	6ð 	6ˆBà��B˜˜B�< BÐ'Ñ'Ô'ˆBÝ˜q 1 a¨ )¨R°°R¸BÐ?Ñ?Ô?ˆBÝ˜B ­D°©H¬HÐ5Ñ5Ô5Ð5Ð5ð		6ð 	6r3   c           
      ó|  — t           j                             d¦  «        }|                     dddddddd	¦  «        }t          j        d
dd¦  «        }t          j        d
dd¦  «        dz  }t          j        d
dd	¦  «        dz  }t          j        d
dd¦  «        dz  }|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }	|                     d¦  «        }
t          |||||f¦  «        } ||||	|
f¦  «        }t          |||||f|||	|
¦  «        }t          ||¦  «         d S )Nr§  r  r9   r  r  r•   rŠ   r=   r‹   r   rh   r%   r>   rÈ   rº  )rC   r¨  r  r«  r,  r   Ú_ppoly4d_evalr   )r)   r  rñ   r+   r*   r,   Úur/  rò   r>  Úuira  r*  r+  s                 r-   Útest_simple_4dzTestNdPPoly.test_simple_4dÇ  s1  € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜˜1˜a  A r¨2Ñ.Ô.ˆÝŒK˜˜1˜cÑ"Ô"ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆà�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆå�A˜˜1˜a �|Ñ$Ô$ˆØˆQ��B˜˜BÐÑ Ô ˆå˜1˜q ! Q¨˜l¨B°°B¸Ñ;Ô;ˆÝ˜˜BÑÔÐÐÐr3   c                 ó  — t           j                             d¦  «        }|                     dd¦  «        }t          j        ddd¦  «        }t          ||f¦  «        }|                     dg¬¦  «        }t          ||¦  «        }|                     ¦   «         }t          |j	        |j	        ¦  «         | 
                    dg¬¦  «        }t          ||¦  «        }| 
                    d¦  «        }t          |j	        |j	        ¦  «         d S )	Nr§  r  r9   r   rh   r  r1  r%   )rC   r¨  r  r«  r,  r   rÑ  r   r   rñ   rÒ  )r)   r  rñ   r+   ra  r,  r½  Údp1s           r-   Útest_deriv_1dzTestNdPPoly.test_deriv_1dÛ  så   € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜‰NŒNˆÝŒK˜˜1˜cÑ"Ô"ˆå�A˜�tÑÔˆð �\Š\˜a˜Sˆ\Ñ!Ô!ˆÝ�1�a‰[Œ[ˆØ�mŠm‰oŒoˆÝ˜œ˜cœeÑ$Ô$Ð$ð ×Ò ! ÐÑ%Ô%ˆÝ�1�a‰[Œ[ˆØ×Ò Ñ"Ô"ˆÝ˜œ˜cœeÑ$Ô$Ð$Ð$Ð$r3   c                 óV  — t           j                             d¦  «        }|                     dddddd¦  «        }t          j        dd	d¦  «        }t          j        dd	d¦  «        d
z  }t          j        dd	d¦  «        dz  }t          ||||f¦  «        }t          |                     ddd	d
dd¦  «        |¦  «        }|                     d
g¬¦  «        }|                     d
¦  «        }	t          |j
        |	j
                             dd
dd	dd¦  «        ¦  «         t          |                     d	ddd
dd¦  «        |¦  «        }|                     g d¢¬¦  «        }|                     d	¦  «        }	t          |j
        |	j
                             d
dddd	d¦  «        ¦  «         t          |                     d
ddd	dd¦  «        |¦  «        }|                     g d¢¬¦  «        }|                     d¦  «        }	t          |j
        |	j
                             d
ddddd	¦  «        ¦  «         d S )Nr§  r  r9   r  r  r•   rŠ   r   rh   r%   r=   r>   r1  r;  )r   r   r>   )rC   r¨  r  r«  r,  r   r   Ú	transposerÑ  r   rñ   rÒ  )
r)   r  rñ   r+   r*   r,   ra  r½  r,  rF  s
             r-   Útest_deriv_3dzTestNdPPoly.test_deriv_3dï  s  € ÝŒi×#Ò# DÑ)Ô)ˆà�HŠH�Q˜˜1˜a  AÑ&Ô&ˆÝŒK˜˜1˜cÑ"Ô"ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆå�A˜˜1˜a�yÑ!Ô!ˆõ �1—;’;˜q ! Q¨¨1¨aÑ0Ô0°!Ñ4Ô4ˆØ�\Š\˜a˜Sˆ\Ñ!Ô!ˆØ�mŠm˜AÑÔˆÝ˜œØœŸš¨¨1¨a°°A°qÑ9Ô9ñ	;ô 	;ð 	;õ �1—;’;˜q ! Q¨¨1¨aÑ0Ô0°!Ñ4Ô4ˆØ×Ò   ÐÑ+Ô+ˆØ×Ò Ñ"Ô"ˆÝ˜œØœŸš¨¨1¨a°°A°qÑ9Ô9ñ	;ô 	;ð 	;õ �1—;’;˜q ! Q¨¨1¨aÑ0Ô0°!Ñ4Ô4ˆØ�\Š\˜Y˜Y˜Yˆ\Ñ'Ô'ˆØ�mŠm˜AÑÔˆÝ˜œØœŸš¨¨1¨a°°A°qÑ9Ô9ñ	;ô 	;ð 	;ð 	;ð 	;r3   c                 óŠ  — t           j                             d¦  «        }t          j        d¦  «        }t          j        ddd¦  «        dz  }t          j        ddd¦  «        dz  }t          j        ddd¦  «        d	z  }t          ||||f¦  «        }|                     d
¦  «        }|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }	|                     d¦  «        }
t           |||	|
f¦  «        ||	dz  z  |
dz  z  t          d	¦  «        t          d¦  «        z  z  ¦  «         d S )Nr§  )rh   rh   rh   r>   r  r9   r   rh   r  r9   r%   r  r>   )rh   r   r  )r   r%   r   rº  )
rC   r¨  r  rl   r,  r   rÒ  r«  r   r   )r)   r  rñ   r+   r*   r,   ra  r-  r/  rò   r>  s              r-   Útest_deriv_3d_simplez TestNdPPoly.test_deriv_3d_simple	  s4  € åŒi×#Ò# DÑ)Ô)ˆåŒGÐ&Ñ'Ô'ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆå�A˜˜1˜a�yÑ!Ô!ˆØ×Ò˜iÑ(Ô(ˆØ×Ò˜yÑ)Ô)ˆà�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆØ�XŠX�b‰\Œ\ˆå˜˜˜B  B˜<Ñ(Ô(Ø˜R ™U™
 R¨¡UÑ*­e°A©h¬hµu¸Q±x´xÑ.?Ñ@ñ	Bô 	Bð 	Bð 	Bð 	Br3   c                 ó„  ‡
— t           j                             d¦  «        }|                     dddd¦  «        }t          j        ddd¦  «        dz  }t          j        ddd¦  «        d	z  }|                     dd	dd
¦  «        }|                     |j        d         |j        d         d¦  «                             ¦   «         }t          j
        ||d	¦  «         |                     |j        ¦  «        }|                     dd	dd
¦  «        }|                     dd
dd	¦  «        }|                     |j        d         |j        d         d¦  «                             ¦   «         }t          j
        ||d	¦  «         |                     |j        ¦  «        }|                     d	dd
d¦  «                             ¦   «         }t          |||f¦  «        Š
ddgddgddgddgfD ]d}‰
                     |¦  «        }t          ˆ
fd„|t          dd¬¦  «        gd	z  ¬¦  «        \  }}	t          ||dddt!          |¦  «        ¬¦  «         Œed S )Nr§  r  r9   é   r�  r   rh   rË   r%   r>   rA   r0  )r   r&   )rû  rý  )r4  r8  c                 ó   •—  ‰| |f¦  «        S rÞ   r2   )r+   r*   ra  s     €r-   ú<lambda>z/TestNdPPoly.test_integrate_2d.<locals>.<lambda>>	  s   ø€ ¨1¨1¨a°¨V©9¬9€ r3   gñhãˆµøä>)ÚepsrelÚepsabs)r“   F)rŽ   rš   rd  r©   )rC   r¨  r  r«  r,  rI  rH   r  rq   r   Úfix_continuityr   r  r    r‘   r   r‚  )r)   r  rñ   r+   r*   ÚcxÚrangesre  Úig2Úerr2ra  s             @r-   Útest_integrate_2dzTestNdPPoly.test_integrate_2d"	  sF  ø€ ÝŒi×#Ò# DÑ)Ô)ˆØ�HŠH�Q˜˜2˜rÑ"Ô"ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆð �KŠK˜˜1˜a Ñ#Ô#ˆØ�YŠY�q”w˜q”z 1¤7¨1¤:¨rÑ2Ô2×7Ò7Ñ9Ô9ˆÝÔ˜b ! QÑ'Ô'Ð'Ø�JŠJ�q”wÑÔˆØ�KŠK˜˜1˜a Ñ#Ô#ˆØ�KŠK˜˜1˜a Ñ#Ô#ˆØ�YŠY�q”w˜q”z 1¤7¨1¤:¨rÑ2Ô2×7Ò7Ñ9Ô9ˆÝÔ˜b ! QÑ'Ô'Ð'Ø�JŠJ�q”wÑÔˆØ�KŠK˜˜1˜a Ñ#Ô#×(Ò(Ñ*Ô*ˆõ �A˜˜1�vÑÔˆà Ð'Ø  &Ð)Ø Ð)Ø" JÐ/ð1ð 		2ð 		2ˆFð
 —’˜VÑ$Ô$ˆBÝÐ4Ð4Ð4Ð4°fÝ$(°¸TÐ$BÑ$BÔ$BÐ#CÀAÑ#EðGñ Gô G‰IˆC�å˜B ¨$°TÀEÝ$(¨¡L¤Lð2ñ 2ô 2ð 2ð 2ð		2ð 		2r3   c           	      óä  — t           j                             d¦  «        }|                     dddddd¦  «        }t          j        dd	d¦  «        d	z  }t          j        dd	d¦  «        d
z  }t          j        dd	d¦  «        dz  }t          ||||f¦  «        }|                     d¦  «        }|                     d¦  «        }d\  }	}
|                     |	|
d¬¦  «        }|                     d¦  «        }t           |||f¦  «         ||
||f¦  «         ||	||f¦  «        z
  ¦  «         |                     |	|
d	¬¦  «        }|                     d¦  «        }t           |||f¦  «         |||
|f¦  «         |||	|f¦  «        z
  ¦  «         |                     |	|
d
¬¦  «        }|                     d¦  «        }t           |||f¦  «         ||||
f¦  «         ||||	f¦  «        z
  ¦  «         d S )Nr§  r  r9   r  rN  r�  rË   r   rh   r%   rÌ   r>   rú   )r8  rý  rk   r<  r;  r  )	rC   r¨  r  r«  r,  r   Úintegrate_1drÒ  r   )r)   r  rñ   r+   r*   r,   ra  rB  Úvr!  r$  ÚpxÚpaxÚpyÚpayÚpzÚpazs                    r-   Útest_integrate_1dzTestNdPPoly.test_integrate_1dC	  só  € ÝŒi×#Ò# DÑ)Ô)ˆØ�HŠH�Q˜˜1˜b " bÑ)Ô)ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆÝŒK˜˜1˜dÑ#Ô# QÑ&ˆõ �A˜˜1˜a�yÑ!Ô!ˆà�HŠH�S‰MŒMˆØ�HŠH�S‰MŒMˆØ‰ˆˆ1à�^Š^˜A˜q qˆ^Ñ)Ô)ˆØ×Ò˜yÑ)Ô)ˆÝ˜˜˜A˜q˜6™
œ
 C C¨¨A¨q¨	¡N¤N°S°S¸!¸QÀ¸±^´^Ñ$CÑDÔDÐDà�^Š^˜A˜q qˆ^Ñ)Ô)ˆØ×Ò˜yÑ)Ô)ˆÝ˜˜˜A˜q˜6™
œ
 C C¨¨A¨q¨	¡N¤N°S°S¸!¸QÀ¸±^´^Ñ$CÑDÔDÐDà�^Š^˜A˜q qˆ^Ñ)Ô)ˆØ×Ò˜yÑ)Ô)ˆÝ˜˜˜A˜q˜6™
œ
 C C¨¨A¨q¨	¡N¤N°S°S¸!¸QÀ¸±^´^Ñ$CÑDÔDÐDÐDÐDr3   c                 óT  ‡— t           j                             d¦  «        Š‰                     d¬¦  «        }t          j        ddd¦  «        }t          j        ddd¦  «        dz  }t          j        ddd	¦  «        d
z  }t          ||||f¦  «        }ˆfd„}t          d	||¦  «         d S )NrÈ  )r  r9   r  r  r•   rŠ   r  r   rh   r•   rŠ   r%   r=   r>   c                 ó¨   •— ‰                      d¬¦  «        }‰                      d¬¦  «        }‰                      d¬¦  «        } ||||f¦  «         d S )Nr9  r  )r¼  )rœ  rí  r/  rò   r>  r  s        €r-   r�  z/TestNdPPoly.test_concurrency.<locals>.worker_fnh	  sX   ø€ Ø—’ "�Ñ%Ô%ˆBØ—’ "�Ñ%Ô%ˆBØ—’ "�Ñ%Ô%ˆBØˆC��R˜�ÑÔÐÐÐr3   )rC   r¨  Údefault_rngr¼  r,  r   r   )r)   rñ   r+   r*   r,   ra  r�  r  s          @r-   rž  zTestNdPPoly.test_concurrency]	  s·   ø€ åŒi×#Ò# EÑ*Ô*ˆà�KŠKÐ/ˆKÑ0Ô0ˆÝŒK˜˜1˜cÑ"Ô"ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆÝŒK˜˜1˜cÑ"Ô" AÑ%ˆå�A˜˜1˜a�yÑ!Ô!ˆð	ð 	ð 	ð 	ð 	õ 	   I¨qÑ1Ô1Ð1Ð1Ð1r3   N)r/   r0   r1   r,  r7  r?  rD  rG  rJ  rL  rX  rb  rX  rY  Úthread_unsaferž  r2   r3   r-   r(  r(  ‡  sÃ   € € € € € ð ð  ð  ð6ð 6ð 6ð:6ð 6ð 6ð( ð  ð  ð(%ð %ð %ð(;ð ;ð ;ð>Bð Bð Bð(2ð 2ð 2ðBEð Eð Eð4 „[Ôð2ð 2ñ Ôð2ð 2ð 2r3   r(  c                 óÔ  ‡ ‡‡— t          j        t          |¦  «        ‰ j        d         f¦  «        }t	          |¦  «        D ]¦\  }}|dk     s|dk    rt           j        ||dd…f<   Œ%t          j        ||¦  «        dz
  Š||‰         z
  Š|‰         |cxk    r|‰dz            k     sn J ‚t          ˆ ˆˆfd„t          ‰ j        d         ¦  «        D ¦   «         ¦  «        }|||dd…f<   Œ§|S )z&Evaluate piecewise polynomial manuallyr%   r   rh   Nc              3   óZ   •K  — | ]%}‰|‰f         ‰‰j         d          |z
  dz
  z  z  V — Œ&dS )r   rh   N)r  )rÿ   r
  rñ   rÆ  r…  s     €€€r-   r   z _ppoly_eval_1.<locals>.<genexpr>{	  sW   øè è € ð ,ð ,Øð �!�A�#”˜˜QœW QœZ¨™\¨!™^Ñ,Ñ,ð ,ð ,ð ,ð ,ð ,ð ,r3   )	rC   Úzerosr_  r  r  r    ÚsearchsortedÚsumr  )	rñ   r+   ÚxpsrI  r„  rÃ  rZ  rÆ  r…  s	   `      @@r-   r5  r5  q	  s  øøø€ å
Œ(•C˜‘H”H˜aœg aœjÐ)Ñ
*Ô
*€CÝ˜3‘”ð 	ð 	‰ˆˆ2Ø�Š6ˆ6�R˜!’V�VÝ”vˆC��!�!�!�‰HØÝŒO˜A˜rÑ"Ô" QÑ&ˆØ��1”‰IˆØ�Œt�rÐ"Ð"Ò"Ð"˜A˜a ™cœFÒ"Ð"Ð"Ð"Ð"Ð"Ýð ,ð ,ð ,ð ,ð ,ð ,Ý˜qœw qœzÑ*Ô*ð,ñ ,ô ,ñ ,ô ,ˆàˆˆAˆaˆaˆaˆC‰ˆØ€Jr3   c                 ót  ‡‡‡— |d         }|d         }| j         d         }t          j         |¦  «        }t          j        |¦  «        }t          j        |¦  «        }||k    ||k    z  }	|||	 <   |                     |	¦  «        }
t          j        ||
¦  «        dz
  Š‰                     dt          |¦  «        ¦  «        Š| Š|
|                     ‰¦  «        z
  }t          j	        ||¬¦  «        Št          j
        ˆˆˆfd„t          t          |
¦  «        ¦  «        D ¦   «         ¦  «        }|||	<   ||_         |S )z4Evaluate piecewise polynomial manually (another way)r   rA   rh   )ÚNc           	      ón   •— g | ]1}t          j        ‰|d d …f         ‰d d …‰|         f         ¦  «        ‘Œ2S rÞ   )rC   r  )rÿ   r
  ÚVÚindxsr®  s     €€€r-   r½  z!_ppoly_eval_2.<locals>.<listcomp>’	  sA   ø€ ÐPÐPÐP¸A•r”v˜a  1 1 1 œg r¨!¨!¨!¨U°1¬X¨+¤Ñ7Ô7ÐPÐPÐPr3   )r  rC   r‘  Ú
empty_likeÚcompressrj  Úclipr_  ÚtakeÚvanderrL   r  )r`  Úbreaksr´   r2  r!  r$  ÚKÚ	saveshaperÕ  ÚmaskrÏ  r  Úvaluesrp  rq  r®  s                @@@r-   r6  r6  �	  s"  øøø€ àˆqŒ	€AØˆrŒ
€AØŒ�QŒ€Aå”˜‘”€IÝŒ8�D‰>Œ>€DÝ
Œ-˜Ñ
Ô
€CØ�AŠI˜$ !š)Ñ$€DØ€Cˆˆ�JØ	�Š�tÑ	Ô	€BÝŒO˜F BÑ'Ô'¨Ñ)€EØ�JŠJ�q�#˜f™+œ+Ñ&Ô&€EØ	€BØ�—’˜EÑ"Ô"Ñ"€DÝ
Œ	�$˜!ÐÑÔ€AÝŒXÐPÐPÐPÐPÐPÐPÅÅsÈ2ÁwÄwÁÄÐPÑPÔPÑQÔQ€FØ€Cˆ�IØ€C„IØ€Jr3   c                 óz   — |dk     rt          d¦  «        ‚||k    rdS t          ||z
  dz   |¦  «        | ||z
  z  z  S )z
    d^n (x**y) / dx^n
    r   zinvalid derivative orderrh   )rm   r   )r+   r*   r"  s      r-   Ú_dpowr}  ˜	  sO   € ð 	ˆ1‚u€uÝÐ3Ñ4Ô4Ð4Ø	
ˆQŠˆØˆqå�A˜‘E˜A‘I˜qÑ!Ô! A¨¨A©¡JÑ.Ð.r3   c                 óf  — |€d}t          j        t          |¦  «        f| j        ¬¦  «        }| j        dd…         \  }}t          t          ||¦  «        ¦  «        D �]R\  }\  }	}
|d         d         |	cxk    r|d         d         k    r*n n'|d         d         |
cxk    r|d         d         k    sn t           j        ||<   Œht          j        |d         |	¦  «        dz
  }t          j        |d         |
¦  «        dz
  }|	|d         |         z
  }|
|d         |         z
  }d}t          | j        d         ¦  «        D ]j}t          | j        d         ¦  «        D ]M}|| ||z
  dz
  ||z
  dz
  ||f         t          |||d         ¦  «        z  t          |||d         ¦  «        z  z  }ŒNŒk|||<   �ŒT|S )z@
    Straightforward evaluation of 2-D piecewise polynomial
    Nr/  r–   r%   r   rA   rh   ©rC   r}  r_  r—   r  r  Úzipr    rj  r  r}  )rñ   rb  r´   ÚynewrÍ  rI  ÚnxÚnyÚjoutr+   r*   Új1Új2Ús1Ús2r‡  Úk1Úk2s                     r-   r6  r6  ¤	  sÝ  € ð 
€zØˆå
Œ(•C˜‘I”I�< q¤wÐ
/Ñ
/Ô
/€CàŒW�R�a�RŒ[�F€Bˆå!¥# d¨D¡/¤/Ñ2Ô2ð ñ ‰ˆ‰fˆq�!Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+ÝœˆC�‰IØåŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆà��A”�r”‰]ˆØ��A”�r”‰]ˆàˆå˜œ œ
Ñ#Ô#ð 	0ð 	0ˆBÝ˜AœG AœJÑ'Ô'ð 0ð 0�Ø˜˜"˜R™% ™' " R¡%¨¡'¨"¨RÐ/Ô0Ý  B¨¨1¬Ñ.Ô.ñ/å  B¨¨1¬Ñ.Ô.ñ/ñ 0��ð0ð
 ˆˆD‰	‰	à€Jr3   c                 ó”  — |€d}t          j        t          |¦  «        f| j        ¬¦  «        }| j        dd…         \  }}}	t          t          |||¦  «        ¦  «        D �]ç\  }
\  }}}|d         d         |cxk    r|d         d         k    rRn nO|d         d         |cxk    r|d         d         k    r*n n'|d         d         |cxk    r|d         d         k    sn t           j        ||
<   Œ‘t          j        |d         |¦  «        dz
  }t          j        |d         |¦  «        dz
  }t          j        |d         |¦  «        dz
  }||d         |         z
  }||d         |         z
  }||d         |         z
  }d}t          | j        d         ¦  «        D ]§}t          | j        d         ¦  «        D ]Š}t          | j        d         ¦  «        D ]m}|| ||z
  dz
  ||z
  dz
  |	|z
  dz
  |||f         t          |||d         ¦  «        z  t          |||d         ¦  «        z  t          |||d         ¦  «        z  z  }ŒnŒ‹Œ¨|||
<   �Œé|S )	z@
    Straightforward evaluation of 3-D piecewise polynomial
    Nr:  r–   r>   r   rA   rh   r%   r  )rñ   rb  r´   r�  ÚznewrÍ  rI  r‚  rƒ  Únzr„  r+   r*   r,   r…  r†  Új3r‡  rˆ  Ús3r‡  r‰  rŠ  Úk3s                           r-   r=  r=  È	  sŠ  € ð 
€zØˆå
Œ(•C˜‘I”I�< q¤wÐ
/Ñ
/Ô
/€Cà”˜˜!˜”�J€BˆˆBå$¥S¨¨t°TÑ%:Ô%:Ñ;Ô;ð ñ ‰ˆ‰iˆq�!�QØ�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+ÝœˆC�‰IØåŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆà��A”�r”‰]ˆØ��A”�r”‰]ˆØ��A”�r”‰]ˆàˆÝ˜œ œ
Ñ#Ô#ð 	4ð 	4ˆBÝ˜AœG AœJÑ'Ô'ð 4ð 4�Ý ¤¨¤
Ñ+Ô+ð 4ð 4�BØ˜A˜b ™e A™g b¨¡e¨A¡g¨b°©e°A©g°b¸¸BÐ>Ô?Ý# B¨¨B¨q¬EÑ2Ô2ñ3å# B¨¨B¨q¬EÑ2Ô2ñ3õ $ B¨¨B¨q¬EÑ2Ô2ñ3ñ 4�C�Cð4ð4ð ˆˆD‰	‰	à€Jr3   c                 óÂ  — |€d}t          j        t          |¦  «        f| j        ¬¦  «        }| j        dd…         \  }}	}
}t          t          ||||¦  «        ¦  «        D �]|\  }\  }}}}|d         d         |cxk    r|d         d         k    rzn nw|d         d         |cxk    r|d         d         k    rRn nO|d         d         |cxk    r|d         d         k    r*n n'|d	         d         |cxk    r|d	         d         k    sn t           j        ||<   Œºt          j        |d         |¦  «        dz
  }t          j        |d         |¦  «        dz
  }t          j        |d         |¦  «        dz
  }t          j        |d	         |¦  «        dz
  }||d         |         z
  }||d         |         z
  }||d         |         z
  }||d	         |         z
  }d}t          | j        d         ¦  «        D ]ä}t          | j        d         ¦  «        D ]Ç}t          | j        d         ¦  «        D ]ª}t          | j        d	         ¦  «        D ]�}|| ||z
  dz
  |	|z
  dz
  |
|z
  dz
  ||z
  dz
  ||||f         t          |||d         ¦  «        z  t          |||d         ¦  «        z  t          |||d         ¦  «        z  t          |||d	         ¦  «        z  z  }ŒŽŒ«ŒÈŒå|||<   �Œ~|S )
z@
    Straightforward evaluation of 4-D piecewise polynomial
    N)r   r   r   r   r–   r  r   rA   rh   r%   r>   r  )rñ   rb  r´   r�  rŒ  ÚunewrÍ  rI  ÚmxÚmyÚmzÚmur„  r+   r*   r,   rB  r…  r†  rŽ  Új4r‡  rˆ  r�  Ús4r‡  r‰  rŠ  r�  Úk4s                                 r-   rA  rA  ð	  s6  € ð 
€zØˆå
Œ(•C˜‘I”I�< q¤wÐ
/Ñ
/Ô
/€Cà”W˜R˜a˜R”[�N€BˆˆB�å'­¨D°$¸¸dÑ(CÔ(CÑDÔDð ñ Ñˆ‰lˆq�!�Q˜Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+Ð+Ø�A”�q”˜QÐ+Ð+Ò+Ð+ " Q¤%¨¤)Ò+Ð+Ð+Ð+ÝœˆC�‰IØåŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆÝŒ_˜R œU AÑ&Ô&¨Ñ*ˆà��A”�r”‰]ˆØ��A”�r”‰]ˆØ��A”�r”‰]ˆØ��A”�r”‰]ˆàˆÝ˜œ œ
Ñ#Ô#ð 	8ð 	8ˆBÝ˜AœG AœJÑ'Ô'ð 8ð 8�Ý ¤¨¤
Ñ+Ô+ð 8ð 8�BÝ# A¤G¨A¤JÑ/Ô/ð 8ð 8˜Ø  " R¡%¨¡'¨"¨R©%°©'°"°R±%¸±'¸"¸R¹%À¹'À"ÀRÈÈ2Ð"MÔ NÝ"'¨¨B°°1´Ñ"6Ô"6ñ!7å"'¨¨B°°1´Ñ"6Ô"6ñ!7õ #(¨¨B°°1´Ñ"6Ô"6ñ!7õ #(¨¨B°°1´Ñ"6Ô"6ñ	!7ñ 8˜˜ð8ð8ð8ð ˆˆD‰	‰	à€Jr3   rÞ   )?Úscipy._lib._array_apir   r   r   r   rX  r   r'   Únumpyr   r	   r
   r   rC   Úscipy.interpolater   r   r   r   r   r   r   r   r   r   r   r   r   r   Úscipy.specialr   r   r   Úscipy._lib._gcutilsr   r   Úscipy._lib._testutilsr   Úscipy.integrater    r!   r#   r5   r]  rg  rY  r[  r4  r¡  rÙ  rø  rž  r¹  rá  rí  r(  r5  r    r6  r}  r6  r=  rA  r2   r3   r-   ú<module>r¡     s™  ððð ð ð ð ð ð ð ð ð ð ð ð +Ð *Ð *Ð *Ð *Ð *Ø €€€à (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø Ð Ð Ð ð-ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð &Ð %Ð %Ð %Ð %Ð %Ð %Ð %à $Ð $Ð $Ð $Ð $Ð $à ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9à !Ð !Ð !Ð !Ð !Ð !à Ð Ð Ð Ð Ð ðð ð ð ð ñ ô ð ðUð Uð Uð Uð Uñ Uô Uð Uðp6ð 6ð 6ð 6ð 6ñ 6ô 6ð 6ðr;ð r;ð r;ð r;ð r;ñ r;ô r;ð r;ðj „×Ò˜Ð$7Ð9JÐ#KÑLÔLð:ð :ñ MÔLð:ð,XLð XLð XLð XLð XLñ XLô XLð XLðv,&ð ,&ð ,&ð ,&ð ,&ñ ,&ô ,&ð ,&ð^kEð kEð kEð kEð kEñ kEô kEð kEð\E=ð E=ð E=ð E=ð E=ñ E=ô E=ð E=ðP\0ð \0ð \0ð \0ð \0ñ \0ô \0ð \0ð~.'ð .'ð .'ð .'ð .'ñ .'ô .'ð .'ðbdð dð dð dð dñ dô dð dðNg2ð g2ð g2ð g2ð g2ñ g2ô g2ð g2ðTð ð ð  .0¬Vð ð ð ð ð.	/ð 	/ð 	/ð!ð !ð !ð !ðH%ð %ð %ð %ðP*ð *ð *ð *ð *ð *r3   