Ë
    éÓ^jV  ã                   ó2   — d Z ddlmZ ddlmZ ddlmZ d„ Zy)zQ Create Conv2d Factory Method

Hacked together by / Copyright 2020 Ross Wightman
é   )ÚMixedConv2d)Ú
CondConv2d)Úcreate_conv2d_padc                 óL  — t        |t        «      r=d|vsJ ‚d|v r#|j                  d«      }|| k(  rd|d<   n|dk(  sJ ‚t        | ||fi |¤Ž}|S |j                  dd«      }|r| n|j                  dd«      }d|v r|d   dkD  rt	        | ||fd|i|¤Ž}|S t        | ||fd|i|¤Ž}|S )zà Select a 2d convolution implementation based on arguments
    Creates and returns one of torch.nn.Conv2d, Conv2dSame, MixedConv2d, or CondConv2d.

    Used extensively by EfficientNet, MobileNetv3 and related networks.
    Únum_expertsÚgroupsTÚ	depthwiser   Fé    )Ú
isinstanceÚlistÚpopr   r   r   )Úin_channelsÚout_channelsÚkernel_sizeÚkwargsr   Úmr	   s          úd/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/timm/layers/create_conv2d.pyÚcreate_conv2dr      sç   € ô +œtÔ$Ø FÑ*Ð*Ð*ØvÑØ—Z‘Z Ó)ˆFØ˜Ò$Ø&*{Ò#à ’{Ð"{ô ˜ \°;ÑIÀ&ÑIˆð €Hð —J‘J˜{¨EÓ2ˆ	á )‘¨v¯z©z¸(ÀAÓ/FˆØ˜FÑ" v¨mÑ'<¸qÒ'@Ü˜;¨°kÑ[È&Ð[ÐTZÑ[ˆAð €Hô " +¨|¸[ÑbÐQWÐbÐ[aÑbˆAØ€Hó    N)Ú__doc__Úmixed_conv2dr   Úcond_conv2dr   Úconv2d_samer   r   © r   r   ú<module>r      s   ðñõ
 &Ý #Ý *ór   