a
    d                     @   s  d dl T d dlmZmZmZmZ d dlmZmZm	Z	 d dl
mZ d dlmZmZmZ d dlmZmZ d dlmZmZmZmZmZmZmZmZmZ d dlmZmZ d d	lm Z m!Z!m"Z" d d
l#m$Z$m%Z%m&Z& d dl'm(Z(m'Z' d dl)m)Z) d dl*m+Z+m,Z, d dl-m.Z.m/Z/m.Z. d dl0m1Z1m2Z2m3Z3m4Z4 d dl5m6Z6m7Z7m8Z8m9Z9 d dl:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZC d dlDmEZEmFZFmGZGmHZH d dlImJZJmKZK d dlLmMZMmNZNmOZOmPZPmQZQ d dlRmSZS d dlTmUZU d dlVmWZWmXZXmYZYmZZZm[Z[m\Z\ d dl]m^Z^ d dl_m`Z` d dlambZb d dlcmdZdmeZemfZfmgZgmhZhmiZimjZj d dlkmlZlmmZm d dlnmoZompZpmqZqmrZrmsZs d dltmuZumvZvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~ d dlmZmZmZ d d lmZ d d!lmZmZmZ d d"lmZmZ d d#lmZ d d$lmZmZmZmZmZ d d%lmZmZmZmZmZmZmZmZmZmZm	Z	mZ d d&lmZmZmZmZ d d'lmZ d d(lmZmZ d d)lmZmZmZ d d*lmZ d d+lmZmZ d d,lmZmZmZmZ d d-lmZmZ d d.lmZmZ d d/lmZmZmZmZ d0S )1   )*)adaptive_avgmax_pool2dselect_adaptive_pool2dAdaptiveAvgMaxPool2dSelectAdaptivePool2d)AttentionPool2dRotAttentionPool2dRotaryEmbedding)
BlurPool2d)ClassifierHeadcreate_classifierNormMlpClassifierHead)
CondConv2dget_condconv_initializer)	is_exportableis_scriptable	is_no_jituse_fused_attnset_exportableset_scriptable
set_no_jitset_layer_configset_fused_attn)
Conv2dSameconv2d_same)ConvNormActConvNormActAa	ConvBnAct)create_act_layerget_act_layer
get_act_fn)get_attncreate_attn)create_conv2d)get_norm_layercreate_norm_layer)get_norm_act_layercreate_norm_act_layerr&   )DropBlock2dDropPathdrop_block_2d	drop_path)	EcaModule
CecaModuleEfficientChannelAttnCircularEfficientChannelAttn)	EvoNorm2dB0EvoNorm2dB1EvoNorm2dB2EvoNorm2dS0EvoNorm2dS0aEvoNorm2dS1EvoNorm2dS1aEvoNorm2dS2EvoNorm2dS2a)is_fast_normset_fast_normfast_group_normfast_layer_norm)FilterResponseNormTlu2dFilterResponseNormAct2d)Formatget_channel_dimget_spatial_dimnchw_tonhwc_to)GatherExcite)GlobalContext)	to_ntuple	to_2tuple	to_3tuple	to_4tuplemake_divisibleextend_tuple)
InplaceAbn)Linear)MixedConv2d)MlpGluMlpGatedMlpSwiGLUSwiGLUPackedConvMlpGlobalResponseNormMlp)NonLocalAttnBatNonLocalAttn)	GroupNorm
GroupNorm1	LayerNormLayerNorm2dRmsNorm)
BatchNormAct2dGroupNormActGroupNorm1ActLayerNormActLayerNormAct2dSyncBatchNormActconvert_sync_batchnormFrozenBatchNormAct2dfreeze_batch_norm_2dunfreeze_batch_norm_2d)get_paddingget_same_paddingpad_same)PatchDropout)
PatchEmbedPatchEmbedWithSizeresample_patch_embed)AvgPool2dSamecreate_pool2d)resample_abs_pos_embed)	RelPosMlp
RelPosBiasRelPosBiasTfgen_relative_position_indexgen_relative_log_coords)pixel_freq_bands
freq_bandsbuild_sincos2d_pos_embedbuild_fourier_pos_embedbuild_rotary_pos_embedapply_rot_embedapply_rot_embed_catapply_rot_embed_listapply_keep_indices_nlcFourierEmbedr	   RotaryEmbeddingCat)SEModuleSqueezeExciteEffectiveSEModuleEffectiveSqueezeExcite)SelectiveKernel)SeparableConv2dSeparableConvNormAct)SpaceToDepthModuleSpaceToDepthDepthToSpace)	SplitAttn)SplitBatchNorm2dconvert_splitbn_model)	StdConv2dStdConv2dSameScaledStdConv2dScaledStdConv2dSame)TestTimePoolHeadapply_test_time_pool)_assert_float_to_int)trunc_normal_trunc_normal_tf_variance_scaling_lecun_normal_N)ZactivationsZadaptive_avgmax_poolr   r   r   r   Zattention_pool2dr   r   r	   Z	blur_poolr
   
classifierr   r   r   Zcond_conv2dr   r   configr   r   r   r   r   r   r   r   r   r   r   Zconv_bn_actr   r   r   Z
create_actr   r   r    r"   r!   r#   Zcreate_normr$   r%   Zcreate_norm_actr&   r'   Zdropr(   r)   r*   r+   Zecar,   r-   r.   r/   Zevo_normr0   r1   r2   r3   r4   r5   r6   r7   r8   Z	fast_normr9   r:   r;   r<   Zfilter_response_normr=   r>   formatr?   r@   rA   rB   rC   Zgather_exciterD   Zglobal_contextrE   ZhelpersrF   rG   rH   rI   rJ   rK   Zinplace_abnrL   ZlinearrM   Zmixed_conv2drN   ZmlprO   rP   rQ   rR   rS   rT   rU   Znon_local_attnrV   rW   ZnormrX   rY   rZ   r[   r\   Znorm_actr]   r^   r_   r`   ra   rb   rc   rd   re   rf   paddingrg   rh   ri   Zpatch_dropoutrj   Zpatch_embedrk   rl   rm   Zpool2d_samern   ro   Z	pos_embedrp   Zpos_embed_relrq   rr   rs   rt   ru   Zpos_embed_sincosrv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   Zsqueeze_exciter   r   r   r   Zselective_kernelr   Zseparable_convr   r   Zspace_to_depthr   r   r   Z
split_attnr   Zsplit_batchnormr   r   Zstd_convr   r   r   r   Ztest_time_poolr   r   Ztrace_utilsr   r   Zweight_initr   r   r   r    r   r   ]/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/timm/layers/__init__.py<module>   s\   ,, $08