§
    ƒÛg†  ã                   ón  — d Z ddlZddlmZ ddlmZmZ ddlm	Z	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 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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 ddl7m8Z8 dVd„Z9d„ Z:d„ Z; eej<        d¦  «        dej=        dfd„¦   «         Z> eej<        d¦  «        dWd„¦   «         Z? eej<        d¦  «        dWd„¦   «         Z@ eej<        d¦  «        dejA        fd„¦   «         ZB eej<        d¦  «        dejA        dfd„¦   «         ZC eej<        d¦  «        dejA        fd„¦   «         ZD eej<        d¦  «        dejA        fd„¦   «         ZE eej<        d ¦  «        	 	 dXd#„¦   «         ZF eej<        d$¦  «        	 	 dXd%„¦   «         ZG eej<        d&¦  «        dYd'„¦   «         ZH eej<        d(¦  «        dYd)„¦   «         ZI eej<        d*¦  «        dZd+„¦   «         ZJ eej<        d,¦  «        dZd-„¦   «         ZK eej<        d.¦  «        dZd/„¦   «         ZL eej<        d0¦  «        dZd1„¦   «         ZM eej<        d2¦  «        dZd3„¦   «         ZN eej<        d4¦  «        dZd5„¦   «         ZO eej<        d6¦  «        dZd7„¦   «         ZP eej<        d8¦  «        dXd9„¦   «         ZQ eej<        d:¦  «        dXd;„¦   «         ZR eej<        d<¦  «        dXd=„¦   «         ZS eej<        d>¦  «        dYd?„¦   «         ZT eej<        d@¦  «        dZdA„¦   «         ZU eej<        dB¦  «        dZdC„¦   «         ZV eej<        dD¦  «        dZdE„¦   «         ZW eej<        dF¦  «        dZdG„¦   «         ZX eej<        dH¦  «        dZdI„¦   «         ZY eej<        dJ¦  «        dZdK„¦   «         ZZ eej<        dL¦  «        dZdM„¦   «         Z[ eej<        dN¦  «        dZdO„¦   «         Z\ eej<        dP¦  «        dZdQ„¦   «         Z] eej<        dR¦  «        dZdS„¦   «         Z^ eej<        dT¦  «        dZdU„¦   «         Z_dS )[z;
Implementation of method overloads for Generator objects.
é    N)Útypes)Úoverload_methodÚregister_jitable)Úas_dtypeÚ
from_dtype)Ú
next_floatÚnext_double)Úis_nonelike)ÚTypingError)ÚTupleÚUniTuple)"Ú!random_standard_exponential_inv_fÚrandom_standard_exponential_invÚrandom_standard_exponentialÚrandom_standard_normal_fÚrandom_standard_gammaÚrandom_standard_normalÚrandom_uniformÚrandom_standard_exponential_fÚrandom_standard_gamma_fÚrandom_normalÚrandom_exponentialÚrandom_gammaÚrandom_betaÚrandom_powerÚrandom_fÚrandom_chisquareÚrandom_standard_cauchyÚrandom_paretoÚrandom_weibullÚrandom_laplaceÚrandom_logisticÚrandom_lognormalÚrandom_rayleighÚrandom_standard_tÚrandom_waldÚrandom_geometricÚrandom_zipfÚrandom_triangularÚrandom_poissonÚrandom_negative_binomialÚrandom_logseriesÚrandom_noncentral_chisquareÚrandom_noncentral_fÚrandom_binomial)Úrandom_methodsú	the givenc                 ó�  — t          |t          j        ¦  «        r|j        }|}t          |t          ¦  «        r"t          t          j        |¦  «        ¦  «        }n+t          |t          j        ¦  «        r|}t          |¦  «        }|t          j
        t          j        fvrt          d¦  «        ‚|t          j
        k    r| }n|}||fS )a  
        Most of the standard NumPy distributions that accept dtype argument
        only support either np.float32 or np.float64 as dtypes.

        This is a helper function that helps Numba select the proper underlying
        implementation according to provided dtype.
    zLArgument dtype is not one of the expected type(s):  np.float32 or np.float64)Ú
isinstancer   ÚOmittedÚvalueÚtyper   ÚnpÚdtypeÚNumberClassr   Úfloat32Úfloat64r   )Úfunc_32Úfunc_64r8   Ú	dist_nameÚnp_dtÚnb_dtÚ	next_funcs          úW/granary/edev/quantum/lib/python3.11/site-packages/numba/np/random/generator_methods.pyÚ_get_proper_funcrC      sÃ   € õ �%�œÑ'Ô'ð Ø”ˆà€EÝ�%�ÑÔð  Ý�2œ8 E™?œ?Ñ+Ô+ˆˆÝ	�E�5Ô,Ñ	-Ô	-ð  ØˆÝ˜‘”ˆà•R”Z¥¤Ð,Ð,Ð,Ýð 6ñ 7ô 7ð 	7ð •”
ÒÐØˆ	ˆ	àˆ	à�eÐÐó    c                 ó  — t          t          | t          ¦  «        ot          | j        t          j        ¦  «        t          | t          ¦  «        o
| j        dk    t          | t          j        ¦  «        g¦  «        st          d¦  «        ‚d S )Nr   zdArgument size is not one of the expected type(s):  an integer, an empty tuple or a tuple of integers)	Úanyr3   r   r8   r   ÚIntegerr   Úcountr   )Úsizes    rB   Ú
check_sizerJ   ;   sŒ   € Ý•
˜4¥Ñ*Ô*ð 6Ý˜4œ:¥u¤}Ñ5Ô5Ý˜4¥Ñ'Ô'Ð;¨D¬J¸!ªOÝ˜4¥¤Ñ/Ô/ð1ñ 2ô 2ð Põ ð Oñ Pô Pð 	Pð	Pð PrD   c                 óð   ‡ — t          ‰ t          j        ¦  «        r‰ j        Š t          |t          t
          f¦  «        s|g}t          ˆ fd„|D ¦   «         ¦  «        st          d|› d�d|› �z   ¦  «        ‚dS )z\
    Check if given object is one of the provided types.
    If not raises an TypeError
    c                 ó0   •— g | ]}t          ‰|¦  «        ‘ŒS © )r3   )Ú.0Ú_typeÚobjs     €rB   ú
<listcomp>zcheck_types.<locals>.<listcomp>P   s#   ø€ Ð>Ð>Ð>¨5•
˜3 Ñ&Ô&Ð>Ð>Ð>rD   z	Argument z is not one of thez expected type(s): N)r3   r   r4   r5   ÚlistÚtuplerF   r   )rP   Ú	type_listÚarg_names   `  rB   Úcheck_typesrV   E   sœ   ø€ õ
 �#•u”}Ñ%Ô%ð ØŒiˆå�i¥$­ Ñ/Ô/ð  Ø�Kˆ	åÐ>Ð>Ð>Ð>°IÐ>Ñ>Ô>Ñ?Ô?ð =ÝÐB hÐBÐBÐBØ;°	Ð;Ð;ñ<ñ =ô =ð 	=ð=ð =rD   ÚintegersFc                 ó  ‡
‡‡— t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          gd¦  «         t          |t          j        ¦  «        r|j        }t          |t          j        ¦  «        r|j        }t          |t          ¦  «        r$t          t          j        |¦  «        ¦  «        }|}n;t          |t          j        ¦  «        r|}t          |¦  «        }nt          d¦  «        ‚|t          j        k    rt"          j        Š
dŠdŠn_	 t          j        |¦  «        }n# t(          $ r t          d¦  «        ‚w xY wt+          t"          d|j        › d�¦  «        Š
|j        Š|j        Št3          |¦  «        rd t          j        d	fˆ
ˆˆfd
„	}	|	S t7          |¦  «         d t          j        d	fˆ
ˆˆfd„	}	|	S )NÚlowÚhighÚendpointz�Argument dtype is not one of the expected type(s): np.int32, np.int64, np.int16, np.int8, np.uint32, np.uint64, np.uint16, np.uint8, np.bool_éÿÿÿÿé   Úrandom_bounded_uintÚ_fillFc                 ó(  •— t          j        |||‰‰	¦  «         |sC| |d¦  «        z  } ||¦  «        } ||¦  «        }||z
  } ‰| j        ||d|¦  «        d         S  ||¦  «        } ||¦  «        }||z
  } ‰| j        ||d|¦  «        d         S )Né   r   ©r0   Ú_randint_arg_checkÚbit_generator©
ÚinstrY   rZ   rI   r8   r[   ÚrngÚint_funcÚlower_boundÚupper_bounds
          €€€rB   Úimplz/NumPyRandomGeneratorType_integers.<locals>.impl…   sÇ   ø€ åÔ-¨c°4¸Ø.9¸;ñHô Hð Hàð 
KØ˜˜˜a™œÑ �Ø�e˜C‘j”j�Ø�u˜T‘{”{�Ø˜S‘j�Ø�x Ô 2°C¸¸aÀÑGÔGÈÔJÐJà�e˜C‘j”j�Ø�u˜T‘{”{�Ø˜S‘j�Ø�x Ô 2°C¸¸aÀÑGÔGÈÔJÐJrD   c                 ó  •— t          j        |||‰‰	¦  «         |s=| |d¦  «        z  } ||¦  «        } ||¦  «        }||z
  } ‰| j        ||||¦  «        S  ||¦  «        } ||¦  «        }||z
  } ‰| j        ||||¦  «        S )Nra   rb   re   s
          €€€rB   rk   z/NumPyRandomGeneratorType_integers.<locals>.impl˜   s½   ø€ åÔ-¨c°4¸Ø.9¸;ñHô Hð Hàð 
KØ˜˜˜a™œÑ �Ø�e˜C‘j”j�Ø�u˜T‘{”{�Ø˜S‘j�Ø�x Ô 2°C¸¸dÀEÑJÔJÐJà�e˜C‘j”j�Ø�u˜T‘{”{�Ø˜S‘j�Ø�x Ô 2°C¸¸dÀEÑJÔJÐJrD   )rV   r   rG   ÚBooleanÚboolÚintr3   r4   r5   r6   r   r7   r8   r9   r   r   Úbool_r0   Úrandom_bounded_bool_fillÚiinfoÚ
ValueErrorÚgetattrÚbitsÚminÚmaxr
   Úint64rJ   )rf   rY   rZ   rI   r8   r[   r@   Ú_dtypeÚi_infork   rh   ri   rj   s             @@@rB   Ú!NumPyRandomGeneratorType_integersr{   V   sR  øøø€ õ �•e”mÝ”m¥T­3ð0Ø16ñ8ô 8ð 8å�•u”}¥e¤mÝ�Sð"Ø#)ñ+ô +ð +å��5œ=­$Ð/°Ñ<Ô<Ð<å�$�œÑ&Ô&ð ØŒzˆå�%�œÑ'Ô'ð Ø”ˆå�%�ÑÔð &Ý�2œ8 E™?œ?Ñ+Ô+ˆØˆˆÝ	�E�5Ô,Ñ	-Ô	-ð &ØˆÝ˜%‘”ˆˆåð %ñ &ô &ð 	&ð •”ÒÐÝ!Ô:ˆØˆØˆˆð	*Ý”X˜fÑ%Ô%ˆFˆFøÝð 	*ð 	*ð 	*Ýð )ñ *ô *ð *ð	*øøøõ �>ØC°´ÐCÐCÐCñEô Eˆà”jˆØ”jˆå�4ÑÔð #Ø'+Ý”x¨%ð	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð ˆå�4ÑÔÐà'+Ý”x¨%ð	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð ˆs   Å$E9 Å9FÚshufflec                 óŠ   — t          |t          j        gd¦  «         t          |t          t          j        gd¦  «         dd„}|S )NÚxÚaxisr   c                 óÀ  — |dk     r
||j         z   }||j         dz
  k    s|dk     rt          d¦  «        ‚t          j        |d|¦  «        }t          j        |d         ¦  «        }t          t          |¦  «        dz
  dd¦  «        D ]X}t          j        t          j
        | j        |¦  «        ¦  «        }||k    rŒ5||df         |d<   ||df         ||df<   |||df<   ŒYd S )Nr   ra   z)Axis is out of bounds for the given array)r   .r\   .)ÚndimÚ
IndexErrorr7   ÚswapaxesÚ
empty_likeÚrangeÚlenr   Úintpr0   Úrandom_intervalrd   )rf   r~   r   ÚzÚbufÚiÚjs          rB   rk   z.NumPyRandomGeneratorType_shuffle.<locals>.impl³   sü   € Ø�!Š8ˆ8Ø˜!œ&‘=ˆDØ�!”&˜1‘*ÒÐ  q¢ ÝÐHÑIÔIÐIåŒK˜˜1˜dÑ#Ô#ˆÝŒm˜A˜fœIÑ&Ô&ˆå•s˜1‘v”v ‘z 1 bÑ)Ô)ð 	ð 	ˆAÝ”
�>Ô9¸$Ô:LØ:;ñ=ô =ñ >ô >ˆAà�AŠvˆvØØ˜˜C˜”yˆC�‰HØ˜!˜S˜&œ	ˆAˆa�ˆf‰IØˆAˆa�ˆf‰IˆIð	ð 	rD   ©r   )rV   r   ÚArrayro   rG   )rf   r~   r   rk   s       rB   Ú NumPyRandomGeneratorType_shuffler�   ®   sL   € å�•E”K�= #Ñ&Ô&Ð&Ý�•s�EœMÐ*¨FÑ3Ô3Ð3ðð ð ð ð$ €KrD   Úpermutationc                 óÚ   ‡— t          |t          j        t          j        gd¦  «         t          |t          t          j        gd¦  «         t          |t          j        ¦  «        Šdˆfd„	}|S )Nr~   r   r   c                 ó¶   •— ‰r*t          j        |¦  «        }|                      |¦  «         n+|                     ¦   «         }|                      ||¬¦  «         |S )N)r   )r7   Úaranger|   Úcopy)rf   r~   r   Únew_arrÚIS_INTs       €rB   rk   z2NumPyRandomGeneratorType_permutation.<locals>.implÒ   sU   ø€ Øð 	-Ý”i ‘l”lˆGà�LŠL˜Ñ!Ô!Ð!Ð!à—f’f‘h”hˆGØ�LŠL˜ tˆLÑ,Ô,Ð,ØˆrD   r�   )rV   r   rŽ   rG   ro   r3   )rf   r~   r   rk   r–   s       @rB   Ú$NumPyRandomGeneratorType_permutationr—   Ë   sm   ø€ å�•E”K¥¤Ð/°Ñ5Ô5Ð5Ý�•s�EœMÐ*¨FÑ3Ô3Ð3å˜�5œ=Ñ)Ô)€Fðð ð ð ð ð ð €KrD   Úrandomc                 ó  ‡‡— t          t          t          |d¦  «        \  ŠŠt          |t          j        ¦  «        r|j        }t          |¦  «        rd t          j	        fˆˆfd„	}|S t          |¦  «         d t          j	        fˆfd„	}|S )Nr˜   c                 ó6   •—  ‰ ‰| j         ¦  «        ¦  «        S ©N©rd   ©rf   rI   r8   Ú	dist_funcr@   s      €€rB   rk   z-NumPyRandomGeneratorType_random.<locals>.implè   ó    ø€ Ø�5˜˜ 4Ô#5Ñ6Ô6Ñ7Ô7Ð7rD   c                 ó–   •— t          j        ||¬¦  «        }|j        }t          |j        ¦  «        D ]} ‰| j        ¦  «        ||<   Œ|S ©N©r8   ©r7   ÚemptyÚflatr…   rI   rd   ©rf   rI   r8   ÚoutÚout_fr‹   rž   s         €rB   rk   z-NumPyRandomGeneratorType_random.<locals>.implî   óR   ø€ Ý”(˜4 uÐ-Ñ-Ô-ˆCØ”HˆEÝ˜3œ8‘_”_ð 9ð 9�Ø$˜9 TÔ%7Ñ8Ô8��a‘�ØˆJrD   )rC   r   r	   r3   r   r4   r5   r
   r7   r;   rJ   ©rf   rI   r8   rk   rž   r@   s       @@rB   ÚNumPyRandomGeneratorType_randomr«   à   sµ   øø€ å'­
µKØ(-¨xñ9ô 9Ñ€Iˆuå�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð Ø ­¬
ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8àˆå�4ÑÔÐà ­¬
ð 	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Ústandard_exponentialÚzigc                 óœ  ‡‡‡— t          |t          j        t          gd¦  «         t	          t
          t          |¦  «        \  ŠŠt	          t          t          |¦  «        \  ŠŠt          |t          j
        ¦  «        r|j        }t          |¦  «        rd t          j        dfˆˆˆfd„	}|S t          |¦  «         d t          j        dfˆˆfd„	}|S )NÚmethodr­   c                 óž   •— |dk    r ‰ ‰| j         ¦  «        ¦  «        S |dk    r ‰ ‰| j         ¦  «        ¦  «        S t          d¦  «        ‚)Nr­   Úinvú$Method must be either 'zig' or 'inv')rd   rs   )rf   rI   r8   r¯   rž   Údist_func_invr@   s       €€€rB   rk   z;NumPyRandomGeneratorType_standard_exponential.<locals>.impl  s^   ø€ Ø˜ŠˆØ�u˜Y˜Y tÔ'9Ñ:Ô:Ñ;Ô;Ð;Ø˜5’�Ø�u˜]˜]¨4Ô+=Ñ>Ô>Ñ?Ô?Ð?å Ð!GÑHÔHÐHrD   c                 ó$  •— t          j        ||¬¦  «        }|j        }|dk    r+t          |j        ¦  «        D ]} ‰| j        ¦  «        ||<   Œn@|dk    r+t          |j        ¦  «        D ]} ‰| j        ¦  «        ||<   Œnt          d¦  «        ‚|S )Nr¢   r­   r±   r²   )r7   r¤   r¥   r…   rI   rd   rs   )	rf   rI   r8   r¯   r§   r¨   r‹   rž   r³   s	          €€rB   rk   z;NumPyRandomGeneratorType_standard_exponential.<locals>.impl  s±   ø€ Ý”(˜4 uÐ-Ñ-Ô-ˆCØ”HˆEØ˜ŠˆÝ˜sœx™œð =ð =�AØ(˜y¨Ô);Ñ<Ô<�E˜!‘H�Hð=à˜5’�Ý˜sœx™œð Að A�AØ,˜}¨TÔ-?Ñ@Ô@�E˜!‘H�HðAõ !Ð!GÑHÔHÐHØˆJrD   )rV   r   ÚUnicodeTypeÚstrrC   r   r   r   r   r3   r4   r5   r
   r7   r;   rJ   )rf   rI   r8   r¯   rk   rž   r³   r@   s        @@@rB   Ú-NumPyRandomGeneratorType_standard_exponentialr·   ø   s  øøø€ õ ��Ô*­CÐ0°(Ñ;Ô;Ð;Ý+Ý)Ý'Øñô Ñ€M�5õ (Õ(EÝ(CØ(-ñ/ô /Ñ€Iˆuõ �$�œÑ&Ô&ð ØŒzˆå�4ÑÔð Ø ­¬
¸5ð 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið ˆå�4ÑÔÐà ­¬
¸5ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Ústandard_normalc                 ó  ‡‡— t          t          t          |¦  «        \  ŠŠt          |t          j        ¦  «        r|j        }t          |¦  «        rd t          j	        fˆˆfd„	}|S t          |¦  «         d t          j	        fˆfd„	}|S )Nc                 ó6   •—  ‰ ‰| j         ¦  «        ¦  «        S r›   rœ   r�   s      €€rB   rk   z6NumPyRandomGeneratorType_standard_normal.<locals>.impl/  rŸ   rD   c                 ó–   •— t          j        ||¬¦  «        }|j        }t          |j        ¦  «        D ]} ‰| j        ¦  «        ||<   Œ|S r¡   r£   r¦   s         €rB   rk   z6NumPyRandomGeneratorType_standard_normal.<locals>.impl5  r©   rD   )rC   r   r   r3   r   r4   r5   r
   r7   r;   rJ   rª   s       @@rB   Ú(NumPyRandomGeneratorType_standard_normalr¼   &  s·   øø€ å'Õ(@Ý(>Ø(-ñ/ô /Ñ€Iˆuõ �$�œÑ&Ô&ð ØŒzˆå�4ÑÔð Ø ­¬
ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8àˆå�4ÑÔÐà ­¬
ð 	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Ústandard_gammac                 óx  ‡‡— t          |t          j        t          j        t          t
          gd¦  «         t          t          t          |¦  «        \  ŠŠt          |t          j
        ¦  «        r|j        }t          |¦  «        rd t          j        fˆˆfd„	}|S t          |¦  «         d t          j        fˆfd„	}|S )NÚshapec                 ó8   •—  ‰ ‰| j         |¦  «        ¦  «        S r›   rœ   )rf   r¿   rI   r8   rž   r@   s       €€rB   rk   z5NumPyRandomGeneratorType_standard_gamma.<locals>.implJ  s"   ø€ Ø�5˜˜ 4Ô#5°uÑ=Ô=Ñ>Ô>Ð>rD   c                 ó˜   •— t          j        ||¬¦  «        }|j        }t          |j        ¦  «        D ]} ‰| j        |¦  «        ||<   Œ|S r¡   r£   )rf   r¿   rI   r8   r§   r¨   r‹   rž   s          €rB   rk   z5NumPyRandomGeneratorType_standard_gamma.<locals>.implP  sV   ø€ Ý”(˜4 uÐ-Ñ-Ô-ˆCØ”HˆEÝ˜3œ8‘_”_ð @ð @�Ø$˜9 TÔ%7¸Ñ?Ô?��a‘�ØˆJrD   )rV   r   ÚFloatrG   ro   ÚfloatrC   r   r   r3   r4   r5   r
   r7   r;   rJ   )rf   r¿   rI   r8   rk   rž   r@   s        @@rB   Ú'NumPyRandomGeneratorType_standard_gammarÄ   ?  sØ   øø€ õ ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ'Õ(?Ý(=Ø(-ñ/ô /Ñ€Iˆuõ �$�œÑ&Ô&ð ØŒzˆå�4ÑÔð Ø#'­r¬zð 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?àˆå�4ÑÔÐà#'­r¬zð 	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Únormalç        ç      ð?c                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚlocÚscalerÆ   rÇ   c                 ó.   — t          | j        ||¦  «        S r›   )r   rd   ©rf   rÉ   rÊ   rI   s       rB   rk   z-NumPyRandomGeneratorType_normal.<locals>.implc  s   € Ý  Ô!3°S¸%Ñ@Ô@Ð@rD   c                 ó´   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r   rd   ©rf   rÉ   rÊ   rI   r§   r¨   r‹   s          rB   rk   z-NumPyRandomGeneratorType_normal.<locals>.impli  sW   € Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Ið I�Ý(¨Ô);¸SÀ%ÑHÔH��a‘�ØˆJrD   ©rÆ   rÇ   N©rV   r   rÂ   rG   ro   rÃ   r3   r4   r5   r
   rJ   ©rf   rÉ   rÊ   rI   rk   s        rB   ÚNumPyRandomGeneratorType_normalrÒ   Z  s³   € õ �•e”k¥5¤=µ#µuÐ=¸uÑEÔEÐEÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Að 	Að 	Að 	Aàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úuniformc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrY   rZ   rÆ   rÇ   c                 ó4   — t          | j        |||z
  ¦  «        S r›   )r   rd   )rf   rY   rZ   rI   s       rB   rk   z.NumPyRandomGeneratorType_uniform.<locals>.impl|  s   € Ý! $Ô"4°c¸4À#¹:ÑFÔFÐFrD   c                 óº   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |||z
  ¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r   rd   )rf   rY   rZ   rI   r§   r¨   r‹   s          rB   rk   z.NumPyRandomGeneratorType_uniform.<locals>.impl‚  s[   € Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Oð O�Ý)¨$Ô*<¸cÀ4È#Á:ÑNÔN��a‘�ØˆJrD   rÏ   rÐ   )rf   rY   rZ   rI   rk   s        rB   Ú NumPyRandomGeneratorType_uniformr×   s  s³   € õ �•e”k¥5¤=µ#µuÐ=¸uÑEÔEÐEÝ�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Gð 	Gð 	Gð 	Gàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úexponentialc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrÊ   rÇ   c                 ó,   — t          | j        |¦  «        S r›   )r   rd   ©rf   rÊ   rI   s      rB   rk   z2NumPyRandomGeneratorType_exponential.<locals>.impl“  s   € Ý% dÔ&8¸%Ñ@Ô@Ð@rD   c                 ó²   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r   rd   ©rf   rÊ   rI   r§   r¨   r‹   s         rB   rk   z2NumPyRandomGeneratorType_exponential.<locals>.impl™  sU   € Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Ið I�Ý-¨dÔ.@À%ÑHÔH��a‘�ØˆJrD   ©rÇ   NrÐ   ©rf   rÊ   rI   rk   s       rB   Ú$NumPyRandomGeneratorType_exponentialrà   Œ  s’   € å��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Að 	Að 	Að 	Aàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úgammac                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nr¿   rÊ   rÇ   c                 ó.   — t          | j        ||¦  «        S r›   )r   rd   )rf   r¿   rÊ   rI   s       rB   rk   z,NumPyRandomGeneratorType_gamma.<locals>.impl«  s   € Ý Ô 2°E¸5ÑAÔAÐArD   c                 ó´   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r   rd   )rf   r¿   rÊ   rI   r§   r¨   r‹   s          rB   rk   z,NumPyRandomGeneratorType_gamma.<locals>.impl±  sW   € Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Jð J�Ý'¨Ô(:¸EÀ5ÑIÔI��a‘�ØˆJrD   rÞ   rÐ   )rf   r¿   rÊ   rI   rk   s        rB   ÚNumPyRandomGeneratorType_gammarå   £  s±   € å��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Bð 	Bð 	Bð 	Bàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úbetac                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚaÚbc                 ó.   — t          | j        ||¦  «        S r›   )r   rd   )rf   rè   ré   rI   s       rB   rk   z+NumPyRandomGeneratorType_beta.<locals>.implÃ  s   € Ý˜tÔ1°1°aÑ8Ô8Ð8rD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   )rf   rè   ré   rI   r§   r¨   r‹   s          rB   rk   z+NumPyRandomGeneratorType_beta.<locals>.implÉ  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Að A�Ý& tÔ'9¸1¸aÑ@Ô@��a‘�ØˆJrD   r›   rÐ   )rf   rè   ré   rI   rk   s        rB   ÚNumPyRandomGeneratorType_betarì   »  s­   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	9ð 	9ð 	9ð 	9àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úfc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚdfnumÚdfdenc                 ó.   — t          | j        ||¦  «        S r›   )r   rd   )rf   rï   rð   rI   s       rB   rk   z(NumPyRandomGeneratorType_f.<locals>.implÛ  s   € Ý˜DÔ.°°uÑ=Ô=Ð=rD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   )rf   rï   rð   rI   r§   r¨   r‹   s          rB   rk   z(NumPyRandomGeneratorType_f.<locals>.implá  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Fð F�Ý# DÔ$6¸¸uÑEÔE��a‘�ØˆJrD   r›   rÐ   )rf   rï   rð   rI   rk   s        rB   ÚNumPyRandomGeneratorType_fró   Ó  s­   € å��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	>ð 	>ð 	>ð 	>àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ú	chisquarec                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚdfc                 ó,   — t          | j        |¦  «        S r›   )r   rd   ©rf   rö   rI   s      rB   rk   z0NumPyRandomGeneratorType_chisquare.<locals>.implò  s   € Ý# DÔ$6¸Ñ;Ô;Ð;rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   ©rf   rö   rI   r§   r¨   r‹   s         rB   rk   z0NumPyRandomGeneratorType_chisquare.<locals>.implø  sL   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Dð D�Ý+¨DÔ,>ÀÑCÔC��a‘�ØˆJrD   r›   rÐ   ©rf   rö   rI   rk   s       rB   Ú"NumPyRandomGeneratorType_chisquarerü   ë  sŽ   € å�•U”[¥%¤-µµeÐ<¸dÑCÔCÐCÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	<ð 	<ð 	<ð 	<àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ústandard_cauchyc                 ó˜   — t          |t          j        ¦  «        r|j        }t	          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nc                 ó*   — t          | j        ¦  «        S r›   )r   rd   )rf   rI   s     rB   rk   z6NumPyRandomGeneratorType_standard_cauchy.<locals>.impl  s   € Ý)¨$Ô*<Ñ=Ô=Ð=rD   c                 ó˜   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   )rf   rI   r§   r¨   r‹   s        rB   rk   z6NumPyRandomGeneratorType_standard_cauchy.<locals>.impl  sJ   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Fð F�Ý1°$Ô2DÑEÔE��a‘�ØˆJrD   r›   )r3   r   r4   r5   r
   rJ   )rf   rI   rk   s      rB   Ú(NumPyRandomGeneratorType_standard_cauchyr    sq   € õ �$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	>ð 	>ð 	>ð 	>àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úparetoc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nrè   c                 ó,   — t          | j        |¦  «        S r›   )r   rd   ©rf   rè   rI   s      rB   rk   z-NumPyRandomGeneratorType_pareto.<locals>.impl  s   € Ý  Ô!3°QÑ7Ô7Ð7rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   ©rf   rè   rI   r§   r¨   r‹   s         rB   rk   z-NumPyRandomGeneratorType_pareto.<locals>.impl$  sL   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð @ð @�Ý(¨Ô);¸QÑ?Ô?��a‘�ØˆJrD   r›   rÐ   ©rf   rè   rI   rk   s       rB   ÚNumPyRandomGeneratorType_paretor	    sŽ   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	8ð 	8ð 	8ð 	8àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úweibullc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nrè   c                 ó,   — t          | j        |¦  «        S r›   )r    rd   r  s      rB   rk   z.NumPyRandomGeneratorType_weibull.<locals>.impl4  s   € Ý! $Ô"4°aÑ8Ô8Ð8rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r    rd   r  s         rB   rk   z.NumPyRandomGeneratorType_weibull.<locals>.impl:  sL   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Að A�Ý)¨$Ô*<¸aÑ@Ô@��a‘�ØˆJrD   r›   rÐ   r  s       rB   Ú NumPyRandomGeneratorType_weibullr  -  sŽ   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	9ð 	9ð 	9ð 	9àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úpowerc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nrè   c                 ó,   — t          | j        |¦  «        S r›   )r   rd   r  s      rB   rk   z,NumPyRandomGeneratorType_power.<locals>.implJ  s   € Ý Ô 2°AÑ6Ô6Ð6rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r   rd   r  s         rB   rk   z,NumPyRandomGeneratorType_power.<locals>.implP  sJ   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð ?ð ?�Ý'¨Ô(:¸AÑ>Ô>��a‘�ØˆJrD   r›   rÐ   r  s       rB   ÚNumPyRandomGeneratorType_powerr  C  sŽ   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	7ð 	7ð 	7ð 	7àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úlaplacec                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrÉ   rÊ   rÆ   rÇ   c                 ó.   — t          | j        ||¦  «        S r›   )r!   rd   rÌ   s       rB   rk   z.NumPyRandomGeneratorType_laplace.<locals>.impla  s   € Ý! $Ô"4°c¸5ÑAÔAÐArD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r!   rd   rÎ   s          rB   rk   z.NumPyRandomGeneratorType_laplace.<locals>.implg  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Jð J�Ý)¨$Ô*<¸cÀ5ÑIÔI��a‘�ØˆJrD   rÏ   rÐ   rÑ   s        rB   Ú NumPyRandomGeneratorType_laplacer  Y  s±   € å�•e”k¥5¤=µ#µuÐ=¸uÑEÔEÐEÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Bð 	Bð 	Bð 	Bàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úlogisticc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrÉ   rÊ   rÆ   rÇ   c                 ó.   — t          | j        ||¦  «        S r›   )r"   rd   rÌ   s       rB   rk   z/NumPyRandomGeneratorType_logistic.<locals>.implx  s   € Ý" 4Ô#5°s¸EÑBÔBÐBrD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r"   rd   rÎ   s          rB   rk   z/NumPyRandomGeneratorType_logistic.<locals>.impl~  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Kð K�Ý*¨4Ô+=¸sÀEÑJÔJ��a‘�ØˆJrD   rÏ   rÐ   rÑ   s        rB   Ú!NumPyRandomGeneratorType_logisticr  p  s±   € å�•e”k¥5¤=µ#µuÐ=¸uÑEÔEÐEÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Cð 	Cð 	Cð 	Càˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ú	lognormalc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚmeanÚsigmarÆ   rÇ   c                 ó.   — t          | j        ||¦  «        S r›   )r#   rd   )rf   r   r!  rI   s       rB   rk   z0NumPyRandomGeneratorType_lognormal.<locals>.impl�  s   € Ý# DÔ$6¸¸eÑDÔDÐDrD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r#   rd   )rf   r   r!  rI   r§   r¨   r‹   s          rB   rk   z0NumPyRandomGeneratorType_lognormal.<locals>.impl•  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Mð M�Ý+¨DÔ,>ÀÀeÑLÔL��a‘�ØˆJrD   rÏ   rÐ   )rf   r   r!  rI   rk   s        rB   Ú"NumPyRandomGeneratorType_lognormalr$  ‡  s±   € å�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Eð 	Eð 	Eð 	Eàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úrayleighc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrÊ   rÇ   c                 ó,   — t          | j        |¦  «        S r›   )r$   rd   rÛ   s      rB   rk   z/NumPyRandomGeneratorType_rayleigh.<locals>.impl¥  s   € Ý" 4Ô#5°uÑ=Ô=Ð=rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r$   rd   rÝ   s         rB   rk   z/NumPyRandomGeneratorType_rayleigh.<locals>.impl«  sL   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Fð F�Ý*¨4Ô+=¸uÑEÔE��a‘�ØˆJrD   rÞ   rÐ   rß   s       rB   Ú!NumPyRandomGeneratorType_rayleighr)  ž  sŽ   € å��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	>ð 	>ð 	>ð 	>àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ú
standard_tc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nrö   c                 ó,   — t          | j        |¦  «        S r›   )r%   rd   rø   s      rB   rk   z1NumPyRandomGeneratorType_standard_t.<locals>.impl»  s   € Ý$ TÔ%7¸Ñ<Ô<Ð<rD   c                 óš   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r%   rd   rú   s         rB   rk   z1NumPyRandomGeneratorType_standard_t.<locals>.implÁ  sL   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Eð E�Ý,¨TÔ-?ÀÑDÔD��a‘�ØˆJrD   r›   rÐ   rû   s       rB   Ú#NumPyRandomGeneratorType_standard_tr.  ´  sŽ   € å�•U”[¥%¤-µµeÐ<¸dÑCÔCÐCÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	=ð 	=ð 	=ð 	=àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úwaldc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nr   rÊ   c                 ó.   — t          | j        ||¦  «        S r›   )r&   rd   )rf   r   rÊ   rI   s       rB   rk   z+NumPyRandomGeneratorType_wald.<locals>.implÒ  s   € Ý˜tÔ1°4¸Ñ?Ô?Ð?rD   c                 óœ   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r&   rd   )rf   r   rÊ   rI   r§   r¨   r‹   s          rB   rk   z+NumPyRandomGeneratorType_wald.<locals>.implØ  sN   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð Hð H�Ý& tÔ'9¸4ÀÑGÔG��a‘�ØˆJrD   r›   rÐ   )rf   r   rÊ   rI   rk   s        rB   ÚNumPyRandomGeneratorType_waldr3  Ê  s±   € å�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	@ð 	@ð 	@ð 	@àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ú	geometricc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚpc                 óP   — t          j        t          | j        |¦  «        ¦  «        S r›   )r7   rx   r'   rd   )rf   r6  rI   s      rB   rk   z0NumPyRandomGeneratorType_geometric.<locals>.implè  s    € Ý”8Õ,¨TÔ-?ÀÑCÔCÑDÔDÐDrD   c                 ó²   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r¡   )r7   r¤   rx   r¥   r…   rI   r'   rd   )rf   r6  rI   r§   r¨   r‹   s         rB   rk   z0NumPyRandomGeneratorType_geometric.<locals>.implî  sU   € Ý”(˜4¥r¤xÐ0Ñ0Ô0ˆCØ”HˆEÝ˜3œ8‘_”_ð Cð C�Ý+¨DÔ,>ÀÑBÔB��a‘�ØˆJrD   r›   rÐ   )rf   r6  rI   rk   s       rB   Ú"NumPyRandomGeneratorType_geometricr9  á  s’   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Eð 	Eð 	Eð 	Eàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úzipfc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )Nrè   c                 óP   — t          j        t          | j        |¦  «        ¦  «        S r›   )r7   rx   r(   rd   r  s      rB   rk   z+NumPyRandomGeneratorType_zipf.<locals>.implþ  s   € Ý”8�K¨Ô(:¸AÑ>Ô>Ñ?Ô?Ð?rD   c                 ó²   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r¡   )r7   r¤   rx   r¥   r…   rI   r(   rd   r  s         rB   rk   z+NumPyRandomGeneratorType_zipf.<locals>.impl  sS   € Ý”(˜4¥r¤xÐ0Ñ0Ô0ˆCØ”HˆEÝ˜3œ8‘_”_ð >ð >�Ý& tÔ'9¸1Ñ=Ô=��a‘�ØˆJrD   r›   rÐ   r  s       rB   ÚNumPyRandomGeneratorType_zipfr>  ÷  s’   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	@ð 	@ð 	@ð 	@àˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Ú
triangularc                 óÊ  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚleftÚmodeÚrightc                 ó0   — t          | j        |||¦  «        S r›   )r)   rd   )rf   rA  rB  rC  rI   s        rB   rk   z1NumPyRandomGeneratorType_triangular.<locals>.impl  s   € Ý$ TÔ%7¸¸tÀUÑKÔKÐKrD   c                 óž   — t          j        |¦  «        }|j        }t          |j        ¦  «        D ]}t          | j        |||¦  «        ||<   Œ|S r›   )r7   r¤   r¥   r…   rI   r)   rd   )rf   rA  rB  rC  rI   r§   r¨   r‹   s           rB   rk   z1NumPyRandomGeneratorType_triangular.<locals>.impl  sW   € Ý”(˜4‘.”.ˆCØ”HˆEÝ˜3œ8‘_”_ð @ð @�Ý,¨TÔ-?Ø-1°4¸ñ@ô @��a‘�àˆJrD   r›   rÐ   )rf   rA  rB  rC  rI   rk   s         rB   Ú#NumPyRandomGeneratorType_triangularrF    sÐ   € å�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Lð 	Lð 	Lð 	Làˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Úpoissonc                 óþ   — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚlamc                 óP   — t          j        t          | j        |¦  «        ¦  «        S r›   )r7   rx   r*   rd   )rf   rI  rI   s      rB   rk   z.NumPyRandomGeneratorType_poisson.<locals>.impl-  s   € Ý”8�N¨4Ô+=¸sÑCÔCÑDÔDÐDrD   c                 ó²   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r¡   )r7   r¤   rx   r¥   r…   rI   r*   rd   )rf   rI  rI   r§   r¨   r‹   s         rB   rk   z.NumPyRandomGeneratorType_poisson.<locals>.impl3  sU   € Ý”(˜4¥r¤xÐ0Ñ0Ô0ˆCØ”HˆEÝ˜3œ8‘_”_ð Cð C�Ý)¨$Ô*<¸cÑBÔB��a‘�ØˆJrD   r›   rÐ   )rf   rI  rI   rk   s       rB   Ú NumPyRandomGeneratorType_poissonrL  &  s’   € å�•e”k¥5¤=µ#µuÐ=¸uÑEÔEÐEÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Eð 	Eð 	Eð 	Eàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Únegative_binomialc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NÚnr6  c                 óR   — t          j        t          | j        ||¦  «        ¦  «        S r›   )r7   rx   r+   rd   ©rf   rO  r6  rI   s       rB   rk   z8NumPyRandomGeneratorType_negative_binomial.<locals>.implD  s"   € Ý”8Õ4°TÔ5GÈÈAÑNÔNÑOÔOÐOrD   c                 ó´   — t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r¡   )r7   r¤   rx   r¥   r…   rI   r+   rd   )rf   rO  r6  rI   r§   r¨   r‹   s          rB   rk   z8NumPyRandomGeneratorType_negative_binomial.<locals>.implJ  sW   € Ý”(˜4¥r¤xÐ0Ñ0Ô0ˆCØ”HˆEÝ˜3œ8‘_”_ð Nð N�Ý3°DÔ4FÈÈ1ÑMÔM��a‘�ØˆJrD   r›   rÐ   ©rf   rO  r6  rI   rk   s        rB   Ú*NumPyRandomGeneratorType_negative_binomialrT  <  s±   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Pð 	Pð 	Pð 	Pàˆå�4ÑÔÐð	ð 	ð 	ð 	ð ˆrD   Únoncentral_chisquarec                 óŽ  ‡— t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          d„ ¦   «         Št          |¦  «        rdˆfd„	}|S t          |¦  «         dˆfd„	}|S )Nrö   Únoncc                 óZ   — | dk    rt          d¦  «        ‚|dk     rt          d¦  «        ‚d S )Nr   zdf <= 0únonc < 0©rs   )rö   rW  s     rB   Úcheck_arg_boundszGNumPyRandomGeneratorType_noncentral_chisquare.<locals>.check_arg_boundsZ  s7   € à�Š7ˆ7Ý˜YÑ'Ô'Ð'Ø�!Š8ˆ8Ý˜ZÑ(Ô(Ð(ð ˆ8rD   c                 ól   •—  ‰||¦  «         t          j        t          | j        ||¦  «        ¦  «        S r›   )r7   r;   r-   rd   )rf   rö   rW  rI   r[  s       €rB   rk   z;NumPyRandomGeneratorType_noncentral_chisquare.<locals>.implb  sF   ø€ ØÐ˜R Ñ&Ô&Ð&Ý”:Õ9¸$Ô:LØ:<¸dñDô Dñ Eô Eð ErD   c                 óÎ   •—  ‰||¦  «         t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        ||¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r-   rd   )rf   rö   rW  rI   r§   r¨   r‹   r[  s          €rB   rk   z;NumPyRandomGeneratorType_noncentral_chisquare.<locals>.implj  sr   ø€ ØÐ˜R Ñ&Ô&Ð&Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Að A�Ý6°tÔ7IØ79¸4ñAô A��a‘�àˆJrD   r›   ©rV   r   rÂ   rG   ro   rÃ   r3   r4   r5   r   r
   rJ   )rf   rö   rW  rI   rk   r[  s        @rB   Ú-NumPyRandomGeneratorType_noncentral_chisquarer_  S  sæ   ø€ å�•U”[¥%¤-µµeÐ<¸dÑCÔCÐCÝ�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ�$�œÑ&Ô&ð ØŒzˆåð)ð )ñ Ôð)õ �4ÑÔð ð	Eð 	Eð 	Eð 	Eð 	Eð 	Eð ˆå�4ÑÔÐð	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Únoncentral_fc                 óô  ‡— t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          d„ ¦   «         Št          |¦  «        rdˆfd„	}|S t          |¦  «         dˆfd„	}|S )Nrï   rð   rW  c                 ó„   — | dk    rt          d¦  «        ‚|dk    rt          d¦  «        ‚|dk     rt          d¦  «        ‚d S )Nr   z
dfnum <= 0z
dfden <= 0rY  rZ  )rï   rð   rW  s      rB   r[  z?NumPyRandomGeneratorType_noncentral_f.<locals>.check_arg_bounds}  sN   € à�AŠ:ˆ:Ý˜\Ñ*Ô*Ð*Ø�AŠ:ˆ:Ý˜\Ñ*Ô*Ð*Ø�!Š8ˆ8Ý˜ZÑ(Ô(Ð(ð ˆ8rD   c                 óp   •—  ‰|||¦  «         t          j        t          | j        |||¦  «        ¦  «        S r›   )r7   r;   r.   rd   )rf   rï   rð   rW  rI   r[  s        €rB   rk   z3NumPyRandomGeneratorType_noncentral_f.<locals>.impl‡  sJ   ø€ ØÐ˜U E¨4Ñ0Ô0Ð0Ý”:Õ1°$Ô2DØ27¸ÀñFô Fñ Gô Gð GrD   c                 óÒ   •—  ‰|||¦  «         t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |||¦  «        ||<   Œ|S r¡   )r7   r¤   r;   r¥   r…   rI   r.   rd   )	rf   rï   rð   rW  rI   r§   r¨   r‹   r[  s	           €rB   rk   z3NumPyRandomGeneratorType_noncentral_f.<locals>.impl�  sv   ø€ ØÐ˜U E¨4Ñ0Ô0Ð0Ý”(˜4¥r¤zÐ2Ñ2Ô2ˆCØ”HˆEÝ˜3œ8‘_”_ð Cð C�Ý.¨tÔ/AØ/4°e¸TñCô C��a‘�àˆJrD   r›   r^  )rf   rï   rð   rW  rI   rk   r[  s         @rB   Ú%NumPyRandomGeneratorType_noncentral_fre  u  s  ø€ å��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ��œ¥U¤]µC½Ð?ÀÑIÔIÐIÝ�•u”{¥E¤Mµ3½Ð>ÀÑGÔGÐGÝ�$�œÑ&Ô&ð ØŒzˆåð)ð )ñ Ôð)õ �4ÑÔð ð	Gð 	Gð 	Gð 	Gð 	Gð 	Gð ˆå�4ÑÔÐð	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Ú	logseriesc                 ó(  ‡— t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          d„ ¦   «         Št          |¦  «        rdˆfd„	}|S t          |¦  «         dˆfd„	}|S )Nr6  c                 ód   — | dk     s| dk    st          j        | ¦  «        rt          d¦  «        ‚d S )Nr   ra   zp < 0, p >= 1 or p is NaN)r7   Úisnanrs   )r6  s    rB   r[  z<NumPyRandomGeneratorType_logseries.<locals>.check_arg_bounds   s5   € àˆqŠ5ˆ5�A˜’F�F�bœh q™kœk�FÝÐ8Ñ9Ô9Ð9ð �FrD   c                 óh   •—  ‰|¦  «         t          j        t          | j        |¦  «        ¦  «        S r›   )r7   rx   r,   rd   )rf   r6  rI   r[  s      €rB   rk   z0NumPyRandomGeneratorType_logseries.<locals>.impl¦  s2   ø€ ØÐ˜QÑÔÐÝ”8Õ,¨TÔ-?ÀÑCÔCÑDÔDÐDrD   c                 óÊ   •—  ‰|¦  «         t          j        |t           j        ¬¦  «        }|j        }t	          |j        ¦  «        D ]}t          | j        |¦  «        ||<   Œ|S r¡   )r7   r¤   rx   r¥   r…   rI   r,   rd   )rf   r6  rI   r§   r¨   r‹   r[  s         €rB   rk   z0NumPyRandomGeneratorType_logseries.<locals>.impl­  sg   ø€ ØÐ˜QÑÔÐÝ”(˜4¥r¤xÐ0Ñ0Ô0ˆCØ”HˆEÝ˜3œ8‘_”_ð Cð C�Ý+¨DÔ,>ÀÑBÔB��a‘�ØˆJrD   r›   r^  )rf   r6  rI   rk   r[  s       @rB   Ú"NumPyRandomGeneratorType_logseriesrl  š  sÇ   ø€ å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�$�œÑ&Ô&ð ØŒzˆåð:ð :ñ Ôð:õ �4ÑÔð ð	Eð 	Eð 	Eð 	Eð 	Eð 	Eð ˆå�4ÑÔÐð	ð 	ð 	ð 	ð 	ð 	ð ˆrD   Úbinomialc                 ód  — t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        t          j        t          t
          gd¦  «         t          |t          j        ¦  «        r|j        }t          |¦  «        rdd„}|S t          |¦  «         dd„}|S )NrO  r6  c                 óR   — t          j        t          | j        ||¦  «        ¦  «        S r›   )r7   rx   r/   rd   rQ  s       rB   rk   z/NumPyRandomGeneratorType_binomial.<locals>.implÀ  s!   € Ý”8�O¨DÔ,>ÀÀ1ÑEÔEÑFÔFÐFrD   c                 ó¦   — t          j        |t           j        ¬¦  «        }t          j        |¦  «        D ]}t	          | j        ||¦  «        ||<   Œ|S r¡   )r7   r¤   rx   Úndindexr/   rd   )rf   rO  r6  rI   r§   r‹   s         rB   rk   z/NumPyRandomGeneratorType_binomial.<locals>.implÆ  sR   € Ý”(˜4¥r¤xÐ0Ñ0Ô0ˆCÝ”Z Ñ%Ô%ð Cð C�Ý(¨Ô);¸QÀÑBÔB��A‘�ØˆJrD   r›   rÐ   rS  s        rB   Ú!NumPyRandomGeneratorType_binomialrr  ·  s±   € å�•E”K¥¤µµUÐ;¸SÑAÔAÐAÝ�•E”K¥¤µµUÐ;¸SÑAÔAÐAå�$�œÑ&Ô&ð ØŒzˆå�4ÑÔð ð	Gð 	Gð 	Gð 	Gàˆå�4ÑÔÐð	ð 	ð 	ð 	ð
 ˆrD   )r1   r�   rÏ   rÞ   r›   )`Ú__doc__Únumpyr7   Ú
numba.corer   Únumba.core.extendingr   r   Únumba.np.numpy_supportr   r   Únumba.np.random.generator_corer   r	   r
   Únumba.core.errorsr   Únumba.core.types.containersr   r   Únumba.np.random.distributionsr   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/   Únumba.np.randomr0   rC   rJ   rV   ÚNumPyRandomGeneratorTyperx   r{   r�   r—   r;   r«   r·   r¼   rÄ   rÒ   r×   rà   rå   rì   ró   rü   r  r	  r  r  r  r  r$  r)  r.  r3  r9  r>  rF  rL  rT  r_  re  rl  rr  rM   rD   rB   ú<module>r~     s4	  ððð ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ .Ð .Ð .Ð .Ð .Ð .Ø )Ð )Ð )Ð )Ð )Ð )Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7ðHð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð Hð +Ð *Ð *Ð *Ð *Ð *ðð ð ð ð>Pð Pð Pð=ð =ð =ð" €�Ô/°Ñ<Ô<Ø<@Ø,.¬H¸uðPð Pð Pñ =Ô<ðPðn €�Ô/°Ñ;Ô;ðð ð ñ <Ô;ðð8 €�Ô/°Ñ?Ô?ðð ð ñ @Ô?ðð( €�Ô/°Ñ:Ô:Ø/3¸2¼:ð ð ð ñ ;Ô:ðð. €�Ô/Ð1GÑHÔHØ=AØ8:¼
Ø9>ð)ð )ð )ñ IÔHð)ðZ €�Ô/Ð1BÑCÔCØ8<ÀBÄJð ð ð ñ DÔCðð0 €�Ô/Ð1AÑBÔBØ>BØ24´*ðð ð ñ CÔBðð4 €�Ô/°Ñ:Ô:Ø9<Ø)-ðð ð ñ ;Ô:ðð0 €�Ô/°Ñ;Ô;Ø9<Ø*.ðð ð ñ <Ô;ðð0 €�Ô/°Ñ?Ô?ðð ð ñ @Ô?ðð, €�Ô/°Ñ9Ô9ðð ð ñ :Ô9ðð. €�Ô/°Ñ8Ô8ðð ð ñ 9Ô8ðð. €�Ô/°Ñ5Ô5ðð ð ñ 6Ô5ðð. €�Ô/°Ñ=Ô=ðð ð ñ >Ô=ðð* €�Ô/Ð1BÑCÔCðð ð ñ DÔCðð* €�Ô/°Ñ:Ô:ðð ð ñ ;Ô:ðð* €�Ô/°Ñ;Ô;ðð ð ñ <Ô;ðð* €�Ô/°Ñ9Ô9ðð ð ñ :Ô9ðð* €�Ô/°Ñ;Ô;ðð ð ñ <Ô;ðð, €�Ô/°Ñ<Ô<ðð ð ñ =Ô<ðð, €�Ô/°Ñ=Ô=ðð ð ñ >Ô=ðð, €�Ô/°Ñ<Ô<ðð ð ñ =Ô<ðð* €�Ô/°Ñ>Ô>ðð ð ñ ?Ô>ðð* €�Ô/°Ñ8Ô8ðð ð ñ 9Ô8ðð, €�Ô/°Ñ=Ô=ðð ð ñ >Ô=ðð* €�Ô/°Ñ8Ô8ðð ð ñ 9Ô8ðð* €�Ô/°Ñ>Ô>ðð ð ñ ?Ô>ðð0 €�Ô/°Ñ;Ô;ðð ð ñ <Ô;ðð* €�Ô/Ð1DÑEÔEðð ð ñ FÔEðð, €�Ô/Ð1GÑHÔHðð ð ñ IÔHððB €�Ô/°Ñ@Ô@ð!ð !ð !ñ AÔ@ð!ðH €�Ô/°Ñ=Ô=ðð ð ñ >Ô=ðð8 €�Ô/°Ñ<Ô<ðð ð ñ =Ô<ðð ð rD   