
    Ng,                     f    d dl Z d dlmZ  G d dej                  Z G d dej                  ZdS )    Nc                   R     e Zd ZU ej        j        e         ed<   d fd	Zd Z	 xZ
S )SpaceToDepthbs   c                 f    t                                                       |dk    sJ || _        d S )Nr   super__init__r   self
block_size	__class__s     V/var/www/html/ai-engine/env/lib/python3.11/site-packages/timm/layers/space_to_depth.pyr
   zSpaceToDepth.__init__   s1    Q    c                 h   |                                 \  }}}}|                    |||| j        z  | j        || j        z  | j                  }|                    dddddd                                          }|                    ||| j        z  | j        z  || j        z  || j        z            }|S )Nr               r   sizeviewr   permute
contiguousr   xNCHWs         r   forwardzSpaceToDepth.forward   s    VVXX
1aFF1adgtwTWdgFFIIaAq!Q''2244FF1a$'kDG+Q$'\1<HHr   )r   )__name__
__module____qualname__torchjitFinalint__annotations__r
   r!   __classcell__r   s   @r   r   r      sc         	     
      r   r   c                   $     e Zd Z fdZd Z xZS )DepthToSpacec                 V    t                                                       || _        d S )Nr   r   s     r   r
   zDepthToSpace.__init__   s$    r   c                 T   |                                 \  }}}}|                    || j        | j        || j        dz  z  ||          }|                    dddddd                                          }|                    ||| j        dz  z  || j        z  || j        z            }|S )Nr   r   r   r   r   r   r   r   s         r   r!   zDepthToSpace.forward   s    VVXX
1aFF1dgtwdgl(;QBBIIaAq!Q''2244FF1aDGqL)1tw;DGDDr   )r"   r#   r$   r
   r!   r*   r+   s   @r   r-   r-      sG                  r   r-   )r%   torch.nnnnModuler   r-    r   r   <module>r4      s              29        29     r   