
    Kh                        S SK rS SKrS SKJr  S SKJr  \" 5       r\R                  R                  r
\R                  R                  rS r\R                  " \SS9rSrS r\R$                  R'                  \" 5       5      rS	 r\" 5       r\" 5       r\R0                  \4:X  d   e\R0                  \R0                  :X  d   e\" \S
S9r\" \S S\ S35        \" \S
S9r\" \S S\ S35        \R8                  R:                  r\R8                  R>                  r \R                  " SS9S 5       r!\" \!" SS\ RD                  5      5        \R                  " SS9S 5       r#\#" SSS\ RD                  5        g)    N)PCG64)timeitc                    [         R                  " U 5      n[        U S-   S-  5       H  nS[        U5      -  S-
  nS[        U5      -  S-
  nXD-  XU-  -   nUS:  d  US:X  a;  S[        U5      -  S-
  nS[        U5      -  S-
  nXD-  XU-  -   nUS:  a  M3  US:X  a  M;  [         R                  " S[         R
                  " U5      -  U-  5      nXt-  USU-  '   SU-  S-   U :  d  M  Xu-  USU-  S-   '   M     U$ )N      g       @g      ?g        g       )npemptyrangenext_dsqrtlog)nstateoutix1x2r2fs           X/var/www/html/env/lib/python3.13/site-packages/numpy/random/_examples/numba/extending.pynormalsr      s   
((1+CAEa< 6%= 3&6%= 3&WrwCi29ve}$s*Bve}$s*B27"B Ci29 GGD266":%*+VAE
q519q=VCA	N ! J    T)nopythoni'  c                  *    [        [        [        5      $ )N)normalsjr   
state_addr r   r   	numbacallr       s    Az""r   c                  0    [         R                  [        S9$ )N)size)rgnormalr   r   r   r   	numpycallr#   %   s    99!9r   i  )numberz.2fz
 secs for z% PCG64 (Numba/PCG64) gaussian randomsz% PCG64 (NumPy/PCG64) gaussian randomsc                     X-
  =p4X3S-	  -  nX3S-	  -  nX3S-	  -  nX3S-	  -  nX3S-	  -  n[        U5      U-  nXT:  a  [        U5      U-  nXT:  a  M  X-   $ )Nr   r            )next_u32)lbubr   maskdeltavals         r   bounded_uintr/   8   sy    7DAIDAIDAIDAIDBJD
5/D
 C
+uo$ + 8Or   iC  iC$ c                     [         R                  " U[         R                  S9n[        U5       H  n[	        XU5      XE'   M     g )N)dtype)r   r	   uint32r
   r/   )r*   r+   r   r   r   r   s         r   bounded_uintsr3   K   s2    
((1BII
&C1Xbe, r   i )$numpyr   numbanbnumpy.randomr   r   bit_gencffinext_doubler   state_addressr   r   jitr   r   r   random	Generatorr!   r#   r1r   shapet1printt2ctypesnext_uint32r)   r   ctypes_stater/   valuer3   r   r   r   <module>rH      s}      
'		!	!\\''
" 66'D)	# YY! [[	xxA4 	xx288 Id# C
1#BC DId# C
1#BC D >>%%~~##  l3!3!34 5 - - c7Hl&8&8 9r   