+
     Bi                     ~   ^ RI HtHtHtHtH	t
 ^ RI HtHtHtHt ^ RI HtHtHt ^ RI HtHtHt ^ RIH t! ^ RI"H#t$ ^ RI%H&t' ^ RI(H)t*H+t, ^ R	I-H-t. ^ R
It/^ R
I0t0. ROt1^]! R4      ,          ]! R4      ,          t2]! R4      t3R]! R4      ,           t4^5t5^]5) ,          t6^t7R
s8 ! R R]0Pr                  4      t9 ! R R]94      t:]9! 4       t;];Px                  t<];Pz                  t=];P|                  t>];P~                  t?];P                  t@];P                  tA];P                  tB];P                  tC];P                  tD];P                  tE];P                  tF];P                  tG];P                  tH];P                  tI];P                  tJ];P                  tK];P                  tL];P                  tM];P                  tN];P                  tO];P                  tP];P                  tQ];P                  tR];P                  tSR tTRR ltU]V! ]/R4      '       d   ]/P                  ! ];Px                  R7       R R ltXRR R lltY]ZR8X  d   ][! ]Y! 4       4       R
# R
# )     )logexppieceil)sqrtacoscossin)taufloorisfinite)lgammafabslog2)urandom)Sequence)index)
accumulaterepeat)bisectNRandomSystemRandom       @      @      ?      @c                   >  a a ] tR t^gt o^tR#R ltR$V 3R lltV 3R ltV 3R ltR t	R t
R tR	 tR
 t^],          3R lt]tR tR]3R ltR tR tR tRR/R ltR#RRR^/R lltR tR%R ltR&R ltR&R ltR tR'R ltR tR t R t!R t"R  t#R(R! lt$R"t%Vt&V ;t'# ))r   Nc                6    V P                  V4       R V n        R # N)seed
gauss_next)selfxs   &&/usr/lib/python3.14/random.py__init__Random.__init__w   s     			!    c           	     z  < V^8X  d   \        V\        \        34      '       d   \        V\        4      '       d   VP                  R4      MTpV'       d   \	        V^ ,          4      ^,          M^ p\        \        V4       F  pRV,          V,          R,          pK  	  V\        V4      ,          pVR8X  d   RMTpMV^8X  d   \        V\        \        \        34      '       dj   \        f    ^ RI	H
s \        V\        4      '       d   VP                  4       p\        P                  V\        V4      P!                  4       ,           4      pM@\        V\#        R4      \        \$        \        \        \        34      '       g   \'        R4      h\(        SV `U  V4       RV n        R#   \         d
    ^ RIH
s  Li ; i)	   zlatin-1iCB l    N)sha512zOThe only supported seed types are:
None, int, float, str, bytes, and bytearray.)
isinstancestrbytesdecodeordmaplen	bytearray_sha512_sha2r+   ImportErrorhashlibencodeint
from_bytesdigesttypefloat	TypeErrorsuperr!   r"   )r#   aversionr$   c	__class__s   &&&  r%   r!   Random.seed   sI   $ a<Jq3,77'1!U';';#A"#AaD	QAa[kQ&*<< !QKA2g1A\jS%,CDD: 8
 !S!!HHJq71:#4#4#667AAT
CUINOO K L L 	Q # :9:s   .F& &F:9F:c                N   < V P                   \        SV `	  4       V P                  3# r    )VERSIONrA   getstater"   )r#   rE   s   &r%   rI   Random.getstate   s     ||UW-/@@r(   c                f  < V^ ,          pV^8X  d   Vw  r#V n         \        SV `	  V4       R# V^8X  dI   Vw  r#V n          \        ;QJ d    . R V 4       F  NK  	  5M! R V 4       4      p\        ST `	  T4       R# \	        RV: RV P                  : 24      h  \         d   p\
        ThRp?ii ; i)r   c              3   2   "   T F  qR,          x  K  	  R# 5i)   Nl         ).0r$   s   & r%   	<genexpr>"Random.setstate.<locals>.<genexpr>   s     %K]7mm]s   Nzstate with version z( passed to Random.setstate() of version )r"   rA   setstatetuple
ValueErrorr@   rH   )r#   staterC   internalstater   rE   s   &&   r%   rR   Random.setstate   s    (a<6;3GDOG]+\6;3GDO
' %%K]%K%K]%K K G]+%t||5 6 6	  'Q&'s   ,B B0$B++B0c                "    V P                  4       # r    )rI   r#   s   &r%   __getstate__Random.__getstate__   s    }}r(   c                (    V P                  V4       R # r    )rR   )r#   rU   s   &&r%   __setstate__Random.__setstate__   s    er(   c                <    V P                   RV P                  4       3# )NrN   )rE   rI   rY   s   &r%   
__reduce__Random.__reduce__   s    ~~r4==?22r(   c                   V P                    Fa  pR VP                  9   d    R# RVP                  9   d   V P                  V n         R# RVP                  9   g   KO  V P                  V n         R# 	  R# )
_randbelowgetrandbitsrandomN)__mro____dict___randbelow_with_getrandbitsrc   _randbelow_without_getrandbits)clskwargsrD   s   ", r%   __init_subclass__Random.__init_subclass__   sY     Aqzz)

*!$!@!@1::%!$!C!C r(   c                z    VP                  4       pV P                  V4      pW18  d   V P                  V4      pK  V# r    )
bit_lengthrd   )r#   nkrs   &&  r%   rh   "Random._randbelow_with_getrandbits   s9     LLNQf  #Ar(   c                    V P                   pW8  d&   ^ RIHp V! R4       \        V! 4       V,          4      # W!,          pW%,
          V,          pV! 4       pWv8  d
   V! 4       pK  \        Wr,          4      V,          # )r   )warnzUnderlying random() generator does not supply 
enough bits to choose from a population range this large.
To remove the range limitation, add a getrandbits() method.)re   warningsru   _floor)r#   rp   maxsizere   ru   remlimitrr   s   &&&     r%   ri   %Random._randbelow_without_getrandbits   so     <% O P &(Q,''k')HjAak"Q&&r(   c                R    V P                  V^,          4      P                  VR4      # )   little)rd   to_bytesr#   rp   s   &&r%   	randbytesRandom.randbytes  s$    A&//8<<r(   c           	     <   \        V4      pVf9   V\        Jd   \        R4      hV^ 8  d   V P                  V4      # \	        R4      h\        V4      pWT,
          p\        V4      pV^8X  d1   V^ 8  d   W@P                  V4      ,           # \	        RV RV R24      hV^ 8  d   Wg,           ^,
          V,          pM)V^ 8  d   Wg,           ^,           V,          pM\	        R4      hV^ 8:  d   \	        RV RV RV R24      hWGV P                  V4      ,          ,           # )Nz Missing a non-None stop argumentzempty range for randrange()zempty range in randrange(, )zzero step for randrange())_index_ONEr@   rc   rT   )	r#   startstopstepistartistopwidthisteprp   s	   &&&&     r%   	randrangeRandom.randrange&  s    < 4 BCCzv..:;; ttA:qy 6668r$qIJJ 19"u,AQY"u,A89968r$r$qQRR 2222r(   c                    \        V4      p\        V4      pW!8  d   \        R V RV R24      hWP                  W!,
          ^,           4      ,           # )zempty range in randint(r   r   )r   rT   rc   r#   rB   bs   &&&r%   randintRandom.randintO  sN     1I1I56qcA3a@AA??1519---r(   c                z    \        V4      '       g   \        R 4      hWP                  \        V4      4      ,          # )z$Cannot choose from an empty sequence)r4   
IndexErrorrc   )r#   seqs   &&r%   choiceRandom.choice[  s/    
 3xxCDD??3s8,--r(   c                    V P                   p\        \        ^\        V4      4      4       F'  pV! V^,           4      pW,          W,          uW&   W&   K)  	  R# )r*   N)rc   reversedranger4   )r#   r$   	randbelowijs   &&   r%   shuffleRandom.shuffled  sH     OO	%3q6*+A!a% AqtJAD!$ ,r(   countsc                  \        V\        4      '       g   \        R 4      h\        V4      pVe   \	        \        V4      4      p\        V4      V8w  d   \        R4      hV'       d   VP                  4       M^ p\        V\        4      '       g   \        R4      hV^ 8  d   \        R4      hV P                  \        V4      VR7      p\        pV U	u. uF  qV! WY4      ,          NK  	  up	# V P                  p
^ Tu;8:  d   V8:  g   M \        R4      hR.V,          p^pV^8  d+   V^\        \        V^,          ^4      4      ,          ,          pWL8:  dP   \	        V4      p\        V4       F3  pV
! WN,
          4      pW,          W&   WV,
          ^,
          ,          W&   K5  	  V# \        4       pVP                   p\        V4       F.  pV
! V4      pVV9   d   V
! V4      pK  V! V4       W,          W&   K0  	  V# u up	i )zAPopulation must be a sequence.  For dicts or sets, use sorted(d).Nz2The number of counts does not match the populationzCounts must be integerszCounts must be non-negative)rq   z,Sample larger than population or is negative)r.   	_Sequencer@   r4   list_accumulaterT   popr;   sampler   _bisectrc   _ceil_logsetadd)r#   
populationrq   r   rp   
cum_countstotal
selectionsr   sr   resultsetsizepoolr   r   selectedselected_adds   &&&$              r%   r   Random.samplem  s   j *i00 @ A A
Ok&12J:!# !UVV(2JNN$EeS)) 9::qy !>??U5\Q7JF?IJz!vj455zJJOO	A{{KLL!q5qE$q1ua.111G< 
#D1Xae$ G	1uqy/   uH#<<L1XaL8m!!AQ&M	  3 Ks   G<cum_weightsrq   c          
        V P                   p\        V4      pVf^   VfD   \        pVR,          p\        R V4       Uu. uF  qV! V! 4       V,          4      ,          NK  	  up#  \	        \        V4      4      pMVe   \        R4      h\        V4      V8w  d   \        R4      hVR,          R,           p	V	R8:  d   \        R4      h\        V	4      '       g   \        R4      h\        p
V^,
          p\        R V4       Uu. uF  pW! W5! 4       V	,          ^ V4      ,          NK!  	  up# u upi   \         d+    \        T\        4      '       g   h Tp\        RT: 24      R hi ; iu upi )N        z4The number of choices must be a keyword argument: k=z2Cannot specify both weights and cumulative weightsz3The number of weights does not match the populationz*Total of weights must be greater than zerozTotal of weights must be finiter,   )re   r4   rw   _repeatr   r   r@   r.   r;   rT   	_isfiniter   )r#   r   weightsr   rq   re   rp   r   r   r   r   his   &&&$$       r%   choicesRandom.choices  sp    
OSAHqAQRAQA5A#677AQRR";w#78  PQQ{q RSSB#%C<IJJ>??U q)+)A 6+vx%/?BGHH)+ 	++ S  !'3//KM	$+s   #D&$D+ >%E#+5E c                J    WV,
          V P                  4       ,          ,           # r    re   r   s   &&&r%   uniformRandom.uniform  s     ET[[]***r(   c                    V P                  4       p Vf   RMW1,
          W!,
          ,          pYE8  d   RT,
          pRT,
          pY!r!YT,
          \        YE,          4      ,          ,           #   \         d    Tu # i ; i)N      ?r   )re   ZeroDivisionError_sqrt)r#   lowhighmodeurD   s   &&&&  r%   
triangularRandom.triangular  st     KKM	|$*)DA 5aAaASjE!%L000 ! 	J	s   A, ,A<;A<c                    V P                   p V! 4       pRV! 4       ,
          p\        VR,
          ,          V,          pWf,          R,          pV\        V4      ) 8:  g   KS   YT,          ,           # )Tr   r   r   )re   NV_MAGICCONSTr   )r#   musigmare   u1u2zzzs   &&&     r%   normalvariateRandom.normalvariate  s\     BvxBc*R/ABd2hYI~r(   c                *   V P                   pV P                  pR V n        Vfc   V! 4       \        ,          p\        R\	        RV! 4       ,
          4      ,          4      p\        V4      V,          p\        V4      V,          V n        WV,          ,           # )Nr   g       )re   r"   TWOPIr   r   _cos_sin)r#   r   r   re   r   x2pig2rads   &&&    r%   gaussRandom.gauss-  sr    6 OO98e#D$cFHn!556ET
U"A"4j50DOI~r(   c                6    \        V P                  W4      4      # r    )_expr   )r#   r   r   s   &&&r%   lognormvariateRandom.lognormvariateS  s     D&&r122r(   c                R    \        R V P                  4       ,
          4      ) V,          # r   )r   re   )r#   lambds   &&r%   expovariateRandom.expovariate]  s"    $ S4;;=())E11r(   c                P   V P                   pVR 8:  d   \        V! 4       ,          # RV,          pV\        RWD,          ,           4      ,           p V! 4       p\        \        V,          4      pWuV,           ,          pV! 4       p	V	RW,          ,
          8  g!   V	RV,
          \        V4      ,          8:  g   Kh   RT,          p
Y,           RY,          ,           ,          pT! 4       pTR8  d    T\        T4      ,           \        ,          pT# T\        T4      ,
          \        ,          pT# )gư>r   r   )re   r   r   r   _pir   _acos)r#   r   kappare   r   rr   r   r   dr   qfu3thetas   &&&           r%   vonmisesvariateRandom.vonmisesvariateq  s      D=68##%KcAEk""BS2XAUABC!%K2#'T!W)<#<!GUsQU{#X8%(]e+E  %(]e+Er(   c                   VR 8:  g   VR 8:  d   \        R4      hV P                  pVR8  d   \        RV,          R,
          4      pV\        ,
          pW,           p V! 4       pRTu;8  d   R8  g   M K  RV! 4       ,
          p\	        VRV,
          ,          4      V,          p	V\        V	4      ,          p
Ww,          V,          pWVV	,          ,           V
,
          pV\        ,           RV,          ,
          R 8  g   V\	        V4      8  g   K  W,          # VR8X  d    \	        RV! 4       ,
          4      ) V,          #  V! 4       p\        V,           \        ,          pW,          pVR8:  d   VRV,          ,          p
M\	        W,
          V,          4      ) p
V! 4       pVR8  d    WzVR,
          ,          8:  d
    W,          # K  V\        V
) 4      8:  g   K   W,          # )r   z*gammavariate: alpha and beta must be > 0.0r   r   gHz>gP?r   )rT   re   r   LOG4r   r   SG_MAGICCONST_e)r#   alphabetare   ainvbbbcccr   r   vr$   r   rr   r   r   ps   &&&             r%   gammavariateRandom.gammavariate  s   ( C<43;IJJ3; us*+D$,C,CXb,9,68^sRx)D0DGOGbL'MA%}$sQw.#5d1g8Oc\vx((4//
 H%Z2%E8cEk*Aquo..AXs753;// 8O	 048^8Or(   c                x    V P                  VR 4      pV'       d    W3V P                  VR 4      ,           ,          # R# )r   r   )r  )r#   r   r   ys   &&& r%   betavariateRandom.betavariate  s7    6 eS)D--dC8899r(   c                P    R V P                  4       ,
          pVRV,          ,          # )r   g      r   )r#   r   r   s   && r%   paretovariateRandom.paretovariate   s#     $++-TE\""r(   c                r    R V P                  4       ,
          pV\        V4      ) R V,          ,          ,          # r   )re   r   )r#   r   r   r   s   &&& r%   weibullvariateRandom.weibullvariate  s.     $++-acDj111r(   c                   V^ 8  d   \        R4      hVR8:  g   VR8  d   VR8X  d   ^ # VR8X  d   V# \        R4      hV P                  pV^8X  d   \        V! 4       V8  4      # VR8  d    WP                  VRV,
          4      ,
          # W,          R8  db   ^ ;rE\	        RV,
          4      pV'       g   V#  V\        \	        V! 4       4      V,          4      ^,           ,          pWQ8  d   V# V^,          pKB  Rp\        W,          RV,
          ,          4      pR	R
V,          ,           p	RRV	,          ,           RV,          ,           p
W,          R,           pRRV	,          ,
          p V! 4       pVR,          pR\        V4      ,
          p\        RV
,          V,          V	,           V,          V,           4      pV^ 8  g   W8  d   K`  V! 4       pVR8  d	   W8:  d   V# V'       g|   RRV	,          ,           V,          p\        VRV,
          ,          4      p\        V^,           V,          4      p\        V^,           4      \        VV,
          ^,           4      ,           pRpVXWV,          ,          V	,           ,          ,          p\        V4      X\        V^,           4      ,
          \        W,
          ^,           4      ,
          VX,
          X,          ,           8:  g   EKy  V# )r   zn must be non-negativer   r   z&p must be in the range 0.0 <= p <= 1.0r   g      $@TFgffffff?g=
ףp=@ga+e?{Gz?gq=
ףp?g@r   gQ?gp=
ף@gffffff@gEJY)
rT   re   r   binomialvariate_log2rw   r   _fabsr   _lgamma)r#   rp   r  re   r$   r  rD   setup_completespqr   rB   vrr   usrq   r   r   lpqmhs   &&&                 r%   r  Random.binomialvariate  s]   . q55668qCxCxCxEFF 6&(Q,'' s7++AsQw77754< IAcAgAVE&(Oa/01445HQ
 AES1W%&4#:fqj 4!8+ECKC!G^AHAuQxBa"q(A-12A1u ATzag
 "a3.1a=)AEQ;'AENWQUQY%77!%!Bw-!+,,AAw!ga!en,wquqy/AAQUcMQQr(   )r"   r    )NrM   )r   r   Nr   r   r   )r*   r   )(__name__
__module____qualname____firstlineno__rH   r&   r!   rI   rR   rZ   r]   r`   rl   rh   BPFri   rc   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r	  r  r  __static_attributes____classdictcell____classcell__)rE   __classdict__s   @@r%   r   r   g   s      G.`A6B3( 9:3 '( -J= %)t '3R..$]d ]~#+t #+q #+P	+12*$L32((TCJ@#	2\ \r(   c                   F   a  ] tR tRt o R tR tR tR tR t];t	t
RtV tR# )	r   ix  c                b    \         P                  \        ^4      4      ^,	          \        ,          # )   )r;   r<   _urandom	RECIP_BPFrY   s   &r%   re   SystemRandom.random  s    x{+q0I==r(   c                    V^ 8  d   \        R4      hV^,           ^,          p\        P                  \        V4      4      pW2^,          V,
          ,	          # )r   z#number of bits must be non-negative)rT   r;   r<   r)  )r#   rq   numbytesr$   s   &&  r%   rd   SystemRandom.getrandbits  sG    q5BCCEa<NN8H-.\A%&&r(   c                    \        V4      # r    )r)  r   s   &&r%   r   SystemRandom.randbytes  s     {r(   c                    R # r    rN   r#   argskwdss   &*,r%   r!   SystemRandom.seed  s    r(   c                    \        R 4      h)z*System entropy source does not have state.)NotImplementedErrorr2  s   &*,r%   _notimplementedSystemRandom._notimplemented  s    !"NOOr(   rN   N)r  r  r  r   re   rd   r   r!   r8  rI   rR   r"  r#  )r%  s   @r%   r   r   x  s+     >'P *)Hxr(   c                 F   ^ RI HpHp ^ RIHp V! 4       p\        RV 4       Uu. uF  qq! V!  NK
  	  ppV! 4       p	V! V4      p
V! W4      p\        V4      p\        V4      p\        W,
          R RV  RVP                   V: 24       \        RWW3,          4       R# u upi )r   )stdevfmean)perf_counterNz.3fz sec, z times z"avg %g, stddev %g, min %g, max %g
)

statisticsr;  r<  timer=  r   minmaxprintr  )rp   funcr3  r;  meanr=  t0r   datat1xbarr   r   r   s   &&&           r%   _test_generatorrI    s    /!	B!(q!12!1AD$K!1D2	B:D$E
d)Ct9D	RWSMs'$--
AB	
/42J
JK 3s   Bc                 j   \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \
        R4       \        V \
        R4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R	4       \        V \        R
4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R4       \        V \        R4       R# )r   NrN   r  )   g333333?)d   g      ?)r  r   )皙?r   )rM  r   )r   r   )g?r   )r   r   )r   r   )g      4@r   )g      i@r   )      @rN  )r   r   gUUUUUU?)
rI  re   r   r   r   r  r  r   r  r   )Ns   &r%   _testrP    s    Avr"A}j1A~z2A
3A
3A4A|[1A|Z0A|Z0A|Z0A|Z0A|Z0A|Z0A|[1A|\2Auj)A{J/Az#89r(   fork)after_in_childc                H    V ^8  d   QhR\         \        ,          R,          /# )rM   arg_listN)r   r/   )formats   "r%   __annotate__rV    s     & &$s)d* &r(   c                    ^ RI pVP                  VP                  RR7      pVP                  4       pVP	                  RRRRR7       VP	                  R	R
\
        RRR7       VP	                  RR\        RRR7       VP	                  R\
        RRVP                  R7       VP	                  RRRR7       VP                  V 4      pWBP                  4       3# )r   NT)formatter_classcolorz-cz--choice+zprint a random choice)nargshelpz-iz	--integerrO  z0print a random integer between 1 and N inclusive)r>   metavarr\  z-fz--floatz>print a random floating-point number between 0 and N inclusivez--test'  ?)r>   constr[  r\  input*zif no options given, output depends on the input
    string or multiple: same as --choice
    integer: same as --integer
    float: same as --float)
argparseArgumentParserRawTextHelpFormatteradd_mutually_exclusive_groupadd_argumentr;   r?   SUPPRESS
parse_argsformat_help)rT  rc  parsergroupr3  s   &    r%   _parse_argsrm    s    $$ 55T % CF//1E	j$  & 
kS?  A 
ieSM  O 
s&    s   X&D##%%%r(   c                j    V ^8  d   QhR\         \        ,          R,          R\        \        ,          /# )rM   rT  Nreturn)r   r/   r;   )rU  s   "r%   rV  rV    s'     $ $49t# $sSy $r(   c                    \        V 4      w  rVP                  '       d   \        VP                  4      # VP                  e   \        ^VP                  4      # VP                  e   \        ^ VP                  4      # VP                  '       d   \        VP                  4       R# \        VP                  4      ^8X  d,   VP                  ^ ,          p \        V4      p\        ^V4      # \        VP                  4      ^8  d   \        VP                  4      # V#   \         dH     \	        T4      p\        ^ T4      u #   \         d    \        TP                  4       4      u u # i ; ii ; i)N )rm  r   integerr   r?   r   testrP  r4   ra  r;   rT   split)rT  r3  	help_textvals   &   r%   mainrw    s!   !(+OD {{{dkk""||q$,,''zzq$**%%yyydii 4::!jjm	+c(C1c?" 4::!djj!!  	++Cjq#& +ciik**+	+s0   D E.(E>E.$E*%E.)E**E.__main__)r   r   r  r  r   r   r   r  r   rd   rI   r   r   r	  r   r   re   r   r   r!   rR   r   r   r   r   r  g      )r^  r    )\mathr   r   r   r   r   r   r   r   r   r   r   r   r	   r   r
   r   r   r   r   r   r   rw   r   r   r   r  r   r  r   r  osr   r)  _collections_abcr   r   operatorr   r   	itertoolsr   r   r   r   r   r   _os_random__all__r   r   r   r!  r*  r   r6   r   r   _instr!   re   r   r   r   r   r   r   r   r   r   r   r   r   r  r   r  r  r	  r  rI   rR   rd   r   rI  rP  hasattrregister_at_forkrm  rw  r  rB  rN   r(   r%   <module>r     s  j M L G G E E @ @ " 2 $ B $  : DJs+Cyd3i#I	
JW^^ Jb"*6 "*X 	zz	
--

--	OO		
--
--##%%''!!''##%%>>>>OO	L":0 3

3&6$N z	$&M r(   