+
    ei c                   sR   ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHtHtH	t	H
t
HtHtHtHtHt  ! R R4      t ! R R4      t ! R R	4      t ! R
 R4      t ! R R4      t ! R R4      t ! R R4      t]P.                  P1                  ]RR7       ! R R4      4       t ! R R4      tR# )    N)random)	IS_WASMassert_assert_array_almost_equalassert_array_equalassert_equalassert_no_warningsassert_raisesassert_warnssuppress_warningsc                   s>   a  ] tR t^t o R tR tR tR tR tRt	V t
R# )TestSeedc                s    \         P                  P                  ^ 4      p\        VP	                  R4      R4       \         P                  P                  R4      p\        VP	                  R4      R4       R# )r      i      i  N)npr   RandomStater   randintselfs   & E/usr/lib64/python3.14/site-packages/numpy/random/tests/test_random.pytest_scalarZTestSeed.test_scalar   sN    II!!!$QYYt_c*II!!*-QYYt_c*    c                s   \         P                  P                  \        ^
4      4      p\	        VP                  R4      R4       \         P                  P                  \         P                  ! ^
4      4      p\	        VP                  R4      R4       \         P                  P                  ^ .4      p\	        VP                  R4      R4       \         P                  P                  R.4      p\	        VP                  R4      R4       R# )
   r   i  i  r   i	  N)r   r   r   ranger   r   aranger   r   r   
test_arrayZTestSeed.test_array   s    II!!%),QYYt_c*II!!"))B-0QYYt_c*II!!1#&QYYt_c*II!!:,/QYYt_c*r   c                s    \        \        \        P                  P                  R4       \        \
        \        P                  P                  R4       R# )      ?N      r   	TypeErrorr   r   r   
ValueErrorr      &r   test_invalid_scalarZTestSeed.test_invalid_scalar&   s.    i!6!6=j"))"7"7<r   c                s   \        \        \        P                  P                  R.4       \        \
        \        P                  P                  R.4       \        \
        \        P                  P                  R.4       \        \
        \        P                  P                  . RO4       \        \
        \        P                  P                  . RO4       R# )r           Nr   r   )      r%   )r&   r%   r   r"   r#   r   test_invalid_arrayZTestSeed.test_invalid_array+   sx    i!6!6?j"))"7"7">j"))"7"7*Fj"))"7"79KLj"))"7"79LMr   c           	     sV   \        \        \        P                  P                  \        P
                  ! . \        P                  R 7      4       \        \        \        P                  P                  . RO.4       \        \        \        P                  P                  . RO. RO.4       R# )dtypeNr&   r'      )         )r   r!   r   r   r   arrayint64r"   r#   r   test_invalid_array_shapeZ!TestSeed.test_invalid_array_shape3   sd    j"))"7"7hhr2	4j"))"7"7)Ej"))"7"7):C:E 	Fr    N)__name__
__module____qualname____firstlineno__r   r   r$   r)   r3   __static_attributes____classdictcell__Z__classdict__   @r   r   r      s&     ++=
NF Fr   r   c                   s,   a  ] tR t^<t o R tR tRtV tR# )TestBinomialc                s    \         P                  ! ^RR7      pR FF  p\        \        P                  ! ^ V4      ^ 8H  4       \        \        P                  ! W4      V4       KH  	  R# )r'   intr*   N)r    r   r&   )r   zerosr   r   binomialr   )r   r?   p   &  r   test_n_zeroZTestBinomial.test_n_zero=   sI     %(AFOOAq)Q./vu8%@ r   c                sb    \        \        \        P                  ^\        P
                  4       R# )r&   N)r   r!   r   r@   r   nanr"   r#   r   test_p_is_nanZTestBinomial.test_p_is_nanF   s    j&//1bff=r   r4   N)r5   r6   r7   r8   rC   rE   r9   r:   r;   r<   r   r=   r=   <   s     A> >r   r=   c                   s>   a  ] tR t^Kt o R tR tR tR tR tRt	V t
R# )TestMultinomialc                s8    \         P                  ! ^dRR.4       R# )d   皙?皙?Nr   multinomialr"   r#   r   
test_basicZTestMultinomial.test_basicL   s    3c
+r   c                s8    \         P                  ! ^d. RO4       R# )rG   N)rH   rI           rM   rM   rJ   r"   r#   r   test_zero_probabilityZ%TestMultinomial.test_zero_probabilityO   s    3 9:r   c                s&   \        R\        P                  ! RR4      u;8*  ;'       d    R8  Mu 4       \        P                  ! RR^4      p\        \        P                  ! RV8*  4      4       \        \        P                  ! VR8  4      4       R# )r/   Nir   )r   r   r   r   all)r   xr   r   test_int_negative_intervalZ*TestMultinomial.test_int_negative_intervalR   s\    fnnR,11r12NN2r1%rQw q2vr   c           	     s   R R .p\        \        P                  P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  P                  ^V^^.4      P
                  R4       \        \        P                  P                  ^VR4      P
                  R4       \        \        P                  P                  ^V\        P                  ! R4      4      P
                  R4       \        \        \        P                  P                  ^V\        ^4      4       R# )r   Nr&   r'   r'   r'   r'   r'   r'   )
r   r   r   rK   uint32shaper1   r   r    floatr   rA   r   r   	test_sizeZTestMultinomial.test_sizeX   s(   #JRYY**1a1>DDfMRYY**1a1>DDfMRYY**1a1>DDfMRYY**1a!Q8>>	JRYY**1a8>>	JRYY**1a&1ABHH	  	i!6!61Ah	 r   c           
     s   \        \        \        P                  P                  ^
^ ^..4       \        \        \        P                  P                  ^
^ .^..4       \        \        \        P                  P                  ^
^ .^..^.^ ...4       \        \        \        P                  P                  ^
\        P
                  ! ^ ^.^^ ..4      4       R# )r   N)r   r!   r   r   rK   r1   r"   r#   r   test_multidimensional_pvalsZ+TestMultinomial.test_multidimensional_pvalsf   s    j"))"7"7q!fXFj"))"7"7qcA3ZHj"))"7"7sQCjA3QRPS*=UVj"))"7"7RXX1vPQSTvFV=WXr   r4   N)r5   r6   r7   r8   rL   rN   rQ   rY   rZ   r9   r:   r;   r<   r   rF   rF   K   s%     ,;  Y Yr   rF   c                   sJ   a  ] tR t^mt o R tR tR tR tR tR t	R t
RtV tR	# )
TestSetStatec                s    R V n         \        P                  ! V P                   4      V n        V P                  P	                  4       V n        R# iIN)seedr   r   prng	get_statestater"   r#   r   setup_methodZTestSetState.setup_methodn   s3    	&&tyy1	YY((*
r   c                s    V P                   P                  ^4      pV P                   P                  V P                  4       V P                   P                  ^4      p\	        \
        P                  ! W8H  4      4       R# )   N)r^   Ztomaxint	set_stater`   r   r   rO   r   oldnewrB   r   rL   ZTestSetState.test_basics   sS    ii  $		DJJ'ii  $sz"#r   c                s   V P                   P                  ^R7      pV P                   P                  V P                  4       V P                   P                  ^R7      p\	        \
        P                  ! W8H  4      4       R# r-   sizeN)r^   standard_normalrc   r`   r   r   rO   rd   rB   r   test_gaussian_resetZ TestSetState.test_gaussian_resety   sY    ii''Q'/		DJJ'ii''Q'/sz"#r   c                sV   V P                   P                  4        V P                   P                  4       pV P                   P                  ^R7      pV P                   P                  V4       V P                   P                  ^R7      p\	        \
        P                  ! W#8H  4      4       R# rg   )r^   rj   r_   rc   r   r   rO   )r   r`   re   rf      &   r    test_gaussian_reset_in_media_resZ-TestSetState.test_gaussian_reset_in_media_res   sy     			!!#		##%ii''Q'/		E"ii''Q'/sz"#r   c                s   V P                   R R pV P                  P                  ^R7      pV P                  P                  V4       V P                  P                  ^R7      pV P                  P                  V P                   4       V P                  P                  ^R7      p\	        \
        P                  ! W#8H  4      4       \	        \
        P                  ! W$8H  4      4       R # )Nrh   r(   )r`   r^   rj   rc   r   r   rO   )r   Z	old_stateZx1Zx2Zx3   &    r   test_backwards_compatibilityZ)TestSetState.test_backwards_compatibility   s     JJsO	YY&&B&/		I&YY&&B&/		DJJ'YY&&B&/rx !rx !r   c                s>    V P                   P                  R R 4       R# r   N)r^   negative_binomialr"   r#   r   test_negative_binomialZ#TestSetState.test_negative_binomial   s     			##C-r   c                s    \         P                  ! \        4      ;_uu_ 4        V P                  P	                  R4       R R R 4       R #   + '       g   i     R # ; i)Nr4   )pytestraisesZ
IndexErrorr^   rc   r"   r#   r   test_set_invalid_stateZ#TestSetState.test_set_invalid_state   s2    ]]:&&II# '&&&s   A		A	)r^   r]   r`   N)r5   r6   r7   r8   ra   rL   rk   rm   ro   rr   ru   r9   r:   r;   r<   r   r[   r[   m   s-     +
$$	$
".
$ $r   r[   c            	       sF  a  ] tR t^t o ]P
                  P                  t]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                   .	tR tR tR tR tR tR tR tR tR	tV tR
# )TestRandintc                sH    \        \        V P                  ^\        R7       R# r&   r*   N)r   r    rfuncrW   r"   r#   r   test_unsupported_typeZ!TestRandint.test_unsupported_type   s    iQe<r   c           	     s   V P                    F  pV\        P                  J d   ^ M\        P                  ! V4      P                  pV\        P                  J d   ^M&\        P                  ! V4      P
                  ^,           p\        \        V P                  V^,
          W1R7       \        \        V P                  W#^,           VR7       \        \        V P                  W2VR7       \        \        V P                  ^^ VR7       K  	  R# )r    r*   N)	ityper   booliinfominmaxr   r!   rx   )r   dtlbndubndrl   r   test_bounds_checkingZ TestRandint.test_bounds_checking   s    **Bbgg1288B<+;+;Dbgg1288B<+;+;a+?D*djj$(DK*djj$qK*djj$BG*djj!QbA r   c           
     s(   V P                    EF   pV\        P                  J d   ^ M\        P                  ! V4      P                  pV\        P                  J d   ^M&\        P                  ! V4      P
                  ^,           pV^,
          p\        V P                  WD^,           RVR7      V4       Tp\        V P                  WD^,           RVR7      V4       W#,           ^,          p\        V P                  WD^,           RVR7      V4       EK  	  R# )r    r   ri   r+   N)rz   r   r{   r|   r}   r~   r   rx   )r   r   r   r   tgtrn   r   test_rng_zero_and_extremesZ&TestRandint.test_rng_zero_and_extremes   s    **Bbgg1288B<+;+;Dbgg1288B<+;+;a+?D(CCqt2FLCCqt2FL;1$CCqt2FL r   c                s   V P                    F  pV\        P                  J d   ^ M\        P                  ! V4      P                  pV\        P                  J d   ^M&\        P                  ! V4      P
                  ^,           p V P                  W#VR7       K  	  R#   \         d!   p\        R\        T4      ,          4      hRp?ii ; i)r    r*   zMNo error should have been raised, but one was with the following message:

%sN)
rz   r   r{   r|   r}   r~   rx   Z	ExceptionZAssertionErrorZstr)r   r   r   r   Zern   r   test_full_rangeZTestRandint.test_full_range   s     **Bbgg1288B<+;+;Dbgg1288B<+;+;a+?D@

4R
0   @$ &68;A&? @ @@s   BC(CCc           	     s   \         P                  P                  4        V P                  R ,           FY  pR FP  pV P	                  ^VRVR7      p\        VP                  4       V8  4       \        VP                  4       ^8  4       KR  	  K[  	  V P	                  ^ ^R\         P                  R7      p\        VP                  4       ^8  4       \        VP                  4       ^ 8  4       R# )r&   NNr   N)r.      rb   i   )	r   r   r]   rz   rx   r   r~   r}   r{   )r   r   r   Zvalsrl   r   test_in_bounds_fuzzZTestRandint.test_in_bounds_fuzz   s    
		**R..B"zz!TRz@
T)*
a( # ! zz!QU"''z:
Q
a r   c                sx   ^ RI pRRRRRRRR	R
RRRRRRR	RR/	pV P                  R,           F  p\        P                  P	                  R4       \
        P                  R8X  d   V P                  ^ ^RVR7      pM#V P                  ^ ^RVR7      P                  4       pVP                  VP                  \        P                  4      4      P                  4       p\        V\        P                  ! V4      P                  ,          V8H  4       K  	  \        P                  P	                  R4       V P                  ^ ^R\         R7      P                  \        P                  4      pVP                  V4      P                  4       p\        V\        P                  ! \         4      P                  ,          V8H  4       R# )r    Nr{   Z@509aea74d792fb931784c4b0135392c65aec64beee12b0cc167548a2c3d31e71int16Z@7b07f1a920e46f6d0fe02314155a2330bcfd7635e708da50e536c5ebb631a7d4int32Z@e577bfed6c935de944424667e3da285012e741892dcb7051a8f1ce68ab05c92fr2   Z@0fbead0b06759df2cfb55e43148822d4a1ff953c7eb19a5b08445a63bb64fa9eint8Z@001aac3a5acb935a9b186cbe14a1ca064b8bb2dd0b045d48abeacf74d0203404uint16rU   uint64uint8r   i  Zlittler   r   )hashlibrz   r   r   r]   sysZ	byteorderrx   ZbyteswapZsha256viewr   Z	hexdigestr   r+   Znamer{   )r   r   r   r   ZvalZres   &     r   test_repeatabilityZTestRandint.test_repeatability   s`    [[[[[[[[[] **R..BIINN4  }}(jjADj;jjADj;DDF.."''!23==?CC))*c12 ! 			tjjADj5::277CnnS!++-BHHTN''(C/0r   c                s   \         P                  p\         P                  ! \         P                  4      P                  p\         P                  ! \         P                  ! \         P                  4      P                  4      p\         P                  ! \         P                  ! \         P                  4      P                  ^,           4      p\         P
                  P                  W4VR7      p\        WR4       R# rw   )r   r2   r|   r~   r   r   r   r   )r   r   r   r   r   actualr   r   test_int64_uint64_corner_caseZ)TestRandint.test_int64_uint64_corner_case  s     XXhhrxx $$xx*../yy"((+//!34 ""4R"8V!r   c                s   V P                    F  pV\        P                  J d   ^ M\        P                  ! V4      P                  pV\        P                  J d   ^M&\        P                  ! V4      P
                  ^,           pV P                  W#VR7      p\        VP                  \        P                  ! V4      4       K  	  \        \        3 F  pV\        J d   ^ M\        P                  ! R4      P                  pV\        J d   ^M&\        P                  ! R4      P
                  ^,           pV P                  W#VR7      p\        \        VR4      '       * 4       \        \        V4      V4       K  	  R# )r    r*   Zlongr+   N)rz   r   r{   r|   r}   r~   rx   r   r+   r>   r   ZhasattrZtype)r   r   r   r   samplern   r   test_respect_dtype_singletonZ(TestRandint.test_respect_dtype_singleton  s    **Bbgg1288B<+;+;Dbgg1288B<+;+;a+?DZZ"Z5Frxx|4  +Bd
1(8(<(<Dd
1(8(<(<q(@D ZZ"Z5F001fr* r   r4   N)r5   r6   r7   r8   r   r   r   rx   r{   r   r   r   r   r   rU   r2   r   rz   ry   r   r   r   r   r   r   r   r9   r:   r;   r<   r   rv   rv      s     IIE WWbggrxx299XXryy"((BII7E=BM@!1B".+ +r   rv   c                   s  a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR t]P0                  P3                  R]P6                  ]P6                  P9                  4       ]P6                  P;                  4       .4      R 4       t]P0                  P3                  R]P6                  ]P6                  P9                  4       ]P6                  P;                  4       .4      ]P0                  P3                  RRR.4      R 4       4       tR t R t!R t"R t#R t$R  t%R! t&R" t'R# t(R$ t)R% t*R& t+R' t,R( t-R) t.R* t/R+ t0R, t1R- t2R. t3R/ t4R0 t5R1 t6R2 t7R3 t8R4 t9R5 t:R6 t;R7 t<R8 t=R9 t>R: t?R; t@R< tAR= tBR> tCR? tDR@ tERA tFRB tGRC tHRD tIRE tJRF tKRG tLRH tMRI tNRJ tORK tPRL tQRM tRRN tSROtTV tURP# )QTestRandomDisti-  c                    R V n         R# r\   r]   r"   r#   r   ra   ZTestRandomDist.setup_method1  s	    	r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^4      p\         P                  ! RR.RR.RR..4      p\        W^R7       R# )	r-   _\*?琛?<p?,o?H?Z?ZdecimalN)r   r   r]   Zrandr1   r   r   r   desiredrB   r   	test_randZTestRandomDist.test_rand4  sf    
		tyy!1%((02EF02EF/1CDF G 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^4      p\         P                  ! RR.RR.RR..4      p\        W^R7       R# )	r-   !<Oq?4u,?3?@? @HS\@r   NLI/DͿ)r   r   r]   Zrandnr1   r   r   rB   r   
test_randnZTestRandomDist.test_randn<  sf    
		tyy!A&((02EF-/BC-/BCE F 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  R^cRR7      p\         P                  ! ^^.R^).RR..4      p\        W4       R# ic   rh   Nir-   r'   iii)r   r   r]   r   r1   r   r   rB   r   test_randintZTestRandomDist.test_randintD  sb    
		tyy!""3"8((RG "I #J( ) 	6+r   c                s   \         P                  P                  V P                  4       \        4       ;_uu_ 4       pVP	                  \
        4      p\         P                  P                  R^cRR7      p\        \        V4      ^8H  4       RRR4       \         P                  ! ^^.R^).RR..4      p\        XV4       R#   + '       g   i     L=; ir   )r   r   r]   r
   recordDeprecationWarningrandom_integersr   lenr1   r   r   supwr   r   rn   r   test_random_integersZ#TestRandomDist.test_random_integersL  s    
		tyy!  C

-.AYY..sBV.DFCFaK  ! ((RG "I #J( ) 	67+ ! s   AC  C	c                s   \        4       ;_uu_ 4       pVP                  \        4      p\        P                  P                  \        P                  ! R 4      P                  \        P                  ! R 4      P                  4      p\        \        V4      ^8H  4       RRR4       \        P                  ! R 4      P                  p\        XV4       R#   + '       g   i     L>; i)lN)r
   r   r   r   r   r   r|   r~   r   r   r   r   rn   r   test_random_integers_max_intZ+TestRandomDist.test_random_integers_max_intW  s       C

-.AYY..rxx}/@/@/1xx}/@/@BFCFaK 	 ! ((3-##VW% ! s   B	CC"	c           
     s
   \         P                  ! 4       ;_uu_ 4        \         P                  ! R \        4       \	        \        \
        P                  P                  \
        P                  ! R4      P                  4       \	        \        \
        P                  P                  \
        P                  ! R4      P                  \
        P                  ! R4      P                  4       RRR4       R#   + '       g   i     R# ; i)Zerrorr   N)
warningsZcatch_warningsZsimplefilterr   r   r   r   r   r|   r~   r"   r#   r   test_random_integers_deprecatedZ.TestRandomDist.test_random_integers_deprecatedf  s    $$&&!!'+=> ,))33((3-++-
 ,))33((3-++RXXc]->->@ '&&&s   C	C11D	c                s    \         P                  P                  V P                  4       \         P                  P                  R	4      p\         P                  ! RR.RR.RR..4      p\	        W^R7       R# )
r-   r   r   r   r   r   r   r   Nr   )r   r   r]   r1   r   r   rB   r   test_randomZTestRandomDist.test_randomt  sf    
		tyy!!!&)((02EF02EF/1CDF G 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^4      p\         P                  ! . RO4      p\        W4       R# )r.   N)r'   r-   r'   r-   r   r   r]   choicer1   r   r   rB   r   test_choice_uniform_replaceZ*TestRandomDist.test_choice_uniform_replace|  sB    
		tyy!!!!Q'((<(6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^. ROR7      p\         P                  ! . RO4      p\        W4       R# )r.   rA   N)皙?r   皙?r   )r&   r&   r'   r'   r   r   rB   r   test_choice_nonuniform_replaceZ-TestRandomDist.test_choice_nonuniform_replace  sH    
		tyy!!!!Q*>!?((<(6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^RR7      p\         P                  ! . RO4      p\        W4       R# )r.   FreplaceN)r    r&   r-   r   r   rB   r   test_choice_uniform_noreplaceZ,TestRandomDist.test_choice_uniform_noreplace  sG    
		tyy!!!!Q!6((9%6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^R. ROR7      p\         P                  ! . RO4      p\        W4       R# )r.   Fr   rA   N)r   g333333?r   r   )r'   r-   r&   r   r   rB   r    test_choice_nonuniform_noreplaceZ/TestRandomDist.test_choice_nonuniform_noreplace  sN    
		tyy!!!!Q$8 " :((9%6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  . RO^4      p\         P                  ! . RO4      p\        W4       R# )aN)r   bcd)r   r   r   r   r   r   rB   r   test_choice_nonintegerZ%TestRandomDist.test_choice_noninteger  sD    
		tyy!!!"6:((/06+r   c           	     s   \         P                  P                  p\        \        VR
^4       \        \        VR^4       \        \        V^^.^^..^4       \        \        V. ^4       \        \        V. RO^RR.RR..R7       \        \        V^^.^. ROR7       \        \        V^^.^RR.R7       \        \        V^^.^RR.R7       \        \        V. RO^RR7       \        \        V. RORRR7       \        \        V. RORRR7       \        \        V. RORRR7       \        \        V. RO^R. ROR7       R	# )r&   g      @g      ?r   r   g?Fr   r   Nr   )r&   r'   r-   r.   )r   r   rH   gr,   r(   )r   )r   r&   )r&   r    r    )r   r   r   r   r!   )r   r   r   r   test_choice_exceptionsZ%TestRandomDist.test_choice_exceptions  s   !!j&"a0j&"a0j&Aq6Aq6*:A>j&"a0j&,d|4	6j&1a&!Gj&1a&!T{Cj&1a&!SzBj&)QFj&)RGj&)UEJj&)WeLj&)Q#y	2r   c                s   R R.p\        \        P                  ! \        P                  P	                  ^RR7      4      4       \        \        P                  ! \        P                  P	                  ^RR7      4      4       \        \        P                  ! \        P                  P	                  ^RVR7      4      4       \        \        P                  ! \        P                  P	                  ^RVR7      4      4       \        \        P                  ! \        P                  P	                  ^^.RR7      4      4       \        \        P                  P	                  R.RR7      RJ 4       \        P
                  ! ^^.4      p\        P                  ! ^\        R7      pW#^ &   \        \        P                  P	                  VRR7      VJ 4       Rp\        \        P                  ! \        P                  P	                  ^VRR7      4      '       * 4       \        \        P                  ! \        P                  P	                  ^VRR7      4      '       * 4       \        \        P                  ! \        P                  P	                  ^VRVR7      4      '       * 4       \        \        P                  ! \        P                  P	                  ^VRVR7      4      '       * 4       \        \        P                  ! \        P                  P	                  ^^.VRR7      4      '       * 4       \        \        P                  P	                  R.VRR7      P                  ^ 8H  4       \        P
                  ! ^^.4      p\        P                  ! ^\        R7      pW#^ &   \        \        P                  P	                  W4RR7      P                  4       VJ 4       Rp. ROp\        \        P                  P	                  ^VRR7      P                  V4       \        \        P                  P	                  ^VRR7      P                  V4       \        \        P                  P	                  ^VRVR7      P                  V4       \        \        P                  P	                  ^VRVR7      P                  V4       \        \        P                  P	                  \        P                  ! ^4      VRR7      P                  V4       \        \        P                  P                  ^ ^ RR7      P                  R4       \        \        P                  P                  ^ R^ R7      P                  R4       \        \        P                  P                  ^
^
^ R7      P                  R4       \        \        P                  P	                  ^ ^ R7      P                  R4       \        \        P                  P	                  . RR7      P                  R4       \        \        P                  P	                  R	R
.RR7      P                  R4       \        \        \        P                  P                  . ^
4       R# )r   ?Tr   Fr   Nr*   rh   r   r   r4   )r'   r-   )r   r   r   r   r   rH   )r-   r    r.   i)r    )r   r   Zisscalarr   r   r1   emptyobjectZndimZitemr   rV   r   r   r   r!   )r   rA   r   arrr   rn   r   test_choice_return_shapeZ'TestRandomDist.test_choice_return_shape  sm   #JBII,,Q,=>?BII,,Q,>?@BII,,Q,BCDBII,,Q,CDEBII,,aVT,BCD		  $ 6$>?HHaVhhq'A		  d 3q89 BKK		 0 0At 0 DEEFBKK		 0 0Au 0 EFFGBKK		 0 0Atq 0 IJJKBKK		 0 0Au 0 JKKLBKK		 0 0!QD 0 IJJK		  $D 9>>!CDHHaVhhq'A		   6;;=BC *RYY%%aD%9??CRYY%%aE%:@@!DRYY%%aDA%>DDaHRYY%%aEQ%?EEqIRYY%%biilAt%DJJAN 	RYY&&q!)&<BBINRYY&&q#A&6<<dCRYY&&r2A&6<<dCRYY%%aa%066=RYY%%bt%4::DARYY%%sCjy%AGG	 j"))"2"2B;r   c                s    \         P                  ! . RO4      p. ROp\        \        \         P                  P
                  WR7       R# )*   Nr   )r   r&   r'   )NNN)r   r1   r   r!   r   r   )r   r   rA   rB   r   test_choice_nan_probabilitiesZ,TestRandomDist.test_choice_nan_probabilities  s+    HHZ j"))"2"2A;r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^
4      pRp\	        W4       R# )r   s
   Ui+WfN)r   r   r]   Zbytesr   r   rB   r   
test_bytesZTestRandomDist.test_bytes  s5    
		tyy!$.V%r   c                s   R  R R R R R R R R R	 R
 3 Fl  p\         P                  P                  V P                  4       V! . RO4      p\         P                  P                  V4       TpV! . RO4      p\	        W44       Kn  	  R# )c                 s.    \         P                  ! . 4      # N)r   r1   rP   r#   r   <lambda>-TestRandomDist.test_shuffle.<locals>.<lambda>  s    rxx|r   c                 s    V # r   r4   r   r#   r   r   r     s    qr   c                 h    \         P                  ! V 4      P                  \         P                  4      # r   )r   asarrayastyper   r   r#   r   r   r     s    rzz!}33BGG<r   c                 r   r   )r   r   r   float32r   r#   r   r   r     s    rzz!}33BJJ?r   c                 r   r   )r   r   r   Z	complex64r   r#   r   r   r     s    rzz!}33BLLAr   c                 sT    \         P                  ! V 4      P                  \        4      # r   )r   r   r   r   r   r#   r   r   r     s    rzz!}33F;r   c                 s2    V  Uu. uF  qV3NK  	  up# u upi r   r4   rP   ir   r   r   r     s    21A22s   c                 sZ    \         P                  ! V  Uu. uF  qV.NK  	  up4      # u upi r   )r   r   r   r   r   r   r     s!    rzz1*=1aq61*=>*=s   (c                 sD    \         P                  ! W .4      P                  # r   )r   ZvstackZTr   r#   r   r   r     s    ryy!022r   c                 s    \         P                  ! V  Uu. uF  qV3NK  	  upR \        3R\        3.4      P                  \         P                  4      # u upi r   r   )r   r   r>   r   Zrecarrayr   r   r   r   r     sG    

A+>AqFA+>-0#Jc
+C!E!%bkk!2!3+>s   Ac                 s    \         P                  ! V  Uu. uF  qV3NK  	  upR \        3R\         P                  3.4      # u upi r   )r   r   r   r   r   r   r   r   r     s8    rzz1*=1aq61*=,/=3/*J L*=s   AN)
r&   r'   r-   r.   r/   r0      r   	   r    )
r    r&   r   r0   r'   r.   r/   r   r   r-   )r   r   r]   shuffler   )r   ZconvZalistr   r   rn   r   test_shuffleZTestRandomDist.test_shuffle  s     , <?A;2>24LMD  IINN499%78EIIe$F9:Gv/+Mr   c                sZ   \         P                  P                  \         P                  ! \	        ^4      R4      ^,          ^,
          R4      p\         P                  P                  \         P
                  ! ^4      ^,          ^,
          R4      pVP                  4       pVP                  4       p\	        ^24       F  p\         P                  P                  V4       \        \        VP                  VP                  ( ,          4      \        VP                  VP                  ( ,          4      4       \         P                  P                  V4       \        \        VP                  VP                  ( ,          4      \        VP                  VP                  ( ,          4      4       K  	  R# )   N)r/   r.   r   )r   ZmaZmasked_valuesZreshaper   r   Zcopyr   r   r   ZsorteddataZmask)r   r   r   Za_origZb_origr   r   r   test_shuffle_maskedZ"TestRandomDist.test_shuffle_masked  s   EE

59f = AA ErJEE		" 1A 5r:rAIIa qvvqvvg'V[[L0I)JLIIa qvvqvvg'V[[L0I)JL r   r   c                s    ^ ^ ^^^^^^^^^^^^/p\         P                  ! \        RR7      ;_uu_ 4       pVP                  ! V4       RRR4       RX^ ,          P                  9   g   Q hR#   + '       g   i     L,; i)r    z!you are shuffling a 'dict' objectZmatchNr   )rs   warnsUserWarningr   Zfilename)r   r   ZvaluesZrecs   &&  r   test_shuffle_untyped_warningZ+TestRandomDist.test_shuffle_untyped_warning  ss     Q1aAq!Q1a;\\+9; ;>ANN6"; A///; ;s   A,,A<	use_array_likeTFc                s  a  ! R  R\         P                  4      pR\         P                  ! ^.4      \         P                  ! ^4      \         P                  ! ^
4      \         P                  ! ^4      .p\         P                  ! V\        R7      pV Uu0 uF  p\        V4      kK  	  upoV'       d   VP                  V4      p\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       g   Q hV'       dl   \        V\         P                  P                  4      '       gB   \        P                  ! \        RR7      ;_uu_ 4        VP                  ! V4       RRR4       R# VP                  ! V4       \        ;QJ d    V3R	 lV 4       F  '       d   K   RM	  RM! V3R	 lV 4       4      '       g   Q hR# u upi   + '       g   i     R# ; i)
c                   s    ] tR tRtRtR# )>TestRandomDist.test_shuffle_no_object_unpacking.<locals>.MyArri  r4   N)r5   r6   r7   r8   r9   r4   r   r   MyArrr     s    r   r   Nr*   c              3   @   <"   T F  p\        V4      S9   x  K  	  R # 5ir   idZ.0r   item_ids   & r   	<genexpr>BTestRandomDist.test_shuffle_no_object_unpacking.<locals>.<genexpr>)  s     2c2a5H$c   FTz#Shuffling a one dimensional array.*r   c              3   r   r   r   r   r   r   r   r   2  s     6#Qr!u(#r   )r   ndarrayr1   Zfloat64r   r   r   rO   Z
isinstancer   Z	Generatorrs   r   r   r   )r   r   r   r   Zitemsr   r   r   s   &&&    @r    test_shuffle_no_object_unpackingZ/TestRandomDist.test_shuffle_no_object_unpacking  sB   	BJJ 	 "((A3-Abjjm
 hhuF+#()5aBqE5)((5/C s2c2sss2c22222*VRYY5H5H"I"Ik?A As#A A NN336#63336#66666 *A A As   GGG$	c                s   \         P                  P                  V P                  4       \         P                  ! ^4      P                  p\         P                  P                  V4       \        \         P                  ! V4      . RO4       \         P                  P                  V P                  4      pVP                  V4       \        \         P                  ! V4      . RO4       \         P                  P                  V P                  4      pVP                  V4       \        \         P                  ! V4      . RO4       R# )r/   N)r    r&   r.   r-   r'   )r    r&   r'   r-   r.   )r.   r&   r    r-   r'   )
r   r   r]   r   r   r   r   r   r   default_rng)r   r   ZrngrB   r   test_shuffle_memoryviewZ&TestRandomDist.test_shuffle_memoryview4  s     			tyy!IIaL
		!RZZ]O4ii##DII.ARZZ]O4ii##DII.ARZZ]O4r   c                s   \         P                  ! ^4      pRVP                  n        \        P
                  ! \        RR7      ;_uu_ 4        \         P                  P                  V4       RRR4       R#   + '       g   i     R# ; i)r-   Fz	read-onlyr   N)	r   r?   ZflagsZ	writeablers   rt   r!   r   r   )r   r   r   r   test_shuffle_not_writeableZ)TestRandomDist.test_shuffle_not_writeableC  sM    HHQK!]]:[99IIa  :999s    A66B	c                    \         P                  P                  V P                  4       \         P                  P                  R RRR7      p\         P                  ! RR.RR.RR..4      p\        W^R	7       R
# )r   r   rh   gAKč?ghA?g ҇o>gάXf+q?gS1$?g'8zX ?r   Nr   )r   r   r]   betar1   r   r   rB   r   	test_betaZTestRandomDist.test_betaI  sj    
		tyy!BV4(()+BC)+BC)+BCEF 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^dRRR7      p\         P                  ! ^%^+.^*^0.^.^-..4      p\        W4       R# )rG   gv/?rh   Nr   )r   r   r]   r@   r1   r   r   rB   r   test_binomialZTestRandomDist.test_binomialR  sb    
		tyy!##CF#;((RHHH& ' 	6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^2R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )i2   rh   g+Q]uO@g+Q@gY7`ZqP@ge(fG@gvtR@gEIȋR@r   Nr   )r   r   r]   	chisquarer1   r   r   rB   r   test_chisquareZTestRandomDist.test_chisquareZ  sk    
		tyy!$$Rf$5((13GH13GH02FGI J 	"&2>r   c                sN   \         P                  P                  V P                  4       \         P                  ! R R.4      p\         P                  P                  P                  VRR7      p\         P                  ! RR.RR..RR.R	R
..RR.RR...4      p\        W#^R7       R# )I<I@EZC@rh   gi{s?gn,	A?g]^?gpDB?gȧ#y?gr?g1U?gѨUC?g^,%?gB?gډOoX;?gM`!O?r   Nr   )r   r   r]   r1   mtrand	dirichletr   )r   alphar   r   rl   r   test_dirichletZTestRandomDist.test_dirichletb  s    
		tyy!.0DEF!!++E+?((13FG13FGI13FG13FGI13FG13FGI	J K 	"&2>r   c                s   \         P                  ! R R.4      p\        \         P                  P	                  V\         P
                  ! ^4      4      P                  R4       \        \         P                  P	                  V\         P
                  ! ^4      4      P                  R4       \        \         P                  P	                  V\         P
                  ! ^4      4      P                  R4       \        \         P                  P	                  V^^.4      P                  R4       \        \         P                  P	                  VR4      P                  R4       \        \         P                  P	                  V\         P                  ! R4      4      P                  R4       \        \        \         P                  P                  V\        ^4      4       R# )r  r  NrR   rS   rT   )
r   r1   r   r   r  rU   rV   r   r    rW   rX   r   r   test_dirichlet_sizeZ"TestRandomDist.test_dirichlet_sizen  s   HH*,@ABRYY((BIIaL9??HRYY((BIIaL9??HRYY((BIIaL9??HRYY((QF3999ERYY((F3999ERYY((BHHV,<=CCYOi!4!4aqBr   c           	     s   \         P                  ! R R.4      p\        \        \         P                  P
                  P                  V4       \        \        \        P                  ^^..4       \        \        \        P                  ^.^..4       \        \        \        P                  ^.^..^.^...4       \        \        \        P                  \         P                  ! ^^.^^..4      4       R# )gHzG?NgؗҜ)r   r1   r   r!   r   r  r  )r   r  r   r   test_dirichlet_bad_alphaZ'TestRandomDist.test_dirichlet_bad_alphaz  s    '8,-j"))"2"2"<"<eD 	j&"2"2aVH=j&"2"2aS1#J?j&"2"2qcA3Z1#s4LMj&"2"2BHHq!fq!f=M4NOr   c                    \         P                  P                  V P                  4       \         P                  P                  R R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )g8EGr?rh   gNU?gbI0?gVU\@g:3@gU?g"qo?r   Nr   )r   r   r]   exponentialr1   r   r   rB   r   test_exponentialZTestRandomDist.test_exponential  sk    
		tyy!&&vF&;((02EF02EF02EFH I 	"&2>r   c                    \        \        P                  P                  ^ R7      ^ 4       \	        \
        \        P                  P                  RR7       R# r    scaleN       )r   r   r   r  r   r!   r"   r#   r   test_exponential_0Z!TestRandomDist.test_exponential_0  s4    RYY***3Q7j"))"7"7sCr   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^MR
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )   rh   g7?g`j?g6"+?gܳ2>?gc>+Y?g_}S?r   Nr   )r   r   r]   fr1   r   r   rB   r   test_fZTestRandomDist.test_f  sj    
		tyy!R&1((02EF02EF02EFH I 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r/   rh   gԏGM8@gȌ<@g	":@gv#)@gZQ?@gr[@@r   Nr   )r   r   r]   gammar1   r   r   rB   r   
test_gammaZTestRandomDist.test_gamma  sj    
		tyy!AF3((13GH13GH13GHJ K 	"&2>r   c                s    \        \        P                  P                  ^ ^ R7      ^ 4       \	        \
        \        P                  P                  RRR7       R# )r    )rV   r  Nr  )r   r   r   r  r   r!   r"   r#   r   test_gamma_0ZTestRandomDist.test_gamma_0  s3    RYY__1A_6:j"))//CHr   c                s    \         P                  P                  V P                  4       \         P                  P                  R RR7      p\         P                  ! ^^.^^.^^..4      p\        W4       R# )_c97ݚ?rh   Nr   )r   r   r]   	geometricr1   r   r   rB   r   test_geometricZTestRandomDist.test_geometric  s`    
		tyy!$$Zf$=((QFHG% & 	6+r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RRR7      p\         P                  ! RR.R	R
.RR..4      p\        W^R7       R# )r         @locr  ri   gؕ?gs0 ?g-KD?r   Nr   g#0g(xgůp`@)r   r   r]   gumbelr1   r   r   rB   r   test_gumbelZTestRandomDist.test_gumbel  sm    
		tyy!!!j&!I((02EF02FG02FGI J 	"&2>r   c                r  r  )r   r   r   r!  r   r!   r"   r#   r   test_gumbel_0ZTestRandomDist.test_gumbel_0  4    RYY%%A%.2j"))"2"2#>r   c                s"   \         P                  P                  V P                  4       \         P                  P                  ^
^^RR7      p\         P                  ! ^
^
.^
^
.^	^	..4      p\        W4       \         P                  P                  ^^ ^^R7      p\         P                  ! . RO4      p\        W4       \         P                  P                  ^^ ^^R7      p\         P                  ! . RO4      p\        W4       \         P                  P                  ^ ^^^R7      p\         P                  ! . RO4      p\        W4       \         P                  P                  ^ ^^^R7      p\         P                  ! . RO4      p\        W4       R# )r   rh   Nr   )r-   r-   r-   r-   )r  r  r  r  )r    r    r    r    )r   r   r]   hypergeometricr1   r   r   rB   r   test_hypergeometricZ"TestRandomDist.test_hypergeometric  s5   
		tyy!))"a&)A((RHHF$ % 	6+ ))!Q):((<(6+))"a!)<((+,6+ ))!Q):((<(6+))!R!)<((<(6+r   c                    \         P                  P                  V P                  4       \         P                  P                  R RR
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r  r  r  g bO?g¸?gpJm	@g{K*t	@gY~o?r   Nr   g:^w-)r   r   r]   laplacer1   r   r   rB   r   test_laplaceZTestRandomDist.test_laplace  sm    
		tyy!""z6"J((02EF02EF13FGI J 	"&2>r   c                r  r  )r   r   r   r(  r   r!   r"   r#   r   test_laplace_0ZTestRandomDist.test_laplace_0  s4    RYY&&Q&/3j"))"3"33?r   c                r'  )r  r  r  g#K-z?gJ?g92@gر[@g-@r   Nr   g#+^˿)r   r   r]   logisticr1   r   r   rB   r   test_logisticZTestRandomDist.test_logistic  sm    
		tyy!##
#F#K((02DE02EF13FGI J 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RRR7      p\         P                  ! RR.RR.RR..4      p\        W^R	7       R
# )r  r  )meansigmari   gɁ0@go,+4FB@g)ʭ6@g5?gnxNnP@g)U@r   Nr   )r   r   r]   	lognormalr1   r   r   rB   r   test_lognormalZTestRandomDist.test_lognormal  sm    
		tyy!$$*Cf$M((13GH13FG13GHJ K 	"&2>r   c                s    \        \        P                  P                  ^ R7      ^4       \	        \
        \        P                  P                  RR7       R# )r    )r.  Nr  )r   r   r   r/  r   r!   r"   r#   r   test_lognormal_0ZTestRandomDist.test_lognormal_0  s4    RYY((q(115j"))"5"5SAr   c                s    \         P                  P                  V P                  4       \         P                  P                  R RR7      p\         P                  ! ^^.^^.^^..4      p\        W4       R# )gƀ@?)rA   ri   Nr   )r   r   r]   	logseriesr1   r   r   rB   r   test_logseriesZTestRandomDist.test_logseries  s`    
		tyy!$$z$?((QFGF$ % 	6+r   c                s   \         P                  P                  V P                  4       \         P                  P                  ^R.^,          RR7      p\         P                  ! . RO. RO.. RO. RO.. R	O. R
O..4      p\        W4       R# )r   rh   NUUUUUU?r   )r.   r-   r/   r.   r'   r'   )r/   r'   r   r'   r'   r&   )r-   r.   r-   r0   r    r.   )r'   r&   r.   r-   r0   r.   )r.   r.   r'   r/   r'   r-   )r.   r-   r.   r'   r-   r.   )r   r   r]   rK   r1   r   r   rB   r   test_multinomialZTestRandomDist.test_multinomial  su    
		tyy!&&rF8a<f&E((//1//1//1	2 3 	6+r   c                s   \         P                  P                  V P                  4       Rp^^ .^ ^..pRp\         P                  P                  WV4      p\         P                  ! RR.RR..RR.RR..R	R
.RR...4      p\        WE^R7       \         P                  P                  W4      p\         P                  ! RR.4      p\        WE^R7       ^ ^ .p^^.^^..p\        \        \         P                  P                  W4       \        \         P                  P                  WRR7       \        \        \         P                  P                  WRR7       \         P                  ! ^R.R^..\         P                  R7      p\        4       ;_uu_ 4       p\         P                  P                  W4       VP                  \        4      p\        V4      ^ 8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r  g4Vj?gy'@gI1?gSB#@ge<@g 4W(@g6R¿?g9r
v"@gс?g{#@g"f"@r   gN}O6?gYMW"@ignore)Zcheck_validZraiser   r*   N)r  r   r   g4x)r   r   r]   Zmultivariate_normalr1   r   r	   ZRuntimeWarningr   r   r!   r   r
   r   r   )r   r-  Zcovri   r   r   r   r      &       r   test_multivariate_normalZ'TestRandomDist.test_multivariate_normal  s   
		tyy!1v1v..t$?((/1BC/1BCE/1CD/1BCE/1BC02CDF	G H 	"&2> ..t9((-/?@A!&2> 1v1v1v^RYY%B%BDN 	29988$'/	1 	j"))"?"?")	+ hhC3(+2::>  CII))$4

>*Aq6Q;; !   s   AG((G9	c                s    \         P                  P                  V P                  4       \         P                  P                  ^dRR
R7      p\         P                  ! RR.RR.RR..4      p\        W4       R	# )rG   g|Pk?)nrA   ri   iP  iI  i|  ic  i  i  Nr   )r   r   r]   rq   r1   r   r   rB   r   rr   Z%TestRandomDist.test_negative_binomial.  sb    
		tyy!,,sf6,J((S#J #J #J( ) 	6+r   c                s~   \         P                  P                  V P                  4       \         P                  P                  ^^RR7      p\         P                  ! RR.RR.RR..4      p\        W^R7       \         P                  P                  R	R
RR7      p\         P                  ! RR.RR.RR..4      p\        W^R7       \         P                  P                  V P                  4       \         P                  P                  ^^ RR7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R# )r/   )dfnoncri   gG7@g! ܴ*@g1}z9?@g+驸0@g26E_r#@gI!1@r   r   rH   g?gTD?g?T?g+qnl?g~|D?g밬?g{01#@gprs'@g~;$@g"dI@g*@g}',@Nr   )r   r   r]   noncentral_chisquarer1   r   r   rB   r   test_noncentral_chisquareZ(TestRandomDist.test_noncentral_chisquare6  s/   
		tyy!//116/J((13GH13GH02FGI J 	"&2>//2BV/L((03FG03FG.1DEG H 	"&2>
		tyy!//116/J((.0BC/1BC/1CDF G 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^^^R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r/   )dfnumdfdenr;  ri   g^~?g/+c?g".@g@g7?gE?r   Nr   )r   r   r]   noncentral_fr1   r   r   rB   r   test_noncentral_fZ TestRandomDist.test_noncentral_fK  st    
		tyy!''aqq-3 ( 5((02EF02EF02DEG H 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RR
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r  r  r  g&&n@gOG_@g~w@gm&5@g$>@r   Nr   gtw]տ)r   r   r]   normalr1   r   r   rB   r   test_normalZTestRandomDist.test_normalT  sm    
		tyy!!!j&!I((02EF.0DE02EFH I 	"&2>r   c                r  r  )r   r   r   rB  r   r!   r"   r#   r   test_normal_0ZTestRandomDist.test_normal_0\  r$  r   c                s   \         P                  P                  V P                  4       \         P                  P                  R R
R7      p\         P                  ! RR.RR.RR..4      p\         P
                  P                  W^R7       R	# )r  r   ri   gWI@gԨy@gy]0Ag1~\Aga@gY
7A)ZnulpNr   )r   r   r]   paretor1   testingZassert_array_almost_equal_nulpr   rB   r   test_paretoZTestRandomDist.test_pareto`  sx    
		tyy!!!JV!<(()+BC)+BC)+BCEF 	

11&1Kr   c                s    \         P                  P                  V P                  4       \         P                  P                  R RR7      p\         P                  ! ^ ^ .^^ .^ ^ ..4      p\        W4       R# )r  )lamri   Nr   )r   r   r]   poissonr1   r   r   rB   r   test_poissonZTestRandomDist.test_poissono  s`    
		tyy!""z"?((QFFF$ % 	6+r   c                s   \         P                  ! R 4      P                  pRp\        \        \         P
                  P                  V4       \        \        \         P
                  P                  V.^
,          4       \        \        \         P
                  P                  V4       \        \        \         P
                  P                  V.^
,          4       R# )r   Nr   )r   r|   r~   r   r!   r   rJ  )r   ZlambigZlamnegrB   r   test_poisson_exceptionsZ&TestRandomDist.test_poisson_exceptionsw  s~    #""j"))"3"3V<j"))"3"3fX]Cj"))"3"3V<j"))"3"3fX]Cr   c                r  )r  rE  g;'?gܴw*?g5?gFG?g D]?g$`?r   Nr   )r   r   r]   powerr1   r   r   rB   r   
test_powerZTestRandomDist.test_power  sh    
		tyy!:F;((02EF02EF02EFH I 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^
R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r   )r  ri   g"u+@gN$MB*@g7v8B4@g55@ge&@g~ӣZ1@r   Nr   )r   r   r]   rayleighr1   r   r   rB   r   test_rayleighZTestRandomDist.test_rayleigh  sk    
		tyy!##"6#:((02DE13GH13GHJ K 	"&2>r   c                r  r  )r   r   r   rO  r   r!   r"   r#   r   test_rayleigh_0ZTestRandomDist.test_rayleigh_0  s4    RYY''a'0!4j"))"4"4C@r   c                s    \         P                  P                  V P                  4       \         P                  P                  RR7      p\         P                  ! RR.RR	.R
R..4      p\        W^R7       R# )r-   rh   gMoDL?grF=?gVA:Qy?r   Nr   g6([9gM'	- gV)r   r   r]   Zstandard_cauchyr1   r   r   rB   r   test_standard_cauchyZ#TestRandomDist.test_standard_cauchy  si    
		tyy!***7((02FG02FG13FGI J 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r-   rh   g܁?gc!z?g&N"@gNI@gF>?g~ME?r   Nr   )r   r   r]   Zstandard_exponentialr1   r   r   rB   r   test_standard_exponentialZ(TestRandomDist.test_standard_exponential  si    
		tyy!//V/<((02EF/1DE/1DEG H 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^R
R7      p\         P                  ! RR.RR.RR..4      p\        W^R7       R	# )r-   )rV   ri   g)@gľ@gd],q@gPk{@g9B#1@gv @r   Nr   )r   r   r]   standard_gammar1   r   r   rB   r   test_standard_gammaZ"TestRandomDist.test_standard_gamma  sk    
		tyy!)))?((02EF02EF02CDF G 	"&2>r   c                r  )r    )rV   Nr  )r   r   r   rT  r   r!   r"   r#   r   test_standard_gamma_0Z$TestRandomDist.test_standard_gamma_0  s4    RYY--A-6:j"))":":#Fr   c                s    \         P                  P                  V P                  4       \         P                  P                  R	R7      p\         P                  ! RR.RR
.RR..4      p\        W^R7       R# )r-   rh   r   r   r   r   r   r   Nr   r   )r   r   r]   rj   r1   r   r   rB   r   test_standard_normalZ#TestRandomDist.test_standard_normal  si    
		tyy!***7((02EF.0CD.0CDF G 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  ^
RR7      p\         P                  ! RR.RR	.R
R..4      p\        W^R7       R# )r   )r:  ri   g\VH?gH$M?g㖀?r   Nr   ghU%gLgVqdzǿ)r   r   r]   
standard_tr1   r   r   rB   r   test_standard_tZTestRandomDist.test_standard_t  sk    
		tyy!%%&%9((02FG02FG13FGI J 	"&2>r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RRRR7      p\         P                  ! RR.RR.RR	..4      p\        W^R
7       R# )g{Gz@g(\u$@gףp=
W4@)leftmoderightri   g:}\)@ghرTj(@gǨL30@g6ڜA0@g6sh&@g<,@r   Nr   )r   r   r]   
triangularr1   r   r   rB   r   test_triangularZTestRandomDist.test_triangular  st    
		tyy!%%4e5+1 & 3((13FG13GH13FGI J 	"&2>r   c                r   )Gz?gGz%@)lowhighri   g>#H@gu@g#@g}d]#@gN@gw)* @r   Nr   )r   r   r]   uniformr1   r   r   rB   r   test_uniformZTestRandomDist.test_uniform  sm    
		tyy!""t%f"E((02EF02EF02EFH I 	"&2>r   c                sb   \         P                  ! R 4      P                  p\         P                  ! R 4      P                  p\         P                  P
                  p\        \        V\         P                  ) ^ 4       \        \        V^ \         P                  4       \        \        W1V4       \        \        V\         P                  ) .^ .4       \        \        V^ .\         P                  .4       \         P                  P                  \         P                  ! V^4      VR,          R7       R# )rW   g ؅W4vC)r`  ra  N)
r   Zfinfor}   r~   r   rb  r   ZOverflowErrorZinfZ	nextafter)r   ZfminZfmaxfuncrl   r   test_uniform_range_boundsZ(TestRandomDist.test_uniform_range_bounds  s    xx $$xx $$yy  mTBFF7A6mTABFF;mTD9mTRVVG9qc:mTA39
 			bll43$+Fr   c                s    ! R  R\         P                  4      p\         P                  ! R4      P                  V4      p\	        \
        \         P                  P                  VV4        ! R R\         P                  4      p\         P                  ! ^4      P                  V4      p\	        \
        \         P                  P                  V^^4       R# )c                   s&   a  ] tR tRt o R tRtV tR# )GTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloati  c                    \         hr   r    r"   r#   r   	__float__ZQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloat.__float__      r   r4   N)r5   r6   r7   r8   ri  r9   r:   r;   r<   r   ThrowingFloatrf    s        r   rk  g      ?c                   s*   a  ] tR tRt o R t]tRtV tR# )ITestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingIntegeri  c                rg  r   rh  r"   r#   r   __int__ZQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingInteger.__int__  rj  r   r4   N)r5   r6   r7   r8   rm  Z	__index__r9   r:   r;   r<   r   ThrowingIntegerrl    s        Ir   rn  N)	r   r   r1   r   r   r    r   rb  r%  )r   rk  Zthrowing_floatrn  Zthrowing_intrn   r   !test_scalar_exception_propagationZ0TestRandomDist.test_scalar_exception_propagation  s    	 BJJ 	  #++M:i!2!2N$	&	 bjj 	  xx{''8i!9!9<ANr   c                r   )r_  p=
ף?mukappari   gLZI@g'N"@gkr?gk=m@gډ?g^=\?r   Nr   )r   r   r]   vonmisesr1   r   r   rB   r   test_vonmisesZTestRandomDist.test_vonmises  sm    
		tyy!##t4f#E((02EF02EF02EFH I 	"&2>r   c                s   \         P                  P                  V P                  4       \         P                  P                  R RRR7      p\         P                  P                  \         P                  ! V4      P                  4       4       R# )rM   gg5_PG>rq  Ni@B )r   r   r]   rt  rG  r   ZisfiniterO   )r   Zrr   r   test_vonmises_smallZ"TestRandomDist.test_vonmises_small   sT    
		tyy!II"F?


2;;q>--/0r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RRR7      p\         P                  ! RR.RR.RR..4      p\        W^R	7       R
# )r_  rp  )r-  r  ri   gZ@g-g@g8
m?gVP"?g`V?gx^&3?r   Nr   )r   r   r]   waldr1   r   r   rB   r   	test_waldZTestRandomDist.test_wald  sj    
		tyy!TFC((02EF02EF02EFH I 	"&2>r   c                r  )r_  rE  g@6?g]A?g(1ڥR?gU?g2_u?g^}-Q?r   Nr   )r   r   r]   weibullr1   r   r   rB   r   test_weibullZTestRandomDist.test_weibull  sk    
		tyy!""T"7((02EF02EF02EFH I 	"&2>r   c                s*   \         P                  P                  V P                  4       \        \         P                  P	                  ^ ^R7      \         P
                  ! ^4      4       \        \        \         P                  P                  RR7       R# )r    rE  )r   Nr  )r   r   r]   r   ry  r?   r   r!   r"   r#   r   test_weibull_0ZTestRandomDist.test_weibull_0  sR    
		tyy!RYY&&&4bhhrlCj"))"3"3s;r   c                s    \         P                  P                  V P                  4       \         P                  P                  R RR7      p\         P                  ! ^B^.^^.^^..4      p\        W4       R# )r_  rE  Nr   )r   r   r]   zipfr1   r   r   rB   r   	test_zipfZTestRandomDist.test_zipf  s]    
		tyy!$V4((RHFG% & 	6+r   r   N)Vr5   r6   r7   r8   ra   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rs   markZparametrizer   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  r3  r5  r8  rr   r=  rA  rC  rD  rH  rK  rL  rN  rP  rQ  rR  rS  rU  rV  rW  rY  r^  rc  re  ro  ru  rv  rx  rz  r{  r}  r9   r:   r;   r<   r   r   r   -  s9    ??,	,&@?,,,,,2&,<\<
&04L [[XYY		--/1F1F1HIK0K0 [[X	BII))+RYY-B-B-DEG[[-e}=7 >G705!?,?
?
C	P?D??I,??,4?@??B,	,&P,?*???L,D??A???G????G O0?1??<
, ,r   r   c                   s   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R  t"R! t#R"t$V t%R## )$TestBroadcasti$  c                r   )i[Nr   r"   r#   r   ra   ZTestBroadcast.setup_method'  s	    	r   c                sX    \         P                  P                  V P                  4       R # r   )r   r   r]   r"   r#   r   setSeedZTestBroadcast.setSeed*  s    
		tyy!r   c                s(   ^ .p^.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        WT^R7       V P	                  4        V! W^,          4      p\        WT^R7       R# )r    r   Ngl?g_x?g=*BN?)r   r   rb  r1   r  r   )r   r`  ra  rb  r   r   r   r   rc  ZTestBroadcast.test_uniform0  sx    cs))##(( 1 2 	q$'!&2>Qh'!&2>r   c                   ^ .p^.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        We^R7       \        \        WA^,          V4       V P	                  4        V! W^,          4      p\        We^R7       \        \        WAV^,          4       R# )r    r   Nr   )g-r@gYl@g-`w?)r   r   rB  r1   r  r   r   r!   )r   r   r  	bad_scalerB  r   r      &      r   rC  ZTestBroadcast.test_normal@  s    cD	!!(( 0 1 	a'!&2>j&'9=QY'!&2>j&y1}=r   c                   ^.p^.pR.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        Wv^R7       \        \        WS^,          V4       \        \        WQ^,          V4       V P	                  4        V! W^,          4      p\        Wv^R7       \        \        WSV^,          4       \        \        WQV^,          4       R# )r&   r   Nr   r(   )gnQVf?gVKB?gv`k?)r   r   r   r1   r  r   r   r!   )r   r   r   bad_aZbad_br   r   r   r7  r   r   ZTestBroadcast.test_betaS  s    CCyy~~(( 1 2 	a!eQ!&2>j$	15j$Au5aQ!&2>j$q1u5j$5195r   c                    ^.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          4      p\        WT^R7       \        \        W2^,          4       R# r&   r   Nr   )g.UgZ?gi Prq?gEK?)r   r   r  r1   r  r   r   r!   )r   r  r  r  r   r   r   r   r  ZTestBroadcast.test_exponentiali  sc    D	ii++(( 1 2 	UQY'!&2>j+1}=r   c                r  r  )r   r   rT  r1   r  r   r   r!   )r   rV   	bad_shapeZ	std_gammar   r   r   r   rU  Z!TestBroadcast.test_standard_gammav  sc    D	II,,	(( 1 2 	519%!&2>j)];r   c                r  )r&   r   Nr   r(   )g.UgZ?gi Prq?gEK?)r   r   r  r1   r  r   r   r!   )r   rV   r  r  r  r  r   r   r7  r   r  ZTestBroadcast.test_gamma  s    D	D			(( 0 1 	uqy%(!&2>j%Q>j%I>uai(!&2>j%EAI>j%	A>r   c                r  )r&   r   Nr   r(   )gbyʜ?go?gT7@)r   r   r  r1   r  r   r   r!   )r   r>  r?  	bad_dfnum	bad_dfdenr  r   r   r7  r   r  ZTestBroadcast.test_f  s    D	D	IIKK(( 0 1 	519e$!&2>j!]E:j!QY	:5!)$!&2>j!	:j!IM:r   c                sR   ^.p^.p^.p^ .pR.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          W#4      p	\        W^R7       \        \        Wt^,          W#4       \        \        Wq^,          WS4       \        \        Wq^,          W&4       V P	                  4        V! W^,          V4      p	\        W^R7       \        \        WtV^,          V4       \        \        WqV^,          V4       \        \        WqV^,          V4       V P	                  4        V! WV^,          4      p	\        W^R7       \        \        WtW#^,          4       \        \        WqWS^,          4       \        \        WqW&^,          4       R# )r'   r   Nr   r(   )gr^G"@g/*@gц!@)r   r   r@  r1   r  r   r   r!   )
r   r>  r?  r;  r  r  bad_noncZnonc_fr   r   s
   &         r   rA  ZTestBroadcast.test_noncentral_f  sO   sC	D	4''(( 0 1 		5/!&2>j&a-Ej&!)YEj&!)UEqy$/!&2>j&UQYEj&QEj&HEdQh/!&2>j&U1HEj&1HEj&1Er   c                s    V P                  4        \        P                  ! R R.4      p\        P                  P	                  RR^^R7      p\        W!^R7       R# )gaz@gn4M;%?r   rh   r   N)r  r   r1   r   r@  r   )r   r   r   rB   r   test_noncentral_f_small_dfZ(TestBroadcast.test_noncentral_f_small_df  sG    ((-/@AB''S!!'<!&2>r   c                r  )r&   r   Nr   )g~}N??g$F?g'rS?)r   r   r  r1   r  r   r   r!   )r   r:  bad_dfr  r   r   r   r   r  ZTestBroadcast.test_chisquare  sc    SII''	(( 0 1 	26"!&2>j)aZ8r   c                r  )r&   r   Nr   r(   )g w "@g2WR@gRY@)r   r   r<  r1   r  r   r   r!   )r   r:  r;  r  r  Znonc_chir   r   r7  r   r=  Z'TestBroadcast.test_noncentral_chisquare  s    Ss49911(( 0 1 	"q&$'!&2>j(QJ=j(FH="Qh'!&2>j(D1H=j(1=r   c                r  )r&   r   Nr   )gT@g~Fl@gƚtp?)r   r   rX  r1   r  r   r   r!   )r   r:  r  tr   r   r   r   rY  ZTestBroadcast.test_standard_t  sb    SII  (( 0 1 	26!&2>j!aZ0r   c                s   ^.p^.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        We^R7       \        \        WA^,          V4       V P	                  4        V! W^,          4      p\        We^R7       \        \        WAV^,          4       R# )r'   r   Nr   )gW!@gOBg}?)r   r   rt  r1   r  r   r   r!   )r   rr  rs  Z	bad_kappart  r   r   r  r   ru  ZTestBroadcast.test_vonmises  s    SD	99%%(( 1 2 	"q&%(!&2>j(FI>"ai(!&2>j(	A>r   c                r  )r&   r   Nr   )g&8??geFX?gՋː?)r   r   rF  r1   r  r   r   r!   )r   r   r  rF  r   r   r   r   rH  ZTestBroadcast.test_pareto  sb    C!!(( 0 1 	A!&2>j&!)4r   c                r  r  )r   r   ry  r1   r  r   r   r!   )r   r   r  ry  r   r   r   r   rz  ZTestBroadcast.test_weibull&  sb    C))##(( 1 2 	Q!&2>j'195r   c                r  )r&   r   Nr   r  )r   r   rM  r1   r  r   r   r!   )r   r   r  rM  r   r   r   r   rN  ZTestBroadcast.test_power3  s`    C		(( 1 2 	q1u!&2>j%3r   c                r  )r    r   Nr   )g:BKc?g3k?g~q?)r   r   r(  r1   r  r   r   r!   )r   r   r  r  r(  r   r   r  r   r)  ZTestBroadcast.test_laplace@  s    cD	))##(( 2 3 	q%(!&2>j'7I>ai(!&2>j'	A>r   c                r  )r    r   Nr   )g'Zy?gdSO=?g3L1?)r   r   r!  r1   r  r   r   r!   )r   r   r  r  r!  r   r   r  r   r"  ZTestBroadcast.test_gumbelS  s    cD	!!(( 1 2 	a'!&2>j&'9=QY'!&2>j&y1}=r   c                r  )r    r   Nr   )gy?gJR?g
~&?)r   r   r+  r1   r  r   r   r!   )r   r   r  r  r+  r   r   r  r   r,  ZTestBroadcast.test_logisticf  s    cD	99%%(( 2 3 	#'5)!&2>j(!GY?#qy)!&2>j(Q?r   c                r  )r    r   Nr   )gH"@gܮ @gvv	:@)r   r   r/  r1   r  r   r   r!   )r   r-  r.  Z	bad_sigmar/  r   r   r  r   r0  ZTestBroadcast.test_lognormaly  s    sD	II''	(( 0 1 	4!8U+!&2>j)AXyA4+!&2>j)9q=Ar   c                r  )r&   r   Nr   )gݱlo?g/ӂ?gz~R?)r   r   rO  r1   r  r   r   r!   )r   r  r  rO  r   r   r   r   rP  ZTestBroadcast.test_rayleigh  sc    D	99%%(( 0 1 	%!)$!&2>j(M:r   c                s<   R .p^.p^ .pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        Wv^R7       \        \        WS^,          V4       \        \        WQ^,          V4       V P	                  4        V! W^,          4      p\        Wv^R7       \        \        WSV^,          4       \        \        WQV^,          4       \        \        VR^4       \        \        VR R4       R# )r   r   rM   Nr(   )g@m e?g`I߿?g|2?)r   r   rw  r1   r  r   r   r!   )r   r-  r  Zbad_meanr  rw  r   r   r7  r   rx  ZTestBroadcast.test_wald  s    u3D	yy~~(( 0 1 	dQh&!&2>j$1e<j$q)<dAI&!&2>j$%!)<j$i!m<j$Q/j$S1r   c                sf   ^.p^.p^.p^.p^.pV^,          w  rg\         P                  P                  p\         P                  ! . RO4      p	V P	                  4        V! V^,          W24      p
\        W^R7       \        \        W^,          W24       \        \        W^,          WR4       \        \        W^,          VV4       V P	                  4        V! W^,          V4      p
\        W^R7       \        \        WV^,          V4       \        \        WV^,          V4       \        \        WV^,          V4       V P	                  4        V! WV^,          4      p
\        W^R7       \        \        WW2^,          4       \        \        WWR^,          4       \        \        WVV^,          4       R# )r&   r   N)g,P;bD @g%G @g,~S @)r   r   r]  r1   r  r   r   r!   )r   rZ  r\  r[  Zbad_left_oneZbad_mode_oneZbad_left_twoZbad_mode_twor]  r   r      &          r   r^  ZTestBroadcast.test_triangular  si   ssss%*QY"YY))
(( 0 1 	D1Hd2!&2>j*Q.>Lj*QhLj*Q.>	 	D(E2!&2>j*D1HeLj*L14DeLj*L1<L	 	D	2!&2>j*D!)Lj*L!)Lj*Lai	!r   c                R   ^.pR.pR.pR.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          V4      p\        W4       \        \        Wc^,          V4       \        \        Wa^,          V4       \        \        Wa^,          V4       V P	                  4        V! W^,          4      p\        W4       \        \        WcV^,          4       \        \        WaV^,          4       \        \        WaV^,          4       R# )r&   r         ?Nr   r&   r&   r&   )r   r   r@   r1   r  r   r   r!   )	r   r9  rA   bad_n	bad_p_one	bad_p_twoZbinomr   r   	   &        r   r  ZTestBroadcast.test_binomial  s    CED	E			""((9%q1ua6+j%A6j%Q	:j%Q	:qa%6+j%A6j%IM:j%IM:r   c                r  )r&   r   r  Nr   )r&   r    r&   )r   r   rq   r1   r  r   r   r!   )	r   r9  rA   r  r  r  Z	neg_binomr   r   r  r   rr   Z$TestBroadcast.test_negative_binomial  s    CED	E	II//	((9%1q5!$6+j)QY:j)UI>j)UI>1!e$6+j)AE:j)	A>j)	A>r   c                s   \         P                  P                  4       P                  p^.pR.pV^,          .p\         P                  P                  p\         P
                  ! . RO4      pV P                  4        V! V^,          4      p\        Wv4       \        \        WS^,          4       \        \        WT^,          4       R# )r&   Nr   )r&   r&   r    )
r   r   r   Z_poisson_lam_maxrJ  r1   r  r   r   r!   )r   Zmax_lamrI  Zbad_lam_oneZbad_lam_tworJ  r   r   r7  r   rK  ZTestBroadcast.test_poisson  s    ))'')::cd{m))##((9%q!6+j'?;j'?;r   c           	     s   ^.p^ .p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          4      p\        WT4       \        \        W2^,          4       \         P                  ! RR7      ;_uu_ 4        \        \        V\         P                  4       \        \        V^ ^ \         P                  .4       RRR4       R#   + '       g   i     R# ; i)r'   r6  )ZinvalidN)r'   r'   r&   )
r   r   r|  r1   r  r   r   r!   ZerrstaterD   )r   r   r  r|  r   r   r   r   r}  ZTestBroadcast.test_zipf  s    Cyy~~((9%a!e6+j$	2[[***dBFF3*dQ266N; +***s   AC%%C6	c                s,   R .pR.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          4      p\        We4       \        \        WB^,          4       \        \        WC^,          4       R# )r   r  Nr   rS   )r   r   r  r1   r  r   r   r!   )r   rA   r  r  Zgeomr   r   r  r   r  ZTestBroadcast.test_geometric   sn    ED	E	yy""((9%a!e6+j$A6j$A6r   c                s   ^.p^.p^.pR.pR.p^ .p^.p\         P                  P                  p\         P                  ! . RO4      p	V P	                  4        V! V^,          W#4      p
\        W4       \        \        W^,          W#4       \        \        W^,          WS4       \        \        W^,          W&4       \        \        W^,          W'4       V P	                  4        V! W^,          V4      p
\        W4       \        \        WV^,          V4       \        \        WV^,          V4       \        \        WV^,          V4       \        \        WV^,          V4       V P	                  4        V! WV^,          4      p
\        W4       \        \        WW#^,          4       \        \        WWS^,          4       \        \        WW&^,          4       \        \        WW'^,          4       R# )r&   Nr   r(   r  )r   r   r%  r1   r  r   r   r!   )r   ZngoodZnbadZnsampleZ	bad_ngoodZbad_nbadZbad_nsample_oneZbad_nsample_twoZ	hypergeomr   r   r  r   r&  Z!TestBroadcast.test_hypergeometric-  s}   s#D	4##II,,	((9%519d46+j)]DJj)QYJj)QYNj)QYN5(G46+j)q'Jj)HqL'Jj)D1HoNj)D1HoN5!46+j)kJj)HkJj)DA:MNj)DA:MNr   c                s,   R .p^.pR.p\         P                  P                  p\         P                  ! . RO4      pV P	                  4        V! V^,          4      p\        We4       \        \        WB^,          4       \        \        WC^,          4       R# )r   Nr   r  )r   r   r2  r1   r  r   r   r!   )r   rA   r  r  r2  r   r   r  r   r3  ZTestBroadcast.test_logseriesP  so    EC	D	II''	((9%1q5!6+j)];j)];r   r   N)&r5   r6   r7   r8   ra   r  rc  rC  r   r  rU  r  r  rA  r  r  r=  rY  ru  rH  rz  rN  r)  r"  r,  r0  rP  rx  r^  r  rr   rK  r}  r  r&  r3  r9   r:   r;   r<   r   r  r  $  s     "? >&6,><?,;,FB?9>,1?&564?&>&@&B&;20"!H;.?.<<7!OF< <r   r  zcan't start thread)Zreasonc                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	
TestThreadi^  c                s&    \        ^4      V n        R# )r.   N)r   seedsr"   r#   r   ra   ZTestThread.setup_methoda  s    1X
r   c           
     sN   ^ RI Hp \        P                  ! \	        V P
                  4      3V,           4      p\        P                  ! \	        V P
                  4      3V,           4      p\        V P
                  V4       UUu. uF.  w  rgV! V\        P                  P                  V4      V3R7      NK0  	  pppV U	u. uF  qP                  4       NK  	   p	V U	u. uF  qP                  4       NK  	   p	\        V P
                  V4       F+  w  rgV! \        P                  P                  V4      V4       K-  	  \        P                  ! 4       P                  P                  ^8X  d#   \        P                  R8X  d   \!        WE4       R# \#        WE4       R# u uppi u up	i u up	i )r    )Thread)ZtargetZargsZwin32N)Z	threadingr  r   r   r   r  Zzipr   r   ZstartZjoinZintpr+   Zitemsizer   Zplatformr   r   )
r   Zfunctionszr  Zout1Zout2r   Zor  rP   s
   &&&       r   check_functionZTestThread.check_functiond  s)   $xxTZZ*R/0xxTZZ*R/0 TZZ.0. 8299+@+@+CQ*GH. 	
 0AqA1a1 

D)DARYY**1-q1 * 779??##q(S\\W-D%d1t*0s   4F=FF"c                2    R  pV P                  VRR7       R# )c                 s0    V P                  R R7      VR&   R# )'  rh   .N)rB  r`   out   &&r   
gen_randomZ*TestThread.test_normal.<locals>.gen_random{  s    |||/CHr   r  N)r  r  r   r  r   r   rC  ZTestThread.test_normalz  s    	0J84r   c                r  )c                 sX    V P                  \        P                  ! R4      R7      VR&   R# )rG   r  .NrG   r   )r  r   Zonesr  r  r   r  Z'TestThread.test_exp.<locals>.gen_random  s"    ((rww{/C(DCHr   r  Nr  r  r  r   r   test_expZTestThread.test_exp  s    	EJ;7r   c                r  )c                 sD    V P                  ^
R.^,          RR7      VR&   R# )r   r  rh   .Nr4  )rK   r  r  r   r  Z/TestThread.test_multinomial.<locals>.gen_random  s#    ((fX\(FCHr   r  N)r  r0   r  r  r   r   r5  ZTestThread.test_multinomial  s    	GJ:6r   )r  N)r5   r6   r7   r8   ra   r  rC  r  r5  r9   r:   r;   r<   r   r  r  ^  s#     +,5
8
7 7r   r  c                   r  )	TestSingleEltArrayInputi  c                s    \         P                  ! ^.4      V n        \         P                  ! ^.4      V n        \         P                  ! ^.4      V n        RV n        R# )r'   N)r&   )r   r1   argOneargTwoargThreetgtShaper"   r#   r   ra   Z$TestSingleEltArrayInput.setup_method  s<    hhsmhhsm!r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  3p\         P                  P                  \         P                  P                  3pV FY  pW29   d   V! \         P                  ! R .4      4      pMV! V P                  4      p\!        VP"                  V P$                  4       K[  	  R# rp   )r   r   r  rT  r  rX  rF  ry  rM  rO  rJ  r|  r  r2  r1   r  r   rV   r  )r   funcs	probfuncsrd  r  rn   r   test_one_arg_funcsZ*TestSingleEltArrayInput.test_one_arg_funcs  s   &&		(@(@$$bii&:&:!!299#4#4"))"4"4""BIINN$$bii&9&9; YY(("))*=*=>	D 288SE?+ 4;;'DMM2 r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  3p\         P                  P                  \         P                  P                  3pV F  pW29   d   \         P                   ! R .4      pMV P"                  pV! V P$                  V4      p\'        VP(                  V P*                  4       V! V P$                  ^ ,          V4      p\'        VP(                  V P*                  4       V! V P$                  V^ ,          4      p\'        VP(                  V P*                  4       K  	  R# rp   )r   r   rb  rB  r   r  r  r<  rt  r(  r!  r+  r/  rw  r@   rq   r1   r  r  r   rV   r  )r   r  r  rd  r  r  r   r   test_two_arg_funcsZ*TestSingleEltArrayInput.test_two_arg_funcs  si   ""BII$4$4bii<<##RYY%6%6!!299#5#5$$biinn##RYY%@%@B YY'')D)DE	D 3% t{{F+CDMM2t{{1~v.CDMM2t{{F1I.CDMM2 r   c           	     s   \         \        P                  \        P                  \        P                  \        P
                  \        P                  \        P                  \        P                  \        P                  .	p\        P                  P                  p\        P                  ! ^.4      p\        P                  ! ^ .4      pV F  pV! WCVR7      p\        VP                  V P                  4       V! V^ ,          W5R7      p\        VP                  V P                  4       V! WC^ ,          VR7      p\        VP                  V P                  4       K  	  R# rw   )r{   r   r   r   r   r   r   rU   r2   r   r   r   r1   r   rV   r  )r   rz   rd  ra  r`  r   r  r  r   r   Z$TestSingleEltArrayInput.test_randint  s    rww"((BII299bhh		;yy  xx}hhsmBs+CDMM2s1vt.CDMM2sG2.CDMM2 r   c                s~   \         P                  P                  \         P                  P                  \         P                  P                  .pV F  pV! V P
                  V P                  V P                  4      p\        VP                  V P                  4       V! V P
                  ^ ,          V P                  V P                  4      p\        VP                  V P                  4       V! V P
                  V P                  ^ ,          V P                  4      p\        VP                  V P                  4       K  	  R# )r    N)r   r   r@  r]  r%  r  r  r  r   rV   r  )r   r  rd  r  rl   r   test_three_arg_funcsZ,TestSingleEltArrayInput.test_three_arg_funcs  s    '')=)=))+ Dt{{DKK?CDMM2t{{1~t{{DMMBCDMM2t{{DKKNDMMBCDMM2 r   )r  r  r  r  N)r5   r6   r7   r8   ra   r  r  r   r  r9   r:   r;   r<   r   r  r    s#     3&363"3 3r   r  )r   r   rs   Znumpyr   r   Znumpy.testingr   r   r   r   r   r   r   r	   r
   r   r=   rF   r[   rv   r   r  r~  Zskipifr  r  r4   r   r   <module>r     s    
    
 
 
$F $FN> >Y YD2$ 2$jH+ H+Vt, t,nw< w<t G$89(7 (7 :(7XR3 R3r   