UNPKG

@ludicon/spark.js

Version:

Real-Time GPU Texture Codecs for the Web

5 lines (4 loc) 36.3 kB
const _ = "enable f16;alias RTArr=array<vec4u>;struct _1{_0:RTArr,}@binding(1) @group(0) var _2:sampler;@binding(0) @group(0) var _3:texture_2d<f32>;var<private>x_5276:vec3u;var<private>x_5282:vec3u;@binding(2) @group(0) var<storage,read_write>x_5372:_1;const _4=vec2i(2i,0i);const _5=vec2i(0i,2i);const _6=vec2i(2i);const _7=vec4h(1.0h);const _8=vec4h(0.85986328125h,1.7099609375h,0.429931640625h,1.0h);const _9=vec2h(2.0h);const _a=vec2h(23.0h);const _b=vec2h(1.0h);fn _c(){var _d:bool;var _e:bool;var _f:f16;var _g:f16;var _h:f16;var _i:f16;var _j:f16;var _k:f16;var _l:bool;var _m:bool;var _n:f16;var _o:f16;var _p:u32;var _q:u32;var _r:f16;var _s:f16;var _t:u32;var _u:u32;var _v:bool;var _w:bool;var _x:u32;var _y:f16;var _z:f16;var _10:u32;var _11:u32;var _12:f16;var _13:f16;var _14:u32;var _15:u32;var _16:u32;var _17:bool;var _18:bool;var _19:u32;var _1a:f16;var _1b:f16;var _1c:u32;var _1d:u32;var _1e:f16;var _1f:f16;var _1g:u32;var _1h:u32;var _1i:u32;var _1j:bool;var _1k:bool;var _1l:u32;var _1m:f16;var _1n:f16;var _1o:u32;var _1p:u32;var _1q:f16;var _1r:f16;var _1s:u32;var _1t:u32;var _1u:u32;var _1v:bool;var _1w:bool;var _1x:u32;var _1y:f16;var _1z:f16;var _20:u32;var _21:u32;var _22:f16;var _23:f16;var _24:u32;var _25:u32;var _26:u32;var _27:bool;var _28:bool;var _29:u32;var _2a:f16;var _2b:f16;var _2c:u32;var _2d:u32;var _2e:f16;var _2f:f16;var _2g:u32;var _2h:u32;var _2i:u32;var _2j:bool;var _2k:bool;var _2l:u32;var _2m:f16;var _2n:f16;var _2o:u32;var _2p:u32;var _2q:f16;var _2r:f16;var _2s:u32;var _2t:u32;var _2u:u32;var _2v:bool;var _2w:bool;var _2x:u32;var _2y:f16;var _2z:f16;var _30:u32;var _31:u32;var _32:f16;var _33:f16;var _34:u32;var _35:u32;var _36:u32;var _37:bool;var _38:bool;var _39:u32;var _3a:f16;var _3b:f16;var _3c:u32;var _3d:u32;var _3e:f16;var _3f:f16;var _3g:u32;var _3h:u32;var _3i:u32;var _3j:bool;var _3k:bool;var _3l:u32;var _3m:f16;var _3n:f16;var _3o:u32;var _3p:u32;var _3q:f16;var _3r:f16;var _3s:u32;var _3t:u32;var _3u:u32;var _3v:bool;var _3w:bool;var _3x:u32;var _3y:f16;var _3z:f16;var _40:u32;var _41:u32;var _42:f16;var _43:f16;var _44:u32;var _45:u32;var _46:u32;var _47:bool;var _48:bool;var _49:u32;var _4a:f16;var _4b:f16;var _4c:u32;var _4d:u32;var _4e:f16;var _4f:f16;var _4g:u32;var _4h:u32;var _4i:u32;var _4j:bool;var _4k:bool;var _4l:u32;var _4m:f16;var _4n:f16;var _4o:u32;var _4p:u32;var _4q:f16;var _4r:f16;var _4s:u32;var _4t:u32;var _4u:u32;var _4v:bool;var _4w:bool;var _4x:u32;var _4y:f16;var _4z:f16;var _50:u32;var _51:u32;var _52:f16;var _53:f16;var _54:u32;var _55:u32;var _56:u32;var _57:bool;var _58:bool;var _59:u32;var _5a:f16;var _5b:f16;var _5c:u32;var _5d:u32;var _5e:f16;var _5f:f16;var _5g:u32;var _5h:u32;var _5i:u32;var _5j:bool;var _5k:bool;var _5l:u32;var _5m:f16;var _5n:f16;var _5o:u32;var _5p:u32;var _5q:f16;var _5r:f16;var _5s:u32;var _5t:u32;var _5u:u32;var _5v:f16;var _5w:f16;var _5x:f16;var _5y:f16;var _5z:f16;var _60:f16;var _61:f16;var _62:vec4h;var _63:vec4h;var _64:vec4h;var _65:vec4h;var _66:vec4h;var _67:vec4h;var _68:vec4h;var _69:vec4h;var _6a:vec4h;var _6b:vec4h;var _6c:vec4h;var _6d:vec4h;var _6e:vec4h;var _6f:vec4h;var _6g:vec4h;var _6h:vec4h;var _6i:u32;var _6j:u32;var _6k:vec4h;var _6l:u32;var _6m:u32;var _6n:vec4h;var _6o:vec2u;var _6p:vec2u;var _6q:vec4u;var _6r:vec4u;var _6s:u32;var _6t:u32;var _6u:u32;var _6v:u32;var _6w:u32;var _6x:u32;var _6y:u32;var _6z:u32;var _70:u32;var _71:u32;var _72:u32;var _73:u32;var _74:u32;var _75:u32;var _76:u32;var _77:u32;var _78:u32;var _79:u32;var _7a:vec4u;var _7b:vec4u;var _7c:vec4u;var _7d:vec4u;var _7e:vec4u;var _7f:vec4u;var _7g:vec4u;var _7h:vec4u;var _7i:vec4u;var _7j:vec4u;var _7k:vec4u;var _7l:vec4u;var _7m:vec4u;var _7n:vec4u;var _7o:u32;var _7p:u32;var _7q:u32;var _7r:u32;var _7s:u32;var _7t:u32;var _7u:vec4u;var _7v:vec4u;var _7w:vec4u;var _7x:vec4u;var _7y:vec4u;var _7z:vec4u;var _80:vec4u;var _81:vec4u;var _82:vec4u;switch(0u){default:{let _83=bitcast<vec2u>(vec2i(textureDimensions(_3,0i)));let _84=((_83.x+3u)/4u);let _85=x_5276;let _86=x_5276.xy;let _87=x_5276.x;let _88=(_87>=_84);_e=_88;if(!(_88)){_d=(_85.y>=((_83.y+3u)/4u));_e=_d;}if(_e){break;}let _89=(vec2f(1.0f)/vec2f(vec2i(textureDimensions(_3,0i))));let _8a=((vec2f(bitcast<vec2i>((_86*vec2u(4u))))*_89)+_89);let _8b=vec4h(textureGather(0i,_3,_2,_8a,vec2i()));let _8c=vec4h(textureGather(0i,_3,_2,_8a,_4));let _8d=vec4h(textureGather(0i,_3,_2,_8a,_5));let _8e=vec4h(textureGather(0i,_3,_2,_8a,_6));let _8f=vec4h(textureGather(1i,_3,_2,_8a,vec2i()));let _8g=vec4h(textureGather(1i,_3,_2,_8a,_4));let _8h=vec4h(textureGather(1i,_3,_2,_8a,_5));let _8i=vec4h(textureGather(1i,_3,_2,_8a,_6));let _8j=vec4h(textureGather(2i,_3,_2,_8a,vec2i()));let _8k=vec4h(textureGather(2i,_3,_2,_8a,_4));let _8l=vec4h(textureGather(2i,_3,_2,_8a,_5));let _8m=vec4h(textureGather(2i,_3,_2,_8a,_6));let _8n=vec4h(textureGather(3i,_3,_2,_8a,vec2i()));let _8o=vec4h(textureGather(3i,_3,_2,_8a,_4));let _8p=vec4h(textureGather(3i,_3,_2,_8a,_5));let _8q=vec4h(textureGather(3i,_3,_2,_8a,_6));let _8r=_8n.w;let _8s=vec4h(_8b.w,_8f.w,_8j.w,_8r);let _8t=_8n.z;let _8u=vec4h(_8b.z,_8f.z,_8j.z,_8t);let _8v=_8o.w;let _8w=vec4h(_8c.w,_8g.w,_8k.w,_8v);let _8x=_8o.z;let _8y=vec4h(_8c.z,_8g.z,_8k.z,_8x);let _8z=_8n.x;let _90=vec4h(_8b.x,_8f.x,_8j.x,_8z);let _91=_8n.y;let _92=vec4h(_8b.y,_8f.y,_8j.y,_91);let _93=_8o.x;let _94=vec4h(_8c.x,_8g.x,_8k.x,_93);let _95=_8o.y;let _96=vec4h(_8c.y,_8g.y,_8k.y,_95);let _97=_8p.w;let _98=vec4h(_8d.w,_8h.w,_8l.w,_97);let _99=_8p.z;let _9a=vec4h(_8d.z,_8h.z,_8l.z,_99);let _9b=_8q.w;let _9c=vec4h(_8e.w,_8i.w,_8m.w,_9b);let _9d=_8q.z;let _9e=vec4h(_8e.z,_8i.z,_8m.z,_9d);let _9f=_8p.x;let _9g=vec4h(_8d.x,_8h.x,_8l.x,_9f);let _9h=_8p.y;let _9i=vec4h(_8d.y,_8h.y,_8l.y,_9h);let _9j=_8q.x;let _9k=vec4h(_8e.x,_8i.x,_8m.x,_9j);let _9l=_8q.y;let _9m=vec4h(_8e.y,_8i.y,_8m.y,_9l);let _9n=(_8t<_8r);let _9o=select(1u,0u,_9n);let _9p=select(_8r,_8t,_9n);let _9q=(_8t>_8r);let _9r=select(1u,0u,_9q);let _9s=select(_8r,_8t,_9q);let _9t=(_8v<_9p);let _9u=select(select(_9o,(_9o+1u),(_8t==_9p)),0u,_9t);let _9v=select(_9p,_8v,_9t);let _9w=(_8v>_9s);let _9x=select(select(_9r,(_9r+1u),(_8t==_9s)),0u,_9w);let _9y=select(_9s,_8v,_9w);let _9z=(_8x<_9v);let _a0=select(select(_9u,(_9u+1u),(_8v==_9v)),0u,_9z);let _a1=select(_9v,_8x,_9z);let _a2=(_8x>_9y);let _a3=select(select(_9x,(_9x+1u),(_8v==_9y)),0u,_a2);let _a4=select(_9y,_8x,_a2);let _a5=(_8z<_a1);let _a6=select(select(_a0,(_a0+1u),(_8x==_a1)),0u,_a5);let _a7=select(_a1,_8z,_a5);let _a8=(_8z>_a4);let _a9=select(select(_a3,(_a3+1u),(_8x==_a4)),0u,_a8);let _aa=select(_a4,_8z,_a8);let _ab=(_91<_a7);let _ac=select(select(_a6,(_a6+1u),(_8z==_a7)),0u,_ab);let _ad=select(_a7,_91,_ab);let _ae=(_91>_aa);let _af=select(select(_a9,(_a9+1u),(_8z==_aa)),0u,_ae);let _ag=select(_aa,_91,_ae);let _ah=(_93<_ad);let _ai=select(select(_ac,(_ac+1u),(_91==_ad)),0u,_ah);let _aj=select(_ad,_93,_ah);let _ak=(_93>_ag);let _al=select(select(_af,(_af+1u),(_91==_ag)),0u,_ak);let _am=select(_ag,_93,_ak);let _an=(_95<_aj);let _ao=select(select(_ai,(_ai+1u),(_93==_aj)),0u,_an);let _ap=select(_aj,_95,_an);let _aq=(_95>_am);let _ar=select(select(_al,(_al+1u),(_93==_am)),0u,_aq);let _as=select(_am,_95,_aq);let _at=(_97<_ap);let _au=select(select(_ao,(_ao+1u),(_95==_ap)),0u,_at);let _av=select(_ap,_97,_at);let _aw=(_97>_as);let _ax=select(select(_ar,(_ar+1u),(_95==_as)),0u,_aw);let _ay=select(_as,_97,_aw);let _az=(_99<_av);let _b0=select(select(_au,(_au+1u),(_97==_av)),0u,_az);let _b1=select(_av,_99,_az);let _b2=(_99>_ay);let _b3=select(select(_ax,(_ax+1u),(_97==_ay)),0u,_b2);let _b4=select(_ay,_99,_b2);let _b5=(_9b<_b1);let _b6=select(select(_b0,(_b0+1u),(_99==_b1)),0u,_b5);let _b7=select(_b1,_9b,_b5);let _b8=(_9b>_b4);let _b9=select(select(_b3,(_b3+1u),(_99==_b4)),0u,_b8);let _ba=select(_b4,_9b,_b8);let _bb=(_9d<_b7);let _bc=select(select(_b6,(_b6+1u),(_9b==_b7)),0u,_bb);let _bd=select(_b7,_9d,_bb);let _be=(_9d>_ba);let _bf=select(select(_b9,(_b9+1u),(_9b==_ba)),0u,_be);let _bg=select(_ba,_9d,_be);let _bh=(_9f<_bd);let _bi=select(select(_bc,(_bc+1u),(_9d==_bd)),0u,_bh);let _bj=select(_bd,_9f,_bh);let _bk=(_9f>_bg);let _bl=select(select(_bf,(_bf+1u),(_9d==_bg)),0u,_bk);let _bm=select(_bg,_9f,_bk);let _bn=(_9h<_bj);let _bo=select(select(_bi,(_bi+1u),(_9f==_bj)),0u,_bn);let _bp=select(_bj,_9h,_bn);let _bq=(_9h>_bm);let _br=select(select(_bl,(_bl+1u),(_9f==_bm)),0u,_bq);let _bs=select(_bm,_9h,_bq);let _bt=(_9j<_bp);let _bu=select(select(_bo,(_bo+1u),(_9h==_bp)),0u,_bt);let _bv=select(_bp,_9j,_bt);let _bw=(_9j>_bs);let _bx=select(select(_br,(_br+1u),(_9h==_bs)),0u,_bw);let _by=select(_bs,_9j,_bw);let _bz=(((((((((((((((_8s+_8u)+_8w)+_8y)+_90)+_92)+_94)+_96)+_98)+_9a)+_9c)+_9e)+_9g)+_9i)+_9k)+_9m);let _c0=(_9l<_bv);let _c1=select(select(_bu,(_bu+1u),(_9j==_bv)),0u,_c0);let _c2=select(_bv,_9l,_c0);let _c3=(_9l>_by);let _c4=select(select(_bx,(_bx+1u),(_9j==_by)),0u,_c3);let _c5=select(_by,_9l,_c3);let _c6=clamp((f16(((select(_c1,(_c1+1u),(_9l==_c2))+select(_c4,(_c4+1u),(_9l==_c5)))-2u))*0.0714111328125h),0.0h,1.0h);let _c7=((_8s*16.0h)-_bz);let _c8=_c7.x;let _c9=_c7.y;let _ca=_c7.z;let _cb=_c7.w;let _cc=((_8u*16.0h)-_bz);let _cd=_cc.x;let _ce=_cc.y;let _cf=_cc.z;let _cg=_cc.w;let _ch=((_8w*16.0h)-_bz);let _ci=_ch.x;let _cj=_ch.y;let _ck=_ch.z;let _cl=_ch.w;let _cm=((_8y*16.0h)-_bz);let _cn=_cm.x;let _co=_cm.y;let _cp=_cm.z;let _cq=_cm.w;let _cr=((_90*16.0h)-_bz);let _cs=_cr.x;let _ct=_cr.y;let _cu=_cr.z;let _cv=_cr.w;let _cw=((_92*16.0h)-_bz);let _cx=_cw.x;let _cy=_cw.y;let _cz=_cw.z;let _d0=_cw.w;let _d1=((_94*16.0h)-_bz);let _d2=_d1.x;let _d3=_d1.y;let _d4=_d1.z;let _d5=_d1.w;let _d6=((_96*16.0h)-_bz);let _d7=_d6.x;let _d8=_d6.y;let _d9=_d6.z;let _da=_d6.w;let _db=((_98*16.0h)-_bz);let _dc=_db.x;let _dd=_db.y;let _de=_db.z;let _df=_db.w;let _dg=((_9a*16.0h)-_bz);let _dh=_dg.x;let _di=_dg.y;let _dj=_dg.z;let _dk=_dg.w;let _dl=((_9c*16.0h)-_bz);let _dm=_dl.x;let _dn=_dl.y;let _do=_dl.z;let _dp=_dl.w;let _dq=((_9e*16.0h)-_bz);let _dr=_dq.x;let _ds=_dq.y;let _dt=_dq.z;let _du=_dq.w;let _dv=((_9g*16.0h)-_bz);let _dw=_dv.x;let _dx=_dv.y;let _dy=_dv.z;let _dz=_dv.w;let _e0=((_9i*16.0h)-_bz);let _e1=_e0.x;let _e2=_e0.y;let _e3=_e0.z;let _e4=_e0.w;let _e5=((_9k*16.0h)-_bz);let _e6=_e5.x;let _e7=_e5.y;let _e8=_e5.z;let _e9=_e5.w;let _ea=((_9m*16.0h)-_bz);let _eb=_ea.x;let _ec=((((((((((((((((_c8*_c8)+(_cd*_cd))+(_ci*_ci))+(_cn*_cn))+(_cs*_cs))+(_cx*_cx))+(_d2*_d2))+(_d7*_d7))+(_dc*_dc))+(_dh*_dh))+(_dm*_dm))+(_dr*_dr))+(_dw*_dw))+(_e1*_e1))+(_e6*_e6))+(_eb*_eb));let _ed=_ea.y;let _ee=_ea.z;let _ef=_ea.w;let _eg=((((((((((((((((_c9*_c9)+(_ce*_ce))+(_cj*_cj))+(_co*_co))+(_ct*_ct))+(_cy*_cy))+(_d3*_d3))+(_d8*_d8))+(_dd*_dd))+(_di*_di))+(_dn*_dn))+(_ds*_ds))+(_dx*_dx))+(_e2*_e2))+(_e7*_e7))+(_ed*_ed));let _eh=((((((((((((((((_ca*_ca)+(_cf*_cf))+(_ck*_ck))+(_cp*_cp))+(_cu*_cu))+(_cz*_cz))+(_d4*_d4))+(_d9*_d9))+(_de*_de))+(_dj*_dj))+(_do*_do))+(_dt*_dt))+(_dy*_dy))+(_e3*_e3))+(_e8*_e8))+(_ee*_ee));let _ei=((((((((((((((((_cb*_cb)+(_cg*_cg))+(_cl*_cl))+(_cq*_cq))+(_cv*_cv))+(_d0*_d0))+(_d5*_d5))+(_da*_da))+(_df*_df))+(_dk*_dk))+(_dp*_dp))+(_du*_du))+(_dz*_dz))+(_e4*_e4))+(_e9*_e9))+(_ef*_ef));let _ej=select(1.0h,0.015625h,(max(max(_ec,_eg),max(_eh,_ei))>64.0h));let _ek=(_ec*_ej);let _el=(((((((((((((((((_c8*_c9)+(_cd*_ce))+(_ci*_cj))+(_cn*_co))+(_cs*_ct))+(_cx*_cy))+(_d2*_d3))+(_d7*_d8))+(_dc*_dd))+(_dh*_di))+(_dm*_dn))+(_dr*_ds))+(_dw*_dx))+(_e1*_e2))+(_e6*_e7))+(_eb*_ed))*_ej);let _em=(((((((((((((((((_c8*_ca)+(_cd*_cf))+(_ci*_ck))+(_cn*_cp))+(_cs*_cu))+(_cx*_cz))+(_d2*_d4))+(_d7*_d9))+(_dc*_de))+(_dh*_dj))+(_dm*_do))+(_dr*_dt))+(_dw*_dy))+(_e1*_e3))+(_e6*_e8))+(_eb*_ee))*_ej);let _en=(((((((((((((((((_c8*_cb)+(_cd*_cg))+(_ci*_cl))+(_cn*_cq))+(_cs*_cv))+(_cx*_d0))+(_d2*_d5))+(_d7*_da))+(_dc*_df))+(_dh*_dk))+(_dm*_dp))+(_dr*_du))+(_dw*_dz))+(_e1*_e4))+(_e6*_e9))+(_eb*_ef))*_ej);let _eo=(_eg*_ej);let _ep=(((((((((((((((((_c9*_ca)+(_ce*_cf))+(_cj*_ck))+(_co*_cp))+(_ct*_cu))+(_cy*_cz))+(_d3*_d4))+(_d8*_d9))+(_dd*_de))+(_di*_dj))+(_dn*_do))+(_ds*_dt))+(_dx*_dy))+(_e2*_e3))+(_e7*_e8))+(_ed*_ee))*_ej);let _eq=(((((((((((((((((_c9*_cb)+(_ce*_cg))+(_cj*_cl))+(_co*_cq))+(_ct*_cv))+(_cy*_d0))+(_d3*_d5))+(_d8*_da))+(_dd*_df))+(_di*_dk))+(_dn*_dp))+(_ds*_du))+(_dx*_dz))+(_e2*_e4))+(_e7*_e9))+(_ed*_ef))*_ej);let _er=(_eh*_ej);let _es=(((((((((((((((((_ca*_cb)+(_cf*_cg))+(_ck*_cl))+(_cp*_cq))+(_cu*_cv))+(_cz*_d0))+(_d4*_d5))+(_d9*_da))+(_de*_df))+(_dj*_dk))+(_do*_dp))+(_dt*_du))+(_dy*_dz))+(_e3*_e4))+(_e8*_e9))+(_ee*_ef))*_ej);let _et=(_ei*_ej);let _eu=(_c5-_c2);let _ev=abs(((_en+(select(1.0h,-1.0h,(_en<0.0h))*0.0078125h))*inverseSqrt(((_ek*_et)+0.00006103515625h))));let _ew=abs(((_eq+(select(1.0h,-1.0h,(_eq<0.0h))*0.0078125h))*inverseSqrt(((_eo*_et)+0.00006103515625h))));let _ex=abs(((_es+(select(1.0h,-1.0h,(_es<0.0h))*0.0078125h))*inverseSqrt(((_er*_et)+0.00006103515625h))));let _ey=select(select(select((_eu>=0.0208282470703125h),false,(max(max(_ev,_ew),_ex)>=1.0h)),false,(min(min(_ev,_ew),_ex)>0.7998046875h)),false,((((_ek+_eo)+_er)+_et)<0.0313720703125h));let _ez=select(_en,0.0h,_ey);let _f0=select(_eq,0.0h,_ey);let _f1=select(_es,0.0h,_ey);let _f2=select(_et,0.0h,_ey);let _f3=(vec4h(_ek,_eo,_er,_f2)+vec4h(0.0001220703125h,0.0001220703125h,0.0001220703125h,0.0h));let _f4=vec4h((vec4f(_f3)*(1.0f/f32(max(max(_f3.x,_f3.y),max(_f3.z,_f3.w))))));let _f5=_f4.x;_g=_f5;if((_ez<0.0h)){_f=-(_f5);_g=_f;}let _f6=_f4.y;_i=_f6;if((_f0<0.0h)){_h=-(_f6);_i=_h;}let _f7=_f4.z;_k=_f7;if((_f1<0.0h)){_j=-(_f7);_k=_j;}let _f8=_f4.w;let _f9=((((_g*_ek)+(_i*_el))+(_k*_em))+(_f8*_ez));let _fa=((((_g*_el)+(_i*_eo))+(_k*_ep))+(_f8*_f0));let _fb=((((_g*_em)+(_i*_ep))+(_k*_er))+(_f8*_f1));let _fc=((((_g*_ez)+(_i*_f0))+(_k*_f1))+(_f8*_f2));let _fd=max(max(abs(_f9),abs(_fa)),max(abs(_fb),abs(_fc)));let _fe=vec4h((vec4f(f32(_f9),f32(_fa),f32(_fb),f32(_fc))*(1.0f/f32(select(_fd,1.0h,(_fd==0.0h))))));let _ff=_fe.x;let _fg=_fe.y;let _fh=_fe.z;let _fi=_fe.w;let _fj=((((_ff*_ek)+(_fg*_el))+(_fh*_em))+(_fi*_ez));let _fk=((((_ff*_el)+(_fg*_eo))+(_fh*_ep))+(_fi*_f0));let _fl=((((_ff*_em)+(_fg*_ep))+(_fh*_er))+(_fi*_f1));let _fm=((((_ff*_ez)+(_fg*_f0))+(_fh*_f1))+(_fi*_f2));let _fn=max(max(abs(_fj),abs(_fk)),max(abs(_fl),abs(_fm)));let _fo=(_fn==0.0h);let _fp=select(vec4h((vec4f(f32(_fj),f32(_fk),f32(_fl),f32(_fm))*(1.0f/f32(select(_fn,1.0h,_fo))))),_7,vec4<bool>(_fo));let _fq=(_bz*0.0625h);let _fr=(_fp*_8);let _fs=(1.0h/dot(_fr,_fr));let _ft=((_fr*_fs)*_8);let _fu=dot(_8s,_ft);let _fv=!(_ey);let _fw=!(_fv);_m=_fv;if(_fw){_l=(f32(_8r)>0.0f);_m=_l;}_r=-65504.0h;_s=65504.0h;_t=0u;_u=0u;if(_m){_n=select(65504.0h,_fu,(_fu<65504.0h));_o=select(-65504.0h,_fu,(_fu>-65504.0h));_p=select(0u,1u,(_fu==_n));_q=select(0u,1u,(_fu==_o));_r=_o;_s=_n;_t=_q;_u=_p;}let _fx=select(0u,1u,_m);let _fy=dot(_8u,_ft);_w=_fv;if(_fw){_v=(f32(_8t)>0.0f);_w=_v;}_12=_r;_13=_s;_14=_fx;_15=_t;_16=_u;if(_w){_x=(_fx+bitcast<u32>(1i));let _fz=(_fy<_s);let _g0=select(_u,0u,_fz);_y=select(_s,_fy,_fz);let _g1=(_fy>_r);let _g2=select(_t,0u,_g1);_z=select(_r,_fy,_g1);_10=select(_g0,(_g0+1u),(_fy==_y));_11=select(_g2,(_g2+1u),(_fy==_z));_12=_z;_13=_y;_14=_x;_15=_11;_16=_10;}let _g3=dot(_8w,_ft);_18=_fv;if(_fw){_17=(f32(_8v)>0.0f);_18=_17;}_1e=_12;_1f=_13;_1g=_14;_1h=_15;_1i=_16;if(_18){_19=(_14+bitcast<u32>(1i));let _g4=(_g3<_13);let _g5=select(_16,0u,_g4);_1a=select(_13,_g3,_g4);let _g6=(_g3>_12);let _g7=select(_15,0u,_g6);_1b=select(_12,_g3,_g6);_1c=select(_g5,(_g5+1u),(_g3==_1a));_1d=select(_g7,(_g7+1u),(_g3==_1b));_1e=_1b;_1f=_1a;_1g=_19;_1h=_1d;_1i=_1c;}let _g8=dot(_8y,_ft);_1k=_fv;if(_fw){_1j=(f32(_8x)>0.0f);_1k=_1j;}_1q=_1e;_1r=_1f;_1s=_1g;_1t=_1h;_1u=_1i;if(_1k){_1l=(_1g+bitcast<u32>(1i));let _g9=(_g8<_1f);let _ga=select(_1i,0u,_g9);_1m=select(_1f,_g8,_g9);let _gb=(_g8>_1e);let _gc=select(_1h,0u,_gb);_1n=select(_1e,_g8,_gb);_1o=select(_ga,(_ga+1u),(_g8==_1m));_1p=select(_gc,(_gc+1u),(_g8==_1n));_1q=_1n;_1r=_1m;_1s=_1l;_1t=_1p;_1u=_1o;}let _gd=dot(_90,_ft);_1w=_fv;if(_fw){_1v=(f32(_8z)>0.0f);_1w=_1v;}_22=_1q;_23=_1r;_24=_1s;_25=_1t;_26=_1u;if(_1w){_1x=(_1s+bitcast<u32>(1i));let _ge=(_gd<_1r);let _gf=select(_1u,0u,_ge);_1y=select(_1r,_gd,_ge);let _gg=(_gd>_1q);let _gh=select(_1t,0u,_gg);_1z=select(_1q,_gd,_gg);_20=select(_gf,(_gf+1u),(_gd==_1y));_21=select(_gh,(_gh+1u),(_gd==_1z));_22=_1z;_23=_1y;_24=_1x;_25=_21;_26=_20;}let _gi=dot(_92,_ft);_28=_fv;if(_fw){_27=(f32(_91)>0.0f);_28=_27;}_2e=_22;_2f=_23;_2g=_24;_2h=_25;_2i=_26;if(_28){_29=(_24+bitcast<u32>(1i));let _gj=(_gi<_23);let _gk=select(_26,0u,_gj);_2a=select(_23,_gi,_gj);let _gl=(_gi>_22);let _gm=select(_25,0u,_gl);_2b=select(_22,_gi,_gl);_2c=select(_gk,(_gk+1u),(_gi==_2a));_2d=select(_gm,(_gm+1u),(_gi==_2b));_2e=_2b;_2f=_2a;_2g=_29;_2h=_2d;_2i=_2c;}let _gn=dot(_94,_ft);_2k=_fv;if(_fw){_2j=(f32(_93)>0.0f);_2k=_2j;}_2q=_2e;_2r=_2f;_2s=_2g;_2t=_2h;_2u=_2i;if(_2k){_2l=(_2g+bitcast<u32>(1i));let _go=(_gn<_2f);let _gp=select(_2i,0u,_go);_2m=select(_2f,_gn,_go);let _gq=(_gn>_2e);let _gr=select(_2h,0u,_gq);_2n=select(_2e,_gn,_gq);_2o=select(_gp,(_gp+1u),(_gn==_2m));_2p=select(_gr,(_gr+1u),(_gn==_2n));_2q=_2n;_2r=_2m;_2s=_2l;_2t=_2p;_2u=_2o;}let _gs=dot(_96,_ft);_2w=_fv;if(_fw){_2v=(f32(_95)>0.0f);_2w=_2v;}_32=_2q;_33=_2r;_34=_2s;_35=_2t;_36=_2u;if(_2w){_2x=(_2s+bitcast<u32>(1i));let _gt=(_gs<_2r);let _gu=select(_2u,0u,_gt);_2y=select(_2r,_gs,_gt);let _gv=(_gs>_2q);let _gw=select(_2t,0u,_gv);_2z=select(_2q,_gs,_gv);_30=select(_gu,(_gu+1u),(_gs==_2y));_31=select(_gw,(_gw+1u),(_gs==_2z));_32=_2z;_33=_2y;_34=_2x;_35=_31;_36=_30;}let _gx=dot(_98,_ft);_38=_fv;if(_fw){_37=(f32(_97)>0.0f);_38=_37;}_3e=_32;_3f=_33;_3g=_34;_3h=_35;_3i=_36;if(_38){_39=(_34+bitcast<u32>(1i));let _gy=(_gx<_33);let _gz=select(_36,0u,_gy);_3a=select(_33,_gx,_gy);let _h0=(_gx>_32);let _h1=select(_35,0u,_h0);_3b=select(_32,_gx,_h0);_3c=select(_gz,(_gz+1u),(_gx==_3a));_3d=select(_h1,(_h1+1u),(_gx==_3b));_3e=_3b;_3f=_3a;_3g=_39;_3h=_3d;_3i=_3c;}let _h2=dot(_9a,_ft);_3k=_fv;if(_fw){_3j=(f32(_99)>0.0f);_3k=_3j;}_3q=_3e;_3r=_3f;_3s=_3g;_3t=_3h;_3u=_3i;if(_3k){_3l=(_3g+bitcast<u32>(1i));let _h3=(_h2<_3f);let _h4=select(_3i,0u,_h3);_3m=select(_3f,_h2,_h3);let _h5=(_h2>_3e);let _h6=select(_3h,0u,_h5);_3n=select(_3e,_h2,_h5);_3o=select(_h4,(_h4+1u),(_h2==_3m));_3p=select(_h6,(_h6+1u),(_h2==_3n));_3q=_3n;_3r=_3m;_3s=_3l;_3t=_3p;_3u=_3o;}let _h7=dot(_9c,_ft);_3w=_fv;if(_fw){_3v=(f32(_9b)>0.0f);_3w=_3v;}_42=_3q;_43=_3r;_44=_3s;_45=_3t;_46=_3u;if(_3w){_3x=(_3s+bitcast<u32>(1i));let _h8=(_h7<_3r);let _h9=select(_3u,0u,_h8);_3y=select(_3r,_h7,_h8);let _ha=(_h7>_3q);let _hb=select(_3t,0u,_ha);_3z=select(_3q,_h7,_ha);_40=select(_h9,(_h9+1u),(_h7==_3y));_41=select(_hb,(_hb+1u),(_h7==_3z));_42=_3z;_43=_3y;_44=_3x;_45=_41;_46=_40;}let _hc=dot(_9e,_ft);_48=_fv;if(_fw){_47=(f32(_9d)>0.0f);_48=_47;}_4e=_42;_4f=_43;_4g=_44;_4h=_45;_4i=_46;if(_48){_49=(_44+bitcast<u32>(1i));let _hd=(_hc<_43);let _he=select(_46,0u,_hd);_4a=select(_43,_hc,_hd);let _hf=(_hc>_42);let _hg=select(_45,0u,_hf);_4b=select(_42,_hc,_hf);_4c=select(_he,(_he+1u),(_hc==_4a));_4d=select(_hg,(_hg+1u),(_hc==_4b));_4e=_4b;_4f=_4a;_4g=_49;_4h=_4d;_4i=_4c;}let _hh=dot(_9g,_ft);_4k=_fv;if(_fw){_4j=(f32(_9f)>0.0f);_4k=_4j;}_4q=_4e;_4r=_4f;_4s=_4g;_4t=_4h;_4u=_4i;if(_4k){_4l=(_4g+bitcast<u32>(1i));let _hi=(_hh<_4f);let _hj=select(_4i,0u,_hi);_4m=select(_4f,_hh,_hi);let _hk=(_hh>_4e);let _hl=select(_4h,0u,_hk);_4n=select(_4e,_hh,_hk);_4o=select(_hj,(_hj+1u),(_hh==_4m));_4p=select(_hl,(_hl+1u),(_hh==_4n));_4q=_4n;_4r=_4m;_4s=_4l;_4t=_4p;_4u=_4o;}let _hm=dot(_9i,_ft);_4w=_fv;if(_fw){_4v=(f32(_9h)>0.0f);_4w=_4v;}_52=_4q;_53=_4r;_54=_4s;_55=_4t;_56=_4u;if(_4w){_4x=(_4s+bitcast<u32>(1i));let _hn=(_hm<_4r);let _ho=select(_4u,0u,_hn);_4y=select(_4r,_hm,_hn);let _hp=(_hm>_4q);let _hq=select(_4t,0u,_hp);_4z=select(_4q,_hm,_hp);_50=select(_ho,(_ho+1u),(_hm==_4y));_51=select(_hq,(_hq+1u),(_hm==_4z));_52=_4z;_53=_4y;_54=_4x;_55=_51;_56=_50;}let _hr=dot(_9k,_ft);_58=_fv;if(_fw){_57=(f32(_9j)>0.0f);_58=_57;}_5e=_52;_5f=_53;_5g=_54;_5h=_55;_5i=_56;if(_58){_59=(_54+bitcast<u32>(1i));let _hs=(_hr<_53);let _ht=select(_56,0u,_hs);_5a=select(_53,_hr,_hs);let _hu=(_hr>_52);let _hv=select(_55,0u,_hu);_5b=select(_52,_hr,_hu);_5c=select(_ht,(_ht+1u),(_hr==_5a));_5d=select(_hv,(_hv+1u),(_hr==_5b));_5e=_5b;_5f=_5a;_5g=_59;_5h=_5d;_5i=_5c;}let _hw=dot(_9m,_ft);_5k=_fv;if(_fw){_5j=(f32(_9l)>0.0f);_5k=_5j;}_5q=_5e;_5r=_5f;_5s=_5g;_5t=_5h;_5u=_5i;if(_5k){_5l=(_5g+bitcast<u32>(1i));let _hx=(_hw<_5f);let _hy=select(_5i,0u,_hx);_5m=select(_5f,_hw,_hx);let _hz=(_hw>_5e);let _i0=select(_5h,0u,_hz);_5n=select(_5e,_hw,_hz);_5o=select(_hy,(_hy+1u),(_hw==_5m));_5p=select(_i0,(_i0+1u),(_hw==_5n));_5q=_5n;_5r=_5m;_5s=_5l;_5t=_5p;_5u=_5o;}var _i1:f16;var _i2:f16;var _i3:f16;let _i4=dot(_fq,_ft);let _i5=(_5r-_i4);let _i6=(_5q-_i4);let _i7=select(3i,2i,_ey);let _i8=select(192i,48i,_ey);_i1=((_i6-_i5)*clamp((1.0h-clamp((f16((_5u+_5t))/f16(_5s)),0.0h,1.0h)),0.0h,1.0h));let _i9=(_i7==2i);if(_i9){_5v=(_i1*0.0625h);_5x=_5v;}else{var _ia:f16;if((_i7==3i)){_i2=(_i1*0.03125h);_5w=_i2;}else{_i3=_i1;if((_i7==4i)){_ia=(_i1*0.015625h);_i3=_ia;}_5w=_i3;}_5x=_5w;}var _ib:f16;var _ic:f16;var _id:f16;let _ie=(_i5+_5x);let _if=(_i6-_5x);_60=_if;_61=_ie;if((_i8<256i)){var _ig:f16;var _ih:f16;var _ii:f16;_ig=(1.0h/f16(_i8));if(_i9){_ib=(_ig*1.0h);_id=_ib;}else{var _ij:f16;if((_i7==3i)){_ih=(_ig*2.0h);_ic=_ih;}else{_ii=_ig;if((_i7==4i)){_ij=(_ig*4.0h);_ii=_ij;}_ic=_ii;}_id=_ic;}let _ik=max(0.0h,(((((0.6357421875h*_id)*_fs)+(0.36376953125h*_id))-(_if-_ie))*0.5h));_5y=(_ie-_ik);_5z=(_if+_ik);_60=_5z;_61=_5y;}var _il:f16;var _im:f16;var _in:f16;var _io:f16;let _ip=clamp(((_fp*_61)+_fq),vec4h(),_7);let _iq=clamp(((_fp*_60)+_fq),vec4h(),_7);_64=_iq;_65=_ip;if(_ey){let _ir=((_eu*clamp((1.0h-_c6),0.0h,1.0h))*0.0625h);_im=_c2;if((_c2>0.0h)){_il=(_c2+_ir);_im=_il;}_io=_c5;if((_c5<1.0h)){_in=(_c5-_ir);_io=_in;}let _is=max(0.0h,(((1.0h/f16(48i))-(_io-_im))*0.5h));_62=_ip;_62.w=clamp((_im-_is),0.0h,1.0h);_63=_iq;_63.w=clamp((_io+_is),0.0h,1.0h);_64=_63;_65=_62;}let _it=f16((_i8-1i));let _iu=trunc((_65*_it));let _iv=trunc((_64*_it));let _iw=(_iu+_7);let _ix=(_iv+_7);if((_i8==48i)){let _iy=_iu.xy;let _iz=(_iy*5.0h);let _j0=((_iz+trunc((abs((_iz+_9))*0.08331298828125h)))+select(vec2h(),_b,(_iy>_a)));let _j1=_iu.zw;let _j2=(_j1*5.0h);let _j3=((_j2+trunc((abs((_j2+_9))*0.08331298828125h)))+select(vec2h(),_b,(_j1>_a)));_66=vec4h(_j0.x,_j0.y,_j3.x,_j3.y);let _j4=_iw.xy;let _j5=(_j4*5.0h);let _j6=((_j5+trunc((abs((_j5+_9))*0.08331298828125h)))+select(vec2h(),_b,(_j4>_a)));let _j7=_iw.zw;let _j8=(_j7*5.0h);let _j9=((_j8+trunc((abs((_j8+_9))*0.08331298828125h)))+select(vec2h(),_b,(_j7>_a)));_67=vec4h(_j6.x,_j6.y,_j9.x,_j9.y);let _ja=_iv.xy;let _jb=(_ja*5.0h);let _jc=((_jb+trunc((abs((_jb+_9))*0.08331298828125h)))+select(vec2h(),_b,(_ja>_a)));let _jd=_iv.zw;let _je=(_jd*5.0h);let _jf=((_je+trunc((abs((_je+_9))*0.08331298828125h)))+select(vec2h(),_b,(_jd>_a)));_68=vec4h(_jc.x,_jc.y,_jf.x,_jf.y);let _jg=_ix.xy;let _jh=(_jg*5.0h);let _ji=((_jh+trunc((abs((_jh+_9))*0.08331298828125h)))+select(vec2h(),_b,(_jg>_a)));let _jj=_ix.zw;let _jk=(_jj*5.0h);let _jl=((_jk+trunc((abs((_jk+_9))*0.08331298828125h)))+select(vec2h(),_b,(_jj>_a)));_69=vec4h(_ji.x,_ji.y,_jl.x,_jl.y);_6e=_69;_6f=_68;_6g=_67;_6h=_66;}else{let _jm=_iu.xy;let _jn=trunc((trunc((_jm*0.01041412353515625h))+(_jm*1.3330078125h)));let _jo=_iu.zw;let _jp=trunc((trunc((_jo*0.01041412353515625h))+(_jo*1.3330078125h)));_6a=vec4h(_jn.x,_jn.y,_jp.x,_jp.y);let _jq=_iw.xy;let _jr=trunc((trunc((_jq*0.01041412353515625h))+(_jq*1.3330078125h)));let _js=_iw.zw;let _jt=trunc((trunc((_js*0.01041412353515625h))+(_js*1.3330078125h)));_6b=vec4h(_jr.x,_jr.y,_jt.x,_jt.y);let _ju=_iv.xy;let _jv=trunc((trunc((_ju*0.01041412353515625h))+(_ju*1.3330078125h)));let _jw=_iv.zw;let _jx=trunc((trunc((_jw*0.01041412353515625h))+(_jw*1.3330078125h)));_6c=vec4h(_jv.x,_jv.y,_jx.x,_jx.y);let _jy=_ix.xy;let _jz=trunc((trunc((_jy*0.01041412353515625h))+(_jy*1.3330078125h)));let _k0=_ix.zw;let _k1=trunc((trunc((_k0*0.01041412353515625h))+(_k0*1.3330078125h)));_6d=vec4h(_jz.x,_jz.y,_k1.x,_k1.y);_6e=_6d;_6f=_6c;_6g=_6b;_6h=_6a;}var _k2:f16;var _k3:f16;let _k4=select(_6h,_6g,((_65*510.0h)>(_6h+_6g)));let _k5=select(_6f,_6e,((_64*510.0h)>(_6f+_6e)));let _k6=vec4<bool>((((_k5.x+_k5.y)+_k5.z)<((_k4.x+_k4.y)+_k4.z)));let _k7=select(_k5,_k4,_k6);let _k8=select(_k4,_k5,_k6);let _k9=(((_k7-_k8)*_8)*0.0039215087890625h);_6l=0u;_6m=0u;_6n=_k9;if(_ey){let _ka=_k8.w;let _kb=((_k7.w-_ka)*0.0039215087890625h);if(!((_kb==0.0h))){_k2=(1.0h/_kb);_k3=_k2;}else{_k3=1.0h;}let _kc=((_ka*_k3)*0.0039215087890625h);_6i=((((((((0u|(u32(((3.0h*clamp(((_8r*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(2i)))|(u32(((3.0h*clamp(((_8t*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(6i)))|(u32(((3.0h*clamp(((_8v*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(10i)))|(u32(((3.0h*clamp(((_8x*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(14i)))|(u32(((3.0h*clamp(((_8z*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(18i)))|(u32(((3.0h*clamp(((_91*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(22i)))|(u32(((3.0h*clamp(((_93*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(26i)))|(u32(((3.0h*clamp(((_95*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(30i)));_6j=((((((((0u|(u32(((3.0h*clamp(((_97*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(2i)))|(u32(((3.0h*clamp(((_99*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(6i)))|(u32(((3.0h*clamp(((_9b*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(10i)))|(u32(((3.0h*clamp(((_9d*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(14i)))|(u32(((3.0h*clamp(((_9f*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(18i)))|(u32(((3.0h*clamp(((_9h*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(22i)))|(u32(((3.0h*clamp(((_9j*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(26i)))|(u32(((3.0h*clamp(((_9l*_k3)-_kc),0.0h,1.0h))+0.5h))<<bitcast<u32>(30i)));_6k=_k9;_6k.w=0.0h;_6l=_6j;_6m=_6i;_6n=_6k;}let _kd=((_6n*(1.0h/dot(_6n,_6n)))*_8);let _ke=(dot(_k8,_kd)*0.0039215087890625h);let _kf=select(3i,4i,_ey);let _kg=select(7.0h,3.0h,_ey);let _kh=(_kf*2i);let _ki=(_kf*3i);let _kj=(_kf*4i);let _kk=(_kf*5i);let _kl=(_kf*6i);let _km=(_kf*7i);let _kn=((((((((_6m|(u32(((_kg*clamp((dot(_8s,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(0i)))|(u32(((_kg*clamp((dot(_8u,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kf)))|(u32(((_kg*clamp((dot(_8w,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kh)))|(u32(((_kg*clamp((dot(_8y,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_ki)))|(u32(((_kg*clamp((dot(_90,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kj)))|(u32(((_kg*clamp((dot(_92,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kk)))|(u32(((_kg*clamp((dot(_94,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kl)))|(u32(((_kg*clamp((dot(_96,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_km)));let _ko=((((((((_6l|(u32(((_kg*clamp((dot(_98,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(0i)))|(u32(((_kg*clamp((dot(_9a,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kf)))|(u32(((_kg*clamp((dot(_9c,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kh)))|(u32(((_kg*clamp((dot(_9e,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_ki)))|(u32(((_kg*clamp((dot(_9g,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kj)))|(u32(((_kg*clamp((dot(_9i,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kk)))|(u32(((_kg*clamp((dot(_9k,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_kl)))|(u32(((_kg*clamp((dot(_9m,_kd)-_ke),0.0h,1.0h))+0.5h))<<bitcast<u32>(_km)));_6p=vec2u(_kn,_ko);if(_fv){_6o=vec2u((_kn|(_ko<<bitcast<u32>(24i))),(_ko>>bitcast<u32>(8i)));_6p=_6o;}var _kp=vec4u();_kp.x=select(98387u,99394u,_ey);let _kq=_kp;_6r=_kp;if(_ey){_6q=_kq;_6q.y=3221225472u;_6r=_6q;}let _kr=u32(_k8.x);let _ks=(_i8==192i);let _kt=select(4u,2u,_ks);let _ku=(((_kr+select(0u,1u,(_kr<128u)))*3u)>>_kt);let _kv=select(1u,4u,_ks);let _kw=(_kv*16u);let _kx=((_kv*48u)-2u);let _ky=((_kw*_ku)-(_kx*((_ku*1366u)>>bitcast<u32>(12i))));let _kz=(_kv*24u);_6t=_ky;if((_ku>=_kz)){_6s=(((_kv*64u)-1u)-_ky);_6t=_6s;}let _l0=u32(_k7.x);let _l1=(((_l0+select(0u,1u,(_l0<128u)))*3u)>>_kt);let _l2=((_kw*_l1)-(_kx*((_l1*1366u)>>bitcast<u32>(12i))));_6v=_l2;if((_l1>=_kz)){_6u=(((_kv*64u)-1u)-_l2);_6v=_6u;}let _l3=u32(_k8.y);let _l4=(((_l3+select(0u,1u,(_l3<128u)))*3u)>>_kt);let _l5=((_kw*_l4)-(_kx*((_l4*1366u)>>bitcast<u32>(12i))));_6x=_l5;if((_l4>=_kz)){_6w=(((_kv*64u)-1u)-_l5);_6x=_6w;}let _l6=u32(_k7.y);let _l7=(((_l6+select(0u,1u,(_l6<128u)))*3u)>>_kt);let _l8=((_kw*_l7)-(_kx*((_l7*1366u)>>bitcast<u32>(12i))));_6z=_l8;if((_l7>=_kz)){_6y=(((_kv*64u)-1u)-_l8);_6z=_6y;}let _l9=u32(_k8.z);let _la=(((_l9+select(0u,1u,(_l9<128u)))*3u)>>_kt);let _lb=((_kw*_la)-(_kx*((_la*1366u)>>bitcast<u32>(12i))));_71=_lb;if((_la>=_kz)){_70=(((_kv*64u)-1u)-_lb);_71=_70;}let _lc=u32(_k7.z);let _ld=(((_lc+select(0u,1u,(_lc<128u)))*3u)>>_kt);let _le=((_kw*_ld)-(_kx*((_ld*1366u)>>bitcast<u32>(12i))));_73=_le;if((_ld>=_kz)){_72=(((_kv*64u)-1u)-_le);_73=_72;}let _lf=u32(_k8.w);let _lg=(((_lf+select(0u,1u,(_lf<128u)))*3u)>>_kt);let _lh=((_kw*_lg)-(_kx*((_lg*1366u)>>bitcast<u32>(12i))));_75=_lh;if((_lg>=_kz)){_74=(((_kv*64u)-1u)-_lh);_75=_74;}let _li=u32(_k7.w);let _lj=(((_li+select(0u,1u,(_li<128u)))*3u)>>_kt);let _lk=((_kw*_lj)-(_kx*((_lj*1366u)>>bitcast<u32>(12i))));_77=_lk;if((_lj>=_kz)){_76=(((_kv*64u)-1u)-_lk);_77=_76;}var _ll:u32;var _lm:u32;var _ln:u32;var _lo:u32;var _lp:u32;var _lq:u32;var _lr:u32;var _ls:u32;var _lt:u32;var _lu:u32;var _lv:u32;var _lw:u32;var _lx:u32;var _ly:u32;var _lz:u32;var _m0:u32;var _m1:u32;var _m2:u32;var _m3:u32;var _m4:u32;var _m5:u32;var _m6:u32;var _m7:u32;let _m8=select(4i,6i,_ks);_ll=(_6t>>bitcast<u32>(_m8));_lm=(_6v>>bitcast<u32>(_m8));_ln=(_6x>>bitcast<u32>(_m8));_lo=(_6z>>bitcast<u32>(_m8));_lp=(_71>>bitcast<u32>(_m8));switch(0u){default:{_lv=_ll;_lw=_lm;_lx=_ln;_ly=_lo;_lz=_lp;if((_ln==2u)){var _m9:bool;var _ma:u32;var _mb:u32;var _mc:u32;_m9=((_lp==2u)&(_lo==2u));if(((_m9&(_lm==1u))&(_ll==2u))){_79=255u;break;}else{var _md:u32;var _me:u32;let _mf=(_m9&(_lm==2u));_lq=select(_lo,3u,_mf);_lr=select(_lp,1u,_mf);_md=select(_lm,3u,_mf);_ls=(_md&1u);if((_md==0u)){_ma=(_ll+(_ll>>1u));_lt=3u;_lu=_ma;}else{let _mg=(_md==1u);if(_mg){_mb=_ll;}else{_me=select(_md,3u,(_md==2u));_mb=_me;}_mc=select(_ll,3u,_mg);_lt=_mc;_lu=_mb;}}_lv=_lt;_lw=_lu;_lx=_ls;_ly=_lq;_lz=_lr;}_m4=_lz;_m5=_ly;_m6=_lx;_m7=_lw;if((_lz==2u)){let _mh=(_ly==2u);_m0=select(_ly,_lx,_mh);_m1=select(3u,_lw,_mh);_m2=select(_lx,1u,_mh);_m3=select(_lw,3u,_mh);_m4=_m0;_m5=_m1;_m6=_m2;_m7=_m3;}_78=((((_lv+(4u*_m7))+(16u*_m6))+(32u*_m5))+(128u*_m4));_79=_78;}}let _mi=((1u<<bitcast<u32>(_m8))-1u);let _mj=((_6t&_mi)|(((_79>>0u)&3u)<<bitcast<u32>(_m8)));let _mk=(_m8+2i);var _ml=_6r;_ml.x=(_6r.x|(_mj<<17u));let _mm=_ml;let _mn=(_m8+19i);_7b=_ml;if((_mn>32i)){_7a=_mm;_7a.y=(_6r.y|(_mj>>15u));_7b=_7a;}var _mo:u32;var _mp:vec4u;var _mq:vec4u;var _mr:vec4u;_mo=((_6v&_mi)|(((_79>>2u)&3u)<<bitcast<u32>(_m8)));if((_mn<32i)){var _ms=_7b;_ms.x=(_7b.x|(_mo<<bitcast<u32>(_mn)));let _mt=_ms;_7c=_ms;if(((_mn+_mk)>32i)){_mp=_mt;_mp.y=(_7b.y|(_mo>>bitcast<u32>((13i-_m8))));_7c=_mp;}_7e=_7c;}else{var _mu:vec4u;var _mv:vec4u;if((_mn<64i)){var _mw=_7b;_mw.y=(_7b.y|(_mo<<bitcast<u32>((_m8+-13i))));let _mx=_mw;_mq=_mw;if(((_mn+_mk)>64i)){_mu=_mx;_mu.z=(_7b.z|(_mo>>bitcast<u32>((45i-_m8))));_mq=_mu;}_7d=_mq;}else{if((_mn<96i)){_mv=_7b;_mv.z=(_7b.z|(_mo<<bitcast<u32>((_m8+-45i))));_mr=_mv;}else{_mr=_7b;}_7d=_mr;}_7e=_7d;}var _my:u32;var _mz:vec4u;var _n0:vec4u;var _n1:vec4u;let _n2=(_mn+_mk);_my=((_6x&_mi)|(((_79>>4u)&1u)<<bitcast<u32>(_m8)));let _n3=(_m8+1i);if((_n2<32i)){var _n4=_7e;_n4.x=(_7e.x|(_my<<bitcast<u32>(_n2)));let _n5=_n4;_7f=_n4;if(((_n2+_n3)>32i)){_mz=_n5;_mz.y=(_7e.y|(_my>>bitcast<u32>((32i-_n2))));_7f=_mz;}_7h=_7f;}else{var _n6:vec4u;var _n7:vec4u;if((_n2<64i)){var _n8=_7e;_n8.y=(_7e.y|(_my<<bitcast<u32>((_n2-32i))));let _n9=_n8;_n0=_n8;if(((_n2+_n3)>64i)){_n6=_n9;_n6.z=(_7e.z|(_my>>bitcast<u32>((64i-_n2))));_n0=_n6;}_7g=_n0;}else{if((_n2<96i)){_n7=_7e;_n7.z=(_7e.z|(_my<<bitcast<u32>((_n2-64i))));_n1=_n7;}else{_n1=_7e;}_7g=_n1;}_7h=_7g;}var _na:u32;var _nb:vec4u;var _nc:vec4u;var _nd:vec4u;let _ne=(_n2+_n3);_na=((_6z&_mi)|(((_79>>5u)&3u)<<bitcast<u32>(_m8)));if((_ne<32i)){var _nf=_7h;_nf.x=(_7h.x|(_na<<bitcast<u32>(_ne)));let _ng=_nf;_7i=_nf;if(((_ne+_mk)>32i)){_nb=_ng;_nb.y=(_7h.y|(_na>>bitcast<u32>((32i-_ne))));_7i=_nb;}_7k=_7i;}else{var _nh:vec4u;var _ni:vec4u;if((_ne<64i)){var _nj=_7h;_nj.y=(_7h.y|(_na<<bitcast<u32>((_ne-32i))));let _nk=_nj;_nc=_nj;if(((_ne+_mk)>64i)){_nh=_nk;_nh.z=(_7h.z|(_na>>bitcast<u32>((64i-_ne))));_nc=_nh;}_7j=_nc;}else{if((_ne<96i)){_ni=_7h;_ni.z=(_7h.z|(_na<<bitcast<u32>((_ne-64i))));_nd=_ni;}else{_nd=_7h;}_7j=_nd;}_7k=_7j;}var _nl:u32;var _nm:vec4u;var _nn:vec4u;var _no:vec4u;let _np=(_ne+_mk);_nl=((_71&_mi)|(((_79>>7u)&1u)<<bitcast<u32>(_m8)));if((_np<32i)){var _nq=_7k;_nq.x=(_7k.x|(_nl<<bitcast<u32>(_np)));let _nr=_nq;_7l=_nq;if(((_np+_n3)>32i)){_nm=_nr;_nm.y=(_7k.y|(_nl>>bitcast<u32>((32i-_np))));_7l=_nm;}_7n=_7l;}else{var _ns:vec4u;var _nt:vec4u;if((_np<64i)){var _nu=_7k;_nu.y=(_7k.y|(_nl<<bitcast<u32>((_np-32i))));let _nv=_nu;_nn=_nu;if(((_np+_n3)>64i)){_ns=_nv;_ns.z=(_7k.z|(_nl>>bitcast<u32>((64i-_np))));_nn=_ns;}_7m=_nn;}else{if((_np<96i)){_nt=_7k;_nt.z=(_7k.z|(_nl<<bitcast<u32>((_np-64i))));_no=_nt;}else{_no=_7k;}_7m=_no;}_7n=_7m;}var _nw:u32;var _nx:u32;var _ny:u32;let _nz=(_np+_n3);let _o0=(_73>>bitcast<u32>(_m8));let _o1=(_75>>bitcast<u32>(_m8));let _o2=(_77>>bitcast<u32>(_m8));_7r=_o0;_7s=_o1;_7t=_o2;if((_o2==2u)){var _o3:u32;_7o=(_o1&1u);if((_o1==0u)){_nw=(_o0+(_o0>>1u));_7p=3u;_7q=_nw;}else{let _o4=(_o1==1u);if(_o4){_nx=_o0;}else{_o3=select(_o1,3u,(_o1==2u));_nx=_o3;}_ny=select(_o0,3u,_o4);_7p=_ny;_7q=_nx;}_7r=_7p;_7s=_7q;_7t=_7o;}var _o5:u32;var _o6:vec4u;var _o7:vec4u;var _o8:vec4u;let _o9=((_7r+(4u*_7s))+(16u*_7t));_o5=((_73&_mi)|(((_o9>>0u)&3u)<<bitcast<u32>(_m8)));if((_nz<32i)){var _oa=_7n;_oa.x=(_7n.x|(_o5<<bitcast<u32>(_nz)));let _ob=_oa;_7u=_oa;if(((_nz+_mk)>32i)){_o6=_ob;_o6.y=(_7n.y|(_o5>>bitcast<u32>((32i-_nz))));_7u=_o6;}_7w=_7u;}else{var _oc:vec4u;var _od:vec4u;if((_nz<64i)){var _oe=_7n;_oe.y=(_7n.y|(_o5<<bitcast<u32>((_nz-32i))));let _of=_oe;_o7=_oe;if(((_nz+_mk)>64i)){_oc=_of;_oc.z=(_7n.z|(_o5>>bitcast<u32>((64i-_nz))));_o7=_oc;}_7v=_o7;}else{if((_nz<96i)){_od=_7n;_od.z=(_7n.z|(_o5<<bitcast<u32>((_nz-64i))));_o8=_od;}else{_o8=_7n;}_7v=_o8;}_7w=_7v;}var _og:u32;var _oh:vec4u;var _oi:vec4u;var _oj:vec4u;let _ok=(_nz+_mk);_og=((_75&_mi)|(((_o9>>2u)&3u)<<bitcast<u32>(_m8)));if((_ok<32i)){var _ol=_7w;_ol.x=(_7w.x|(_og<<bitcast<u32>(_ok)));let _om=_ol;_7x=_ol;if(((_ok+_mk)>32i)){_oh=_om;_oh.y=(_7w.y|(_og>>bitcast<u32>((32i-_ok))));_7x=_oh;}_7z=_7x;}else{var _on:vec4u;var _oo:vec4u;if((_ok<64i)){var _op=_7w;_op.y=(_7w.y|(_og<<bitcast<u32>((_ok-32i))));let _oq=_op;_oi=_op;if(((_ok+_mk)>64i)){_on=_oq;_on.z=(_7w.z|(_og>>bitcast<u32>((64i-_ok))));_oi=_on;}_7y=_oi;}else{if((_ok<96i)){_oo=_7w;_oo.z=(_7w.z|(_og<<bitcast<u32>((_ok-64i))));_oj=_oo;}else{_oj=_7w;}_7y=_oj;}_7z=_7y;}var _or:i32;var _os:u32;var _ot:vec4u;var _ou:vec4u;var _ov:vec4u;_or=(_ok+_mk);_os=((_77&_mi)|(((_o9>>4u)&1u)<<bitcast<u32>(_m8)));if((_or<32i)){var _ow=_7z;_ow.x=(_7z.x|(_os<<bitcast<u32>(_or)));let _ox=_ow;_80=_ow;if(((_or+_n3)>32i)){_ot=_ox;_ot.y=(_7z.y|(_os>>bitcast<u32>((32i-_or))));_80=_ot;}_82=_80;}else{var _oy:vec4u;var _oz:vec4u;if((_or<64i)){var _p0=_7z;_p0.y=(_7z.y|(_os<<bitcast<u32>((_or-32i))));let _p1=_p0;_ou=_p0;if(((_or+_n3)>64i)){_oy=_p1;_oy.z=(_7z.z|(_os>>bitcast<u32>((64i-_or))));_ou=_oy;}_81=_ou;}else{if((_or<96i)){_oz=_7z;_oz.z=(_7z.z|(_os<<bitcast<u32>((_or-64i))));_ov=_oz;}else{_ov=_7z;}_81=_ov;}_82=_81;}let _p2=_6p.y;let _p3=(((_p2&2863311530u)>>1u)|((_p2&1431655765u)<<1u));let _p4=(((_p3&3435973836u)>>2u)|((_p3&858993459u)<<2u));let _p5=(((_p4&4042322160u)>>4u)|((_p4&252645135u)<<4u));let _p6=(((_p5&4278255360u)>>8u)|((_p5&16711935u)<<8u));var _p7=_82;_p7.z=(_82.z|((_p6>>16u)|(_p6<<16u)));let _p8=_p7;let _p9=_6p.x;let _pa=(((_p9&2863311530u)>>1u)|((_p9&1431655765u)<<1u));let _pb=(((_pa&3435973836u)>>2u)|((_pa&858993459u)<<2u));let _pc=(((_pb&4042322160u)>>4u)|((_pb&252645135u)<<4u));let _pd=(((_pc&4278255360u)>>8u)|((_pc&16711935u)<<8u));var _pe=_p8;_pe.w=((_pd>>16u)|(_pd<<16u));x_5372._0[((_85.y*((_84+15u)&4294967280u))+_87)]=_pe;}}return;}@compute @workgroup_size(16i, 16i, 1i) fn main(@builtin(global_invocation_id) _pf:vec3u,@builtin(local_invocation_id) _pg:vec3u,@builtin(workgroup_id) _ph:vec3u){x_5276=_pf;x_5282=_pg;_c();}"; export { _ as default };