
    `i                     z    d dl Z d dlmZ d dlmZ d dlZd dlZd dlmZ  G d de          Z	 G d de          Z
dS )	    N)reduce)
deprecated)Functionc                   `    e Zd Ze ede          d                         Zed             ZdS )Typezt`torch.autograd._functions.Type` is deprecated as of PyTorch 2.1, please use `torch.tensor.to(dtype=dtype)` instead.)categoryc                     t          |          | _        |j        sdn|                                | _        |                     |          S N)type
input_typeis_cuda
get_deviceinput_device)ctxi	dest_types      t/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/torch/autograd/_functions/tensor.pyforwardzType.forward   s>     a%&YB22ALLNNvvi       c                    | j         dk    r|                    | j                  d fS t          j                            | j                   5  |                    | j                  d fcd d d            S # 1 swxY w Y   d S r
   )r   r   r   torchacceleratordevice_indexr   grad_outputs     r   backwardzType.backward   s    r!!##CN33T99"//0@AA > >"''77=> > > > > > > > > > > > > > > > > >s   A55A9<A9N)__name__
__module____qualname__staticmethodr   FutureWarningr   r    r   r   r   r      sn        Z	=  
! !  \!
 > > \> > >r   r   c                   :    e Zd Zed             Zed             ZdS )Resizec                 "   || _         t          t          j        |d          | _        |                                | j        k    rt          d                    d                    t          t          |                    | j        d                    t          t          |
                                                    |                                                    |
                                | _        |j        r1|                    |            |                                j        | S |                                r1 |                    |                                          j        | }|S  |                                j        | S )N   zrequested resize to {} ({} elements in total), but the given tensor has a size of {} ({} elements). autograd's resize can only change the shape of a given tensor, while preserving the number of elements. x)sizesr   operatormulnumelRuntimeErrorformatjoinmapstrsizeinput_sizesis_quantizedcopy_
contiguousviewis_contiguousnew)r   tensorr)   results       r   r   zResize.forward"   sJ   	8<22	<<>>SY&&H &HHSe__--IHHSfkkmm4455LLNN	    !++-- 	4LL   +6$$&&+U33!! 	49VZZ''224495AFM+6$$&&+U33r   c                     |                                 | j         k    sJ |                                                    | j                  d fS )N)r,   r6   r7   r3   r   s     r   r   zResize.backward>   sH      ""ci////%%'',,S_==tCCr   N)r   r   r    r!   r   r   r#   r   r   r%   r%   !   sM        4 4 \46 D D \D D Dr   r%   )r*   	functoolsr   typing_extensionsr   r   torch._utilstorch.autograd.functionr   r   r%   r#   r   r   <module>rA      s           ( ( ( ( ( (      , , , , , ,> > > > >8 > > >, D  D  D  D  DX  D  D  D  D  Dr   