
    sg&                     P    d dl Z dgZ G d de j                  j                        Zy)    NDropoutc                   >    e Zd ZdZd Zd Zedd       Zed        Zy)r   a`  This is the quantized equivalent of :class:`~torch.nn.Dropout`.
        And this is a placeholder to enable models where fp32 tensors
        had dropout to work with quantized tensors in train and eval mode.

    Args:
        p: probability of an element to be zeroed
        inplace: can optionally do the operation in-place. Default: ``False``
    c                     |S N )selfinputs     X/var/www/html/venv/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/dropout.pyforwardzDropout.forward   s        c                      y)NQuantizedDropoutr   )r   s    r
   	_get_namezDropout._get_name   s    !r   c                 <     | |j                   |j                        S r   pinplace)clsmoduse_precomputed_fake_quants      r
   
from_floatzDropout.from_float       355#++&&r   c                 <     | |j                   |j                        S r   r   )r   r   scale
zero_points       r
   from_referencezDropout.from_reference   r   r   N)F)	__name__
__module____qualname____doc__r   r   classmethodr   r   r   r   r
   r   r      s9    " ' ' ' 'r   )torch__all__nnr   r   r   r
   <module>r%      s'     +'ehh 'r   