
    ^(j~                        d dl Z  G d d      Z G d de      Z G d de      Z G d d	e      Z G d
 de      Z G d de      Z G d de      Z G d de      Z G d de      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d  d!e      Z G d" d#e      Z G d$ d%e      Z G d& d'e      Z G d( d)e      Z G d* d+e      Z G d, d-e      Z G d. d/e      Z G d0 d1e      Z G d2 d3e      Z G d4 d5e      Z G d6 d7e      Z G d8 d9e      Z G d: d;e      Z G d< d=e      Z G d> d?e      Z G d@ dAe      Z  G dB dCe      Z! G dD dEe!      Z"y)F    Nc                   <    e Zd ZdZdZdZdZdZdZdZ	dZ
dZd Zd Zy)	LatentFormat      ?      N      c                      || j                   z  S Nscale_factorselflatents     >/Users/danicosta/Desktop/Flux2/ComfyUI/comfy/latent_formats.py
process_inzLatentFormat.process_in       ))))    c                      || j                   z  S r   r   r   s     r   process_outzLatentFormat.process_out   r   r   )__name__
__module____qualname__r   latent_channelslatent_dimensionslatent_rgb_factorslatent_rgb_factors_biaslatent_rgb_factors_reshapetaesd_decoder_namespacial_downscale_ratiotemporal_downscale_ratior   r    r   r   r   r      s@    LO"!% **r   r   c                       e Zd ZddZy)SD15c                 F    || _         g dg dg dg dg| _        d| _        y )N)gz?gAf?g,Ԛ?)g?gAf?gGz?)g%uҿgǺ?g`vOj?)gA`"˿g(пgڊetaesd_decoder)r   r   r   )r   r   s     r   __init__zSD15.__init__   s,    ( 0///# #2r   N)g{P?r   r   r   r'   r"   r   r   r$   r$      s    	2r   r$   c                       e Zd ZdZd Zy)SDXLgy&1?c                 J    g dg dg dg dg| _         g d| _        d| _        y )N)g Ac]?ghs?gc]K?)gK46пJ4qgz6>W?)gq?g镲q?:pΈ)gK7AԿgϿgı.n̿)g6?Q둿g/nRtaesdxl_decoder)r   r   r   r   s    r   r'   zSDXL.__init__#   s-     0///# (C$"3r   N)r   r   r   r   r'   r"   r   r   r*   r*       s    L
4r   r*   c                       e Zd Zd Zd Zd Zy)SDXL_Playground_2_5c                     d| _         t        j                  g d      j                  dddd      | _        t        j                  g d      j                  dddd      | _        g dg dg dg d	g| _        d
| _        y )Ng      ?)g?ܵgV-?gT㥛 g9v@r	   r   )gxz,C @gQڛ@g\m2@gfj@)gJ+?gs?g[Ӽ?)gqпngm4?)ZӼ?gj+?S)g	gӿg-1οg&Sʿr/   )r   torchtensorviewlatents_meanlatents_stdr   r   r0   s    r   r'   zSDXL_Playground_2_5.__init__0   sy    !LL)IJOOPQSTVWYZ[ <<(HINNqRSUVXYZ 0///# #4r   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z
  | j
                  z  |z  S r   r:   todevicedtyper;   r   r   r   r:   r;   s       r   r   zSDXL_Playground_2_5.process_in>   ]    ((++FMM6<<H&&))&--F%):)::[HHr   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z  | j
                  z  |z   S r   r=   rA   s       r   r   zSDXL_Playground_2_5.process_outC   ]    ((++FMM6<<H&&))&--F#d&7&77,FFr   N)r   r   r   r'   r   r   r"   r   r   r2   r2   /   s    4I
Gr   r2   c                       e Zd Zd Zy)SD_X4c                 8    d| _         g dg dg dg dg| _        y )NghU?)gʡEͿgw#ؿg*DԿ)58EGr?g-臨?gz6>)g6<R!ҿgJ4οg[ A׿)g1%?I+vgH.!ſr   r   r0   s    r   r'   zSD_X4.__init__J   s     #''''	#
r   Nr(   r"   r   r   rF   rF   I   s    
r   rF   c                       e Zd ZdZdZd Zy)SC_Prior   *   c                     d| _         g dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg| _        y )Nr   ){򰠿爅ZӼ㔿
F%u)g8d`Ŀg?ܥg_vO?)gEJY?g|a2U?gMb`)g:pΈҮea?g{?){Gz?ǺgH.!ƿ)#~jg|a2Ug[<Ŀ)g?W[?h|?5?goT?)l?gr?_vO?)tVƿg0*ȿg)g??g:#J{/?g?)g	h"l?gx$(~?gR!u?)gAf?㥛 ?gHPsׂ)gǺ?gp=
ףg_vOƿ)gb48ſgng()6?g-?g(\?)g/ngAfſglxz,CпrJ   r0   s    r   r'   zSC_Prior.__init__V   sD    ''''''''''''''''!#
r   N)r   r   r   r   r    r'   r"   r   r   rL   rL   S   s    O 
r   rL   c                       e Zd ZdZd Zy)SC_Br   c                 8    d| _         g dg dg dg dg| _        y )Ng)kʚ@)g镲?gB?g|a2U0?)g'WʿgAǘg+)gӿgSÿg46<?)V-?g1%Ŀga+eڿrJ   r0   s    r   r'   zSC_B.__init__m   s     &''''	#
r   N)r   r   r   r    r'   r"   r   r   r^   r^   k   s    
r   r^   c                   "    e Zd ZdZd Zd Zd Zy)SD3rM   c                     d| _         d| _        g dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg| _        g d| _        d| _        y )Ngrh|?H.?)g|Pkr.   "lxz,?)gU؟?g8m4?g	h"l?)ggDio?V/?gHPs?)g'?z6>W[?,eX?)g(?g_Qڛ?ga+e)ga2U0*Cglxz,C???)g(~k	?gK=U?g?ܥ?)r,   g&S?gea?)gj+ݓMb`?g6[ ?)gHPg9v?S!uq)g|Pk?gDJ?gc=yX?)gPkw<,Ԫ?6)gSt$?+eX?gx?)lxz,C|~jthrV   )g2%䃮+ΧgX )g:pΈ¿g}гY¿g ~:p)gT?gS?gp=
ף?taesd3_decoderr   shift_factorr   r   r   r0   s    r   r'   zSD3.__init__x   s_    ""''''''''''''''''!#
$ (@$"2r   c                 :    || j                   z
  | j                  z  S r   rt   r   r   s     r   r   zSD3.process_in       ***d.?.???r   c                 :    || j                   z  | j                  z   S r   r   rt   r   s     r   r   zSD3.process_out   rw   r   Nr   r   r   r   r'   r   r   r"   r   r   rb   rb   v   s    O30@@r   rb   c                       e Zd ZdZdZdZy)StableAudio1@   r	   i   Nr   r   r   r   r   r!   r"   r   r   r|   r|          O#r   r|   c                       e Zd ZdZdZdZy)StableAudio3   r	   i   Nr~   r"   r   r   r   r      s    O#r   r   c                   "    e Zd ZdZd Zd Zd Zy)FluxrM   c                     d| _         d| _        g dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg| _        g d| _        d| _        y )Ngxz,C?g=U?)geXgHP?gh o?)_Qk?g/$?g6<R?)g)\(?go_gfj+)5;NёgMb?gSt$?)gZڊ?gL
F%u?g*Dؠ?)g-C6:?g@߾?gZd;O?)g#~j?g{/L
?gCl?)g0*glgݓ)gJ+皙?rW   )g o_ι?gS?g<R!)g|?5^0*?/nR?)'?ga2U0*SH}m)gLJ?g/$?re   )gvq-g}гYg[<)y&1gǺgx$(~)ge`TR'gkw#g	g곿g*DؠQ|agӼɵtaef1_decoderrs   r0   s    r   r'   zFlux.__init__   s_    ""''''''''''''''''!"
$ (C$"1r   c                 :    || j                   z
  | j                  z  S r   rv   r   s     r   r   zFlux.process_in   rw   r   c                 :    || j                   z  | j                  z   S r   ry   r   s     r   r   zFlux.process_out   rw   r   Nrz   r"   r   r   r   r      s    O20@@r   r   c                   &    e Zd ZdZdZd Zd Zd Zy)Flux2   rM   c                 B   g g dg dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d | _         g d!| _        d" | _        d#| _        y )$N)gw?gMSt$?g<,Ԛ}?)gMbX?lV}?gAf?)gׁsFga2U0*?g?ܵ|?)gS!uq?gsA?go_?)St$?gqog_vOv)2U0*?0*?gMb)g8d`rh   gMb)_Lu~jt?46<R?)g&Sֿgz6>W[ѿg&Sſ)g:pΈҞ給y):g;On)g'酿gq?g_LU?)gHP?;On?g)q?X5;N?gy&1|?)_QkMbpg+eX)-C6j?:pΈ?gMb?)*	g-C6JΈ?)H}]?g"uq?_L?)gZӼ?gǺv?rR   )ga2U0*cg/nbrp   )g.1?g_Leg9vz?)g-C6?gMO?gZӼ?)g?߾?gH}}gǺF)r   gHPsׂ?g0*x)        g 	gnt)rq   rQ   q)r   a2U0*S?gF%u{)r`   r   {Gzd?)gI+?r   a2U0*s)gSt$gڊeggj+) rhg	g?rd   )ŏ1w-!ga2U0*3?g"uq)gAǘgZd;Ogor   c           	      "   | j                  | j                  d   ddd| j                  d   | j                  d         j                  dddddd	      j                  | j                  d   d| j                  d   dz  | j                  d   dz        S )
Nr       r   r	   r         )reshapeshapepermute)ts    r   <lambda>z Flux2.__init__.<locals>.<lambda>   s   AIIaggaj"aQRTUT[T[\^T_abahahikal4m4u4uvwyz|}  @A  CD  FG  5H  5P  5P  QR  QX  QX  YZ  Q[  ]_  ab  ah  ah  ik  al  op  ap  rs  ry  ry  z|  r}  @A  rA  5Br   taef2_decoder)r   r   r   r   r0   s    r   r'   zFlux2.__init__   si   !"
$!"
$!"
 &!"
 %	!"

 '!"
 &!"
 '!"
 &!"
 (!"
 (!"
 &!"
 &!"
 %!"
 (!"
 %!"
  '!!"
" %#!"
$ &%!"
& ('!"
( &)!"
* %+!"
, '-!"
. &/!"
0 '1!"
2 (3!"
4 &5!"
6 &7!"
8 &9!"
: (;!"
< &=!"
> '?!"
@ (A!"
F (C$ +B'"1r   c                     |S r   r"   r   s     r   r   zFlux2.process_in       r   c                     |S r   r"   r   s     r   r   zFlux2.process_out   r   r   Nr   r   r   r   r    r'   r   r   r"   r   r   r   r      s    O &2Pr   r   c                       e Zd ZdZd Zd Zy)
TripoSplatrM   c                     |S r   r"   r   s     r   r   zTripoSplat.process_in   r   r   c                     |S r   r"   r   s     r   r   zTripoSplat.process_out   r   r   N)r   r   r   r   r   r   r"   r   r   r   r      s    Or   r   c                   *    e Zd ZdZdZdZd Zd Zd Zy)Mochi   r      c                 l   d| _         t        j                  g d      j                  d| j                  ddd      | _        t        j                  g d      j                  d| j                  ddd      | _        g dg dg dg dg d	g d
g dg dg dg dg dg dg| _        g d| _        d | _	        y )Nr   )gX(;gRP:vg:*$gV*~g]̴%?ghgҩy?g>1g[bdg,,
g[aogkn|r	   )g?gı?gPo*T?g`4?gq@a?g7k1Z?gAtŽ?g\4?gT~`4?g	(V?gDcd?gˏ?)ro   g;Onrr   )g 	?geXg?߾)镲?gŏ1w-!_?g0*?)gng2U0*?g
h"lxz?)g(\gS!uq?gAc]Kȿ)笭_vO~?S㥛Af)g/ngec]ea)gD?g,Ԛ?g,Ԛ?)rP   gͪզgQI);pΈްK=U?K=U)gl?gJY8ǺV?)gׁsFgMbXg?Ɯ)gMbgQI&¿g)0¿)
r   r7   r8   r9   r   r:   r;   r   r   r   r0   s    r   r'   zMochi.__init__  s    !LL *m n osnrstvz  wK  wK  MN  PQ  ST  oU 	 !<< )e f gkfjklnr  oC  oC  EF  HI  KL  gM 	 ('''''''''''"
 (C$"&r   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z
  | j
                  z  |z  S r   r=   rA   s       r   r   zMochi.process_in  rB   r   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z  | j
                  z  |z   S r   r=   rA   s       r   r   zMochi.process_out"  rD   r   N)	r   r   r   r   r   r!   r'   r   r   r"   r   r   r   r      s$    O '8I
Gr   r   c                   "    e Zd ZdZdZdZdZd Zy)LTXVr   r   r   r   c                 $   g g dg dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g d!g d"g d#g d$g d%g d&g d'g d(g d)g d*g d+g d,g d-g d.g d/g d0g d1g d2g d3g d4g d5g d6g d7g d8g d9g d:g d;g d<g d=g d>g d?g d@g dAg dBg dCg dDg dEg dFg dGg dHg dIg dJg dKg dLg dMg dNg dOg dPg dQg dRg dSg dTg dUg dVg dWg dXg dYg dZg d[g d\g d]g d^g d_g d`g dag dbg dcg ddg deg dfg dgg dhg dig djg dkg dlg dmg dng dog dpg dqg drg dsg dtg dug dvg dwg dxg dyg dzg d{g d|g d}g d~g dg d| _         g d| _        y )N)g&2?g0Dgߋ/ㅄ)gr2q ?ggҦٰ?gUx|CO?)gI%rgIg%P7p)g7C?gCBJMagcKE`e?)g3I]n?g1|DL$?gt?)gTsP?g$ug6b(l?)ga824g8H-gxe6)gALgݱ&geF%`?)g5Xg">|g"1A)g7A\g?{x>?gfzk)gh[:?gLaHs?gR<k`)gó?g37:Ba?gĐ?)gД~g_3uyg7R?)g>&H~?gS ?g^<g=?)gyr?O?gvێ_.hgCO}:)gZ8?gF[DA?g[X7?)gBr?g.=_;?g9|)g1 =giSulj?gAr?)gRZ[?gu?gq5+-?)g2g*cadgEOli)g?RDU?g.|?gbG,?)gMpgC-Rgz[(Y?)g?x=gLg,Cʿ)gĭ?gW?g_um)g֜\sgIO6?g>?)go+6[gfsg:Ru)gӢ>6ag{%9`Wc?g'5?)gߣzgXЕgV县)gkA!g&mͅgfpzrz)g=sg(8t?gQZ{)gfh<y?gnʆ5?gH_?)gY:zg{`_g!)g,ص}?gbPWg%z)g2_wNg'էy?g2|?)gBg^-g|	)g>?gS!uqg͋)g
ug@'?g}i@s?)g܀#ÿg+yp˿gL;˿)gxρ?gbf(|?gG$)gha?gː^dg|ڥ)gT6ہo?g<&xgPn)g_(qg_{fIgdZZ)gPE4pvgubT4g<h)gq,!zg|<i?g-VЄ)gQJtgBc
I}g\>/hcM)g9ܝgʃ[cg= }Q?)g!Lnog1oÃg!Y?)g%Gt?gѱJ\ǈ?g}r?)gw'-?g)%?giȀ?)gp'vg3gOVZp)gvӂggGq::)g-4h?guݑ?geU*?)gYZgsdg.=4=r)gB?g.5#?g)?)g@JڎgWlBg^fh?)g#k$	g
)g(H0̊?)glg?gdMz)goA[sEi?gVCK??g3IbI?)g0[wTg^gpB!)gviagH¾Dg\qqTn)gUg$B#gayFQ?gZUP?)g"T3k)gXiTgqIx)gGǁgA^Tg;^y?)gTTJëgډH?gѺWy?)gcU6br?g|
~gobHN&n)gкorgGYZ?gG=D;?)ge ?gaz3?gaɰp?)gLƄgġm]r?gמY?)g?+zwgNG[hS?gj?)geRsng)ugѭT?)g/M.?g`eM,?gx'?)gR'᡿gxE옿gC p왿)g9yg4g))gɐcg;J"g,)gdDXCagfg#/yh)g`}~S?gEԽ]qg|)gp9M?gMde{g )gn2n?gXİØgES)g\Y"T?g-VЄ?gHLP?)gm?gb<1?g%#gaO;?)ghhsgϫKmgpF?)gr)s?gZ0xugɾud?)g7[Ԃr6xg~yg.y])g"]?gI*ݍ?g%K_?)gĻ}~?gBZ?goH'ۀ)gR>G?gZ?g @p)gNK[wg:>f^fg)p)g{\?gGC?gj	i?)g3 Kg=b?g/\yr?)gR҇?gl.HD?g4})g"?gFe?g:6U?)g82Fu?gj;n?g UܸŌ?)g5?ҒgzؘgJ)g
THC?gt[wg׻?)gPng[R,g=zÍ)g
p?gP9?gLl	TZz?)gUk?gN6g(֐)gWj2>'XgA{gYe \?)g[%XΜ?gmtOq?g>4aɠ?)gǷwg1LgC)gh?~g3%gA
)g#SogaTR'?gLn?)g۲~g Uܸgx[y)g]Yl?tl?gE>'Ig})gۂ?gPp?gKEx g?)gcW}?geK&XgYI/o)gy):b?g	\?gEn)g Q?gy7?gI?)gwF[Dvg.:Yjߘgd6:)g:
k~?gg?RD?g';?)g)(Ry?gU*y?gb?)g~dŐ?g*?(9q?gkn{?)gb0̕?gŐL*?gŭڗ?)gՍg@h g)g{c ?!vy?g_.{?)go{gkjP?g<ύ?)g;߫y?g>?ml?go>9me)gK'Ⱦfg8
KTxgÁ傿)gL2r?g.?Na~?gpzr:)g]o%g._x%ɓ?g,Z2N)gc?g JAsg|x #)giߚ?g1!撚?gKXc'?)gw\?gf*#?gsf?)gagv)Vs?g<L)g?2ʝ~g)g`~?r   )gq#D/goXVg1?)gcϞ?g-Ƀ?go)gY9鍿gtt{gq89@p?)g46<g=yX5ſg2U0*пr   r   r0   s    r   r'   zLTXV.__init__-  sW   A#
3A#
3A#
 4A#
 4	A#

 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
 4A#
  4!A#
" 4#A#
$ 4%A#
& 4'A#
( 4)A#
* 4+A#
, 4-A#
. 4/A#
0 41A#
2 43A#
4 45A#
6 47A#
8 49A#
: 4;A#
< 4=A#
> 4?A#
@ 4AA#
B 4CA#
D 4EA#
F 4GA#
H 4IA#
J 4KA#
L 4MA#
N 4OA#
P 4QA#
R 4SA#
T 4UA#
V 4WA#
X 4YA#
Z 4[A#
\ 4]A#
^ 4_A#
` 4aA#
b 4cA#
d 4eA#
f 4gA#
h 4iA#
j 4kA#
l 4mA#
n 4oA#
p 4qA#
r 4sA#
t 4uA#
v 4wA#
x 4yA#
z 4{A#
| 4}A#
~ 4A#
@ 4AA#
B 4CA#
D 4EA#
F 4GA#
H 4IA#
J 4KA#
L 4MA#
N 4OA#
P 4QA#
R 4SA#
T 4UA#
V 4WA#
X 4YA#
Z 4[A#
\ 4]A#
^ 4_A#
` 4aA#
b 4cA#
d 4eA#
f 4gA#
h 4iA#
j 4kA#
l 4mA#
n 4oA#
p 4qA#
r 4sA#
t 4uA#
v 4wA#
x 4yA#
z 4{A#
| 4}A#
~ 4A#
@ 4AA#
B 4CA#
D 4EA#
F 4GA#
H 4IA#
J 4KA#
L 4MA#
N 4OA#
P 4QA#
R 4SA#
T 4UA#
V 4WA#
X 4YA#
Z 4[A#
\ 4]A#
^ 4_A#
` 4aA#
b 4cA#
d 4eA#
f 4gA#
h 4iA#
j 4kA#
l 4mA#
n 4oA#
p 4qA#
r 4sA#
t 4uA#
v 4wA#
x 4yA#
z 4{A#
| 4}A#
~ 4A#
@ 4AA#
F (C$r   N)r   r   r   r   r   r    r!   r'   r"   r   r   r   r   '  s     O  DCr   r   c                       e Zd Zd Zy)LTXAVc                      d | _         d | _        y r   r   r0   s    r   r'   zLTXAV.__init__  s    "&'+$r   Nr(   r"   r   r   r   r     s    ,r   r   c                       e Zd ZdZdZdZdZg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dgZg dZdZ	y)HunyuanVideorM   r   r   g>I?)gMbX9gm{gbX9Ȧ?)g5;Nѱ?g'1Z?gݓ?)gS㥋?gx&1g!u)g_vO?gg/$)r   r   gǺ?)g0*g
F%ug6[)g^g6?g6[ )aTR'g^K=g{Gz)g5;NѱgX9vg,C⶿)gjMStg_Lg333333)g}bٽ?gޓZ?g-?)gmҽ?rY   gfa֤?)goʡͿg~jtȿgMbX)r   眢#?gh o)g 	ggDiogPkw)gV}b?gc]Fg\ Acſ)gݓ?ga2U0*g9#J{taehvN)
r   r   r   r   r   r!   r   r   r   r   r"   r   r   r   r     s^    O L################!& : r   r   c                       e Zd ZdZdZdZg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dgZg dZy)Cosmos1CV8x8x8rM   r   r   )gsA?g46<?g鷯?)X gJ4g1%ӿ)ga+e޿gZd;ۿg rhٿ)giq?g6[ ?g`TR'?)gˡEgzGế{Gz?)gn?gO@a?gJY8?)gClǿgHP˿r   )z):˯g<Nё\˿r   )g^)?g\m?g9v?)g??go_?g{Gz?)gH}?g&?g&)g	cZ¿gHP׿g~jt׿)gK7A?g<,?g/$?)g$C׿g6[ ɿgDioԿ)gZd;ǿr[   go_?),C?rH   gǺ?)g;MOgvq-ȿgDJɿN)r   r   r   r   r   r!   r   r   r"   r   r   r   r     sU    O  	$###############!& :r   r   c                       e Zd ZdZdZdZg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dgZg dZd Zd Z	d Z
y)Wan21rM   r   r   )g-g=yXſg?)gŏ1w-?gDioɤ?rS   )gͪ?gTN?g;Nё\?)gΈ?gX ?gV-?)Ǻ?gݓZ?g	^)ˠ)笭_vO?gb=yg/$)gm4@ֿgё\CٿgQҿ)r   gc=yX?gHzG?)g0*gz6>W?gR!u)g鷯rX   gD?)g rh?gd`TR?g!u?)r   g:H?g6[?)gc]Frf   g:H?)g~jtx?g8m4Mb@?)gm4@?gQ?gzG?)ga+e?go_?g?)grh|ǿgJY8g/$տc                    d| _         t        j                  g d      j                  d| j                  ddd      | _        t        j                  g d      j                  d| j                  ddd      | _        d| _        y )Nr   )gy):gMOg^)gQ?rZ   gZӼ?gBfjÿgU0*?gL
F%u?gMg&?gz6>׿gF%uȿg[ AcgMJ?gW2ıҿr	   )g_L@gNё\C?gQ@g?@g9#J{?g|a2U?gHPs@g0* @gJ{/L&
@gJY8@g]C@g(?gK46?gS:?go_Ι@g-?lighttaew2_1)r   r7   r8   r9   r   r:   r;   r   r0   s    r   r'   zWan21.__init__  s|    !LL *
  44''Aq1 	 !<< )
  44''Aq1 	 #1r   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z
  | j
                  z  |z  S r   r=   rA   s       r   r   zWan21.process_in  rB   r   c                     | j                   j                  |j                  |j                        }| j                  j                  |j                  |j                        }||z  | j
                  z  |z   S r   r=   rA   s       r   r   zWan21.process_out  rD   r   N)r   r   r   r   r   r!   r   r   r'   r   r   r"   r   r   r   r     sf    O  ('''''''''''''''!
& :1I
Gr   r   c                      e Zd ZdZdZdZg g dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g d!g d"g d#g d$g d%g d&g d'g d(g d)g d*g d+g d,g d-g d.g d/g d0g d1g d2g d3Zg d4Zd5 Zy6)7Wan220   r   rM   )tF_?r   gHPsr?)gV/g o_ΩgL7A`?)gy&1?D?gkw#?)gU0*дgioTg?)g	^)˰?gӼɵ?gMO?)F%u?g3?g+eX?)h|?5?{?gh|?5?)gHPr   r   )r   爅ZӼㄿH}?)rq   g;OnˡE)gQ|a?g0*?	^)ˀ?)gj+ݳg?ܵ?g<,Ժ?)g!u?r   gw#?)a2U0*C?gBi?gAf?)g|a2Urm   gTN)rk   ga2U0*c?9v?)g@ǘ?gA`"?d`T?)gQ|ar   gOec)gv/g{Pkg&䃞ͪ)gJ{/L?gt$~?gUد?)g"ug&gZӼt)g+?gx&?g46<R?)glxz,C|?H}?r   )r   go_gvq-?)r   Oecg)gPkw¿g,eX-)g48EG?g@a+?r   )gŏ1w-!r  r4   )r   ga2U0*?gZӼ?)gk	ggBigǺV)r5   g_)Ǻ?g oŏ?)rI   gX9vg~jt)b=y?gZd;gp=
ף?)g~k	g&S:y&1)g_LgUN@sHPsb)r   gǺ?Έ)^K=r   gm{?)g_v?g?g?)gHPsעgl?r   )g/nֿg[B>٬ֿgݵ|гɿ)JY(~k	g/$)gL7A`尿r   rT   )gMO_Q{?r   )gDlgMSt$gV/)gV-	^)p?g~jtX?)g<R!?g,eX?gHP?)g o_Ω?g_)Ǻr   )g٬\mJ4?gI+v?)~:?gzgW2c                    d| _         d| _        t        j                  g d      j	                  d| j
                  ddd      | _        t        j                  g d      j	                  d| j
                  ddd      | _        y )Nr   lighttaew2_2)0g_LͿr   ga4g8gDioͿ'ѿ5;Nё?gI&?g\C?gTR'r\   gX ?gsA϶?gjt?gng333333?g\(\ǿg>W[̿g.1澿gBiޱgEJY?guV?g$~ʿg=U˿gc]F?gMʿ?ܵ|g[ Ac?g?߾?gg鷯?r  grh|rU   g!uqſggj+?gn4@?gfj+ҿgʿg9vgx#?gŏ1w-!?g镲?g&W?gHPsҿgY ?g?߾g:MſgN@r	   )0g"~?g0*?gZӼ?g1?gqh ?gV-?gͪ?g{/L
?g%u?g鷯?gec]?g镲q?gx&1?g|?5^?g:M?g$?gY8m?g_L?gE?gKY8?g7d?g3?goT?gQ?gW[?gZӼ?g9#J?gd]Fx?g{/L
?g<Nё\?g-?g-1?g0*D?g rh?gI+?g??g46<R?g}8gD?gŏ1w?gMJ?g`vOj?g(\?g46<?gGr?g$(~k?gfj+?g?g@?)r   r   r7   r8   r9   r   r:   r;   r0   s    r   r'   zWan22.__init__Y  sz    "0!LL *  tAt++Q15 	 !<< )  tAt++Q15 	r   N)	r   r   r   r   r   r    r   r   r'   r"   r   r   r   r     s'   O 1
'1
'1
 (1
 (	1

 (1
 (1
 (1
 (1
 (1
 (1
 (1
 (1
 (1
 (1
 (1
  (!1
" (#1
$ (%1
& ('1
( ()1
* (+1
, (-1
. (/1
0 (11
2 (31
4 (51
6 (71
8 (91
: (;1
< (=1
> (?1
@ (A1
B (C1
D (E1
F (G1
H (I1
J (K1
L (M1
N (O1
P (Q1
R (S1
T (U1
V (W1
X (Y1
Z ([1
\ (]1
^ (_1
` (a1
f 96r   r   c                   (   e Zd ZdZdZdZdZg g dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g d!g d"g d#g d$g d%g d&g d'g d(g d)g d*g d+g d,g d-g d.g d/g d0g d1g d2g d3g d4g d5g d6g d7g d8g d9g d:g d;g d<g d=g d>g d?g d@g dAg dBg dCg dDZg dEZyF)GHunyuanImage21r}   r   r   gĬ?)g 	gjMS[B>٬)r   gΈ?r   )gS㥛gɳr   )gDJa4憎gV}b)ggsr   g}гY)gd`Tg|гYgB`"۩)gvq-?X9v?r  )r   g{Pk?r   )Q?gHP?gH}m?)g,C⦿g(r  )gŏ1w-!or   g㥛 )g=yXr   g()gqo?gHPsע?r   )gS㥛İ?JY8?gHP?)gJ+?gڊe?g48EG?)g$۷?gb48?gp=
ף?)gΈr   S㥋)gMbr   g_vO)gZӼg0*r   )g8gDio%ug1%䳿)gy&1lgŏ1w-!?r  )g&S?glV}?g0'?)r   r   g/n?)r
  g46<R?r  )g镲g+e⨿g&S)r   r   g	c?)r   r   gR!u?)r  g~jtr   )gMSt$?g_L?g+eX?)gx$(~?gOe?g#?)r   ?߾H}])gǺri   r   )gW2ġg<,Ԛ?r  )gj+?gd`T?r   )r   r   g
ףp=
?)g=yX?gHzG?rl   )a+eig_vOf?g&1)r   g"~j?gL7A`?)gŏ1w-!r   gu?)r6   r	  gK7A)gJY8ֵ?g<,?g 	?)_Qڛr  gH})gI+?r   r  )gx&?r  r   )g"ur   g(0)rR   gT㥛 gX9v)gǘg;On?g&?)g<Nё\gh ogD)g镢?gmV}b?gx$(~?)gtF_?r   r  )r  g{Pk?r  )go?g>yX5ͻ?gGx$(?)r   r  gˡE?)r   geX?r  )gH}gKg&S)g"u?r   g2U0*)r   DJg&)ga4?g o_Ή?g-C6z?)I+g_LUr   )gDioɔgUN@r   )g+	hgI.!?gea)g[B>٬?g58EGr?gy):?)r   gj+r   )g~jtxr  ggj+)gǺF?g-C6g0*N)	r   r   r   r   r   r    r   r   r   r"   r   r   r  r  m  s(   O L@%#@%#@% 	$@% 	$	@%
 	$@% 	$@% 	$@% 	$@% 	$@% 	$@% 	$@% 	$@% 	$@% 	$@% 	$@%  	$!@%" 	$#@%$ 	$%@%& 	$'@%( 	$)@%* 	$+@%, 	$-@%. 	$/@%0 	$1@%2 	$3@%4 	$5@%6 	$7@%8 	$9@%: 	$;@%< 	$=@%> 	$?@%@ 	$A@%B 	$C@%D 	$E@%F 	$G@%H 	$I@%J 	$K@%L 	$M@%N 	$O@%P 	$Q@%R 	$S@%T 	$U@%V 	$W@%X 	$Y@%Z 	$[@%\ 	$]@%^ 	$_@%` 	$a@%b 	$c@%d 	$e@%f 	$g@%h 	$i@%j 	$k@%l 	$m@%n 	$o@%p 	$q@%r 	$s@%t 	$u@%v 	$w@%x 	$y@%z 	${@%| 	$}@%~ 	$@%@ 	$A@%D 9r   r  c                   $    e Zd ZdZdZdZd Zd Zy)HunyuanImage21Refinerr}   r   fk}Ж?c                 8   || j                   z  }t        j                  |d d d d d df   |fd      }|j                  ddddd      }|j                  \  }}}}}|j                  ||dz  d|z  ||      }|j                  ddddd      j                         }|S )Nr	   r   )dimr   r   r   )r   r7   catr   r   r   
contiguous)r   r   outb	f_times_2chws           r   r   z HunyuanImage21Refiner.process_in  s    t(((iiQ2A2X,!4kk!Q1a( #		9aAkk!Y!^QUAq9kk!Q1a(335
r   c                 H   || j                   z  }|j                  ddddd      }|j                  \  }}}}}|j                  ||d|dz  ||      }|j                  dddddd      j                  ||dz  |dz  ||      }|j                  ddddd      }|d d d d dd f   }|S )Nr   r   r	   r   r   r   )r   r   r   r   )r   r   zr+  fr-  r.  r/  s           r   r   z!HunyuanImage21Refiner.process_out  s    T&&&IIaAq!$1aAIIaAqAvq!,IIaAq!Q'//1q5!q&!QGIIaAq!$aABhKr   N)r   r   r   r   r   r   r   r   r"   r   r   r$  r$    s    OLr   r$  c                   0   e Zd Zg g dg dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d Zg d!Zd"Zd#Zd$Zd%Zd&Z	d'Z
y())HunyuanVideo15)r5   r  g<,Ԋ)r   g7A`в?r   )r   gV/?glxz,C)r  gZӼt?r   )gI+?gPkw?rY   )g	^)pr  gEԨ)gA`"?g0L
F%?cZB>?)gB>٬?ݵ|г?rg   )gec]?gΈr  )g1w-!?g0*?g2w-!?)rj   r6  g_vOn?)g_Q[r   r  )ggj+?g46<R?gDioɔ?)gr?gz?g$ۗ)r   g(0?geX?)gjM?gg?r  )g}гY?gQg~jth?)g/nr"  gB>٬)r   g@ǈg镢)gSt$gUدr   )gQ|a2?gJY?ghs?)gV-?gK=U?r!  )g%u?r   r  )gw-!l?gŏ1w-!o?r\   )gJ4?g-!lVgF%uk)gǘr  gDioɤ)r  gh|?5g1w-!)r   g46<Rr5  )r   gcZB?gPs?)r   r   gK=U)r   r-   gHPs?)r   ggsg@ǘ?)rn   gMOg?ܵ|r   r   rM   r   r%  lighttaehy1_5N)r   r   r   r   r   r   r   r    r!   r   r   r"   r   r   r4  r4    ss   !#!#! 	$! 	$	!
 	$! 	$! 	$! 	$! 	$! 	$! 	$! 	$! 	$! 	$! 	$!  	$!!" 	$#!$ 	$%!& 	$'!( 	$)!* 	$+!, 	$-!. 	$/!0 	$1!2 	$3!4 	$5!6 	$7!8 	$9!: 	$;!< 	$=!> 	$?!@ 	$A!F :O  L(r   r4  c                       e Zd ZdZdZdZy)Hunyuan3Dv2r}   r	   g֣M?Nr   r   r   r   r   r   r"   r   r   r9  r9        O%Lr   r9  c                       e Zd ZdZdZdZy)Hunyuan3Dv2_1g@_.?r}   r	   N)r   r   r   r   r   r   r"   r   r   r=  r=     s    %LOr   r=  c                       e Zd ZdZdZdZy)Hunyuan3Dv2minir}   r	   gy M?Nr:  r"   r   r   r?  r?    r;  r   r?  c                       e Zd ZdZdZy)ACEAudior   r   N)r   r   r   r   r   r"   r   r   rA  rA  
  s    Or   rA  c                       e Zd ZdZdZdZy)
ACEAudio15r}   r	   i  Nr~   r"   r   r   rC  rC    r   r   rC  c                   &    e Zd ZdZdZd Zd Zd Zy)ChromaRadiancer   r	   c                 $    g dg dg dg| _         y )N)r   r   r   )r   r   r   )r   r   r   )r   r0   s    r   r'   zChromaRadiance.__init__  s     	#
r   c                     |S r   r"   r   s     r   r   zChromaRadiance.process_in  r   r   c                     |S r   r"   r   s     r   r   zChromaRadiance.process_out"  r   r   Nr   r"   r   r   rE  rE    s    O
r   rE  c                       e Zd ZdZy)ZImagePixelSpaceu   Pixel-space latent format for ZImage DCT variant.
    No VAE encoding/decoding — the model operates directly on RGB pixels.
    Nr   r   r   __doc__r"   r   r   rJ  rJ  &       	r   rJ  c                       e Zd ZdZy)HiDreamO1Pixelu|   Pixel-space latent format for HiDream-O1.
    No VAE — model patches/unpatches raw RGB internally with patch_size=32.
    NrK  r"   r   r   rO  rO  ,  rM  r   rO  c                       e Zd Zy)PixelDiTPixelN)r   r   r   r"   r   r   rQ  rQ  2  s    r   rQ  c                   "    e Zd ZdZdZdZdZd Zy)	CogVideoXa  Latent format for CogVideoX-2b (THUDM/CogVideoX-2b).

    scale_factor matches the vae/config.json scaling_factor for the 2b variant.
    The 5b-class checkpoints (CogVideoX-5b, CogVideoX-1.5-5B, CogVideoX-Fun-V1.5-*)
    use a different value; see CogVideoX1_5 below.
    rM   r   r   c                     d| _         y )NgYi1p?r   r0   s    r   r'   zCogVideoX.__init__@  s
    &r   N)r   r   r   rL  r   r   r!   r'   r"   r   r   rS  rS  5  s     O 'r   rS  c                       e Zd ZdZd Zy)CogVideoX1_5aL  Latent format for 5b-class CogVideoX checkpoints.

    Covers THUDM/CogVideoX-5b, THUDM/CogVideoX-1.5-5B, and the CogVideoX-Fun
    V1.5-5b family (including VOID inpainting). All of these have
    scaling_factor=0.7 in their vae/config.json. Auto-selected in
    supported_models.CogVideoX_T2V based on transformer hidden dim.
    c                     d| _         y )Ngffffff?r   r0   s    r   r'   zCogVideoX1_5.__init__L  s
    r   N)r   r   r   rL  r'   r"   r   r   rV  rV  D  s     r   rV  )#r7   r   r$   r*   r2   rF   rL   r^   rb   r|   r   r   r   r   r   r   r   r   r   r   r   r  r$  r4  r9  r=  r?  rA  rC  rE  rJ  rO  rQ  rS  rV  r"   r   r   <module>rX     s   * *"
2< 
24< 4G, G4
L 

| 
0	
< 	
@, @@$< $
$< $
@3 @@0L 0d )GL )GVJC< JCX,D ,
!< !6:\ :40GL 0GdL6E L6\H9\ H9TL 0*)\ *)X&, &
L 
&l &
| $ $
\ &	~ 		^ 		N 	' '	 9 	 r   