
    3j	                     l    S SK r S SKJr  S SKJrJr  SSKJrJrJ	r	  SSK
Jr   " S S	\\   5      rS	S
/rg)    N)override)KeyConditionget_scale_and_output_channels   )ArchitectureImageModelDescriptor	StateDict   )SPANc                   N   ^  \ rS rSrSU 4S jjr\S\S\\   4S j5       r	Sr
U =r$ )SPANArch
   returnc                 X   > [         TU ]  S[        R                  " SSSSSSSS	5      S
9  g )Nr   conv_1.sk.weightzblock_1.c1_r.sk.weightzblock_1.c1_r.eval_conv.weightzblock_1.c3_r.eval_conv.weightzconv_cat.weightzconv_2.sk.weightzconv_2.eval_conv.weightupsampler.0.weight)iddetect)super__init__r   has_all)self	__class__s    ^/home/wildlama/miniconda3/lib/python3.13/site-packages/spandrel/architectures/SPAN/__init__.pyr   SPANArch.__init__   s>    ''"(//!")$	 	 	
    
state_dictc                 D   SnSnSnSnSnSnSnSn	US   R                   S   nUS   R                   S	   n[        US
   R                   S	   U5      u  pSSU;   a  Sn[        R                  " S5      US'   [	        UUUUUUUU	S9n
[        U
UU US:X  a  SOSU S3/SSUUUS9
$ )Nr   0      Tg     o@)gw#?g8EGr?gB`"?r   r
   r   r   no_normF)	num_in_ch
num_out_chfeature_channelsupscalebiasnorm	img_rangergb_meanRestorationSRnf)architecturepurposetagssupports_halfsupports_bfloat16scaleinput_channelsoutput_channels)shaper   torchzerosr   r   )r   r   r"   r#   r$   r%   r&   r'   r(   r)   models              r   loadSPANArch.load   s   	
 "	+1288;	%&89??B <+,2215
 
"D$)KKNJy!!-	
 $%,\Mt%&b)*"$&
 	
r    )r   N)__name__
__module____qualname____firstlineno__r   r   r	   r   r   r9   __static_attributes____classcell__)r   s   @r   r   r   
   s0    
 .
y .
-A$-G .
 .
r   r   r   )r6   typing_extensionsr   spandrel.utilr   r   __helpers.model_descriptorr   r   r	   __arch.spanr   r   __all__r;   r   r   <module>rG      s5     & E W W ?
|D! ?
D v
r   