+
    0ii                     F   ^ RI t ^ RIt^ RIt^ RIHt ^ RIHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHtHt ^ RIt^ RIHtHtHt ^ RIHt ^ RIHt ^ RIH t  ] PB                  PE                  R. R3O4      R	 4       t#] PB                  PE                  RR4R5.4      R
 4       t$R t%R t&R t'R t(R t)R t*R t+R t,] PB                  PE                  R]PZ                  ! ].]/3.^,          !  4      R 4       t0R t1R t2R t3R t4R t5R t6R t7] PB                  PE                  R. R6O4      R 4       t8R t9R t:R  t;R! t<R" t= ! R# R$4      t> ! R% R&4      t?] PB                  PE                  R'. R7O. R8O.4      R( 4       t@R) tA ! R* R+4      tB ! R, R-4      tCR. tD ! R/ R04      tE ! R1 R24      tFR# )9    N)stats)	betabinom
betanbinom	hypergeom
nhypergeom	bernoulli	boltzmannskellamzipfzipfianbinomnbinomnchypergeom_fishernchypergeom_walleniusrandintpoisson_binom)assert_almost_equalassert_equalassert_allclose)r   )root_scalar)quadzk, M, n, N, expected, rtolc                 N    \         P                  ! WW#4      p\        WdVR 7       R# rtolN)r   cdfr   kMnNexpectedr   ps   &&&&&& d/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/stats/tests/test_discrete_distns.pytest_hypergeom_cdfr%      s     	aA!AAd+    c                 N    \         P                  ! WW#4      p\        WdVR 7       R# r   )r   sfr   r   s   &&&&&& r$   test_hypergeom_sfr)   $   s     	Q1 AAd+r&   c                     ^p ^2p^
p^p\         P                  ! WW#4      p\         P                  ! W0,
          WV,
          V4      p\         P                  ! W ,
          WW,
          4      p\         P                  ! WW24      p\        WE^R7       \        WF^R7       \        WG^R7       ^p ^
p^p^p\         P                  ! WW#4      p\        P                  ! WV,          4      p	\        W^R7       R# )   )decimalN)r   logpmfr   r   )
r   r!   Kr    logpmf1logpmf2logpmf3logpmf4hypergeom_logpmfbernoulli_logpmfs
             r$   test_hypergeom_logpmfr5   .   s     	
A
A
A	AqQ*GquaQ2GquaAE2GqQ*G"5"5"5 	
A
A	A	A ''a3 ''Q3/(BGr&   c                     ^-^^r!p ^p\         P                  ! W0W4      p\        P                  ! W0WV,           ^,
          4      W,
          V^,
          ,
          ,          WV,           ^,
          ,
          ,          p\        WTRR7       R# )-   绽|=r   N)r   pmfr   r   )r   r    rr   NHGHGs         r$   test_nhypergeom_pmfr=   H   sb    "a!A	A
..q
$C	qQ!A	&!%1Q3-	8A1QK	HBB%(r&   c                      ^p ^p^p\         P                  ! V^,           4      p\        P                  ! W0W4      p\        P                  ! W0W4      p\        V. RORR7       \        V. RORR7       R# )   vIh%<=r   N)$I$I?g۶m۶m?m۶m?rB   )rA   $I$I?g%I$I?      ?)nparanger   r9   r   r   )r   r    r:   supportr9   r   s         r$   test_nhypergeom_pmfcdfrH   Q   s\    	A	A	Aii!nG
..Q
*C
..Q
*CC1>C0u=r&   c                  v    ^
p ^p^ p\         P                  ! . RO. RO.WV4      p\        V. RO. RO.RR7       R# )
   r@   r   N)r         r   )rK   rL   r      )rK   r   r   rK   )r   r   rK   r   )r   r9   r   )r   r    r:   r9   s       r$   test_nhypergeom_r0rN   ]   s9    
A	A	A
..,5qQ
?CC,5EBr&   c                  l    \         P                  ! ^. RO^.^..RR7      p V P                  R8X  g   Q hR# )   sizeN)   r?   	   r+   rK   rL   rM   )r   rvsshape)xs    r$   test_nhypergeom_rvs_shaperY   f   s2     	r9tbTlFA77l"""r&   c                  $   \         P                  P                  ^ 4      p \        P                  ! ^^^^dV R7      p\         P                  P                  ^ 4      p V P                  ^dR7      p\        P                  ! V^^^4      p\        W4       R# )r   rR   random_staterQ   N)rE   randomRandomStater   rV   uniformppfr   )rngrX   r#   ys       r$   test_nhypergeom_accuracyrc   n   sn     ))


"Cr1bs=A
))


"CAq"a$Ar&   c                  X   \         P                  ! R^4      p ^p\        P                  ! V RV4      pV ^ 8H  p\	        W#4       \         P
                  ! ^4      p^p\        P                  ! WV4      p. ROp\        W#RR7       \        P                  ! WV4      p. ROp\        WSRR7       R# )rM   grh|?r@   r   N)r   r   r   $I$I?rC   g$I$I?r   r   )r   r   r   rf   g۶m۶m?rK   rK   rK   )rE   rF   r	   r9   r   logr   r   )r   r!   r#   r"   lamcs         r$   test_boltzmann_upper_boundrj   y   s    
		"aA	Aa"AAvH
&&)C	Aaa A-HAe,aa A+HAe,r&   c                      ^p \         P                  ! V ^,           4      p\        V ^^4      P                  V4      p\         P                  ! ^V ^,           ,          V ^,           4      p\        W#4       R#    N)rE   rF   r   r9   repeatr   )r    r   r#   r"   s       r$   test_betabinom_a_and_b_unityro      sX     	A
		!a%A!Qq!Ayya!ea!e,H$r&   dtypesc           	          V w  rpV! ^
4      V! ^4      V! ^4      rep\        \        P                  ! WEVRR7      R4       R# )rJ   r   momentsNgaa)r   r   r   )rp   n_typea_typeb_typer    abs   &      r$   -test_betabinom_stats_a_and_b_integers_gh18026ry      s=     $FFRj&)VAY!AIOOA!S9;NOr&   c                      R p Rp\         P                  ! ^4      p\        ^W4      P                  V4      p\	        W V,           ,          4      P                  V4      p\        W44       R# )gffffff@g)\(?N)rE   rF   r   r9   r   r   )rw   rx   r   r#   r"   s        r$   test_betabinom_bernoullir{      sS    AA
		!A!Qq!A!e%))!,H$r&   c                  T    R ^
^r!p \        \        P                  ! WVR7      R4       R# )g?
confidencer    r#   Nr   r   )r   r   intervalalphar    r#   s      r$   test_issue_10317r      s"    r1aEE!<fEr&   c                  T    R ^
^ r!p \        \        P                  ! WVR7      R4       R# )gffffff?r}   Nr   )r   r   r   r   s      r$   test_issue_11134r      s"    AaE5;VDr&   c                  .   \         P                  P                  R 4      p \        \        P
                  ! V P                  ^
4      ^ R4      ^ 4       \        \        P
                  ! ^ ^ R4      R4       \        \        P
                  ! ^^ R4      ^ 4       R# )l   <U7       ?N)rE   r]   default_rngr   r   r`   )ra   s    r$   test_issue_7406r      se    
))



+C3::b>1c2A6 1a%r*1a%q)r&   c                  v   \         P                  P                  R 4      p ^ pV P                  ^d^
R7      p^ p\        P
                  ! W2V4      p\        VR4       \         P                  ! RR^
4      p\        P
                  ! W2V4      p\        V^ 4       ^p\        P
                  ! W2V4      p\        WB4       R# )l   U^ rQ   {Gz?Gz?Nr   )rE   r]   r   integersr   r`   r   linspace)ra   r#   r    rX   r`   s        r$   test_issue_5122r      s    
))



+C	ASr"A	A
))A!
Cb
D$#A
))A!
Ca	A
))A!
Cr&   c            	      z    \        \        R \        P                  ! RR4      4      P	                  R4      ^ 4       R# )  r   Nre   i)r   r   rE   logspacer`    r&   r$   test_issue_1603r      s)    tR[[T2377=qAr&   c                      R p \         P                  ! ^^^4      p\        \        P                  ! V^V,          V 4      R RR7       R# )r   r   )atolN)rE   r   r   r   r   )r#   rX   s     r$   test_issue_5503r      s6    A
Ar2AEIIa1a(#D9r&   zx, n, p, cdf_desiredc                 H    \        \        P                  ! WV4      V4       R # Nr   r   r   )rX   r    r#   cdf_desireds   &&&&r$   test_issue_5503pt2r      s     EIIaA&4r&   c                  J    \        \        P                  ! ^RR4      R4       R# )rL   gB.+n?Nl    J)g-q=r   r   r&   r$   test_issue_5503pt3r      s    EIIa13IJr&   c                  J    \        \        P                  ! ^^2R4      R4       R# )   g_[Cˮi8NgAA?)r   r   r(   r   r&   r$   test_issue_6682r      s     FIIc2w/1FGr&   c                  x    \         P                  ! . RO^R4      p R\        P                  ) R.p\	        W4       R# )r+   r   N)r+   r   rK   gG޿g1D&+)r   logcdfrE   infr   )result	references     r$   test_issue_19747r      s.    ]]:q#.Frvvg{3IF&r&   c                  T    R p RpRp\        \        P                  ! W V4      R4       R# )r   r   i          N)r   r   r9   )r    r#   r   s      r$   %test_boost_divide_by_zero_issue_15101r      s&    AAAEIIaA&,r&   c                  Z    . ROp \         P                  ! ^ W 4      p. ROp\        W4       R# )rK   N)	rK   rJ   d   r     i  i  i  ip  )	g>l?gzo?gVrRs?g$?gVWCW?g4yB?g4.?g.Lr?gD?)r
   r   r   )mur   cdf_expecteds      r$   test_skellam_gh11474r     s)    	9B
++a
 CPL C&r&   c                     a  ] tR tRt o R tR tR t]P                  P                  ^ 4      t
]P                  ! ]P                  ! R^^
4      ]
P                  ^^(^
4      34      P                  t]P"                  P%                  R]4      R 4       tR t]P"                  P%                  RRR.4      R	 4       t]P"                  P%                  R. RO4      R
 4       t]P"                  P%                  R. RO4      R 4       tR tRtV tR# )TestZipfiani  c                   R pRp\         P                  ! ^^4      p\        \        P                  ! W1V4      \
        P                  ! W14      4       \        \        P                  ! W1V4      \
        P                  ! W14      4       \        \        P                  ! W1V4      \
        P                  ! W14      4       \        \        P                  ! WRR7      \
        P                  ! VRR7      4       R# )g      @逖 msvkrr   N)	rE   rF   r   r   r9   r   r   r(   r   )selfrw   r!   r   s   &   r$   test_zipfian_asymptotic#TestZipfian.test_zipfian_asymptotic  s    IIaA!,dhhqn=A!,dhhqn=

1+TWWQ];aF;

1f5	7r&   c           	        R Rr!^p\         P                  ! ^V^,           4      p\        \        P                  ! WAV4      \        P                  ! WBV4      RR7       \        \        P
                  ! WAV4      \        P
                  ! WBV4      RR7       \        \        P                  ! WAV4      \        P                  ! WBV4      RR7       \        \        P                  ! WRR7      \        P                  ! W#RR7      RR7       R# )gG?g1  ?gƠ>r   r   rr   N)rE   rF   r   r   r9   r   r(   r   )r   alt1agt1r!   r   s   &    r$   test_zipfian_continuity#TestZipfian.test_zipfian_continuity  s      dIIaQAQ/Qa1H!	#AQ/Qa1H!	#

1A.

1A0F!	#dv>dv>T	Kr&   c                   \         P                  P                  ^ 4      pVP                  ^^^
R7      pVP	                  ^
4      ^
,          ^,           pVP                  ^^d^
R7      p. ROp. ROp\        \        P                  ! W#V4      R,          VR,          RR7       \        \        P                  ! W#V4      R,          VR,          RR7       R# )	r   rQ   :rK   NNư>r   g-C6
?N)
gĹԨ?gءk>	]x[?g>g	W4?g
-?g$fhn=g9[.>g`֔>gnm?)
gaj?gZk=?r   g?g90?gɸU?rD   gJ_9?g2h2-?gB0?)	rE   r]   r^   r   randr   r   r9   r   )r   ra   r   rw   r    r9   r   s   &      r$   test_zipfian_RTestZipfian.test_zipfian_R-  s     ii##A&KK2BK'HHRLOaKK3RK(+F 	A!,R0#b'EA!,R0#b'Er&   za, nc                  a \         P                  R  4       o\         P                  V3R l4       p\         P                  ! V^,           4      pV! WAV4      p\         P                  ! V4      p\         P                  ! WER7      p\         P                  ! WG,
          ^,          VR7      pVR,          p	\         P                  ! WG,
          V	,          ^,          VR7      p
\         P                  ! WG,
          V	,          ^,          VR7      ^,
          p\        \        P                  ! WAV4      V4       \        \        P                  ! WAV4      V4       \        \        P                  ! WRR7      WxW.4       R# )c                v    ^\         P                  ! ^V ^,           4      V,          ,          P                  4       # )z$Naive implementation of harmonic sum)rE   rF   sum)r    ss   &&r$   Hns+TestZipfian.test_zipfian_naive.<locals>.HnsM  s,     bii1Q3'**//11r&   c                Z   < V ^8  g   W8  d   R# ^W,          ,          S! W!4      ,          # )z#Naive implementation of zipfian pmfr   r   )r   rw   r    r   s   &&&r$   pzip,TestZipfian.test_zipfian_naive.<locals>.pzipR  s(     1u14x#a)++r&   )weightsr   mvskrr   N)
rE   	vectorizerF   cumsumaverager   r   r9   r   r   )r   rw   r    r   r   r9   r   meanvarstdskewkurtosisr   s   &&&         @r$   test_zipfian_naiveTestZipfian.test_zipfian_naiveI  s    
	2 
	2 
	, 
	, IIacN1miinzz!)jj!(Q43hzzAFC<!+S9::|a/=AA!,c2A!,c2aF;D3	5r&   c                    \         P                  ! ^ R4      pVP                  \         P                  4      p\	        ^o^4      pVP                  V4      pVP                  V4      p\        WE4       R# r   r   N)rE   rF   astypeint32r   r9   r   r   r   k_int32distr9   pmf_k_int32s   &     r$   test_pmf_integer_kTestZipfian.test_pmf_integer_kg  sS    IIa((288$sBhhqkhhw'S&r&   zk, a, n, refc                L    \         P                  ! WV4      p\        WTR 4       R# )gV瞯<N)r   r9   r   )r   r   rw   r    refr#   s   &&&&& r$   test_pmf_against_mpmath#TestZipfian.test_pmf_against_mpmathp  s     KKa &r&   c                N    \         P                  ! WV4      p\        WTR R7       R# gV瞯=r   N)r   r(   r   )r   r   rw   r    r   r(   s   &&&&& r$   test_sf_against_mpmath"TestZipfian.test_sf_against_mpmathz  s     ZZa e,r&   z	a, n, refc                L    \         P                  ! W4      p\        WCR R7       R# r   )r   r   r   )r   rw   r    r   ms   &&&& r$   test_mean_against_mpmath$TestZipfian.test_mean_against_mpmath  s     LLU+r&   c                p    R pRp\         P                  ! ^
W4      p\        V\        P                  4       R# )g      @g}Ô%ITN)r   r9   r   rE   nan)r   rw   r    r#   s   &   r$   test_ridiculously_large_n%TestZipfian.test_ridiculously_large_n  s*    KKA!Qr&   r   N)rM   g    ?rJ   gdA_"?)i  0D   ?r   g:"!?))i~  g      ?r   g_M?)i'        @'  g.a=)iP  r   順 g?Ӂqdb=)rJ         @r   g >)_   r   r   g{c=))r   r   ggG3@)g  ?r   gI'@)gjt?rM   g%-?)__name__
__module____qualname____firstlineno__r   r   r   rE   r]   r^   ra   vstackr   r   Tnaive_testspytestmarkparametrizer   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r$   r   r     s!    	7KF0 ))


"C))R[[Q3 [[B35 667a  [[V[15 25:' [[	0	5	7
'
'
 [[	0--
 [[	),,   r&   r   c                      a  ] tR tRt o R t]P                  P                  RRR.4      R 4       tR t	R t
R	 t]P                  P                  RRR.4      R
 4       tRtV tR# )TestNCHi  c                &   \         P                  P                  R 4      pRp^dpVP                  ^W2R7      pVP                  ^W2R7      pWE,           p\        P
                  ! ^ WfP                  VR7      p\         P                  ! ^ Wu,
          4      p\         P                  ! Wt4      p	\        P
                  ! WVP                  VR7      p
VP                  V
P                  4      ^,          pWWGV3w  V n	        V n
        V n        V n        V n        R# )l   U rQ   r[   NrL      rM   )rE   r]   r   r   r   rV   rW   maximumminimumrX   r!   m1r    odds)r   ra   rW   max_mr  m2r!   r    xlxurX   r  s   &           r$   setup_methodTestNCH.setup_method  s    ii##J/\\!U\/\\!U\/GKK177=ZZ14 ZZKKRXXC@zz!''"1$562$5F2r&   	dist_namer   r   c           
         R \         R\        /pW!,          pV P                  V P                  V P                  V P
                  3w  rErg\        VP                  WEWg^R7      \        P                  ! WEWg4      4       R# )r   r   )r  N)	r   r   rX   r!   r  r    r   r9   r   )r   r  distsr   rX   r!   r  r    s   &&      r$   test_nch_hypergeomTestNCH.test_nch_hypergeom  si    
 &'9(*?Affdffdggtvv5br15!aB2	4r&   c           
        V P                   V P                  V P                  V P                  V P                  3w  rr4p\
        P                  R  4       pV! WW4V4      w  rxp	\        \        P                  ! WW4V4      V4       \        \        P                  ! W#WERR7      V4       \        \        P                  ! W#WERR7      V	4       R# )c                 L  aaaaaaa VS,
          o\         P                  ! ^ SS,
          4      o\         P                  ! SS4      oVVVV3R loVVV3R lpV! ^ 4      pV! ^4      pV! ^4      pS! V 4      V,          p	Wv,          p
W,          Wv,          ^,          ,
          pWV3# )r   c                 n   < \        SV 4      p\        SSV ,
          4      pW,          SV ,          ,          # r   )special_binom)rX   t1t2r  r  r    ws   &  r$   fFTestNCH.test_nchypergeom_fisher_naive.<locals>.pmf_mean_var.<locals>.f  s/    "2q)"2q1u-wA~%r&   c                 T   <a  \        VV 3R  l\        SS^,           4       4       4      # )c              3   P   <"   T F  pS! V4      VS,          ,          x  K  	  R # 5ir   r   ).0rb   r$  r   s   & r$   	<genexpr>YTestNCH.test_nchypergeom_fisher_naive.<locals>.pmf_mean_var.<locals>.P.<locals>.<genexpr>  s!     @.?1Q4199.?s   #&)r   range)r   r$  r  r  s   fr$   PFTestNCH.test_nchypergeom_fisher_naive.<locals>.pmf_mean_var.<locals>.P  s    @eBQ.?@@@r&   rE   r  r  )rX   r!   r  r    r#  r,  P0P1P2r9   r   r   r$  r  r  r  s   &&fff       @@@@r$   pmf_mean_var;TestNCH.test_nchypergeom_fisher_naive.<locals>.pmf_mean_var  s     RBAqt$BAr"B& &
A 1B1B1BA$)C7D'RWqL(Cc>!r&   r   rr   vN)rX   r!   r  r    r  rE   r   r   r   r9   r   )
r   rX   r!   r  r    r  r2  r9   r   r   s
   &         r$   test_nchypergeom_fisher_naive%TestNCH.test_nchypergeom_fisher_naive  s     FFDFFDGGTVVTYYFbT		" 
	", &aB483*..qRDA3G*00M	*00M	r&   c                $  aa \         P                  P                  ^4      pRp^dpVP                  ^W2R7      pVP                  ^W2R7      pWE,           p\        P                  ! ^ WfP
                  VR7      p\         P                  ! ^ Wu,
          4      p\         P                  ! Wt4      p	\        P                  ! WVP
                  VR7      p
VP                  ! V
P
                  !  ^,          pR o\         P                  V3R l4       o\        P                  ! 4       ;_uu_ 4        \        P                  ! R\        RR7       \        \        P                   ! WdW{4      S! WdW{4      RR	7       R
R
R
4       \         P                  V3R l4       p\        P                  ! 4       ;_uu_ 4        \        P                  ! R\        RR7       \        \        P"                  ! WdW{RR7      V! WdW{4      RR	7       R
R
R
4       \         P                  V3R l4       pV! WWGV4      p\        P$                  ! WWGV4      pRRpp\         P&                  ! W,
          4      VV\         P&                  ! V4      ,          ,           8  pVP)                  4       \         P*                  ! V4      ^,          8  g   Q h\-        VV( ,          VV( ,          VV( ,          VV( ,          4       F  w  rdr{Wd,
          pS! WdW{4      w  r\         P.                  ! W^,           4      p
V! WWGV4      P)                  4       R8  g   Q h\        \        P$                  ! WWGV4      P)                  4       ^4       K  	  R
#   + '       g   i     EL; i  + '       g   i     EL; i)rL   rQ   r[   c                 ~    W,
          p\         P                  ! ^ W$,
          4      p\         P                  ! W!4      pWV3# )r   r.  )r!   r  r    r#  r  r  r  s   &&&&   r$   rG   9TestNCH.test_nchypergeom_wallenius_naive.<locals>.support  s0    BAqt$BA"B6Mr&   c                 z   <aaaa V S,
          oS! V SSS4      w  rEVVVV3R  lp\        WdV3R7      P                  # )c                 j   < V S,          ^SV ,
          S,          ,
          S,          ,           ^,
          # rK   r   )ur  r  r    r#  s   &r$   funCTestNCH.test_nchypergeom_wallenius_naive.<locals>.mean.<locals>.fun  s(    tqAaC8|a//!33r&   )bracket)r   root)	r!   r  r    r#  r  r  r>  r  rG   s	   &fff   @r$   r   6TestNCH.test_nchypergeom_wallenius_naive.<locals>.mean  s?    RBQAq)FB4 4 sH5:::r&   ignorez!invalid value encountered in mean)categorymessageg{Gz?r   Nc                    < W,
          pS! WW#4      pWQV,
          ,          pW%,
          WT,           V,
          ,          pW,          V,          V ^,
          W,          WF,          ,           ,          ,          # r<  r   )	r!   r  r    r#  r  r=  rw   rx   r   s	   &&&&    r$   variance:TestNCH.test_nchypergeom_wallenius_naive.<locals>.variance  sU    BQA!A!VAqvz"A3q5QqSRTBD[122r&   r4  rr   g?c                 r   <a aaaaa	 VS,
          o	S
! VSSS4      w  rVVV	VVV 3R  loVVV	V3R lpV! S 4      # )c                    < SSS,
          ,          SSS,
          ,
          ,           p^V SV,          ,          ,
          S,          ^V ^V,          ,          ,
          SS,
          ,          ,          pV# r<  r   )tDresr  r  r    r#  rX   s   &  r$   	integrandHTestNCH.test_nchypergeom_wallenius_naive.<locals>.pmf.<locals>.integrand  sQ    rAvJ"!*-QqSzAo1qs8qs(;;
r&   c                    < \        SV 4      p\        SSV ,
          4      p\        S^ ^RRR7      pW,          V^ ,          ,          # )r   gؗҜ<)epsrelepsabs)r   r   )rX   r!  r"  the_integralrN  r  r  r    s   &   r$   r$  @TestNCH.test_nchypergeom_wallenius_naive.<locals>.pmf.<locals>.f  sF    "2q)"2q1u-#Iq!+0 @wa00r&   r   )rX   r!   r  r    r#  r  r  r$  rN  r  rG   s   f&fff   @@r$   r9   5TestNCH.test_nchypergeom_wallenius_naive.<locals>.pmf  s=    RBQAq)FB 
1 1 Q4Kr&   r   r   r  )rE   r]   r^   r   rV   rW   r  r  r   r   warningscatch_warningsfilterwarningsRuntimeWarningr   r   r   r   r9   absr   prodziprF   )r   ra   rW   r  r  r  r!   r    r  r  rX   r#  rG  r9   pmf0pmf1r   r   ir   rG   s   &                  @@r$    test_nchypergeom_wallenius_naive(TestNCH.test_nchypergeom_wallenius_naive  s    ii##A&[[E[.[[E[.GKK177=ZZ14 ZZKKRXXC@HHaggq 	 
	; 
	; $$&&##H~BD166qaC -D: ' 
	3 
	3 $$&&##H~BD%++A1E% ' 
	 
	$ 1"$((ra84dFF4;$bffTl):"::uuw!++++ q!ub!faeQrU;KA1BQA)FB		"1f%A qRA&**,r111155aB1EIIKQO <e '&& '&&s   'AM*-A
M>*M;	>N	c           	     P   ^2p^p^pRp\         P                  ! ^4      p\         P                  ! . R	O4      pRpRp\        \        P
                  ! WQW#V4      VRRR7       \        \        P                  ! WW44      VRR7       \        \        P                  ! WW44      VRR7       R# )
2   g      @gJ򕴝-@gih@r@   )r   r   r   gdy=N)g9T;gr<gD,P=g4 V=g'	,=gCG>gyztj>gt>g+k?g MeGD?gqNZVɒo?gc2n?g~ZN?gE}?Y?g?g·aQ?g]??gr)?gp{?g39	y?g m>?)rE   rF   arrayr   r   r9   r   r   )	r   r   r    r!   r  supr9   r   r   s	   &        r$   test_wallenius_against_mpmath%TestNCH.test_wallenius_against_mpmath3  s     iimhh / 0* "  	-11#!Es"	0-221A5	*-11!@%	)r&   c                    R \         R\        /pW!,          pVP                  ^2^^
.^... RORR7      pVP                  R8X  g   Q hR# )r   r   rQ   N)r   rD   g       @rU   )r   r   rV   rW   )r   r  r  r   rX   s   &&   r$   test_rvs_shapeTestNCH.test_rvs_shape]  sR     &'9(*?AHHRrdRD\?HNww,&&&r&   )r!   r  r    r  rX   N)r   r   r   r   r  r  r  r  r  r5  r`  rf  ri  r  r  r  s   @r$   r
  r
    s     G [[[24KLN4N4 DZPx()T [[[24KLN'N'r&   r
  zmu, q, expectedc                 j    ^pY3W0,           ,          rT\        \        P                  ! WV4      V4       R# rl   )r   r   r   )r   qr"   rR   r    r#   s   &&&   r$   test_nbinom_11465rm  j  s+    
 Dtwq FMM!*H5r&   c                     \         P                  ! ^ ^^4      p Rp\        V4      P                  V 4      pV ^,          ^ 8H  p\	        VR,          V4       \	        V^ ,          ^V,
          4       \        W#( ,          ^ 4       R# )r   g?Nr   )rE   r   r   r9   r   r   )rX   r#   r9   r_  s       r$   test_gh_17146ro  w  sj     	Aq"AA
A,

1
C	
Q!ACGQCFAaC R!r&   c                      a  ] tR tRt o ]P
                  P                  R. RO. R	O. R
O.4      R 4       t]P
                  P                  R. RO. RO. RO.4      R 4       tRt	V t
R# )TestBetaNBinomi  zx, n, a, b, refc                L    \        \        P                  ! WW44      VR R7       R# )r8   r   N)r   r   r9   )r   rX   r    rw   rx   r   s   &&&&&&r$   test_betanbinom_pmf"TestBetaNBinom.test_betanbinom_pmf  s      	
qQ2CeDr&   zn, a, b, refc           	     P    \        \        P                  ! WVR R7      VRR7       R# )r   rr   g [n<r   N)r   r   r   )r   r    rw   rx   r   s   &&&&&r$   test_betanbinom_kurtosis'TestBetaNBinom.test_betanbinom_kurtosis  s"    * 	
((q#>%	)r&   r   N)r+   g    SAr+   rm   g:[Y))r   rc  r+   rm   g dg?)r   r   r+   rm   gL&[>)r   r   rc  g:o?)rJ   rT   rT   g>["@)r   r   rJ   g >[?)r   r   r   r   r  r  r  rs  rv  r  r  r  s   @r$   rq  rq    sr     [[.EBHJKE	KE [[^C:?AB)	B)r&   rq  c                   &   a  ] tR tRt o R tRtV tR# )TestZipfi  c                    \         P                  ! ^ R4      pVP                  \         P                  4      p\	        ^	4      pVP                  V4      pVP                  V4      p\        WE4       R# r   )rE   rF   r   r   r   r9   r   r   s   &     r$   test_gh20692TestZipf.test_gh20692  sP    IIa((288$Awhhqkhhw'S&r&   r   N)r   r   r   r   r{  r  r  r  s   @r$   ry  ry    s     ' 'r&   ry  c                      ! R  R\         P                  4      p V ! \        P                  R7      pRp\        P
                  ! \        VR7      ;_uu_ 4        VP                  R4       RRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )#test_gh20048.<locals>.test_dist_geni  c                (    \        V^d,          R4      # )r   r   )min)r   r   s   &&r$   _cdf(test_gh20048.<locals>.test_dist_gen._cdf  s    q3w%%r&   r   N)r   r   r   r   r  r  r  r  s   @r$   test_dist_genr    s     	& 	&r&   r  )rx   zArguments that bracket...)matchg+?N)r   rv_discreterE   r   r  raisesRuntimeErrorr`   )r  	test_distrE  s      r$   test_gh20048r    sU    &)) & 'I)G	|7	3	3e 
4	3	3	3s   A33B	c                   &   a  ] tR tRt o R tRtV tR# )TestPoissonBinomiali  c                   \         P                  P                  R 4      pVP                  ^
4      p\         P                  ! V^,           4      pVP                  V4      p\
        P                  ! W44      p. ROp\        WV4       R# )l   zb} N)gcƙ?g!)@*?g/_?g?TxY^?gg	SUH?)rE   r]   r   r   rF   r   r9   r   )r   ra   r    r   r#   rM  r   s   &      r$   test_pmfTestPoissonBinomial.test_pmf  sd     ii##L1LLIIa!eJJqM%=!r&   r   N)r   r   r   r   r  r  r  r  s   @r$   r  r    s     " "r&   r  c                   &   a  ] tR tRt o R tRtV tR# )TestRandInti  c                Z   Rp\        V4      p\        V4       Uu. uF  q1R,           V,           NK  	  pp\        P                  ! RW4      pV^ 8  P	                  4       '       g   Q h^\
        P                  ! V\
        P                  R7      V,
          ,          p\        WV4       R# u upi )ib  iE  )dtypeNil        )	rZ  r+  r   r9   allrE   asarrayfloat64r   )r   rw   	max_ranger_  all_b_1rM  r   s   &      r$   test_gh19759TestRandInt.test_gh19759  s    F	,1),<=,<qw;??,<=kk#q*a}}2::gRZZ81<=!	 >s   B(r   N)r   r   r   r   r  r  r  r  s   @r$   r  r    s     " "r&   r  ))rM   rJ   r  r+   g<<?V瞯<)k   r        g?r  )rJ   r   r  r  gS;绽|=)   r   r  r  g?r  )}   r   r  r  g!:<r  ))i,  r   333333?g24?)r  r   r  gU7i(?)i0u  r   r  gέ̑?)i i@B r  g8@
?)i- r   r  gf(G?)i r  gwtg ?)ir  r  gV}ֈ?)ipr  r  gz̍?)i0 r  r  gnC:)i i ʚ;r  g@  ?)l    ^e l    d(	 r  gM|X
 ?)rJ   x   g@	#)i  r   g"qVU)Gr  	itertoolsrV  scipyr   scipy.statsr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   numpyrE   numpy.testingr   r   r   scipy.specialr   scipy.optimizer   scipy.integrater   r  r  r%   r)   r5   r=   rH   rN   rY   rc   rj   ro   productintfloatry   r{   r   r   r   r   r   r   r   r   r   r   r   r   r   r
  rm  ro  rq  ry  r  r  r  r   r&   r$   <module>r     s      1 1 1 1 1
   1 &  
 5:;,;, 56:;<
,<
,
H4)	>C#-&% 9#4#4U|nQ6F#GHP IP%F
E
*$B: / 2 55K
H'-'D  D NN' N'b *;79:6:6	*) *)Z' '" "2	" 	"r&   