+
   KeD                      ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	 ^ RI
Ht ^ RIHtHtHtHt ^ RIHtHtHtHtHtHtHtHtHt ]! ]! 4       4      tR^ R^
RR	R
R^	/RR	RRR//RRRRRR	RRR/RR	RRR//R. RJORRRR	RRR/RR	RRR//.t]P:                  ! RRR.R7      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$ ! R+ R,4      t% ! R- R.4      t&]PN                  PQ                  ]R/R07       ! R1 R24      4       t) ! R3 R44      t*]PN                  PW                  R5]4      R6 4       t,R7 t-R8 t.R9 t/]PN                  PW                  R:RKRK..4      ]PN                  PW                  R;RR.4      R< 4       4       t0]PN                  PW                  R=R>R?.4      R@ 4       t1]PN                  PW                  R=R>R?.4      ]PN                  PW                  RARBRC.4      ]PN                  PW                  RD]Pd                  ]P6                  .4      RE 4       4       4       t3RF t4RG t5]PN                  PW                  RH^y^~.4      RI 4       t6R# )L    N)	AxisError)LinAlgError)MT19937	GeneratorRandomStateSeedSequence)	IS_64BITIS_WASMassert_assert_allcloseassert_array_almost_equalassert_array_equalassert_equalassert_no_warningsassert_raisesseedstepsinitial
key_sha256@bb1636883c2707b51c5b7fc26c6927af4430f2e0785a8c7bc886337f919f9edfposjumped@ff682ac12bb140f2d72fba8d3506cf4e46817a0db27aae1683867629031d8d55iV  i$<i8  @16b791a1e04886ccbbb4d448d6ff791267dc458ae599475d08d5cced29d11614i7  @a0110a2cf23b56be0feaed8f787a7fc84bef0cb5623003d75b26bdfa1c18002ci  i  @d306cf01314d51bd37892d874308200951a35265ede54d200f1e065004c3e9eai  @0e00ab449f01a5195a83b4aee0dfbc2ce8d46466a640b92e33977d2e42f777f8i  moduleTF)scopeparamsc                     V P                   # N)param)requests   &N/usr/lib/python3.14/site-packages/numpy/random/tests/test_generator_mt19937.pyendpointr&   0   s    ==    c                   D   a  ] tR t^5t o R tR tR tR tR tR t	Rt
V tR# )	TestSeedc                    \        \        ^ 4      4      p\        VP                  R4      R4       \        \        R4      4      p\        VP                  R4      R4       R# )r           D  N)r   r   r   integersselfss   & r%   test_scalarTestSeed.test_scalar6   sE    gaj!QZZ%s+gj)*QZZ%s+r'   c                   \        \        \        ^
4      4      4      p\        VP	                  R4      R4       \        \        \
        P                  ! ^
4      4      4      p\        VP	                  R4      R4       \        \        ^ .4      4      p\        VP	                  R4      R4       \        \        R.4      4      p\        VP	                  R4      R4       R# )
   r+   i  r,   r-   r.   N)r   r   ranger   r/   nparanger0   s   & r%   
test_arrayTestSeed.test_array<   s    geBi()QZZ%s+gbiim,-QZZ%s+gqcl#QZZ%s+gzl+,QZZ%s+r'   c                d    \        \        ^ 4      4      p\        VP                  ^4      R4       R# )r   izN)r   r   r   
random_rawr0   s   & r%   test_seedsequenceTestSeed.test_seedsequenceF   s"    LO$Q\\!_j1r'   c                Z    \        \        \        R4       \        \        \        R4       R# )      ?N      r   	TypeErrorr   
ValueErrorr1   s   &r%   test_invalid_scalarTestSeed.test_invalid_scalarJ   s    i$/j'2.r'   c                    \        \        \        R.4       \        \        \        R.4       \        \        \        . RO4       R# )rA   NrB   rC   )           rD   rG   s   &r%   test_invalid_arrayTestSeed.test_invalid_arrayO   s+    i4&1j'B40j'+>?r'   c                8    \        \        \        \        4       R # r"   )r   rF   r   r   rG   s   &r%   test_noninstantized_bitgen#TestSeed.test_noninstantized_bitgenU   s    j)W5r'    N)__name__
__module____qualname____firstlineno__r3   r:   r>   rH   rN   rQ   __static_attributes____classdictcell____classdict__s   @r%   r)   r)   5   s)     ,,2/
@6 6r'   r)   c                   2   a  ] tR t^Yt o R tR tR tRtV tR# )TestBinomialc                    \         P                  ! ^RR7      pR FD  p\        \        P	                  ^ V4      ^ 8H  4       \        \        P	                  W4      V4       KF  	  R# )   intdtypeN)r   rA   rK   )r8   zerosr   randombinomialr   )r1   rc   ps   &  r%   test_n_zeroTestBinomial.test_n_zeroZ   sI     %(AFOOAq)Q./vu8%@ r'   c                b    \        \        \        P                  ^\        P
                  4       R# rK   N)r   rF   rd   re   r8   nanrG   s   &r%   test_p_is_nanTestBinomial.test_p_is_nanc   s    j&//1bff=r'   c                   R pRpRp\         P                  WVR7      pVP                  4       pW,          p\        P                  ! W,          ^V,
          ,          V,          4      pV^V,          ,
          pRV RV R2p	R# )l    tvH. gؗҌ< -1sizezsample mean z! deviates from the expected mean z by more than 6*sigmaN)rd   re   meanr8   sqrt)
r1   nrf   sample_sizexsample_meanexpected_meansigma	low_boundtest_msgs
   &         r%   test_p_extremely_small#TestBinomial.test_p_extremely_smallg   s{    OOA{O3ffhQ+56
 "AI-	";-/P$o%:<r'   rS   N)	rT   rU   rV   rW   rg   rl   r|   rX   rY   rZ   s   @r%   r]   r]   Y   s     A>F Fr'   r]   c                   P   a  ] tR t^zt o R tR tR tR tR tR t	R t
R tR	tV tR
# )TestMultinomialc                6    \         P                  ^dRR.4       R# )d   皙?皙?Nrd   multinomialrG   s   &r%   
test_basicTestMultinomial.test_basic{   s    3c
+r'   c                6    \         P                  ^d. RO4       R# )r   N)r   r           r   r   r   rG   s   &r%   test_zero_probability%TestMultinomial.test_zero_probability~   s    3 9:r'   c                "   \        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# )   NrC   )r   rd   r/   r8   allr1   rv   s   & r%   test_int_negative_interval*TestMultinomial.test_int_negative_interval   s\    foob"-2223OOBA&rQw q2vr'   c           	     
   R R .p\        \        P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  ^V\        P                  ! ^4      4      P
                  R4       \        \        P                  ^V^^.4      P
                  R4       \        \        P                  ^VR4      P
                  R4       \        \        P                  ^V\        P                  ! R4      4      P
                  R4       \        \        \        P                  ^V\        ^4      4       R# )rA   NrK   r_   r_   r_   r_   r_   r_   )
r   rd   r   r8   uint32shapearrayr   rE   floatr1   rf   s   & r%   	test_sizeTestMultinomial.test_size   s   #JV''1biil;AA6JV''1biil;AA6JV''1biil;AA6JV''1q!f5;;YGV''1f5;;YGV''1bhhv.>?EE	  	i!3!3QAh	 r'   c                    \        \        \        P                  ^dRR.4       \        \        \        P                  ^dRR.4       R# )r   皙?r   ?N皙r   rF   rd   r   rG   s   &r%   test_invalid_prob!TestMultinomial.test_invalid_prob   s2    j&"4"4cC:Fj&"4"4cC:Fr'   c                    \        \        \        P                  RRR.4       \        \        \        P                  R.^
,          RR.4       R# )rK   r   r   NrC   r   rG   s   &r%   test_invalid_nTestMultinomial.test_invalid_n   s8    j&"4"4b3*Ej&"4"4rdRi#sLr'   c                f   \         P                  ! R 4      pV\         P                  ! VR,          4      ,          pVR,          p\        \	        R4      4      pVP                  ^dVR7      p\        \	        R4      4      pVP                  ^d\         P                  ! V4      R7      p\        WE4       R# )g      .@:rK   N   ۠iU)pvalsN)r8   r9   sumr   r   r   ascontiguousarrayr   )r1   rf   r   rd   
non_contigcontigs   &     r%   test_p_non_contiguous%TestMultinomial.test_p_non_contiguous   s    IIcN	RVVAdG_$7:./''5'9
7:./##Cr/C/CE/J#K:.r'   c                T   \         P                  ! . RO\         P                  R7      pWP                  4       ,          p\	        \        R4      4      pRp\        P                  ! \        VR7      ;_uu_ 4        VP                  ^V4       RRR4       R#   + '       g   i     R# ; i)Gz?ra   r   z-[\w\s]*pvals array is cast to 64-bit floatingmatchN)
r   r   &.>r   r   r   r   r   r   r   )
r8   r   float32r   r   r   pytestraisesrF   r   )r1   rv   r   rd   r   s   &    r%   test_multinomial_pvals_float32.TestMultinomial.test_multinomial_pvals_float32   sn    HH :ACMEEG7:./@]]:U33q%( 4333s   9BB'	rS   N)rT   rU   rV   rW   r   r   r   r   r   r   r   r   rX   rY   rZ   s   @r%   r   r   z   s4     ,;  GM/) )r'   r   c                   P  a  ] tR t^t o RtR t]P                  P                  RRR.4      R 4       t	]P                  P                  R. RO4      ]P                  P                  RRR.4      ]P                  P                  R. RO4      R	 4       4       4       t
R
 tR tR tRtV tR# )TestMultivariateHypergeometrici_ c                   \        \        \        P                  ^
^4       \        \        \        P                  . ROR4       \        \        \        P                  . RO^4       \        \        \        P                  . RO^
4       \        \        \        P                  . ^4       \        \        \        P                  R^e.^^R4       \        P
                  ! \        P                  4      pVP                  pW!P                  P                  ,          p\        \        \        P                  V^d,
          ^e.^^R4       R# )r6   iɚ;	marginalscountN)r_   r      rC   )rC   r_   r   )
r   rF   rd   multivariate_hypergeometricr8   iinfoint64maxrb   itemsize)r1   
int64_info	max_int64max_int64_indexs   &   r%   test_argument_validation7TestMultivariateHypergeometric.test_argument_validation   s     	j&"D"D!	 	j&"D"D	% 	j&"D"D !	% 	j&"D"D	% 	j&"D"D!	 	j&"D"D #&1k	; XXbhh'
NN	#'7'7'@'@@j&"D"D&,c2Aq'	Cr'   methodr   r   c                   \        \        V P                  4      4      pVP                  . RO^ VR7      p\	        V. RO4       VP                  . ^ VR7      p\	        V. 4       VP                  . ^ ^VR7      p\	        V\
        P                  ! R\
        P                  R7      4       VP                  . RO^ VR7      p\	        V. RO4       VP                  . RO^VR7      p\	        V. R	O4       . R
OpVP                  V\        V4      VR7      p\	        W44       VP                  . RO^^VR7      p\	        V. RO.^,          4       R# )r   r   rq   r   ra   Nr   r   r   )rK   r   rK   r_   r   )	   r   r   )r   r   r   )rK   rK   r   rK   rK   r   r   r   )	r   r   r   r   r   r8   emptyr   r   )r1   r   rd   rv   colorss   &&   r%   test_edge_cases.TestMultivariateHypergeometric.test_edge_cases   s(    7499-...y!F.K1i(..r1V.D1b!..r11V.L1bhhvRXX>?..y!F.K1i(..y!F.K1i( ..vs6{6< / >1%..y"16< / >1ykAo.r'   nsamplerq   c           	        \        \        V P                  4      4      p\        P                  ! . R	O4      pVP                  WQVVR7      p\        V\        4      '       d   V3VP                  ,           pMW5P                  ,           p\        VP                  V4       \        V^ 8  P                  4       4       \        We8*  P                  4       4       \        VP                  R
R7      \        P                  ! W1\        R7      4       \        V\        4      '       dF   VR8  d=   \        VP!                  ^ R7      W,          VP                  4       ,          RRR7       R# R# R# )r6   r   axis)
fill_valuerb   順 MbP?{Gzt?)rtolatolN)r6   r         rC   )r   r   r   r8   r   r   
isinstancer`   r   r   r   r   r   r   fullr   rr   )r1   r   r   rq   rd   r   sampleexpected_shapes   &&&&    r%   test_typical_cases1TestMultivariateHypergeometric.test_typical_cases   s    7499-./*33FT;A 4 CdC  "Wv||3N!LL0NV\\>21!!#$!&&()6::2:.7743G	IdC  TV^ FKKQK/#,vzz|;!%E3 &4 r'   c                    \        \        V P                  4      4      pVP                  . RO^^RR7      p\        P
                  ! . RO. RO. RO. RO. RO.4      p\        W#4       R# )r   r   r   Nr   )r_   rK   r_   rK   rK   r   r_   r   r   r   r   r   r   r8   r   r   r1   rd   r   expecteds   &   r%   test_repeatability12TestMultivariateHypergeometric.test_repeatability1  s_    7499-.33Iqq;B 4 D88Y&&&&	( )
 	6,r'   c                    \        \        V P                  4      4      pVP                  . RO^2^RR7      p\        P
                  ! . RO. RO. RO. RO. RO.4      p\        W#4       R# )	r   r   r   Nr      2   )r         )      r   )r         )      r   r   r   s   &   r%   test_repeatability22TestMultivariateHypergeometric.test_repeatability2  sb    7499-.33L"9:;F 4 H 88\))))	+ ,
 	6,r'   c                    \        \        V P                  4      4      pVP                  . RO^^RR7      p\        P
                  ! . RO. RO. RO. RO. RO.4      p\        W#4       R# )	r   r   r   Nr   )r_   r   r   )r   r   r   )r_   r   r   )rK   r      r   r   s   &   r%   test_repeatability32TestMultivariateHypergeometric.test_repeatability3)  sb    7499-.33L"9:;F 4 H 88Y&&&&	( )
 	6,r'   rS   N)   r   -   7   )r   r_   r   iI )rT   rU   rV   rW   r   r   r   markparametrizer   r   r   r   r  rX   rY   rZ   s   @r%   r   r      s     DCB [[X'=>/ ?/D [[Y8[[X'=>[[V%893 : ? 93,	-
-
- 
-r'   r   c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestSetStatei6  c                    R p\        \        V4      4      pVP                  pVP                  pVR,          VR,          R,          VR,          R,          3pW#V3# )Ibit_generatorstatekeyr   )r   r   r  r  )r1   r   rgr  r  legacy_states   &     r%   _create_rngTestSetState._create_rng7  s_    wt}%((##o.gu-gu-/ %''r'   c                    V P                  4       w  rpVP                  ^R7      pW2n        VP                  ^R7      p\        \        P
                  ! WE8H  4      4       R# r   rp   Nr  standard_normalr  r   r8   r   r1   r  r  r  oldnews   &     r%   test_gaussian_reset TestSetState.test_gaussian_resetA  sT    #'#3#3#5 5  a (#  a (sz"#r'   c                    V P                  4       w  rpVP                  4        VP                  pVP                  ^R7      pW2n        VP                  ^R7      p\        \        P
                  ! WE8H  4      4       R# r  r  r  s   &     r%    test_gaussian_reset_in_media_res-TestSetState.test_gaussian_reset_in_media_resI  sm     $(#3#3#5 5
##  a (#  a (sz"#r'   c                R    V P                  4       w  p pVP                  R R 4       R# rA   N)r  negative_binomial)r1   r  _s   &  r%   test_negative_binomial#TestSetState.test_negative_binomialT  s(     ##%Aq
S#&r'   rS   N)
rT   rU   rV   rW   r  r  r  r%  rX   rY   rZ   s   @r%   r  r  6  s     ($	$' 'r'   r  c                   
  a  ] tR tRt o ]P
                  t]]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R tR t]P<                  P?                  RR$]P@                  ! . R%O4      3R#]P@                  ! . R&O4      3R']P@                  ! . R(O4      3.4      R 4       t!R t"R t#R t$R t%R t&R t'R t(]P<                  PR                  ]P<                  P?                  RR^]P                  R3R^]P                  R3RR]P                  R3RR]P                  R3.4      R  4       4       t*R!t+V t,R"# ))TestIntegersi[  c                J    \        \        V P                  ^V\        R7       R# rK   r&   rb   N)r   rE   rfuncr   )r1   r&   s   &&r%   test_unsupported_type"TestIntegers.test_unsupported_typeb  s    iQOr'   c           
        V P                    EF  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTp\        \        V P                  V^,
          VWR7       \        \        V P                  W4^,           WR7       \        \        V P                  WCWR7       \        \        V P                  ^^ VVR7       \        \        V P                  V^,
          .VWR7       \        \        V P                  V.V^,           .WR7       \        \        V P                  V.V.WR7       \        \        V P                  ^^ .WR7       \        \        V P                  V^,           .V.WR7       EK  	  R# r   r+  N	itypeboolr8   r   minr   r   rF   r,  r1   r&   dtlbndubnds   &&   r%   test_bounds_checking!TestIntegers.test_bounds_checkinge  sP   **Bd
1(8(8Dd
1(8(81(<D'4!8TD*djj$(D#+7*djj$q#+7*djj$#+7*djj!Q "$ *djj4!8*d#+7*djj4&4!8*#+7*djj4&4&#+7*djj!aS#+7*djj4!8*tf#+7 7+ r'   c           
     b   V P                    EF  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M+\        P                  ! V4      P
                  V'       * ,           p\        \        V P                  V^,
          .^,          V.^,          WR7       \        \        V P                  V.^,          V^,           .^,          WR7       \        \        V P                  WC.^,          WR7       \        \        V P                  ^.^,          ^ WR7       EK   	  R# r0  r1  r5  s   &&   r%   test_bounds_checking_array'TestIntegers.test_bounds_checking_array~  s    **Bd
1(8(8Dd
1(8(8L(ID*djj4!8*q.4&1*#+7*djj4&1*!8*q.8G*djj$
#+7*djj1#'1#+7 7 r'   c                   V P                    EFy  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpV'       * pV^,
          p\        V P                  WfV,           RWR7      V4       \        V P                  V.We,           RWR7      V4       Tp\        V P                  WfV,           RWR7      V4       \        V P                  WfV,           .RWR7      V4       W4,           ^,          p\        V P                  WfV,           RWR7      V4       \        V P                  V.We,           .RWR7      V4       EK|  	  R# )r   r+   rq   r&   rb   Nr2  r3  r8   r   r4  r   r   r,  )r1   r&   r6  r7  r8  is_opentgts   &&     r%   test_rng_zero_and_extremes'TestIntegers.test_rng_zero_and_extremes  st   **Bd
1(8(8Dd
1(8(81(<D'4!8TD"lG(CCwT-5 $ ABEGSE3=t-5 $ ABEG CCwT-5 $ ABEGC-t-5 $ ABEG ;1$CCwT-5 $ ABEGSECM?)- $ L+ r'   c           
        R pV P                    EFC  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpV^,
          p\        V P                  V.V^,           .W#R7      V4       \        V P                  V.V,          V^,           .V,          VR7      V4       \        V P                  V.V,          V^,           .V,          W#R7      V4       Tp\        V P                  V.V^,           .W#R7      V4       \        V P                  V.V,          V^,           .V,          VR7      V4       \        V P                  V.V,          V^,           .V,          W#R7      V4       WE,           ^,          p\        V P                  V.V^,           .W#R7      V4       \        V P                  V.V,          V^,           .V,          VR7      V4       \        V P                  V.V,          V^,           .V,          W#R7      V4       EKF  	  R# )r+   rq   rb   ra   Nr@  )r1   r&   rq   r6  r7  r8  rB  s   &&     r%    test_rng_zero_and_extremes_array-TestIntegers.test_rng_zero_and_extremes_array  s4   **Bd
1(8(8Dd
1(8(81(<D'4!8TD(CSEC!G9)- $ 9:=?sQwi$.b $ :;>@sQwi$.T $ EFIK CSEC!G9)- $ 9:=?sQwi$.b $ :;>@sQwi$.T $ EFIK ;1$CSEC!G9)- $ 9:=?sQwi$.b $ :;>@sQwi$.T $ EFIK5 r'   c                z   V P                    F  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTp V P                  W4WR7       K  	  R#   \         d   p\        RT 24      hRp?ii ; ir   r+  zKNo error should have been raised, but one was with the following message:

N	r2  r3  r8   r   r4  r   r,  	ExceptionAssertionErrorr1   r&   r6  r7  r8  es   &&    r%   test_full_rangeTestIntegers.test_full_range  s     **Bd
1(8(8Dd
1(8(81(<D'4!8TD9

4
C   9$ &4453&8 9 99s   BB:'B55B:c                   V P                    F  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTp V P                  V.^,          V.WR7       K  	  R#   \         d   p\        RT 24      hRp?ii ; irJ  rK  rN  s   &&    r%   test_full_range_array"TestIntegers.test_full_range_array  s     **Bd
1(8(8Dd
1(8(81(<D'4!8TD9

D6A:v
K   9$ &4453&8 9 99s   B&&C1B??Cc           
        \        \        4       4      pV P                  R ,           F_  pR FV  pV P                  ^WA,
          RWR7      p\	        VP                  4       V8  4       \	        VP                  4       ^8  4       KX  	  Ka  	  V P                  ^ ^V,
          RV\        R7      p\	        VP                  4       ^8  4       \	        VP                  4       ^ 8  4       R# )rK   NNr?  N)r   r     i   )r   r   r2  r,  r   r   r4  r3  )r1   r&   rd   r6  r8  valss   &&    r%   test_in_bounds_fuzz TestIntegers.test_in_bounds_fuzz  s    79%**R..B"zz!T_7+3 " ?
T)*
a(	 # ! zz!Q\( $  &
Q
a r'   c           	     \   V P                    EF  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpRp\        \        R4      4      pVP                  W4WQVR7      p\        \        R4      4      pVP                  V.V.VWR7      p\        \        R4      4      pVP                  V.V,          V.V,          WQVR7      p	\        Wx4       \        Wy4       EK  	  R# )r   r+     r?  N
r2  r3  r8   r   r4  r   r   r   r/   r   )
r1   r&   r6  r7  r8  rq   rd   scalarscalar_arrayr   s
   &&        r%   test_scalar_array_equiv$TestIntegers.test_scalar_array_equiv  s   **Bd
1(8(8Dd
1(8(81(<D'4!8TDDwt}-F__Td&( % *F wt}-F!??D6D6/7 + CL wt}-FOOTFTMD6#4$*. $ MEv4v-% r'   c                N   R RRRRRRRRR	R
RRRRRRR	/	pV P                   R,           F  p\        \        R4      4      p\        P                  R8X  d   VP                  ^ ^V,
          RVVR7      pM+VP                  ^ ^V,
          RVVR7      P                  4       p\        P                  ! V4      P                  4       p\        V\        P                  ! V4      P                  ,          V8H  4       K  	  \        \        R4      4      pVP                  ^ ^V,
          RV\        R7      P                  \        P                   4      p\        P                  ! V4      P                  4       p\        V\        P                  ! \        4      P                  ,          V8H  4       R# )r3  @053594a9b82d656f967c54869bc6970aa0358cf94ad469c81478459c6a90eee3int16@54de9072b6ee9ff7f20b58329556a46a447a8a29d67db51201bf88baa6e4e5d4int32@d3a0d5efb04542b25ac712e50d21f39ac30f312a5052e9bbb1ad3baa791ac84br   @14e224389ac4580bfbdccb5697d6190b496f91227cf67df60989de3d546389b1int8@0e203226ff3fbbd1580f15da4621e5f7164d0d8d6b51696dd42d004ece2cbec1uint16r   uint64uint8rV  r\  littler+   r?  N)r2  r   r   sys	byteorderr/   byteswaphashlibsha256	hexdigestr   r8   rb   namer3  viewri  )r1   r&   rB  r6  rd   valress   &&     r%   test_repeatabilityTestIntegers.test_repeatability  sv    [[[[[[[[[] **R..Bwt}-F }}(ooaXD8') & + ooaXD8') & ++38:  ..%//1CC))*c12 ! 74=)ooaXD8#  %%)T"''] 	nnS!++-BHHTN''(C/0r'   c           	        V P                    EF?  pV\        \        P                  39   d   ^ M\        P                  ! V4      P                  pV\        \        P                  39   d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTp\        \        R4      4      pVP                  W4RVVR7      p\        \        R4      4      pVP                  V.R,          WAVR7      p\        Wg4       \        \        R4      4      pVP                  V.R,          V.R,          WR7      p\        Wg4       EKB  	  R# )r   r\  r+   r?  r+  Nr]  )r1   r&   r6  r7  r8  rd   rw  val_bcs   &&      r%   test_repeatability_broadcasting,TestIntegers.test_repeatability_broadcasting+  s   **BtRWWo-1288B<3C3CDtRWWo-1288B<3C3Ca3GD'4!8TD wt}-F//$4(#% " 'C wt}-F__dVd]D&( % *F s+wt}-F__dVd]TFTM)1 % =F s+) r'   zbound, expectedc                    R \        V4      3 FA  p\        \        R4      4      pVP                  WR7      p\	        YSe   TMV^ ,          4       KC  	  R # )Nr\  rp   )lenr   r   r/   r   )r1   boundr   rq   rd   rv   s   &&&   r%   !test_repeatability_32bit_boundary.TestIntegers.test_repeatability_32bit_boundaryB  sH     3x=)Dwt}-F1A(8HhqkJ *r'   c           
     8   \         P                  ! . RO. RO. RO.. RO. RO. R	O.. R
O. RO. RO.. RO. RO. RO.. RO. RO. RO..4      pR FK  p\        \        R4      4      pVP	                  R.^ .^... ROVR7      p\        YBe   TMV^ ,          4       KM  	  R# )
`Ni90  rp   )r  l   Y/ i0b)i)H{TiP-iTq)l   C iZ'l   !g )l   k40 l   n2c l   DBJ )i|(iy+l   _&A )ip@GiG^l   J|xK )l   
f l   Dmv l   E"g )i>{l   wT2L iJQ)iQ//itLol   k )i\siJi)i=l   }D l   E9l )l   
+x i#Jl   b )i0i7Ol   rn )ixiiAi.t)l   q/q i;-/i)N)r   r   r   rC   )r-   rM          )r8   r   r   r   r/   r   )r1   desiredrq   rd   rv   s   &    r%   .test_repeatability_32bit_boundary_broadcasting;TestIntegers.test_repeatability_32bit_boundary_broadcastingQ  s    ((AAAC BAAC BAAC BAAC BAACD E &Dwu~.F"sQC 0 =%)   +A q-='71:N &r'   c                   \         P                  ^ ^^A,          3RRR3\         P                  R/pV EF  pW#,           EF}  pVw  rVWa,
          p\         P                  ! V.^
,          .4      p\         P                  ! V.^
,          4      p\	        \
        \        P                  WVWR7       \	        \
        \        P                  WvWR7       \	        \
        \        P                  WXWR7       \	        \
        \        P                  WxWR7       \         P                  ! V.^
,          .\        R7      p	\         P                  ! V.^
,          \        R7      p
\	        \
        \        P                  WWR7       \	        \
        \        P                  WZWR7       \	        \
        \        P                  WWR7       EK  	  EK  	  R# )r   r+  ra   N)rC               r6   r   r   r   ))r   l            )l         r  r  r  )        r  )	r8   rl  r   r   r   rF   rd   r/   object)r1   r&   configsrb   configlowhighlow_ahigh_alow_ohigh_os   &&         r%   &test_int64_uint64_broadcast_exceptions3TestIntegers.test_int64_uint64_broadcast_exceptionsh  sI   991b5z;H88 89 E!.."	3%"*.4&2+.j&//3'/>j&//5'/>j&//3'/>j&//5'/> 3%"*V<4&2+V<j&//5'/>j&//3'/>j&//5'/> >) ) r'   c                   \         P                  p\         P                  ! \         P                  4      P                  p\         P                  ! \         P                  ! \         P                  4      P                  4      p\         P                  ! \         P                  ! \         P                  4      P                  ^,           V,
          4      p\
        P                  WEWR7      p\        Wc4       R# r*  )r8   r   r   r   rl  rd   r/   r   )r1   r&   r6  rB  r7  r8  actuals   &&     r%   test_int64_uint64_corner_case*TestIntegers.test_int64_uint64_corner_case  s     XXhhrxx $$xx*../yy"((+//!3h>? hIV!r'   c                   V P                    F  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpV\        J d   \        P                  MTpV P                  W4WR7      p\        VP                  V4       K  	  \        \        3 F  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpV P                  W4WR7      p\        \        V4      V4       K  	  R# r0  )r2  r3  r8   r   r4  r   r,  r   rb   r`   typer1   r&   r6  r7  r8  r   s   &&    r%   test_respect_dtype_singleton)TestIntegers.test_respect_dtype_singleton  s   **Bd
1(8(8Dd
1(8(81(<D'4!8TD$JBBZZXZHFr*  +Bd
1(8(8Dd
1(8(81(<D'4!8TD ZZXZHFfr* r'   c                   V P                    F  pV\        J d   ^ M\        P                  ! V4      P                  pV\        J d   ^M&\        P                  ! V4      P
                  ^,           pV'       d
   V^,
          MTpV\        J d   \        P                  MTpV P                  V.V.WR7      p\        VP                  V4       V P                  V.^,          V.^,          VVR7      p\        VP                  V4       K  	  R# r0  )	r2  r3  r8   r   r4  r   r,  r   rb   r  s   &&    r%   test_respect_dtype_array%TestIntegers.test_respect_dtype_array  s    **Bd
1(8(8Dd
1(8(81(<D'4!8TD$JBBZZZLFr*ZZ
TFQJ&(   *Fr* r'   c           	     ^   V P                    F  pV P                  ^ ^ RWR7      p\        \        P	                  ^ ^ RR7      P
                  R4       \        \        P	                  ^ R^ R7      P
                  R4       \        \        P	                  ^
^
^ R7      P
                  R4       K  	  R# )r   r+  rp   Nr   r   r   r   )r2  r,  r   rd   r/   r   )r1   r&   r6  r   s   &&  r%   test_zero_sizeTestIntegers.test_zero_size  s    **BZZ1i(ZMF
 AI>DD"$Ca8>>ERa8>>E r'   c           	         \         P                  R 8X  d   RMRp\        P                  ! \        4      ;_uu_ 4        \
        P                  ^ ^^
VR7       RRR4       R#   + '       g   i     R# ; i)bigz<i4z>i4rF  N)ro  rp  r   r   rF   rd   r/   )r1   other_byteord_dts   & r%   test_error_byteorder!TestIntegers.test_error_byteorder  sH    $'MMU$:5]]:&&OOAs3COD '&&&s   A  A1	zsample_size,high,dtype,chi2maxi@KL g     @_@g     b@i i	  g     ȩ@i  g     d@c                    \         P                  W!VR 7      p\        P                  ! VRR7      w  rgW,          pWx,
          ^,          V,          P	                  4       p	R# )rF  T)return_countsN)rd   r/   r8   uniquer   )
r1   ru   r  rb   chi2maxsamplesvaluescountsr   chi2s
   &&&&&     r%   $test_integers_small_dtype_chisquared1TestIntegers.test_integers_small_dtype_chisquared  sK     //$/F7$?%"Q&1668r'   rS   NrM   r-   )iui,YQiXgi$#Pl   bA i{El   /Yi )ui,YQXgi%#Pl   bA i|El   0Yi r  )r  r  l   bA l   1Yi i{,miuHl   HM )-rT   rU   rV   rW   rd   r/   r,  r3  r8   ri  rm  rd  rk  rf  r   r   rl  r2  r-  r9  r<  rC  rG  rP  rS  rY  r`  ry  r}  r   r  r	  r   r  r  r  r  r  r  r  r  slowr  rX   rY   rZ   s   @r%   r(  r(  [  s    OOE 277BHHbhh		XXryy"((BII7EP7274K>99! .*!1F,. [[
RXX C D 
E
 ? @ 
A
RXX C D 
E		FKKO.>8".+*+FE [[[[=
1bggu	%
1bhh	&
D"((F	+
D"))V	,	
 r'   r(  c                     a  ] tR tRt o RtR tR tR tR tR t	R t
R	 t]P                  P                  R
]P                   ]P"                  3]P$                  ]P&                  3.4      R 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 t%R t&R t'R t(R  t)R! t*R" t+R# t,R$ t-R% t.]P                  P                  R&]/]0.4      ]P                  P                  R'R(]Pb                  ! . RO. RO.4      3^ ]Pb                  ! . RO. RO.4      3^]Pb                  ! . RO. RO.4      3.4      R) 4       4       t2R* t3R+ t4]P                  P                  R,R^.4      R- 4       t5R. t6R/ t7R0 t8R1 t9R2 t:R3 t;R4 t<R5 t=R6 t>R7 t?]P                  P                  ]P                  P                  R8R97      ]P                  P                  ]C'       * R:R97      R; 4       4       4       tD]P                  P                  R<. RO. RO. RO. RO. RO. ROR=.. RO.4      R> 4       tER? tFR@ tGRA tHRB tIRC tJRD tKRE tLRF tMRG tNRH tORI tPRJ tQRK tRRL tSRM tTRN tURO tV]P                  P                  RP]P                  ! R=R4      RQ]P                  RR.4      RS 4       tYRT tZ]P                  P                  ][RUR97      ]P                  P                  RV. RO4      RW 4       4       t\]P                  P                  RX^ .R..3RY.^..3.4      RZ 4       t]]P                  P                  RV. RO4      R[ 4       t^R\ t_R] t`R^ taR_ tbR` tcRa tdRb teRc tfRd tgRe thRf tiRg tjRh tkRi tlRj tmRk tnRl toRm tpRn tqRo trRp tsRq ttRr tuRs tvRt twRu txRv tyRw tzRx t{Ry t|Rz t}R{ t~R| tR} tR~ tR tR t]P                  P                  RRR.4      R 4       t]P                  P                  RR]EP
                  ) R]EP
                  R.4      ]P                  P                  R. RO4      R 4       4       tR tR tR tR tR tRtV tR(# )TestRandomDisti  r  c                    \        \        V P                  4      4      pVP                  R^cRR7      p\        P
                  ! RR.^)^%.RR..4      p\        W#4       R# )	c   rp   Nr   r_   ir   r   r   r/   r8   r   r   r1   rd   r  r  s   &   r%   test_integersTestRandomDist.test_integers  sR    7499-.bv6((S#JR3*=>6+r'   c                    \        \        V P                  4      4      pVP                  ^ ^cR\        P
                  R7      p\        P                  ! ^	^.^F^D.^^)..\        P
                  R7      p\        W#4       R# )r   rF  ra   Nr  )r   r   r   r/   r8   r   r   r   r  s   &   r%   test_integers_masked#TestRandomDist.test_integers_masked  s`     7499-.BV299E((QGb"X2w7ryyI6+r'   c                    \        \        V P                  4      4      pVP                  R^cRRR7      p\        P
                  ! RR.^)^&.RR	..4      p\        W#4       R# )
r  T)rq   r&   Nr  r  r  r  r  ir  r  s   &   r%   test_integers_closed#TestRandomDist.test_integers_closed  sT    7499-.bvE((S#JR3*=>6+r'   c                   \         P                  \        P                  ! R 4      P                  \        P                  ! R 4      P                  RR7      p\        P                  ! R 4      P                  p\        W4       R# )lTr&   N)rd   r/   r8   r   r   r   )r1   r  r  s   &  r%   test_integers_max_int$TestRandomDist.test_integers_max_int  sW     #!2!2BHHSM4E4E*. ! 0 ((3-##V%r'   c                @   \        \        V P                  4      4      pVP                  R	4      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       \        \        V P                  4      4      pVP                  4       p\        W#R
,          ^R7       R# )r   gG0Ը?gæ?g2?gu	A?gH
>H?g;dE?decimalNr  r  r   r   r   rd   r8   r   r   r  s   &   r%   test_randomTestRandomDist.test_random  s    7499-.v&((.0AB.0AB.0ABD E 	"&2>7499-.!&$-Dr'   c                    \        \        V P                  4      4      pVP                  R	4      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R# )
r   CԸ?gP?gtX?g81
A?grO>H?g88dE?r  Nr  r  r  s   &   r%   test_random_float TestRandomDist.test_random_float  sY    7499-.v&((Y4'4'46 7 	"&1=r'   c                    \        \        V P                  4      4      pVP                  \        P
                  R 7      pRp\        W#^R7       R# )ra   r  r  N)r   r   r   rd   r8   r   r   r  s   &   r%   test_random_float_scalar'TestRandomDist.test_random_float_scalar  s8    7499-.RZZ0!&1=r'   zdtype, uint_view_typec                    \        \        V P                  4      4      pVP                  R VR7      p\        P
                  ! VP                  V4      ^,          4      pR# )r   ra   N)r   r   r   rd   r8   count_nonzerorv  )r1   rb   uint_view_typerd   r   num_ones_in_lsbs   &&&   r%   test_random_distribution_of_lsb.TestRandomDist.test_random_distribution_of_lsb"  sG     7499-.vU3**6;;~+F+JKr'   c                F    \        \        \        P                  R R7       R# )rf  ra   N)r   rE   rd   rG   s   &r%   test_random_unsupported_type+TestRandomDist.test_random_unsupported_type.  s    ig>r'   c                    \        \        V P                  4      4      pVP                  ^^4      p\        P
                  ! . RO\        P                  R7      p\        W#4       R# )r   ra   N)r   r   r_   r_   r   r   r   choicer8   r   r   r   r  s   &   r%   test_choice_uniform_replace*TestRandomDist.test_choice_uniform_replace1  sA    7499-.q!$((<rxx86+r'   c                    \        \        V P                  4      4      pVP                  ^^. ROR7      p\        P
                  ! . RO\        P                  R7      p\        W#4       R# )r   rf   ra   N)皙?r  皙?r  )r   rK   r   rK   r  r  s   &   r%   test_choice_nonuniform_replace-TestRandomDist.test_choice_nonuniform_replace7  sF    7499-.q!';<((<rxx86+r'   c                \   \        \        V P                  4      4      pVP                  ^^RR7      p\        P
                  ! . RO\        P                  R7      p\        W#4       VP                  ^^RRR7      p\        P                  ! ^\        P                  R7      p\        W#4       R# )r   Freplacera   )r  shuffleNr   )	r   r   r   r  r8   r   r   r   r9   r  s   &   r%   test_choice_uniform_noreplace,TestRandomDist.test_choice_uniform_noreplace=  sw    7499-.q!U3((9BHH56+q!UEB))ARXX.6+r'   c                    \        \        V P                  4      4      pVP                  ^^R. ROR7      p\        P
                  ! . RO\        P                  R7      p\        W#4       R# )r   Fr  rf   ra   N)r  333333?rA   r  )r   r_   r   r  r  s   &   r%    test_choice_nonuniform_noreplace/TestRandomDist.test_choice_nonuniform_noreplaceF  sH    7499-.q!U6JK((9BHH56+r'   c                    \        \        V P                  4      4      pVP                  . RO^4      p\        P
                  ! . RO4      p\        W#4       R# )aN)r  bcd)r  r  r  r  r   r   r   r  r8   r   r   r  s   &   r%   test_choice_noninteger%TestRandomDist.test_choice_nonintegerL  s=    7499-.3Q7((/06+r'   c                    \        \        V P                  4      4      pVP                  ^ ^.^^.^^.^^..^4      p\        P
                  ! ^ ^.^ ^.^^..4      p\        W#4       R# r   Nr  r  s   &   r%   )test_choice_multidimensional_default_axis8TestRandomDist.test_choice_multidimensional_default_axisR  sg    7499-.AAAA?C((QFQFQF346+r'   c                    \        \        V P                  4      4      pVP                  ^ ^.^^.^^.^^..^^R7      p\        P
                  ! ^ .^.^.^..4      p\        W#4       R# )r   r   Nr  r  s   &   r%   (test_choice_multidimensional_custom_axis7TestRandomDist.test_choice_multidimensional_custom_axisX  si    7499-.AAAA?K((QC!qcA3/06+r'   c           	     <   \         P                  p\        \        VR
^4       \        \        VR^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	# )rK         @      ?r  r  r   Fr  r  NrC   )rK   r_   r   r   )r  r  r   r   r   rL   )rC   )rC   rK   )rK   r   r   )rd   r  r   rF   )r1   r   s   & r%   test_choice_exceptions%TestRandomDist.test_choice_exceptions^  s    j&"a0j&"a0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                
   R R.p\        \        P                  ! \        P	                  ^RR7      4      4       \        \        P                  ! \        P	                  ^RR7      4      4       \        \        P                  ! \        P	                  ^RVR7      4      4       \        \        P                  ! \        P	                  ^RVR7      4      4       \        \        P                  ! \        P	                  ^^.RR7      4      4       \        \        P	                  R.RR7      RJ 4       \        P
                  ! ^^.4      p\        P                  ! ^\        R7      pW#^ &   \        \        P	                  VRR7      VJ 4       Rp\        \        P                  ! \        P	                  ^VRR7      4      '       * 4       \        \        P                  ! \        P	                  ^VRR7      4      '       * 4       \        \        P                  ! \        P	                  ^VRVR7      4      '       * 4       \        \        P                  ! \        P	                  ^VRVR7      4      '       * 4       \        \        P                  ! \        P	                  ^^.VRR7      4      '       * 4       \        \        P	                  R.VRR7      P                  ^ 8H  4       \        P
                  ! ^^.4      p\        P                  ! ^\        R7      pW#^ &   \        \        P	                  W4RR7      P                  4       VJ 4       Rp. ROp\        \        P	                  ^VRR7      P                  V4       \        \        P	                  ^VRR7      P                  V4       \        \        P	                  ^VRVR7      P                  V4       \        \        P	                  ^VRVR7      P                  V4       \        \        P	                  \        P                  ! ^4      VRR7      P                  V4       \        \        P                  ^ ^ RR7      P                  R4       \        \        P                  ^ R^ R7      P                  R4       \        \        P                  ^
^
^ R7      P                  R4       \        \        P	                  ^ ^ R7      P                  R4       \        \        P	                  . RR7      P                  R4       \        \        P	                  R	R
.RR7      P                  R4       \        \        \        P                  . ^
4       R# )r  r   Tr  Fr  Nra   rp   r  r  rS   r  )r  r  r  r  r  r   r  r  r  )r   r8   isscalarrd   r  r   r   r  ndimitemr   r   r9   r/   r   rF   )r1   rf   r  arrr2   s   &    r%   test_choice_return_shape'TestRandomDist.test_choice_return_shapep  s   #JFMM!TM:;<FMM!UM;<=FMM!TQM?@AFMM!UaM@ABFMM1a&$M?@Atfd3t;<HHaVhhq'Ac40A56 BKKaD ABBCBKKaE BCCDBKKaDA FGGHBKKaEQ GHHIBKKq!fa FGGHtfa6;;q@AHHaVhhq'Acd388:a?@ *V]]1a]6<<a@V]]1a]7==qAV]]1a];AA1EV]]1a!]<BBAFV]]299Q<D]AGGK 	V__Q	_:@@)LV__Q!_4::DAV__R!_4::DAV]]11]-33T:V]]2D]177>V]]C:I]>DD	 j&--R8r'   c                ~    \         P                  ! . RO4      p. ROp\        \        \        P
                  WR7       R# )*   Nr  )r  rK   r_   )NNN)r8   r   r   rF   rd   r  )r1   r  rf   s   &  r%   test_choice_nan_probabilities,TestRandomDist.test_choice_nan_probabilities  s%    HHZ j&--8r'   c                l   \         P                  ! ^
4      ^,          pRVR&   \        \        V P                  4      4      pVP                  ^^VR,          R7      p\        \        V P                  4      4      pVP                  ^^\         P                  ! VR,          4      R7      p\        W44       R# )r6   r  :rK   Nr_   NNr_   r  N)r8   onesr   r   r   r  r   r   )r1   rf   rd   r   r   s   &    r%   test_choice_p_non_contiguous+TestRandomDist.test_choice_p_non_contiguous  s    GGBK!O$7499-.]]1a1S6]2
7499-.q!r';';AcF'CD:.r'   c                    \         P                  ! ^4      R,          p\        P                  ^^4      p\        P                  ^^RR7      p\        P                  ^^VR7      p\        P                  ^^VRR7      pR# )r   g      @Fr  r  )rf   r  N)r8   r$  rd   r  )r1   rf   r  s   &  r%   test_choice_return_type&TestRandomDist.test_choice_return_type  sa    GGAJOq!$q!U3q!q)q!q%8r'   c                T   R p\        \        V P                  4      4      pVP                  RRRR7      p\        P
                  R8w  d   VP                  4       p\        P                  ! VP                  \        P                  4      4      P                  4       p\        W8H  4       R# )@4266599d12bfcfb815213303432341c06b4349f5455890446578877bb322e222'  r  Fr  rn  N)r   r   r   r  ro  rp  rq  rr  rs  rv  r8   ri  rt  r   )r1   choice_hashrd   r  rx  s   &    r%   test_choice_large_sample'TestRandomDist.test_choice_large_sample  su    X7499-.udE:==H$__&FnnV[[12<<>"#r'   c                z   \        \        V P                  4      4      p\        VP	                  . RORR7      \
        P                  ! ^4      RR7       \        VP	                  . RO.RR7      . RO4       \        VP	                  ^..RR7      ^.RR7       \        VP	                  ^..R^R7      ^.RR7       R# )rK   rp   T)strict)rq   r   Nr   rS   )r   r   r   r   r  r8   r   r1   rd   s   & r%   "test_choice_array_size_empty_tuple1TestRandomDist.test_choice_array_size_empty_tuple  s    7499-.6===<bhhqk"&	(6==)2=>	J6==1#R=81#dK6==1#Ra=@1#"&	(r'   c                ~    \        \        V P                  4      4      pVP                  ^
4      pRp\	        W#4       R# )r6   s
   	8%N)r   r   r   bytesr   r  s   &   r%   
test_bytesTestRandomDist.test_bytes  s0    7499-.b!5V%r'   c                    R  R R R R R R R R R	 R
 3 FS  p\        \        V P                  4      4      pV! . RO4      pVP                  V4       TpV! . RO4      p\	        WE4       KU  	  R# )c                 .    \         P                  ! . 4      # r"   r8   r   rv   s   &r%   <lambda>-TestRandomDist.test_shuffle.<locals>.<lambda>  s    rxx|r'   c                     V # r"   rS   r<  s   &r%   r=  r>    s    qr'   c                 h    \         P                  ! V 4      P                  \         P                  4      # r"   )r8   asarrayastyperi  r<  s   &r%   r=  r>    s    rzz!}33BGG<r'   c                 h    \         P                  ! V 4      P                  \         P                  4      # r"   )r8   rA  rB  r   r<  s   &r%   r=  r>    s    rzz!}33BJJ?r'   c                 h    \         P                  ! V 4      P                  \         P                  4      # r"   )r8   rA  rB  	complex64r<  s   &r%   r=  r>    s    rzz!}33BLLAr'   c                 T    \         P                  ! V 4      P                  \        4      # r"   )r8   rA  rB  r  r<  s   &r%   r=  r>    s    rzz!}33F;r'   c                 2    V  Uu. uF  qV3NK  	  up# u upi r"   rS   rv   is   & r%   r=  r>    s    21A22s   c                 Z    \         P                  ! V  Uu. uF  qV.NK  	  up4      # u upi r"   )r8   rA  rH  s   & r%   r=  r>    s!    rzz1*=1aq61*=>*=s   (c                 D    \         P                  ! W .4      P                  # r"   )r8   vstackTr<  s   &r%   r=  r>    s    ryy!022r'   c                     \         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  )r8   rA  r`   rv  recarrayrH  s   & r%   r=  r>    sG    

A+>AqFA+>-0#Jc
+C!E!%bkk!2!3+>s   Ac                     \         P                  ! V  Uu. uF  qV3NK  	  upR \        R3R\         P                  R3.4      # u upi )r  r  rK   )r8   rA  r  rf  rH  s   & r%   r=  r>    sB    rzz1*=1aq61*=,/+>,/4+@+B C*=s   AN
rK   r_   r   r   r   r  r   r  r   r   
r   rK   r   r  r   r   r   r  r_   r   )r   r   r   r  r   )r1   convrd   alistr  r  s   &     r%   test_shuffleTestRandomDist.test_shuffle  s|     , <?A;2>24CDD" wtyy12F78ENN5!F9:Gv/-Dr'   c                   \        \        V P                  4      4      p\        P                  ! ^4      P                  R4      pVP                  V^R7       \        P                  ! . RO. RO. RO. RO.4      p\        W#4       \        \        V P                  4      4      p\        P                  ! ^4      P                  R4      pVP                  VRR7       \        W#4       R# 	rW  r   N)r   r   )r   r   rK   r_   )r   r   r   r  )r     r   r6   )r   r   r   r   rC   )	r   r   r   r8   r9   reshaper  r   r   r  s   &   r%   test_shuffle_custom_axis'TestRandomDist.test_shuffle_custom_axis  s    7499-.2&&v.vA&((,,,,. / 	6+7499-.2&&v.vB'6+r'   c                "   \        \        V P                  4      4      p\        P                  ! . 4      P                  R4      pR FE  p\        P                  ! . 4      P                  R4      pVP                  WCR7       \        WB4       KG  	  R# )r   r   N)r   r  )r   rK   )r   r   r   r8   r   r[  r  r   )r1   rd   r  r   r  s   &    r%   test_shuffle_custom_axis_empty-TestRandomDist.test_shuffle_custom_axis_empty  se    7499-.((2,&&v.DXXb\))&1FNN6N-v/ r'   c                \   \         P                  ! ^4      P                  ^^
4      pVP                  4       p\	        \        V P                  4      4      pVP                  V^R7       \	        \        V P                  4      4      pVP                  VP                  4       \        W4       R# )r   r   N)
r8   r9   r[  copyr   r   r   r  rM  r   )r1   y1y2rd   s   &   r%   test_shuffle_axis_nonsquare*TestRandomDist.test_shuffle_axis_nonsquare  su    YYr]""1b)WWY7499-.r"7499-.rtt2"r'   c                2   \         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                  V4       \        \        VP                  VP                  ( ,          4      \        VP                  VP                  ( ,          4      4       \        P                  V4       \        \        VP                  VP                  ( ,          4      \        VP                  VP                  ( ,          4      4       K  	  R# )r   N)r   r   rC   )r8   mamasked_valuesr[  r7   r9   rb  rd   r  r   sorteddatamask)r1   r  r  a_origb_origrI  s   &     r%   test_shuffle_masked"TestRandomDist.test_shuffle_masked
  s    EE

59f = AA ErJEE		" 1A 5r:rANN1qvvqvvg'V[[L0I)JLNN1qvvqvvg'V[[L0I)JL r'   c           
        \        \        V P                  4      4      p\        P                  ! ^
4      p\        \        VP                  V^4       \        P                  ! ^	4      P                  R4      p\        \        VP                  V^4       \        \        VP                  V\        ^^R4      4       . RO. RO.p\        \        VP                  V^4       \        P                  ! ^4      p\        \        VP                  V4       \        P                  ! R4      p\        \        VP                  V^4       R# )r6   Nr   r   r   )r   r   r  r  )r   r   r   r8   r9   r   r   r  r[  rE   sliceNotImplementedErrorr   r$  r1   rd   r  s   &  r%   test_shuffle_exceptions&TestRandomDist.test_shuffle_exceptions  s    7499-.iimia8iil""6*ia8ieAq$6GH)$)6>>3Bhhqki5ggfoia8r'   c                4   \        \        V P                  4      4      p\        P                  ! ^4      pRVP
                  n        \        P                  ! \        RR7      ;_uu_ 4        VP                  V4       RRR4       R#   + '       g   i     R# ; i)r   F	read-onlyr   N)r   r   r   r8   rc   flags	writeabler   r   rF   r  )r1   rd   r  s   &  r%   test_shuffle_not_writeable)TestRandomDist.test_shuffle_not_writeable'  sZ    7499-.HHQK!]]:[99NN1 :999s   *BB	c                t   \        \        V P                  4      4      p. ROpVP                  V4      p. ROp\	        W44       \        \        V P                  4      4      p\
        P                  ! . RO4      P                  pVP                  V4      p\	        V\
        P                  ! V4      P                  4       Rp\        \        VP                  V4       Rp\        \        VP                  V4       \        \        V P                  4      4      p^
p. ROpVP                  V4      p\	        W44       R# )rK   abcdg333333?NrR  rS  )
r   r   r  r   r   r   r_   r   rK   r  )
r   r   r   permutationr   r8   
atleast_2drM  r   r   )	r1   rd   rU  r  r  arr_2d	bad_x_strbad_x_floatinteger_vals	   &        r%   test_permutationTestRandomDist.test_permutation.  s    7499-..##E*06+7499-.=>@@##F+62==#9#;#;<	i!3!3Y?i!3!3[A7499-.0##K06+r'   c                   \         P                  ! ^4      P                  R4      p\         P                  ! . RO. RO. RO. RO.4      p\	        \        V P                  4      4      pVP                  V^R7      p\        WB4       \	        \        V P                  4      4      pVP                  VRR7      p\        WB4       R# rY  )	r8   r9   r[  r   r   r   r   r  r   )r1   r  r  rd   r  s   &    r%   test_permutation_custom_axis+TestRandomDist.test_permutation_custom_axisG  s    IIbM!!&)((,,,,. / 7499-.##AA#.6+7499-.##AB#/6+r'   c           
     v   \        \        V P                  4      4      p\        P                  ! ^
4      p\        \        VP                  V^4       \        P                  ! ^	4      P                  R4      p\        \        VP                  V^4       \        \        VP                  V\        ^^R4      4       R# )r6   Nrr  )r   r   r   r8   r9   r   r   r  r[  rE   rs  ru  s   &  r%   test_permutation_exceptions*TestRandomDist.test_permutation_exceptionsT  s    7499-.iimi!3!3S!<iil""6*i!3!3S!<i!3!3S%1d:KLr'   rb   zaxis, expectedNc                   \        \        V P                  4      4      p\        P                  ! ^4      P                  ^^4      P                  V4      pVP                  WRVR7       \        WS4       \        \        V P                  4      4      p\        P                  ! ^4      P                  ^^4      P                  V4      pVP                  WRR7      p\        Wc4       R# )r   r   outr   N)	r   r   r   r8   r9   r[  rB  permutedr   )r1   rb   r   r   rd   rv   ys   &&&&   r%   test_permutedTestRandomDist.test_permuted\  s     7499-.IIbM!!!Q'..u5!,1'7499-.IIbM!!!Q'..u5OOAO)1'r'   c                T   \        \        V P                  4      4      p\        P                  ! ^4      P                  ^^4      pVP                  4       pVR,          pVP                  V^VR7      p\        P                  ! . RO. RO.4      p\        WV4       WcR&   \        W24       R# )   r  N):NNN:NNr   )r   r   r   r  )r   r   rZ  r   )
r   r   r   r8   r9   r[  rb  r  r   r   )r1   rd   x0x1rv   r  r   s   &      r%   test_permuted_with_strides)TestRandomDist.test_permuted_with_stridesp  s    7499-.YYr]""1b)WWYvJOOAA1O-88\-/ 01'6
2"r'   c                H    \         P                  . 4      p\        V. 4       R # r"   )rd   r  r   )r1   r  s   & r%   test_permuted_empty"TestRandomDist.test_permuted_empty}  s    OOB1b!r'   outshapec                &   \         P                  ! . RO4      p\         P                  ! WP                  R7      p\        P
                  ! \        RR7      ;_uu_ 4        \        P                  W#R7       RRR4       R#   + '       g   i     R# ; i)rK   ra   z
same shaper   r  Nr   )	r8   r   rc   rb   r   r   rF   rd   r  )r1   r  r  r  s   &&  r%   "test_permuted_out_with_wrong_shape1TestRandomDist.test_permuted_out_with_wrong_shape  sP    HHYhhxww/]]:\::OOAO' ;:::s   A??B	c                0   \         P                  ! R\         P                  R7      p\         P                  ! R4      p\        P
                  ! \        RR7      ;_uu_ 4        \        P                  V^VR7       RRR4       R#   + '       g   i     R# ; i)r   ra   zCannot castr   r  N)r   r   )	r8   rc   rf  r$  r   r   rE   rd   r  )r1   r  rv   s   &  r%   !test_permuted_out_with_wrong_type0TestRandomDist.test_permuted_out_with_wrong_type  sU    hhvRXX.GGFO]]9M::OOAA3O/ ;:::s   !BB	c                   \         P                  ! R4      pRVP                  n        \        P
                  ! \        RR7      ;_uu_ 4        \        P                  V^VR7       RRR4       R#   + '       g   i     R# ; i)r_   Fry  r   r  N)r_   r   )	r8   rc   rz  r{  r   r   rF   rd   r  r   s   & r%   test_permuted_not_writeable*TestRandomDist.test_permuted_not_writeable  sN    HHV!]]:[99OOAA1O- :999s   A//B 	c                    \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R	7       R
# )r  r   rp   gW<$=g^
=g/:Ћ?gG!Gc>g'`2?gU?r  Nr  )r   r   r   betar8   r   r   r  s   &   r%   	test_betaTestRandomDist.test_beta  sc    7499-.R&1((#%:;#%:;#%:;=> 	"&2>r'   c                8   \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! ^*^).^*^0.^,^2..4      p\        W#4       \        \        V P                  4      4      pVP                  R R4      p^*p\        W#4       R# )gZd;Y@gv/?rp   Nr  )r   r   r   re   r8   r   r   r  s   &   r%   test_binomialTestRandomDist.test_binomial  s    7499-.$V<((RHHH& ' 	6+7499-.$/6+r'   c                    \        \        V P                  4      4      pVP                  ^2R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   rp   gmE~@@g
1ςC@grӳL@gm%xL@g<kQK@gtK@r  Nr  )r   r   r   	chisquarer8   r   r   r  s   &   r%   test_chisquareTestRandomDist.test_chisquare  sf    7499-.!!"6!2((-/?@-/?@-/?@B C 	"&2>r'   c                $   \        \        V P                  4      4      p\        P                  ! R R.4      pVP                  VRR7      p\        P                  ! RR.RR..RR.R	R
..RR.RR...4      p\        W4^R7       \        P                  ! RR.4      p\        \        VP
                  V4       \        \        V P                  4      4      p\        P                  ! R R.4      pVP                  V4      p\        W4R,          ^R7       R# )I<I@EZC@rp   g28\h?gɎG/?gAp?g|);?gLX?gfOh?g됷W?g(ސP?gz$Q?gmWt ?g搝K?g4hz?r  HzG?Nr  缉ؗҜr  )	r   r   r   r8   r   	dirichletr   r   rF   )r1   rd   alphar  r  	bad_alphas   &     r%   test_dirichletTestRandomDist.test_dirichlet  s   7499-..0DEF!!%f!5((03FG03EGI03FG.3FGI13EG.3FGI	J K 	"&2>HHgx01	j&"2"2I>7499-..0DEF!!%(!&$-Dr'   c                $   \         P                  ! R R.4      p\        \        P	                  V\         P
                  ! ^4      4      P                  R4       \        \        P	                  V\         P
                  ! ^4      4      P                  R4       \        \        P	                  V\         P
                  ! ^4      4      P                  R4       \        \        P	                  V^^.4      P                  R4       \        \        P	                  VR4      P                  R4       \        \        P	                  V\         P                  ! R4      4      P                  R4       \        \        \        P                  V\        ^4      4       R# )r  r  Nr   r   r   )
r8   r   r   rd   r  r   r   r   rE   r   r   s   & r%   test_dirichlet_size"TestRandomDist.test_dirichlet_size  s   HH*,@ABV%%a16<<fEV%%a16<<fEV%%a16<<fEV%%a!Q066	BV%%a066	BV%%a&)9:@@)Li!1!11eAh?r'   c           	        \         P                  ! R R.4      p\        \        \        P
                  V4       \        \        \        P
                  ^^..4       \        \        \        P
                  ^.^..4       \        \        \        P
                  ^.^..^.^...4       \        \        \        P
                  \         P                  ! ^^.^^..4      4       R# )r  Nr  )r8   r   r   rF   rd   r  )r1   r  s   & r%   test_dirichlet_bad_alpha'TestRandomDist.test_dirichlet_bad_alpha  s    '8,-j&"2"2E: 	j&"2"2aVH=j&"2"2aS1#J?j&"2"2qcA3Z1#s4LMj&"2"2BHHq!fq!f=M4NOr'   c                J   \         P                  ! . RO4      pVR,          p\        \        V P                  4      4      pVP                  VRR7      p\        \        V P                  4      4      pVP                  \         P                  ! V4      RR7      p\        WE4       R# )r  r#  rp   N)r  g      r  r  )r8   r   r   r   r   r  r   r   )r1   r  r  rd   r   r   s   &     r%   #test_dirichlet_alpha_non_contiguous2TestRandomDist.test_dirichlet_alpha_non_contiguous  s    HHGH#7499-.%%e&%9
7499-.!!""6"6u"='- " /!*5r'   c                   R pV\         P                  ! RR.4      ,          p\        \        V P                  4      4      pVP                  VRR7      p\         P                  ! RR.RR..RR.RR..RR.RR...4      p\        WE^R7       R# )r         ?r   rp   r   r  Nr  )r8   r   r   r   r   r  r   )r1   epsr  rd   r  r   s   &     r%   test_dirichlet_small_alpha)TestRandomDist.test_dirichlet_small_alpha  s    bhhF|,,7499-.!!%f!588"X"X"X"X"X"X
  	"&B?r'   zcrashes with low memoryreasonzZthe 458 MiB sample array may not fit in a 32-bit address space fragmented by earlier testsc                   \         P                  ! . RO4      pWP                  4       ,          p\        \	        V P
                  4      4      pVP                  VRR7      pVP                  ^ R7      p\        WRRR7       R# ){Gz?ro   rp   r   r   )r   N)r  {Gz?Q?)	r8   r   r   r   r   r   r  rr   r   )r1   r  
exact_meanrd   r   rw   s   &     r%   %test_dirichlet_moderately_small_alpha4TestRandomDist.test_dirichlet_moderately_small_alpha  sc     +,YY[(
7499-.!!%h!7kkqk)d;r'   r  r   c                    \         P                  ! V4      p\        P                  V4      p\	        W!^ 8H  ,          R4       R# )r   r   N)r8   r   rd   r  r   )r1   r  r  s   && r%   &test_dirichlet_multiple_zeros_in_alpha5TestRandomDist.test_dirichlet_multiple_zeros_in_alpha  s1     U#Qz]C(r'   c                    \        \        V P                  4      4      pVP                  R R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )g8EGr?rp   gvM?g?g#c?gQ:N?gAP?gE_9@r  Nr  )r   r   r   exponentialr8   r   r   r  s   &   r%   test_exponentialTestRandomDist.test_exponential  sf    7499-.##F#8((.0AB.0AB.0@BD E 	"&2>r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# r   scaleN       )r   rd   r  r   rF   rG   s   &r%   test_exponential_0!TestRandomDist.test_exponential_0  s,    V''a'0!4j&"4"4C@r'   c                    \        \        V P                  4      4      pVP                  ^^MR
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   rp   g}(Ҍ?gi?g=r?g]hDA?gjӨ?g8k*u?r  Nr  )r   r   r   fr8   r   r   r  s   &   r%   test_fTestRandomDist.test_f#  se    7499-."bv.((.0AB.0@B.0ABD E 	"&2>r'   c                    \        \        V P                  4      4      pVP                  ^^R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   rp   g,שn'@gt@g<e2@g1a3@g3r
y-2@gs1-2@r  Nr  )r   r   r   gammar8   r   r   r  s   &   r%   
test_gammaTestRandomDist.test_gamma+  sd    7499-.a0((.B.0AB.0ABD E 	"&2>r'   c                    \        \        P                  ^ ^ R7      ^ 4       \        \        \        P                  RRR7       R# )r   )r   r  Nr  )r   rd   r  r   rF   rG   s   &r%   test_gamma_0TestRandomDist.test_gamma_03  s+    V\\\3Q7j&,,cEr'   c                    \        \        V P                  4      4      pVP                  R RR7      p\        P
                  ! ^^.^^.^^..4      p\        W#4       R# )_c97ݚ?rp   Nr  )r   r   r   	geometricr8   r   r   r  s   &   r%   test_geometricTestRandomDist.test_geometric7  s[    7499-.!!*6!:((QGGH& ' 	6+r'   c                Z   \        \        \        P                  R 4       \        \        \        P                  R .^
,          4       \        \        \        P                  R4       \        \        \        P                  R.^
,          4       \        P
                  ! RR7      ;_uu_ 4        \        \        \        P                  \        P                  4       \        \        \        P                  \        P                  .^
,          4       RRR4       R#   + '       g   i     R# ; i)r   ignoreinvalidNr   )r   rF   rd   r  r8   errstaterk   rG   s   &r%   test_geometric_exceptions(TestRandomDist.test_geometric_exceptions?  s    j&"2"2C8j&"2"2SEBJ?j&"2"2D9j&"2"2TFRK@[[***f&6&6?*f&6&62F +***s   ,A#DD*	c                    \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! RR.RR	.R
R..4      p\        W#^R7       R# )r         @locr  rq   gA7G@gei@r  Nr  g1Fiҿg_Cg0cPg`(_տ)r   r   r   gumbelr8   r   r   r  s   &   r%   test_gumbelTestRandomDist.test_gumbelH  se    7499-.:SvF((/1CD/1CD/1CDF G 	"&2>r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# r  )r   rd   r  r   rF   rG   s   &r%   test_gumbel_0TestRandomDist.test_gumbel_0P  '    V]]]+Q/j&--s;r'   c                   \        \        V P                  4      4      pVP                  R R^RR7      p\        P
                  ! ^	^	.^	^	.^
^	..4      p\        W#4       VP                  ^^ ^^R7      p\        P
                  ! . RO4      p\        W#4       VP                  ^^ ^^R7      p\        P
                  ! . RO4      p\        W#4       VP                  ^ ^^^R7      p\        P
                  ! . RO4      p\        W#4       VP                  ^ ^^^R7      p\        P
                  ! . RO4      p\        W#4       R# )g333333$@g      @rp   Nr  )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   hypergeometricr8   r   r   r  s   &   r%   test_hypergeometric"TestRandomDist.test_hypergeometricT  s    7499-.&&tS"6&B((aGGG% & 	6+ &&q!QQ&7((<(6+&&r1bq&9((+,6+ &&q!QQ&7((<(6+&&q"bq&9((<(6+r'   c                    \        \        V P                  4      4      pVP                  R RR	R7      p\        P
                  ! R
R.RR.RR..4      p\        W#^R7       R# )r  r  r  ga@bDA"?g>K?g(?g<?r  Nr  g6@	g*[r{)r   r   r   laplacer8   r   r   r  s   &   r%   test_laplaceTestRandomDist.test_laplacen  se    7499-.JcG((/2CD/2CD/2CDF G 	"&2>r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# r  )r   rd   r
  r   rF   rG   s   &r%   test_laplace_0TestRandomDist.test_laplace_0v  s'    V^^!^,a0j&..<r'   c                    \        \        V P                  4      4      pVP                  R RR	R7      p\        P
                  ! R
R.RR.RR..4      p\        W#^R7       R# )r  r  r  gHʊg$>?gQh@g%?n?gĉ8|?r  Nr  gbZg>&)r   r   r   logisticr8   r   r   r  s   &   r%   test_logisticTestRandomDist.test_logisticz  se    7499-.ZsH((/2CD.2CD/2CDF G 	"&2>r'   c                    \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R	7       R
# )r  r  )rr   ry   rq   gܒx?gk*+@g<Ҿ?g
@g5a@g%jz(@r  Nr  )r   r   r   	lognormalr8   r   r   r  s   &   r%   test_lognormalTestRandomDist.test_lognormal  sf    7499-.!!z6!J((o/?@-@-/?@B C 	"&2>r'   c                    \        \        P                  ^ R7      ^4       \        \        \        P                  RR7       R# )r   )ry   Nr  )r   rd   r  r   rF   rG   s   &r%   test_lognormal_0TestRandomDist.test_lognormal_0  s,    V%%A%.2j&"2"2#>r'   c                    \        \        V P                  4      4      pVP                  R RR7      p\        P
                  ! ^^.^^.^^..4      p\        W#4       R# )gƀ@?)rf   rq   Nr  )r   r   r   	logseriesr8   r   r   r  s   &   r%   test_logseriesTestRandomDist.test_logseries  s[    7499-.!!JV!<((RHGF$ % 	6+r'   c                B    \        \        V P                  4      4      pR # r"   )r   r   r   r2  s   & r%   test_logseries_zero"TestRandomDist.test_logseries_zero  s    7499-.r'   valuer  g      @c           
        \        \        V P                  4      4      p\        P                  ! R R7      ;_uu_ 4        \
        P                  ! \        4      ;_uu_ 4        VP                  V4       RRR4       \
        P                  ! \        4      ;_uu_ 4        VP                  \        P                  ! V.^
,          4      4       RRR4       \
        P                  ! \        4      ;_uu_ 4        VP                  \        P                  ! V.^
,          4      R,          4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L@; i  + '       g   i     R# ; i)r  r  Nr#  )
r   r   r   r8   r  r   r   rF   r  r   )r1   r"  rd   s   && r%   test_logseries_exceptions(TestRandomDist.test_logseries_exceptions  s    7499-.[[**z**  ' +z**  5'B,!78 + z**  5'B,!7!<= + +***** +* +**sS   #E5!D<	3*E5.E	*E555E"	*E5<EE5EE5"E2-E55F	c                    \        \        V P                  4      4      pV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   rp   NUUUUUU?r  )rK   r   rK   r  r   r   )r   r_   r  r_   r   r_   )r   r   r_   r  r   rK   )r   r   r   r_   r   r   )r  r   rK   r   r   r_   )r   r   r   rK   r_   r   )r   r   r   r   r8   r   r   r  s   &   r%   test_multinomialTestRandomDist.test_multinomial  sp    7499-.##B16#B((//1//1//1	2 3 	6+r'   zfp errors don't work in wasmr   c           	        \        \        V P                  4      4      pRp^^ .^ ^..pRpVP                  W4WQR7      p\        P
                  ! RR.RR..RR.RR..RR	.R
R...4      p\        Wg^R7       VP                  W4VR7      p\        P
                  ! RR.4      p\        Wg^R7       ^ ^ .p^^.^^..p\        \        VP                  W4RR7       ^^.^^..p\        P                  ! \        VP                  W44       \        P                  ! \        VP                  W4RR7       \        \        VP                  W4RR7       \        VP                  W4RR7       \        \        VP                  W4RR7       \        \        VP                  W4RRR7       ^^.^^..pVR9   d2   VP                  W4RVR7      p\        VR ,          VR!,          ^R7       M\        \        VP                  W4RR7       \        P
                  ! ^R.R^..\        P                  R7      p\        P                   ! 4       ;_uu_ 4        \        P"                  ! R4       VP                  W4VR7       RRR4       \        P$                  ! ^4      p	\        P&                  ! ^4      p\        \        VP                  W4RR7       \        \        VP                  \        P$                  ! R"4      V4       \        \        VP                  V	\        P(                  ! R4      4       \        \        VP                  V	\        P&                  ! ^4      4       R#   + '       g   i     L; i)#r  r   g$&@g!$@gDo?g\&@g,R{?g
f!@g?ժ?gT^o#@g`R?gP'@r  gl?g$("@raise)check_valideighcholeskyr  )r,  r   r   r  ra   errorNother)r  r6   r  gtg&بO=)svdr-  ).r   ).rK   )r_   rK   rK   )r   r   r   multivariate_normalr8   r   r   r   rF   r   warnsRuntimeWarningr   r   r   warningscatch_warningssimplefilterrc   eyer   )
r1   r   rd   rr   covrq   r  r  r  mus
   &&        r%   test_multivariate_normal'TestRandomDist.test_multivariate_normal  s    7499-.1v1v++Dt+K((03DF13EFH13EF14EFH14EF13EFH	I J 	"&2> ++Df+E((-/@AB!&2> 1v1v1vj&"<"<d")	+
 1v1v^V%?%?K^V%?%?"	$k6#=#=t'	) 	655t'/	1 	j&"<"<d")	+j&"<"<d")&	: 1v1v_$008> 1 @G%gfowv./1 +v'A'A4!+- hhC3(+2::>$$&&!!'*&&t&@ ' XXa[ffQij&"<"<d")	+j&"<"<hhy)3	0j&"<"<"((6*	,j&"<"<"&&)	% '&s   *MM 	z	mean, covy                c                    \        \        V P                  4      4      p\        P                  ! \
        R R7      ;_uu_ 4        VP                  W4       RRR4       R#   + '       g   i     R# ; i)zmust not be complexr   N)r   r   r   r   r   rE   r2  )r1   rr   r9  rd   s   &&& r%   )test_multivariate_normal_disallow_complex8TestRandomDist.test_multivariate_normal_disallow_complex  sE    7499-.]]9,ABB&&t1 CBBBs   AA0	c                *   \        \        V P                  4      4      pR p\        P                  ! ^^.4      p\        P                  ! ^^.^^..4      pVP                  WEV3VR7      pWd,
          pVP                  V,          V^,
          ,          pR# )r+   r   N)r   r   r   r8   r   r2  rM  )	r1   r   rd   n_srr   r9  r2   s_centercov_emps	   &&       r%   $test_multivariate_normal_basic_stats3TestRandomDist.test_multivariate_normal_basic_stats  s~    7499-.xxAhhAA'(&&tvf&M8::(S1W5r'   c                    \        \        V P                  4      4      pVP                  ^dRR
R7      p\        P
                  ! RR.RR.RR..4      p\        W#4       R	# )r   g|Pk?)rt   rf   rq   i  i  i  i  iX  i  Nr  )r   r   r   r#  r8   r   r   r  s   &   r%   r%  %TestRandomDist.test_negative_binomial  s]    7499-.))C6)G((S#J #J #J( ) 	6+r'   c           	     F   \         P                  ! R R7      ;_uu_ 4        \        \        \        P
                  ^d\         P                  4       \        \        \        P
                  ^d\         P                  .^
,          4       RRR4       R#   + '       g   i     R# ; i)r  r  N)r8   r  r   rF   rd   r#  rk   rG   s   &r%   !test_negative_binomial_exceptions0TestRandomDist.test_negative_binomial_exceptions  sY    [[***f&>&>RVVL*f&>&>66(R-) +***s   A%BB 	c                    \        \        4      ;_uu_ 4        \        P                  ^^ 4      pRRR4       R#   + '       g   i     R# ; irj   )r   rF   rd   r#  r   s   & r%   #test_negative_binomial_p0_exception2TestRandomDist.test_negative_binomial_p0_exception  s.    :&&((A.A '&&&s	   9A
	c                   \         P                  ! R R7      ;_uu_ 4        \        \        \        P
                  RR4       \        \        \        P
                  R.R.4       RRR4       R#   + '       g   i     R# ; i)r  r  r  Nr  )r8   r  r   rF   rd   r#  rG   s   &r%   .test_negative_binomial_invalid_p_n_combination=TestRandomDist.test_negative_binomial_invalid_p_n_combination"  sN     [[***f&>&>sK*f&>&>#O +***s   AA--A>	c                   \        \        V P                  4      4      pVP                  ^^RR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       VP                  R	R
RR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       \        \        V P                  4      4      pVP                  ^^ RR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R# )r   )dfnoncrq   gs؀3J?gugو/@gNJm+@gA}-4@gq=&@gjhn@r  rA   r   gZօDN?gE!X&?gt%T?gQ)V?g5Zlf?gΎ{?gmK?gZ?g%yKY@g@W@gĈ{>@g&BB=@Nr  )r   r   r   noncentral_chisquarer8   r   r   r  s   &   r%   test_noncentral_chisquare(TestRandomDist.test_noncentral_chisquare)  s!   7499-.,,,G((.0AB.0AB-1ABD E 	"&2>,,&,I((13GH13GH13GHJ K 	"&2>7499-.,,,G((-/?@-/?@-/?@B C 	"&2>r'   c                    \        \        V P                  4      4      pVP                  ^^^R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   )dfnumdfdenrS  rq   gHP
?gn?g%f?gch?gzƎ?g]?:?r  Nr  )r   r   r   noncentral_fr8   r   r   r  s   &   r%   test_noncentral_f TestRandomDist.test_noncentral_f>  sm    7499-.$$1AA*0 % 2((^/?@-@-/?@B C 	"&2>r'   c                    \        \        V P                  4      4      pVP                  ^^\        P
                  R7      pR# )r   )rX  rY  rS  N)r   r   r   rZ  r8   rk   r1   rd   r  s   &  r%   test_noncentral_f_nan$TestRandomDist.test_noncentral_f_nanG  s0    7499-.$$1ABFF$Cr'   c                    \        \        V P                  4      4      pVP                  R RR	R7      p\        P
                  ! R
R.RR.RR..4      p\        W#^R7       R# )r  r  r  g\P@g0aj?gi%?gog@r  Nr  g?`xg/7u )r   r   r   normalr8   r   r   r  s   &   r%   test_normalTestRandomDist.test_normalL  se    7499-.:SvF((/2CD/2CD/2CDF G 	"&2>r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# r  )r   rd   rb  r   rF   rG   s   &r%   test_normal_0TestRandomDist.test_normal_0T  r  r'   c                    \        \        V P                  4      4      pVP                  R R
R7      p\        P
                  ! RR.RR.RR..4      p\        P                  P                  W#^R7       R	# )r  r  rq   gá?gƫh@gi`>?g0"&Agc@g=fA)nulpNr  )r   r   r   paretor8   r   testingassert_array_almost_equal_nulpr  s   &   r%   test_paretoTestRandomDist.test_paretoX  sp    7499-.&9((35KL35KL35KLN O 	

11&1Kr'   c                    \        \        V P                  4      4      pVP                  R RR7      p\        P
                  ! ^ ^ .^ ^ .^ ^ ..4      p\        W#4       R# )r  )lamrq   Nr  )r   r   r   poissonr8   r   r   r  s   &   r%   test_poissonTestRandomDist.test_poissonf  sX    7499-.JV<((QFFF$ % 	6+r'   c                   \         P                  ! R 4      P                  pRp\        \        \
        P                  V4       \        \        \
        P                  V.^
,          4       \        \        \
        P                  V4       \        \        \
        P                  V.^
,          4       \         P                  ! RR7      ;_uu_ 4        \        \        \
        P                  \         P                  4       \        \        \
        P                  \         P                  .^
,          4       RRR4       R#   + '       g   i     R# ; i)r   r  r  NrC   )	r8   r   r   r   rF   rd   rr  r  rk   )r1   lambiglamnegs   &  r%   test_poisson_exceptions&TestRandomDist.test_poisson_exceptionsn  s    '"&&j&..&9j&..6(R-@j&..&9j&..6(R-@[[***fnnbff=*fnnrvvhmD +***s   A#D;;E	c                    \        \        V P                  4      4      pVP                  R R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r  ri  gZ >g?gÄ(=g҇?gŚE?gߢH?r  Nr  )r   r   r   powerr8   r   r   r  s   &   r%   
test_powerTestRandomDist.test_powery  sc    7499-.
8((24IJ24IJ24IJL M 	"&2>r'   c                    \        \        V P                  4      4      pVP                  ^
R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r6   )r  rq   gry@gtQP0@gAI_@g@u81@g	G0@g"wc5@r  Nr  )r   r   r   rayleighr8   r   r   r  s   &   r%   test_rayleighTestRandomDist.test_rayleigh  sc    7499-.r7((-/@A-/@A.0ABD E 	"&2>r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# r  )r   rd   r  r   rF   rG   s   &r%   test_rayleigh_0TestRandomDist.test_rayleigh_0  s'    V__1_-q1j&//=r'   c                    \        \        V P                  4      4      pVP                  RR7      p\        P
                  ! RR.RR	.R
R..4      p\        W#^R7       R# )r   rp   g\?gFA?r  Nr  gH1gW|3
gLeg5P	)r   r   r   standard_cauchyr8   r   r   r  s   &   r%   test_standard_cauchy#TestRandomDist.test_standard_cauchy  sd    7499-.''V'4((/1CD/1CD/2CDF G 	"&2>r'   c                    \        \        V P                  4      4      pVP                  RRR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R	7       R
# )r   invr   ga\5?gr7k?g8PC*?g5$[?gW3T?g*?r  Nr  )r   r   r   standard_exponentialr8   r   r   r  s   &   r%   test_standard_exponential(TestRandomDist.test_standard_exponential  sf    7499-.,,&,G((.0AB.0AB.0ABD E 	"&2>r'   c                b    \        \        \        P                  \        P
                  R 7       R# ra   N)r   rE   rd   r  r8   rf  rG   s   &r%   $test_standard_exponential_type_error3TestRandomDist.test_standard_exponential_type_error  s    i!<!<BHHMr'   c                    \        \        V P                  4      4      pVP                  ^R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   r   rq   gΈ̏&?gTϿ?g1n21@gDb<z@gBv@gc^@r  Nr  r   r   r   standard_gammar8   r   r   r  s   &   r%   test_standard_gamma"TestRandomDist.test_standard_gamma  sf    7499-.&&QV&<((-/?@+/?@-/?@B C 	"&2>r'   c                    \        \        V P                  4      4      pVP                  ^\        P
                  R7      pRp\        W#^R7       R# )r   ra   g   d@r  N)r   r   r   r  r8   r   r   r  s   &   r%   !test_standard_gammma_scalar_float0TestRandomDist.test_standard_gammma_scalar_float  s=    7499-.&&q

&;$!&1=r'   c                    \        \        V P                  4      4      pVP                  ^R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r   r  gf&?gMO?g1@g):@g@g;i@r  Nr  r  r  s   &   r%   test_standard_gamma_float(TestRandomDist.test_standard_gamma_float  s`    7499-.&&QV&<((Wf-$f-$g.0 1 	"&1=r'   c                   \         P                  ! R\         P                  R7      p\        \	        V P
                  4      4      pVP                  RV\         P                  R7       \         P                  ! RR.RR.RR	..\         P                  R7      p\        W^R
7       \        \	        V P
                  4      4      pVP                  RVR\         P                  R7       \        W^R
7       R# )r   ra         $@r  rb   gM»L$@ga {@gN]"@gPS")@g_+@gmB@r  r  rq   rb   Nr  )	r8   rc   r   r   r   r   r  r   r   )r1   r  rd   r  s   &   r%   test_standard_gammma_float_out-TestRandomDist.test_standard_gammma_float_out  s    &

37499-.dbjjA((X0&1&13:<**F 	"&1=7499-.dV2::N!&1=r'   c                H    \        \        \        P                  R RR7       R# )r  rf  ra   N)r   rE   rd   r  rG   s   &r%    test_standard_gamma_unknown_type/TestRandomDist.test_standard_gamma_unknown_type  s    i!6!6#	%r'   c                    \         P                  ! ^
4      p\        \        \        P
                  R^VR7       \        \        \        P
                  RRVR7       R# )r6   r  )rq   r  N)r6   rK   )r8   rc   r   rF   rd   r  )r1   r  s   & r%   test_out_size_mismatch%TestRandomDist.test_out_size_mismatch  sA    hhrlj&"7"7B	j&"7"7G	r'   c                    \        \        P                  ^ R7      ^ 4       \        \        \        P                  RR7       R# )r   )r   Nr  )r   rd   r  r   rF   rG   s   &r%   test_standard_gamma_0$TestRandomDist.test_standard_gamma_0  s,    V***3Q7j&"7"7sCr'   c                    \        \        V P                  4      4      pVP                  RR7      p\        P
                  ! R	R.R
R.RR..4      p\        W#^R7       R# )r   rp   g? ?gz\?gc`+?gT}?r  Nr  g
bYgGH{L)r   r   r   r  r8   r   r   r  s   &   r%   test_standard_normal#TestRandomDist.test_standard_normal  sd    7499-.''V'4((/2BD/2CD/2CDF G 	"&2>r'   c                b    \        \        \        P                  \        P
                  R 7       R# r  )r   rE   rd   r  r8   rf  rG   s   &r%   %test_standard_normal_unsupported_type4TestRandomDist.test_standard_normal_unsupported_type  s    i!7!7rxxHr'   c                    \        \        V P                  4      4      pVP                  ^
RR7      p\        P
                  ! RR.RR	.RR
..4      p\        W#^R7       R# )r6   )rR  rq   g	|ڙ(?g-?gMc?r  Nr  gV1g Nhڿg!uLM )r   r   r   
standard_tr8   r   r   r  s   &   r%   test_standard_tTestRandomDist.test_standard_t  sf    7499-.""bv"6((/2BC/1CD/1CDF G 	"&2>r'   c                    \        \        V P                  4      4      pV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rightrq   gEpw@g4DC+@gŋ@g/,@gkuR*@gHNPcr+@r  Nr  )r   r   r   
triangularr8   r   r   r  s   &   r%   test_triangularTestRandomDist.test_triangular  so    7499-.""5(. # 0((.0@B.0AB.0ABD E 	"&2>r'   c                    \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R	7       R
# )Gz?gGz%@)r  r  rq   gm2@gJaD@g: @g
Q @g@T{e@gb@r  Nr  r   r   r   uniformr8   r   r   r  s   &   r%   test_uniformTestRandomDist.test_uniform  se    7499-.Du6B((-0AB.0AB.0ABD E 	"&2>r'   c                :   \         P                  ! R 4      P                  p\         P                  ! R 4      P                  p\        P
                  p\        \        V\         P                  ) ^ 4       \        \        V^ \         P                  4       \        \        W1V4       \        \        V\         P                  ) .^ .4       \        \        V^ .\         P                  .4       \        P                  \         P                  ! V^4      VR,          R7       R# )r   g ؅W4vC)r  r  N)
r8   finfor4  r   rd   r  r   OverflowErrorinf	nextafter)r1   fminfmaxfuncs   &   r%   test_uniform_range_bounds(TestRandomDist.test_uniform_range_bounds  s    xx $$xx $$~~mTBFF7A6mT1bff5mT6mTRVVG9qc:mTA39
 	2<<a0td{Cr'   c                F   \         P                  pV! R R 4      p\        VR 4       V! R\        P                  .R\        P                  .4      p\        VR\        P                  .4       V! R.R..RR.4      p\        VR\        P
                  ! R4      ,           4       R# )      ?r   g
ףp= @Nr   )rd   r  r   r8   pirc   )r1   r  results   &  r%   test_uniform_zero_range&TestRandomDist.test_uniform_zero_range  s    ~~c3$sBEElS"%%L1bee-y7),w.@A"((6*: :;r'   c                    \         P                  p\        \        V^^4       \        \        V^^.^^.4       \        \        V^ ^.^^..^4       R# )r_   N)rd   r  r   rF   )r1   r  s   & r%   test_uniform_neg_range%TestRandomDist.test_uniform_neg_range  sJ    ~~j$1-j$!Q!Q8j$1a&1a&)91=r'   c                    ! R  R\         P                  4      p\         P                  ! R4      P                  V4      p\	        \
        \        P                  VV4        ! R R\         P                  4      p\         P                  ! ^4      P                  V4      p\	        \
        \        P                  V^^4       R# )c                   &   a  ] tR tRt o R tRtV tR# )GTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloati  c                    \         hr"   rE   rG   s   &r%   	__float__QTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloat.__float__      r'   rS   N)rT   rU   rV   rW   r  rX   rY   rZ   s   @r%   ThrowingFloatr            r'   r  r  c                   &   a  ] tR tRt o R tRtV tR# )ITestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingIntegeri$  c                    \         hr"   r  rG   s   &r%   __int__QTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingInteger.__int__%  r  r'   rS   N)rT   rU   rV   rW   r  rX   rY   rZ   s   @r%   ThrowingIntegerr  $  r  r'   r  N)	r8   ndarrayr   rv  r   rE   rd   r  r  )r1   r  throwing_floatr  throwing_ints   &    r%   !test_scalar_exception_propagation0TestRandomDist.test_scalar_exception_propagation  s    	 BJJ 	  #++M:i$	&	 bjj 	  xx{''8i!6!6aKr'   c                    \        \        V P                  4      4      pVP                  R RR
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r  p=
ף?r:  kapparq   gLA?gxyw@gzVR?gpE ?gv @r  Nr  g8&Aп)r   r   r   vonmisesr8   r   r   r  s   &   r%   test_vonmisesTestRandomDist.test_vonmises+  se    7499-.D6B((/2CD/2CD/2CDF G 	"&2>r'   c                    \        \        V P                  4      4      pVP                  R RRR7      p\	        \
        P                  ! V4      P                  4       4       R# )r   gg5_PG>r  Ni@B )r   r   r   r  r   r8   isfiniter   r1   rd   rs   &  r%   test_vonmises_small"TestRandomDist.test_vonmises_small3  sB    7499-.OOreO<A""$%r'   c                    \        \        V P                  4      4      pVP                  R \        P
                  R7      p\        \        P                  ! V4      4       R# )r   )r:  r  N)r   r   r   r  r8   rk   r   isnanr  s   &  r%   test_vonmises_nan TestRandomDist.test_vonmises_nan9  s;    7499-.OOrO0r'   r  g     @  4&kCc                0   \        \        V P                  4      4      p\        VP                  4      pVP                  P
                  pVP                  ^ V^
R7      pWBP                  n        VP                  ^ V^
R7      pVR8  d   \        WV4       R# R# )r   rp   g    .AN)r   r   r   r   r  r  r  r   )r1   r  rd   rsr  random_state_valsgen_valss   &&     r%   test_vonmises_large_kappa(TestRandomDist.test_vonmises_large_kappa>  s    7499-.--.$$**KK5rK:%*"??1e"?53;-8 r'   r:  g	@c                &   \        \        V P                  4      4      pVP                  W^24      p\	        \
        P                  ! V\
        P                  ) 8  4      ;'       d(    \
        P                  ! V\
        P                  8*  4      4       R# )r   N)r   r   r   r  r   r8   r   r  )r1   r:  r  rd   r  s   &&&  r%   test_vonmises_large_kappa_range.TestRandomDist.test_vonmises_large_kappa_rangeL  s[     7499-.OOBr*qBEE6z"99rvva255j'9:r'   c                    \        \        V P                  4      4      pVP                  R RRR7      p\        P
                  ! RR.RR.RR..4      p\        W#^R	7       R
# )r  r  rr   r  rq   g*س2?gt	@g;S@g\ F@gxF @g6b?r  Nr  )r   r   r   waldr8   r   r   r  s   &   r%   	test_waldTestRandomDist.test_waldS  sd    7499-.$d@((-@-/?@-/?@B C 	"&2>r'   c                    \        \        V P                  4      4      pVP                  R RRR7      p\	        \
        P                  ! VR8  4      4       R# )g    eAg      @r+   r  r   N)r   r   r   r	  r   r8   r   )r1   rd   r  s   &  r%   test_wald_nonnegative$TestRandomDist.test_wald_nonnegative[  s>    7499-.++3d+>w#~&'r'   c                    \        \        V P                  4      4      pVP                  R R
R7      p\        P
                  ! RR.RR.RR..4      p\        W#^R7       R	# )r  ri  gnJZ?g*/F?gs(RY?g]'%?g,qD?g8 ?r  Nr  )r   r   r   weibullr8   r   r   r  s   &   r%   test_weibullTestRandomDist.test_weibull`  sc    7499-.$V4((.0AB.0AB.0ABD E 	"&2>r'   c                    \        \        V P                  4      4      p\        VP	                  ^ ^R7      \
        P                  ! ^4      4       \        \        VP                  RR7       R# )r   ri  )r  Nr  )	r   r   r   r   r  r8   rc   r   rF   r2  s   & r%   test_weibull_0TestRandomDist.test_weibull_0h  sD    7499-.V^^ab^1288B<@j&..C8r'   c                    \        \        V P                  4      4      pVP                  R RR7      p\        P
                  ! ^^.^
R.R^..4      p\        W#4       R# )r  ri  ic  ib  Nr  )r   r   r   zipfr8   r   r   r  s   &   r%   	test_zipfTestRandomDist.test_zipfm  sX    7499-.t&1((qAJ #J AJ( ) 	6+r'   rS   )r   r   r   r   r6   rZ  )r  r   r_   r   rK   r  )r  rK   r_   r   r6   rZ  )r   r   r  r   r   r   )r   r   r   r   r_   rK   )rZ  r   r6   r  r  r   r  )r   r   r   r  )rA   r   r   r   )rK   r   r   r   r  r   r   r   )g{Gz?r  r   r   )gh㈵>r   r   r   )gMb`?gQ?r   r   r  r   r   r   r   rC   )r1  r-  r.  y      ?      ?g      g)r   gư>rK   g     @@r  )rT   rU   rV   rW   r   r  r  r  r  r  r  r  r   r  r	  r8   r   r   float64rl  r  r  r  r  r  r  r	  r  r  r  r  r   r%  r(  r.  r3  r7  rV  r\  r_  re  ro  rv  r|  r  r  r  r`   r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  thread_unsafeskipifr	   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  rk   r$  r(  r
   r;  r>  rD  r%  rI  rL  rO  rU  r[  r_  rc  rf  rn  rs  rx  r|  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
  r  r  r  r  rX   rY   rZ   s   @r%   r  r    sd     D,,,
&
E>> [[4!zz2995!zz299578/8/?,,,,,,,2$,9\9
/
($(&06,0#L9,2,M [[WsFm4[[-#RXX/C/C/E &F G "((,@,@,B #C D "((,@,@,B #C D	EF
(F 5
(#" [[Z&!5( 6(0.?,?E&
@	P6@ [[[[&?@[[;  <<	< A < [[			#			,
		
)
)
?A??F,G?<,4?=???,( [[Wr||B';R&LM
> N
>	, [[(FG[[X'BCF% D HF%P [[[QC6(+<tqcUm*LM2 N2
 [[X'BC
3 D
3,)/
P?*? 
?<L,	E??>??N?>>>%D?I???D <>L,?&
 [[WsDk29 39 [[TC"%%ruuc#BC[[W&@A; B D;
?(
?9
, ,r'   r  c            	         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#]$PJ                  PM                  R"^
]'PP                  ! ^
^
.4      ]'PP                  ! ^
..^
...4      .4      R# 4       t)R$ t*R% t+R&t,V t-R'# )(TestBroadcastiv  i[c                   \        \        V P                  4      4      p^ .p^.pVP                  p\        P
                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          V4      p\        We^R7       \        \        V P                  4      4      pVP                  W#^,          4      p\        We^R7       R# )r   r  N)g4
7^?gF]
"?g .?r  )r1   rd   r  r  r  r  r  s   &      r%   r  TestBroadcast.test_uniform{  s    7499-.cs..((QR7499-.a.!&2>7499-.AX.!&2>r'   c                   ^ .p^.pR.p\        \        V P                  4      4      p\        P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          V4      p\        We^R7       \        \        VP
                  V^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        We^R7       \        \        WqV^,          4       R# )r   r  NrC   )gw-Dؿgn0_x?gʊ;<.?)	r   r   r   r8   r   rb  r   r   rF   )r1   r  r  	bad_scalerd   r  r  rb  s   &       r%   rc  TestBroadcast.test_normal  s    cD	7499-.((QR7499-.sQw.!&2>j&--q)D7499-.QY'!&2>j&y1}=r'   c                   ^.p^.pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        W^R7       \        \        Ws^,          V4       \        \        Wq^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p\        W^R7       R# )rK   r  NrC   rL   )gf8?g%eo?g$q??)	r8   r   r   r   r   r  r   r   rF   )	r1   r  r  bad_abad_br  rd   r  r  s	   &        r%   r  TestBroadcast.test_beta  s    CC((QR7499-.{{a!eQ!&2>j$	15j$Au57499-.QA&!&2>r'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# rK   r  NrC   )g`ʄ?gE]?g?)	r8   r   r   r   r   r  r   r   rF   r1   r  r"  r  rd   r  s   &     r%   r  TestBroadcast.test_exponential  sf    D	((PQ7499-.##EAI.!&2>j&"4"4i!mDr'   c                    ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          4      p\        Wc^R7       \        \        WR^,          4       R# r)  )	r8   r   r   r   r   r  r   r   rF   )r1   r   	bad_shaper  rd   	std_gammar  s   &      r%   r  !TestBroadcast.test_standard_gamma  sc    D	((PQ7499-.))	519%!&2>j)];r'   c                (   ^.p^.pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        W^R7       \        \        Ws^,          V4       \        \        Wq^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        W^R7       \        \        WsV^,          4       \        \        WqV^,          4       R# )rK   r  NrC   rL   )g3ʄ?gJE]?g?)	r8   r   r   r   r   r  r   r   rF   )	r1   r   r  r-  r"  r  rd   r  r  s	   &        r%   r  TestBroadcast.test_gamma  s    D	D	((PQ7499-.uqy%(!&2>j%Q>j%I>7499-.uai(!&2>j%EAI>j%	A>r'   c                (   ^.p^.pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        W^R7       \        \        Ws^,          V4       \        \        Wq^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        W^R7       \        \        WsV^,          4       \        \        WqV^,          4       R# )rK   r  NrC   rL   )gM3B?gybi@g0?)	r8   r   r   r   r   r  r   r   rF   )	r1   rX  rY  	bad_dfnum	bad_dfdenr  rd   r  r  s	   &        r%   r  TestBroadcast.test_f  s    D	D	((QR7499-.HH519e$!&2>j!]E:j!QY	:7499-.HH5!)$!&2>j!	:j!IM:r'   c                   ^.p^.p^.p^ .pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  p	V	! V^,          W#4      p
\        W^R7       \        \        W^,          W#4       \        \        W^,          WS4       \        \        W^,          W&4       \        \        V P                  4      4      pVP
                  p	V	! W^,          V4      p
\        W^R7       \        \        WV^,          V4       \        \        WV^,          V4       \        \        WV^,          V4       \        \        V P                  4      4      pVP
                  p	V	! WV^,          4      p
\        W^R7       \        \        WW#^,          4       \        \        WWS^,          4       \        \        WW&^,          4       R# )r_   r  NrC   rL   )gŜ,n1 @g!6)@g9?)	r8   r   r   r   r   rZ  r   r   rF   )r1   rX  rY  rS  r3  r4  bad_noncr  rd   nonc_fr  s   &          r%   r[  TestBroadcast.test_noncentral_f  s{   sC	D	4((RS7499-.$$	5/!&2> 	j&a-Ej&!)YEj&!)UE7499-.$$qy$/!&2>j&UQYEj&QEj&HE7499-.$$dQh/!&2>j&U1HEj&1HEj&1Er'   c                    \        \        V P                  4      4      p\        P                  ! R R.4      pVP                  RR^^R7      p\        W2^R7       R# )gZ\#?gDqw?r   rp   r  N)r   r   r   r8   r   rZ  r   )r1   rd   r  r  s   &   r%   test_noncentral_f_small_df(TestBroadcast.test_noncentral_f_small_df  sL    7499-.((,o>?$$S#qq$9!&2>r'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# )rK   r  NrC   )gC{?g7Q#?g%h1T@)	r8   r   r   r   r   r  r   r   rF   r1   rR  bad_dfr  rd   r  s   &     r%   r  TestBroadcast.test_chisquare  sf    S((PQ7499-.!!"q&)!&2>j&"2"2FQJ?r'   c                (   ^.p^.pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        W^R7       \        \        Ws^,          V4       \        \        Wq^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        W^R7       \        \        WsV^,          4       \        \        WqV^,          4       R# )rK   r  NrC   rL   )g-S?g[@gr3/.?)	r8   r   r   r   r   rT  r   r   rF   )	r1   rR  rS  r?  r7  r  rd   nonc_chir  s	   &        r%   rU  'TestBroadcast.test_noncentral_chisquare   s    Ss4((OP7499-..."q&$'!&2>j(QJ=j(FH=7499-..."Qh'!&2>j(D1H=j(1=r'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# )rK   r  NrC   )g>Qg{g,e?)	r8   r   r   r   r   r  r   r   rF   r>  s   &     r%   r  TestBroadcast.test_standard_t5  sf    S((ST7499-.""26*!&2>j&"3"3VaZ@r'   c                   ^.p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          V4      p\        Wd^R7       \        \        VP
                  V^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p\        Wd^R7       \        \        VP
                  W^,          4       R# )r_   r  NrC   )gD()@g,)ʸ@gPo)	r8   r   r   r   r   r  r   r   rF   )r1   r:  r  	bad_kappar  rd   r  s   &      r%   r  TestBroadcast.test_vonmises?  s    SD	((RS7499-.a/!&2>j&//269E7499-.QY/!&2>j&//21}Er'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# )rK   r  NrC   )g/h?gcE?g/gV?)	r8   r   r   r   r   rk  r   r   rF   r1   r  r%  r  rd   r  s   &     r%   rn  TestBroadcast.test_paretoO  sb    C((PQ7499-.q1u%!&2>j&--;r'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# r)  )	r8   r   r   r   r   r  r   r   rF   rJ  s   &     r%   r  TestBroadcast.test_weibullY  sb    C((PQ7499-.A&!&2>j&..%!)<r'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# )rK   r  NrC   )gT?gʥ?gKܮc?)	r8   r   r   r   r   r{  r   r   rF   rJ  s   &     r%   r|  TestBroadcast.test_powerc  sb    C((QR7499-.a!e$!&2>j&,,	:r'   c                   ^ .p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        Wt^R7       \        \        Wa^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        Wt^R7       \        \        WaV^,          4       R# )r   r  NrC   )gh&BgsgR#?)	r8   r   r   r   r   r
  r   r   rF   )r1   r  r  r"  r  rd   r
  r  s   &       r%   r  TestBroadcast.test_laplacem  s    cD	((ST7499-...q%(!&2>j'7I>7499-...ai(!&2>j'	A>r'   c                   ^ .p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        Wt^R7       \        \        Wa^,          V4       \        \        V P                  4      4      pVP
                  pV! W^,          4      p\        Wt^R7       \        \        WaV^,          4       R# )r   r  NrC   )gs4?g$Cw%T?gտ)	r8   r   r   r   r   r  r   r   rF   )r1   r  r  r"  r  rd   r  r  s   &       r%   r  TestBroadcast.test_gumbel  s    cD	((RS7499-.a'!&2>j&'9=7499-.QY'!&2>j&y1}=r'   c                   ^ .p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          V4      p\        Wd^R7       \        \        VP
                  V^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p\        Wd^R7       \        \        VP
                  W^,          4       \        VP                  RR4      R4       R# )r   r  r  r   NrC   )g$DgXPg,?)
r8   r   r   r   r   r  r   r   rF   r   )r1   r  r  r"  r  rd   r  s   &      r%   r  TestBroadcast.test_logistic  s    cD	((QR7499-.q%0!&2>j&//37IF7499-.ai0!&2>j&//3AFV__S#.4r'   c                   ^ .p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p\        Wt^R7       \        \        Wa^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p\        \        VP
                  W^,          4       R# )r   r  NrC   )g c?gu@gVQ?)	r8   r   r   r   r   r  r   r   rF   )r1   rr   ry   	bad_sigmar  rd   r  r  s   &       r%   r  TestBroadcast.test_lognormal  s    sD	((QR7499-.$$	4!8U+!&2>j)AXyA7499-.!!$	2j&"2"2Da-Hr'   c                   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          4      p\        WS^R7       \        \        VP
                  V^,          4       R# )rK   r  NrC   )gs(?g4mK?gVk+?)	r8   r   r   r   r   r  r   r   rF   r*  s   &     r%   r  TestBroadcast.test_rayleigh  sh    D	((!
 7499-.+!&2>j&//9q=Ar'   c                p   R .p^.p^ .pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP                  V^,          V4      p\        Wu^R7       \        \        VP
                  V^,          V4       \        \        VP
                  V^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p\        Wu^R7       \        \        VP
                  W2^,          4       \        \        VP
                  W^,          4       R# )rA   r  NrL   )gk7Z?g*}z9?gc-	?)	r8   r   r   r   r   r	  r   r   rF   )r1   rr   r  bad_meanr"  r  rd   r  s   &       r%   r
  TestBroadcast.test_wald  s    u3D	((OP7499-.TAXu-!&2>j&++x!|UCj&++taxC7499-.T19-!&2>j&++xCj&++t]Cr'   c                @   ^.p^.p^.p^.p^.pV^,          w  rg\         P                  ! . RO4      p\        \        V P                  4      4      p	V	P
                  p
V
! V^,          W24      p\        W^R7       \        \        W^,          W24       \        \        W^,          WR4       \        \        W^,          VV4       \        \        V P                  4      4      p	V	P
                  p
V
! W^,          V4      p\        W^R7       \        \        WV^,          V4       \        \        WV^,          V4       \        \        WV^,          V4       \        \        V P                  4      4      p	V	P
                  p
V
! WV^,          4      p\        W^R7       \        \        WW2^,          4       \        \        WWR^,          4       \        \        WVV^,          4       \        \        V
RRR4       \        \        V
RRR4       \        \        V
RRR4       R# )rK   r  r  r   g      4@g      9@N)gR8T>?gK?g;>h@)	r8   r   r   r   r   r  r   r   rF   )r1   r  r  r  bad_left_onebad_mode_onebad_left_twobad_mode_twor  rd   r  r  s   &           r%   r  TestBroadcast.test_triangular  s   ssss%*QY"((QR7499-.&&
D1Hd2!&2>j*Q.>Lj*QhLj*Q.>	 7499-.&&
D(E2!&2>j*D1HeLj*L14DeLj*L1<L	 7499-.&&
D	2!&2>j*D!)Lj*L!)Lj*Lai	! 	j*c2s;j*c3<j*c3<r'   c                   ^.pR.pR.pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          V4      p	\        W4       \        \        W^,          V4       \        \        W^,          V4       \        \        W^,          V4       \        \        V P                  4      4      pVP                  W^,          4      p	\        W4       \        \        WV^,          4       \        \        WV^,          4       \        \        WV^,          4       R# )rK   rA   r  NrC   r   r   rK   )	r8   r   r   r   r   re   r   r   rF   )
r1   rt   rf   bad_n	bad_p_one	bad_p_twor  rd   binomr  s
   &         r%   r  TestBroadcast.test_binomial  s    CED	E	((9%7499-.q1ua6+j%A6j%Q	:j%Q	:7499-.E*6+j%A6j%IM:j%IM:r'   c                   ^.pR.pR.pR.pR.p\         P                  ! . RO\         P                  R7      p\        \	        V P
                  4      4      pVP                  pV! V^,          V4      p	\        W4       \        \        W^,          V4       \        \        W^,          V4       \        \        W^,          V4       \        \	        V P
                  4      4      pVP                  pV! W^,          4      p	\        W4       \        \        WV^,          4       \        \        WV^,          4       \        \        WV^,          4       R# )rK   rA   r  ra   NrC   )r   r_   rK   )
r8   r   r   r   r   r   r#  r   r   rF   )
r1   rt   rf   rf  rg  rh  r  rd   	neg_binomr  s
   &         r%   r%  $TestBroadcast.test_negative_binomial	  s   CED	E	((9BHH57499-.,,	1q5!$6+j)QY:j)UI>j)UI>7499-.,,	1!e$6+j)AE:j)	A>j)	A>r'   c                R   ^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV^,          .pVP                  pV! V^,          4      p\        W4       \        \        Wr^,          4       \        \        Wv^,          4       R# )rK   NrC   )r   r   r   )
r8   r   r   r   r   _poisson_lam_maxrr  r   r   rF   )	r1   rq  bad_lam_oner  rd   max_lambad_lam_tworr  r  s	   &        r%   rs  TestBroadcast.test_poisson*	  s    cd((9%7499-.)){m..q!6+j'?;j'?;r'   c           	        ^.p^ .p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          4      p\        Wc4       \        \        WR^,          4       \         P                  ! RR7      ;_uu_ 4        \        \        V\         P                  4       \        \        V^ ^ \         P                  .4       RRR4       R#   + '       g   i     R# ; i)r_   r  r  N)rK   r  rK   )r8   r   r   r   r   r  r   r   rF   r  rk   )r1   r  r%  r  rd   r  r  s   &      r%   r  TestBroadcast.test_zipf9	  s    C((9%7499-.{{a!e6+j$	2[[***dBFF3*dQ266N; +***s   AC%%C6	c                ,   R .pR.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          4      p\        Wt4       \        \        Wb^,          4       \        \        Wc^,          4       R# )rA   r  NrC   r   )	r8   r   r   r   r   r  r   r   rF   )r1   rf   rg  rh  r  rd   r  r  s   &       r%   r  TestBroadcast.test_geometricG	  su    ED	E	((9%7499-.$$	1q5!6+j)];j)];r'   c                   ^.p^.p^.pR.pR.pR.p^.p\         P                  ! . RO4      p\        \        V P                  4      4      p	V	P                  V^,          W#4      p
\        W4       \        \        V	P
                  V^,          W#4       \        \        V	P
                  V^,          WS4       \        \        V	P
                  V^,          W&4       \        \        V	P
                  V^,          W'4       \        \        V P                  4      4      p	V	P                  W^,          V4      p
\        W4       \        \        V	P
                  WB^,          V4       \        \        V	P
                  W^,          V4       \        \        V	P
                  W^,          V4       \        \        V	P
                  W^,          V4       \        \        V P                  4      4      p	V	P
                  pV! WV^,          4      p
\        W4       \        \        WW#^,          4       \        \        WWS^,          4       \        \        WW&^,          4       \        \        WW'^,          4       \        \        VR^
^4       \        \        V^
R^4       \        \        V^
^
R4       \        \        V^
^
^4       \        \        VR^
^4       \        \        VRR^24       \        \        VRR	R.R4       R# )
rK   i  r+   NrC   rL   re  i   @l        i    )	r8   r   r   r   r   r  r   r   rF   )r1   ngoodnbadr   	bad_ngoodbad_nbadbad_nsample_onebad_nsample_twor  rd   r  	hypergeoms   &           r%   r  !TestBroadcast.test_hypergeometricT	  sQ   s#D	4$#((9%7499-.&&uqy$@6+j&"7"7QVj&"7"7HVj&"7"7DZj&"7"7DZ7499-.&&uQh@6+j&"7"71HgVj&"7"71gVj&"7"7q/Zj&"7"7q/Z7499-.))	5!46+j)kJj)HkJj)DA:MNj)DA:MNj)RR8j)RR8j)RR8j)RR8 	j)UB;j)S%<j)S5%.$Gr'   c                ,   R .p^.pR.p\         P                  ! . RO4      p\        \        V P                  4      4      pVP
                  pV! V^,          4      p\        Wt4       \        \        Wb^,          4       \        \        Wc^,          4       R# )rA   NrC   )rK   rK   rK   )	r8   r   r   r   r   r  r   r   rF   )r1   rf   rg  rh  r  rd   r  r  s   &       r%   r  TestBroadcast.test_logseries	  su    EC	D	((9%7499-.$$	1q5!6+j)];j)];r'   c                   \        \        V P                  4      4      pVP                  ^^.R.^,          RR7      p\        P
                  ! . RO. RO.. RO. R	O.. R
O. RO..\        P                  R7      p\        W#4       \        \        V P                  4      4      pVP                  ^^.R.^,          4      p\        P
                  ! . RO. RO.\        P                  R7      p\        W#4       \        \        V P                  4      4      pVP                  ^^.R.^,          .^,          4      p\        P
                  ! . RO. RO.\        P                  R7      p\        W#4       \        \        V P                  4      4      pVP                  ^.^..R.^,          .^,          4      p\        P
                  ! . RO. RO.. RO. R	O..\        P                  R7      p\        W#4       R# )r   rp   ra   Nr'  r  )r   r   r_   rK   r_   r   )r_   r   r  r   r_   r   )rK   r   rK   r   r_   rK   )r   r_   r_   rK   r   r   )r   r_   r   rK   r_   r   )r   r_   r   r   r   r   )r   r   r_   rK   rK   rK   )r   r_   r   r   r   r   )r   r   r   r   r8   r   r   r   r  s   &   r%   r(  TestBroadcast.test_multinomial	  s   7499-.##QGfX\#G((//1//1//1	2
 :<C 	6+7499-.##QGfX\:((..079xxA6+7499-.##QGvhl^a-?@((..079xxA6+7499-.##aS2$K6(Q,!1CD((//1//12 :<C 	6+r'   rt   c                   \        \        V P                  4      4      p\        P                  ! R.^,          4      pVP                  W4      p\        V\        4      '       d   RMVP                  pVR,           p\        P                  ! W3.4      pVP                  W4      p\        P                  ! WSP                  RR 4      R,           p\        P                  ! V.V..4      pVP                  W4      p\        P                  ! WSP                  RR 4      pVP                  WRV,           R7      p\        P                  ! \        4      ;_uu_ 4        VP                  WRR7      pRRR4       R#   + '       g   i     R# ; i)	rK   Nrp   r  rS   )r   rC   r  )rK   rK   rK   rK   rK   rK   )r   r   r   r8   r   r   r   r`   r   rL  broadcast_shapesr   r   rF   )r1   rt   rd   r   r  n_shaper   s   &&     r%   test_multinomial_pval_broadcast-TestBroadcast.test_multinomial_pval_broadcast	  s.    7499-.%1%##A-"1c**" 4		5.)##A-,,Wkk#26FG$N 		E7UG,-##A-,,Wkk#26FG##A6N3J#K ]]:&&''x'@F '&&&s   E55F	c                    \        \        V P                  4      4      pR.^,          R.^,          .p\        \        VP
                  ^V4       \        \        VP
                  ^R4       R# )rK   rA   Nr'  r  )r   r   r   r   rF   r   )r1   rd   r   s   &  r%   test_invalid_pvals_broadcast*TestBroadcast.test_invalid_pvals_broadcast	  sS    7499-.1ugk*j&"4"4a?j&"4"4a=r'   c                b   \        \        V P                  4      4      pVP                  \        P
                  ! RR4      R.^,          4      pVP                  ^\        P
                  ! R4      4      pVP                  \        P
                  ! RR4      \        P
                  ! R4      4      pR# )r6   i8N)r6   r   r  r'  )r6   r   r6   )r   r   r   )r   r   r   r   )r   r   r   r   r8   r   r^  s   &  r%   test_empty_outputs TestBroadcast.test_empty_outputs	  s|    7499-.##BHHZ$>!L##B(=>##BHHY$=$&HH\$:<r'   rS   N).rT   rU   rV   rW   r   r  rc  r  r  r  r  r  r[  r;  r  rU  r  r  rn  r  r|  r  r  r  r  r  r
  r  r  r%  rs  r  r  r  r  r(  r   r  r	  r8   r   r  r  r  rX   rY   rZ   s   @r%   r  r  v  s     D?>$?$E	<?*;*!FF?@>*AF <=;?$>$5"I BD&&=P;.?0<<<+HZ<,> [[S2#%88RH#5#%88rdVrdV,<#=#% 
A
A.>, ,r'   r  zcan't start threadr  c                   H   a  ] tR tRt o ]! ^4      tR tR tR tR t	Rt
V tR# )
TestThreadi	  c                "   ^ 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\        \        V4      4      V3R7      NK%  	  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! \        \        V4      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)targetargswin32N)	threadingr  r8   r   r  seedszipr   r   startjoinintprb   r   ro  platformr   r   )
r1   functionszr  out1out2r2   otrv   s
   &&&       r%   check_functionTestThread.check_function	  s   $xxTZZ*R/0xxTZZ*R/0 TZZ.0. 89WQZ+@!*DE. 	
 0AqA1a1 

D)DAYwqz*A. * 779??##q(S\\W-D%d1t*0s   )F2FFc                2    R  pV P                  VRR7       R# )c                 0    V P                  R R7      VR&   R# )r,  rp   .N)rb  r  r  s   &&r%   
gen_random*TestThread.test_normal.<locals>.gen_random	  s    |||/CHr'   r  N)r,  r  r1   r  s   & r%   rc  TestThread.test_normal	  s    	0 	J84r'   c                2    R  pV P                  VRR7       R# )c                 X    V P                  \        P                  ! R4      R7      VR&   R# )r   r  .Nr   r+   )r  r8   r$  r  s   &&r%   r  'TestThread.test_exp.<locals>.gen_random	  s"    ((rww{/C(DCHr'   r  Nr  r  r  s   & r%   test_expTestThread.test_exp	  s    	E 	J;7r'   c                2    R  pV P                  VRR7       R# )c                 D    V P                  ^
R.^,          RR7      VR&   R# )r6   r,  rp   .Nr'  )r   r  s   &&r%   r  /TestThread.test_multinomial.<locals>.gen_random
  s#    ((fX\(FCHr'   r  N)r,  r  r  r  s   & r%   r(  TestThread.test_multinomial
  s    	G 	J:6r'   rS   N)rT   rU   rV   rW   r7   r  r  rc  r  r(  rX   rY   rZ   s   @r%   r  r  	  s)      !HE+,587 7r'   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TestSingleEltArrayInputi	
  c                    \         P                  ! ^.4      \         P                  ! ^.4      \         P                  ! ^.4      R3# )r_   rQ  r;  rG   s   &r%   _create_arrays&TestSingleEltArrayInput._create_arrays

  s/    xx}bhhsmRXXqc]D@@r'   c                p   V P                  4       w  p r#\        P                  \        P                  \        P                  \        P
                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  3p\        P                  \        P                  3pV FE  pWe9   d   V! \        P                  ! R .4      4      pMV! V4      p\!        VP"                  V4       KG  	  R# r"  )r  rd   r  r  r  r  rk  r  r{  r  rr  r  r  r  r8   r   r   r   )r1   argOner$  tgtShapefuncs	probfuncsr  r  s   &       r%   test_one_arg_funcs*TestSingleEltArrayInput.test_one_arg_funcs
  s    !%!4!4!61##V%:%:!!6#4#4v!!6#3#35 %%v'7'78	D 288SE?+ 6lH- r'   c                8   V P                  4       w  rr4\        P                  \        P                  \        P                  \        P
                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  3p\        P                  \        P                  3pV F  pWv9   d   \         P"                  ! R .4      pMTpV! W4      p\%        VP&                  V4       V! V^ ,          V4      p\%        VP&                  V4       V! W^ ,          4      p\%        VP&                  V4       K  	  R# r"  )r  rd   r  rb  r  r  r  rT  r  r
  r  r  r  r	  re   r#  r8   r   r   r   )	r1   r  argTwor$  r  r  r  r  r  s	   &        r%   test_two_arg_funcs*TestSingleEltArrayInput.test_two_arg_funcs!
  s   &*&9&9&;#fll666&..!!6;;&":":< __f&>&>?	D 3%  v&CH-vay&)CH-vay)CH- r'   c           	        V P                  4       w    r#\        P                  \        P                  \        P                  \        P
                  \        P                  \        P                  \        P                  \        P                  \        P                  .	p\        P                  p\        P                  ! ^.4      p\        P                  ! ^ .4      pV Fr  pV! WvWR7      p	\        V	P                  V4       V! V^ ,          WaVR7      p	\        V	P                  V4       V! Wv^ ,          WR7      p	\        V	P                  V4       Kt  	  R# r*  )r  r8   r3  ri  rm  rd  rk  rf  r   r   rl  rd   r/   r   r   r   )
r1   r&   r$  r  r2  r  r  r  r6  r  s
   &&        r%   r  %TestSingleEltArrayInput.test_integers=
  s     //11a"''288RXXryy299bhh		;xx}hhsmBs8>CH-s1vtbACH-sGhACH- r'   c                r   V P                  4       w  rr4\        P                  \        P                  \        P                  .pV Fn  pV! WV4      p\        VP                  V4       V! V^ ,          W#4      p\        VP                  V4       V! W^ ,          V4      p\        VP                  V4       Kp  	  R# r  )r  rd   rZ  r  r  r   r   )r1   r  r  argThreer  r  r  r  s   &       r%   test_three_arg_funcs,TestSingleEltArrayInput.test_three_arg_funcsO
  s    -1-@-@-B*$$f&7&7&&( Dvx0CH-vay&3CH-vay(3CH- r'   rS   N)rT   rU   rV   rW   r  r  r  r  r  rX   rY   rZ   s   @r%   r  r  	
  s$     A.(.8.$. .r'   r  r  c                    V R ,          pV R,          p\        V4      pVP                  V4       VP                  R,          R,          p\        P                  R8X  d   VP                  4       p\        P                  ! V4      pVP                  4       pVP                  R,          R,          p\        P                  R8X  d   VP                  4       p\        P                  ! V4      pR# )r   r   r  r  r  N)	r   r=   r  ro  rp  rq  rr  rs  r   )r  r   r   mt19937r  rs  r   s   &      r%   test_jumpedr  _
  s     &>D7OEdmGu
--
 
'C
}}lln^^C F ^^F
,,w

&C
}}lln^^C Fr'   c            	      v	   \         P                  ! ^4      p \         P                  ! R4      pR	p\        P                  ! \        4      ;_uu_ 4        \
        P                  WVR7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  WR
R7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  WRR7       RRR4       \         P                  ! R4      p\        P                  ! \        4      ;_uu_ 4        \
        P                  W2R7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  VRR7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  V^R7       RRR4       \         P                  ! V4      p\        P                  ! \        4      ;_uu_ 4        \
        P                  W4R7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  ^RR.RR7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  ^^.RRR7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  ^^.RR.RR7       RRR4       \        P                  ! \        4      ;_uu_ 4        \
        P                  ^^.RR.RR7       RRR4       \
        P                  ^^R7      p\
        P                  ^RR7      p\
        P                  ^RR7      p\        P                  ! \        RR7      ;_uu_ 4        \
        P                  WVVRR7       RRR4       R#   + '       g   i     ELk; i  + '       g   i     EL=; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELp; i  + '       g   i     EL-; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELe; i  + '       g   i     R# ; i)r   rp   Nr  r   gffffff?zOutput size \(6, 5, 1, 1\) isr   )r   r   )r6   r   r_   )rK   r   )r   rK   rK   )r   )r_   rK   )r   r   r   )r  r   rK   rK   )r8   r$  r   r   rF   rd   rb  r  r   re   r   r  rZ  )r:  ry   rq   r   r  r  r  r  s           r%   test_broadcast_size_errorr  {
  s   	BGGFOED	z	"	"bd+ 
#	z	"	"bf- 
#	z	"	"bi0 
# GGFOE	z	"	"e/ 
#	z	"	"e$/ 
#	z	"	"e!, 
# ((4.C	z	"	"e- 
# 
z	"	"C:F3 
#	z	"	"A&1 
#	z	"	"Ac
8 
#	z	"	"Aq6B8&9 
# 	#A(A+A	z)I	J	JA!,7 
K	JE 
#	"	"	"	"	"	"	"	" 
#	"	"	"	"	"	"	"	" 
#	"	" 
#	"	"	"	"	"	"	"	"	"	"	" 
K	J	Js   OOO3-P.P0P/Q	QQ+Q?R(R'O	O0	3P	P	P,	/Q 	Q	Q(	+Q<	?R	R$	'R8	c                  8   \         P                  ! ^4      p \         P                  ! ^4      p\        P                  W^R7       \        P
                  ! \        4      ;_uu_ 4        \        P                  W^R7       RRR4       R#   + '       g   i     R# ; ir  )r8   r$  rd   rb  r   r   rF   )r:  ry   s     r%   test_broadcast_size_scalarr  
  sZ    	BGGAJE
MM"!M$	z	"	"ba( 
#	"	"	"s   &BB	c                  d    . . ^.p \        \        ^ 4      4      p\        VP                  V 4       R# rj   )r   r   r   r  )seqgens     r%   test_ragged_shuffler  
  s)    r1+C
GAJ
Cs{{C(r'   r  r&   c                 R   \        \        ^ 4      4      pV'       d   RMRp\        P                  ! \        VR7      ;_uu_ 4        VP                  WR7       RRR4       V'       d   RMRp\        P                  ! \        VR7      ;_uu_ 4        VP                  RWR7       RRR4       \        P                  ! \        VR7      ;_uu_ 4        VP                  R.WR7       RRR4       R#   + '       g   i     L; i  + '       g   i     Lf; i  + '       g   i     R# ; i)	r   zhigh < 0z	high <= 0r   r  Nz
low > highzlow >= highrC   )r   r   r   r   rF   r/   )r  r&   r  msgs   &&  r%   !test_single_arg_integer_exceptionr  
  s     GAJ
C *kC	z	-	-T- 
.",C	z	-	-R1 
.	z	-	-bT43 
.	- 
.	- 
.	-	-	-	-s$   C/DD/C?	D	D&	rb   f4f8c           	         \         P                  ! RRV R7      p. R	Op\        P                  ! \        RR7      ;_uu_ 4        \
        P                  W!V R7       RRR4       \        P                  ! \        RR7      ;_uu_ 4        \
        P                  W!VP                  V R7       RRR4       R#   + '       g   i     La; i  + '       g   i     R# ; i)
r_   F)orderrb   zSupplied output arrayr   r  Nr  r  r   )r8   r   r   r   rF   rd   r  r   )rb   r  r   s   &  r%   test_c_contig_req_outr  
  s     ((6E
2CE	z)@	A	AeE: 
B	z)@	A	Ae399EJ 
B	A 
B	A	A	A	As   B3#C3C	C	r  r  Cdistc                 p    \         P                  ! RW!R7      pV ! W2R7      pV ! W2VP                  R7      pR# )r_   )rb   r  r  )r  rb   rq   Nr  )r8   r   r   )r  r  rb   r  variatess   &&&  r%   test_contig_req_outr  
  s.    
 ((6
4C)Hsyy9Hr'   c                  d   \         P                  P                  \         P                  P                  ^ 4      4      p V P	                  ^4       V P                  4       w  pw  r#\        V4       V! R!  p\        V4       VP                  VP                  n        VP                  P                  pR# )r   N)	PCG64DXSM)	r8   rd   r   r  r  
__reduce__printr  r  )r  ctorbit_genr$  r  state_bs         r%   $test_generator_ctor_old_style_pickler  
  s~    			RYY003	4Bq==?D+7 
$KnA	!H#MMAOOoo##Gr'   c                     ^ RI p \        P                  P                  \        P                  P	                  R4      4      pVP
                  P                  pV P                  V P                  V4      4      pVP
                  P                  p\        VP                  VP                  4       \        VP                  VP                  4       VP
                  P                  P                  ^
4       V P                  V P                  V4      4      pVP
                  P                  p\        VP                  VP                  4       R# )r   Ni4)pickler8   rd   r   r  r  seed_seqloadsdumpsr   r  poolspawn)r  r  ssrg_plkss_plks        r%   #test_pickle_preserves_seed_sequencer  
  s     			RYY00:	;B				"	"B\\&,,r*+F!!**F6<<(&++&##B'\\&,,r*+F!!**F6<<(r'   versionc                    ^ RI p^ RIp\        P                  P	                  \        P                  P                  \        4      4      ^ ,          p\        P                  P                  VRRV  R24      pVP                  V4      ;_uu_ 4       pVP                  V4      pRRR4       XP                  P                  R,          pR#   + '       g   i     L/; i)r   Nrk  generator_pcg64_npz.pkl.gzr  )gzipr  ospathsplitabspath__file__r  openloadr  r  )r  r  r  	base_pathpkl_filegzr  r  s   &       r%   test_legacy_pickler
  
  s     bggooh78;Iww||6/y@H 
8		[[_ 
""7+E 
	s   CC	)i|2iEm:iS43i5  rL   )7rr  os.pathr   ro  r5  r   numpyr8   numpy.exceptionsr   numpy.linalgr   numpy.randomr   r   r   r   numpy.testingr	   r
   r   r   r   r   r   r   r   rd   JUMP_TEST_DATAfixturer&   r)   r]   r   r   r  r(  r  r  r  r  r  r  r	  r  r  r  r  r  r  r  r  r  r  r
  rS   r'   r%   <module>r     s     
    & $ F F
 
 
 
79	 	L"dfkmnoL"dfkmpq	 		L"dfkmpqL"dfkmpq	 	6L"dfkmpqL"dfkmpq	, he}5 6!6 !6HF FB4) 4)nB- B-J"' "'JE EPP, P,f$a	, a	,H G$89*7 *7 :*7\S. S.l >2@ 3@6(8V) "rd,dE]3
4 4 -
4 4,/K 0K 4,/3*-&"8"8&--!HI J . 0$)$ S#J/B 0Br'   