§
    fŠtjêP  ã                   óð  — d dl Z d dlZd dlZd dlmZ d dlmZmZ d dl	m
Z
 d dlmZ d dlmZmZmZmZmZ d dlmZ d dlmZ ej        j        Zefd	„Zd
„ Zd„ Zd„ Zej                             d ee¦  «        ¦  «        d„ ¦   «         Z G d„ d¦  «        Z  ee¦  «         G d„ de ¦  «        ¦   «         Z! edd¬¦  «         G d„ de ¦  «        ¦   «         Z" edd¬¦  «         G d„ de!¦  «        ¦   «         Z#dS )é    N)ÚLinAlgError)Úxp_assert_closeÚmake_xp_test_case)ÚHalton)ÚcKDTree)Ú
_AVAILABLEÚ_SCALE_INVARIANTÚ_NAME_TO_MIN_DEGREEÚRBFInterpolatorÚ_get_backend)Ú_rbfinterp_pythran)Ú_run_concurrent_barrierc                 ó’   — t          |¦  «        }|                     | j        d         ||¦  «        }|                     | ||¦  «        S )Né   )r   Ú_monomial_powersÚshapeÚpolynomial_matrix)ÚxÚdegreeÚxpÚbackendÚpowerss        úd/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/interpolate/tests/test_rbfinterp.pyÚ_vandermonder      sF   € õ ˜2ÑÔ€GØ×%Ò% a¤g¨a¤j°&¸"Ñ=Ô=€FØ×$Ò$ Q¨°Ñ3Ô3Ð3ó    c                 óÀ   — | d d …df         } d|                      |  ¦  «        d|                      d| z  ¦  «        z  z
  d|                      d| z  ¦  «        z  z   z  }|S )Nr   g
×£p=
@é   éþÿÿÿé   éýÿÿÿ©Úexp)r   r   Úys      r   Ú_1d_test_functionr$      s^   € ð 	
ˆ!ˆ!ˆ!ˆQˆ$Œ€AØˆb�fŠf�a�R‰jŒj˜1˜RŸVšV B q¡D™\œ\™>Ñ)¨A¨b¯fªf°R¸±T©l¬l©NÑ:Ñ;€AØ€Hr   c                 óÚ  — | d d …df         | d d …df         }}d|                      d|z  dz
  dz   dz  d|z  dz
  dz  dz  z
  ¦  «        z  }d|                      d|z  dz   dz   dz  d|z  dz   dz  z
  ¦  «        z  }d	|                      d|z  d
z
  dz   dz  d|z  dz
  dz  dz  z
  ¦  «        z  }d|                      d|z  dz
  dz   d|z  d
z
  dz  z
  ¦  «        z  }||z   |z   |z   }|S )Nr   r   g      è?é	   é   r   é1   é
   g      à?é   r   gš™™™™™É¿r!   )	r   r   Úx1Úx2Úterm1Úterm2Úterm3Úterm4r#   s	            r   Ú_2d_test_functionr1   "   s%  € ð ˆqˆqˆq�!ˆtŒW�a˜˜˜˜1˜”gˆ€BØ�2—6’6˜A˜b™D ™F Q™;˜, q™.¨A¨b©D°©F°Q©;°q©=Ñ8Ñ9Ô9Ñ9€EØ�2—6’6˜A˜b™D ™F Q™;˜, r™/¨Q¨r©T°!©V°R©KÑ7Ñ8Ô8Ñ8€EØ�"—&’&˜1˜R™4 ™6 A™+˜ a™¨1¨R©4°©6°A©+°a©-Ñ7Ñ8Ô8Ñ8€EØ�2—6’6˜A˜b™D ™F Q™;˜,¨!¨B©$¨q©&°1©Ñ4Ñ5Ô5Ñ5€EØ�‰˜Ñ Ñ%€AØ€Hr   c                 óp  — d}d}dD �]-}t          |dt          j                             ¦   «         ¬¦  «        }t	          |¦  «        D ]ì}d|                     |¦  «        z  dz
  }t          j        || ¦  «        }t          ||dz
  ¦  «        }	t          j         	                    |	d¬	¦  «        \  }
}|
d d …|	j
        d         d …f         }|j                             |¦  «                             |¦  «        }	 t          j                             |¦  «         ŒÐ# t          j        j        $ r Y   dS w xY w�Œ/d
S )Nr)   éd   )r   r'   r   r   é   F©ÚscrambleÚseedr'   r   Úcomplete)ÚmodeT)r   ÚnpÚrandomÚRandomStateÚranger   Ú_kernel_matrixr   ÚlinalgÚqrr   ÚTÚdotÚcholeskyr   )ÚkernelÚmÚnxÚntestsÚndimÚseqÚ_r   ÚAÚPÚQÚRÚQ2ÚBs                 r   Ú#_is_conditionally_positive_definiterQ   .   s?  € ð 
€BØ€FØð ñ ˆõ �T Eµ´	×0EÒ0EÑ0GÔ0GÐHÑHÔHˆÝ�v‘”ð 	ð 	ˆAØ�#—*’*˜R‘.”.Ñ  1Ñ$ˆAÝ"Ô1°!°VÑ<Ô<ˆAÝ˜Q  A¡Ñ&Ô&ˆAÝ”9—<’< ¨
�<Ñ3Ô3‰DˆAˆqð
 �1�1�1�a”g˜a”j�k�k�>Ô"ˆBØ”—’˜‘”—’ Ñ#Ô#ˆAðÝ”	×"Ò" 1Ñ%Ô%Ð%Ð%øÝ”9Ô(ð ð ð Ø�u�u�u�uðøøøñ	ð  ˆ4s   Ã7DÄD1Ä0D1rD   c                 óZ   — t          j        | d¦  «        dz   }t          | |¦  «        sJ ‚d S )Néÿÿÿÿr   )r
   ÚgetrQ   )rD   rE   s     r   Ú$test_conditionally_positive_definiterU   M   s7   € õ
 	Ô ¨Ñ+Ô+¨aÑ/€AÝ.¨v°qÑ9Ô9Ð9Ð9Ð9Ð9Ð9r   c                   ó  — e Zd Zej                             d ee¦  «        ¦  «        d„ ¦   «         Zej                             d ee¦  «        ¦  «        d„ ¦   «         Z	ej                             d ee
¦  «        ¦  «        d„ ¦   «         Zd„ Zej        j        d„ ¦   «         Zd„ Zd„ Zej                             d ee
¦  «        ¦  «        d	„ ¦   «         Zej                             d ee
¦  «        ¦  «        d
„ ¦   «         Zej                             d ee
¦  «        ¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z edd¬¦  «         edd¬¦  «        d„ ¦   «         ¦   «         Z d„ Z!d„ Z"dS )Ú_TestRBFInterpolatorrD   c                 óâ  — t          ddt          j                             ¦   «         ¬¦  «        }d|                     d¦  «        z  }|                     |¦  «        }t          ||¦  «        }d|                     d¦  «        z  }|                     |¦  «        } |                      ||d|¬¦  «        |¦  «        } |                      ||d|¬¦  «        |¦  «        }t          ||d	¬
¦  «         d S )Nr   Fr5   r   é2   ç      ð?©ÚepsilonrD   ç       @ç:Œ0âŽyE>©Úatol)r   r:   r;   r<   Úasarrayr$   Úbuildr   ©	ÚselfrD   r   rI   r   r#   ÚxitpÚyitp1Úyitp2s	            r   Útest_scale_invariance_1dz-_TestRBFInterpolator.test_scale_invariance_1dW   sÞ   € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆØˆc�jŠj˜‰nŒnÑˆØ�JŠJ�q‰MŒMˆå˜a Ñ$Ô$ˆØ�—’˜B‘”ÑˆØ�zŠz˜$ÑÔˆà<�—
’
˜1˜a¨°V�
Ñ<Ô<¸TÑBÔBˆØ<�—
’
˜1˜a¨°V�
Ñ<Ô<¸TÑBÔBˆÝ˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 óÖ  — t          ddt          j                             ¦   «         ¬¦  «        }|                     d¦  «        }|                     |¦  «        }t          ||¦  «        }|                     d¦  «        }|                     |¦  «        } |                      ||d|¬¦  «        |¦  «        } |                      ||d|¬¦  «        |¦  «        }t          ||d¬	¦  «         d S )
Nr'   Fr5   r3   rZ   r[   r]   r^   r_   )r   r:   r;   r<   ra   r1   rb   r   rc   s	            r   Útest_scale_invariance_2dz-_TestRBFInterpolator.test_scale_invariance_2dg   sÔ   € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆØ�JŠJ�s‰OŒOˆØ�JŠJ�q‰MŒMˆå˜a Ñ$Ô$ˆØ�zŠz˜#‰ŒˆØ�zŠz˜$ÑÔˆà<�—
’
˜1˜a¨°V�
Ñ<Ô<¸TÑBÔBˆØ<�—
’
˜1˜a¨°V�
Ñ<Ô<¸TÑBÔBˆÝ˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 ó¬  — t          ddt          j                             ¦   «         ¬¦  «        }d}d}|                     d¦  «        }|                     |¦  «        }t          ||¦  «        }|                     d¦  «        }|                     |¦  «        }|t          v rO |                      |||¬¦  «        |¦  «        }	 |                      ||z  |z   ||¬¦  «        ||z  |z   ¦  «        }
nS |                      ||d|¬	¦  «        |¦  «        }	 |                      ||z  |z   |d|z  |¬	¦  «        ||z  |z   ¦  «        }
t          |	|
d
¬¦  «         d S )Nr'   Fr5   gšd~ÅQJgAüjéZKr3   ©rD   ç      @r[   r^   r_   )	r   r:   r;   r<   ra   r1   r	   rb   r   )rd   rD   r   rI   ÚscaleÚshiftr   r#   re   rf   rg   s              r   Útest_extreme_domainsz)_TestRBFInterpolator.test_extreme_domainsw   s~  € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆØˆØˆà�JŠJ�s‰OŒOˆØ�JŠJ�q‰MŒMˆå˜a Ñ$Ô$ˆØ�zŠz˜#‰ŒˆØ�zŠz˜$ÑÔˆàÕ%Ð%Ð%Ø3�D—J’J˜q !¨F�JÑ3Ô3°DÑ9Ô9ˆEð�D—J’JØ�%‘˜%‘ Øð ñ ô ð �u‘*˜uÑ$ñ&ô &ˆEˆEð
 A�D—J’J˜q !¨S¸�JÑ@Ô@ÀÑFÔFˆEð�D—J’JØ�%‘˜%‘ Ø˜E™	Øð ñ ô ð �u‘*˜uÑ$ñ	&ô &ˆEõ 	˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 ó@  — t           j                             d¦  «        }t          dd|¬¦  «        }d}|                     d¦  «        }|                     d¦  «        }|                     |¦  «        }|                     |¦  «        }t          |||¦  «        }t          |||¦  «        }|                     dd|j        d	         ¦  «        }	|                     |	¦  «        }	||	z  }
||	z  } |                      ||
|¬
¦  «        |¦  «        }t          ||d¬¦  «         d S )Nr   r'   Fr5   r   rY   ç        rZ   r   ©r   r^   r_   )
r:   r;   r<   r   ra   r   Únormalr   rb   r   )rd   r   ÚrngrI   r   r   re   rL   ÚPitpÚpoly_coeffsr#   rf   rg   s                r   Útest_polynomial_reproductionz1_TestRBFInterpolator.test_polynomial_reproduction–   s  € õ Œi×#Ò# AÑ&Ô&ˆÝ�Q ¨SÐ1Ñ1Ô1ˆØˆà�JŠJ�r‰NŒNˆØ�zŠz˜"‰~Œ~ˆØ�JŠJ�q‰MŒMˆØ�zŠz˜$ÑÔˆå˜˜F BÑ'Ô'ˆÝ˜D &¨"Ñ-Ô-ˆà—j’j  c¨1¬7°1¬:Ñ6Ô6ˆØ—j’j Ñ-Ô-ˆà�‰OˆØ�{Ñ"ˆØ/�—
’
˜1˜a¨�
Ñ/Ô/°Ñ5Ô5ˆå˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 ó�  ‡— t           j                             d¦  «        }t          dd|¬¦  «        }d}d}|                     d¦  «        }|                     |¦  «        }|                     |¦  «        }|                     |¦  «        }t          |||¦  «        }	t          |||¦  «        }
|                     dd	|	j        d
         ¦  «        }|                     |¦  «        }|	|z  }|
|z  }|                      |||¬¦  «        }|j	        Šˆfd„}| 
                    |d|¦  «          ||¦  «        }t          ||d¬¦  «         d S )Nr   r'   Fr5   r   i	  rY   rr   rZ   r   rs   c                  ó@   •— |                      d¬¦  «          ‰| i |¤ŽS )Nr3   )Úmemory_budget)Úupdate)ÚargsÚkwargsÚce_reals     €r   Ú_chunk_evaluatorz<_TestRBFInterpolator.test_chunking.<locals>._chunk_evaluatorË   s,   ø€ Ø�MŠM¨ˆMÑ,Ô,Ð,Ø�7˜DÐ+ FÐ+Ð+Ð+r   r€   r^   r_   )r:   r;   r<   r   ra   r   rt   r   rb   r€   Úsetattrr   )rd   Úmonkeypatchr   ru   rI   r   ÚlargeNr   re   rL   rv   rw   r#   rf   Úinterpr€   rg   r   s                    @r   Útest_chunkingz"_TestRBFInterpolator.test_chunking¯   sU  ø€ õ
 Œi×#Ò# AÑ&Ô&ˆÝ�Q ¨SÐ1Ñ1Ô1ˆØˆàˆà�JŠJ�r‰NŒNˆØ�zŠz˜&Ñ!Ô!ˆà�JŠJ�q‰MŒMˆØ�zŠz˜$ÑÔˆå˜˜F BÑ'Ô'ˆÝ˜D &¨"Ñ-Ô-ˆà—j’j  c¨1¬7°1¬:Ñ6Ô6ˆØ—j’j Ñ-Ô-ˆà�‰OˆØ�{Ñ"ˆØ—’˜A˜q¨�Ñ0Ô0ˆØÔ)ˆð	,ð 	,ð 	,ð 	,ð 	,ð 	×Ò˜FÐ$6Ð8HÑIÔIÐIØ��t‘”ˆÝ˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c           	      óî  — t          ddt          j                             ¦   «         ¬¦  «        }|                     d¦  «        }|                     d¦  «        }|                     |¦  «        }|                     |¦  «        }|                     t          ||¦  «        t          |                     |d¬¦  «        |¦  «        g¦  «        j        } |  	                    ||¦  «        |¦  «        } |  	                    ||d d …df         ¦  «        |¦  «        } |  	                    ||d d …df         ¦  «        |¦  «        }t          |d d …df         |¦  «         t          |d d …df         |¦  «         d S )Nr'   Fr5   r3   r   )Úaxisr   )r   r:   r;   r<   ra   Ústackr1   ÚfliprA   rb   r   ©	rd   r   rI   r   re   r#   rf   rg   Úyitp3s	            r   Útest_vector_dataz%_TestRBFInterpolator.test_vector_dataÓ   s^  € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆà�JŠJ�s‰OŒOˆØ�zŠz˜#‰Œˆà�JŠJ�q‰MŒMˆØ�zŠz˜$ÑÔˆà�HŠHÕ'¨¨2Ñ.Ô.Ý'¨¯ª°¸¨Ñ(:Ô(:¸BÑ?Ô?ðAñ Bô BÜBCð 	
ð !�—
’
˜1˜aÑ Ô  Ñ&Ô&ˆØ&�—
’
˜1˜a    1 œgÑ&Ô& tÑ,Ô,ˆØ&�—
’
˜1˜a    1 œgÑ&Ô& tÑ,Ô,ˆå˜˜a˜a˜a ˜dœ UÑ+Ô+Ð+Ý˜˜a˜a˜a ˜dœ UÑ+Ô+Ð+Ð+Ð+r   c           	      ó†  — t          ddt          j                             ¦   «         ¬¦  «        }|                     d¦  «        }|                     d¦  «        }t	          |t          ¦  «        dt	          |d d …d d d…f         t          ¦  «        z  z   }t          |j        |||f¦  «        \  }}} |                      ||¦  «        |¦  «        } |                      ||j        ¦  «        |¦  «        } |                      ||j	        ¦  «        |¦  «        }t          |j        |¦  «         t          |j	        |¦  «         d S )Nr'   Fr5   r3   y              ð?rS   )r   r:   r;   r<   r1   Úmapra   rb   ÚrealÚimagr   rŠ   s	            r   Útest_complex_dataz&_TestRBFInterpolator.test_complex_dataè   s  € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆà�JŠJ�s‰OŒOˆØ�zŠz˜#‰Œˆå˜a¥Ñ$Ô$ rÕ*;¸A¸a¸a¸aÀÀÀ2À¸g¼JÍÑ*KÔ*KÑ'KÑKˆå˜œ a¨¨q \Ñ2Ô2‰
ˆˆ4�à �—
’
˜1˜aÑ Ô  Ñ&Ô&ˆØ%�—
’
˜1˜aœfÑ%Ô% dÑ+Ô+ˆØ%�—
’
˜1˜aœfÑ%Ô% dÑ+Ô+ˆå˜œ
 EÑ*Ô*Ð*Ý˜œ
 EÑ*Ô*Ð*Ð*Ð*r   c                 óà  — t          ddt          j                             ¦   «         ¬¦  «        }d|                     d¦  «        z  }d|                     d¦  «        z  }|                     |¦  «        }|                     |¦  «        }t          ||¦  «        }t          ||¦  «        } |                      ||d|¬¦  «        |¦  «        }|                     ||z
  dz  ¦  «        }	|	d	k     sJ ‚d S )
Nr   Fr5   r   rY   rm   r[   r'   ç-Cëâ6?)r   r:   r;   r<   ra   r$   rb   Úmean©
rd   rD   r   rI   r   re   r#   ÚytrueÚyitpÚmses
             r   Útest_interpolation_misfit_1dz1_TestRBFInterpolator.test_interpolation_misfit_1dû   sÚ   € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆàˆc�jŠj˜‰nŒnÑˆØ�—’˜B‘”Ñˆà�JŠJ�q‰MŒMˆØ�zŠz˜$ÑÔˆå˜a Ñ$Ô$ˆÝ! $¨Ñ+Ô+ˆØ;ˆt�zŠz˜!˜Q¨°FˆzÑ;Ô;¸DÑAÔAˆà�gŠg�t˜e‘| aÑ'Ñ(Ô(ˆØ�VŠ|ˆ|ˆ|ˆ|ˆ|ˆ|r   c                 óÔ  — t          ddt          j                             ¦   «         ¬¦  «        }|                     d¦  «        }|                     d¦  «        }|                     |¦  «        }|                     |¦  «        }t          ||¦  «        }t          ||¦  «        } |                      ||d|¬¦  «        |¦  «        }|                     ||z
  dz  ¦  «        }	|	dk     sJ ‚d S )Nr'   Fr5   r3   rm   r[   g-Cëâ6*?)r   r:   r;   r<   ra   r1   rb   r”   r•   s
             r   Útest_interpolation_misfit_2dz1_TestRBFInterpolator.test_interpolation_misfit_2d  sÐ   € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆà�JŠJ�s‰OŒOˆØ�zŠz˜#‰ŒˆØ�JŠJ�q‰MŒMˆØ�zŠz˜$ÑÔˆå˜a Ñ$Ô$ˆÝ! $¨Ñ+Ô+ˆØ;ˆt�zŠz˜!˜Q¨°FˆzÑ;Ô;¸DÑAÔAˆà�gŠg�t˜e‘| aÑ'Ñ(Ô(ˆØ�VŠ|ˆ|ˆ|ˆ|ˆ|ˆ|r   c           	      ón  — t           j                             d¦  «        }t          dd|¬¦  «        }d}d}d|                     ddd	¦  «        z  }d
|                     d¦  «        z  }t          |t           ¦  «        |                     d|d¦  «        z   }	|                     |¦  «        }|                     |	¦  «        }	t          ||¦  «        }
d}|D ]]} |                      ||	d||¬¦  «        |¦  «        }| 	                    | 
                    ||
z
  dz  ¦  «        ¦  «        }||k     rd} nŒ^|sJ ‚d S )Nr   r   Fr5   gš™™™™™É?gš™™™™™¹?r)   éüÿÿÿé   r   r3   rr   )r3   rZ   )r\   Ú	smoothingrD   r'   T)r:   r;   r<   r   Úlinspacer$   rt   ra   rb   Úsqrtr”   )rd   rD   r   ru   rI   ÚnoiseÚrmse_tolÚsmoothing_ranger   r#   r–   Úrmse_within_tolrŸ   ÚysmoothÚrmses                  r   Útest_smoothing_misfitz*_TestRBFInterpolator.test_smoothing_misfit   sV  € õ Œi×#Ò# AÑ&Ô&ˆÝ�Q ¨SÐ1Ñ1Ô1ˆàˆØˆØ˜bŸkšk¨"¨a°Ñ4Ô4Ñ4ˆàˆc�jŠj˜‰oŒoÑˆÝ˜a¥Ñ$Ô$ s§z¢z°#°u¸fÑ'EÔ'EÑEˆà�JŠJ�q‰MŒMˆØ�JŠJ�q‰MŒMˆÝ! ! RÑ(Ô(ˆØˆØ(ð 		ð 		ˆIð�d—j’jØ�1ØØ#Øð	 !ñ ô ð  !ñ	"ô "ˆGð
 —7’7˜2Ÿ7š7 G¨e¡O°aÑ#7Ñ8Ô8Ñ9Ô9ˆDØ�hŠˆØ"&�Ø�ð ð ÐÐˆÐÐr   c                 óT  — t           j                             d¦  «        }t          dd|¬¦  «        }d}|                     d¦  «        }t	          ||¦  «        }|                     dd|j        d         ¦  «        }||z  }|                     ¦   «         }	|	d	xx         dz  cc<   t          j        d
¦  «        }
d|
d	<   t          |j
        ||||f¦  «        \  }}}}t          |j
        |	|
f¦  «        \  }	}
 |                      ||	|
¬¦  «        |¦  «        }t          ||d¬¦  «         d S )Nr   r   Fr5   r'   rY   rr   rZ   r)   )rY   g     @�@©rŸ   r“   r_   )r:   r;   r<   r   r   rt   r   ÚcopyÚzerosrŽ   ra   rb   r   )rd   r   ru   rI   r   r   rL   rw   r#   Úy_with_outlierrŸ   r—   s               r   Útest_array_smoothingz)_TestRBFInterpolator.test_array_smoothing?  s-  € õ Œi×#Ò# AÑ&Ô&ˆÝ�Q ¨SÐ1Ñ1Ô1ˆØˆà�JŠJ�r‰NŒNˆÝ˜˜FÑ#Ô#ˆØ—j’j  c¨1¬7°1¬:Ñ6Ô6ˆØ�‰OˆàŸš™œˆØ�rÐÐÔ˜cÑ!ÐÐÑÝ”H˜U‘O”Oˆ	Øˆ	�"‰å" 2¤:°°1°kÀ1Ð/EÑFÔFÑˆˆ1ˆk˜1Ý$'¨¬
°^ÀYÐ4OÑ$PÔ$PÑ!ˆ˜	àAˆt�zŠz˜!˜^°yˆzÑAÔAÀ!ÑDÔDˆå˜˜a dÐ+Ñ+Ô+Ð+Ð+Ð+r   c                 óÞ  — t          ddt          j                             ¦   «         ¬¦  «                             d¦  «        }t	          |t          ¦  «        }t          ddt          j                             ¦   «         ¬¦  «                             d¦  «        }d}t          j        t          |¬¦  «        5   |                      ||¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr'   Fr5   r)   r   zExpected the second axis of `x`©Úmatch)	r   r:   r;   r<   r1   ÚpytestÚraisesÚ
ValueErrorrb   )rd   r#   Údr   r±   s        r   Ú$test_inconsistent_x_dimensions_errorz9_TestRBFInterpolator.test_inconsistent_x_dimensions_errorW  s  € õ �1˜u­2¬9×+@Ò+@Ñ+BÔ+BÐCÑCÔC×JÒJÈ2ÑNÔNˆÝ˜a¥Ñ$Ô$ˆÝ�1˜u­2¬9×+@Ò+@Ñ+BÔ+BÐCÑCÔC×JÒJÈ2ÑNÔNˆØ1ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	 ð 	 ØˆD�JŠJ�q˜!ÑÔ˜QÑÔÐð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s   Â5 C"Ã"C&Ã)C&c                 ó  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }d}t          j        t
          |¬¦  «        5  |                      ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r4   zExpected the first axis of `d`r°   ©r:   r    r¬   r²   r³   r´   rb   ©rd   r#   rµ   r±   s       r   Ú test_inconsistent_d_length_errorz5_TestRBFInterpolator.test_inconsistent_d_length_errora  sÁ   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆØ0ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	ð 	Ø�JŠJ�q˜!ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA6Á6A:Á=A:c                 óò   — t          j        ddd¦  «        }t          j        d¦  «        }d}t          j        t
          |¬¦  «        5  |                      ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r4   z"`y` must be a 2-dimensional array.r°   r¸   r¹   s       r   Útest_y_not_2d_errorz(_TestRBFInterpolator.test_y_not_2d_errorh  s´   € ÝŒK˜˜1˜aÑ Ô ˆÝŒH�Q‰KŒKˆØ4ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	ð 	Ø�JŠJ�q˜!ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA,Á,A0Á3A0c                 ó2  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }t          j        d¦  «        }d}t	          j        t          |¬¦  «        5  |                      |||¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r4   zExpected `smoothing` to ber°   rª   )r:   r    r¬   Úonesr²   r³   r´   rb   )rd   r#   rµ   rŸ   r±   s        r   Ú(test_inconsistent_smoothing_length_errorz=_TestRBFInterpolator.test_inconsistent_smoothing_length_erroro  sÒ   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆÝ”G˜A‘J”Jˆ	Ø,ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	2ð 	2Ø�JŠJ�q˜! yˆJÑ1Ô1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2ð 	2ð 	2s   Á&BÂBÂBc                 ó
  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }d}t          j        t
          |¬¦  «        5  |                      ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r4   z`kernel` must be one ofr°   Útestrl   r¸   r¹   s       r   Útest_invalid_kernel_name_errorz3_TestRBFInterpolator.test_invalid_kernel_name_errorw  sÅ   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆØ)ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	,ð 	,Ø�JŠJ�q˜! FˆJÑ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ó   ÁA8Á8A<Á?A<c                 ó0  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }t          D ]Y}|t          v rŒd}t          j        t          |¬¦  «        5  |                      |||¬¦  «         d d d ¦  «         n# 1 swxY w Y   ŒZd S )Nr   r   r4   z`epsilon` must be specifiedr°   rl   )	r:   r    r¬   r   r	   r²   r³   r´   rb   )rd   r#   rµ   rD   r±   s        r   Ú test_epsilon_not_specified_errorz5_TestRBFInterpolator.test_epsilon_not_specified_error~  sß   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆÝ ð 	0ð 	0ˆFØÕ)Ð)Ð)Øà1ˆEÝ”�z°Ð7Ñ7Ô7ð 0ð 0Ø—
’
˜1˜a¨�
Ñ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0øð	0ð 	0s   Á%B
Â
B	ÂB	c                 óD  — t          j        ddd¦  «        d d …d f         }t          j        ddd¦  «        }t          j        d¦  «        }d}t          j        t
          |¬¦  «        5   |                      ||¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r4   z"`x` must be a 2-dimensional array.r°   r¸   )rd   r#   r   rµ   r±   s        r   Útest_x_not_2d_errorz(_TestRBFInterpolator.test_x_not_2d_error‰  sÞ   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒK˜˜1˜aÑ Ô ˆÝŒH�Q‰KŒKˆØ4ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	 ð 	 ØˆD�JŠJ�q˜!ÑÔ˜QÑÔÐð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s   Á( BÂBÂBc                 ó
  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }d}t          j        t
          |¬¦  «        5  |                      ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   z#At least 2 data points are requiredr°   Úthin_plate_splinerl   r¸   r¹   s       r   Ú"test_not_enough_observations_errorz7_TestRBFInterpolator.test_not_enough_observations_error‘  sÆ   € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆØ5ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	9ð 	9Ø�JŠJ�q˜!Ð$7ˆJÑ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9ð 	9ð 	9rÃ   c           
      óV  — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }t          j        ¦   «         D ]`\  }}|dk    rUd|› �}t          j        t          |¬¦  «        5  |                      ||d||dz
  ¬¦  «         d d d ¦  «         n# 1 swxY w Y   Œad S )Nr   r   r4   z`degree` should not be below r°   rZ   ©r\   rD   r   )	r:   r    r¬   r
   Úitemsr²   ÚwarnsÚWarningrb   )rd   r#   rµ   rD   Údegr±   s         r   Útest_degree_warningz(_TestRBFInterpolator.test_degree_warning˜  s  € ÝŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆÝ.Ô4Ñ6Ô6ð 	Oð 	O‰KˆF�Cà�aŠxˆxØ=¸Ð=Ð=�Ý”\¥'°Ð7Ñ7Ô7ð Oð OØ—J’J˜q !¨S¸ÈÈAÉ�JÑNÔNÐNðOð Oð Oñ Oô Oð Oð Oð Oð Oð Oð Oøøøð Oð Oð Oð Oøð		Oð 	Os   Á3BÂB!	Â$B!	c                 óÔ   — t          j        ddd¦  «        d d …d f         }t          j        d¦  «        }t          j        ¦   «         D ]\  }}|                      ||d|d¬¦  «         Œ d S )Nr   r   r4   rZ   rS   rÌ   )r:   r    r¬   r
   rÍ   rb   )rd   r#   rµ   rD   rJ   s        r   Útest_minus_one_degreez*_TestRBFInterpolator.test_minus_one_degree¢  sx   € åŒK˜˜1˜aÑ Ô     D Ô)ˆÝŒH�Q‰KŒKˆÝ,Ô2Ñ4Ô4ð 	Dð 	D‰IˆF�AØ�JŠJ�q˜! S°ÀˆJÑCÔCÐCÐCð	Dð 	Dr   z	jax.numpyz+solve raises no error for a singular matrix)ÚreasonÚcupyc                 ó  — |                      ddgddgddgg¦  «        }|                      g d¢¦  «        }d}t          j        t          |¬¦  «        5   |                      ||d¬¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nr]   rr   rZ   )rr   rr   rr   zdoes not have full column rankr°   rÉ   rl   )ra   r²   r³   r   rb   )rd   r   r#   rµ   r±   s        r   Útest_rank_errorz$_TestRBFInterpolator.test_rank_error©  sÞ   € ð
 �JŠJ˜˜c˜
 S¨# J°°c°
Ð;Ñ<Ô<ˆØ�JŠJ���Ñ'Ô'ˆØ0ˆÝŒ]�;¨eÐ4Ñ4Ô4ð 	<ð 	<Ø8ˆD�JŠJ�q˜!Ð$7ˆJÑ8Ô8¸Ñ;Ô;Ð;ð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð 	<ð 	<s   Á"BÂBÂ	Bc                 óØ   — dD ]f}|                      d|f¦  «        }|                     d|j        ¬¦  «        } |                      ||d¬¦  «        |¦  «        }t	          ||¦  «         Œgd S )N)r   r'   r   r   )r   )ÚdtypeÚlinearrl   )r¬   r¾   Úfloat64rb   r   )rd   r   Údimr#   rµ   Úfs         r   Útest_single_pointz&_TestRBFInterpolator.test_single_point´  s}   € ð ð 	"ð 	"ˆCØ—’˜!˜S˜Ñ"Ô"ˆAØ—’˜ B¤J�Ñ/Ô/ˆAØ1�—
’
˜1˜a¨�
Ñ1Ô1°!Ñ4Ô4ˆAÝ˜A˜qÑ!Ô!Ð!Ð!ð		"ð 	"r   c                 óü  — t          ddt          j                             d¦  «        ¬¦  «        }d|                     d¦  «        z  }d|                     d¦  «        z  }|                     |¦  «        |                     |¦  «        }}t          ||¦  «        }|                      ||¦  «        } ||¦  «        } t          j        t          j	        |¦  «        ¦  «        |¦  «        }t          ||d¬¦  «         d S )	Nr   Fl   eä r5   r   rY   g¼‰Ø—²Òœ<r_   )r   r:   r;   r<   ra   r$   rb   ÚpickleÚloadsÚdumpsr   )	rd   r   rI   r   re   r#   r„   rf   rg   s	            r   Útest_pickleablez$_TestRBFInterpolator.test_pickleable½  sÜ   € õ �Q ­R¬Y×-BÒ-BÀ:Ñ-NÔ-NÐOÑOÔOˆàˆc�jŠj˜‰nŒnÑˆØ�—’˜B‘”ÑˆØ—*’*˜Q‘-”- §¢¨DÑ!1Ô!1ˆ4ˆå˜a Ñ$Ô$ˆà—’˜A˜qÑ!Ô!ˆà��t‘”ˆØ2•”�Vœ\¨&Ñ1Ô1Ñ2Ô2°4Ñ8Ô8ˆå˜˜u¨5Ð1Ñ1Ô1Ð1Ð1Ð1r   N)#Ú__name__Ú
__module__Ú__qualname__r²   ÚmarkÚparametrizeÚsortedr	   rh   rj   r   rp   rx   Úslowr…   rŒ   r‘   r™   r›   r¨   r®   r¶   rº   r¼   r¿   rÂ   rÅ   rÇ   rÊ   rÑ   rÓ   Úskip_xp_backendsr×   rÞ   rã   © r   r   rW   rW   V   sÉ  € € € € € Ø„[×Ò˜X v vÐ.>Ñ'?Ô'?Ñ@Ô@ð1ð 1ñ AÔ@ð1ð „[×Ò˜X v vÐ.>Ñ'?Ô'?Ñ@Ô@ð1ð 1ñ AÔ@ð1ð „[×Ò˜X v v¨jÑ'9Ô'9Ñ:Ô:ð1ð 1ñ ;Ô:ð1ð<1ð 1ð 1ð2 „[Ôð!1ð !1ñ Ôð!1ðF,ð ,ð ,ð*+ð +ð +ð& „[×Ò˜X v v¨jÑ'9Ô'9Ñ:Ô:ðð ñ ;Ô:ðð$ „[×Ò˜X v v¨jÑ'9Ô'9Ñ:Ô:ðð ñ ;Ô:ðð" „[×Ò˜X v v¨jÑ'9Ô'9Ñ:Ô:ðð ñ ;Ô:ðð<,ð ,ð ,ð0 ð  ð  ðð ð ðð ð ð2ð 2ð 2ð,ð ,ð ,ð	0ð 	0ð 	0ð ð  ð  ð9ð 9ð 9ðOð Oð OðDð Dð Dð Ð�kÐ*WÐXÑXÔXØÐ�fÐ%RÐSÑSÔSð<ð <ñ TÔSñ YÔXð<ð"ð "ð "ð2ð 2ð 2ð 2ð 2r   rW   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )Ú TestRBFInterpolatorNeighborsNonec                 ó   — t          |i |¤ŽS ©N©r   ©rd   r}   r~   s      r   rb   z&TestRBFInterpolatorNeighborsNone.buildÒ  s   € Ý Ð/¨Ð/Ð/Ð/r   c                 ó  — t          ddt          j                             ¦   «         ¬¦  «        }d}d}d|                     d¦  «        z  }d|                     d¦  «        z  }t	          |t          ¦  «        } |                      ||||¬¦  «        |¦  «        }t          ||¦  «        }t          ||¦  «        }	|	                     t          j         	                    ||d ¬¦  «        d	         ¦  «        }
t          ||
d
¬¦  «         d S )Nr   Fr5   r   ç    „×—ArY   ©r   rŸ   ©Úrcondr   r^   r_   )r   r:   r;   r<   r$   rb   r   rB   r?   Úlstsqr   ©rd   rI   r   rŸ   r   re   r#   rf   rL   rv   rg   s              r   Útest_smoothing_limit_1dz8TestRBFInterpolatorNeighborsNone.test_smoothing_limit_1dÕ  s  € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆàˆØˆ	àˆc�jŠj˜‰nŒnÑˆØ�—’˜B‘”ÑˆÝ˜a¥Ñ$Ô$ˆð�—
’
ØˆqØØð ñ ô ð ñ	ô ˆõ ˜˜FÑ#Ô#ˆÝ˜D &Ñ)Ô)ˆØ—’�œŸš¨¨A°T˜Ñ:Ô:¸1Ô=Ñ>Ô>ˆå˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 ó  — t          ddt          j                             ¦   «         ¬¦  «        }d}d}|                     d¦  «        }|                     d¦  «        }t	          |t          ¦  «        } |                      ||||¬¦  «        |¦  «        }t          ||¦  «        }t          ||¦  «        }	|	                     t          j         	                    ||d ¬¦  «        d	         ¦  «        }
t          ||
d
¬¦  «         d S )Nr'   Fr5   r   rô   r3   rõ   rö   r   r^   r_   )r   r:   r;   r<   r1   rb   r   rB   r?   rø   r   rù   s              r   Útest_smoothing_limit_2dz8TestRBFInterpolatorNeighborsNone.test_smoothing_limit_2dí  sø   € õ �Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆàˆØˆ	à�JŠJ�s‰OŒOˆØ�zŠz˜#‰Œˆå˜a¥Ñ$Ô$ˆð�—
’
ØˆqØØð ñ ô ð ñ	ô ˆõ ˜˜FÑ#Ô#ˆÝ˜D &Ñ)Ô)ˆØ—’�œŸš¨¨A°T˜Ñ:Ô:¸1Ô=Ñ>Ô>ˆå˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   N)rä   rå   ræ   rb   rú   rü   rì   r   r   rî   rî   Ð  sA   € € € € € ð0ð 0ð 0ð1ð 1ð 1ð01ð 1ð 1ð 1ð 1r   rî   Tzneighbors not None uses KDTree)Únp_onlyrÔ   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestRBFInterpolatorNeighbors20c                 ó"   — t          |i |¤ddi¤ŽS )NÚ	neighborsrž   rñ   rò   s      r   rb   z$TestRBFInterpolatorNeighbors20.build
  s    € Ý Ð=¨Ð=Ð=¸"Ð=Ð=Ð=Ð=r   c           	      ó(  — t          ddt          j                             ¦   «         ¬¦  «        }|                     d¦  «        }|                     d¦  «        }t	          |t          ¦  «        } |                      ||¦  «        |¦  «        }g }t          |¦  «        }|D ]_}|                     |d¦  «        \  }	}
|                      t          ||
         ||
         ¦  «        |d          ¦  «        d         ¦  «         Œ`t          ||d¬¦  «         d S )	Nr'   Fr5   r3   rž   r   r^   r_   )r   r:   r;   r<   r1   rb   r   ÚqueryÚappendr   r   )rd   rI   r   re   r#   rf   rg   ÚtreeÚxirJ   Únbrs              r   Ú#test_equivalent_to_rbf_interpolatorzBTestRBFInterpolatorNeighbors20.test_equivalent_to_rbf_interpolator  sü   € Ý�Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆà�JŠJ�s‰OŒOˆØ�zŠz˜#‰Œˆå˜a¥Ñ$Ô$ˆà �—
’
˜1˜aÑ Ô  Ñ&Ô&ˆàˆÝ�q‰zŒzˆØð 	Gð 	GˆBØ—Z’Z  BÑ'Ô'‰FˆAˆsØ�LŠLÐ8�¨¨3¬°°3´Ñ8Ô8¸¸D¼ÑBÔBÀ1ÔEÑFÔFÐFÐFå˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 ó8  — t          ddt          j                             d¦  «        ¬¦  «        }|                     d¦  «        }|                     d¦  «        }t	          |t          ¦  «        }|                      ||¦  «        }d„ }t          d|||¦  «         d S )Nr'   Fr   r5   r3   c                 ó   —  ||¦  «         d S rð   rì   )rJ   r„   r   s      r   Ú	worker_fnzBTestRBFInterpolatorNeighbors20.test_concurrency.<locals>.worker_fn*  s   € ØˆF�2‰JŒJˆJˆJˆJr   r)   )r   r:   r;   r<   r1   rb   r   )rd   rI   r   re   r#   r„   r  s          r   Útest_concurrencyz/TestRBFInterpolatorNeighbors20.test_concurrency  s“   € õ �Q ­R¬Y×-BÒ-BÀ1Ñ-EÔ-EÐFÑFÔFˆØ�JŠJ�s‰OŒOˆØ�zŠz˜#‰Œˆå˜a¥Ñ$Ô$ˆà—’˜A˜qÑ!Ô!ˆð	ð 	ð 	õ 	   I¨v°tÑ<Ô<Ð<Ð<Ð<r   N)rä   rå   ræ   rb   r  r  rì   r   r   rÿ   rÿ     sA   € € € € € ð>ð >ð >ð1ð 1ð 1ð$=ð =ð =ð =ð =r   rÿ   c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestRBFInterpolatorNeighborsInfc                 ó6   — t          |i |¤dt          j        i¤ŽS )Nr  )r   r:   Úinfrò   s      r   rb   z%TestRBFInterpolatorNeighborsInf.build4  s"   € Ý ÐA¨ÐAÐA½"¼&ÐAÐAÐAÐAr   c                 ó€  — t          ddt          j                             ¦   «         ¬¦  «        }d|                     d¦  «        z  }d|                     d¦  «        z  }t	          |t          ¦  «        } |                      ||¦  «        |¦  «        } t          ||¦  «        |¦  «        }t          ||d¬¦  «         d S )Nr   Fr5   r   rY   r^   r_   )r   r:   r;   r<   r$   rb   r   r   )rd   rI   r   re   r#   rf   rg   s          r   r  zCTestRBFInterpolatorNeighborsInf.test_equivalent_to_rbf_interpolator7  s¬   € Ý�Q ­R¬Y×-BÒ-BÑ-DÔ-DÐEÑEÔEˆàˆc�jŠj˜‰nŒnÑˆØ�—’˜B‘”Ñˆå˜a¥Ñ$Ô$ˆØ �—
’
˜1˜aÑ Ô  Ñ&Ô&ˆØ%•  1Ñ%Ô% dÑ+Ô+ˆå˜˜u¨4Ð0Ñ0Ô0Ð0Ð0Ð0r   N)rä   rå   ræ   rb   r  rì   r   r   r  r  0  s5   € € € € € ðBð Bð Bð
1ð 
1ð 
1ð 
1ð 
1r   r  )$rà   r²   Únumpyr:   Únumpy.linalgr   Úscipy._lib._array_apir   r   Úscipy.stats.qmcr   Úscipy.spatialr   Úscipy.interpolate._rbfinterpr   r	   r
   r   r   Úscipy.interpolater   Úscipy._lib._testutilsr   rç   rë   r   r$   r1   rQ   rè   ré   rU   rW   rî   rÿ   r  rì   r   r   ú<module>r     sz  ðØ €€€Ø €€€Ø Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ DØ "Ð "Ð "Ð "Ð "Ð "Ø !Ð !Ð !Ð !Ð !Ð !ðð ð ð ð ð ð ð ð ð ð ð ð ð ð 1Ð 0Ð 0Ð 0Ð 0Ð 0Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9à”;Ô/Ð ð  "ð 4ð 4ð 4ð 4ðð ð ð	ð 	ð 	ðð ð ð> „×Ò˜ 6 6¨*Ñ#5Ô#5Ñ6Ô6ð:ð :ñ 7Ô6ð:ðw2ð w2ð w2ð w2ð w2ñ w2ô w2ð w2ðt Ð�?Ñ#Ô#ð31ð 31ð 31ð 31ð 31Ð';ñ 31ô 31ñ $Ô#ð31ðl Ð˜$Ð'GÐHÑHÔHð%=ð %=ð %=ð %=ð %=Ð%9ñ %=ô %=ñ IÔHð%=ðP Ð˜$Ð'GÐHÑHÔHð1ð 1ð 1ð 1ð 1Ð&Fñ 1ô 1ñ IÔHð1ð 1ð 1r   