+
    –°³j  ã                   ó¾   € ^ RI Ht ^ RIt^ RIHt ^RIHtHtHtHtH	t	 . ROt
RR R lltR R ltRR	 R
 lltR R ltR R ltR R ltR R ltR R ltR R ltR# )é    )ÚIterableN)ÚTensor)Ú
_lazy_callÚ
_lazy_initÚcurrent_deviceÚdevice_countÚis_initializedc                óp   € V ^8„  d   QhR\         \        ,          \        P                  ,          R\        /# )é   ÚdeviceÚreturn)ÚintÚstrÚtorchr   r   )Úformats   "ÚR/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/cuda/random.pyÚ__annotate__r      s'   € ÷ )ñ )œ#¤�)¤e§l¡lÕ2ð )Äñ )ó    c                ó`  € \        4        \        V \        4      '       d   \        P                  ! V 4      p M-\        V \
        4      '       d   \        P                  ! RV 4      p V P                  pVf   \        4       p\        P                  P                  V,          pVP                  4       # )a:  Return the random number generator state of the specified GPU as a ByteTensor.

Args:
    device (torch.device or int, optional): The device to return the RNG state of.
        Default: ``'cuda'`` (i.e., ``torch.device('cuda')``, the current CUDA device).

.. warning::
    This function eagerly initializes CUDA.
Úcuda)r   Ú
isinstancer   r   r   r   Úindexr   r   Údefault_generatorsÚ	get_state)r   ÚidxÚdefault_generators   &  r   Úget_rng_stater      s{   € ô „LÜ�&œ#×ÒÜ—’˜fÓ%‰Ü	�FœC×	 Ò	 Ü—’˜f fÓ-ˆØ
�,‰,€CØ
‚{ÜÓˆÜŸ
™
×5Ñ5°cÕ:ÐØ×&Ñ&Ó(Ð(r   c                ó:   € V ^8„  d   QhR\         \        ,          /# ©r   r   )Úlistr   )r   s   "r   r   r   -   s   € ÷ ñ œ4¤�<ñ r   c                 óf   € \        \        4       4       U u. uF  p \        V 4      NK  	  pp V# u up i )zQReturn a list of ByteTensor representing the random number states of all devices.)Úranger   r   )ÚiÚresultss     r   Úget_rng_state_allr%   -   s/   € ä).¬|«~Ô)>Ó?Ñ)> AŒ}˜QÖÑ)>€GÐ?Ø€Nùò @s   –.c                ót   € V ^8„  d   QhR\         R\        \        ,          \        P                  ,          RR/# )r   Ú	new_stater   r   N)r   r   r   r   r   )r   s   "r   r   r   3   s/   € ÷ ñ œVð ¬S´3­Y¼¿¹Õ-Eð ÐSWñ r   c                óÆ  a a€ \        4       '       gP   \        P                  P                  4       ;_uu_ 4        S P	                  \        P
                  R7      o RRR4       \        S\        4      '       d   \        P                  ! S4      oM-\        S\        4      '       d   \        P                  ! RS4      oVV 3R lp\        V4       R#   + '       g   i     L~; i)a  Set the random number generator state of the specified GPU.

Args:
    new_state (torch.ByteTensor): The desired state
    device (torch.device or int, optional): The device to set the RNG state.
        Default: ``'cuda'`` (i.e., ``torch.device('cuda')``, the current CUDA device).
)Úmemory_formatNr   c                  ó    <€ SP                   p V f   \        4       p \        P                  P                  V ,          pVP                  S4       R # ©N)r   r   r   r   r   Ú	set_state)r   r   r   r'   s     €€r   ÚcbÚset_rng_state.<locals>.cbE   s<   ø€ Ø�l‰lˆØŠ;Ü Ó"ˆCÜ!ŸJ™J×9Ñ9¸#Õ>ÐØ×#Ñ# IÖ.r   )r	   r   Ú_CÚ_DisableFuncTorchÚcloneÚcontiguous_formatr   r   r   r   r   )r'   r   r-   s   ff r   Úset_rng_stater3   3   s�   ù€ ô ×ÒÜ�X‰X×'Ñ'×)Õ)ð "Ÿ™´e×6MÑ6M˜ÓNˆI÷ *ô �&œ#×ÒÜ—’˜fÓ%‰Ü	�FœC×	 Ò	 Ü—’˜f fÓ-ˆö/ô ˆr†N÷! *×)ús   ¹!CÃC 	c                ó>   € V ^8„  d   QhR\         \        ,          RR/# )r   Ú
new_statesr   N)r   r   )r   s   "r   r   r   O   s   € ÷  ñ  ¤(¬6Õ"2ð  °tñ  r   c                óD   € \        V 4       F  w  r\        W!4       K  	  R# )z�Set the random number generator state of all devices.

Args:
    new_states (Iterable of torch.ByteTensor): The desired state for each device.
N)Ú	enumerater3   )r5   r#   Ústates   &  r   Úset_rng_state_allr9   O   s   € ô ˜jÖ)‰ˆÜ�eÖó *r   c                ó(   € V ^8„  d   QhR\         RR/# ©r   Úseedr   N©r   )r   s   "r   r   r   Y   s   € ÷ ñ ”cð ˜dñ r   c                óD   a € \        S 4      o V 3R lp\        VRR7       R# )am  Set the seed for generating random numbers for the current GPU.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

Args:
    seed (int): The desired seed.

.. warning::
    If you are working with a multi-GPU model, this function is insufficient
    to get determinism.  To seed all GPUs, use :func:`manual_seed_all`.
c                  ó€   <€ \        4       p \        P                  P                  V ,          pVP	                  S4       R # r+   )r   r   r   r   Úmanual_seed)r   r   r<   s     €r   r-   Úmanual_seed.<locals>.cbh   s.   ø€ ÜÓˆÜ!ŸJ™J×9Ñ9¸#Õ>ÐØ×%Ñ% dÖ+r   T)r<   N©r   r   ©r<   r-   s   f r   r@   r@   Y   s   ø€ ô ˆt‹9€Dõ,ô
 ˆr˜×r   c                ó(   € V ^8„  d   QhR\         RR/# r;   r=   )r   s   "r   r   r   p   s   € ÷ "ñ "œ#ð " $ñ "r   c                óD   a € \        S 4      o V 3R lp\        VRR7       R# )zÂSet the seed for generating random numbers on all GPUs.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

Args:
    seed (int): The desired seed.
c                  ó    <€ \        \        4       4       F5  p \        P                  P                  V ,          pVP                  S4       K7  	  R # r+   )r"   r   r   r   r   r@   )r#   r   r<   s     €r   r-   Úmanual_seed_all.<locals>.cb{   s7   ø€ Ü”|“~Ö&ˆAÜ %§
¡
× =Ñ =¸aÕ @ÐØ×)Ñ)¨$Ö/ó 'r   T)Úseed_allNrB   rC   s   f r   Úmanual_seed_allrI   p   s   ø€ ô ˆt‹9€Dõ0ô
 ˆr˜D×!r   c                ó   € V ^8„  d   QhRR/# ©r   r   N© )r   s   "r   r   r   ƒ   s   € ÷ ñ ˆdñ r   c                 ó"   € R p \        V 4       R# )a\  Set the seed for generating random numbers to a random number for the current GPU.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

.. warning::
    If you are working with a multi-GPU model, this function will only initialize
    the seed on one GPU.  To initialize all GPUs, use :func:`seed_all`.
c                  ó|   € \        4       p \        P                  P                  V ,          pVP	                  4        R # r+   )r   r   r   r   r<   ©r   r   s     r   r-   Úseed.<locals>.cbŽ   s+   € ÜÓˆÜ!ŸJ™J×9Ñ9¸#Õ>ÐØ×ÑÖ r   N©r   ©r-   s    r   r<   r<   ƒ   s   € ò!ô
 ˆr†Nr   c                ó   € V ^8„  d   QhRR/# rK   rL   )r   s   "r   r   r   –   s   € ÷ ñ �$ñ r   c                 ó"   € R p \        V 4       R# )z¬Set the seed for generating random numbers to a random number on all GPUs.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.
c                  óþ   € ^ p Rp\        \        4       4       Fa  p\        P                  P                  V,          pV'       g%   VP                  4        VP                  4       p RpKP  VP                  V 4       Kc  	  R# )r   FTN)r"   r   r   r   r   r<   Úinitial_seedr@   )Úrandom_seedÚseededr#   r   s       r   r-   Úseed_all.<locals>.cb�   sb   € ØˆØˆÜ”|“~Ö&ˆAÜ %§
¡
× =Ñ =¸aÕ @ÐßØ!×&Ñ&Ô(Ø/×<Ñ<Ó>�Ø’à!×-Ñ-¨kÖ:ó 'r   NrQ   rR   s    r   rH   rH   –   s   € ò
;ô ˆr†Nr   c                ó$   € V ^8„  d   QhR\         /# r   r=   )r   s   "r   r   r   ¬   s   € ÷ 	,ñ 	,”cñ 	,r   c                 óŒ   € \        4        \        4       p \        P                  P                  V ,          pVP                  4       # )zmReturn the current random seed of the current GPU.

.. warning::
    This function eagerly initializes CUDA.
)r   r   r   r   r   rV   rO   s     r   rV   rV   ¬   s5   € ô „LÜ
Ó
€CÜŸ
™
×5Ñ5°cÕ:ÐØ×)Ñ)Ó+Ð+r   )	r   r%   r3   r9   r@   rI   r<   rH   rV   )r   )Úcollections.abcr   r   r   Ú r   r   r   r   r	   Ú__all__r   r%   r3   r9   r@   rI   r<   rH   rV   rL   r   r   Ú<module>r_      sH   ðå $ã Ý ç RÕ Rò
€÷)õ,÷õ8 õõ."õ&õ&÷,	,r   