§
    fŠtjw� ã                   ó¢  — d dl mZmZmZmZmZ d dlmZ d dlZd dl	m
Z
mZmZmZ 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) ej*        j+        Z+ej*        j,        Z, G d„ d¦  «        Z- G d„ d¦  «        Z. G d„ d¦  «        Z/ ee¦  «         G d„ d¦  «        ¦   «         Z0ej*         1                    deeg¦  «        d„ ¦   «         Z2 eee¦  «         G d„ d¦  «        ¦   «         Z3 G d„ d¦  «        Z4 ee¦  «         G d„ d¦  «        ¦   «         Z5 ee¦  «         G d„ d¦  «        ¦   «         Z6 ee¦  «         G d„ d¦  «        ¦   «         Z7 eee¦  «         G d „ d!¦  «        ¦   «         Z8 G d"„ d#¦  «        Z9 G d$„ d%¦  «        Z:d&„ Z;ej<        fd'„Z=d(„ Z>d,d)„Z?d,d*„Z@d,d+„ZAdS )-é    )Úxp_assert_equalÚxp_assert_closeÚassert_almost_equalÚassert_array_almost_equalÚmake_xp_test_case)Ú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       úf/var/www/html/CA-Chatbot/venv/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#   € € € € € ðð ð ð ð r4   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&   r:   g      >@)r&   é   r:   )r?   r&   r:   é   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Ñ%à ˆŒˆˆr4   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©rf   rX   r_   )rB   é   rB   )rB   )rB   rB   r   ri   r&   r?   ©rf   ÚaxisrX   r>   ©rk   )rB   rB   rB   r3   r<   )r   rG   rH   rD   rM   rP   rK   Úonesr(   Ú
ValueErrorrJ   rL   rQ   rN   rO   ©r*   rf   s     r.   Útest_validationzTestInterp1D.test_validationQ   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ð 	9r4   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ç      @©rX   )ç      ð?r;   r   ri   rl   )r   rG   rH   rr   rs   rD   ÚisnanrX   rk   rP   rQ   r   r,   r+   rY   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ÐCr4   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 )NrB   ç333333ó?©g333333@gffffff@ç      @F)Úassume_sortedT)	r   rG   rH   r   rD   rM   r(   rn   rP   )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r4   c                 ó:   — dD ]}|                       |¦  «         Œd S )N)r_   r`   )Ú_check_linearro   s     r.   Útest_linearzTestInterp1D.test_linearÂ   s2   € Ø)ð 	%ð 	%ˆDØ×Ò˜tÑ$Ô$Ð$Ð$ð	%ð 	%r4   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 )Nre   rz   r{   rg   rh   ©ç      ð¿r   é	   é   ç›+¡†›„=©ÚrtolT©rf   rX   rs   )r   rG   rH   r   rD   rM   r   ÚasarrayÚdictr(   rn   )r*   rf   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ÐGr4   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_   re   çVçž¯Ò<©Úatol©r   ri   r&   r   ri   )
rD   Úfloat16Úfloat32Úfloat64Ú
longdoublerE   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Ð*Ñ*Ô*Ð*Ð*Ð*r4   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^   ra   rb   r   r>   r—   rt   F©rf   rs   çH¯¼šò×z>z, ú )r›   Úcheck_dtypeÚerr_msg)rD   r�   rž   rŸ   Ú	complex64Ú
complex128rE   ÚexpÚastyper   r   )r*   Údt_rÚdt_rcÚspline_kindsÚdtxr,   Údtyr+   ÚdtnÚxnewrf   Ú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r4   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 )Nrb   re   rz   ç      ø?r{   ©r   rG   rH   r   rD   rM   ©r*   r~   s     r.   Ú
test_cubiczTestInterp1D.test_cubic   sµ   € å˜DœH d¤h°WÐ=Ñ=Ô=ˆÝ! ( (¨4¬8Ñ"4Ô"4°d´hÑ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸#±´Ñ?Ô?Ð?Ý! ( (¨3¡-¤-µ´¸#±´Ñ?Ô?Ð?Ý! ( (¨?¨?¨?Ñ";Ô";Ý"$¤(¨?¨?¨?Ñ";Ô";ñ	>ô 	>ð 	>ð 	>ð 	>r4   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\   re   rz   rv   r¹   r{   ©r;   r|   r|   rg   rh   r‰   ©r<   r   r‹   r‹   r�   rŽ   Tr�   ©
r   rG   rH   r   rD   rM   r   r’   r(   rn   ©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ÐGr4   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]   re   rz   rv   r¹   r;   r{   r¾   rg   rh   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ÐGr4   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 )%Nrc   re   rz   rv   r¹   r{   ©r;   r8   r|   rg   rh   r‰   r   r‹   r�   rŽ   ©rB   éþÿÿÿr:   r–   é   é   r:   r–   é   é   é   rj   ©rÈ   r:   rÉ   r>   rŒ   Tr�   rœ   ©r   ri   rB   ©rf   rX   r}   ©rÈ   rB   r   ri   r&   r?   r:   ri   rB   ©r&   r   ri   ©rB   r   ri   FrA   ©r   rG   rH   r   rD   rM   r   r¡   rP   rQ   r’   r(   rn   rV   rW   ©r*   r~   r“   Úinterpolator1DÚinterpolator2DÚinterpolator2DAxis0r”   s          r.   Útest_previouszTestInterp1D.test_previous3  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˜ð%ñ	&ô 	&ð 	&ð 	&ð 	&r4   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 )$Nrd   re   rz   r;   r¹   r{   )rt   r|   r|   rg   rh   r‰   r   r‹   r�   rŽ   rÇ   r:   r–   r>   rË   rÌ   rj   rÎ   ri   rŒ   Tr�   rœ   rÏ   rÐ   rÑ   rB   rÒ   rÓ   Fr@   rÔ   rÕ   s          r.   Ú	test_nextzTestInterp1D.test_nextx  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˜Ýœ&¥"¤&Ð)ð+ñ	,ô 	,ð 	,ð 	,ð 	,r4   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^   re   rz   rv   r¹   r{   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ñ	:ô 	:ð 	:ð 	:ð 	:r4   c                 ó¢   — t          t          ||¦  «         	  ||¦  «         d S # t          $ r}|› t          |¦  «        v sJ ‚Y d }~d S d }~ww xY w©N)r(   rn   Ú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)rX   rs   rf   gffffff&@g333333Àg333333)@gÍÌÌÌÌL3@)Úcheck_shape)rŠ   r<   r8   ç      "@ç      &@)TFFFF)FFFFTT)rs   rf   rŠ   ré   )r<   rŠ   r<   )r<   rv   ç      5@rê   )r<   r8   rè   )	r   rG   rH   rX   r   rD   rM   Ú_check_boundsrå   )r*   rf   Ú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Ñ,Ô,Ð,Ð,Ð,r4   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�   ri   r   rB   )	rD   rE   r®   Úintr   r¡   rw   r   Úr_)r*   rf   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Ô&;Ñ<Ô<Ð<Ð<Ð<r4   c                 ód   — dD ],}|                       |¦  «         |                      |¦  «         Œ-d S )N)r_   rb   r\   rc   rd   r`   r^   ra   )rî   rô   ro   s     r.   Útest_boundszTestInterp1D.test_boundsï  sH   € ð5ð 	2ð 	2ˆDà×Ò˜tÑ$Ô$Ð$Ø×+Ò+¨DÑ1Ô1Ð1Ð1ð	2ð 	2r4   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@éöÿÿÿrC   rø   rù   rB   )rf   rk   rX   rs   r?   ri   r   )rù   éÈ   é,  r&   rû   rü   )rø   é8ÿÿÿéÔþÿÿrý   rþ   c              3   ó>   K  — | ]}t          j        |¦  «        V — Œd S rß   )rD   rM   )Ú.0r¶   s     r.   ú	<genexpr>z1TestInterp1D._check_fill_value.<locals>.<genexpr>V  s*   è è € Ð"CÐ"C°1¥2¤8¨A¡;¤;Ð"CÐ"CÐ"CÐ"CÐ"CÐ"Cr4   iè  iÐ  iüÿÿi0øÿÿ)r   rG   rH   r   rD   r‘   rT   rU   rR   rS   rF   ÚndimÚshaper(   rn   rM   ÚrangeÚtuple)r*   rf   Úinterpr+   ÚresultrX   Ú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r4   c                 ó:   — dD ]}|                       |¦  «         Œd S ©N)r_   r\   rb   r`   ra   r^   rc   rd   )r	  ro   s     r.   Útest_fill_valuezTestInterp1D.test_fill_value–  s4   € ð1ð 	)ð 	)ˆDà×"Ò" 4Ñ(Ô(Ð(Ð(ð	)ð 	)r4   c                 ó€   — t          | j        | j        d¬¦  «        }|j        dk    sJ ‚d|_        |j        dk    sJ ‚d S )Ng     À^@ru   g     t@)r   rG   rH   rX   )r*   r  s     r.   Útest_fill_value_writeablez&TestInterp1D.test_fill_value_writeableœ  sP   € å˜$œ( D¤H¸Ð?Ñ?Ô?ˆØÔ  EÒ)Ð)Ð)Ð)Ø!ˆÔØÔ  EÒ)Ð)Ð)Ð)Ð)Ð)r4   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 )Nre   rt   r8   r;   ç      @rz   r3   rv   ré   ç      (@r   ©rk   rf   r|   g      *@g      .@g      1@r9   ç      @g      ,@)r   rG   rH   r   rD   rM   Ú
isinstanceÚndarrayr  rP   rQ   )r*   rf   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r4   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)é   r:   é   é   r  ©rª   r  )r&   r?   ri   r  ri   )
rD   rE   ÚprodrI   Ú	enumerater   r   Úlistr  r  )
r*   rf   Úar+   ÚnÚsr,   r-   rK   Ú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ð 	1r4   c                 ód   — dD ],}|                       |¦  «         |                      |¦  «         Œ-d S )N)r_   rb   r`   ra   r\   r^   rc   rd   )r  r&  ro   s     r.   Útest_ndzTestInterp1D.test_ndÑ  sH   € ð1ð 	'ð 	'ˆDà×!Ò! $Ñ'Ô'Ð'Ø× Ò  Ñ&Ô&Ð&Ð&ð	'ð 	'r4   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)
ri   ç      @r?   gÍÌÌÌÌÌ@r  gš™™™™™@gš™™™™™@g       @g      #@r>   ù      ð?       @re   rB   ri   r>   é   )rD   rM   r®   r   r   ÚlinspaceÚrealÚimag)	r*   r˜   rf   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Ð5r4   c                 ó�   — dD ]B}|                       t          j        |¦  «         |                       t          j        |¦  «         ŒCd S r  )r3  rD   r«   r¬   ro   s     r.   Útest_complexzTestInterp1D.test_complexç  sP   € ð1ð 	5ð 	5ˆDà×Ò¥¤¨dÑ3Ô3Ð3Ø×Ò¥¤¨tÑ4Ô4Ð4Ð4ð	5ð 	5r4   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   ri   çš™™™™™¹?çš™™™™™É?)rD   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\   rc   rd   )r   é2   é   r—   re   )rD   rM   Úint8r   r   )r*   rf   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ð 	0r4   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`   re   gš™™™™™@r  )	rD   rE   r®   Úfloatrr   r¡   r   ÚisfiniteÚall)r*   r,   r+   rf   Ú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Ñ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r4   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?   )ra   rb   re   r  ri   r:   )rD   rE   r®   rA  rr   r¡   r   r‘   rw   rC  r  )
r*   r,   r+   Úynrf   rD  Ú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Ò.Ð.Ð.Ð.Ð.ð	/ð	/ð 	/r4   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>   rb   re   )rD   rm   r¡   rE   r(   rn   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>   rt   r‹   r8  ©TFF)r_   r\   r^   r`   ra   rb   re   )rD   rE   r­   ÚflagsÚ	writeabler   rB  rC  )r*   r,   r+   rµ   Úxnew_writeablerf   r¶   rE  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Ñ(Ô(×,Ò,Ñ.Ô.Ð.Ð.Ð.Ð.ð	/ð	/ð 	/r4   rf   )r_   r\   r]   rc   rd   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=   )rf   rs   rX   )ri   r¹   r&   )r;   r  r>   Tr¦   zx_new is above©Úmatchr;   )r   r   rD   r‘   r(   rn   )r*   rf   r¶   s      r.   Útest_single_valuezTestInterp1D.test_single_value0  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_   )+r0   r1   r2   rZ   rp   rx   r„   r‡   r†   r¤   r·   r¼   rÂ   rÄ   rÙ   rÛ   rÝ   rå   rî   rô   rö   r	  r  r  r  r&  r(  rD   r¬   r3  r5  ÚpytestÚmarkÚskipifr   r:  r?  rF  rL  rN  rT  ÚparametrizerX  r3   r4   r.   r6   r6   &   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ñô ðð ñô ðð ð r4   r6   c                   ó   — e Zd Zd„ ZdS )ÚTestLagrangec                 óÞ   — t          g d¢¦  «        }t          j        t          |j        ¦  «        ¦  «        } ||¦  «        }t          ||¦  «        }t          |j        |j        ¦  «         d S )N)r:   r&   ri   r  r?   )r   rD   rE   Ú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Ð5r4   N)r0   r1   r2   rf  r3   r4   r.   r^  r^  >  s#   € € € € € ð6ð 6ð 6ð 6ð 6r4   r^  c                   óV   — 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S )ÚTestAkima1DInterpolatorc                 óF  — |                      dd|j        ¬¦  «        }|                     g d¢|j        ¬¦  «        }t          ||¦  «        }|                     g d¢|j        ¬¦  «        }|                     g d¢|j        ¬¦  «        }t	           ||¦  «        |¦  «         d S )Nr<   ré   r—   ©r<   r;   rv   rt   r;   r|   ç      @rk  gš™™™™™@çffffff@rt   ©r<   r'   rv   r¹   r*  ç      @g      @rl  g      @gÍÌÌÌÌÌ@g333333!@gÍÌÌÌÌÌ#@r9   ©r<   g      ö?r;   r¹   g     @ÿ?g     à@gŒ.ºè¢‹@gß^äë@gn ¹ä@gGNBÐ@grcß–÷·@g¦	£ÎI@rt   ©rE   rŸ   r‘   r   r   ©r*   Úxpr,   r+   Úakr0  ró   s          r.   Ú	test_evalz!TestAkima1DInterpolator.test_evalJ  sË   € Ø�IŠI�b˜# R¤ZˆIÑ0Ô0ˆØ�JŠJØ<Ð<Ð<ÀBÄJð ñ 
ô 
ˆõ !  AÑ&Ô&ˆØ�ZŠZð ð ð Ø"$¤*ð ñ .ô .ˆà�ZŠZð ð ð ð ”zð	 ñ #ô #ˆõ
 	˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r4   c                 óJ  — |                      dd|j        ¬¦  «        }|                     g d¢|j        ¬¦  «        }t          ||d¬¦  «        }|                     g d¢|j        ¬¦  «        }|                     g d¢|j        ¬¦  «        }t	           ||¦  «        |¦  «         d S )	Nr<   ré   r—   rj  Úmakima©Úmethodrm  )r<   gFð?ðƒõ?r;   gš™™™™÷?gš™™™™ÿ?g…¶g{¶'@gú>J(j@g?±Ôç§ð@gqÁü@gýÞÀÇð³@gû•Š9~@g­Áøo¢
@rt   rp  rq  s          r.   Útest_eval_modz%TestAkima1DInterpolator.test_eval_modY  sÔ   € ð �IŠI�b˜# R¤ZˆIÑ0Ô0ˆØ�JŠJØ<Ð<Ð<ÀBÄJð ñ 
ô 
ˆõ !  A¨hÐ7Ñ7Ô7ˆØ�ZŠZð &ð &ð &Ø-/¬Zð ñ 9ô 9ˆà�ZŠZð 5ð 5ð 5ð =?¼Jð ñ Hô Hˆõ 	˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r4   c                 ó¶  — |                      dd|j        ¬¦  «        }|                     g d¢|j        ¬¦  «        }|                     |d|z  fd¬¦  «        }t	          ||¦  «        }|                     g d¢|j        ¬¦  «        }|                     g d	¢|j        ¬¦  «        }|                     |d|z  fd¬¦  «        }t           ||¦  «        |¦  «         d S )
Nr<   ré   r—   rj  r;   ri   rl   rm  ro  )rE   rŸ   r‘   Ústackr   r   rq  s          r.   Útest_eval_2dz$TestAkima1DInterpolator.test_eval_2dl  s	  € Ø�IŠI�b˜# R¤ZˆIÑ0Ô0ˆØ�JŠJØ<Ð<Ð<ÀBÄJð ñ 
ô 
ˆð �HŠH�a˜˜a™�[ qˆHÑ)Ô)ˆÝ   AÑ&Ô&ˆØ�ZŠZð &ð &ð &Ø-/¬Zð ñ 9ô 9ˆà�ZŠZð 8ð 8ð 8ð @B¼zð ñ Kô Kˆð �XŠX�r˜2 ™7�m¨!ˆXÑ,Ô,ˆÝ˜˜˜2™œ Ñ#Ô#Ð#Ð#Ð#r4   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é   rj  )rŒ   r&   r&   r   r;   ri   rt   r  rm  )é   r&   r&   ro  )rD   rE   rM   Úemptyr   r   )r*   r,   Úy_r+   rs  r0  ró   Úyi_s           r.   Útest_eval_3dz$TestAkima1DInterpolator.test_eval_3d  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™œ Ñ#Ô#Ð#Ð#Ð#r4   c                 óü   — |                      ddg|j        ¬¦  «        }|                      ddg¦  «        }t          ||dd ¬¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         d S )	Nr<   rv   r—   r'   r   )rk   rg   gÍÌÌÌÌÌÜ?g333333ç?)r‘   rŸ   r   r   )r*   rr  r,   r+   Úakimas        r.   Ú$test_linear_interpolant_edge_case_1dz<TestAkima1DInterpolator.test_linear_interpolant_edge_case_1d˜  sx   € Ø�JŠJ˜˜S�z¨¬ˆJÑ4Ô4ˆØ�JŠJ˜˜S�zÑ"Ô"ˆÝ# A q¨q¸dÐCÑCÔCˆÝ˜˜˜d™œ R§Z¢Z°¸R¼Z ZÑ%HÔ%HÑIÔIÐIÐIÐIr4   c                 óª  — |                      ddg¦  «        }|                     |d|z  d|z  d|z  fd¬¦  «        }t          ||¦  «        }|                      ddg¦  «        }|                      g d	¢g d
¢g|j        ¬¦  «        }t	           ||¦  «        |¦  «         t          ||j        d¬¦  «        }t	           ||¦  «        |j        ¦  «         d S )Nr<   rv   r;   rt   r  ri   rl   r'   )r'   rv   r¹   r;   )rv   r;   rt   r  r—   )r‘   r{  r   rŸ   r   ÚTrq  s          r.   Ú$test_linear_interpolant_edge_case_2dz<TestAkima1DInterpolator.test_linear_interpolant_edge_case_2dž  sé   € Ø�JŠJ˜˜B�xÑ Ô ˆØ�HŠH�a˜˜a™  a¡¨¨a©Ð0°qˆHÑ9Ô9ˆå   AÑ&Ô&ˆØ�ZŠZ˜˜b˜	Ñ"Ô"ˆØ�ZŠZÐ+Ð+Ð+Ø)Ð)Ð)ð+Ø24´*ð ñ 
ô 
ˆõ 	˜˜˜2™œ Ñ#Ô#Ð#å   A¤C¨aÐ0Ñ0Ô0ˆÝ˜˜˜2™œ ¤Ñ%Ô%Ð%Ð%Ð%r4   c                 óF  — t          j        dd¦  «        }t          j        ddg¦  «        }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        d	dg¦  «        }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	          ||                     ddd
¦  «        d¬¦  «        }t           ||¦  «        |                     ddd
¦  «        ¦  «         t	          ||                     d
dd¦  «        d
¬¦  «        }t           ||¦  «        |                     d
dd¦  «        ¦  «         d S )Nr<   r;   rv   )r&   r&   r&   r   ri   rt   r  r'   r&   rl   )rD   rE   rM   r  r   r   Ú	transpose)r*   r,   r€  r+   rs  r�  ró   r0  s           r.   Ú$test_linear_interpolant_edge_case_3dz<TestAkima1DInterpolator.test_linear_interpolant_edge_case_3d¬  sÑ  € ÝŒI�b˜"ÑÔˆÝŒX�r˜2�hÑÔˆÝŒH�YÑÔˆØˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ø˜"‘Wˆˆ!ˆ!ˆ!ˆQ�ˆ'‰
Ý   AÑ&Ô&ˆÝŒh˜˜R�yÑ!Ô!ˆÝŒX�iÑ Ô ˆØˆˆ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™œ Ñ#Ô#Ð#å   A§K¢K°°1°aÑ$8Ô$8¸qÐAÑAÔAˆÝ˜˜˜2™œ §¢¨Q°°1Ñ 5Ô 5Ñ6Ô6Ð6å   A§K¢K°°1°aÑ$8Ô$8¸qÐAÑAÔAˆÝ˜˜˜2™œ §¢¨Q°°1Ñ 5Ô 5Ñ6Ô6Ð6Ð6Ð6r4   c                 óL  — |                      g d¢|j        ¬¦  «        }|                     ||dz  f¦  «        j        }t	          ||¦  «        }|                      ddg|j        ¬¦  «        } ||¦  «        }t          ||                     ||dz  f¦  «        j        ¦  «         d S )Nrœ   r—   r&   r'   r¹   )r‘   rŸ   r{  r‡  r   r   )r*   rr  r,   r+   rs  Úx_evalÚy_evals          r.   Ú%test_degenerate_case_multidimensionalz=TestAkima1DInterpolator.test_degenerate_case_multidimensionalÄ  sž   € à�JŠJ�y�y�y¨¬
ˆJÑ3Ô3ˆØ�HŠH�a˜˜A™�YÑÔÔ!ˆÝ   AÑ&Ô&ˆØ—’˜S #˜J¨b¬j�Ñ9Ô9ˆØ��F‘”ˆÝ˜ §¢¨&°&¸!±)Ð)<Ñ =Ô =Ô ?Ñ@Ô@Ð@Ð@Ð@r4   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é   rj  z9Extending a 1-D Akima interpolator is not yet implementedrV  )rD   rE   rM   r   rY  r   r)   Úextend)r*   r,   r+   rs  rW  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é   rj  z `method`=invalid is unsupported.rV  Úinvalidrw  )rD   rE   rM   rY  r   r)   r   )r*   r,   r+   rW  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éûÿÿÿr:   rŒ   r&   rú   r>   é   T©rg   Fr™   rš   r   r  éüÿÿÿrB   r?   )rD   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Ð:Ñ:Ô:Ð:Ð:Ð:r4   c                 óÜ  — t          j        dd¦  «        }dt          j        t          j        t          ¦  «        j        ¦  «        z  t          j        |dz
  d¦  «        z  }t          ||d¬¦  «        }t          ||d¬¦  «        } ||¦  «        } ||¦  «        }t          j        |¦  «         	                    ¦   «         sJ ‚t          j        |¦  «         	                    ¦   «         sJ ‚d S )	Nri   r>   g    €„.Ar  r'   rv  rw  r„  )
rD   rE   ÚsqrtÚfinforA  ÚmaxÚ	heavisider   rB  rC  )r*   r,   r+   Úak1Úak2Úy_eval1Úy_eval2s          r.   Útest_no_overflowz(TestAkima1DInterpolator.test_no_overflowð  sÓ   € åŒI�a˜ÑÔˆØ•”�œ¥%™œÔ,Ñ-Ô-Ñ-­b¬l¸1¸Q¹3ÀÑ.DÔ.DÑDˆå! ! Q¨xÐ8Ñ8Ô8ˆÝ! ! Q¨wÐ7Ñ7Ô7ˆà�#�a‘&”&ˆØ�#�a‘&”&ˆåŒ{˜7Ñ#Ô#×'Ò'Ñ)Ô)Ð)Ð)Ð)ÝŒ{˜7Ñ#Ô#×'Ò'Ñ)Ô)Ð)Ð)Ð)Ð)Ð)r4   N)r0   r1   r2   rt  ry  r|  r‚  r…  rˆ  r‹  r�  r’  r•  r¡  r«  r3   r4   r.   rh  rh  H  sÎ   € € € € € ð$ð $ð $ð$ð $ð $ð&$ð $ð $ð&$ð $ð $ð2Jð Jð Jð&ð &ð &ð7ð 7ð 7ð0Að Að Að"ð "ð "ð8ð 8ð 8ð;ð ;ð ;ð(*ð *ð *ð *ð *r4   rh  rx  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é   rj  y               @zreal valuesrV  c                 ó¶   — t          j        ddd¦  «        }|dz  }t          j        ddd¦  «        }t          ||d¬	¦  «        }d
„ }t          d|||¦  «         d S )Nr—  r:   rŒ   r&   rú   r>   r˜  Tr™  c                 ó   —  ||¦  «         d S rß   r3   )Ú_rs  rœ  s      r.   Ú	worker_fnz9test_complex.<locals>.test_concurrency.<locals>.worker_fn  s   € ØˆBˆu‰IŒIˆIˆIˆIr4   )rD   r-  r   r    )r*   r,   r+   rœ  rs  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Ð9r4   )rD   rE   rM   rY  r   rn   )rx  r,   r+   Úmsgr±  s        r.   r5  r5  ÿ  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                 óà   — |                      ddgddgddgg¦  «        }|                      g d¢¦  «        }t          t          t          ||¦  «         t          t          t          ||¦  «         d S )Nri   r  r&   r:   r?   r  )r   ri   r'   )r‘   r(   rn   r   r   )r*   rr  rò   r,   s       r.   Útest_sort_checkzTestPPolyCommon.test_sort_check  si   € Ø�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆØ�JŠJ�{�{�{Ñ#Ô#ˆÝ•j¥%¨¨AÑ.Ô.Ð.Ý•j¥%¨¨AÑ.Ô.Ð.Ð.Ð.r4   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 )Nri   r&   r   )r(   rn   r   rY   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…d	f         |d d…         ¦  «        }| 
                    |d d …dd …d	f         |dd …         ¦  «          ||d d …dd …d	f         |d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&   ri   r‹   .)rD   ÚrandomÚseedÚuniquerñ   Úrandr`  r‘   r   r   r‘  r   rò   r,   )	r*   rr  Ú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ˆà�zŠz˜!‰}Œ}˜bŸjšj¨™mœmˆ1ˆå�5�>ð 	*ñ 	*ˆCØ��Q�q�q�q˜"˜1˜"˜c�z”] A c r c¤FÑ+Ô+ˆBØ�IŠI�a˜˜˜˜1˜2˜2˜s˜
”m Q r s s¤VÑ,Ô,Ð,à�#�a˜˜˜˜2˜3˜3 ˜”n a¨¨¨¤fÑ-Ô-ˆCØ�JŠJ�q˜˜˜˜C˜R˜C ˜”~ q¨¨"¨¤vÑ.Ô.Ð.à�#�a˜‘)”)ˆCå˜BœD #¤%Ñ(Ô(Ð(Ý˜BœD #¤%Ñ(Ô(Ð(Ý˜CœE 3¤5Ñ)Ô)Ð)Ý˜CœE 3¤5Ñ)Ô)Ð)Ñ)ð	*ð 	*r4   c                 óú  — t           j                             d¦  «         |                     ddd¦  «        }|                     t           j                             dd¦  «        ¦  «        }|                     ddd¦  «        }|                     t           j                             dd¦  «        ¦  «        }t          t          fD ]¸} |||¦  «        } |||¦  «        } |||¦  «        }	|	                     ||dd …         ¦  «         |                     dddd	¬
¦  «        }
|                     ddd¦  «        }t           ||
¦  «         |	|
¦  «        ¦  «         t           ||¦  «         |	|¦  «        ¦  «         Œ¹d S )Nrº  r   ri   r  r&   r:   r  rü   F)Úendpoint)
rD   r»  r¼  r-  r‘   r¾  r   r   r‘  r   )r*   rr  r,   rò   rK   Úc2rÀ  Úpp1rÂ  Úpp_combÚxi1Úxi2s               r.   Útest_extend_diff_ordersz'TestPPolyCommon.test_extend_diff_orders<  s[  € å
Œ	�Š�tÑÔÐà�KŠK˜˜1˜aÑ Ô ˆØ�JŠJ•r”y—~’~ a¨Ñ+Ô+Ñ,Ô,ˆà�[Š[˜˜A˜qÑ!Ô!ˆØ�ZŠZ�œ	Ÿš q¨!Ñ,Ô,Ñ-Ô-ˆå�5�>ð 	4ð 	4ˆCØ�#�a˜‘)”)ˆCØ�#�b˜"‘+”+ˆCà�c˜!˜Q‘i”iˆGØ�NŠN˜2˜r ! " "œvÑ&Ô&Ð&ð —+’+˜a  C°%�+Ñ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ð 	4r4   c                 ó¦  — 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…df         |d d…         ¦  «        }| 
                    |d d …dd …df         |dd …         ¦  «          ||d d …dd …df         |d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>   é   ri   r&   r‹   .)rD   r»  r¼  ÚsortÚuniformr¾  r  r‘   r   r   r‘  r   rò   r,   )	r*   rr  r¿  r,   rò   rÀ  rb  Úp1Úp2s	            r.   Útest_extend_descendingz&TestPPolyCommon.test_extend_descendingU  s³  € Ý
Œ	�Š�qÑÔÐàˆÝŒG•B”I×%Ò% a¨¨RÑ0Ô0Ñ1Ô1ˆÝŒI�NŠN˜5 1™9 a¤g¨a¤j°1¡n°a¸Ñ;Ô;ˆà�zŠz˜!‰}Œ}˜bŸjšj¨™mœmˆ1ˆå�5�>ð 	'ñ 	'ˆCØ��A�q‘	”	ˆAà��Q�q�q�q˜"˜1˜"˜c�z”] A c r c¤FÑ+Ô+ˆBØ�IŠI�a˜˜˜˜1˜2˜2˜s˜
”m Q r s s¤VÑ,Ô,Ð,à��Q�q�q�q˜"˜#˜#˜s�{”^ Q r s s¤VÑ,Ô,ˆBØ�IŠI�a˜˜˜˜3˜B˜3 ˜”n a¨¨¨¤fÑ-Ô-Ð-å˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ý˜BœD !¤#Ñ&Ô&Ð&Ñ&ð	'ð 	'r4   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É   r:   r  r  r~  r?   r  )r?   r  r:   r  r  ).r   r   r   r'   r3   r8  r9  çš™™™™™Ù?r—   )rD   r»  r¼  r¾  rÎ  r   r   r  rM   r(   rn   Úobject)r*   rò   r,   rr  rÀ  rb  s         r.   Ú
test_shapezTestPPolyCommon.test_shapel  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r4   c                 óŠ  — t           j                             ddddd¦  «        }t          j        t           j                             d¦  «        ¦  «        }t           j                             dd¦  «        }t	          |j        |||f¦  «        \  }}}t          t          fD ]#} |||¦  «        }d	„ }t          d
|||¦  «         Œ$d S )Nr–   rÉ   r:   r  r  r~  r?   r  c                 ó   —  ||¦  «         d S rß   r3   )r¯  r  Úxpps      r.   r°  z3TestPPolyCommon.test_concurrency.<locals>.worker_fn‰  s   € Ø��s‘”���r4   r>   )	rD   r»  r¾  rÎ  Úmapr‘   r   r   r    )r*   rr  rò   r,   rÙ  rÀ  r  r°  s           r.   r±  z TestPPolyCommon.test_concurrency~  sÄ   € åŒI�NŠN˜1˜b ! Q¨Ñ*Ô*ˆÝŒG•B”I—N’N 2Ñ&Ô&Ñ'Ô'ˆÝŒi�nŠn˜Q Ñ"Ô"ˆå˜œ
 Q¨¨3 KÑ0Ô0‰	ˆˆ1ˆcå�5�>ð 	@ð 	@ˆCØ�S˜˜A‘Y”YˆFðð ð õ $ B¨	°6¸3Ñ?Ô?Ð?Ð?ð	@ð 	@r4   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Ó?r:   rœ   )	rD   r»  r¼  rÎ  r.  r/  r   r   r   )r*   r,   rò   Úc_reÚc_imrr  rÀ  rb  Úp_reÚp_imÚnus              r.   Útest_complex_coefz!TestPPolyCommon.test_complex_coefŽ  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¸±´Ñ=Ô=Ð=Ð=ð>ð	>ð 	>r4   c                 ó¢  — t           j                             d¦  «         t           j                             dddddd¦  «        }|j        }t           j                             d¦  «        }|                     |¦  «        |                     |¦  «        }}d	D �]~}|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 ‚Œ�Œ�Œ€dD ]6}t          t          fD ]%}t          t          |fi t          |||¬¦  «        ¤Ž Œ&Œ7d S )NrÜ  r?   r  r:   r  r  r–   )ri   r&   ©r   ri   r&   r?   ri   rl   r&   )rB   r  r:   r  )rò   r,   rk   )rD   r»  r¼  r¾  r  r‘   rÎ  r   r   rò   Ú
derivativeÚantiderivativerk   r(   rn   r’   )r*   rr  rò   Úc_srÙ  rk   Úmr,   rÀ  rb  ÚresÚ
targ_shaperÐ  s                r.   Ú	test_axiszTestPPolyCommon.test_axisš  s…  € Ý
Œ	�Š�uÑÔÐÝŒI�NŠN˜1˜a  A q¨!Ñ,Ô,ˆØŒgˆÝŒi×Ò˜vÑ&Ô&ˆà—’˜A‘” §
¢
¨3¡¤ˆ3ˆà ð 	-ñ 	-ˆDØ”˜˜Q™”ˆAØ—
’
�2œ7¥2¤9§>¢>°!°A±#Ñ#6Ô#6Ñ7Ô7Ñ8Ô8ˆ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˜‘f”f�Ø   $ œZ¨#¬)Ñ3°c¸!¸D¹&¸'¸'´lÑB�
Ø”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r4   N)r0   r1   r2   r¶  r¸  r’  rË  rÒ  rÖ  r±  râ  rë  r3   r4   r.   r´  r´    s¦   € € € € € ð/ð /ð /ð"ð "ð "ð
*ð *ð *ð04ð 4ð 4ð2'ð 'ð 'ð.Vð Vð Vð$@ð @ð @ð 
>ð 
>ð 
>ðLð Lð Lð Lð Lr4   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©r0   r1   r2   r3   r4   r.   ÚPrï  »  ó   € € € € € Øˆr4   rñ  c                   ó   — e Zd ZdS )úTestPolySubclassing.BNrð  r3   r4   r.   ÚBrô  ¾  rò  r4   rõ  c                 ó8  — t           j                             d¦  «         t          j        t           j                             d¦  «        ¦  «        }t           j                             d¦  «        }|                      ||¦  «        |                      ||¦  «        fS )Nrº  r?   )r  r&   )rD   r»  r¼  rÎ  rñ  rõ  )r*   r,   rò   s      r.   Ú_make_polynomialsz%TestPolySubclassing._make_polynomialsÁ  sm   € Ý
Œ	�Š�tÑÔÐÝŒG•B”I×$Ò$ QÑ'Ô'Ñ(Ô(ˆÝŒI×Ò˜VÑ$Ô$ˆØ�vŠv�a˜‰|Œ|˜TŸVšV A q™\œ\Ð)Ð)r4   c                 óÚ   — |                       ¦   «         \  }}||fD ](}|                     ¦   «         }|j        |j        k    sJ ‚Œ)|                     ¦   «         }|j        |j        k    sJ ‚d S rß   )r÷  rå  Ú	__class__ræ  )r*   rÁ  Úbprb  ÚpdÚppas         r.   Útest_derivativez#TestPolySubclassing.test_derivativeÇ  s{   € Ø×'Ò'Ñ)Ô)‰ˆˆBØ�b�ð 	/ð 	/ˆAØ—’‘”ˆBØ”; "¤,Ò.Ð.Ð.Ð.Ð.à×ÒÑ!Ô!ˆØŒ|˜sœ}Ò,Ð,Ð,Ð,Ð,Ð,r4   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Œ   ri   ©r$  )rD   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Ò%Ð%Ð%Ð%Ð%Ð%r4   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Ñ)Ô)ˆØŒ} ¤Ò&Ð&Ð&Ð&Ð&Ð&r4   c                 óx   — g d¢}dgdgdgg}| j                              ||¦  «        }|j        | j         k    sJ ‚d S )Nrœ   ri   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Ò%Ð%Ð%Ð%Ð%Ð%r4   N)r0   r1   r2   r   rñ  r   rõ  r÷  rý  r  r  r  r3   r4   r.   rí  rí  º  s³   € € € € € ðð ð ð ð ˆEñ ô ð ðð ð ð ð ˆEñ ô ð ð*ð *ð *ð-ð -ð -ð&ð &ð &ð'ð 'ð 'ð&ð &ð &ð &ð &r4   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„ ZdS )Ú	TestPPolyc                 ó\  — |                      ddgddgddgg¦  «        }|                      g d¢¦  «        }t          ||¦  «        }t           |d¦  «        |                      d	|j        ¬
¦  «        ¦  «         t           |d¦  «        |                      d|j        ¬
¦  «        ¦  «         d S )Nri   r  r&   r:   r?   r  ©r   r'   ri   ç333333Ó?ç…ëQ¸…@r—   çffffffæ?ç¤p=
×£@©r‘   r   r   rŸ   ©r*   rr  rò   r,   rb  s        r.   Útest_simplezTestPPoly.test_simpleë  s¯   € Ø�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆØ�JŠJ�{�{�{Ñ#Ô#ˆÝ�!�Q‰KŒKˆÝ˜˜˜#™œ §
¢
Ð+?ÀrÄz 
Ñ RÔ RÑSÔSÐSÝØˆAˆc‰FŒF�B—J’JÐ?ÀrÄz�JÑRÔRñ	
ô 	
ð 	
ð 	
ð 	
r4   c                 ó0  — |                      ddgddgddgg¦  «        }|                      g d¢¦  «        }t          ||d¬	¦  «        }t           |d
¦  «        |                      d|j        ¬¦  «        ¦  «         t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         t           |d
d¦  «        |                      d|j        ¬¦  «        ¦  «         t           |dd¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nri   r  r&   r:   r?   r  r  Úperiodicr™  gÍÌÌÌÌÌô?r  r—   ç333333Ó¿r  gÍÌÌÌÌÌ@gffffff@r  r  s        r.   Útest_periodiczTestPPoly.test_periodicô  s  € Ø�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆØ�JŠJ�{�{�{Ñ#Ô#ˆÝ�!�Q JÐ/Ñ/Ô/ˆå˜˜˜#™œØŸ
š
Ð#=ÀRÄZ˜
ÑPÔPñ	Rô 	Rð 	RåØˆAˆd‰GŒGØ�JŠJÐAÈÌˆJÑTÔTñ	
ô 	
ð 	
õ
 	˜˜˜#˜q™	œ	 2§:¢:¨kÀÄ :Ñ#LÔ#LÑMÔMÐMÝ˜˜˜$ ™
œ
 B§J¢JÐ/BÈ"Ì* JÑ$UÔ$UÑVÔVÐVÐVÐVr4   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 )Nri   r  r&   r:   r?   r  r  )r   r8  r9  r  r™  rP  )rD   rM   r   rQ  rR  rB  rC  )r*   rò   r,   rµ   rR  r¶   rE  s          r.   rT  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Ñ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r4   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 )Nri   rB   )rD   rE   rI   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”=Ð r4   r   r?   ©r>   rÍ  r@   r>   ri   rÈ   r&   ©ÚsizerB   Tr™  rú   rÍ  rù   ç‚vIhÂ%<=rŽ   ©r:   r&   çê-�™—q=)rD   r»  ÚRandomStaterÎ  rÏ  ÚdiffrE   Ú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r4   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&   ri   r?   r  r  r:   ©r:   r  ©r:   r&   ri   r&   r?   )r  r&   ri   r&   r?   )
rD   r»  r¾  rM   r   r,   r  rò   rå  ræ  )r*   rr  rò   r,   rb  ÚdpÚips          r.   Útest_multi_shapezTestPPoly.test_multi_shapeA  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˜_Ò,Ð,Ð,Ð,Ð,Ð,r4   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º  ri   r  r&   r:   r?   r  r—   r  r  r  r  r  )	rD   r»  r¼  rM   rA  r   Úconstruct_fastr   r‘   ©r*   rò   r,   rb  s       r.   Útest_construct_fastzTestPPoly.test_construct_fastQ  s®   € Ý
Œ	�Š�tÑÔÐÝŒH�q˜!�f˜q !˜f q¨! fÐ-µUÐ;Ñ;Ô;ˆÝŒH�[�[�[Ñ!Ô!ˆÝÔ   AÑ&Ô&ˆÝ˜˜˜#™œ¥¤
Ð+?Ñ @Ô @ÑAÔAÐAÝ˜˜˜#™œ¥¤
Ð+KÑ LÔ LÑMÔMÐMÐMÐMr4   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Œ   ri   )r  r'   g…ëQ¸Õ?ç333333ã?)
rD   r»  r'  r¾  rÎ  rñ   r   Ú_ppoly_eval_1r   Ú_ppoly_eval_2)r*   r,  rò   r,   rb  rr  Úexpecteds          r.   Ú#test_vs_alternative_implementationsz-TestPPoly.test_vs_alternative_implementationsY  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Ñ.Ô.Ð.Ð.Ð.r4   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Œ   ri   r   rû   )NTFr™  )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r  r-  r   r   r   rg   )r*   r,  r,   r+   r  rÁ  r0  r%  ÚpppÚtrò   r  Úextraprb  s                 r.   r  zTestPPoly.test_from_splineg  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ð 	2r4   c                 ó0  — t           j                             d¦  «        }t          j        t           j        d|                     d¦  «        df         ¦  «        }|                     t          |¦  «        ¦  «        }t          ||d¬¦  «        \  }}}t          | 	                    |¦  «        | 	                    |¦  «        |¦  «        }t          j        |¦  «        }	|                     ddd¦  «        }
t           |	|
¦  «         ||
¦  «        ¦  «         d S rÿ  )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r‘   r   r  r-  r   )r*   rr  r,  r,   r+   rQ  rò   r  r  rÁ  r0  s              r.   Útest_from_spline_2zTestPPoly.test_from_spline_2~  sß   € åŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆÝ˜˜A Ð#Ñ#Ô#‰ˆˆ1ˆaÝ�b—j’j ‘m”m R§Z¢Z°¡]¤]°AÑ6Ô6ˆÝÔ˜sÑ#Ô#ˆà�[Š[˜˜A˜rÑ"Ô"ˆÝ˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r4   c                 ó2  — t           j                             d¦  «         |                     g d¢g¦  «        j        }|                     g d¢g¦  «        j        }|                     ddgg¦  «        j        }|                     ddg¦  «        }t          ||¦  «        }t          ||¦  «        }t          ||¦  «        }t          |                     ¦   «         j        |j        ¦  «         t          |                     d¦  «        j        |j        ¦  «         d S )	Nrº  )r  r?   r&   ri   )rÉ   r  r&   é   r  r   ri   r&   )	rD   r»  r¼  r‘   r‡  r   r   rå  rò   )	r*   rr  rò   ÚdcÚddcr,   rÁ  ÚdppÚddpps	            r.   Útest_derivative_simplez TestPPoly.test_derivative_simpleŠ  så   € Ý
Œ	�Š�tÑÔÐØ�JŠJ˜˜˜�~Ñ&Ô&Ô(ˆØ�ZŠZ˜˜˜˜Ñ(Ô(Ô*ˆØ�jŠj˜5 %˜.Ð)Ñ*Ô*Ô,ˆØ�JŠJ˜˜1�vÑÔˆå�1�a‰[Œ[ˆÝ�B˜‰lŒlˆÝ�S˜!‰}Œ}ˆå˜Ÿš™œÔ)¨3¬5Ñ1Ô1Ð1Ý˜Ÿš aÑ(Ô(Ô*¨D¬FÑ3Ô3Ð3Ð3Ð3r4   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Œ   ri   r   rû   r?   )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r  r-  r  r   r   ©r*   r,  r,   r+   r  rÁ  r0  Údxs           r.   Útest_derivative_evalzTestPPoly.test_derivative_eval˜  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Ñ(:Ô(:Ñ;Ô;Ð;Ð;ð	<ð 	<r4   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	|› �¬
¦  «         Œ>d S )Nrº  r   rŒ   ri   r:   ©r$  r  rû   r>   údx=r  )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r  r-  r  r   rå  r]  s           r.   rý  zTestPPoly.test_derivative¤  sò   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG•B”E˜!˜SŸXšX b™\œ\¨1Ð,Ô-Ñ.Ô.ˆØ�HŠH•S˜‘V”VÑÔˆå�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆåŒ[˜˜A˜sÑ#Ô#ˆÝ˜˜2‘,”,ð 	Sð 	SˆBÝ˜B˜B˜r 2™JœJÐ(9¨¯ª°bÑ(9Ô(9¸"Ñ(=Ô(=ÀzÈRÀzÀzÐRÑRÔRÐRÐRð	Sð 	Sr4   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 )Nrv   r   ri   )r   r   ræ  rò   r,   )r*   rb  s     r.   Útest_antiderivative_of_constantz)TestPPoly.test_antiderivative_of_constant°  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ÐJr4   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 )	Nrv   r'   rœ   ri   r   )r<   ri   r&   r&   r¹   )	r   ræ  r   rò   r,   r   r*  rD   r‘   )r*   rb  Úqs      r.   Ú#test_antiderivative_regression_4355z-TestPPoly.test_antiderivative_regression_4355¶  sÎ   € å�B˜�9�+˜y˜y˜yÑ)Ô)ˆØ×ÒÑÔˆÝ˜œ˜q #˜h¨¨A¨Ð/Ñ0Ô0Ð0Ý˜œ˜[˜[˜[Ñ)Ô)Ð)Ý˜Ÿš A qÑ)Ô)­2¬:°c©?¬?Ñ;Ô;Ð;Ý�œ
 1 1 Q¡4¤4¨!¨!¨A©$¬$¡;Ñ/Ô/Ýœ
 3™œñ	)ô 	)ð 	)ð 	)ð 	)r4   c                 óª  — |                      g d¢g d¢g|j        ¬¦  «        j        }|                      g d¢g d¢g|j        ¬¦  «        j        }|                      g d¢g d¢g|j        ¬¦  «        j        }|                      g d¢|j        ¬¦  «        }t          ||¦  «        }|                     ¦   «         }|                     d	¦  «        }|                     ¦   «         }	t          |j        |¦  «         t          |j        j        |j        ¦  «         t          |j        j        |j        ¦  «         t          |	j        j        |j        ¦  «         d S )
N)r?   r&   ri   )r   r   ç      û?r—   )ri   ri   ri   r   )r   r   ri  ç      Õ?)ç      Ð?gUUUUUUÕ?r'   r   r   )r   r   g      ë?rj  g«ªªªª*£?)r   rk  ri   r&   )r‘   rŸ   r‡  r   ræ  r   r,   rò   )
r*   rr  rò   ÚicÚiicr,   rÁ  ÚippÚiippÚiipp2s
             r.   Útest_antiderivative_simplez$TestPPoly.test_antiderivative_simpleÀ  sO  € ð �JŠJ˜	˜	˜	 > > >Ð2¸"¼*ˆJÑEÔEÔGˆð �ZŠZ˜˜˜Ð'?Ð'?Ð'?Ð@ÈÌ
ˆZÑSÔSÔUˆð �jŠjÐ/Ð/Ð/ØJÐJÐJðLà!œzð ñ 
ô 
ô ð 	ð �JŠJ�|�|�|¨2¬:ˆJÑ6Ô6ˆå�1�a‰[Œ[ˆØ×ÒÑ!Ô!ˆØ× Ò  Ñ#Ô#ˆØ×"Ò"Ñ$Ô$ˆå˜œ˜qÑ!Ô!Ð!Ý˜œœ ¤Ñ&Ô&Ð&Ý˜œœ #¤%Ñ(Ô(Ð(Ý˜œœ	 3¤5Ñ)Ô)Ð)Ð)Ð)r4   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 ]y}	|                     |	¦  «        }d	}
|
|j        d d
…         z  d|
z
  |j        dd …         z  z   }t           ||j        dd …         ¦  «         ||¦  «        dd|› d|	› �¬¦  «         ŒzŒÐd S )Nrº  r   ri   r@   r&   r:   ra  r>   r$  rB   r§   rb  z k=)r�   rª   )rD   r»  r'  r-  r¾  r`  r   r   r  r  ræ  rå  r   rò   r,   )r*   r,  r,   r+   r  rÁ  r^  rn  rÂ  r  ÚrrÅ  s               r.   Ú!test_antiderivative_vs_derivativez+TestPPoly.test_antiderivative_vs_derivativeÙ  su  € ÝŒi×#Ò# DÑ)Ô)ˆÝŒK˜˜1˜bÑ!Ô! 1Ñ$ˆØ�HŠH•S˜‘V”VÑÔˆÝ�Q˜˜Q !Ð$Ñ$Ô$ˆÝÔ˜sÑ#Ô#ˆå˜˜2‘,”,ð 	ð 	ˆBØ×#Ò# BÑ'Ô'ˆCð —.’. Ñ$Ô$ˆCÝ˜BœD #¤%Ñ(Ô(Ð(õ ˜2‘Y”Yð ð �Ø—n’n QÑ'Ô'�à�Ø˜SœU 3 B 3œZ™<¨1¨q©5°#´%¸¸¸´)Ñ*;Ñ;�åØ�C˜œ˜a˜b˜bœ	‘N”N C C¨¡M¤M¸ÐFVÈBÐFVÐFVÐSTÐFVÐFVðñ ô ð ð ðð	ð 	r4   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Œ   ri   r:   ra  r>   rû   r§   rŽ   )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r  r  ræ  r   r-  r   r   )
r*   r,  r,   r+   r  rÁ  r^  rÂ  Úspl2r0  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¡_¤_Ø!%ð'ñ 'ô 'ð 'ð 'ð	'ð 	'r4   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&   ri   r&   r&   )r&   ri   r?   r?   r  gAíþÿÿß?g_p‰   à?g:Œ0âŽyE>rŽ   )rD   rM   r‡  r   ræ  r   rå  rò   )r*   rò   r,   rb  rB  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Ñ"Ô"Ð"Ð"Ð"r4   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Œ   ri   r:   ra  )r  çÍÌÌÌÌÌì?F©Úcheck_0d)r  r{  Tr™  )rD   r»  r'  rÎ  rñ   r¾  r`  r   r   r  r*  ræ  r   r   rw   rC  )
r*   r,  r,   r+   r  rÁ  r"  r%  Úigrn  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ÐDr4   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©ri   r&   r  r<   rŠ   r;   ç       €rv   rP  ri   r  )rD   rM   rQ  rR  r   r*  rB  rC  )r*   r,   rò   rR  rñ  rE  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Ñ$Ô$×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*ð	+ð 	+r4   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 ©Nr�  r<   rŠ   r;   r‚  rv   r  r™  r  ri   rú   iùÿÿÿrš  r&   r¹   r*  rn  r:   g      /@r˜  r   rB   r?   i÷ÿÿÿ)rD   rM   r   ræ  r‘   r   r*  )r*   r,   rò   rñ  ÚIÚ
period_ints         r.   Útest_integrate_periodicz!TestPPoly.test_integrate_periodic1  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r4   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   ri   r,  r&   r@   r?   ra  gVçž¯Ò¼g     ð?r™   rš   )	rD   r-  r   r   r   r  r+  r   r   )r*   r,   r+   r  rÁ  rs  s         r.   Ú
test_rootszTestPPoly.test_rootsM  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Ð3r4   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 )	NrB   rk  r   )r   rÔ  rJ  rv   rÔ  g333333ë?r;   ri   )	rD   rM   r‡  r   r   r+  r¡   rr   Úsolve)r*   rò   r,   rÁ  ÚconstÚc1rÇ  s          r.   Útest_roots_idzerozTestPPoly.test_roots_idzeroX  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ð 	9r4   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   ri   rœ   )r   r   r+  rD   r¡   rŒ  rF  s       r.   Útest_roots_all_zerozTestPPoly.test_roots_all_zerok  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Ñ'Ô'Ð'Ð'Ð'r4   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)ri   r   rB   )rB   r   r   rÓ   g       Àr<   Fr™  )rD   rM   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ÐGr4   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 )Nri   rB   r  r'   F)Údiscontinuityr¹   )rD   rM   r‡  r   r   r+  r‘   rŒ  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ÐKr4   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   rP  rÍ  r>   r@   r&   ri   r?   F)r–  rg   r™  )rá  rg   ú(z) r = r<   r§   )r›   rª   rç   rù   )rD   r»  r'  r  r½  rñ   r¾  r`  r   rŒ  r#  Úreprr   r‘   )r*   r,  Únumrg   r¿  r,   rò   rÁ  r+   rs  ÚiÚjÚrrÚvalÚcmpvalr²  s                   r.   Útest_roots_randomzTestPPoly.test_roots_random–  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ˆyr4   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º  ri   rË   é‚   r?   )ri   r&   ri   r   r—   Úignore)r”  g»½×Ùß|Û=rš   )rD   r»  r'  r  r¾  r  r  Úcomplexr   Ú_croots_poly1rw   rC  ÚabsÚerrstateÚravelr   Ú
zeros_like)	r*   r,  r  rò   r+   Úwré  Úcresrœ  s	            r.   Útest_roots_crootszTestPPoly.test_roots_croots¶  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   ri   ©TFNr™  Fçš™™™™™¹¿çš™™™™™ñ?g®Gáz®ï?gèz®GáÊ¿rv   rŠ   )rD   rM   r‡  r   rå  ræ  rw   rC  r+  r   Úanyr‘   )r*   rò   r,   rg   rÁ  Úpp_dÚpp_is          r.   r¡  zTestPPoly.test_extrapolate_attrÔ  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r4   N) r0   r1   r2   r  r  rT  r=  rC  rG  rN  r  rT  r[  r_  rý  rd  rg  rq  rt  rw  ry  r  rƒ  rˆ  rŠ  r�  r‘  r”  r—  r¡  r­  r¡  r3   r4   r.   r  r  é  sì  € € € € € ð
ð 
ð 
ðWð Wð Wð+ð +ð +ð/Cð /Cð /Cðb-ð -ð -ð Nð Nð Nð/ð /ð /ð2ð 2ð 2ð.
)ð 
)ð 
)ð4ð 4ð 4ð
<ð 
<ð 
<ð
Sð 
Sð 
SðKð Kð Kð)ð )ð )ð*ð *ð *ð2ð ð ð2'ð 'ð 'ð #ð #ð #ð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r4   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¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nr   ri   r?   r8  rt   r—   ©r‘   r   r   rŸ   ©r*   rr  r,   rò   rú  s        r.   r  zTestBPoly.test_simpleì  si   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜�uÑÔˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œ §¢¨B°b´j Ñ!AÔ!AÑBÔBÐBÐBÐBr4   c                 óì   — |                      ddg¦  «        }|                      dgdgg¦  «        }t          ||¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nr   ri   r?   r8  ggfffff@r—   r¸  r¹  s        r.   Útest_simple2zTestBPoly.test_simple2ò  sm   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜˜a˜S�zÑ"Ô"ˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œ §¢¨NÀ"Ä* Ñ!MÔ!MÑNÔNÐNÐNÐNr4   c                 óð   — |                      ddg¦  «        }|                      dgdgdgg¦  «        }t          ||¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nr   ri   r?   r  r9  g433333@r—   r¸  r¹  s        r.   Útest_simple3zTestBPoly.test_simple3ø  s~   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜˜a˜S 1 #�Ñ'Ô'ˆÝ�1�a‰[Œ[ˆÝØˆBˆs‰GŒGØ�JŠJÐ@ÈÌ
ˆJÑSÔSñ	
ô 	
ð 	
ð 	
ð 	
r4   c                 óô   — |                      ddg¦  «        }|                      dgdgdgdgg¦  «        }t          ||¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nr   ri   r&   r  g:ßO�—nð?r—   r¸  r¹  s        r.   Útest_simple4zTestBPoly.test_simple4  s�   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜˜a˜S 1 #¨ sÐ+Ñ,Ô,ˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œØŸ
š
ð (.ð 68´Zð #ñ Aô Añ	
ô 	
ð 	
ð 	
ð 	
r4   c                 óø   — |                      ddg¦  «        }|                      dgdgdgdgdgg¦  «        }t          ||¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         d S )Nr   ri   r–   r&   r  g”Ô	h"l@r—   r¸  r¹  s        r.   Útest_simple5zTestBPoly.test_simple5  s’   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜˜a˜S 1 #¨ s¨Q¨CÐ0Ñ1Ô1ˆÝ�1�a‰[Œ[ˆÝ˜˜˜3™œØŸ
š
ð &(ð 02¬zð	 #ñ ;ô ;ñ	
ô 	
ð 	
ð 	
ð 	
r4   c                 ó0  — |                      g d¢¦  «        }|                      ddgddgddgg¦  «        }t          ||d¬¦  «        }t           |d¦  «        |                      d|j        ¬	¦  «        ¦  «         t           |d
¦  «        |                      d|j        ¬	¦  «        ¦  «         t           |dd¦  «        |                      d|j        ¬	¦  «        ¦  «         t           |d
d¦  «        |                      d|j        ¬	¦  «        ¦  «         d S )N©r   ri   r?   r?   r   r&   r  r™  g333333@gHáz®Gñ?r—   gÍÌÌÌÌÌô¿ç[�Âõ(\Ï?ri   çÌÌÌÌÌÌÀr  r¸  r¹  s        r.   r  zTestBPoly.test_periodic  s  € Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆå�1�a ZÐ0Ñ0Ô0ˆå˜˜˜3™œ §¢¨J¸b¼j Ñ!IÔ!IÑJÔJÐJÝ˜˜˜4™œ "§*¢*¨^À2Ä: *Ñ"NÔ"NÑOÔOÐOå˜˜˜3 ™
œ
 B§J¢J¨x¸r¼z JÑ$JÔ$JÑKÔKÐKÝ˜˜˜4 ™œ R§Z¢Z°À2Ä: ZÑ%NÔ%NÑOÔOÐOÐOÐOr4   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>   ri   r°  r8  r"  rB   Tr™  rú   rÍ  rù   r$  rŽ   r%  r&  )rD   r»  r'  rÎ  rÏ  rr   r   r   rå  ræ  r*  )r*   r,  r  rè  r,   r-  r2  r3  rû  r4  r5  r6  r7  r8  r"  r%  r9  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Ø%*ð,ñ ,ô ,ð ,ð ,ñ	,ð/	,ð 	,r4   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&   ri   r?   r  r  r:   r?  r@  )
rD   r»  r'  r¾  rM   r   r,   r  rò   rå  )r*   r,  rò   r,   rb  rA  s         r.   rC  zTestBPoly.test_multi_shapeF  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˜_Ò,Ð,Ð,Ð,Ð,Ð,r4   c           	      ó@  — |                      ddg¦  «        }|                      dgdgdgg¦  «        }t          ||¦  «        }d}|dz  }t           ||¦  «        |                      dd|z
  z  d|z
  z  d|z  d|z
  z  z   d|z  |z  z   |j        ¬¦  «        ¦  «         d S )Nr   r&   r?   ri   r  r8  r—   r¸  )r*   rr  r,   rò   rú  Úxvalr$  s          r.   Útest_interval_lengthzTestBPoly.test_interval_lengthS  s¹   € Ø�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜˜a˜S 1 #�Ñ'Ô'ˆÝ�1�a‰[Œ[ˆØˆØ�1‰HˆÝØˆBˆt‰HŒHØ�JŠJ�q˜A˜a™C‘y ! A¡#‘¨¨q©°!°A±#©Ñ6¸¸Q¹¸q¹Ñ@ÈÌ
ˆJÑSÔSñ	
ô 	
ð 	
ð 	
ð 	
r4   c                 ó\  — |                      g d¢¦  «        }|                      ddgddgddgg¦  «        }t          ||¦  «        }t           |d¦  «        |                      d|j        ¬¦  «        ¦  «         t           |d¦  «        |                      d	|j        ¬¦  «        ¦  «         d S )
NrÃ  r?   r   r&   rÔ  gGáz®Gñ?r—   ç333333û?rÄ  r¸  r¹  s        r.   Útest_two_intervalszTestBPoly.test_two_intervals^  s¢   € Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�1�a‰[Œ[ˆå˜˜˜3™œ §¢¨K¸r¼z Ñ!JÔ!JÑKÔKÐKÝ˜˜˜3™œ §¢¨NÀ"Ä* Ñ!MÔ!MÑNÔNÐNÐNÐNr4   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?   ri   r  r¯  r™  Fr°  gÍÌÌÌÌÌ @)r   rå  rD   rw   rC  r²  )r*   r,   rò   rú  rg   Úbp_ds         r.   r¡  zTestBPoly.test_extrapolate_attrf  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×:Ò:Ñ<Ô<Ð<Ð<Ð<Ð<ð	=ð 	=r4   N)r0   r1   r2   r  r»  r½  r¿  rÁ  r  r=  rC  rÊ  rÍ  r¡  r3   r4   r.   r¶  r¶  ê  sÆ   € € € € € ðCð Cð CðOð Oð Oð
ð 
ð 
ð	
ð 	
ð 	
ð

ð 

ð 

ð
Pð 
Pð 
Pð ,ð  ,ð  ,ðD-ð -ð -ð	
ð 	
ð 	
ðOð Oð Oð=ð =ð =ð =ð =r4   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¦  «        |                      d|j        ¬¦  «        ¦  «         t           |d¦  «        |                      d	|j        ¬¦  «        ¦  «         t          |                     ˆfd
„dD ¦   «         ¦  «        |                      g d¢|j        ¬¦  «        ¦  «         t          |                     ˆfd„dD ¦   «         ¦  «        |                      g d¢|j        ¬¦  «        ¦  «         d S )NrÃ  r?   r   r&   rÔ  rÅ  r—   rÌ  r  c                 ó(   •— g | ]} ‰d |¦  «        ‘ŒS )rÔ  r3   ©r   rá  rú  s     €r.   ú
<listcomp>z5TestBPolyCalculus.test_derivative.<locals>.<listcomp>�  ó#   ø€ Ð!BÐ!BÐ!B°" " " S¨"¡+¤+Ð!BÐ!BÐ!Br4   ©ri   r&   r?   )rÅ  r|   r<   c                 ó(   •— g | ]} ‰d |¦  «        ‘ŒS )rÌ  r3   rÔ  s     €r.   rÕ  z5TestBPolyCalculus.test_derivative.<locals>.<listcomp>„  rÖ  r4   )r  rv   r   )r‘   r   rå  r   rŸ   r{  )r*   rr  r,   rò   Úbp_derrú  s        @r.   rý  z!TestBPolyCalculus.test_derivativex  sW  ø€ Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�1�a‰[Œ[ˆØ—’‘”ˆÝ˜˜˜s™œ R§Z¢Z°ÀÄ
 ZÑ%KÔ%KÑLÔLÐLÝ˜˜˜s™œ R§Z¢Z°¸2¼: ZÑ%FÔ%FÑGÔGÐGõ 	˜ŸšÐ!BÐ!BÐ!BÐ!B¸	Ð!BÑ!BÔ!BÑCÔCØŸ
š
Ð#7Ð#7Ð#7¸r¼z˜
ÑJÔJñ	
ô 	
ð 	
õ 	˜ŸšÐ!BÐ!BÐ!BÐ!B¸	Ð!BÑ!BÔ!BÑCÔCØŸ
š
 < < <°r´z˜
ÑBÔBñ	
ô 	
ð 	
ð 	
ð 	
r4   c                 ój  — t           j                             d¦  «        }d\  }}t          j        |                     |¦  «        ¦  «        }|                     ||dz
  f¦  «        }|                     |¦  «        |                     |¦  «        }}t          ||¦  «        }t          j        |¦  «        }t          |¦  «        D ]o}	| 	                    ¦   «         }| 	                    ¦   «         }| 
                    |d         |d         d¦  «        }
t           ||
¦  «         ||
¦  «        ¦  «         Œpd S ©Nrº  ©r:   r–   ri   r   rB   é   )rD   r»  r'  rÎ  r‘   r   r   r  r  rå  r-  r   )r*   rr  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Ñ Ô ˆà�zŠz˜!‰}Œ}˜bŸjšj¨™mœmˆ1ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆå�q‘”ð 	.ð 	.ˆAØ—’‘”ˆBØ—’‘”ˆBØ—+’+˜a œd A b¤E¨2Ñ.Ô.ˆCÝ˜B˜B˜s™GœG R R¨¡W¤WÑ-Ô-Ð-Ð-ð		.ð 	.r4   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Ü  ri   r+  r   rB   rÝ  )
rD   r»  r'  rÎ  rr   r   r-  r  r   rå  )
r*   r,  rè  r  r,   rò   Úccrú  rÙ  rœ  s
             r.   Útest_deriv_inplacez$TestBPolyCalculus.test_deriv_inplace™  sû   € ÝŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒG�C—J’J˜q‘M”MÑ"Ô"ˆØ�JŠJ˜˜1˜Q™3�xÑ Ô ˆð —6’6‘8”8˜Q ™\Ð*ð 	Cð 	CˆBÝ�r˜1‘”ˆBÝ”+˜a œd A b¤E¨2Ñ.Ô.ˆCÝ˜1‘X”Xð Cð C�Ý   3¨¡
¤
Ð,<¨B¯MªM¸!Ñ,<Ô,<¸SÑ,AÔ,AÑBÔBÐBÐBðCð	Cð 	Cr4   c           
      ó‚  — |                      g d¢¦  «        }|                      ddgddgg¦  «        }t          ||¦  «        }|                     ¦   «         }|                     ddd|j        ¬¦  «        }t           ||¦  «        |                     |dk     |dz  dz  d	|z  |dz  dz
  z  d
z   ¦  «        dd¬¦  «         d S )NrÃ  r   ri   r?   rŒ   r—   r&   r;   r'   g      è?r&  ©r›   r�   )r‘   r   ræ  r-  rŸ   r   Úwhere)r*   rr  r,   rò   rú  ÚbiÚxxs          r.   rq  z,TestBPolyCalculus.test_antiderivative_simple¦  sÜ   € ð �JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A Ð'Ñ(Ô(ˆå�1�a‰[Œ[ˆØ×ÒÑ Ô ˆà�[Š[˜˜A˜r¨¬ˆ[Ñ4Ô4ˆÝ˜˜˜2™œØŸš  a¢¨¨Q©°©Ø),¨r©°R¸±U¸Q±YÑ)?À$Ñ)FñHô Hà"¨ð	0ñ 	0ô 	0ð 	0ð 	0ð 	0r4   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   rB   rù   r&  rä  )	rD   r»  r'  rÎ  r   r-  r   ræ  rå  ©r*   r,  r,   rò   rú  rç  s         r.   Útest_der_antiderz"TestBPolyCalculus.test_der_antiderº  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ð 	8r4   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   rB   r>   r&   r&  rä  )
rD   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r4   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>   ri   rB   r�   r&  rä  )rD   r»  r'  rÎ  r   ræ  r,   r   rê  s         r.   Útest_antider_continuousz)TestBPolyCalculus.test_antider_continuousÐ  s±   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�wÑÔˆÝ�1�a‰[Œ[×'Ò'Ñ)Ô)ˆàŒT�!�B�$ŒZˆÝ˜˜˜2 ™:™œØ˜˜2 ™:™œ¨U¸ð	@ñ 	@ô 	@ð 	@ð 	@ð 	@r4   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   ri   r&  F)r›   r�   r}  )
rD   r»  r'  rÎ  r‘   r   r   r  r   r*  )r*   rr  r,  r,   rò   rú  rÁ  s          r.   r  z TestBPolyCalculus.test_integrateÚ  sÉ   € ÝŒi×#Ò# DÑ)Ô)ˆÝŒG�C—J’J˜r‘N”NÑ#Ô#ˆØ�JŠJ�wÑÔˆØ�zŠz˜!‰}Œ}˜bŸjšj¨™mœmˆ1ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆÝ˜Ÿš Q¨Ñ*Ô*ØŸš Q¨Ñ*Ô*°¸UÈUð	Tñ 	Tô 	Tð 	Tð 	Tð 	Tr4   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 )
Nri   r   r&   r;   r�   F)r›   r}  r™  T)r   r   r*  rD   r‘   rw   )r*   rò   r,   r%  Úb1s        r.   Útest_integrate_extrapz'TestBPolyCalculus.test_integrate_extrapä  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r4   c           	      ó  — |                      g d¢¦  «        }|                      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 r…  )r‘   r   r  r   ræ  r   r*  )r*   rr  r,   rò   rñ  r†  r‡  s          r.   rˆ  z)TestBPolyCalculus.test_integrate_periodicó  s,  € Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜R˜ 3¨ *¨r°3¨i¸"¸b¸ÐBÑCÔCˆåÔ"¥5¨¨A¡;¤;¸JÐGÑGÔGˆØ×ÒÑÔˆà—Z’Z   !¡¤ q q¨¡t¤t¡Ñ,Ô,ˆ
å˜Ÿš A qÑ)Ô)¨:Ñ6Ô6Ð6Ý˜Ÿš C¨Ñ,Ô,¨jÑ9Ô9Ð9Ý˜Ÿš C¨Ñ,Ô,¨b¯jªj¸¸Z¹Ñ.HÔ.HÑIÔIÐIå˜Ÿš C¨Ñ-Ô-¨r¯zªz¸!¸!¸C¹&¼&À1À1ÀSÁ6Ä6¹/Ñ/JÔ/JÑKÔKÐKÝ˜Ÿš C¨Ñ+Ô+¨R¯ZªZ¸¸¸!¹¼¸q¸qÀ¹t¼t¹ÀaÀaÈÁdÄdÑ8JÈQÈQÈsÉVÌVÑ8SÑ-TÔ-TÑUÔUÐUÝ˜Ÿš 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Ñ*Ô*¨B¯JªJ°q°q¸±t´t¸a¸aÀ¹d¼d±{Ñ,CÔ,CÑDÔDÐDÝ˜Ÿš B¨Ñ,Ô,¨b¯jªj¸¸¸1¹¼ÀÀÀ!ÁÄ¹Ñ.EÔ.EÑFÔFÐFÝ˜Ÿš A sÑ+Ô+¨R¯ZªZ¸¸¸!¹¼¸q¸qÀ¹t¼t¹ÀaÈ*ÁnÑ8TÑ-UÔ-UÑVÔVÐVÐVÐVr4   c                 óÚ  — |                      dgg¦  «        }|                      ddg¦  «        }t          ||¦  «        }|                     ddd¦  «        }t           |                     d¦  «        |¦  «         |                     ¦   «         |¦  «        dd¬¦  «         t           |                     d¦  «        |¦  «         |                     d¦  «        |¦  «        dd¬¦  «         d S )Nri   r   rÝ  rB   r&  rä  )r‘   r   r-  r   rå  ræ  )r*   rr  rò   r,   r%  rç  s         r.   Útest_antider_negz"TestBPolyCalculus.test_antider_neg  só   € à�JŠJ˜˜�uÑÔˆØ�JŠJ˜˜1�vÑÔˆÝ�!�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ð 	0r4   N)r0   r1   r2   rý  rß  râ  rq  rë  rí  rð  r  rô  rˆ  r÷  r3   r4   r.   rÑ  rÑ  v  sË   € € € € € ð
ð 
ð 
ð .ð .ð .ð"Cð Cð Cð0ð 0ð 0ð(8ð 8ð 8ð
Jð 
Jð 
Jð@ð @ð @ðTð Tð TðDð Dð DðWð Wð Wð00ð 0ð 0ð 0ð 0r4   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&   ri   r–   r  r8  çffffffö?)r‘   r   r   r  r  r   )r*   rr  r,   rò   rÁ  rú  rÇ  Úxvs           r.   Útest_bp_from_ppz#TestPolyConversions.test_bp_from_pp  sÃ   € Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�1�a‰[Œ[ˆÝÔ# BÑ'Ô'ˆÝÔ(¨Ñ,Ô,ˆà�ZŠZ˜˜c˜
Ñ#Ô#ˆÝ˜˜˜2™œ   2¡¤Ñ'Ô'Ð'Ý˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r4   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Û  )
rD   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¡¤Ñ(Ô(Ð(Ð(Ð(r4   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?   ri   r  r&   r8  rû  )r‘   r   r   r  r  r   )r*   rr  r,   rò   rú  rÁ  r  rü  s           r.   Útest_pp_from_bpz#TestPolyConversions.test_pp_from_bp3  sÃ   € Ø�JŠJ�y�y�yÑ!Ô!ˆØ�JŠJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�1�a‰[Œ[ˆÝÔ'¨Ñ+Ô+ˆÝÔ$ RÑ(Ô(ˆà�ZŠZ˜˜c˜
Ñ#Ô#ˆÝ˜˜˜2™œ   2¡¤Ñ'Ô'Ð'Ý˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r4   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?   ri   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)r0   r1   r2   rý  rÿ  r  r  r3   r4   r.   rù  rù    sP   € € € € € ð	)ð 	)ð 	)ð)ð )ð )ð	)ð 	)ð 	)ð
'ð 
'ð 
'ð 
'ð 
'r4   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   ri   r&   r?   r;   rt   ©r   Ú_construct_from_derivativesr   )r*   rŽ  s     r.   Útest_make_poly_1z)TestBPolyFromDerivatives.test_make_poly_1L  s6   € ÝÔ.¨q°!°a°S¸1¸#Ñ>Ô>ˆÝ˜˜R ˜HÑ%Ô%Ð%Ð%Ð%r4   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   ri   )rv   rv   rv   r&   r?   )r;   rn  rv   )r;   g      à¿rv   r  ©r*   rŽ  rÆ  Úc3s       r.   Útest_make_poly_2z)TestBPolyFromDerivatives.test_make_poly_2P  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Ñ+Ô+Ð+Ð+Ð+r4   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   ri   r×  r  )rv   ç«ªªªªªú?g«ªªªªª@r  )r  r&   r?   )rv   gUUUUUU	@g«ªªªªª
@r  r&   r?   )rv   r  rt   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ˆÝ˜Ð.Ð.Ð.Ñ/Ô/Ð/Ð/Ð/r4   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   r:   ri   r  r<   Fr|  rv   )	rD   r»  r'  rñ   r   r	  r  r   rå  )r*   r,  ÚyaÚybrò   rÁ  r�  s          r.   Útest_make_poly_12z*TestBPolyFromDerivatives.test_make_poly_12i  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ð	!ð 	!r4   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   ri   )r–   r:   r&   r?   r  rŒ   )rD   r»  r'  r   Ú_raise_degreer-  r   )
r*   r,  r,   r  rÞ  rò   rú  rŽ  r  rr  s
             r.   Útest_raise_degreez*TestBPolyFromDerivatives.test_raise_degreeu  s©   € ÝŒi×#Ò# EÑ*Ô*ˆØ�ˆFˆØ‰ˆˆ1Ø�JŠJ˜˜1˜a  A�Ñ'Ô'ˆÝ�1�a‰[Œ[ˆåÔ   AÑ&Ô&ˆÝ�B˜‰lŒlˆåŒ[˜˜A˜rÑ"Ô"ˆÝ˜˜˜2™œ   B¡¤Ñ(Ô(Ð(Ð(Ð(r4   c                 óN   — t          t          t          j        ddgdg¦  «         d S )Nr   ri   ©r(   rn   r   r
  rY   s    r.   Ú
test_xi_yiz#TestBPolyFromDerivatives.test_xi_yi‚  s%   € Ý•j¥%Ô"8¸1¸a¸&À1À#ÑFÔFÐFÐFÐFr4   c                 ó`   — g d¢}dgdgdgg}t          t          t          j        ||¦  «         d S )N©r   r   ri   r   r  )r*   r0  ró   s      r.   Útest_coords_orderz*TestBPolyFromDerivatives.test_coords_order…  s9   € ØˆYˆYˆØˆc�A�3˜˜ˆ_ˆÝ•j¥%Ô"8¸"¸bÑAÔAÐAÐAÐAr4   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<   r8  rv   r±  gffffffþ?r;   r*  r<   )r   r
  rò   r  rå  r   rD   r‘   )r*   r0  ró   rÁ  Úppdrr  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ð 	6r4   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 )rv   r&   r3   )r   r�  s     r.   rÕ  z<TestBPolyFromDerivatives._make_random_mk.<locals>.<listcomp>™  s    € Ð7Ð7Ð7 q˜˜a ™d™Ð7Ð7Ð7r4   ri   c                 ó:   •— g | ]}‰                      ‰¦  «        ‘ŒS r3   )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Ð0r4   )rD   r»  r'  r‘   r  )r*   rè  r  r0  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ˆr4   c                 ó
  ‡— d\  }}|                       ||¦  «        \  }}t          j        ||¦  «        }t          |dz  ¦  «        D ];Št	           ||¦  «        ˆfd„|D ¦   «         ¦  «         |                     ¦   «         }Œ<d S )N©r:   rÉ   r&   c                 ó    •— g | ]
}|‰         ‘ŒS r3   r3   )r   Úyyr¿  s     €r.   rÕ  z;TestBPolyFromDerivatives.test_random_12.<locals>.<listcomp>£  s   ø€ Ð$<Ð$<Ð$<°2 R¨¤YÐ$<Ð$<Ð$<r4   )r%  r   r
  r  r   rå  )r*   rè  r  r0  ró   rÁ  r¿  s         @r.   Útest_random_12z'TestBPolyFromDerivatives.test_random_12�  s–   ø€ Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBÝÔ# B¨Ñ+Ô+ˆå˜1˜a™4‘[”[ð 	!ð 	!ˆEÝ˜B˜B˜r™FœFÐ$<Ð$<Ð$<Ð$<¸Ð$<Ñ$<Ô$<Ñ=Ô=Ð=Ø—’‘”ˆBˆBð	!ð 	!r4   c           	      óœ   — d\  }}|                       ||¦  «        \  }}t          t          t          j        fi t          ||d¬¦  «        ¤Ž d S )Nr'  r   ©r0  ró   Úorders)r%  r(   rn   r   r
  r’   ©r*   rè  r  r0  ró   s        r.   Útest_order_zeroz(TestBPolyFromDerivatives.test_order_zero¦  sc   € Ø‰ˆˆ1Ø×%Ò% a¨Ñ+Ô+‰ˆˆBÝ•j¥%Ô"8ð 	0ð 	0Ý˜" ¨AÐ.Ñ.Ô.ð	0ð 	0ð 	0ð 	0ð 	0r4   c           
      óÜ   — d\  }}|                       ||¦  «        \  }}t          j        ||d|z  dz
  ¬¦  «         t          t          t          j        fi t          ||d|z  ¬¦  «        ¤Ž d S )Nr'  r&   ri   ©r-  r,  )r%  r   r
  r(   rn   r’   r.  s        r.   Útest_orders_too_highz-TestBPolyFromDerivatives.test_orders_too_high¬  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ð 	2r4   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'  r:   r1  r&   ri   rB   r&  r  )r%  r   r
  r  r   rå  rD   Úallclose)r*   rè  r  r0  ró   r¿  rÁ  r�  s           r.   Útest_orders_globalz+TestBPolyFromDerivatives.test_orders_global´  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ÐJr4   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 )ri   r3   )r   Úos     r.   rÕ  z>TestBPolyFromDerivatives.test_orders_local.<locals>.<listcomp>Ð  s   € Ð*Ð*Ð*˜A�!�a‘%Ð*Ð*Ð*r4   ri   rB   r1  r&   r&  )	r%  r  r   r   r
  r   rå  rD   r4  )
r*   rè  r  r0  ró   r-  rœ  r,   rÁ  r�  s
             r.   Útest_orders_localz*TestBPolyFromDerivatives.test_orders_localÌ  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r4   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  r:   ri   r  r  r–   r&   )rD   r»  r'  rÎ  r   r
  rò   r  )r*   r,  rè  r  r0  ró   rÁ  s          r.   Útest_yi_trailing_dimsz.TestBPolyFromDerivatives.test_yi_trailing_dimsØ  s™   € ÝŒi×#Ò# DÑ)Ô)ˆØ‰ˆˆ1ÝŒW�S—Z’Z  !¡‘_”_Ñ%Ô%ˆØ�ZŠZ˜˜1™˜a  A qÐ)Ñ*Ô*ˆÝÔ# B¨Ñ+Ô+ˆØŒtŒz˜a ™c 1 a¨¨AÐ.Ò.Ð.Ð.Ð.Ð.Ð.r4   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 )Nri   r   r1  )rD   Úint32r   r
  r   r‘   Úint64)r*   r-  rb  s      r.   Útest_gh_5430z%TestBPolyFromDerivatives.test_gh_5430à  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Øˆˆˆr4   N)r0   r1   r2   r
  r  r  r  r  r  r  r!  r%  r*  r/  r2  r5  r9  r;  r?  r3   r4   r.   r  r  K  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ð/ð /ð /ðð ð ð ð r4   r  c                   óJ   — 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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  r:   r   ri   r  rû   )	rD   r»  r'  r¾  r-  r   rK  r©  r   )r*   r,  rò   r,   r0  rb  Ú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ÑÔÐÐÐr4   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  r:   r  r  r   ri   r–   r&   rû   r—   rÍ  é*   )N©r   r   ©r   ri   )ri   r   )r&   r?   )r‹   r&   ©rá  r  )rD   r»  r'  r¾  r-  r  r`  r˜   Úfillr¡   r   Úevaluate_ndrI   rM   ÚintcÚc_r©  Ú_ppoly2d_evalr   r   rš  )r*   r,  rò   r,   r+   r0  ró   rC  rD  rb  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ð 	6r4   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  r:   r  r  r–   r‹   r   ri   r&   r>   r?   é(   )N©r   r   r   ©r   ri   r   ©ri   r   r   )r&   r?   r   )r  r   r&   rJ  r  )	rD   r»  r'  r¾  r-  r   Ú_ppoly3d_evalr   rš  )r*   r,  rò   r,   r+   r-   r0  ró   Úzirb  rá  rC  rD  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ð 	6r4   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  r:   r  r  r–   r‹   r>   rŒ   r   ri   r&   r?   rÉ   rÍ  )rD   r»  r'  r¾  r-  r   Ú_ppoly4d_evalr   )r*   r,  rò   r,   r+   r-   Úur0  ró   rW  Úuirb  rC  rD  s                 r.   Útest_simple_4dzTestNdPPoly.test_simple_4d2	  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ÑÔÐÐÐr4   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  r:   r   ri   r  rJ  r&   )rD   r»  r'  r¾  r-  r   rå  r   r   rò   ræ  )r*   r,  rò   r,   rb  rA  rÐ  Údp1s           r.   Útest_deriv_1dzTestNdPPoly.test_deriv_1dF	  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Ñ$Ô$Ð$Ð$Ð$r4   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  r:   r  r  r–   r‹   r   ri   r&   r>   r?   rJ  rT  )r   r   r?   )rD   r»  r'  r¾  r-  r   r   rŠ  rå  r   rò   ræ  )
r*   r,  rò   r,   r+   r-   rb  rÐ  rA  r_  s
             r.   Útest_deriv_3dzTestNdPPoly.test_deriv_3dZ	  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ñ	;ô 	;ð 	;ð 	;ð 	;r4   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º  )ri   ri   ri   r?   r  r:   r   ri   r  r:   r&   r  r?   )ri   r   r  )r   r&   r   rÍ  )
rD   r»  r'  rm   r-  r   ræ  r¾  r   r   )r*   r,  rò   r,   r+   r-   rb  rB  r0  ró   rW  s              r.   Útest_deriv_3d_simplez TestNdPPoly.test_deriv_3d_simpley	  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r4   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  r:   é   r˜  r   ri   rÌ   r&   r?   rB   rI  )r   r'   )r  r  )rJ  r9  c                 ó   •—  ‰| |f¦  «        S rß   r3   )r,   r+   rb  s     €r.   ú<lambda>z/TestNdPPoly.test_integrate_2d.<locals>.<lambda>©	  s   ø€ ¨1¨1¨a°¨V©9¬9€ r4   gñhãˆµøä>)ÚepsrelÚepsabs)r”   F)r�   r›   r}  rª   )rD   r»  r'  r¾  r-  rŠ  rI   r  rr   r   Úfix_continuityr   r*  r!   r’   r   rš  )r*   r,  rò   r,   r+   ÚcxÚrangesr~  Úig2Úerr2rb  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ð 		2r4   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  r:   r  rf  r˜  rÌ   r   ri   r&   rÍ   r?   rû   )r9  r  rl   rU  rT  r  )	rD   r»  r'  r¾  r-  r   Úintegrate_1dræ  r   )r*   r,  rò   r,   r+   r-   rb  r[  Úvr"  r%  ÚpxÚpaxÚpyÚpayÚpzÚpazs                    r.   Útest_integrate_1dzTestNdPPoly.test_integrate_1d®	  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ÐDr4   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  r:   r  r  r–   r‹   r"  r   ri   r–   r‹   r&   r>   r?   c                 ó¨   •— ‰                      d¬¦  «        }‰                      d¬¦  «        }‰                      d¬¦  «        } ||||f¦  «         d S )NrR  r"  )rÏ  )r¯  r  r0  ró   rW  r,  s        €r.   r°  z/TestNdPPoly.test_concurrency.<locals>.worker_fnÒ	  sX   ø€ Ø—’ "�Ñ%Ô%ˆBØ—’ "�Ñ%Ô%ˆBØ—’ "�Ñ%Ô%ˆBØˆC��R˜�ÑÔÐÐÐr4   )rD   r»  Údefault_rngrÏ  r-  r   r    )r*   rò   r,   r+   r-   rb  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Ð1r4   N)r0   r1   r2   rE  rP  rX  r]  r`  rb  rd  rp  rz  r±  r3   r4   r.   rA  rA  ò  s±   € € € € € ð ð  ð  ð6ð 6ð 6ð:6ð 6ð 6ð( ð  ð  ð(%ð %ð %ð(;ð ;ð ;ð>Bð Bð Bð(2ð 2ð 2ðBEð Eð Eð42ð 2ð 2ð 2ð 2r4   rA  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   ri   Nc              3   óZ   •K  — | ]%}‰|‰f         ‰‰j         d          |z
  dz
  z  z  V — Œ&dS )r   ri   N)r  )r   r  rò   rÞ  r�  s     €€€r.   r  z _ppoly_eval_1.<locals>.<genexpr>å	  sW   øè è € ð ,ð ,Øð �!�A�#”˜˜QœW QœZ¨™\¨!™^Ñ,Ñ,ð ,ð ,ð ,ð ,ð ,ð ,r4   )	rD   Úzerosr`  r  r   r¡   ÚsearchsortedÚsumr  )	rò   r,   ÚxpsrJ  rœ  rr  rs  rÞ  r�  s	   `      @@r.   rK  rK  Û	  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‰ˆØ€Jr4   c                 ó�  ‡‡‡— |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   rB   ri   )ÚNc           	      ón   •— g | ]1}t          j        ‰|d d …f         ‰d d …‰|         f         ¦  «        ‘Œ2S rß   )rD   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ÐPr4   )r  rD   r©  Ú
empty_likeÚcompressr�  Úclipr`  ÚtakeÚvanderrM   r  rI   )ra  Úbreaksrµ   rK  r"  r%  ÚKÚ	saveshaperé  Úmaskrç  r(  Úvaluesr‡  rˆ  rÁ  s                @@@r.   rL  rL  ë	  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Ø
�+Š+�iÑ
 Ô
 €CØ€Jr4   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 orderri   )rn   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Ñ.Ð.r4   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
    NrH  r—   r&   r   rB   ri   ©rD   r  r`  r˜   r  r   Úzipr¡   r�  r  r”  )rò   rc  rµ   Úynewrá  rJ  ÚnxÚnyÚjoutr,   r+   Új1Új2Ús1Ús2rŸ  Úk1Úk2s                     r.   rO  rO  
  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‰	‰	à€Jr4   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
    NrS  r—   r?   r   rB   ri   r&   r–  )rò   rc  rµ   r˜  Úznewrá  rJ  r™  rš  Únzr›  r,   r+   r-   rœ  r�  Új3rž  rŸ  Ús3rŸ  r   r¡  Úk3s                           r.   rV  rV  2
  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‰	‰	à€Jr4   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   rB   ri   r&   r?   r–  )rò   rc  rµ   r˜  r£  Úunewrá  rJ  ÚmxÚmyÚmzÚmur›  r,   r+   r-   r[  rœ  r�  r¥  Új4rž  rŸ  r¦  Ús4rŸ  r   r¡  r§  Úk4s                                 r.   rZ  rZ  Z
  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‰	‰	à€Jr4   rß   )BÚscipy._lib._array_apir   r   r   r   r   rY  r   r(   Únumpyr	   r
   r   r   rD   Ú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"   rZ  Úskip_xp_backendsÚxfail_xp_backendsr$   r6   r^  rh  r\  r5  r´  rí  r  r¶  rÑ  rù  r  rA  rK  r¡   rL  r”  rO  rV  rZ  r3   r4   r.   ú<module>rº     sN  ððð ð ð ð ð ð ð ð ð ð ð ð ð ð +Ð *Ð *Ð *Ð *Ð *Ø €€€à (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø Ð Ð Ð ð-ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð -ð &Ð %Ð %Ð %Ð %Ð %Ð %Ð %à $Ð $Ð $Ð $Ð $Ð $à ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9à !Ð !Ð !Ð !Ð !Ð !à Ð Ð Ð Ð Ð à”;Ô/Ð Ø”KÔ1Ð ðð ð ð ð ñ ô ð ðUð Uð Uð Uð Uñ Uô Uð Uðp6ð 6ð 6ð 6ð 6ñ 6ô 6ð 6ð ÐÐ&Ñ'Ô'ðs*ð s*ð s*ð s*ð s*ñ s*ô s*ñ (Ô'ðs*ðl „×Ò˜Ð$7Ð9JÐ#KÑLÔLð:ð :ñ MÔLð:ð, Ð�5˜%Ñ Ô ð`Lð `Lð `Lð `Lð `Lñ `Lô `Lñ !Ô ð`LðF,&ð ,&ð ,&ð ,&ð ,&ñ ,&ô ,&ð ,&ð^ Ð�5ÑÔð}Eð }Eð }Eð }Eð }Eñ }Eô }Eñ Ôð}Eð@ Ð�5ÑÔðH=ð H=ð H=ð H=ð H=ñ H=ô H=ñ ÔðH=ðV Ð�5ÑÔð_0ð _0ð _0ð _0ð _0ñ _0ô _0ñ Ôð_0ðD Ð�5˜%Ñ Ô ð.'ð .'ð .'ð .'ð .'ñ .'ô .'ñ !Ô ð.'ðbdð dð dð dð dñ dô dð dðNf2ð f2ð f2ð f2ð f2ñ f2ô f2ð f2ðRð ð ð  .0¬Vð ð ð ð ð.	/ð 	/ð 	/ð!ð !ð !ð !ðH%ð %ð %ð %ðP*ð *ð *ð *ð *ð *r4   