
    Ug=v                         d dl Zd dlZd dlmZ d dlZd dlmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZ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!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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZW d dlXmYZY d dlZm[Z[ ej\        ]                    d          Z^e^_                    d          Z`ej\        a                    e`          5 Zb ejc        eb          Zdddd           n# 1 swxY w Y   e^_                    d          Zeej\        a                    ee          5 Zb ejc        eb          Zfddd           n# 1 swxY w Y   e^_                    d	          Zgej\        a                    eg          5 Zb ejc        eb          Zhddd           n# 1 swxY w Y   d
 Zid Zjd Zkd Zld Zmd Znd Zod Zpd Zqd Zrd Zsd Ztd Zud Zvd Zwd Zxd Zyd Zzd Z{d Z|d Z}d Z~d  Zd! Zd" Zd# Zd$ Zd% Zd& Zd' Zd( Zd) Zd* Zd+ Zd, Zd- Zd. Zd/ Zd0 Zd1 Zd2 Zd3 Zd4 Zd5 Zd6 Zd7 Zg  eieqd8d9d:d;<           eierd=d>d?d;<           eierd@d>d?dA<           eieud=d>d?dBdCD           eieud@d>d?dAdCD           eiesd=d>d?dBdCD           eiesd@d>d?dEdCD           eie}d=d>d?dF<           eie}d@d>d?dG<           eie~d=d>d?dH<           eie~d@d>d?dG<           eietd=d>d:dHdCD           eietd@d>d:dIdCD           eievd=d>d:dHdCD           eievd@d>d:dIdCD           eie)dJd>d?dK<           eie)dJd>d?dK<           eie)dLd>d?dM<           eie*dNd9dOdP<           eie*dQd9dOdM<           eie*dRd9dOdH<           eie*dSd9dOdT<           eie+dUd9d:dV<           eie?dNd9dOdP<           eie?dQd9dOdW<           eie?dRd9dOdH<           eie?dSd9dOdT<           eie@dUd9d:dV<           eiedUd9dXdY<           eieAdZd[d:d\<           eiedZd[dXd\<           eieBdZd]dOd\<           eiedZd]d^d\<           eied_d>d?dK<           eied`d>d?dM<           eie>dad[d:d\<           eiedad[dXd\<           eieHdbd[d:dc<           eiedbd[dXdc<           eieIddded?df<           eieddded:dc<           eiedgdhd            eie(did dh           eie(didjdh           eie(dkd dhdG<           eie(dkdjdhdK<           eie(dld dhdm<           eie(dldjdhdm<           eie(dnd dhdm<           eie(dndjdhdo<           eieldpd dh           eiemdqd>d?do<           eiendrd dh           eieodsd>d?do<           eie7dtd dh           eie7dtdjdhdK<           eie8dtd d?dP<           eie7dud dh           eie7dudjdh           eie8dud d?dv<           eie7dwd dh           eie7dwdjdhdK<           eie8dwd d?           eie9dxd dh           eie:dyd dh           eie:dzd dhd{ |           eie;d}dhd?dK<           eie;d}d~d?d\<           eie<dd dhdK<           eie<dd dhdK<           eie<dd dh           eie=dd>d?           eie=dd>d?do<           eie"dd dh           eie"dd dh           eie"dd dh           eie"dd dh           eie"dd dhd<           eie"dd dhdv<           eie"ddjdhd<           eie"ddjdhd<           eie"ddjdhd<           eie"ddjdhd<           eie"ddjdhd<           eie"ddjdhdG<           eie#dd d?d<           eie#dd d?d<           eie#dd d?d<           eie#dd d?d<           eie#dd d?d<           eie#dd d?           eie$dd>dOd<           eie$dd>dOdG<           eie$dd>dOdG<           eie$dd>dOd<           eiedd>dOdK<           eiedd>dOdG<           eiedd>dOdG<           eiedd>dOd<           eie%dd>d:dK<           eie%dd>d:dG<           eie%dd>d:dv<           eie%dd>d:d;<           eiedd>d:dK<           eiedd>d:dG<           eiedd>d:dv<           eiedd>d:d;<           eiedded?d\<           eiedded:d\<           eiedd>d?dG<           eiedd>d?           eiedd>d?           eiedd>d:dG<           eiedd>d:           eiedd>d:           eiedd>d?dH<           eiedd>d?d<           eiedd>d?d           eiedd9d:dG<           eiedd9d:d           eiedd dh           eiedd d?           eiedd>d?d<           eieddd?dd           eiedd>d?d<           eieddd?d<           eiedd>d?d<           eieddd?dd           eiedd>d?d<           eieddd?d<           eiedd>d?d<           eieddd?d<           eiedd>d?d<           eieddd?d<           eiedd>d?d<           eieddd?d<           eiedd>d?dK<           eieddd?dK<           eiedd>d?d;<           eieddd?d<           eiedd>d?d<           eie dd>d?d<           eie ddd?d<           eie dd>d?d<           eie ddd?d<           eie!dd>d?d<           eie!ddd?d<           eie!dd>d?d<           eie!ddd?d<           eiedd>d?d<           eiedd>d?d<           eiedd>d?d<           eieddd?d<           eiedd>d?d<           eieddd?d<           eiedd>d?dc<           eieddd?dc<           eiepdd dhd |           eiepdd dhd |           eiepdd dhd |           eiepdd dhd |           eie&dd>d?d;<           eie&dd>d?do<           eie&dd>d?d;<           eie'dd>d:d<           eie'dd>d:do<           eie'dd>d:do<           eiedd>d?dEdĬŦ           eiedd>d?dƬ<           eiedd>d?           eiedd>d?dǬ           eiedd>d:dP<           eiedd>d:           eieCdd[d:dɬ<           eieCdd[d:dd̬Ŧ           eiedddddЄ dф d҄ dӄ fԦ           eiedd>d?dK<           eiedd>d?d׬<           eieJdd>d?dB<           eieJdd>d?dڬ<           eie2dd>d?dܬ<           eie3dd9d:dܬ<           eie3dd9d:dܬ<           eie3dd9d:dܬ<           eie3dd9d:dܬ<           eie3dd9d:d<           eie3dd9d:d<           eie4dd9d:dܬ<           eie4dd9d:dܬ<           eie4dd9d:dܬ<           eie4dd9d:dܬ<           eie4dd9d:dܬ<           eie5dd9d:d<           eie5dd9d:d<           eie5dd9d:d<           eie5dd9d:dܬ<           eie5dd9d:dܬ<           eie6dddXddd f          Zej                            dee          d             Z ejeKdd>d?dKdK           ejeLdd>d:dKdK           ejewdd9d:ddK           ejexdd9dXddK           ejeydd9d:ddK           ejezdd9dXddK           eje{dd9dOddK           eje|dd9d^ddK          gZej                            dee          d             Z eke1dd>d?           eke0dd dh           eke.d d>d?           ekedd>ddo<           ekedd>ddo<           eke$dd>d?d<           eke%dd>d?d;<           ekeTddd^ddK           ekeSdddOddK           ekeWdd9d:d;<          g
Zej                            dee          d             Zej        fd	ZdS (
      N)suppress_warnings)Plpnlpmnlpmvlqnlqmnsph_harmeval_legendreeval_hermiteeval_laguerreeval_genlaguerrebinomcbrtexpm1log1pzetajnjvjvpynyvyvpivivpknkvkvpgammagammalngammainc	gammainccgammaincinvgammainccinvdigammabetabetainc
betaincinvpochellipe	ellipeincellipkellipkm1	ellipkincelliprcelliprdelliprfelliprgelliprjerferfcerfinverfcinvexp1expiexpnbdtrikbtdtrbtdtribtdtriabtdtribchndtrgdtrgdtrcgdtrixgdtribnbdtrikpdtrikowens_t	mathieu_a	mathieu_bmathieu_cemmathieu_semmathieu_modcem1mathieu_modsem1mathieu_modcem2mathieu_modsem2
ellip_harmellip_harm_2spherical_jnspherical_ynwright_bessel)IntegrationWarning)FuncDatazscipy.special.tests.dataz	boost.npzzgsl.npzz	local.npzc                 f    |                     d|           t          | t          |         g|R i |S Ndataname)
setdefaultrU   DATASETS_BOOSTfuncrX   akws       \/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/special/tests/test_data.pydatar`   ,   ;    MM*h'''D.2=Q==="===    c                 f    |                     d|           t          | t          |         g|R i |S rW   )rY   rU   DATASETS_GSLr[   s       r_   data_gslre   1   s;    MM*h'''D,x0;1;;;;;;rb   c                 f    |                     d|           t          | t          |         g|R i |S rW   )rY   rU   DATASETS_LOCALr[   s       r_   
data_localrh   6   ra   rb   c                 &    t          | | z            S N)r+   ks    r_   ellipk_rm   ;       !A#;;rb   c                 (    t          | ||z            S rj   )r-   frl   s     r_   
ellipkinc_rr   ?       Q!rb   c                 &    t          | | z            S rj   )r)   rk   s    r_   ellipe_ru   C   rn   rb   c                 (    t          | ||z            S rj   )r*   rp   s     r_   
ellipeinc_rw   G   rs   rb   c                 "    t          | d          S N      ?)r   )xs    r_   zeta_r|   K   s    2;;rb   c                 T    t          ||                     t                    |          S rj   )r   astypeint)numur{   s      r_   assoc_legendre_p_boost_r   O   s    BIIcNNA&&&rb   c                 $    t          d| |          S Nr   )r   )r   r{   s     r_   legendre_p_via_assoc_r   S   s    2q>>rb   c                 `    t          |                     d          |          d         d         S Nlr   )r   r~   nr{   s     r_   lpn_r   V   &    qxx}}a  #B''rb   c                 `    t          |                     d          |          d         d         S r   )r   r~   r   s     r_   lqn_r   Y   r   rb   c                 <    t          d| |          d         d         S Nr   )r   r   )r   r   s     r_   legendre_p_via_lpmnr   \       1a==D!!rb   c                 <    t          d| |          d         d         S r   )r   r   s     r_   legendre_q_via_lqmnr   _   r   rb   c                 P    t          | ||dz  t          j        z            d         S N   r   )rI   nppimqr{   s      r_   mathieu_ce_radr   b   #    q!QsU25[))!,,rb   c                 P    t          | ||dz  t          j        z            d         S r   )rJ   r   r   r   s      r_   mathieu_se_radr   f   r   rb   c                 t    t          | ||          d         t          j        t          j        dz            z  S Nr      )rK   r   sqrtr   r   s      r_   mathieu_mc1_scaledr   j   s0     1a##A&q)9)999rb   c                 t    t          | ||          d         t          j        t          j        dz            z  S r   )rL   r   r   r   r   s      r_   mathieu_ms1_scaledr   p   .    1a##A&q)9)999rb   c                 t    t          | ||          d         t          j        t          j        dz            z  S r   )rM   r   r   r   r   s      r_   mathieu_mc2_scaledr   t   r   rb   c                 t    t          | ||          d         t          j        t          j        dz            z  S r   )rN   r   r   r   r   s      r_   mathieu_ms2_scaledr   x   r   rb   c                 H    t          |                     d          |          S Nr   r
   r~   r   s     r_   eval_legendre_ldr   {       #***rb   c                 H    t          |                     d          |          S Ndr   r   s     r_   eval_legendre_ddr   ~   r   rb   c                 H    t          |                     d          |          S r   )r   r~   r   s     r_   eval_hermite_ldr          q)))rb   c                 H    t          |                     d          |          S r   r   r~   r   s     r_   eval_laguerre_ldr      r   rb   c                 H    t          |                     d          |          S r   r   r   s     r_   eval_laguerre_ddr      r   rb   c                 J    t          |                     d          ||          S r   r   r~   r   r]   r{   s      r_   eval_genlaguerre_lddr          AHHSMM1a000rb   c                 J    t          |                     d          ||          S r   r   r   s      r_   eval_genlaguerre_dddr      r   rb   c                 *    t          d| z
  ||          S N   )r:   yr   ps      r_   bdtrik_compr      s    !A#q!rb   c                 *    t          | |d|z
            S r   )r<   )r]   br   s      r_   btdtri_compr      s    !Q!rb   c                 *    t          d| z
  ||          S r   )r=   )r   r   r{   s      r_   btdtria_compr          1Q31rb   c                 *    t          | d|z
  |          S r   )r>   )r]   r   r{   s      r_   btdtrib_compr      s    1ac1rb   c                 $    t          d| |          S ry   )r@   r   r{   s     r_   gdtr_r      s    Q??rb   c                 $    t          d| |          S ry   )rA   r   s     r_   gdtrc_r      s    arb   c                 $    t          d| |          S ry   rB   r   r   s     r_   gdtrix_r          #q!rb   c                 *    t          d| d|z
            S Nrz   r   r   r   s     r_   gdtrix_compr      s    #q!A#rb   c                 $    t          d| |          S ry   rC   r   s     r_   gdtrib_r      r   rb   c                 *    t          dd| z
  |          S r   r   r   s     r_   gdtrib_compr      s    #qsArb   c                 *    t          d| z
  ||          S r   )rD   r   s      r_   nbdtrik_compr      r   rb   c                 (    t          d| z
  |          S r   )rE   )r   r   s     r_   pdtrik_compr      s    !A#q>>rb   c                 (    dt          | |          z  S ry   r(   zr   s     r_   poch_r      s    arb   c                 *    dt          | |           z  S ry   r   r   s     r_   
poch_minusr      s    a!rb   c                 H    t          |                     d          |          S r   )rQ   r~   r   s     r_   spherical_jn_r      r   rb   c                 H    t          |                     d          |          S r   )rR   r~   r   s     r_   spherical_yn_r      r   rb   c                 B    t          | |||          }|j        |j        fS rj   )r	   realimag)r   r   thetaphir   s        r_   	sph_harm_r      s$    Auc""AFAFrb   c                 H    t          | d|z  z             }|j        |j        fS N              ?)r   r   r   r{   r   r   s      r_   cexpm1r      #    a"Q$hA616>rb   c                 H    t          | d|z  z             }|j        |j        fS r   )r   r   r   r   s      r_   clog1pr     r  rb   z%assoc_legendre_p_ipp-assoc_legendre_p)r   r   r      gdy=)rtolzlegendre_p_ipp-legendre_p)r   r   r   z%legendre_p_large_ipp-legendre_p_largeg [n;=gvIh%,=F)r  
vectorizedg7QU=gt0=gvIh%L=g+=g-=zbeta_exp_data_ipp-beta_exp_datagvIh%<=zbeta_med_data_ipp-beta_med_datag-a=z%ibeta_small_data_ipp-ibeta_small_data   g [n<zibeta_data_ipp-ibeta_dataz!ibeta_int_data_ipp-ibeta_int_dataz%ibeta_large_data_ipp-ibeta_large_datag|=z!ibeta_inv_data_ipp-ibeta_inv_datagh㈵>gvIh%\=   gHת>z#ibeta_inva_data_ipp-ibeta_inva_data)r   r   r   g:0y5>)r   r   r      zbinomial_data_ipp-binomial_dataz+binomial_large_data_ipp-binomial_large_dataz,binomial_quantile_ipp-binomial_quantile_dataz>negative_binomial_quantile_ipp-negative_binomial_quantile_datag&.1>z*poisson_quantile_ipp-poisson_quantile_data)r   r   gA:)>zcbrt_data_ipp-cbrt_datar   zdigamma_data_ipp-digamma_datay                z%digamma_neg_data_ipp-digamma_neg_dataz'digamma_root_data_ipp-digamma_root_datagV瞯<z)digamma_small_data_ipp-digamma_small_datag+=zellint_k_data_ipp-ellint_k_datazellint_f_data_ipp-ellint_f_datazellint_e_data_ipp-ellint_e_dataz!ellint_e2_data_ipp-ellint_e2_datazerf_data_ipp-erf_dataz!erf_large_data_ipp-erf_large_datag+&=z!erf_small_data_ipp-erf_small_datazerf_inv_data_ipp-erf_inv_datazerfc_inv_data_ipp-erfc_inv_dataz'erfc_inv_big_data_ipp-erfc_inv_big_datac                     | dk    S r    ss    r_   <lambda>r  L  
    QU rb   )param_filterzexpint_1_data_ipp-expint_1_datar   zexpinti_data_ipp-expinti_dataz+expinti_data_double_ipp-expinti_data_doublez'expinti_data_long_ipp-expinti_data_longz'expint_small_data_ipp-expint_small_datazexpint_data_ipp-expint_dataztest_gamma_data_ipp-near_0ztest_gamma_data_ipp-near_1ztest_gamma_data_ipp-near_2ztest_gamma_data_ipp-near_m10ztest_gamma_data_ipp-near_m55gYLɞ=ztest_gamma_data_ipp-factorialsg&.!>g|=g|=z'igamma_small_data_ipp-igamma_small_datag+<z#igamma_med_data_ipp-igamma_med_dataz#igamma_int_data_ipp-igamma_int_dataz#igamma_big_data_ipp-igamma_big_datag-q=z%igamma_inva_data_ipp-igamma_inva_dataz3tgamma_delta_ratio_data_ipp-tgamma_delta_ratio_dataz1tgamma_delta_ratio_int_ipp-tgamma_delta_ratio_intz3tgamma_delta_ratio_int2_ipp-tgamma_delta_ratio_int2zhermite_ipp-hermitezlaguerre2_ipp-laguerre2zhyp2f1 insufficiently accurate.)knownfailurezlaguerre3_ipp-laguerre3z%log1p_expm1_data_ipp-log1p_expm1_datazbessel_i_data_ipp-bessel_i_data)r   r   gP7xf )r  atolz'bessel_i_int_data_ipp-bessel_i_int_datag&.>z3bessel_i_prime_int_data_ipp-bessel_i_prime_int_datagt@=gYnz'bessel_j_int_data_ipp-bessel_j_int_dataz+bessel_j_large_data_ipp-bessel_j_large_datagp~=zbessel_j_data_ipp-bessel_j_dataz3bessel_j_prime_int_data_ipp-bessel_j_prime_int_dataz7bessel_j_prime_large_data_ipp-bessel_j_prime_large_datagdy=z'bessel_k_int_data_ipp-bessel_k_int_datazbessel_k_data_ipp-bessel_k_dataz3bessel_k_prime_int_data_ipp-bessel_k_prime_int_datagt =z+bessel_k_prime_data_ipp-bessel_k_prime_datag(3=z#bessel_y01_data_ipp-bessel_y01_dataz!bessel_yn_data_ipp-bessel_yn_dataz!bessel_yv_data_ipp-bessel_yv_datag|=z-bessel_yv_prime_data_ipp-bessel_yv_prime_datazzeta_data_ipp-zeta_datac                     | dk    S r   r  r  s    r_   r  r    r  rb   zzeta_neg_data_ipp-zeta_neg_datac                     | dk    S r   r  r  s    r_   r  r    r  rb   z!zeta_1_up_data_ipp-zeta_1_up_datac                     | dk    S r   r  r  s    r_   r  r    r  rb   z'zeta_1_below_data_ipp-zeta_1_below_datac                     | dk    S r   r  r  s    r_   r  r    r  rb   z-gamma_inv_small_data_ipp-gamma_inv_small_dataz!gamma_inv_data_ipp-gamma_inv_dataz)gamma_inv_big_data_ipp-gamma_inv_big_datazgdtrix unflow some points)r  r  g [n<zgdtrix bad some pointsznccs_ipp-nccsgiUMu>znccs_big_ipp-nccs_biggMb@?zchndtr inaccurate some pointsz)spherical_harmonic_ipp-spherical_harmonic)r   r   r  r   )r  r  c                 6    t          j        | j        d          S N?r   onesshaper   s    r_   r  r        RWQWc%:%: rb   c                 6    t          j        | j        d          S r  r  r  s    r_   r  r  	  r  rb   c                 V    t          j        | dt           j        z  k     | dk              S )Nr   r   r   logical_andr   r  s    r_   r  r  
  s     R^A"%Ka%H%H rb   c                 P    t          j        | t           j        k     | dk              S r   r!  r  s    r_   r  r    s    R^AIqAv%F%F rb   )r  r  z#sph_bessel_data_ipp-sph_bessel_dataz%sph_neumann_data_ipp-sph_neumann_datagV瞯=zowens_t_ipp-owens_tz)owens_t_large_data_ipp-owens_t_large_datag-=z!ellint_rc_data_ipp-ellint_rc_datagV瞯<z!ellint_rd_data_ipp-ellint_rd_datazellint_rd_0xy_ipp-ellint_rd_0xyzellint_rd_0yy_ipp-ellint_rd_0yyzellint_rd_xxx_ipp-ellint_rd_xxxzellint_rd_xxz_ipp-ellint_rd_xxzg_1k<zellint_rd_xyy_ipp-ellint_rd_xyygMg<z!ellint_rf_data_ipp-ellint_rf_datazellint_rf_xxx_ipp-ellint_rf_xxxzellint_rf_xyy_ipp-ellint_rf_xyyzellint_rf_xy0_ipp-ellint_rf_xy0zellint_rf_0yy_ipp-ellint_rf_0yyzellint_rg_ipp-ellint_rggؗ<zellint_rg_xxx_ipp-ellint_rg_xxxzellint_rg_xyy_ipp-ellint_rg_xyyg [n<zellint_rg_xy0_ipp-ellint_rg_xy0zellint_rg_00x_ipp-ellint_rg_00xz!ellint_rj_data_ipp-ellint_rj_data)r   r   r   r  g}:c                     | dk    S )Ng}:r  r  s    r_   r  r  Y  s
    Q%Z rb   )r  r  r  test)idsc                     | j         t          t          t          fv r=t	          j                    5  t          |            d d d            d S # 1 swxY w Y   d S t          |            d S rj   )r\   r;   r<   r   pytestdeprecated_call_test_factoryr%  s    r_   
test_boostr,    s     yUFK000#%% 	  	 $	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	ds   AAA
mathieu_abmathieu_ce_segHz>mathieu_mc_msc                 $    t          |            d S rj   r*  r+  s    r_   test_gslr2        $rb   ellipkinc_neg_mr,   ellipeinc_neg_mlog1p_expm1_complex)r   r  r    r!   ellip)r   r   r   r  r  rS   c                 $    t          |            d S rj   r1  r+  s    r_   
test_localr9    r3  rb   c                    t                      5 }|                    t          d           t          j        d          5  |                     |           ddd           n# 1 swxY w Y   ddd           dS # 1 swxY w Y   dS )z
Boost testz,The occurrence of roundoff error is detectedignore)all)dtypeN)r   filterrT   r   errstatecheck)r%  r=  sups      r_   r*  r*    s   			 $

%'UVVV[X&&& 	$ 	$JJUJ###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $s5   1A; A#A;#A'	'A;*A'	+A;;A?A?)importlib.resources	importlibnumpyr   numpy.testingr   r(  scipy.specialr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   scipy.integraterT   scipy.special._testutilsrU   	resourcesfiles_datadirjoinpath
_boost_npzas_filerq   loadrZ   _gsl_npzrd   
_local_npzrg   r`   re   rh   rm   rr   ru   rw   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  BOOST_TESTSmarkparametrizereprr,  	GSL_TESTSr2  LOCAL_TESTSr9  float64r*  r  rb   r_   <module>rY     s(           + + + + + +                                                                                                                                                                     / . . . . . - - - - - -
 $$%?@@{++
  ,,  RWQZZN                              Y''  ** a271::L               {++
  ,,  RWQZZN                             > > >
< < <
> > >
          ' ' '  ( ( (( ( (" " "" " "- - -- - -: : :: : :: : :: : :+ + ++ + +* * *+ + ++ + +1 1 11 1 1                            * * ** * *      
J$&Mae	% 	% 	%J 	"$?AE	# 	# 	#	J 	"$KAG	% 	% 	%J 	 "=AEe	5 	5 	5J 	 "IAG	7 	7 	7J 	T.AEe	5 	5 	5J 	T:AEe	5 	5 	5J  	:AE	# 	# 	#!J$ 	FAE	# 	# 	#%J( 	:AE	# 	# 	#)J, 	FAE	# 	# 	#-J2 	T.AEe	5 	5 	53J6 	T:AEe	5 	5 	57J: 	 "=AEe	5 	5 	5;J> 	 "IAEe	5 	5 	5?JD 	T4AE	# 	# 	#EJH 	T4AE	# 	# 	#IJL 	T4AE	# 	# 	#MJR 	W=ae	% 	% 	%SJV 	W1ae	% 	% 	%WJZ 	W9ae	% 	% 	%[J^ 	W=ae	% 	% 	%_Jd 	Z<ad	$ 	$ 	$eJj 	U;ae	% 	% 	%kJn 	U/ae	% 	% 	%oJr 	U7ae	% 	% 	%sJv 	U;ae	% 	% 	%wJ| 	V8ad	$ 	$ 	$}J@ 	[=ad	$ 	$ 	$AJF 	W;ad	$ 	$ 	$GJJ 	\@ad	$ 	$ 	$KJP 	W;ad	$ 	$ 	$QJT 	\@ad	$ 	$ 	$UJZ 	U5AE	# 	# 	#[J^ 	UAAE	# 	# 	#_Jd 	VCad	$ 	$ 	$eJh 	[Had	$ 	$ 	$iJn 	WVad	$ 	$ 	$oJr 	\Mad	$ 	$ 	$sJz 	VAAD	" 	" 	"{J~ 	[FAD	" 	" 	"JD 	T,a33EJH 	W5q!<<IJJ 	W5r1==KJL 	W=q!%PPPMJN 	W=r15QQQOJP 	W?AERRRQJR 	W?QUSSSSJT 	WA1aeTTTUJV 	WA2quUUUWJZ 	W7A>>[J\ 	Z:E15QQQ]J^ 	W7A>>_J` 	Z<eQUSSSaJd 	S)1a00eJf 	S)2qu===gJh 	T*Aqu===iJj 	S5q!<<kJl 	S5r1==mJn 	T615IIIoJp 	S5q!<<qJr 	S5r15IIIsJt 	T61==uJx 	V4a;;yJz 	W7A>>{J| 	W?A*?	- 	- 	-}JB 	T4aGGGCJD 	T4b!$GGGEJF 	T2AquEEEGJH 	T@!QUSSSIJJ 	T<aCCKJN 	T<eQGGOJP 	T0%GGGQJT 	U0!Q77UJV 	U0!Q77WJX 	U0!Q77YJZ 	U2Aq99[J\ 	U2AquEEE]J^ 	U4aGGG_J` 	U0"adCCCaJb 	U0"adCCCcJd 	U0"adCCCeJf 	U2BEEEgJh 	U2BEEEiJj 	U4b!%HHHkJl 	W2AquEEEmJn 	W2AquEEEoJp 	W2AquEEEqJr 	W4aGGGsJt 	W4aGGGuJv 	W61==wJz 	X@%QVWWW{J| 	X<eQUSSS}J~ 	X<eQUSSSJ@ 	X<eQUSSSAJD 	U=uaeTTTEJF 	U95!%PPPGJH 	U95!%PPPIJJ 	U95!$OOOKJN 	YAAE	# 	# 	#OJR 	Y=AE	# 	# 	#SJV 	Y=AE	# 	# 	#WJZ 	Y=AE	# 	# 	#[J` 	V>quUUUaJb 	V:E15QQQcJd 	V:E15QQQeJf 	V:E15QQQgJj 	W=uadSSSkJl 	[A5!RVWWWmJp 	UIAE	# 	# 	#qJt 	UGA	 	uJx 	UIA	 	yJ| 	ZNAE	# 	# 	#}J@ 	ZLA	 	AJD 	ZNA	 	EJJ 	_3AE	# 	# 	#KJP 	8AE	# 	# 	#QJT 	8A$E	G 	G 	GUJX 	!#<ae	% 	% 	%YJ\ 	!#<a&G	I 	I 	I]Jb 	U;QBBcJd 	U;QBBeJh 	R2AE	# 	# 	#iJl 	R2QU	1 	1 	1mJp 	R:AD	" 	" 	"qJt 	R:QU	$ 	$ 	$uJz 	SGAG	% 	% 	%{J~ 	SGQW6	3 	3 	3JD 	R:E15QQQEJF 	R:FAERRRGJH 	R>quUUUIJJ 	R>PUVVVKJN 	R:E15QQQOJP 	R:FAERRRQJR 	R2E15IIISJT 	R2FAEJJJUJX 	SGAE	# 	# 	#YJ\ 	SGQU	$ 	$ 	$]J` 	SKAE	# 	# 	#aJd 	SKQU	$ 	$ 	$eJj 	R:E15QQQkJn 	R:E15QQQoJp 	R:FAERRRqJr 	R2E15IIIsJt 	R2FAEJJJuJx 	SGAE	# 	# 	#yJ| 	SGQU	$ 	$ 	$}J@ 	S?PUVVVAJB 	S?QVWWWCJF 	R6quMMMGJH 	R4eQUKKKIJL 	R4eQUKKKMJN 	R4faeLLLOJP 	R4eQUKKKQJR 	R4faeLLLSJV 	SAQT	# 	# 	#WJZ 	SAad	$ 	$ 	$[J` 	U-q!*?	- 	- 	-aJd 	U5q!*?	- 	- 	-eJh 	U7A*?	- 	- 	-iJl 	U=q!*?	- 	- 	-mJr 	[IAE	# 	# 	#sJv 	[=AE	# 	# 	#wJz 	[EAE	# 	# 	#{J@	 	\JAE	# 	# 	#A	JD	 	\>AE	# 	# 	#E	JH	 	\FAE	# 	# 	#I	JN	 	WEAE0K	M 	M 	MO	JR	 	W9AE	# 	# 	#S	JV	 	WAA	 	W	JZ	 	[IA$<	> 	> 	>[	J^	 	[=AE	# 	# 	#_	Jb	 	[EA	 	c	Jh	 	V_ad	$ 	$ 	$i	Jl	 	V,ad1P	R 	R 	Rm	Jr	 	YCE::::HHFFH	I 	I 	Is	J@
 	]AAE	# 	# 	#A
JD
 	]CAE	# 	# 	#E
JJ
 	W+QU	$ 	$ 	$K
JN
 	WAQU	$ 	$ 	$O
Jv
 	W961	 	 	w
Jz
 	W99a	 	 	{
J~
 	W7A	 	 	
JB 	W7A	 	 	CJF 	W7A	 	 	GJX 	W7A	 	 	YJ\ 	W7A	 	 	]J` 	W99a	 	 	aJd 	W7A	 	 	eJh 	W7A	 	 	iJl 	W7A	 	 	mJp 	W7A	 	 	qJ@ 	W/A	 	 	AJD 	W7A	 	 	EJH 	W7A	 	 	IJL 	W7A	 	 	MJP 	W7A	 	 	QJT 	W9<e//1	3 	3 	3UJZ $77  87 	L&!%eLLLL&!%eLLL 	)QTPUVVV)QTPUVVV#_ADu	6 	6 	6#_ADu	6 	6 	6 	#_ADu	6 	6 	6#_ADu	6 	6 	6	( 55  65
 Jy+VQ77JxQ**Jy+VQ77Jv,eUGGGJv,eUGGGJxVQU;;;Jy+vqu===J|W_ae%PPPJz7?AENNNJ}oy!%HHH $77  87 !j $ $ $ $ $ $s6   D))D-0D-#F  FF:GGG