
    kh,                     l    d dl Z d dlmZ  G d dej                        Z G d dej                        Zy)    Nc                   `     e Zd ZU ej                  j
                  e   ed<   d fd	Zd Z	 xZ
S )SpaceToDepthbsc                 >    t         |           |dk(  sJ || _        y )N   super__init__r   self
block_size	__class__s     V/var/www/teggl/fontify/venv/lib/python3.12/site-packages/timm/layers/space_to_depth.pyr
   zSpaceToDepth.__init__   s!    Q    c                    |j                         \  }}}}|j                  |||| j                  z  | j                  || j                  z  | j                        }|j                  dddddd      j	                         }|j                  ||| 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    VVX
1aFF1adggtwwTWWdggFIIaAq!Q'224FF1a$''kDGG+Q$''\1<Hr   )r   )__name__
__module____qualname__torchjitFinalint__annotations__r
   r!   __classcell__r   s   @r   r   r      s     		
r   r   c                   $     e Zd Z fdZd Z xZS )DepthToSpacec                 0    t         |           || _        y )Nr   r   s     r   r
   zDepthToSpace.__init__   s    r   c                 h   |j                         \  }}}}|j                  || j                  | j                  || j                  dz  z  ||      }|j                  dddddd      j	                         }|j                  ||| j                  dz  z  || j                  z  || j                  z        }|S )Nr   r   r   r   r   r   r   r   s         r   r!   zDepthToSpace.forward   s    VVX
1aFF1dggtwwdggl(;QBIIaAq!Q'224FF1aDGGqL)1tww;DGGDr   )r"   r#   r$   r
   r!   r*   r+   s   @r   r-   r-      s    r   r-   )r%   torch.nnnnModuler   r-    r   r   <module>r4      s+     299  299 r   