aftg / net.js
wolfofbackstreet's picture
Upload 2 files
2096419 verified
Raw
History Blame Contribute Delete
284 kB
const arcface = (() => {
const getTensorBuffer = (safetensorBuffer, tensorMetadata) => {
return safetensorBuffer.subarray(...tensorMetadata.data_offsets);
};
const getTensorMetadata = (safetensorBuffer) => {
const metadataLength = Number(new DataView(safetensorBuffer.buffer).getBigUint64(0, true));
const metadata = JSON.parse(new TextDecoder("utf8").decode(safetensorBuffer.subarray(8, 8 + metadataLength)));
return Object.fromEntries(Object.entries(metadata).filter(([k, v]) => k !== "__metadata__").map(([k, v]) => [k, {...v, data_offsets: v.data_offsets.map(x => 8 + metadataLength + x)}]));
};
const createEmptyBuf = (device, size) => {
return device.createBuffer({size, usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST });
};
const createUniformBuf = (device, size) => {
return device.createBuffer({size, usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST})
}
const createInfinityUniformBuf = (device) => {
const size = 4;
const buf = device.createBuffer({
mappedAtCreation: true,
size,
usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
});
new Float32Array(buf.getMappedRange())[0] = Infinity;
buf.unmap();
return buf;
};
const createWeightBuf = (device, size, data) => {
const buf = device.createBuffer({ size, usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST, mappedAtCreation: true });
new Uint8Array(buf.getMappedRange()).set(data); buf.unmap();
return buf;
};
const addComputePass = (device, commandEncoder, pipeline, layout, infinityUniformBuf, bufs, workgroup) => {
const bindGroup = device.createBindGroup({
layout: layout,
entries: [
{ binding: 0, resource: { buffer: infinityUniformBuf } },
...bufs.map((buffer, index) => ({ binding: index + 1, resource: { buffer } }))
]
});
const passEncoder = commandEncoder.beginComputePass();
passEncoder.setPipeline(pipeline);
passEncoder.setBindGroup(0, bindGroup);
passEncoder.dispatchWorkgroups(...workgroup);
passEncoder.end();
};
const r_8_7_7_2_16_4_4_4_3_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_802816:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_37632:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_1728:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_64:array<f32>;
@compute @workgroup_size(2,16,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 8 */
var lidx0 = i32(lindex.x); /* 2 */
var lidx1 = i32(lindex.y); /* 16 */
var lidx2 = i32(lindex.z); /* 4 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<4u))+bitcast<i32>((bitcast<u32>(lidx2)<<2u))+(gidx1*1792)+(lidx1*112));
var alu1 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<4u)))<111);
var alu2 = ((lidx2+bitcast<i32>((cast0<<2u)))<27);
var alu3 = (0<(gidx0+lidx2));
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 3; Ridx0++) {
var alu21 = (alu0+(Ridx0*12544));
var val0 = select(0.0f, data1_37632[(alu21+-113)], (alu3&alu4));
var alu22 = ((gidx2*216)+(lidx0*108)+(Ridx0*9));
var val1 = data2_1728[alu22];
var val2 = select(0.0f, data1_37632[(alu21+-112)], alu4);
var val3 = data2_1728[(alu22+1)];
var val4 = select(0.0f, data1_37632[(alu21+-111)], alu4);
var val5 = data2_1728[(alu22+2)];
var val6 = select(0.0f, data1_37632[(alu21+-1)], alu3);
var val7 = data2_1728[(alu22+3)];
var val8 = data1_37632[alu21];
var val9 = data2_1728[(alu22+4)];
var val10 = data1_37632[(alu21+1)];
var val11 = data2_1728[(alu22+5)];
var val12 = select(0.0f, data1_37632[(alu21+111)], (alu3&alu1));
var val13 = data2_1728[(alu22+6)];
var val14 = select(0.0f, data1_37632[(alu21+112)], alu1);
var val15 = data2_1728[(alu22+7)];
var val16 = select(0.0f, data1_37632[(alu21+113)], alu1);
var val17 = data2_1728[(alu22+8)];
var val18 = data2_1728[(alu22+27)];
var val19 = data2_1728[(alu22+28)];
var val20 = data2_1728[(alu22+29)];
var val21 = data2_1728[(alu22+30)];
var val22 = data2_1728[(alu22+31)];
var val23 = data2_1728[(alu22+32)];
var val24 = data2_1728[(alu22+33)];
var val25 = data2_1728[(alu22+34)];
var val26 = data2_1728[(alu22+35)];
var val27 = data2_1728[(alu22+54)];
var val28 = data2_1728[(alu22+55)];
var val29 = data2_1728[(alu22+56)];
var val30 = data2_1728[(alu22+57)];
var val31 = data2_1728[(alu22+58)];
var val32 = data2_1728[(alu22+59)];
var val33 = data2_1728[(alu22+60)];
var val34 = data2_1728[(alu22+61)];
var val35 = data2_1728[(alu22+62)];
var val36 = data2_1728[(alu22+81)];
var val37 = data2_1728[(alu22+82)];
var val38 = data2_1728[(alu22+83)];
var val39 = data2_1728[(alu22+84)];
var val40 = data2_1728[(alu22+85)];
var val41 = data2_1728[(alu22+86)];
var val42 = data2_1728[(alu22+87)];
var val43 = data2_1728[(alu22+88)];
var val44 = data2_1728[(alu22+89)];
var val45 = select(0.0f, data1_37632[(alu21+-110)], alu4);
var val46 = data1_37632[(alu21+2)];
var val47 = select(0.0f, data1_37632[(alu21+114)], alu1);
var val48 = select(0.0f, data1_37632[(alu21+-109)], alu4);
var val49 = data1_37632[(alu21+3)];
var val50 = select(0.0f, data1_37632[(alu21+115)], alu1);
var val51 = select(0.0f, data1_37632[(alu21+-108)], (alu2&alu4));
var val52 = select(0.0f, data1_37632[(alu21+4)], alu2);
var val53 = select(0.0f, data1_37632[(alu21+116)], (alu2&alu1));
acc0[0] = (acc0[0]+(val0*val1)+(val2*val3)+(val4*val5)+(val6*val7)+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val2*val19)+(val4*val20)+(val6*val21)+(val8*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val2*val28)+(val4*val29)+(val6*val30)+(val8*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val2*val37)+(val4*val38)+(val6*val39)+(val8*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val2*val1)+(val4*val3)+(val45*val5)+(val8*val7)+(val10*val9)+(val46*val11)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val2*val18)+(val4*val19)+(val45*val20)+(val8*val21)+(val10*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val2*val27)+(val4*val28)+(val45*val29)+(val8*val30)+(val10*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val2*val36)+(val4*val37)+(val45*val38)+(val8*val39)+(val10*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val1)+(val45*val3)+(val48*val5)+(val10*val7)+(val46*val9)+(val49*val11)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val10*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val10*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val10*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val3)+(val51*val5)+(val46*val7)+(val49*val9)+(val52*val11)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<3u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_64[alu40];
var val55 = data4_64[alu40];
var alu41 = (alu40+1);
var val56 = data3_64[alu41];
var alu42 = (alu40+2);
var val57 = data3_64[alu42];
var val58 = data4_64[alu41];
var val59 = data4_64[alu42];
var alu43 = (alu40+3);
var val60 = data3_64[alu43];
var val61 = data4_64[alu43];
var alu44 = (alu0+(gidx2*100352)+(lidx0*50176));
var alu45 = (acc0[0]+val54);
var alu46 = (acc0[4]+val54);
var alu47 = (acc0[8]+val54);
var alu48 = (acc0[12]+val54);
var alu49 = select((alu45*val55),alu45,(0.0f<alu45));
var alu50 = select((alu46*val55),alu46,(0.0f<alu46));
var alu51 = select((alu47*val55),alu47,(0.0f<alu47));
var alu52 = select((alu48*val55),alu48,(0.0f<alu48));
data0_802816[alu44] = alu49;
data0_802816[(alu44+1)] = alu50;
data0_802816[(alu44+2)] = alu51;
data0_802816[(alu44+3)] = alu52;
var alu57 = (acc0[1]+val56);
var alu58 = (acc0[5]+val56);
var alu59 = (acc0[9]+val56);
var alu60 = (acc0[13]+val56);
var alu61 = select((alu57*val58),alu57,(0.0f<alu57));
var alu62 = select((alu58*val58),alu58,(0.0f<alu58));
var alu63 = select((alu59*val58),alu59,(0.0f<alu59));
var alu64 = select((alu60*val58),alu60,(0.0f<alu60));
data0_802816[(alu44+12544)] = alu61;
data0_802816[(alu44+12545)] = alu62;
data0_802816[(alu44+12546)] = alu63;
data0_802816[(alu44+12547)] = alu64;
var alu69 = (acc0[2]+val57);
var alu70 = (acc0[6]+val57);
var alu71 = (acc0[10]+val57);
var alu72 = (acc0[14]+val57);
var alu73 = select((alu69*val59),alu69,(0.0f<alu69));
var alu74 = select((alu70*val59),alu70,(0.0f<alu70));
var alu75 = select((alu71*val59),alu71,(0.0f<alu71));
var alu76 = select((alu72*val59),alu72,(0.0f<alu72));
data0_802816[(alu44+25088)] = alu73;
data0_802816[(alu44+25089)] = alu74;
data0_802816[(alu44+25090)] = alu75;
data0_802816[(alu44+25091)] = alu76;
var alu81 = (acc0[3]+val60);
var alu82 = (acc0[7]+val60);
var alu83 = (acc0[11]+val60);
var alu84 = (acc0[15]+val60);
var alu85 = select((alu81*val61),alu81,(0.0f<alu81));
var alu86 = select((alu82*val61),alu82,(0.0f<alu82));
var alu87 = select((alu83*val61),alu83,(0.0f<alu83));
var alu88 = select((alu84*val61),alu84,(0.0f<alu84));
data0_802816[(alu44+37632)] = alu85;
data0_802816[(alu44+37633)] = alu86;
data0_802816[(alu44+37634)] = alu87;
data0_802816[(alu44+37635)] = alu88;
}`;
const E_8_196_8_16_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_802816:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_802816:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_64:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_64:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_64:array<f32>;
@compute @workgroup_size(8,16) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 196 */
var gidx1 = i32(gindex.y); /* 8 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 16 */
var alu0 = (bitcast<i32>((bitcast<u32>(gidx0)<<6u))+bitcast<i32>((bitcast<u32>(lidx1)<<2u))+(gidx1*100352)+(lidx0*12544));
var val0 = data1_802816[alu0];
var alu1 = (lidx0+bitcast<i32>((bitcast<u32>(gidx1)<<3u)));
var val1 = data2_64[alu1];
var val2 = data3_64[alu1];
var val3 = data4_64[alu1];
var val4 = data5_64[alu1];
var alu2 = (alu0+1);
var val5 = data1_802816[alu2];
var alu3 = (alu0+2);
var val6 = data1_802816[alu3];
var alu4 = (alu0+3);
var val7 = data1_802816[alu4];
var alu5 = (1/sqrt((val3+9.999999747378752e-06f)));
data0_802816[alu0] = (((val0-val1)*val2*alu5)+val4);
data0_802816[alu2] = (((val5-val1)*val2*alu5)+val4);
data0_802816[alu3] = (((val6-val1)*val2*alu5)+val4);
data0_802816[alu4] = (((val7-val1)*val2*alu5)+val4);
}`;
const r_8_7_7_2_16_4_4_4_64_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_802816:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_802816:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_36864:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_64:array<f32>;
@compute @workgroup_size(2,16,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 8 */
var lidx0 = i32(lindex.x); /* 2 */
var lidx1 = i32(lindex.y); /* 16 */
var lidx2 = i32(lindex.z); /* 4 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<4u))+bitcast<i32>((bitcast<u32>(lidx2)<<2u))+(gidx1*1792)+(lidx1*112));
var alu1 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<4u)))<111);
var alu2 = ((lidx2+bitcast<i32>((cast0<<2u)))<27);
var alu3 = (0<(gidx0+lidx2));
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 64; Ridx0++) {
var alu21 = (alu0+(Ridx0*12544));
var val0 = select(0.0f, data1_802816[(alu21+-113)], (alu3&alu4));
var alu22 = ((gidx2*4608)+(lidx0*2304)+(Ridx0*9));
var val1 = data2_36864[alu22];
var val2 = data1_802816[alu21];
var val3 = select(0.0f, data1_802816[(alu21+-112)], alu4);
var val4 = data2_36864[(alu22+1)];
var val5 = select(0.0f, data1_802816[(alu21+-111)], alu4);
var val6 = data2_36864[(alu22+2)];
var val7 = select(0.0f, data1_802816[(alu21+-1)], alu3);
var val8 = data2_36864[(alu22+3)];
var val9 = data2_36864[(alu22+4)];
var val10 = data1_802816[(alu21+1)];
var val11 = data2_36864[(alu22+5)];
var val12 = select(0.0f, data1_802816[(alu21+111)], (alu3&alu1));
var val13 = data2_36864[(alu22+6)];
var val14 = select(0.0f, data1_802816[(alu21+112)], alu1);
var val15 = data2_36864[(alu22+7)];
var val16 = select(0.0f, data1_802816[(alu21+113)], alu1);
var val17 = data2_36864[(alu22+8)];
var val18 = data2_36864[(alu22+576)];
var val19 = data2_36864[(alu22+577)];
var val20 = data2_36864[(alu22+578)];
var val21 = data2_36864[(alu22+579)];
var val22 = data2_36864[(alu22+580)];
var val23 = data2_36864[(alu22+581)];
var val24 = data2_36864[(alu22+582)];
var val25 = data2_36864[(alu22+583)];
var val26 = data2_36864[(alu22+584)];
var val27 = data2_36864[(alu22+1152)];
var val28 = data2_36864[(alu22+1153)];
var val29 = data2_36864[(alu22+1154)];
var val30 = data2_36864[(alu22+1155)];
var val31 = data2_36864[(alu22+1156)];
var val32 = data2_36864[(alu22+1157)];
var val33 = data2_36864[(alu22+1158)];
var val34 = data2_36864[(alu22+1159)];
var val35 = data2_36864[(alu22+1160)];
var val36 = data2_36864[(alu22+1728)];
var val37 = data2_36864[(alu22+1729)];
var val38 = data2_36864[(alu22+1730)];
var val39 = data2_36864[(alu22+1731)];
var val40 = data2_36864[(alu22+1732)];
var val41 = data2_36864[(alu22+1733)];
var val42 = data2_36864[(alu22+1734)];
var val43 = data2_36864[(alu22+1735)];
var val44 = data2_36864[(alu22+1736)];
var val45 = select(0.0f, data1_802816[(alu21+-110)], alu4);
var val46 = data1_802816[(alu21+2)];
var val47 = select(0.0f, data1_802816[(alu21+114)], alu1);
var val48 = select(0.0f, data1_802816[(alu21+-109)], alu4);
var val49 = data1_802816[(alu21+3)];
var val50 = select(0.0f, data1_802816[(alu21+115)], alu1);
var val51 = select(0.0f, data1_802816[(alu21+-108)], (alu2&alu4));
var val52 = select(0.0f, data1_802816[(alu21+4)], alu2);
var val53 = select(0.0f, data1_802816[(alu21+116)], (alu2&alu1));
acc0[0] = (acc0[0]+(val0*val1)+(val3*val4)+(val5*val6)+(val7*val8)+(val2*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val3*val19)+(val5*val20)+(val7*val21)+(val2*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val3*val28)+(val5*val29)+(val7*val30)+(val2*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val3*val37)+(val5*val38)+(val7*val39)+(val2*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val3*val1)+(val5*val4)+(val45*val6)+(val2*val8)+(val10*val9)+(val46*val11)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val3*val18)+(val5*val19)+(val45*val20)+(val2*val21)+(val10*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val3*val27)+(val5*val28)+(val45*val29)+(val2*val30)+(val10*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val3*val36)+(val5*val37)+(val45*val38)+(val2*val39)+(val10*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val5*val1)+(val45*val4)+(val48*val6)+(val10*val8)+(val46*val9)+(val49*val11)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val5*val18)+(val45*val19)+(val48*val20)+(val10*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val5*val27)+(val45*val28)+(val48*val29)+(val10*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val5*val36)+(val45*val37)+(val48*val38)+(val10*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val4)+(val51*val6)+(val46*val8)+(val49*val9)+(val52*val11)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<3u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_64[alu40];
var val55 = data4_64[alu40];
var alu41 = (alu40+1);
var val56 = data3_64[alu41];
var alu42 = (alu40+2);
var val57 = data3_64[alu42];
var val58 = data4_64[alu41];
var val59 = data4_64[alu42];
var alu43 = (alu40+3);
var val60 = data3_64[alu43];
var val61 = data4_64[alu43];
var alu44 = (alu0+(gidx2*100352)+(lidx0*50176));
var alu45 = (acc0[0]+val54);
var alu46 = (acc0[4]+val54);
var alu47 = (acc0[8]+val54);
var alu48 = (acc0[12]+val54);
var alu49 = select((alu45*val55),alu45,(0.0f<alu45));
var alu50 = select((alu46*val55),alu46,(0.0f<alu46));
var alu51 = select((alu47*val55),alu47,(0.0f<alu47));
var alu52 = select((alu48*val55),alu48,(0.0f<alu48));
data0_802816[alu44] = alu49;
data0_802816[(alu44+1)] = alu50;
data0_802816[(alu44+2)] = alu51;
data0_802816[(alu44+3)] = alu52;
var alu57 = (acc0[1]+val56);
var alu58 = (acc0[5]+val56);
var alu59 = (acc0[9]+val56);
var alu60 = (acc0[13]+val56);
var alu61 = select((alu57*val58),alu57,(0.0f<alu57));
var alu62 = select((alu58*val58),alu58,(0.0f<alu58));
var alu63 = select((alu59*val58),alu59,(0.0f<alu59));
var alu64 = select((alu60*val58),alu60,(0.0f<alu60));
data0_802816[(alu44+12544)] = alu61;
data0_802816[(alu44+12545)] = alu62;
data0_802816[(alu44+12546)] = alu63;
data0_802816[(alu44+12547)] = alu64;
var alu69 = (acc0[2]+val57);
var alu70 = (acc0[6]+val57);
var alu71 = (acc0[10]+val57);
var alu72 = (acc0[14]+val57);
var alu73 = select((alu69*val59),alu69,(0.0f<alu69));
var alu74 = select((alu70*val59),alu70,(0.0f<alu70));
var alu75 = select((alu71*val59),alu71,(0.0f<alu71));
var alu76 = select((alu72*val59),alu72,(0.0f<alu72));
data0_802816[(alu44+25088)] = alu73;
data0_802816[(alu44+25089)] = alu74;
data0_802816[(alu44+25090)] = alu75;
data0_802816[(alu44+25091)] = alu76;
var alu81 = (acc0[3]+val60);
var alu82 = (acc0[7]+val60);
var alu83 = (acc0[11]+val60);
var alu84 = (acc0[15]+val60);
var alu85 = select((alu81*val61),alu81,(0.0f<alu81));
var alu86 = select((alu82*val61),alu82,(0.0f<alu82));
var alu87 = select((alu83*val61),alu83,(0.0f<alu83));
var alu88 = select((alu84*val61),alu84,(0.0f<alu84));
data0_802816[(alu44+37632)] = alu85;
data0_802816[(alu44+37633)] = alu86;
data0_802816[(alu44+37634)] = alu87;
data0_802816[(alu44+37635)] = alu88;
}`;
const r_2_7_7_8_8_2_4_4_64_3_3_16_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_200704:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_802816:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_36864:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_802816:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_4096:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_64:array<f32>;
@compute @workgroup_size(8,8,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var acc1: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 8 */
var lidx2 = i32(lindex.z); /* 2 */
var cast0 = bitcast<u32>(gidx0);
var cast1 = bitcast<u32>(lidx2);
var alu0 = (bitcast<i32>((cast0<<4u))+bitcast<i32>((cast1<<3u)));
var alu1 = ((gidx1*1792)+(lidx1*224));
acc1[0] = 0.0f;
acc1[1] = 0.0f;
acc1[2] = 0.0f;
acc1[3] = 0.0f;
acc1[4] = 0.0f;
acc1[5] = 0.0f;
acc1[6] = 0.0f;
acc1[7] = 0.0f;
acc1[8] = 0.0f;
acc1[9] = 0.0f;
acc1[10] = 0.0f;
acc1[11] = 0.0f;
acc1[12] = 0.0f;
acc1[13] = 0.0f;
acc1[14] = 0.0f;
acc1[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 64; Ridx0++) {
for (var Ridx1 = 0; Ridx1 < 3; Ridx1++) {
var alu18 = (0<(gidx1+lidx1+Ridx1));
for (var Ridx2 = 0; Ridx2 < 3; Ridx2++) {
var alu19 = (alu0+Ridx2+alu1+(Ridx1*112)+(Ridx0*12544));
var val0 = select(0.0f, data1_802816[(alu19+-113)], ((0<(gidx0+lidx2+Ridx2))&alu18));
var alu20 = ((Ridx1*3)+Ridx2+(Ridx0*9)+(gidx2*18432)+(lidx0*2304));
var val1 = data2_36864[(alu20+576)];
var val2 = data2_36864[(alu20+1152)];
var val3 = data2_36864[alu20];
var val4 = data2_36864[(alu20+1728)];
var val5 = select(0.0f, data1_802816[(alu19+-111)], alu18);
var val6 = select(0.0f, data1_802816[(alu19+-109)], alu18);
var val7 = select(0.0f, data1_802816[(alu19+-107)], alu18);
acc1[0] = (acc1[0]+(val0*val3));
acc1[1] = (acc1[1]+(val0*val1));
acc1[2] = (acc1[2]+(val0*val2));
acc1[3] = (acc1[3]+(val0*val4));
acc1[4] = (acc1[4]+(val5*val3));
acc1[5] = (acc1[5]+(val5*val1));
acc1[6] = (acc1[6]+(val5*val2));
acc1[7] = (acc1[7]+(val5*val4));
acc1[8] = (acc1[8]+(val6*val3));
acc1[9] = (acc1[9]+(val6*val1));
acc1[10] = (acc1[10]+(val6*val2));
acc1[11] = (acc1[11]+(val6*val4));
acc1[12] = (acc1[12]+(val7*val3));
acc1[13] = (acc1[13]+(val7*val1));
acc1[14] = (acc1[14]+(val7*val2));
acc1[15] = (acc1[15]+(val7*val4));
}
}
}
var cast2 = bitcast<u32>(gidx2);
var cast3 = bitcast<u32>(lidx0);
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx3 = 0; Ridx3 < 16; Ridx3++) {
var alu56 = (alu0+alu1+(Ridx3*50176));
var val8 = data4_802816[alu56];
var alu57 = (bitcast<i32>((cast2<<11u))+bitcast<i32>((cast3<<8u))+bitcast<i32>((bitcast<u32>(Ridx3)<<2u)));
var val9 = data5_4096[alu57];
var val10 = data4_802816[(alu56+12544)];
var val11 = data5_4096[(alu57+1)];
var val12 = data4_802816[(alu56+25088)];
var val13 = data5_4096[(alu57+2)];
var val14 = data4_802816[(alu56+37632)];
var val15 = data5_4096[(alu57+3)];
var val16 = data5_4096[(alu57+64)];
var val17 = data5_4096[(alu57+65)];
var val18 = data5_4096[(alu57+66)];
var val19 = data5_4096[(alu57+67)];
var val20 = data5_4096[(alu57+128)];
var val21 = data5_4096[(alu57+129)];
var val22 = data5_4096[(alu57+130)];
var val23 = data5_4096[(alu57+131)];
var val24 = data5_4096[(alu57+192)];
var val25 = data5_4096[(alu57+193)];
var val26 = data5_4096[(alu57+194)];
var val27 = data5_4096[(alu57+195)];
var val28 = data4_802816[(alu56+2)];
var val29 = data4_802816[(alu56+12546)];
var val30 = data4_802816[(alu56+25090)];
var val31 = data4_802816[(alu56+37634)];
var val32 = data4_802816[(alu56+4)];
var val33 = data4_802816[(alu56+12548)];
var val34 = data4_802816[(alu56+25092)];
var val35 = data4_802816[(alu56+37636)];
var val36 = data4_802816[(alu56+6)];
var val37 = data4_802816[(alu56+12550)];
var val38 = data4_802816[(alu56+25094)];
var val39 = data4_802816[(alu56+37638)];
acc0[0] = (acc0[0]+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15));
acc0[1] = (acc0[1]+(val8*val16)+(val10*val17)+(val12*val18)+(val14*val19));
acc0[2] = (acc0[2]+(val8*val20)+(val10*val21)+(val12*val22)+(val14*val23));
acc0[3] = (acc0[3]+(val8*val24)+(val10*val25)+(val12*val26)+(val14*val27));
acc0[4] = (acc0[4]+(val28*val9)+(val29*val11)+(val30*val13)+(val31*val15));
acc0[5] = (acc0[5]+(val28*val16)+(val29*val17)+(val30*val18)+(val31*val19));
acc0[6] = (acc0[6]+(val28*val20)+(val29*val21)+(val30*val22)+(val31*val23));
acc0[7] = (acc0[7]+(val28*val24)+(val29*val25)+(val30*val26)+(val31*val27));
acc0[8] = (acc0[8]+(val32*val9)+(val33*val11)+(val34*val13)+(val35*val15));
acc0[9] = (acc0[9]+(val32*val16)+(val33*val17)+(val34*val18)+(val35*val19));
acc0[10] = (acc0[10]+(val32*val20)+(val33*val21)+(val34*val22)+(val35*val23));
acc0[11] = (acc0[11]+(val32*val24)+(val33*val25)+(val34*val26)+(val35*val27));
acc0[12] = (acc0[12]+(val36*val9)+(val37*val11)+(val38*val13)+(val39*val15));
acc0[13] = (acc0[13]+(val36*val16)+(val37*val17)+(val38*val18)+(val39*val19));
acc0[14] = (acc0[14]+(val36*val20)+(val37*val21)+(val38*val22)+(val39*val23));
acc0[15] = (acc0[15]+(val36*val24)+(val37*val25)+(val38*val26)+(val39*val27));
}
var alu75 = (bitcast<i32>((cast2<<5u))+bitcast<i32>((cast3<<2u)));
var val40 = data3_64[alu75];
var val41 = data6_64[alu75];
var alu76 = (alu75+1);
var val42 = data3_64[alu76];
var alu77 = (alu75+2);
var val43 = data3_64[alu77];
var alu78 = (alu75+3);
var val44 = data3_64[alu78];
var val45 = data6_64[alu76];
var val46 = data6_64[alu77];
var val47 = data6_64[alu78];
var alu79 = (bitcast<i32>((cast0<<3u))+bitcast<i32>((cast1<<2u))+(gidx1*448)+(lidx1*56)+(gidx2*100352)+(lidx0*12544));
data0_200704[alu79] = (acc1[0]+val40+acc0[0]+val41);
data0_200704[(alu79+1)] = (acc1[4]+val40+acc0[4]+val41);
data0_200704[(alu79+2)] = (acc1[8]+val40+acc0[8]+val41);
data0_200704[(alu79+3)] = (acc1[12]+val40+acc0[12]+val41);
data0_200704[(alu79+3136)] = (acc1[1]+val42+acc0[1]+val45);
data0_200704[(alu79+3137)] = (acc1[5]+val42+acc0[5]+val45);
data0_200704[(alu79+3138)] = (acc1[9]+val42+acc0[9]+val45);
data0_200704[(alu79+3139)] = (acc1[13]+val42+acc0[13]+val45);
data0_200704[(alu79+6272)] = (acc1[2]+val43+acc0[2]+val46);
data0_200704[(alu79+6273)] = (acc1[6]+val43+acc0[6]+val46);
data0_200704[(alu79+6274)] = (acc1[10]+val43+acc0[10]+val46);
data0_200704[(alu79+6275)] = (acc1[14]+val43+acc0[14]+val46);
data0_200704[(alu79+9408)] = (acc1[3]+val44+acc0[3]+val47);
data0_200704[(alu79+9409)] = (acc1[7]+val44+acc0[7]+val47);
data0_200704[(alu79+9410)] = (acc1[11]+val44+acc0[11]+val47);
data0_200704[(alu79+9411)] = (acc1[15]+val44+acc0[15]+val47);
}`;
const E_8_49_8_16_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_200704:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_200704:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_64:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_64:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_64:array<f32>;
@compute @workgroup_size(8,16) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 49 */
var gidx1 = i32(gindex.y); /* 8 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 16 */
var alu0 = (bitcast<i32>((bitcast<u32>(gidx0)<<6u))+bitcast<i32>((bitcast<u32>(lidx1)<<2u))+(gidx1*25088)+(lidx0*3136));
var val0 = data1_200704[alu0];
var alu1 = (lidx0+bitcast<i32>((bitcast<u32>(gidx1)<<3u)));
var val1 = data2_64[alu1];
var val2 = data3_64[alu1];
var val3 = data4_64[alu1];
var val4 = data5_64[alu1];
var alu2 = (alu0+1);
var val5 = data1_200704[alu2];
var alu3 = (alu0+2);
var val6 = data1_200704[alu3];
var alu4 = (alu0+3);
var val7 = data1_200704[alu4];
var alu5 = (1/sqrt((val3+9.999999747378752e-06f)));
data0_200704[alu0] = (((val0-val1)*val2*alu5)+val4);
data0_200704[alu2] = (((val5-val1)*val2*alu5)+val4);
data0_200704[alu3] = (((val6-val1)*val2*alu5)+val4);
data0_200704[alu4] = (((val7-val1)*val2*alu5)+val4);
}`;
const r_2_7_7_8_8_2_4_4_64_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_200704:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_200704:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_36864:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_64:array<f32>;
@compute @workgroup_size(8,8,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 8 */
var lidx2 = i32(lindex.z); /* 2 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<3u))+bitcast<i32>((bitcast<u32>(lidx2)<<2u))+(gidx1*448)+(lidx1*56));
var alu1 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<3u)))<55);
var alu2 = ((lidx2+bitcast<i32>((cast0<<1u)))<13);
var alu3 = (0<(gidx0+lidx2));
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 64; Ridx0++) {
var alu21 = (alu0+(Ridx0*3136));
var val0 = select(0.0f, data1_200704[(alu21+-57)], (alu3&alu4));
var alu22 = ((gidx2*18432)+(lidx0*2304)+(Ridx0*9));
var val1 = data2_36864[alu22];
var val2 = select(0.0f, data1_200704[(alu21+-56)], alu4);
var val3 = data2_36864[(alu22+1)];
var val4 = select(0.0f, data1_200704[(alu21+-55)], alu4);
var val5 = data2_36864[(alu22+2)];
var val6 = select(0.0f, data1_200704[(alu21+-1)], alu3);
var val7 = data2_36864[(alu22+3)];
var val8 = data1_200704[alu21];
var val9 = data2_36864[(alu22+4)];
var val10 = data1_200704[(alu21+1)];
var val11 = data2_36864[(alu22+5)];
var val12 = select(0.0f, data1_200704[(alu21+55)], (alu3&alu1));
var val13 = data2_36864[(alu22+6)];
var val14 = select(0.0f, data1_200704[(alu21+56)], alu1);
var val15 = data2_36864[(alu22+7)];
var val16 = select(0.0f, data1_200704[(alu21+57)], alu1);
var val17 = data2_36864[(alu22+8)];
var val18 = data2_36864[(alu22+576)];
var val19 = data2_36864[(alu22+577)];
var val20 = data2_36864[(alu22+578)];
var val21 = data2_36864[(alu22+579)];
var val22 = data2_36864[(alu22+580)];
var val23 = data2_36864[(alu22+581)];
var val24 = data2_36864[(alu22+582)];
var val25 = data2_36864[(alu22+583)];
var val26 = data2_36864[(alu22+584)];
var val27 = data2_36864[(alu22+1152)];
var val28 = data2_36864[(alu22+1153)];
var val29 = data2_36864[(alu22+1154)];
var val30 = data2_36864[(alu22+1155)];
var val31 = data2_36864[(alu22+1156)];
var val32 = data2_36864[(alu22+1157)];
var val33 = data2_36864[(alu22+1158)];
var val34 = data2_36864[(alu22+1159)];
var val35 = data2_36864[(alu22+1160)];
var val36 = data2_36864[(alu22+1728)];
var val37 = data2_36864[(alu22+1729)];
var val38 = data2_36864[(alu22+1730)];
var val39 = data2_36864[(alu22+1731)];
var val40 = data2_36864[(alu22+1732)];
var val41 = data2_36864[(alu22+1733)];
var val42 = data2_36864[(alu22+1734)];
var val43 = data2_36864[(alu22+1735)];
var val44 = data2_36864[(alu22+1736)];
var val45 = select(0.0f, data1_200704[(alu21+-54)], alu4);
var val46 = data1_200704[(alu21+2)];
var val47 = select(0.0f, data1_200704[(alu21+58)], alu1);
var val48 = select(0.0f, data1_200704[(alu21+-53)], alu4);
var val49 = data1_200704[(alu21+3)];
var val50 = select(0.0f, data1_200704[(alu21+59)], alu1);
var val51 = select(0.0f, data1_200704[(alu21+-52)], (alu2&alu4));
var val52 = select(0.0f, data1_200704[(alu21+4)], alu2);
var val53 = select(0.0f, data1_200704[(alu21+60)], (alu2&alu1));
acc0[0] = (acc0[0]+(val0*val1)+(val2*val3)+(val4*val5)+(val6*val7)+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val2*val19)+(val4*val20)+(val6*val21)+(val8*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val2*val28)+(val4*val29)+(val6*val30)+(val8*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val2*val37)+(val4*val38)+(val6*val39)+(val8*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val2*val1)+(val4*val3)+(val45*val5)+(val8*val7)+(val10*val9)+(val46*val11)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val2*val18)+(val4*val19)+(val45*val20)+(val8*val21)+(val10*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val2*val27)+(val4*val28)+(val45*val29)+(val8*val30)+(val10*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val2*val36)+(val4*val37)+(val45*val38)+(val8*val39)+(val10*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val1)+(val45*val3)+(val48*val5)+(val10*val7)+(val46*val9)+(val49*val11)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val10*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val10*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val10*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val3)+(val51*val5)+(val46*val7)+(val49*val9)+(val52*val11)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<5u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_64[alu40];
var val55 = data4_64[alu40];
var alu41 = (alu40+1);
var val56 = data3_64[alu41];
var alu42 = (alu40+2);
var val57 = data3_64[alu42];
var val58 = data4_64[alu41];
var val59 = data4_64[alu42];
var alu43 = (alu40+3);
var val60 = data3_64[alu43];
var val61 = data4_64[alu43];
var alu44 = (alu0+(gidx2*100352)+(lidx0*12544));
var alu45 = (acc0[0]+val54);
var alu46 = (acc0[4]+val54);
var alu47 = (acc0[8]+val54);
var alu48 = (acc0[12]+val54);
var alu49 = select((alu45*val55),alu45,(0.0f<alu45));
var alu50 = select((alu46*val55),alu46,(0.0f<alu46));
var alu51 = select((alu47*val55),alu47,(0.0f<alu47));
var alu52 = select((alu48*val55),alu48,(0.0f<alu48));
data0_200704[alu44] = alu49;
data0_200704[(alu44+1)] = alu50;
data0_200704[(alu44+2)] = alu51;
data0_200704[(alu44+3)] = alu52;
var alu57 = (acc0[1]+val56);
var alu58 = (acc0[5]+val56);
var alu59 = (acc0[9]+val56);
var alu60 = (acc0[13]+val56);
var alu61 = select((alu57*val58),alu57,(0.0f<alu57));
var alu62 = select((alu58*val58),alu58,(0.0f<alu58));
var alu63 = select((alu59*val58),alu59,(0.0f<alu59));
var alu64 = select((alu60*val58),alu60,(0.0f<alu60));
data0_200704[(alu44+3136)] = alu61;
data0_200704[(alu44+3137)] = alu62;
data0_200704[(alu44+3138)] = alu63;
data0_200704[(alu44+3139)] = alu64;
var alu69 = (acc0[2]+val57);
var alu70 = (acc0[6]+val57);
var alu71 = (acc0[10]+val57);
var alu72 = (acc0[14]+val57);
var alu73 = select((alu69*val59),alu69,(0.0f<alu69));
var alu74 = select((alu70*val59),alu70,(0.0f<alu70));
var alu75 = select((alu71*val59),alu71,(0.0f<alu71));
var alu76 = select((alu72*val59),alu72,(0.0f<alu72));
data0_200704[(alu44+6272)] = alu73;
data0_200704[(alu44+6273)] = alu74;
data0_200704[(alu44+6274)] = alu75;
data0_200704[(alu44+6275)] = alu76;
var alu81 = (acc0[3]+val60);
var alu82 = (acc0[7]+val60);
var alu83 = (acc0[11]+val60);
var alu84 = (acc0[15]+val60);
var alu85 = select((alu81*val61),alu81,(0.0f<alu81));
var alu86 = select((alu82*val61),alu82,(0.0f<alu82));
var alu87 = select((alu83*val61),alu83,(0.0f<alu83));
var alu88 = select((alu84*val61),alu84,(0.0f<alu84));
data0_200704[(alu44+9408)] = alu85;
data0_200704[(alu44+9409)] = alu86;
data0_200704[(alu44+9410)] = alu87;
data0_200704[(alu44+9411)] = alu88;
}`;
const r_2_7_7_8_8_2_4_4_64_3_3n1 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_200704:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_200704:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_36864:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_64:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_200704:array<f32>;
@compute @workgroup_size(8,8,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 8 */
var lidx2 = i32(lindex.z); /* 2 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<3u))+bitcast<i32>((bitcast<u32>(lidx2)<<2u))+(gidx1*448)+(lidx1*56));
var alu1 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<3u)))<55);
var alu2 = ((lidx2+bitcast<i32>((cast0<<1u)))<13);
var alu3 = (0<(gidx0+lidx2));
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 64; Ridx0++) {
var alu21 = (alu0+(Ridx0*3136));
var val0 = select(0.0f, data1_200704[(alu21+-57)], (alu3&alu4));
var alu22 = ((gidx2*18432)+(lidx0*2304)+(Ridx0*9));
var val1 = data2_36864[alu22];
var val2 = data1_200704[alu21];
var val3 = select(0.0f, data1_200704[(alu21+-56)], alu4);
var val4 = data2_36864[(alu22+1)];
var val5 = select(0.0f, data1_200704[(alu21+-55)], alu4);
var val6 = data2_36864[(alu22+2)];
var val7 = select(0.0f, data1_200704[(alu21+-1)], alu3);
var val8 = data2_36864[(alu22+3)];
var val9 = data2_36864[(alu22+4)];
var val10 = data1_200704[(alu21+1)];
var val11 = data2_36864[(alu22+5)];
var val12 = select(0.0f, data1_200704[(alu21+55)], (alu3&alu1));
var val13 = data2_36864[(alu22+6)];
var val14 = select(0.0f, data1_200704[(alu21+56)], alu1);
var val15 = data2_36864[(alu22+7)];
var val16 = select(0.0f, data1_200704[(alu21+57)], alu1);
var val17 = data2_36864[(alu22+8)];
var val18 = data2_36864[(alu22+576)];
var val19 = data2_36864[(alu22+577)];
var val20 = data2_36864[(alu22+578)];
var val21 = data2_36864[(alu22+579)];
var val22 = data2_36864[(alu22+580)];
var val23 = data2_36864[(alu22+581)];
var val24 = data2_36864[(alu22+582)];
var val25 = data2_36864[(alu22+583)];
var val26 = data2_36864[(alu22+584)];
var val27 = data2_36864[(alu22+1152)];
var val28 = data2_36864[(alu22+1153)];
var val29 = data2_36864[(alu22+1154)];
var val30 = data2_36864[(alu22+1155)];
var val31 = data2_36864[(alu22+1156)];
var val32 = data2_36864[(alu22+1157)];
var val33 = data2_36864[(alu22+1158)];
var val34 = data2_36864[(alu22+1159)];
var val35 = data2_36864[(alu22+1160)];
var val36 = data2_36864[(alu22+1728)];
var val37 = data2_36864[(alu22+1729)];
var val38 = data2_36864[(alu22+1730)];
var val39 = data2_36864[(alu22+1731)];
var val40 = data2_36864[(alu22+1732)];
var val41 = data2_36864[(alu22+1733)];
var val42 = data2_36864[(alu22+1734)];
var val43 = data2_36864[(alu22+1735)];
var val44 = data2_36864[(alu22+1736)];
var val45 = select(0.0f, data1_200704[(alu21+-54)], alu4);
var val46 = data1_200704[(alu21+2)];
var val47 = select(0.0f, data1_200704[(alu21+58)], alu1);
var val48 = select(0.0f, data1_200704[(alu21+-53)], alu4);
var val49 = data1_200704[(alu21+3)];
var val50 = select(0.0f, data1_200704[(alu21+59)], alu1);
var val51 = select(0.0f, data1_200704[(alu21+-52)], (alu2&alu4));
var val52 = select(0.0f, data1_200704[(alu21+4)], alu2);
var val53 = select(0.0f, data1_200704[(alu21+60)], (alu2&alu1));
acc0[0] = (acc0[0]+(val0*val1)+(val3*val4)+(val5*val6)+(val7*val8)+(val2*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val3*val19)+(val5*val20)+(val7*val21)+(val2*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val3*val28)+(val5*val29)+(val7*val30)+(val2*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val3*val37)+(val5*val38)+(val7*val39)+(val2*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val3*val1)+(val5*val4)+(val45*val6)+(val2*val8)+(val10*val9)+(val46*val11)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val3*val18)+(val5*val19)+(val45*val20)+(val2*val21)+(val10*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val3*val27)+(val5*val28)+(val45*val29)+(val2*val30)+(val10*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val3*val36)+(val5*val37)+(val45*val38)+(val2*val39)+(val10*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val5*val1)+(val45*val4)+(val48*val6)+(val10*val8)+(val46*val9)+(val49*val11)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val5*val18)+(val45*val19)+(val48*val20)+(val10*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val5*val27)+(val45*val28)+(val48*val29)+(val10*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val5*val36)+(val45*val37)+(val48*val38)+(val10*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val4)+(val51*val6)+(val46*val8)+(val49*val9)+(val52*val11)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<5u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_64[alu40];
var alu41 = (alu0+(gidx2*100352)+(lidx0*12544));
var val55 = data4_200704[alu41];
var alu42 = (alu41+1);
var val56 = data4_200704[alu42];
var alu43 = (alu41+2);
var val57 = data4_200704[alu43];
var alu44 = (alu41+3);
var val58 = data4_200704[alu44];
var val59 = data3_64[(alu40+1)];
var alu45 = (alu41+3136);
var val60 = data4_200704[alu45];
var alu46 = (alu41+3137);
var val61 = data4_200704[alu46];
var alu47 = (alu41+3138);
var val62 = data4_200704[alu47];
var alu48 = (alu41+3139);
var val63 = data4_200704[alu48];
var val64 = data3_64[(alu40+2)];
var alu49 = (alu41+6272);
var val65 = data4_200704[alu49];
var alu50 = (alu41+6273);
var val66 = data4_200704[alu50];
var alu51 = (alu41+6274);
var val67 = data4_200704[alu51];
var alu52 = (alu41+6275);
var val68 = data4_200704[alu52];
var val69 = data3_64[(alu40+3)];
var alu53 = (alu41+9408);
var val70 = data4_200704[alu53];
var alu54 = (alu41+9409);
var val71 = data4_200704[alu54];
var alu55 = (alu41+9410);
var val72 = data4_200704[alu55];
var alu56 = (alu41+9411);
var val73 = data4_200704[alu56];
data0_200704[alu41] = (acc0[0]+val54+val55);
data0_200704[alu42] = (acc0[4]+val54+val56);
data0_200704[alu43] = (acc0[8]+val54+val57);
data0_200704[alu44] = (acc0[12]+val54+val58);
data0_200704[alu45] = (acc0[1]+val59+val60);
data0_200704[alu46] = (acc0[5]+val59+val61);
data0_200704[alu47] = (acc0[9]+val59+val62);
data0_200704[alu48] = (acc0[13]+val59+val63);
data0_200704[alu49] = (acc0[2]+val64+val65);
data0_200704[alu50] = (acc0[6]+val64+val66);
data0_200704[alu51] = (acc0[10]+val64+val67);
data0_200704[alu52] = (acc0[14]+val64+val68);
data0_200704[alu53] = (acc0[3]+val69+val70);
data0_200704[alu54] = (acc0[7]+val69+val71);
data0_200704[alu55] = (acc0[11]+val69+val72);
data0_200704[alu56] = (acc0[15]+val69+val73);
}`;
const r_4_7_7_8_8_2_4_4_64_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_401408:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_200704:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_73728:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_128:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_128:array<f32>;
@compute @workgroup_size(8,8,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 4 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 8 */
var lidx2 = i32(lindex.z); /* 2 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<3u))+bitcast<i32>((bitcast<u32>(lidx2)<<2u))+(gidx1*448)+(lidx1*56));
var alu1 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<3u)))<55);
var alu2 = ((lidx2+bitcast<i32>((cast0<<1u)))<13);
var alu3 = (0<(gidx0+lidx2));
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 64; Ridx0++) {
var alu21 = (alu0+(Ridx0*3136));
var val0 = select(0.0f, data1_200704[(alu21+-57)], (alu3&alu4));
var alu22 = ((gidx2*18432)+(lidx0*2304)+(Ridx0*9));
var val1 = data2_73728[alu22];
var val2 = select(0.0f, data1_200704[(alu21+-56)], alu4);
var val3 = data2_73728[(alu22+1)];
var val4 = select(0.0f, data1_200704[(alu21+-55)], alu4);
var val5 = data2_73728[(alu22+2)];
var val6 = select(0.0f, data1_200704[(alu21+-1)], alu3);
var val7 = data2_73728[(alu22+3)];
var val8 = data1_200704[alu21];
var val9 = data2_73728[(alu22+4)];
var val10 = data1_200704[(alu21+1)];
var val11 = data2_73728[(alu22+5)];
var val12 = select(0.0f, data1_200704[(alu21+55)], (alu3&alu1));
var val13 = data2_73728[(alu22+6)];
var val14 = select(0.0f, data1_200704[(alu21+56)], alu1);
var val15 = data2_73728[(alu22+7)];
var val16 = select(0.0f, data1_200704[(alu21+57)], alu1);
var val17 = data2_73728[(alu22+8)];
var val18 = data2_73728[(alu22+576)];
var val19 = data2_73728[(alu22+577)];
var val20 = data2_73728[(alu22+578)];
var val21 = data2_73728[(alu22+579)];
var val22 = data2_73728[(alu22+580)];
var val23 = data2_73728[(alu22+581)];
var val24 = data2_73728[(alu22+582)];
var val25 = data2_73728[(alu22+583)];
var val26 = data2_73728[(alu22+584)];
var val27 = data2_73728[(alu22+1152)];
var val28 = data2_73728[(alu22+1153)];
var val29 = data2_73728[(alu22+1154)];
var val30 = data2_73728[(alu22+1155)];
var val31 = data2_73728[(alu22+1156)];
var val32 = data2_73728[(alu22+1157)];
var val33 = data2_73728[(alu22+1158)];
var val34 = data2_73728[(alu22+1159)];
var val35 = data2_73728[(alu22+1160)];
var val36 = data2_73728[(alu22+1728)];
var val37 = data2_73728[(alu22+1729)];
var val38 = data2_73728[(alu22+1730)];
var val39 = data2_73728[(alu22+1731)];
var val40 = data2_73728[(alu22+1732)];
var val41 = data2_73728[(alu22+1733)];
var val42 = data2_73728[(alu22+1734)];
var val43 = data2_73728[(alu22+1735)];
var val44 = data2_73728[(alu22+1736)];
var val45 = select(0.0f, data1_200704[(alu21+-54)], alu4);
var val46 = data1_200704[(alu21+2)];
var val47 = select(0.0f, data1_200704[(alu21+58)], alu1);
var val48 = select(0.0f, data1_200704[(alu21+-53)], alu4);
var val49 = data1_200704[(alu21+3)];
var val50 = select(0.0f, data1_200704[(alu21+59)], alu1);
var val51 = select(0.0f, data1_200704[(alu21+-52)], (alu2&alu4));
var val52 = select(0.0f, data1_200704[(alu21+4)], alu2);
var val53 = select(0.0f, data1_200704[(alu21+60)], (alu2&alu1));
acc0[0] = (acc0[0]+(val0*val1)+(val2*val3)+(val4*val5)+(val6*val7)+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val2*val19)+(val4*val20)+(val6*val21)+(val8*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val2*val28)+(val4*val29)+(val6*val30)+(val8*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val2*val37)+(val4*val38)+(val6*val39)+(val8*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val2*val1)+(val4*val3)+(val45*val5)+(val8*val7)+(val10*val9)+(val46*val11)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val2*val18)+(val4*val19)+(val45*val20)+(val8*val21)+(val10*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val2*val27)+(val4*val28)+(val45*val29)+(val8*val30)+(val10*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val2*val36)+(val4*val37)+(val45*val38)+(val8*val39)+(val10*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val1)+(val45*val3)+(val48*val5)+(val10*val7)+(val46*val9)+(val49*val11)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val10*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val10*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val10*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val3)+(val51*val5)+(val46*val7)+(val49*val9)+(val52*val11)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<5u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_128[alu40];
var val55 = data4_128[alu40];
var alu41 = (alu40+1);
var val56 = data3_128[alu41];
var alu42 = (alu40+2);
var val57 = data3_128[alu42];
var val58 = data4_128[alu41];
var val59 = data4_128[alu42];
var alu43 = (alu40+3);
var val60 = data3_128[alu43];
var val61 = data4_128[alu43];
var alu44 = (alu0+(gidx2*100352)+(lidx0*12544));
var alu45 = (acc0[0]+val54);
var alu46 = (acc0[4]+val54);
var alu47 = (acc0[8]+val54);
var alu48 = (acc0[12]+val54);
var alu49 = select((alu45*val55),alu45,(0.0f<alu45));
var alu50 = select((alu46*val55),alu46,(0.0f<alu46));
var alu51 = select((alu47*val55),alu47,(0.0f<alu47));
var alu52 = select((alu48*val55),alu48,(0.0f<alu48));
data0_401408[alu44] = alu49;
data0_401408[(alu44+1)] = alu50;
data0_401408[(alu44+2)] = alu51;
data0_401408[(alu44+3)] = alu52;
var alu57 = (acc0[1]+val56);
var alu58 = (acc0[5]+val56);
var alu59 = (acc0[9]+val56);
var alu60 = (acc0[13]+val56);
var alu61 = select((alu57*val58),alu57,(0.0f<alu57));
var alu62 = select((alu58*val58),alu58,(0.0f<alu58));
var alu63 = select((alu59*val58),alu59,(0.0f<alu59));
var alu64 = select((alu60*val58),alu60,(0.0f<alu60));
data0_401408[(alu44+3136)] = alu61;
data0_401408[(alu44+3137)] = alu62;
data0_401408[(alu44+3138)] = alu63;
data0_401408[(alu44+3139)] = alu64;
var alu69 = (acc0[2]+val57);
var alu70 = (acc0[6]+val57);
var alu71 = (acc0[10]+val57);
var alu72 = (acc0[14]+val57);
var alu73 = select((alu69*val59),alu69,(0.0f<alu69));
var alu74 = select((alu70*val59),alu70,(0.0f<alu70));
var alu75 = select((alu71*val59),alu71,(0.0f<alu71));
var alu76 = select((alu72*val59),alu72,(0.0f<alu72));
data0_401408[(alu44+6272)] = alu73;
data0_401408[(alu44+6273)] = alu74;
data0_401408[(alu44+6274)] = alu75;
data0_401408[(alu44+6275)] = alu76;
var alu81 = (acc0[3]+val60);
var alu82 = (acc0[7]+val60);
var alu83 = (acc0[11]+val60);
var alu84 = (acc0[15]+val60);
var alu85 = select((alu81*val61),alu81,(0.0f<alu81));
var alu86 = select((alu82*val61),alu82,(0.0f<alu82));
var alu87 = select((alu83*val61),alu83,(0.0f<alu83));
var alu88 = select((alu84*val61),alu84,(0.0f<alu84));
data0_401408[(alu44+9408)] = alu85;
data0_401408[(alu44+9409)] = alu86;
data0_401408[(alu44+9410)] = alu87;
data0_401408[(alu44+9411)] = alu88;
}`;
const r_7_7_32_4_4_4_128_3_3_16_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_100352:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_401408:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_147456:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_128:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_200704:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_8192:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_128:array<f32>;
@compute @workgroup_size(32,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var acc1: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 4 */
var cast0 = bitcast<u32>(gidx0);
var cast1 = bitcast<i32>((cast0<<3u));
var alu0 = ((gidx1*448)+(lidx1*112));
acc1[0] = 0.0f;
acc1[1] = 0.0f;
acc1[2] = 0.0f;
acc1[3] = 0.0f;
acc1[4] = 0.0f;
acc1[5] = 0.0f;
acc1[6] = 0.0f;
acc1[7] = 0.0f;
acc1[8] = 0.0f;
acc1[9] = 0.0f;
acc1[10] = 0.0f;
acc1[11] = 0.0f;
acc1[12] = 0.0f;
acc1[13] = 0.0f;
acc1[14] = 0.0f;
acc1[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 128; Ridx0++) {
for (var Ridx1 = 0; Ridx1 < 3; Ridx1++) {
var alu17 = (0<(gidx1+lidx1+Ridx1));
for (var Ridx2 = 0; Ridx2 < 3; Ridx2++) {
var alu18 = (alu0+(Ridx1*56)+cast1+Ridx2+(Ridx0*3136));
var val0 = select(0.0f, data1_401408[(alu18+-57)], ((0<(gidx0+Ridx2))&alu17));
var alu19 = ((Ridx1*3)+Ridx2+(Ridx0*9)+(lidx0*4608));
var val1 = data2_147456[alu19];
var val2 = data2_147456[(alu19+1152)];
var val3 = data2_147456[(alu19+2304)];
var val4 = data2_147456[(alu19+3456)];
var val5 = select(0.0f, data1_401408[(alu18+-55)], alu17);
var val6 = select(0.0f, data1_401408[(alu18+-53)], alu17);
var val7 = select(0.0f, data1_401408[(alu18+-51)], alu17);
acc1[0] = (acc1[0]+(val0*val1));
acc1[1] = (acc1[1]+(val0*val2));
acc1[2] = (acc1[2]+(val0*val3));
acc1[3] = (acc1[3]+(val0*val4));
acc1[4] = (acc1[4]+(val5*val1));
acc1[5] = (acc1[5]+(val5*val2));
acc1[6] = (acc1[6]+(val5*val3));
acc1[7] = (acc1[7]+(val5*val4));
acc1[8] = (acc1[8]+(val6*val1));
acc1[9] = (acc1[9]+(val6*val2));
acc1[10] = (acc1[10]+(val6*val3));
acc1[11] = (acc1[11]+(val6*val4));
acc1[12] = (acc1[12]+(val7*val1));
acc1[13] = (acc1[13]+(val7*val2));
acc1[14] = (acc1[14]+(val7*val3));
acc1[15] = (acc1[15]+(val7*val4));
}
}
}
var cast2 = bitcast<u32>(lidx0);
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx3 = 0; Ridx3 < 16; Ridx3++) {
var alu55 = (alu0+cast1+(Ridx3*12544));
var val8 = data4_200704[alu55];
var alu56 = (bitcast<i32>((cast2<<8u))+bitcast<i32>((bitcast<u32>(Ridx3)<<2u)));
var val9 = data5_8192[alu56];
var val10 = data4_200704[(alu55+3136)];
var val11 = data5_8192[(alu56+1)];
var val12 = data4_200704[(alu55+6272)];
var val13 = data5_8192[(alu56+2)];
var val14 = data4_200704[(alu55+9408)];
var val15 = data5_8192[(alu56+3)];
var val16 = data5_8192[(alu56+64)];
var val17 = data5_8192[(alu56+65)];
var val18 = data5_8192[(alu56+66)];
var val19 = data5_8192[(alu56+67)];
var val20 = data5_8192[(alu56+128)];
var val21 = data5_8192[(alu56+129)];
var val22 = data5_8192[(alu56+130)];
var val23 = data5_8192[(alu56+131)];
var val24 = data5_8192[(alu56+192)];
var val25 = data5_8192[(alu56+193)];
var val26 = data5_8192[(alu56+194)];
var val27 = data5_8192[(alu56+195)];
var val28 = data4_200704[(alu55+2)];
var val29 = data4_200704[(alu55+3138)];
var val30 = data4_200704[(alu55+6274)];
var val31 = data4_200704[(alu55+9410)];
var val32 = data4_200704[(alu55+4)];
var val33 = data4_200704[(alu55+3140)];
var val34 = data4_200704[(alu55+6276)];
var val35 = data4_200704[(alu55+9412)];
var val36 = data4_200704[(alu55+6)];
var val37 = data4_200704[(alu55+3142)];
var val38 = data4_200704[(alu55+6278)];
var val39 = data4_200704[(alu55+9414)];
acc0[0] = (acc0[0]+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15));
acc0[1] = (acc0[1]+(val8*val16)+(val10*val17)+(val12*val18)+(val14*val19));
acc0[2] = (acc0[2]+(val8*val20)+(val10*val21)+(val12*val22)+(val14*val23));
acc0[3] = (acc0[3]+(val8*val24)+(val10*val25)+(val12*val26)+(val14*val27));
acc0[4] = (acc0[4]+(val28*val9)+(val29*val11)+(val30*val13)+(val31*val15));
acc0[5] = (acc0[5]+(val28*val16)+(val29*val17)+(val30*val18)+(val31*val19));
acc0[6] = (acc0[6]+(val28*val20)+(val29*val21)+(val30*val22)+(val31*val23));
acc0[7] = (acc0[7]+(val28*val24)+(val29*val25)+(val30*val26)+(val31*val27));
acc0[8] = (acc0[8]+(val32*val9)+(val33*val11)+(val34*val13)+(val35*val15));
acc0[9] = (acc0[9]+(val32*val16)+(val33*val17)+(val34*val18)+(val35*val19));
acc0[10] = (acc0[10]+(val32*val20)+(val33*val21)+(val34*val22)+(val35*val23));
acc0[11] = (acc0[11]+(val32*val24)+(val33*val25)+(val34*val26)+(val35*val27));
acc0[12] = (acc0[12]+(val36*val9)+(val37*val11)+(val38*val13)+(val39*val15));
acc0[13] = (acc0[13]+(val36*val16)+(val37*val17)+(val38*val18)+(val39*val19));
acc0[14] = (acc0[14]+(val36*val20)+(val37*val21)+(val38*val22)+(val39*val23));
acc0[15] = (acc0[15]+(val36*val24)+(val37*val25)+(val38*val26)+(val39*val27));
}
var cast3 = bitcast<i32>((cast2<<2u));
var val40 = data3_128[cast3];
var val41 = data6_128[cast3];
var alu74 = (cast3+1);
var val42 = data3_128[alu74];
var val43 = data6_128[alu74];
var alu75 = (cast3+2);
var val44 = data3_128[alu75];
var val45 = data6_128[alu75];
var alu76 = (cast3+3);
var val46 = data3_128[alu76];
var val47 = data6_128[alu76];
var alu77 = ((gidx1*112)+(lidx1*28)+bitcast<i32>((cast0<<2u))+(lidx0*3136));
data0_100352[(alu77+784)] = (acc1[1]+val42+acc0[1]+val43);
data0_100352[(alu77+785)] = (acc1[5]+val42+acc0[5]+val43);
data0_100352[(alu77+786)] = (acc1[9]+val42+acc0[9]+val43);
data0_100352[(alu77+787)] = (acc1[13]+val42+acc0[13]+val43);
data0_100352[(alu77+1568)] = (acc1[2]+val44+acc0[2]+val45);
data0_100352[(alu77+1569)] = (acc1[6]+val44+acc0[6]+val45);
data0_100352[(alu77+1570)] = (acc1[10]+val44+acc0[10]+val45);
data0_100352[(alu77+1571)] = (acc1[14]+val44+acc0[14]+val45);
data0_100352[(alu77+2352)] = (acc1[3]+val46+acc0[3]+val47);
data0_100352[(alu77+2353)] = (acc1[7]+val46+acc0[7]+val47);
data0_100352[(alu77+2354)] = (acc1[11]+val46+acc0[11]+val47);
data0_100352[(alu77+2355)] = (acc1[15]+val46+acc0[15]+val47);
data0_100352[(alu77+1)] = (acc1[4]+val40+acc0[4]+val41);
data0_100352[(alu77+2)] = (acc1[8]+val40+acc0[8]+val41);
data0_100352[(alu77+3)] = (acc1[12]+val40+acc0[12]+val41);
data0_100352[alu77] = (acc1[0]+val40+acc0[0]+val41);
}`;
const E_4_49_32_4_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_100352:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_100352:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_128:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_128:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_128:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_128:array<f32>;
@compute @workgroup_size(32,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 49 */
var gidx1 = i32(gindex.y); /* 4 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 4 */
var alu0 = (bitcast<i32>((bitcast<u32>(gidx0)<<4u))+bitcast<i32>((bitcast<u32>(lidx1)<<2u))+(gidx1*25088)+(lidx0*784));
var val0 = data1_100352[alu0];
var alu1 = (lidx0+bitcast<i32>((bitcast<u32>(gidx1)<<5u)));
var val1 = data2_128[alu1];
var val2 = data3_128[alu1];
var val3 = data4_128[alu1];
var val4 = data5_128[alu1];
var alu2 = (alu0+1);
var val5 = data1_100352[alu2];
var alu3 = (alu0+2);
var val6 = data1_100352[alu3];
var alu4 = (alu0+3);
var val7 = data1_100352[alu4];
var alu5 = (1/sqrt((val3+9.999999747378752e-06f)));
data0_100352[alu0] = (((val0-val1)*val2*alu5)+val4);
data0_100352[alu2] = (((val5-val1)*val2*alu5)+val4);
data0_100352[alu3] = (((val6-val1)*val2*alu5)+val4);
data0_100352[alu4] = (((val7-val1)*val2*alu5)+val4);
}`;
const r_7_7_32_4_4_4_128_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_100352:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_100352:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_147456:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_128:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_128:array<f32>;
@compute @workgroup_size(32,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 4 */
var alu0 = ((gidx1*112)+(lidx1*28)+bitcast<i32>((bitcast<u32>(gidx0)<<2u)));
var alu1 = (gidx0<6);
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<2u)))<27);
var alu3 = (0<gidx0);
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 128; Ridx0++) {
var alu21 = (alu0+(Ridx0*784));
var val0 = select(0.0f, data1_100352[(alu21+-29)], (alu3&alu4));
var alu22 = ((lidx0*4608)+(Ridx0*9));
var val1 = data2_147456[(alu22+1)];
var val2 = data2_147456[alu22];
var val3 = select(0.0f, data1_100352[(alu21+-28)], alu4);
var val4 = select(0.0f, data1_100352[(alu21+-27)], alu4);
var val5 = data2_147456[(alu22+2)];
var val6 = select(0.0f, data1_100352[(alu21+-1)], alu3);
var val7 = data2_147456[(alu22+3)];
var val8 = data1_100352[(alu21+1)];
var val9 = select(0.0f, data1_100352[(alu21+28)], alu2);
var val10 = data1_100352[alu21];
var val11 = data2_147456[(alu22+4)];
var val12 = data2_147456[(alu22+5)];
var val13 = select(0.0f, data1_100352[(alu21+27)], (alu3&alu2));
var val14 = data2_147456[(alu22+6)];
var val15 = data2_147456[(alu22+7)];
var val16 = select(0.0f, data1_100352[(alu21+29)], alu2);
var val17 = data2_147456[(alu22+8)];
var val18 = data2_147456[(alu22+1152)];
var val19 = data2_147456[(alu22+1153)];
var val20 = data2_147456[(alu22+1154)];
var val21 = data2_147456[(alu22+1155)];
var val22 = data2_147456[(alu22+1156)];
var val23 = data2_147456[(alu22+1157)];
var val24 = data2_147456[(alu22+1158)];
var val25 = data2_147456[(alu22+1159)];
var val26 = data2_147456[(alu22+1160)];
var val27 = data2_147456[(alu22+2304)];
var val28 = data2_147456[(alu22+2305)];
var val29 = data2_147456[(alu22+2306)];
var val30 = data2_147456[(alu22+2307)];
var val31 = data2_147456[(alu22+2308)];
var val32 = data2_147456[(alu22+2309)];
var val33 = data2_147456[(alu22+2310)];
var val34 = data2_147456[(alu22+2311)];
var val35 = data2_147456[(alu22+2312)];
var val36 = data2_147456[(alu22+3456)];
var val37 = data2_147456[(alu22+3457)];
var val38 = data2_147456[(alu22+3458)];
var val39 = data2_147456[(alu22+3459)];
var val40 = data2_147456[(alu22+3460)];
var val41 = data2_147456[(alu22+3461)];
var val42 = data2_147456[(alu22+3462)];
var val43 = data2_147456[(alu22+3463)];
var val44 = data2_147456[(alu22+3464)];
var val45 = select(0.0f, data1_100352[(alu21+-26)], alu4);
var val46 = data1_100352[(alu21+2)];
var val47 = select(0.0f, data1_100352[(alu21+30)], alu2);
var val48 = select(0.0f, data1_100352[(alu21+-25)], alu4);
var val49 = data1_100352[(alu21+3)];
var val50 = select(0.0f, data1_100352[(alu21+31)], alu2);
var val51 = select(0.0f, data1_100352[(alu21+-24)], (alu1&alu4));
var val52 = select(0.0f, data1_100352[(alu21+4)], alu1);
var val53 = select(0.0f, data1_100352[(alu21+32)], (alu1&alu2));
acc0[0] = (acc0[0]+(val0*val2)+(val3*val1)+(val4*val5)+(val6*val7)+(val10*val11)+(val8*val12)+(val13*val14)+(val9*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val3*val19)+(val4*val20)+(val6*val21)+(val10*val22)+(val8*val23)+(val13*val24)+(val9*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val3*val28)+(val4*val29)+(val6*val30)+(val10*val31)+(val8*val32)+(val13*val33)+(val9*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val3*val37)+(val4*val38)+(val6*val39)+(val10*val40)+(val8*val41)+(val13*val42)+(val9*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val3*val2)+(val4*val1)+(val45*val5)+(val10*val7)+(val8*val11)+(val46*val12)+(val9*val14)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val3*val18)+(val4*val19)+(val45*val20)+(val10*val21)+(val8*val22)+(val46*val23)+(val9*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val3*val27)+(val4*val28)+(val45*val29)+(val10*val30)+(val8*val31)+(val46*val32)+(val9*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val3*val36)+(val4*val37)+(val45*val38)+(val10*val39)+(val8*val40)+(val46*val41)+(val9*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val2)+(val45*val1)+(val48*val5)+(val8*val7)+(val46*val11)+(val49*val12)+(val16*val14)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val8*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val8*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val8*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val2)+(val48*val1)+(val51*val5)+(val46*val7)+(val49*val11)+(val52*val12)+(val47*val14)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var cast0 = bitcast<i32>((bitcast<u32>(lidx0)<<2u));
var val54 = data3_128[cast0];
var val55 = data4_128[cast0];
var alu40 = (cast0+1);
var val56 = data3_128[alu40];
var val57 = data4_128[alu40];
var alu41 = (cast0+2);
var val58 = data3_128[alu41];
var val59 = data4_128[alu41];
var alu42 = (cast0+3);
var val60 = data3_128[alu42];
var val61 = data4_128[alu42];
var alu43 = (alu0+(lidx0*3136));
var alu44 = (acc0[1]+val56);
var alu45 = (acc0[5]+val56);
var alu46 = (acc0[9]+val56);
var alu47 = (acc0[13]+val56);
var alu48 = select((alu44*val57),alu44,(0.0f<alu44));
var alu49 = select((alu45*val57),alu45,(0.0f<alu45));
var alu50 = select((alu46*val57),alu46,(0.0f<alu46));
var alu51 = select((alu47*val57),alu47,(0.0f<alu47));
data0_100352[(alu43+784)] = alu48;
data0_100352[(alu43+785)] = alu49;
data0_100352[(alu43+786)] = alu50;
data0_100352[(alu43+787)] = alu51;
var alu56 = (acc0[2]+val58);
var alu57 = (acc0[6]+val58);
var alu58 = (acc0[10]+val58);
var alu59 = (acc0[14]+val58);
var alu60 = select((alu56*val59),alu56,(0.0f<alu56));
var alu61 = select((alu57*val59),alu57,(0.0f<alu57));
var alu62 = select((alu58*val59),alu58,(0.0f<alu58));
var alu63 = select((alu59*val59),alu59,(0.0f<alu59));
data0_100352[(alu43+1568)] = alu60;
data0_100352[(alu43+1569)] = alu61;
data0_100352[(alu43+1570)] = alu62;
data0_100352[(alu43+1571)] = alu63;
var alu68 = (acc0[3]+val60);
var alu69 = (acc0[7]+val60);
var alu70 = (acc0[11]+val60);
var alu71 = (acc0[15]+val60);
var alu72 = select((alu68*val61),alu68,(0.0f<alu68));
var alu73 = select((alu69*val61),alu69,(0.0f<alu69));
var alu74 = select((alu70*val61),alu70,(0.0f<alu70));
var alu75 = select((alu71*val61),alu71,(0.0f<alu71));
data0_100352[(alu43+2352)] = alu72;
data0_100352[(alu43+2353)] = alu73;
data0_100352[(alu43+2354)] = alu74;
data0_100352[(alu43+2355)] = alu75;
var alu80 = (acc0[0]+val54);
var alu81 = (acc0[4]+val54);
var alu82 = (acc0[8]+val54);
var alu83 = (acc0[12]+val54);
var alu84 = select((alu80*val55),alu80,(0.0f<alu80));
var alu85 = select((alu81*val55),alu81,(0.0f<alu81));
var alu86 = select((alu82*val55),alu82,(0.0f<alu82));
var alu87 = select((alu83*val55),alu83,(0.0f<alu83));
data0_100352[(alu43+1)] = alu85;
data0_100352[(alu43+2)] = alu86;
data0_100352[(alu43+3)] = alu87;
data0_100352[alu43] = alu84;
}`;
const r_7_7_32_4_4_4_128_3_3n1 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_100352:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_100352:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_147456:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_128:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_100352:array<f32>;
@compute @workgroup_size(32,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 4 */
var alu0 = ((gidx1*112)+(lidx1*28)+bitcast<i32>((bitcast<u32>(gidx0)<<2u)));
var alu1 = (gidx0<6);
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<2u)))<27);
var alu3 = (0<gidx0);
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 128; Ridx0++) {
var alu21 = (alu0+(Ridx0*784));
var val0 = select(0.0f, data1_100352[(alu21+-29)], (alu3&alu4));
var alu22 = ((lidx0*4608)+(Ridx0*9));
var val1 = data2_147456[(alu22+1)];
var val2 = data2_147456[alu22];
var val3 = select(0.0f, data1_100352[(alu21+-28)], alu4);
var val4 = select(0.0f, data1_100352[(alu21+-27)], alu4);
var val5 = data2_147456[(alu22+2)];
var val6 = select(0.0f, data1_100352[(alu21+-1)], alu3);
var val7 = data2_147456[(alu22+3)];
var val8 = data1_100352[(alu21+1)];
var val9 = select(0.0f, data1_100352[(alu21+28)], alu2);
var val10 = data1_100352[alu21];
var val11 = data2_147456[(alu22+4)];
var val12 = data2_147456[(alu22+5)];
var val13 = select(0.0f, data1_100352[(alu21+27)], (alu3&alu2));
var val14 = data2_147456[(alu22+6)];
var val15 = data2_147456[(alu22+7)];
var val16 = select(0.0f, data1_100352[(alu21+29)], alu2);
var val17 = data2_147456[(alu22+8)];
var val18 = data2_147456[(alu22+1152)];
var val19 = data2_147456[(alu22+1153)];
var val20 = data2_147456[(alu22+1154)];
var val21 = data2_147456[(alu22+1155)];
var val22 = data2_147456[(alu22+1156)];
var val23 = data2_147456[(alu22+1157)];
var val24 = data2_147456[(alu22+1158)];
var val25 = data2_147456[(alu22+1159)];
var val26 = data2_147456[(alu22+1160)];
var val27 = data2_147456[(alu22+2304)];
var val28 = data2_147456[(alu22+2305)];
var val29 = data2_147456[(alu22+2306)];
var val30 = data2_147456[(alu22+2307)];
var val31 = data2_147456[(alu22+2308)];
var val32 = data2_147456[(alu22+2309)];
var val33 = data2_147456[(alu22+2310)];
var val34 = data2_147456[(alu22+2311)];
var val35 = data2_147456[(alu22+2312)];
var val36 = data2_147456[(alu22+3456)];
var val37 = data2_147456[(alu22+3457)];
var val38 = data2_147456[(alu22+3458)];
var val39 = data2_147456[(alu22+3459)];
var val40 = data2_147456[(alu22+3460)];
var val41 = data2_147456[(alu22+3461)];
var val42 = data2_147456[(alu22+3462)];
var val43 = data2_147456[(alu22+3463)];
var val44 = data2_147456[(alu22+3464)];
var val45 = select(0.0f, data1_100352[(alu21+-26)], alu4);
var val46 = data1_100352[(alu21+2)];
var val47 = select(0.0f, data1_100352[(alu21+30)], alu2);
var val48 = select(0.0f, data1_100352[(alu21+-25)], alu4);
var val49 = data1_100352[(alu21+3)];
var val50 = select(0.0f, data1_100352[(alu21+31)], alu2);
var val51 = select(0.0f, data1_100352[(alu21+-24)], (alu1&alu4));
var val52 = select(0.0f, data1_100352[(alu21+4)], alu1);
var val53 = select(0.0f, data1_100352[(alu21+32)], (alu1&alu2));
acc0[0] = (acc0[0]+(val0*val2)+(val3*val1)+(val4*val5)+(val6*val7)+(val10*val11)+(val8*val12)+(val13*val14)+(val9*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val3*val19)+(val4*val20)+(val6*val21)+(val10*val22)+(val8*val23)+(val13*val24)+(val9*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val3*val28)+(val4*val29)+(val6*val30)+(val10*val31)+(val8*val32)+(val13*val33)+(val9*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val3*val37)+(val4*val38)+(val6*val39)+(val10*val40)+(val8*val41)+(val13*val42)+(val9*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val3*val2)+(val4*val1)+(val45*val5)+(val10*val7)+(val8*val11)+(val46*val12)+(val9*val14)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val3*val18)+(val4*val19)+(val45*val20)+(val10*val21)+(val8*val22)+(val46*val23)+(val9*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val3*val27)+(val4*val28)+(val45*val29)+(val10*val30)+(val8*val31)+(val46*val32)+(val9*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val3*val36)+(val4*val37)+(val45*val38)+(val10*val39)+(val8*val40)+(val46*val41)+(val9*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val2)+(val45*val1)+(val48*val5)+(val8*val7)+(val46*val11)+(val49*val12)+(val16*val14)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val8*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val8*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val8*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val2)+(val48*val1)+(val51*val5)+(val46*val7)+(val49*val11)+(val52*val12)+(val47*val14)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var cast0 = bitcast<i32>((bitcast<u32>(lidx0)<<2u));
var val54 = data3_128[cast0];
var alu40 = (alu0+(lidx0*3136));
var alu41 = (alu40+1);
var val55 = data4_100352[alu41];
var alu42 = (alu40+2);
var val56 = data4_100352[alu42];
var val57 = data4_100352[alu40];
var alu43 = (alu40+3);
var val58 = data4_100352[alu43];
var val59 = data3_128[(cast0+1)];
var alu44 = (alu40+784);
var val60 = data4_100352[alu44];
var alu45 = (alu40+785);
var val61 = data4_100352[alu45];
var alu46 = (alu40+786);
var val62 = data4_100352[alu46];
var alu47 = (alu40+787);
var val63 = data4_100352[alu47];
var val64 = data3_128[(cast0+2)];
var alu48 = (alu40+1568);
var val65 = data4_100352[alu48];
var alu49 = (alu40+1569);
var val66 = data4_100352[alu49];
var alu50 = (alu40+1570);
var val67 = data4_100352[alu50];
var alu51 = (alu40+1571);
var val68 = data4_100352[alu51];
var val69 = data3_128[(cast0+3)];
var alu52 = (alu40+2352);
var val70 = data4_100352[alu52];
var alu53 = (alu40+2353);
var val71 = data4_100352[alu53];
var alu54 = (alu40+2354);
var val72 = data4_100352[alu54];
var alu55 = (alu40+2355);
var val73 = data4_100352[alu55];
data0_100352[alu44] = (acc0[1]+val59+val60);
data0_100352[alu45] = (acc0[5]+val59+val61);
data0_100352[alu46] = (acc0[9]+val59+val62);
data0_100352[alu47] = (acc0[13]+val59+val63);
data0_100352[alu48] = (acc0[2]+val64+val65);
data0_100352[alu49] = (acc0[6]+val64+val66);
data0_100352[alu50] = (acc0[10]+val64+val67);
data0_100352[alu51] = (acc0[14]+val64+val68);
data0_100352[alu52] = (acc0[3]+val69+val70);
data0_100352[alu53] = (acc0[7]+val69+val71);
data0_100352[alu54] = (acc0[11]+val69+val72);
data0_100352[alu55] = (acc0[15]+val69+val73);
data0_100352[alu41] = (acc0[4]+val54+val55);
data0_100352[alu42] = (acc0[8]+val54+val56);
data0_100352[alu43] = (acc0[12]+val54+val58);
data0_100352[alu40] = (acc0[0]+val54+val57);
}`;
const r_2_7_7_32_4_4_4_128_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_200704:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_100352:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_294912:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_256:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_256:array<f32>;
@compute @workgroup_size(32,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,16>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 4 */
var alu0 = ((gidx1*112)+(lidx1*28)+bitcast<i32>((bitcast<u32>(gidx0)<<2u)));
var alu1 = (gidx0<6);
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<2u)))<27);
var alu3 = (0<gidx0);
var alu4 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 128; Ridx0++) {
var alu21 = (alu0+(Ridx0*784));
var val0 = select(0.0f, data1_100352[(alu21+-29)], (alu3&alu4));
var alu22 = ((gidx2*147456)+(lidx0*4608)+(Ridx0*9));
var val1 = data2_294912[alu22];
var val2 = select(0.0f, data1_100352[(alu21+-28)], alu4);
var val3 = data2_294912[(alu22+1)];
var val4 = select(0.0f, data1_100352[(alu21+-27)], alu4);
var val5 = data2_294912[(alu22+2)];
var val6 = select(0.0f, data1_100352[(alu21+-1)], alu3);
var val7 = data2_294912[(alu22+3)];
var val8 = data1_100352[(alu21+1)];
var val9 = select(0.0f, data1_100352[(alu21+27)], (alu3&alu2));
var val10 = data1_100352[alu21];
var val11 = data2_294912[(alu22+4)];
var val12 = data2_294912[(alu22+5)];
var val13 = data2_294912[(alu22+6)];
var val14 = select(0.0f, data1_100352[(alu21+28)], alu2);
var val15 = data2_294912[(alu22+7)];
var val16 = select(0.0f, data1_100352[(alu21+29)], alu2);
var val17 = data2_294912[(alu22+8)];
var val18 = data2_294912[(alu22+1152)];
var val19 = data2_294912[(alu22+1153)];
var val20 = data2_294912[(alu22+1154)];
var val21 = data2_294912[(alu22+1155)];
var val22 = data2_294912[(alu22+1156)];
var val23 = data2_294912[(alu22+1157)];
var val24 = data2_294912[(alu22+1158)];
var val25 = data2_294912[(alu22+1159)];
var val26 = data2_294912[(alu22+1160)];
var val27 = data2_294912[(alu22+2304)];
var val28 = data2_294912[(alu22+2305)];
var val29 = data2_294912[(alu22+2306)];
var val30 = data2_294912[(alu22+2307)];
var val31 = data2_294912[(alu22+2308)];
var val32 = data2_294912[(alu22+2309)];
var val33 = data2_294912[(alu22+2310)];
var val34 = data2_294912[(alu22+2311)];
var val35 = data2_294912[(alu22+2312)];
var val36 = data2_294912[(alu22+3456)];
var val37 = data2_294912[(alu22+3457)];
var val38 = data2_294912[(alu22+3458)];
var val39 = data2_294912[(alu22+3459)];
var val40 = data2_294912[(alu22+3460)];
var val41 = data2_294912[(alu22+3461)];
var val42 = data2_294912[(alu22+3462)];
var val43 = data2_294912[(alu22+3463)];
var val44 = data2_294912[(alu22+3464)];
var val45 = select(0.0f, data1_100352[(alu21+-26)], alu4);
var val46 = data1_100352[(alu21+2)];
var val47 = select(0.0f, data1_100352[(alu21+30)], alu2);
var val48 = select(0.0f, data1_100352[(alu21+-25)], alu4);
var val49 = data1_100352[(alu21+3)];
var val50 = select(0.0f, data1_100352[(alu21+31)], alu2);
var val51 = select(0.0f, data1_100352[(alu21+-24)], (alu1&alu4));
var val52 = select(0.0f, data1_100352[(alu21+4)], alu1);
var val53 = select(0.0f, data1_100352[(alu21+32)], (alu1&alu2));
acc0[0] = (acc0[0]+(val0*val1)+(val2*val3)+(val4*val5)+(val6*val7)+(val10*val11)+(val8*val12)+(val9*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val2*val19)+(val4*val20)+(val6*val21)+(val10*val22)+(val8*val23)+(val9*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val2*val28)+(val4*val29)+(val6*val30)+(val10*val31)+(val8*val32)+(val9*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val2*val37)+(val4*val38)+(val6*val39)+(val10*val40)+(val8*val41)+(val9*val42)+(val14*val43)+(val16*val44));
acc0[4] = (acc0[4]+(val2*val1)+(val4*val3)+(val45*val5)+(val10*val7)+(val8*val11)+(val46*val12)+(val14*val13)+(val16*val15)+(val47*val17));
acc0[5] = (acc0[5]+(val2*val18)+(val4*val19)+(val45*val20)+(val10*val21)+(val8*val22)+(val46*val23)+(val14*val24)+(val16*val25)+(val47*val26));
acc0[6] = (acc0[6]+(val2*val27)+(val4*val28)+(val45*val29)+(val10*val30)+(val8*val31)+(val46*val32)+(val14*val33)+(val16*val34)+(val47*val35));
acc0[7] = (acc0[7]+(val2*val36)+(val4*val37)+(val45*val38)+(val10*val39)+(val8*val40)+(val46*val41)+(val14*val42)+(val16*val43)+(val47*val44));
acc0[8] = (acc0[8]+(val4*val1)+(val45*val3)+(val48*val5)+(val8*val7)+(val46*val11)+(val49*val12)+(val16*val13)+(val47*val15)+(val50*val17));
acc0[9] = (acc0[9]+(val4*val18)+(val45*val19)+(val48*val20)+(val8*val21)+(val46*val22)+(val49*val23)+(val16*val24)+(val47*val25)+(val50*val26));
acc0[10] = (acc0[10]+(val4*val27)+(val45*val28)+(val48*val29)+(val8*val30)+(val46*val31)+(val49*val32)+(val16*val33)+(val47*val34)+(val50*val35));
acc0[11] = (acc0[11]+(val4*val36)+(val45*val37)+(val48*val38)+(val8*val39)+(val46*val40)+(val49*val41)+(val16*val42)+(val47*val43)+(val50*val44));
acc0[12] = (acc0[12]+(val45*val1)+(val48*val3)+(val51*val5)+(val46*val7)+(val49*val11)+(val52*val12)+(val47*val13)+(val50*val15)+(val53*val17));
acc0[13] = (acc0[13]+(val45*val18)+(val48*val19)+(val51*val20)+(val46*val21)+(val49*val22)+(val52*val23)+(val47*val24)+(val50*val25)+(val53*val26));
acc0[14] = (acc0[14]+(val45*val27)+(val48*val28)+(val51*val29)+(val46*val30)+(val49*val31)+(val52*val32)+(val47*val33)+(val50*val34)+(val53*val35));
acc0[15] = (acc0[15]+(val45*val36)+(val48*val37)+(val51*val38)+(val46*val39)+(val49*val40)+(val52*val41)+(val47*val42)+(val50*val43)+(val53*val44));
}
var alu40 = (bitcast<i32>((bitcast<u32>(gidx2)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val54 = data3_256[alu40];
var val55 = data4_256[alu40];
var alu41 = (alu40+1);
var val56 = data3_256[alu41];
var alu42 = (alu40+2);
var val57 = data3_256[alu42];
var val58 = data4_256[alu41];
var val59 = data4_256[alu42];
var alu43 = (alu40+3);
var val60 = data3_256[alu43];
var val61 = data4_256[alu43];
var alu44 = (alu0+(gidx2*100352)+(lidx0*3136));
var alu45 = (acc0[1]+val56);
var alu46 = (acc0[5]+val56);
var alu47 = (acc0[9]+val56);
var alu48 = (acc0[13]+val56);
var alu49 = select((alu45*val58),alu45,(0.0f<alu45));
var alu50 = select((alu46*val58),alu46,(0.0f<alu46));
var alu51 = select((alu47*val58),alu47,(0.0f<alu47));
var alu52 = select((alu48*val58),alu48,(0.0f<alu48));
data0_200704[(alu44+784)] = alu49;
data0_200704[(alu44+785)] = alu50;
data0_200704[(alu44+786)] = alu51;
data0_200704[(alu44+787)] = alu52;
var alu57 = (acc0[2]+val57);
var alu58 = (acc0[6]+val57);
var alu59 = (acc0[10]+val57);
var alu60 = (acc0[14]+val57);
var alu61 = select((alu57*val59),alu57,(0.0f<alu57));
var alu62 = select((alu58*val59),alu58,(0.0f<alu58));
var alu63 = select((alu59*val59),alu59,(0.0f<alu59));
var alu64 = select((alu60*val59),alu60,(0.0f<alu60));
data0_200704[(alu44+1568)] = alu61;
data0_200704[(alu44+1569)] = alu62;
data0_200704[(alu44+1570)] = alu63;
data0_200704[(alu44+1571)] = alu64;
var alu69 = (acc0[3]+val60);
var alu70 = (acc0[7]+val60);
var alu71 = (acc0[11]+val60);
var alu72 = (acc0[15]+val60);
var alu73 = select((alu69*val61),alu69,(0.0f<alu69));
var alu74 = select((alu70*val61),alu70,(0.0f<alu70));
var alu75 = select((alu71*val61),alu71,(0.0f<alu71));
var alu76 = select((alu72*val61),alu72,(0.0f<alu72));
data0_200704[(alu44+2352)] = alu73;
data0_200704[(alu44+2353)] = alu74;
data0_200704[(alu44+2354)] = alu75;
data0_200704[(alu44+2355)] = alu76;
var alu81 = (acc0[0]+val54);
var alu82 = (acc0[4]+val54);
var alu83 = (acc0[8]+val54);
var alu84 = (acc0[12]+val54);
var alu85 = select((alu81*val55),alu81,(0.0f<alu81));
var alu86 = select((alu82*val55),alu82,(0.0f<alu82));
var alu87 = select((alu83*val55),alu83,(0.0f<alu83));
var alu88 = select((alu84*val55),alu84,(0.0f<alu84));
data0_200704[(alu44+1)] = alu86;
data0_200704[(alu44+2)] = alu87;
data0_200704[(alu44+3)] = alu88;
data0_200704[alu44] = alu85;
}`;
const r_2_7_7_32_2_2_4_256_3_3_32_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_50176:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_200704:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_589824:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_256:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_100352:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_32768:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_256:array<f32>;
@compute @workgroup_size(32,2,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,4>;
var acc1: array<f32,4>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 2 */
var lidx2 = i32(lindex.z); /* 2 */
var cast0 = bitcast<u32>(gidx0);
var alu0 = (bitcast<i32>((cast0<<2u))+bitcast<i32>((bitcast<u32>(lidx2)<<1u)));
var alu1 = ((gidx1*112)+(lidx1*56));
acc1[0] = 0.0f;
acc1[1] = 0.0f;
acc1[2] = 0.0f;
acc1[3] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 256; Ridx0++) {
for (var Ridx1 = 0; Ridx1 < 3; Ridx1++) {
for (var Ridx2 = 0; Ridx2 < 3; Ridx2++) {
var val0 = select(0.0f, data1_200704[(alu0+Ridx2+alu1+(Ridx1*28)+(Ridx0*784)+-29)], ((0<(gidx0+lidx2+Ridx2))&(0<(gidx1+lidx1+Ridx1))));
var alu6 = ((Ridx1*3)+Ridx2+(Ridx0*9)+(gidx2*294912)+(lidx0*9216));
var val1 = data2_589824[alu6];
var val2 = data2_589824[(alu6+2304)];
var val3 = data2_589824[(alu6+4608)];
var val4 = data2_589824[(alu6+6912)];
acc1[0] = (acc1[0]+(val0*val1));
acc1[1] = (acc1[1]+(val0*val2));
acc1[2] = (acc1[2]+(val0*val3));
acc1[3] = (acc1[3]+(val0*val4));
}
}
}
var cast1 = bitcast<u32>(gidx2);
var cast2 = bitcast<u32>(lidx0);
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
for (var Ridx3 = 0; Ridx3 < 32; Ridx3++) {
var alu18 = (alu0+alu1+(Ridx3*3136));
var val5 = data4_100352[alu18];
var alu19 = (bitcast<i32>((cast1<<14u))+bitcast<i32>((cast2<<9u))+bitcast<i32>((bitcast<u32>(Ridx3)<<2u)));
var val6 = data5_32768[alu19];
var val7 = data4_100352[(alu18+784)];
var val8 = data5_32768[(alu19+1)];
var val9 = data4_100352[(alu18+1568)];
var val10 = data5_32768[(alu19+2)];
var val11 = data4_100352[(alu18+2352)];
var val12 = data5_32768[(alu19+3)];
var val13 = data5_32768[(alu19+128)];
var val14 = data5_32768[(alu19+129)];
var val15 = data5_32768[(alu19+130)];
var val16 = data5_32768[(alu19+131)];
var val17 = data5_32768[(alu19+256)];
var val18 = data5_32768[(alu19+257)];
var val19 = data5_32768[(alu19+258)];
var val20 = data5_32768[(alu19+259)];
var val21 = data5_32768[(alu19+384)];
var val22 = data5_32768[(alu19+385)];
var val23 = data5_32768[(alu19+386)];
var val24 = data5_32768[(alu19+387)];
acc0[0] = (acc0[0]+(val5*val6)+(val7*val8)+(val9*val10)+(val11*val12));
acc0[1] = (acc0[1]+(val5*val13)+(val7*val14)+(val9*val15)+(val11*val16));
acc0[2] = (acc0[2]+(val5*val17)+(val7*val18)+(val9*val19)+(val11*val20));
acc0[3] = (acc0[3]+(val5*val21)+(val7*val22)+(val9*val23)+(val11*val24));
}
var alu25 = (bitcast<i32>((cast1<<7u))+bitcast<i32>((cast2<<2u)));
var val25 = data3_256[alu25];
var val26 = data6_256[alu25];
var alu26 = (alu25+1);
var val27 = data3_256[alu26];
var val28 = data6_256[alu26];
var alu27 = (alu25+2);
var val29 = data3_256[alu27];
var alu28 = (alu25+3);
var val30 = data3_256[alu28];
var val31 = data6_256[alu27];
var val32 = data6_256[alu28];
var alu29 = (lidx2+bitcast<i32>((cast0<<1u))+(gidx1*28)+(lidx1*14)+(gidx2*25088)+(lidx0*784));
data0_50176[alu29] = (acc1[0]+val25+acc0[0]+val26);
data0_50176[(alu29+196)] = (acc1[1]+val27+acc0[1]+val28);
data0_50176[(alu29+392)] = (acc1[2]+val29+acc0[2]+val31);
data0_50176[(alu29+588)] = (acc1[3]+val30+acc0[3]+val32);
}`;
const E_8_49_32_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_50176:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_50176:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_256:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_256:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_256:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_256:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 49 */
var gidx1 = i32(gindex.y); /* 8 */
var lidx0 = i32(lindex.x); /* 32 */
var alu0 = ((gidx1*6272)+(lidx0*196)+bitcast<i32>((bitcast<u32>(gidx0)<<2u)));
var val0 = data1_50176[alu0];
var alu1 = (lidx0+bitcast<i32>((bitcast<u32>(gidx1)<<5u)));
var val1 = data2_256[alu1];
var val2 = data3_256[alu1];
var val3 = data4_256[alu1];
var val4 = data5_256[alu1];
var alu2 = (alu0+1);
var val5 = data1_50176[alu2];
var alu3 = (alu0+2);
var val6 = data1_50176[alu3];
var alu4 = (alu0+3);
var val7 = data1_50176[alu4];
var alu5 = (1/sqrt((val3+9.999999747378752e-06f)));
data0_50176[alu2] = (((val5-val1)*val2*alu5)+val4);
data0_50176[alu3] = (((val6-val1)*val2*alu5)+val4);
data0_50176[alu4] = (((val7-val1)*val2*alu5)+val4);
data0_50176[alu0] = (((val0-val1)*val2*alu5)+val4);
}`;
const r_2_7_7_32_2_2_4_256_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_50176:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_50176:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_589824:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_256:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_256:array<f32>;
@compute @workgroup_size(32,2,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,4>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 2 */
var lidx2 = i32(lindex.z); /* 2 */
var alu0 = (lidx2+bitcast<i32>((bitcast<u32>(gidx0)<<1u)));
var alu1 = (alu0+(gidx1*28)+(lidx1*14));
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<1u)))<13);
var alu3 = (alu0<13);
var alu4 = (0<(gidx0+lidx2));
var alu5 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 256; Ridx0++) {
var alu10 = (alu1+(Ridx0*196));
var val0 = data1_50176[alu10];
var val1 = select(0.0f, data1_50176[(alu10+-15)], (alu4&alu5));
var alu11 = ((gidx2*294912)+(lidx0*9216)+(Ridx0*9));
var val2 = data2_589824[(alu11+4)];
var val3 = data2_589824[alu11];
var val4 = select(0.0f, data1_50176[(alu10+-14)], alu5);
var val5 = data2_589824[(alu11+1)];
var val6 = select(0.0f, data1_50176[(alu10+-13)], (alu3&alu5));
var val7 = data2_589824[(alu11+2)];
var val8 = select(0.0f, data1_50176[(alu10+-1)], alu4);
var val9 = data2_589824[(alu11+3)];
var val10 = select(0.0f, data1_50176[(alu10+1)], alu3);
var val11 = data2_589824[(alu11+5)];
var val12 = select(0.0f, data1_50176[(alu10+13)], (alu4&alu2));
var val13 = data2_589824[(alu11+6)];
var val14 = select(0.0f, data1_50176[(alu10+14)], alu2);
var val15 = data2_589824[(alu11+7)];
var val16 = select(0.0f, data1_50176[(alu10+15)], (alu3&alu2));
var val17 = data2_589824[(alu11+8)];
var val18 = data2_589824[(alu11+2304)];
var val19 = data2_589824[(alu11+2305)];
var val20 = data2_589824[(alu11+2306)];
var val21 = data2_589824[(alu11+2307)];
var val22 = data2_589824[(alu11+2308)];
var val23 = data2_589824[(alu11+2309)];
var val24 = data2_589824[(alu11+2310)];
var val25 = data2_589824[(alu11+2311)];
var val26 = data2_589824[(alu11+2312)];
var val27 = data2_589824[(alu11+4608)];
var val28 = data2_589824[(alu11+4609)];
var val29 = data2_589824[(alu11+4610)];
var val30 = data2_589824[(alu11+4611)];
var val31 = data2_589824[(alu11+4612)];
var val32 = data2_589824[(alu11+4613)];
var val33 = data2_589824[(alu11+4614)];
var val34 = data2_589824[(alu11+4615)];
var val35 = data2_589824[(alu11+4616)];
var val36 = data2_589824[(alu11+6912)];
var val37 = data2_589824[(alu11+6913)];
var val38 = data2_589824[(alu11+6914)];
var val39 = data2_589824[(alu11+6915)];
var val40 = data2_589824[(alu11+6916)];
var val41 = data2_589824[(alu11+6917)];
var val42 = data2_589824[(alu11+6918)];
var val43 = data2_589824[(alu11+6919)];
var val44 = data2_589824[(alu11+6920)];
acc0[0] = (acc0[0]+(val1*val3)+(val4*val5)+(val6*val7)+(val8*val9)+(val0*val2)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val1*val18)+(val4*val19)+(val6*val20)+(val8*val21)+(val0*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val1*val27)+(val4*val28)+(val6*val29)+(val8*val30)+(val0*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val1*val36)+(val4*val37)+(val6*val38)+(val8*val39)+(val0*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
}
var alu17 = (bitcast<i32>((bitcast<u32>(gidx2)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val45 = data3_256[alu17];
var val46 = data4_256[alu17];
var alu18 = (alu17+1);
var val47 = data3_256[alu18];
var alu19 = (alu17+2);
var val48 = data3_256[alu19];
var val49 = data4_256[alu18];
var val50 = data4_256[alu19];
var alu20 = (alu17+3);
var val51 = data3_256[alu20];
var val52 = data4_256[alu20];
var alu21 = (alu1+(gidx2*25088)+(lidx0*784));
var alu22 = (acc0[0]+val45);
var alu23 = (acc0[1]+val47);
var alu24 = (acc0[2]+val48);
var alu25 = (acc0[3]+val51);
var alu26 = select((alu22*val46),alu22,(0.0f<alu22));
var alu27 = select((alu23*val49),alu23,(0.0f<alu23));
var alu28 = select((alu24*val50),alu24,(0.0f<alu24));
var alu29 = select((alu25*val52),alu25,(0.0f<alu25));
data0_50176[alu21] = alu26;
data0_50176[(alu21+196)] = alu27;
data0_50176[(alu21+392)] = alu28;
data0_50176[(alu21+588)] = alu29;
}`;
const r_2_7_7_32_2_2_4_256_3_3n1 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_50176:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_50176:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_589824:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_256:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_50176:array<f32>;
@compute @workgroup_size(32,2,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,4>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 2 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 2 */
var lidx2 = i32(lindex.z); /* 2 */
var alu0 = (lidx2+bitcast<i32>((bitcast<u32>(gidx0)<<1u)));
var alu1 = (alu0+(gidx1*28)+(lidx1*14));
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<1u)))<13);
var alu3 = (alu0<13);
var alu4 = (0<(gidx0+lidx2));
var alu5 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 256; Ridx0++) {
var alu10 = (alu1+(Ridx0*196));
var val0 = select(0.0f, data1_50176[(alu10+-15)], (alu4&alu5));
var alu11 = ((gidx2*294912)+(lidx0*9216)+(Ridx0*9));
var val1 = data2_589824[alu11];
var val2 = select(0.0f, data1_50176[(alu10+-14)], alu5);
var val3 = data2_589824[(alu11+1)];
var val4 = select(0.0f, data1_50176[(alu10+-13)], (alu3&alu5));
var val5 = data2_589824[(alu11+2)];
var val6 = select(0.0f, data1_50176[(alu10+-1)], alu4);
var val7 = data2_589824[(alu11+3)];
var val8 = data1_50176[alu10];
var val9 = data2_589824[(alu11+4)];
var val10 = select(0.0f, data1_50176[(alu10+1)], alu3);
var val11 = data2_589824[(alu11+5)];
var val12 = select(0.0f, data1_50176[(alu10+13)], (alu4&alu2));
var val13 = data2_589824[(alu11+6)];
var val14 = select(0.0f, data1_50176[(alu10+14)], alu2);
var val15 = data2_589824[(alu11+7)];
var val16 = select(0.0f, data1_50176[(alu10+15)], (alu3&alu2));
var val17 = data2_589824[(alu11+8)];
var val18 = data2_589824[(alu11+2304)];
var val19 = data2_589824[(alu11+2305)];
var val20 = data2_589824[(alu11+2306)];
var val21 = data2_589824[(alu11+2307)];
var val22 = data2_589824[(alu11+2308)];
var val23 = data2_589824[(alu11+2309)];
var val24 = data2_589824[(alu11+2310)];
var val25 = data2_589824[(alu11+2311)];
var val26 = data2_589824[(alu11+2312)];
var val27 = data2_589824[(alu11+4608)];
var val28 = data2_589824[(alu11+4609)];
var val29 = data2_589824[(alu11+4610)];
var val30 = data2_589824[(alu11+4611)];
var val31 = data2_589824[(alu11+4612)];
var val32 = data2_589824[(alu11+4613)];
var val33 = data2_589824[(alu11+4614)];
var val34 = data2_589824[(alu11+4615)];
var val35 = data2_589824[(alu11+4616)];
var val36 = data2_589824[(alu11+6912)];
var val37 = data2_589824[(alu11+6913)];
var val38 = data2_589824[(alu11+6914)];
var val39 = data2_589824[(alu11+6915)];
var val40 = data2_589824[(alu11+6916)];
var val41 = data2_589824[(alu11+6917)];
var val42 = data2_589824[(alu11+6918)];
var val43 = data2_589824[(alu11+6919)];
var val44 = data2_589824[(alu11+6920)];
acc0[0] = (acc0[0]+(val0*val1)+(val2*val3)+(val4*val5)+(val6*val7)+(val8*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val2*val19)+(val4*val20)+(val6*val21)+(val8*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val2*val28)+(val4*val29)+(val6*val30)+(val8*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val2*val37)+(val4*val38)+(val6*val39)+(val8*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
}
var alu17 = (bitcast<i32>((bitcast<u32>(gidx2)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val45 = data3_256[alu17];
var alu18 = (alu1+(gidx2*25088)+(lidx0*784));
var val46 = data4_50176[alu18];
var val47 = data3_256[(alu17+1)];
var alu19 = (alu18+196);
var val48 = data4_50176[alu19];
var val49 = data3_256[(alu17+2)];
var alu20 = (alu18+392);
var val50 = data4_50176[alu20];
var val51 = data3_256[(alu17+3)];
var alu21 = (alu18+588);
var val52 = data4_50176[alu21];
data0_50176[alu18] = (acc0[0]+val45+val46);
data0_50176[alu19] = (acc0[1]+val47+val48);
data0_50176[alu20] = (acc0[2]+val49+val50);
data0_50176[alu21] = (acc0[3]+val51+val52);
}`;
const r_4_7_7_32_2_2_4_256_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_100352:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_50176:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_1179648:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_512:array<f32>;
@compute @workgroup_size(32,2,2) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,4>;
var gidx0 = i32(gindex.x); /* 7 */
var gidx1 = i32(gindex.y); /* 7 */
var gidx2 = i32(gindex.z); /* 4 */
var lidx0 = i32(lindex.x); /* 32 */
var lidx1 = i32(lindex.y); /* 2 */
var lidx2 = i32(lindex.z); /* 2 */
var alu0 = (lidx2+bitcast<i32>((bitcast<u32>(gidx0)<<1u)));
var alu1 = (alu0+(gidx1*28)+(lidx1*14));
var alu2 = ((lidx1+bitcast<i32>((bitcast<u32>(gidx1)<<1u)))<13);
var alu3 = (alu0<13);
var alu4 = (0<(gidx0+lidx2));
var alu5 = (0<(gidx1+lidx1));
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 256; Ridx0++) {
var alu10 = (alu1+(Ridx0*196));
var val0 = select(0.0f, data1_50176[(alu10+-15)], (alu4&alu5));
var alu11 = ((gidx2*294912)+(lidx0*9216)+(Ridx0*9));
var val1 = data2_1179648[(alu11+3)];
var val2 = data2_1179648[alu11];
var val3 = data1_50176[alu10];
var val4 = select(0.0f, data1_50176[(alu10+-14)], alu5);
var val5 = data2_1179648[(alu11+1)];
var val6 = select(0.0f, data1_50176[(alu10+-13)], (alu3&alu5));
var val7 = data2_1179648[(alu11+2)];
var val8 = select(0.0f, data1_50176[(alu10+-1)], alu4);
var val9 = data2_1179648[(alu11+4)];
var val10 = select(0.0f, data1_50176[(alu10+1)], alu3);
var val11 = data2_1179648[(alu11+5)];
var val12 = select(0.0f, data1_50176[(alu10+13)], (alu4&alu2));
var val13 = data2_1179648[(alu11+6)];
var val14 = select(0.0f, data1_50176[(alu10+14)], alu2);
var val15 = data2_1179648[(alu11+7)];
var val16 = select(0.0f, data1_50176[(alu10+15)], (alu3&alu2));
var val17 = data2_1179648[(alu11+8)];
var val18 = data2_1179648[(alu11+2304)];
var val19 = data2_1179648[(alu11+2305)];
var val20 = data2_1179648[(alu11+2306)];
var val21 = data2_1179648[(alu11+2307)];
var val22 = data2_1179648[(alu11+2308)];
var val23 = data2_1179648[(alu11+2309)];
var val24 = data2_1179648[(alu11+2310)];
var val25 = data2_1179648[(alu11+2311)];
var val26 = data2_1179648[(alu11+2312)];
var val27 = data2_1179648[(alu11+4608)];
var val28 = data2_1179648[(alu11+4609)];
var val29 = data2_1179648[(alu11+4610)];
var val30 = data2_1179648[(alu11+4611)];
var val31 = data2_1179648[(alu11+4612)];
var val32 = data2_1179648[(alu11+4613)];
var val33 = data2_1179648[(alu11+4614)];
var val34 = data2_1179648[(alu11+4615)];
var val35 = data2_1179648[(alu11+4616)];
var val36 = data2_1179648[(alu11+6912)];
var val37 = data2_1179648[(alu11+6913)];
var val38 = data2_1179648[(alu11+6914)];
var val39 = data2_1179648[(alu11+6915)];
var val40 = data2_1179648[(alu11+6916)];
var val41 = data2_1179648[(alu11+6917)];
var val42 = data2_1179648[(alu11+6918)];
var val43 = data2_1179648[(alu11+6919)];
var val44 = data2_1179648[(alu11+6920)];
acc0[0] = (acc0[0]+(val0*val2)+(val4*val5)+(val6*val7)+(val8*val1)+(val3*val9)+(val10*val11)+(val12*val13)+(val14*val15)+(val16*val17));
acc0[1] = (acc0[1]+(val0*val18)+(val4*val19)+(val6*val20)+(val8*val21)+(val3*val22)+(val10*val23)+(val12*val24)+(val14*val25)+(val16*val26));
acc0[2] = (acc0[2]+(val0*val27)+(val4*val28)+(val6*val29)+(val8*val30)+(val3*val31)+(val10*val32)+(val12*val33)+(val14*val34)+(val16*val35));
acc0[3] = (acc0[3]+(val0*val36)+(val4*val37)+(val6*val38)+(val8*val39)+(val3*val40)+(val10*val41)+(val12*val42)+(val14*val43)+(val16*val44));
}
var alu17 = (bitcast<i32>((bitcast<u32>(gidx2)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val45 = data3_512[alu17];
var val46 = data4_512[alu17];
var alu18 = (alu17+1);
var val47 = data3_512[alu18];
var alu19 = (alu17+2);
var val48 = data3_512[alu19];
var val49 = data4_512[alu18];
var val50 = data4_512[alu19];
var alu20 = (alu17+3);
var val51 = data3_512[alu20];
var val52 = data4_512[alu20];
var alu21 = (alu1+(gidx2*25088)+(lidx0*784));
var alu22 = (acc0[0]+val45);
var alu23 = (acc0[1]+val47);
var alu24 = (acc0[2]+val48);
var alu25 = (acc0[3]+val51);
var alu26 = select((alu22*val46),alu22,(0.0f<alu22));
var alu27 = select((alu23*val49),alu23,(0.0f<alu23));
var alu28 = select((alu24*val50),alu24,(0.0f<alu24));
var alu29 = select((alu25*val52),alu25,(0.0f<alu25));
data0_100352[alu21] = alu26;
data0_100352[(alu21+196)] = alu27;
data0_100352[(alu21+392)] = alu28;
data0_100352[(alu21+588)] = alu29;
}`;
const r_16_32_7_7_512_3_3_64_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_100352:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_2359296:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_50176:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_131072:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_512:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,49>;
var acc1: array<f32,49>;
var gidx0 = i32(gindex.x); /* 16 */
var lidx0 = i32(lindex.x); /* 32 */
acc1[0] = 0.0f;
acc1[1] = 0.0f;
acc1[2] = 0.0f;
acc1[3] = 0.0f;
acc1[4] = 0.0f;
acc1[5] = 0.0f;
acc1[6] = 0.0f;
acc1[7] = 0.0f;
acc1[8] = 0.0f;
acc1[9] = 0.0f;
acc1[10] = 0.0f;
acc1[11] = 0.0f;
acc1[12] = 0.0f;
acc1[13] = 0.0f;
acc1[14] = 0.0f;
acc1[15] = 0.0f;
acc1[16] = 0.0f;
acc1[17] = 0.0f;
acc1[18] = 0.0f;
acc1[19] = 0.0f;
acc1[20] = 0.0f;
acc1[21] = 0.0f;
acc1[22] = 0.0f;
acc1[23] = 0.0f;
acc1[24] = 0.0f;
acc1[25] = 0.0f;
acc1[26] = 0.0f;
acc1[27] = 0.0f;
acc1[28] = 0.0f;
acc1[29] = 0.0f;
acc1[30] = 0.0f;
acc1[31] = 0.0f;
acc1[32] = 0.0f;
acc1[33] = 0.0f;
acc1[34] = 0.0f;
acc1[35] = 0.0f;
acc1[36] = 0.0f;
acc1[37] = 0.0f;
acc1[38] = 0.0f;
acc1[39] = 0.0f;
acc1[40] = 0.0f;
acc1[41] = 0.0f;
acc1[42] = 0.0f;
acc1[43] = 0.0f;
acc1[44] = 0.0f;
acc1[45] = 0.0f;
acc1[46] = 0.0f;
acc1[47] = 0.0f;
acc1[48] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 512; Ridx0++) {
for (var Ridx1 = 0; Ridx1 < 3; Ridx1++) {
var alu49 = (0<Ridx1);
for (var Ridx2 = 0; Ridx2 < 3; Ridx2++) {
var alu50 = ((Ridx1*14)+Ridx2+(Ridx0*196));
var alu51 = (0<Ridx2);
var val0 = select(0.0f, data1_100352[(alu50+-15)], (alu51&alu49));
var val1 = data2_2359296[((Ridx1*3)+Ridx2+(Ridx0*9)+(gidx0*147456)+(lidx0*4608))];
var val2 = select(0.0f, data1_100352[(alu50+13)], alu51);
var val3 = data1_100352[(alu50+17)];
var val4 = select(0.0f, data1_100352[(alu50+41)], alu51);
var val5 = select(0.0f, data1_100352[(alu50+69)], alu51);
var val6 = select(0.0f, data1_100352[(alu50+97)], alu51);
var val7 = select(0.0f, data1_100352[(alu50+125)], alu51);
var val8 = select(0.0f, data1_100352[(alu50+153)], alu51);
var val9 = select(0.0f, data1_100352[(alu50+-13)], alu49);
var val10 = data1_100352[(alu50+15)];
var val11 = data1_100352[(alu50+43)];
var val12 = data1_100352[(alu50+99)];
var val13 = data1_100352[(alu50+127)];
var val14 = data1_100352[(alu50+155)];
var val15 = select(0.0f, data1_100352[(alu50+-11)], alu49);
var val16 = data1_100352[(alu50+71)];
var val17 = data1_100352[(alu50+45)];
var val18 = data1_100352[(alu50+73)];
var val19 = select(0.0f, data1_100352[(alu50+-9)], alu49);
var val20 = data1_100352[(alu50+157)];
var val21 = data1_100352[(alu50+19)];
var val22 = data1_100352[(alu50+47)];
var val23 = data1_100352[(alu50+75)];
var val24 = data1_100352[(alu50+101)];
var val25 = data1_100352[(alu50+103)];
var val26 = data1_100352[(alu50+131)];
var val27 = data1_100352[(alu50+159)];
var val28 = select(0.0f, data1_100352[(alu50+-7)], alu49);
var val29 = data1_100352[(alu50+21)];
var val30 = data1_100352[(alu50+49)];
var val31 = data1_100352[(alu50+77)];
var val32 = data1_100352[(alu50+105)];
var val33 = data1_100352[(alu50+129)];
var val34 = data1_100352[(alu50+133)];
var val35 = select(0.0f, data1_100352[(alu50+-5)], alu49);
var val36 = data1_100352[(alu50+161)];
var val37 = data1_100352[(alu50+23)];
var val38 = data1_100352[(alu50+51)];
var val39 = data1_100352[(alu50+79)];
var val40 = data1_100352[(alu50+107)];
var val41 = data1_100352[(alu50+135)];
var val42 = data1_100352[(alu50+163)];
var val43 = select(0.0f, data1_100352[(alu50+-3)], alu49);
var val44 = data1_100352[(alu50+25)];
var val45 = data1_100352[(alu50+53)];
var val46 = data1_100352[(alu50+81)];
var val47 = data1_100352[(alu50+109)];
var val48 = data1_100352[(alu50+137)];
var val49 = data1_100352[(alu50+165)];
acc1[0] = (acc1[0]+(val0*val1));
acc1[1] = (acc1[1]+(val2*val1));
acc1[2] = (acc1[2]+(val4*val1));
acc1[3] = (acc1[3]+(val5*val1));
acc1[4] = (acc1[4]+(val6*val1));
acc1[5] = (acc1[5]+(val7*val1));
acc1[6] = (acc1[6]+(val8*val1));
acc1[7] = (acc1[7]+(val9*val1));
acc1[8] = (acc1[8]+(val10*val1));
acc1[9] = (acc1[9]+(val11*val1));
acc1[10] = (acc1[10]+(val16*val1));
acc1[11] = (acc1[11]+(val12*val1));
acc1[12] = (acc1[12]+(val13*val1));
acc1[13] = (acc1[13]+(val14*val1));
acc1[14] = (acc1[14]+(val15*val1));
acc1[15] = (acc1[15]+(val3*val1));
acc1[16] = (acc1[16]+(val17*val1));
acc1[17] = (acc1[17]+(val18*val1));
acc1[18] = (acc1[18]+(val24*val1));
acc1[19] = (acc1[19]+(val33*val1));
acc1[20] = (acc1[20]+(val20*val1));
acc1[21] = (acc1[21]+(val19*val1));
acc1[22] = (acc1[22]+(val21*val1));
acc1[23] = (acc1[23]+(val22*val1));
acc1[24] = (acc1[24]+(val23*val1));
acc1[25] = (acc1[25]+(val25*val1));
acc1[26] = (acc1[26]+(val26*val1));
acc1[27] = (acc1[27]+(val27*val1));
acc1[28] = (acc1[28]+(val28*val1));
acc1[29] = (acc1[29]+(val29*val1));
acc1[30] = (acc1[30]+(val30*val1));
acc1[31] = (acc1[31]+(val31*val1));
acc1[32] = (acc1[32]+(val32*val1));
acc1[33] = (acc1[33]+(val34*val1));
acc1[34] = (acc1[34]+(val36*val1));
acc1[35] = (acc1[35]+(val35*val1));
acc1[36] = (acc1[36]+(val37*val1));
acc1[37] = (acc1[37]+(val38*val1));
acc1[38] = (acc1[38]+(val39*val1));
acc1[39] = (acc1[39]+(val40*val1));
acc1[40] = (acc1[40]+(val41*val1));
acc1[41] = (acc1[41]+(val42*val1));
acc1[42] = (acc1[42]+(val43*val1));
acc1[43] = (acc1[43]+(val44*val1));
acc1[44] = (acc1[44]+(val45*val1));
acc1[45] = (acc1[45]+(val46*val1));
acc1[46] = (acc1[46]+(val47*val1));
acc1[47] = (acc1[47]+(val48*val1));
acc1[48] = (acc1[48]+(val49*val1));
}
}
}
var cast0 = bitcast<u32>(gidx0);
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
acc0[16] = 0.0f;
acc0[17] = 0.0f;
acc0[18] = 0.0f;
acc0[19] = 0.0f;
acc0[20] = 0.0f;
acc0[21] = 0.0f;
acc0[22] = 0.0f;
acc0[23] = 0.0f;
acc0[24] = 0.0f;
acc0[25] = 0.0f;
acc0[26] = 0.0f;
acc0[27] = 0.0f;
acc0[28] = 0.0f;
acc0[29] = 0.0f;
acc0[30] = 0.0f;
acc0[31] = 0.0f;
acc0[32] = 0.0f;
acc0[33] = 0.0f;
acc0[34] = 0.0f;
acc0[35] = 0.0f;
acc0[36] = 0.0f;
acc0[37] = 0.0f;
acc0[38] = 0.0f;
acc0[39] = 0.0f;
acc0[40] = 0.0f;
acc0[41] = 0.0f;
acc0[42] = 0.0f;
acc0[43] = 0.0f;
acc0[44] = 0.0f;
acc0[45] = 0.0f;
acc0[46] = 0.0f;
acc0[47] = 0.0f;
acc0[48] = 0.0f;
for (var Ridx3 = 0; Ridx3 < 64; Ridx3++) {
var alu153 = (Ridx3*784);
var val50 = data4_50176[(alu153+2)];
var val51 = data4_50176[(alu153+56)];
var val52 = data4_50176[(alu153+58)];
var val53 = data4_50176[(alu153+84)];
var val54 = data4_50176[(alu153+86)];
var val55 = data4_50176[(alu153+112)];
var val56 = data4_50176[(alu153+168)];
var val57 = data4_50176[(alu153+198)];
var val58 = data4_50176[(alu153+252)];
var val59 = data4_50176[(alu153+254)];
var val60 = data4_50176[(alu153+280)];
var val61 = data4_50176[(alu153+282)];
var val62 = data4_50176[(alu153+308)];
var val63 = data4_50176[(alu153+364)];
var val64 = data4_50176[(alu153+394)];
var val65 = data4_50176[(alu153+420)];
var val66 = data4_50176[(alu153+450)];
var val67 = data4_50176[(alu153+476)];
var val68 = data4_50176[(alu153+504)];
var val69 = data4_50176[(alu153+560)];
var val70 = data4_50176[(alu153+590)];
var val71 = data4_50176[(alu153+616)];
var val72 = data4_50176[(alu153+448)];
var val73 = data4_50176[(alu153+644)];
var val74 = data4_50176[(alu153+672)];
var val75 = data4_50176[(alu153+700)];
var val76 = data4_50176[(alu153+140)];
var val77 = data4_50176[(alu153+336)];
var val78 = data4_50176[(alu153+532)];
var val79 = data4_50176[(alu153+728)];
var val80 = data4_50176[(alu153+756)];
var val81 = data4_50176[alu153];
var alu154 = (bitcast<i32>((cast0<<13u))+bitcast<i32>((bitcast<u32>(lidx0)<<8u))+bitcast<i32>((bitcast<u32>(Ridx3)<<2u)));
var val82 = data5_131072[alu154];
var val83 = data4_50176[(alu153+196)];
var val84 = data5_131072[(alu154+1)];
var val85 = data4_50176[(alu153+392)];
var val86 = data5_131072[(alu154+2)];
var val87 = data4_50176[(alu153+588)];
var val88 = data5_131072[(alu154+3)];
var val89 = data4_50176[(alu153+28)];
var val90 = data4_50176[(alu153+224)];
var val91 = data4_50176[(alu153+30)];
var val92 = data4_50176[(alu153+226)];
var val93 = data4_50176[(alu153+422)];
var val94 = data4_50176[(alu153+618)];
var val95 = data4_50176[(alu153+646)];
var val96 = data4_50176[(alu153+142)];
var val97 = data4_50176[(alu153+170)];
var val98 = data4_50176[(alu153+338)];
var val99 = data4_50176[(alu153+366)];
var val100 = data4_50176[(alu153+478)];
var val101 = data4_50176[(alu153+534)];
var val102 = data4_50176[(alu153+674)];
var val103 = data4_50176[(alu153+114)];
var val104 = data4_50176[(alu153+310)];
var val105 = data4_50176[(alu153+506)];
var val106 = data4_50176[(alu153+702)];
var val107 = data4_50176[(alu153+730)];
var val108 = data4_50176[(alu153+4)];
var val109 = data4_50176[(alu153+562)];
var val110 = data4_50176[(alu153+758)];
var val111 = data4_50176[(alu153+200)];
var val112 = data4_50176[(alu153+396)];
var val113 = data4_50176[(alu153+592)];
var val114 = data4_50176[(alu153+32)];
var val115 = data4_50176[(alu153+60)];
var val116 = data4_50176[(alu153+228)];
var val117 = data4_50176[(alu153+256)];
var val118 = data4_50176[(alu153+424)];
var val119 = data4_50176[(alu153+620)];
var val120 = data4_50176[(alu153+116)];
var val121 = data4_50176[(alu153+144)];
var val122 = data4_50176[(alu153+312)];
var val123 = data4_50176[(alu153+340)];
var val124 = data4_50176[(alu153+452)];
var val125 = data4_50176[(alu153+508)];
var val126 = data4_50176[(alu153+648)];
var val127 = data4_50176[(alu153+88)];
var val128 = data4_50176[(alu153+284)];
var val129 = data4_50176[(alu153+480)];
var val130 = data4_50176[(alu153+536)];
var val131 = data4_50176[(alu153+676)];
var val132 = data4_50176[(alu153+704)];
var val133 = data4_50176[(alu153+732)];
var val134 = data4_50176[(alu153+172)];
var val135 = data4_50176[(alu153+368)];
var val136 = data4_50176[(alu153+564)];
var val137 = data4_50176[(alu153+760)];
var val138 = data4_50176[(alu153+6)];
var val139 = data4_50176[(alu153+34)];
var val140 = data4_50176[(alu153+202)];
var val141 = data4_50176[(alu153+230)];
var val142 = data4_50176[(alu153+398)];
var val143 = data4_50176[(alu153+594)];
var val144 = data4_50176[(alu153+90)];
var val145 = data4_50176[(alu153+118)];
var val146 = data4_50176[(alu153+286)];
var val147 = data4_50176[(alu153+314)];
var val148 = data4_50176[(alu153+426)];
var val149 = data4_50176[(alu153+482)];
var val150 = data4_50176[(alu153+622)];
var val151 = data4_50176[(alu153+62)];
var val152 = data4_50176[(alu153+258)];
var val153 = data4_50176[(alu153+454)];
var val154 = data4_50176[(alu153+650)];
var val155 = data4_50176[(alu153+678)];
var val156 = data4_50176[(alu153+510)];
var val157 = data4_50176[(alu153+706)];
var val158 = data4_50176[(alu153+146)];
var val159 = data4_50176[(alu153+342)];
var val160 = data4_50176[(alu153+538)];
var val161 = data4_50176[(alu153+734)];
var val162 = data4_50176[(alu153+8)];
var val163 = data4_50176[(alu153+174)];
var val164 = data4_50176[(alu153+204)];
var val165 = data4_50176[(alu153+370)];
var val166 = data4_50176[(alu153+566)];
var val167 = data4_50176[(alu153+762)];
var val168 = data4_50176[(alu153+36)];
var val169 = data4_50176[(alu153+400)];
var val170 = data4_50176[(alu153+596)];
var val171 = data4_50176[(alu153+232)];
var val172 = data4_50176[(alu153+428)];
var val173 = data4_50176[(alu153+624)];
var val174 = data4_50176[(alu153+64)];
var val175 = data4_50176[(alu153+92)];
var val176 = data4_50176[(alu153+260)];
var val177 = data4_50176[(alu153+288)];
var val178 = data4_50176[(alu153+456)];
var val179 = data4_50176[(alu153+652)];
var val180 = data4_50176[(alu153+148)];
var val181 = data4_50176[(alu153+176)];
var val182 = data4_50176[(alu153+344)];
var val183 = data4_50176[(alu153+372)];
var val184 = data4_50176[(alu153+484)];
var val185 = data4_50176[(alu153+540)];
var val186 = data4_50176[(alu153+680)];
var val187 = data4_50176[(alu153+120)];
var val188 = data4_50176[(alu153+316)];
var val189 = data4_50176[(alu153+512)];
var val190 = data4_50176[(alu153+708)];
var val191 = data4_50176[(alu153+736)];
var val192 = data4_50176[(alu153+568)];
var val193 = data4_50176[(alu153+764)];
var val194 = data4_50176[(alu153+10)];
var val195 = data4_50176[(alu153+206)];
var val196 = data4_50176[(alu153+402)];
var val197 = data4_50176[(alu153+598)];
var val198 = data4_50176[(alu153+12)];
var val199 = data4_50176[(alu153+38)];
var val200 = data4_50176[(alu153+94)];
var val201 = data4_50176[(alu153+122)];
var val202 = data4_50176[(alu153+150)];
var val203 = data4_50176[(alu153+208)];
var val204 = data4_50176[(alu153+290)];
var val205 = data4_50176[(alu153+318)];
var val206 = data4_50176[(alu153+346)];
var val207 = data4_50176[(alu153+404)];
var val208 = data4_50176[(alu153+458)];
var val209 = data4_50176[(alu153+514)];
var val210 = data4_50176[(alu153+542)];
var val211 = data4_50176[(alu153+600)];
var val212 = data4_50176[(alu153+654)];
var val213 = data4_50176[(alu153+486)];
var val214 = data4_50176[(alu153+682)];
var val215 = data4_50176[(alu153+710)];
var val216 = data4_50176[(alu153+738)];
var val217 = data4_50176[(alu153+178)];
var val218 = data4_50176[(alu153+374)];
var val219 = data4_50176[(alu153+570)];
var val220 = data4_50176[(alu153+766)];
var val221 = data4_50176[(alu153+40)];
var val222 = data4_50176[(alu153+66)];
var val223 = data4_50176[(alu153+234)];
var val224 = data4_50176[(alu153+236)];
var val225 = data4_50176[(alu153+262)];
var val226 = data4_50176[(alu153+430)];
var val227 = data4_50176[(alu153+626)];
var val228 = data4_50176[(alu153+68)];
var val229 = data4_50176[(alu153+96)];
var val230 = data4_50176[(alu153+124)];
var val231 = data4_50176[(alu153+264)];
var val232 = data4_50176[(alu153+292)];
var val233 = data4_50176[(alu153+320)];
var val234 = data4_50176[(alu153+432)];
var val235 = data4_50176[(alu153+488)];
var val236 = data4_50176[(alu153+628)];
var val237 = data4_50176[(alu153+460)];
var val238 = data4_50176[(alu153+656)];
var val239 = data4_50176[(alu153+684)];
var val240 = data4_50176[(alu153+516)];
var val241 = data4_50176[(alu153+712)];
var val242 = data4_50176[(alu153+152)];
var val243 = data4_50176[(alu153+348)];
var val244 = data4_50176[(alu153+544)];
var val245 = data4_50176[(alu153+740)];
var val246 = data4_50176[(alu153+180)];
var val247 = data4_50176[(alu153+376)];
var val248 = data4_50176[(alu153+572)];
var val249 = data4_50176[(alu153+768)];
acc0[0] = (acc0[0]+(val81*val82)+(val83*val84)+(val85*val86)+(val87*val88));
acc0[1] = (acc0[1]+(val89*val82)+(val90*val84)+(val65*val86)+(val71*val88));
acc0[2] = (acc0[2]+(val51*val82)+(val58*val84)+(val72*val86)+(val73*val88));
acc0[3] = (acc0[3]+(val53*val82)+(val60*val84)+(val67*val86)+(val74*val88));
acc0[4] = (acc0[4]+(val55*val82)+(val62*val84)+(val68*val86)+(val75*val88));
acc0[5] = (acc0[5]+(val76*val82)+(val77*val84)+(val78*val86)+(val79*val88));
acc0[6] = (acc0[6]+(val56*val82)+(val63*val84)+(val69*val86)+(val80*val88));
acc0[7] = (acc0[7]+(val50*val82)+(val57*val84)+(val64*val86)+(val70*val88));
acc0[8] = (acc0[8]+(val91*val82)+(val92*val84)+(val93*val86)+(val94*val88));
acc0[9] = (acc0[9]+(val52*val82)+(val59*val84)+(val66*val86)+(val95*val88));
acc0[10] = (acc0[10]+(val54*val82)+(val61*val84)+(val100*val86)+(val102*val88));
acc0[11] = (acc0[11]+(val103*val82)+(val104*val84)+(val105*val86)+(val106*val88));
acc0[12] = (acc0[12]+(val96*val82)+(val98*val84)+(val101*val86)+(val107*val88));
acc0[13] = (acc0[13]+(val97*val82)+(val99*val84)+(val109*val86)+(val110*val88));
acc0[14] = (acc0[14]+(val108*val82)+(val111*val84)+(val112*val86)+(val113*val88));
acc0[15] = (acc0[15]+(val114*val82)+(val116*val84)+(val118*val86)+(val119*val88));
acc0[16] = (acc0[16]+(val115*val82)+(val117*val84)+(val124*val86)+(val126*val88));
acc0[17] = (acc0[17]+(val127*val82)+(val128*val84)+(val129*val86)+(val131*val88));
acc0[18] = (acc0[18]+(val120*val82)+(val122*val84)+(val125*val86)+(val132*val88));
acc0[19] = (acc0[19]+(val121*val82)+(val123*val84)+(val130*val86)+(val133*val88));
acc0[20] = (acc0[20]+(val134*val82)+(val135*val84)+(val136*val86)+(val137*val88));
acc0[21] = (acc0[21]+(val138*val82)+(val140*val84)+(val142*val86)+(val143*val88));
acc0[22] = (acc0[22]+(val139*val82)+(val141*val84)+(val148*val86)+(val150*val88));
acc0[23] = (acc0[23]+(val151*val82)+(val152*val84)+(val153*val86)+(val154*val88));
acc0[24] = (acc0[24]+(val144*val82)+(val146*val84)+(val149*val86)+(val155*val88));
acc0[25] = (acc0[25]+(val145*val82)+(val147*val84)+(val156*val86)+(val157*val88));
acc0[26] = (acc0[26]+(val158*val82)+(val159*val84)+(val160*val86)+(val161*val88));
acc0[27] = (acc0[27]+(val163*val82)+(val165*val84)+(val166*val86)+(val167*val88));
acc0[28] = (acc0[28]+(val162*val82)+(val164*val84)+(val169*val86)+(val170*val88));
acc0[29] = (acc0[29]+(val168*val82)+(val171*val84)+(val172*val86)+(val173*val88));
acc0[30] = (acc0[30]+(val174*val82)+(val176*val84)+(val178*val86)+(val179*val88));
acc0[31] = (acc0[31]+(val175*val82)+(val177*val84)+(val184*val86)+(val186*val88));
acc0[32] = (acc0[32]+(val187*val82)+(val188*val84)+(val189*val86)+(val190*val88));
acc0[33] = (acc0[33]+(val180*val82)+(val182*val84)+(val185*val86)+(val191*val88));
acc0[34] = (acc0[34]+(val181*val82)+(val183*val84)+(val192*val86)+(val193*val88));
acc0[35] = (acc0[35]+(val194*val82)+(val195*val84)+(val196*val86)+(val197*val88));
acc0[36] = (acc0[36]+(val199*val82)+(val223*val84)+(val226*val86)+(val227*val88));
acc0[37] = (acc0[37]+(val222*val82)+(val225*val84)+(val208*val86)+(val212*val88));
acc0[38] = (acc0[38]+(val200*val82)+(val204*val84)+(val213*val86)+(val214*val88));
acc0[39] = (acc0[39]+(val201*val82)+(val205*val84)+(val209*val86)+(val215*val88));
acc0[40] = (acc0[40]+(val202*val82)+(val206*val84)+(val210*val86)+(val216*val88));
acc0[41] = (acc0[41]+(val217*val82)+(val218*val84)+(val219*val86)+(val220*val88));
acc0[42] = (acc0[42]+(val198*val82)+(val203*val84)+(val207*val86)+(val211*val88));
acc0[43] = (acc0[43]+(val221*val82)+(val224*val84)+(val234*val86)+(val236*val88));
acc0[44] = (acc0[44]+(val228*val82)+(val231*val84)+(val237*val86)+(val238*val88));
acc0[45] = (acc0[45]+(val229*val82)+(val232*val84)+(val235*val86)+(val239*val88));
acc0[46] = (acc0[46]+(val230*val82)+(val233*val84)+(val240*val86)+(val241*val88));
acc0[47] = (acc0[47]+(val242*val82)+(val243*val84)+(val244*val86)+(val245*val88));
acc0[48] = (acc0[48]+(val246*val82)+(val247*val84)+(val248*val86)+(val249*val88));
}
var alu205 = (lidx0+bitcast<i32>((cast0<<5u)));
var val250 = data3_512[alu205];
var val251 = data6_512[alu205];
var alu206 = ((gidx0*1568)+(lidx0*49));
data0_25088[(alu206+1)] = (acc1[7]+val250+acc0[7]+val251);
data0_25088[(alu206+2)] = (acc1[14]+val250+acc0[14]+val251);
data0_25088[(alu206+3)] = (acc1[21]+val250+acc0[21]+val251);
data0_25088[(alu206+4)] = (acc1[28]+val250+acc0[28]+val251);
data0_25088[(alu206+5)] = (acc1[35]+val250+acc0[35]+val251);
data0_25088[(alu206+6)] = (acc1[42]+val250+acc0[42]+val251);
data0_25088[(alu206+7)] = (acc1[1]+val250+acc0[1]+val251);
data0_25088[(alu206+8)] = (acc1[8]+val250+acc0[8]+val251);
data0_25088[(alu206+9)] = (acc1[15]+val250+acc0[15]+val251);
data0_25088[(alu206+10)] = (acc1[22]+val250+acc0[22]+val251);
data0_25088[(alu206+11)] = (acc1[29]+val250+acc0[29]+val251);
data0_25088[(alu206+12)] = (acc1[36]+val250+acc0[36]+val251);
data0_25088[(alu206+13)] = (acc1[43]+val250+acc0[43]+val251);
data0_25088[(alu206+14)] = (acc1[2]+val250+acc0[2]+val251);
data0_25088[(alu206+15)] = (acc1[9]+val250+acc0[9]+val251);
data0_25088[(alu206+16)] = (acc1[16]+val250+acc0[16]+val251);
data0_25088[(alu206+17)] = (acc1[23]+val250+acc0[23]+val251);
data0_25088[(alu206+18)] = (acc1[30]+val250+acc0[30]+val251);
data0_25088[(alu206+19)] = (acc1[37]+val250+acc0[37]+val251);
data0_25088[(alu206+20)] = (acc1[44]+val250+acc0[44]+val251);
data0_25088[(alu206+21)] = (acc1[3]+val250+acc0[3]+val251);
data0_25088[(alu206+22)] = (acc1[10]+val250+acc0[10]+val251);
data0_25088[(alu206+23)] = (acc1[17]+val250+acc0[17]+val251);
data0_25088[(alu206+24)] = (acc1[24]+val250+acc0[24]+val251);
data0_25088[(alu206+25)] = (acc1[31]+val250+acc0[31]+val251);
data0_25088[(alu206+26)] = (acc1[38]+val250+acc0[38]+val251);
data0_25088[(alu206+27)] = (acc1[45]+val250+acc0[45]+val251);
data0_25088[(alu206+28)] = (acc1[4]+val250+acc0[4]+val251);
data0_25088[(alu206+29)] = (acc1[11]+val250+acc0[11]+val251);
data0_25088[(alu206+30)] = (acc1[18]+val250+acc0[18]+val251);
data0_25088[(alu206+31)] = (acc1[25]+val250+acc0[25]+val251);
data0_25088[(alu206+32)] = (acc1[32]+val250+acc0[32]+val251);
data0_25088[(alu206+33)] = (acc1[39]+val250+acc0[39]+val251);
data0_25088[(alu206+34)] = (acc1[46]+val250+acc0[46]+val251);
data0_25088[(alu206+35)] = (acc1[5]+val250+acc0[5]+val251);
data0_25088[(alu206+36)] = (acc1[12]+val250+acc0[12]+val251);
data0_25088[(alu206+37)] = (acc1[19]+val250+acc0[19]+val251);
data0_25088[(alu206+38)] = (acc1[26]+val250+acc0[26]+val251);
data0_25088[(alu206+39)] = (acc1[33]+val250+acc0[33]+val251);
data0_25088[(alu206+40)] = (acc1[40]+val250+acc0[40]+val251);
data0_25088[(alu206+41)] = (acc1[47]+val250+acc0[47]+val251);
data0_25088[(alu206+42)] = (acc1[6]+val250+acc0[6]+val251);
data0_25088[(alu206+43)] = (acc1[13]+val250+acc0[13]+val251);
data0_25088[(alu206+44)] = (acc1[20]+val250+acc0[20]+val251);
data0_25088[(alu206+45)] = (acc1[27]+val250+acc0[27]+val251);
data0_25088[(alu206+46)] = (acc1[34]+val250+acc0[34]+val251);
data0_25088[(alu206+47)] = (acc1[41]+val250+acc0[41]+val251);
data0_25088[(alu206+48)] = (acc1[48]+val250+acc0[48]+val251);
data0_25088[alu206] = (acc1[0]+val250+acc0[0]+val251);
}`;
const E_4_49_32_4 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_512:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_512:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_512:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 49 */
var gidx1 = i32(gindex.y); /* 4 */
var lidx0 = i32(lindex.x); /* 32 */
var alu0 = (gidx0+(gidx1*6272)+(lidx0*196));
var val0 = data1_25088[alu0];
var alu1 = (bitcast<i32>((bitcast<u32>(gidx1)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var val1 = data2_512[alu1];
var alu2 = (alu1+1);
var val2 = data2_512[alu2];
var val3 = data3_512[alu1];
var val4 = data3_512[alu2];
var val5 = data4_512[alu1];
var val6 = data5_512[alu1];
var alu3 = (alu0+49);
var val7 = data1_25088[alu3];
var val8 = data4_512[alu2];
var val9 = data5_512[alu2];
var alu4 = (alu0+98);
var val10 = data1_25088[alu4];
var alu5 = (alu1+2);
var val11 = data2_512[alu5];
var alu6 = (alu1+3);
var val12 = data2_512[alu6];
var val13 = data3_512[alu5];
var val14 = data4_512[alu5];
var val15 = data5_512[alu5];
var alu7 = (alu0+147);
var val16 = data1_25088[alu7];
var val17 = data3_512[alu6];
var val18 = data4_512[alu6];
var val19 = data5_512[alu6];
data0_25088[alu0] = (((val0-val1)*val3*(1/sqrt((val5+9.999999747378752e-06f))))+val6);
data0_25088[alu3] = (((val7-val2)*val4*(1/sqrt((val8+9.999999747378752e-06f))))+val9);
data0_25088[alu4] = (((val10-val11)*val13*(1/sqrt((val14+9.999999747378752e-06f))))+val15);
data0_25088[alu7] = (((val16-val12)*val17*(1/sqrt((val18+9.999999747378752e-06f))))+val19);
}`;
const r_16_32_7_7_512_3_3 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_2359296:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_512:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,49>;
var gidx0 = i32(gindex.x); /* 16 */
var lidx0 = i32(lindex.x); /* 32 */
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
acc0[16] = 0.0f;
acc0[17] = 0.0f;
acc0[18] = 0.0f;
acc0[19] = 0.0f;
acc0[20] = 0.0f;
acc0[21] = 0.0f;
acc0[22] = 0.0f;
acc0[23] = 0.0f;
acc0[24] = 0.0f;
acc0[25] = 0.0f;
acc0[26] = 0.0f;
acc0[27] = 0.0f;
acc0[28] = 0.0f;
acc0[29] = 0.0f;
acc0[30] = 0.0f;
acc0[31] = 0.0f;
acc0[32] = 0.0f;
acc0[33] = 0.0f;
acc0[34] = 0.0f;
acc0[35] = 0.0f;
acc0[36] = 0.0f;
acc0[37] = 0.0f;
acc0[38] = 0.0f;
acc0[39] = 0.0f;
acc0[40] = 0.0f;
acc0[41] = 0.0f;
acc0[42] = 0.0f;
acc0[43] = 0.0f;
acc0[44] = 0.0f;
acc0[45] = 0.0f;
acc0[46] = 0.0f;
acc0[47] = 0.0f;
acc0[48] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 512; Ridx0++) {
var alu49 = (Ridx0*49);
var val0 = data1_25088[(alu49+1)];
var val1 = data1_25088[(alu49+8)];
var val2 = data1_25088[alu49];
var alu50 = ((gidx0*147456)+(lidx0*4608)+(Ridx0*9));
var val3 = data2_2359296[(alu50+1)];
var val4 = data2_2359296[(alu50+4)];
var val5 = data2_2359296[(alu50+5)];
var val6 = data1_25088[(alu49+7)];
var val7 = data2_2359296[(alu50+7)];
var val8 = data2_2359296[(alu50+8)];
var val9 = data2_2359296[(alu50+2)];
var val10 = data1_25088[(alu49+14)];
var val11 = data1_25088[(alu49+15)];
var val12 = data1_25088[(alu49+21)];
var val13 = data1_25088[(alu49+22)];
var val14 = data1_25088[(alu49+17)];
var val15 = data1_25088[(alu49+28)];
var val16 = data1_25088[(alu49+29)];
var val17 = data1_25088[(alu49+30)];
var val18 = data1_25088[(alu49+35)];
var val19 = data1_25088[(alu49+36)];
var val20 = data1_25088[(alu49+42)];
var val21 = data1_25088[(alu49+43)];
var val22 = data2_2359296[(alu50+3)];
var val23 = data1_25088[(alu49+2)];
var val24 = data2_2359296[(alu50+6)];
var val25 = data1_25088[(alu49+9)];
var val26 = data2_2359296[alu50];
var val27 = data1_25088[(alu49+16)];
var val28 = data1_25088[(alu49+23)];
var val29 = data1_25088[(alu49+37)];
var val30 = data1_25088[(alu49+44)];
var val31 = data1_25088[(alu49+3)];
var val32 = data1_25088[(alu49+10)];
var val33 = data1_25088[(alu49+24)];
var val34 = data1_25088[(alu49+31)];
var val35 = data1_25088[(alu49+38)];
var val36 = data1_25088[(alu49+45)];
var val37 = data1_25088[(alu49+4)];
var val38 = data1_25088[(alu49+11)];
var val39 = data1_25088[(alu49+18)];
var val40 = data1_25088[(alu49+25)];
var val41 = data1_25088[(alu49+32)];
var val42 = data1_25088[(alu49+39)];
var val43 = data1_25088[(alu49+46)];
var val44 = data1_25088[(alu49+5)];
var val45 = data1_25088[(alu49+12)];
var val46 = data1_25088[(alu49+19)];
var val47 = data1_25088[(alu49+26)];
var val48 = data1_25088[(alu49+33)];
var val49 = data1_25088[(alu49+40)];
var val50 = data1_25088[(alu49+47)];
var val51 = data1_25088[(alu49+6)];
var val52 = data1_25088[(alu49+13)];
var val53 = data1_25088[(alu49+20)];
var val54 = data1_25088[(alu49+27)];
var val55 = data1_25088[(alu49+34)];
var val56 = data1_25088[(alu49+41)];
var val57 = data1_25088[(alu49+48)];
acc0[0] = (acc0[0]+(val2*val4)+(val0*val5)+(val6*val7)+(val1*val8));
acc0[1] = (acc0[1]+(val2*val3)+(val0*val9)+(val6*val4)+(val1*val5)+(val10*val7)+(val11*val8));
acc0[2] = (acc0[2]+(val6*val3)+(val1*val9)+(val10*val4)+(val11*val5)+(val12*val7)+(val13*val8));
acc0[3] = (acc0[3]+(val10*val3)+(val11*val9)+(val12*val4)+(val13*val5)+(val15*val7)+(val16*val8));
acc0[4] = (acc0[4]+(val12*val3)+(val13*val9)+(val15*val4)+(val16*val5)+(val18*val7)+(val19*val8));
acc0[5] = (acc0[5]+(val15*val3)+(val16*val9)+(val18*val4)+(val19*val5)+(val20*val7)+(val21*val8));
acc0[6] = (acc0[6]+(val18*val3)+(val19*val9)+(val20*val4)+(val21*val5));
acc0[7] = (acc0[7]+(val2*val22)+(val0*val4)+(val23*val5)+(val6*val24)+(val1*val7)+(val25*val8));
acc0[8] = (acc0[8]+(val2*val26)+(val0*val3)+(val23*val9)+(val6*val22)+(val1*val4)+(val25*val5)+(val10*val24)+(val11*val7)+(val27*val8));
acc0[9] = (acc0[9]+(val6*val26)+(val1*val3)+(val25*val9)+(val10*val22)+(val11*val4)+(val27*val5)+(val12*val24)+(val13*val7)+(val28*val8));
acc0[10] = (acc0[10]+(val10*val26)+(val11*val3)+(val27*val9)+(val12*val22)+(val13*val4)+(val28*val5)+(val15*val24)+(val16*val7)+(val17*val8));
acc0[11] = (acc0[11]+(val12*val26)+(val13*val3)+(val28*val9)+(val15*val22)+(val16*val4)+(val17*val5)+(val18*val24)+(val19*val7)+(val29*val8));
acc0[12] = (acc0[12]+(val15*val26)+(val16*val3)+(val17*val9)+(val18*val22)+(val19*val4)+(val29*val5)+(val20*val24)+(val21*val7)+(val30*val8));
acc0[13] = (acc0[13]+(val18*val26)+(val19*val3)+(val29*val9)+(val20*val22)+(val21*val4)+(val30*val5));
acc0[14] = (acc0[14]+(val0*val22)+(val23*val4)+(val31*val5)+(val1*val24)+(val25*val7)+(val32*val8));
acc0[15] = (acc0[15]+(val0*val26)+(val23*val3)+(val31*val9)+(val1*val22)+(val25*val4)+(val32*val5)+(val11*val24)+(val27*val7)+(val14*val8));
acc0[16] = (acc0[16]+(val1*val26)+(val25*val3)+(val32*val9)+(val11*val22)+(val27*val4)+(val14*val5)+(val13*val24)+(val28*val7)+(val33*val8));
acc0[17] = (acc0[17]+(val11*val26)+(val27*val3)+(val14*val9)+(val13*val22)+(val28*val4)+(val33*val5)+(val16*val24)+(val17*val7)+(val34*val8));
acc0[18] = (acc0[18]+(val13*val26)+(val28*val3)+(val33*val9)+(val16*val22)+(val17*val4)+(val34*val5)+(val19*val24)+(val29*val7)+(val35*val8));
acc0[19] = (acc0[19]+(val16*val26)+(val17*val3)+(val34*val9)+(val19*val22)+(val29*val4)+(val35*val5)+(val21*val24)+(val30*val7)+(val36*val8));
acc0[20] = (acc0[20]+(val19*val26)+(val29*val3)+(val35*val9)+(val21*val22)+(val30*val4)+(val36*val5));
acc0[21] = (acc0[21]+(val23*val22)+(val31*val4)+(val37*val5)+(val25*val24)+(val32*val7)+(val38*val8));
acc0[22] = (acc0[22]+(val23*val26)+(val31*val3)+(val37*val9)+(val25*val22)+(val32*val4)+(val38*val5)+(val27*val24)+(val14*val7)+(val39*val8));
acc0[23] = (acc0[23]+(val25*val26)+(val32*val3)+(val38*val9)+(val27*val22)+(val14*val4)+(val39*val5)+(val28*val24)+(val33*val7)+(val40*val8));
acc0[24] = (acc0[24]+(val27*val26)+(val14*val3)+(val39*val9)+(val28*val22)+(val33*val4)+(val40*val5)+(val17*val24)+(val34*val7)+(val41*val8));
acc0[25] = (acc0[25]+(val28*val26)+(val33*val3)+(val40*val9)+(val17*val22)+(val34*val4)+(val41*val5)+(val29*val24)+(val35*val7)+(val42*val8));
acc0[26] = (acc0[26]+(val17*val26)+(val34*val3)+(val41*val9)+(val29*val22)+(val35*val4)+(val42*val5)+(val30*val24)+(val36*val7)+(val43*val8));
acc0[27] = (acc0[27]+(val29*val26)+(val35*val3)+(val42*val9)+(val30*val22)+(val36*val4)+(val43*val5));
acc0[28] = (acc0[28]+(val31*val22)+(val37*val4)+(val44*val5)+(val32*val24)+(val38*val7)+(val45*val8));
acc0[29] = (acc0[29]+(val31*val26)+(val37*val3)+(val44*val9)+(val32*val22)+(val38*val4)+(val45*val5)+(val14*val24)+(val39*val7)+(val46*val8));
acc0[30] = (acc0[30]+(val32*val26)+(val38*val3)+(val45*val9)+(val14*val22)+(val39*val4)+(val46*val5)+(val33*val24)+(val40*val7)+(val47*val8));
acc0[31] = (acc0[31]+(val14*val26)+(val39*val3)+(val46*val9)+(val33*val22)+(val40*val4)+(val47*val5)+(val34*val24)+(val41*val7)+(val48*val8));
acc0[32] = (acc0[32]+(val33*val26)+(val40*val3)+(val47*val9)+(val34*val22)+(val41*val4)+(val48*val5)+(val35*val24)+(val42*val7)+(val49*val8));
acc0[33] = (acc0[33]+(val34*val26)+(val41*val3)+(val48*val9)+(val35*val22)+(val42*val4)+(val49*val5)+(val36*val24)+(val43*val7)+(val50*val8));
acc0[34] = (acc0[34]+(val35*val26)+(val42*val3)+(val49*val9)+(val36*val22)+(val43*val4)+(val50*val5));
acc0[35] = (acc0[35]+(val37*val22)+(val44*val4)+(val51*val5)+(val38*val24)+(val45*val7)+(val52*val8));
acc0[36] = (acc0[36]+(val37*val26)+(val44*val3)+(val51*val9)+(val38*val22)+(val45*val4)+(val52*val5)+(val39*val24)+(val46*val7)+(val53*val8));
acc0[37] = (acc0[37]+(val38*val26)+(val45*val3)+(val52*val9)+(val39*val22)+(val46*val4)+(val53*val5)+(val40*val24)+(val47*val7)+(val54*val8));
acc0[38] = (acc0[38]+(val39*val26)+(val46*val3)+(val53*val9)+(val40*val22)+(val47*val4)+(val54*val5)+(val41*val24)+(val48*val7)+(val55*val8));
acc0[39] = (acc0[39]+(val40*val26)+(val47*val3)+(val54*val9)+(val41*val22)+(val48*val4)+(val55*val5)+(val42*val24)+(val49*val7)+(val56*val8));
acc0[40] = (acc0[40]+(val41*val26)+(val48*val3)+(val55*val9)+(val42*val22)+(val49*val4)+(val56*val5)+(val43*val24)+(val50*val7)+(val57*val8));
acc0[41] = (acc0[41]+(val42*val26)+(val49*val3)+(val56*val9)+(val43*val22)+(val50*val4)+(val57*val5));
acc0[42] = (acc0[42]+(val44*val22)+(val51*val4)+(val45*val24)+(val52*val7));
acc0[43] = (acc0[43]+(val44*val26)+(val51*val3)+(val45*val22)+(val52*val4)+(val46*val24)+(val53*val7));
acc0[44] = (acc0[44]+(val45*val26)+(val52*val3)+(val46*val22)+(val53*val4)+(val47*val24)+(val54*val7));
acc0[45] = (acc0[45]+(val46*val26)+(val53*val3)+(val47*val22)+(val54*val4)+(val48*val24)+(val55*val7));
acc0[46] = (acc0[46]+(val47*val26)+(val54*val3)+(val48*val22)+(val55*val4)+(val49*val24)+(val56*val7));
acc0[47] = (acc0[47]+(val48*val26)+(val55*val3)+(val49*val22)+(val56*val4)+(val50*val24)+(val57*val7));
acc0[48] = (acc0[48]+(val49*val26)+(val56*val3)+(val50*val22)+(val57*val4));
}
var alu101 = (lidx0+bitcast<i32>((bitcast<u32>(gidx0)<<5u)));
var val58 = data3_512[alu101];
var val59 = data4_512[alu101];
var alu102 = ((gidx0*1568)+(lidx0*49));
var alu103 = (acc0[0]+val58);
var alu104 = (acc0[1]+val58);
var alu105 = (acc0[2]+val58);
var alu106 = (acc0[3]+val58);
var alu107 = (acc0[4]+val58);
var alu108 = (acc0[5]+val58);
var alu109 = (acc0[6]+val58);
var alu110 = (acc0[7]+val58);
var alu111 = (acc0[8]+val58);
var alu112 = (acc0[9]+val58);
var alu113 = (acc0[10]+val58);
var alu114 = (acc0[11]+val58);
var alu115 = (acc0[12]+val58);
var alu116 = (acc0[13]+val58);
var alu117 = (acc0[14]+val58);
var alu118 = (acc0[15]+val58);
var alu119 = (acc0[16]+val58);
var alu120 = (acc0[17]+val58);
var alu121 = (acc0[18]+val58);
var alu122 = (acc0[19]+val58);
var alu123 = (acc0[20]+val58);
var alu124 = (acc0[21]+val58);
var alu125 = (acc0[22]+val58);
var alu126 = (acc0[23]+val58);
var alu127 = (acc0[24]+val58);
var alu128 = (acc0[25]+val58);
var alu129 = (acc0[26]+val58);
var alu130 = (acc0[27]+val58);
var alu131 = (acc0[28]+val58);
var alu132 = (acc0[29]+val58);
var alu133 = (acc0[30]+val58);
var alu134 = (acc0[31]+val58);
var alu135 = (acc0[32]+val58);
var alu136 = (acc0[33]+val58);
var alu137 = (acc0[34]+val58);
var alu138 = (acc0[35]+val58);
var alu139 = (acc0[36]+val58);
var alu140 = (acc0[37]+val58);
var alu141 = (acc0[38]+val58);
var alu142 = (acc0[39]+val58);
var alu143 = (acc0[40]+val58);
var alu144 = (acc0[41]+val58);
var alu145 = (acc0[42]+val58);
var alu146 = (acc0[43]+val58);
var alu147 = (acc0[44]+val58);
var alu148 = (acc0[45]+val58);
var alu149 = (acc0[46]+val58);
var alu150 = (acc0[47]+val58);
var alu151 = (acc0[48]+val58);
var alu152 = select((alu103*val59),alu103,(0.0f<alu103));
var alu153 = select((alu104*val59),alu104,(0.0f<alu104));
var alu154 = select((alu105*val59),alu105,(0.0f<alu105));
var alu155 = select((alu106*val59),alu106,(0.0f<alu106));
var alu156 = select((alu107*val59),alu107,(0.0f<alu107));
var alu157 = select((alu108*val59),alu108,(0.0f<alu108));
var alu158 = select((alu109*val59),alu109,(0.0f<alu109));
var alu159 = select((alu110*val59),alu110,(0.0f<alu110));
var alu160 = select((alu111*val59),alu111,(0.0f<alu111));
var alu161 = select((alu112*val59),alu112,(0.0f<alu112));
var alu162 = select((alu113*val59),alu113,(0.0f<alu113));
var alu163 = select((alu114*val59),alu114,(0.0f<alu114));
var alu164 = select((alu115*val59),alu115,(0.0f<alu115));
var alu165 = select((alu116*val59),alu116,(0.0f<alu116));
var alu166 = select((alu117*val59),alu117,(0.0f<alu117));
var alu167 = select((alu118*val59),alu118,(0.0f<alu118));
var alu168 = select((alu119*val59),alu119,(0.0f<alu119));
var alu169 = select((alu120*val59),alu120,(0.0f<alu120));
var alu170 = select((alu121*val59),alu121,(0.0f<alu121));
var alu171 = select((alu122*val59),alu122,(0.0f<alu122));
var alu172 = select((alu123*val59),alu123,(0.0f<alu123));
var alu173 = select((alu124*val59),alu124,(0.0f<alu124));
var alu174 = select((alu125*val59),alu125,(0.0f<alu125));
var alu175 = select((alu126*val59),alu126,(0.0f<alu126));
var alu176 = select((alu127*val59),alu127,(0.0f<alu127));
var alu177 = select((alu128*val59),alu128,(0.0f<alu128));
var alu178 = select((alu129*val59),alu129,(0.0f<alu129));
var alu179 = select((alu130*val59),alu130,(0.0f<alu130));
var alu180 = select((alu131*val59),alu131,(0.0f<alu131));
var alu181 = select((alu132*val59),alu132,(0.0f<alu132));
var alu182 = select((alu133*val59),alu133,(0.0f<alu133));
var alu183 = select((alu134*val59),alu134,(0.0f<alu134));
var alu184 = select((alu135*val59),alu135,(0.0f<alu135));
var alu185 = select((alu136*val59),alu136,(0.0f<alu136));
var alu186 = select((alu137*val59),alu137,(0.0f<alu137));
var alu187 = select((alu138*val59),alu138,(0.0f<alu138));
var alu188 = select((alu139*val59),alu139,(0.0f<alu139));
var alu189 = select((alu140*val59),alu140,(0.0f<alu140));
var alu190 = select((alu141*val59),alu141,(0.0f<alu141));
var alu191 = select((alu142*val59),alu142,(0.0f<alu142));
var alu192 = select((alu143*val59),alu143,(0.0f<alu143));
var alu193 = select((alu144*val59),alu144,(0.0f<alu144));
var alu194 = select((alu145*val59),alu145,(0.0f<alu145));
var alu195 = select((alu146*val59),alu146,(0.0f<alu146));
var alu196 = select((alu147*val59),alu147,(0.0f<alu147));
var alu197 = select((alu148*val59),alu148,(0.0f<alu148));
var alu198 = select((alu149*val59),alu149,(0.0f<alu149));
var alu199 = select((alu150*val59),alu150,(0.0f<alu150));
var alu200 = select((alu151*val59),alu151,(0.0f<alu151));
data0_25088[(alu102+1)] = alu159;
data0_25088[(alu102+2)] = alu166;
data0_25088[(alu102+3)] = alu173;
data0_25088[(alu102+4)] = alu180;
data0_25088[(alu102+5)] = alu187;
data0_25088[(alu102+6)] = alu194;
data0_25088[(alu102+7)] = alu153;
data0_25088[(alu102+8)] = alu160;
data0_25088[(alu102+9)] = alu167;
data0_25088[(alu102+10)] = alu174;
data0_25088[(alu102+11)] = alu181;
data0_25088[(alu102+12)] = alu188;
data0_25088[(alu102+13)] = alu195;
data0_25088[(alu102+14)] = alu154;
data0_25088[(alu102+15)] = alu161;
data0_25088[(alu102+16)] = alu168;
data0_25088[(alu102+17)] = alu175;
data0_25088[(alu102+18)] = alu182;
data0_25088[(alu102+19)] = alu189;
data0_25088[(alu102+20)] = alu196;
data0_25088[(alu102+21)] = alu155;
data0_25088[(alu102+22)] = alu162;
data0_25088[(alu102+23)] = alu169;
data0_25088[(alu102+24)] = alu176;
data0_25088[(alu102+25)] = alu183;
data0_25088[(alu102+26)] = alu190;
data0_25088[(alu102+27)] = alu197;
data0_25088[(alu102+28)] = alu156;
data0_25088[(alu102+29)] = alu163;
data0_25088[(alu102+30)] = alu170;
data0_25088[(alu102+31)] = alu177;
data0_25088[(alu102+32)] = alu184;
data0_25088[(alu102+33)] = alu191;
data0_25088[(alu102+34)] = alu198;
data0_25088[(alu102+35)] = alu157;
data0_25088[(alu102+36)] = alu164;
data0_25088[(alu102+37)] = alu171;
data0_25088[(alu102+38)] = alu178;
data0_25088[(alu102+39)] = alu185;
data0_25088[(alu102+40)] = alu192;
data0_25088[(alu102+41)] = alu199;
data0_25088[(alu102+42)] = alu158;
data0_25088[(alu102+43)] = alu165;
data0_25088[(alu102+44)] = alu172;
data0_25088[(alu102+45)] = alu179;
data0_25088[(alu102+46)] = alu186;
data0_25088[(alu102+47)] = alu193;
data0_25088[(alu102+48)] = alu200;
data0_25088[alu102] = alu152;
}`;
const r_16_32_7_7_512_3_3n1 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_2359296:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_25088:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,49>;
var gidx0 = i32(gindex.x); /* 16 */
var lidx0 = i32(lindex.x); /* 32 */
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
acc0[16] = 0.0f;
acc0[17] = 0.0f;
acc0[18] = 0.0f;
acc0[19] = 0.0f;
acc0[20] = 0.0f;
acc0[21] = 0.0f;
acc0[22] = 0.0f;
acc0[23] = 0.0f;
acc0[24] = 0.0f;
acc0[25] = 0.0f;
acc0[26] = 0.0f;
acc0[27] = 0.0f;
acc0[28] = 0.0f;
acc0[29] = 0.0f;
acc0[30] = 0.0f;
acc0[31] = 0.0f;
acc0[32] = 0.0f;
acc0[33] = 0.0f;
acc0[34] = 0.0f;
acc0[35] = 0.0f;
acc0[36] = 0.0f;
acc0[37] = 0.0f;
acc0[38] = 0.0f;
acc0[39] = 0.0f;
acc0[40] = 0.0f;
acc0[41] = 0.0f;
acc0[42] = 0.0f;
acc0[43] = 0.0f;
acc0[44] = 0.0f;
acc0[45] = 0.0f;
acc0[46] = 0.0f;
acc0[47] = 0.0f;
acc0[48] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 512; Ridx0++) {
var alu49 = (Ridx0*49);
var val0 = data1_25088[(alu49+1)];
var val1 = data1_25088[(alu49+8)];
var val2 = data1_25088[alu49];
var alu50 = ((gidx0*147456)+(lidx0*4608)+(Ridx0*9));
var val3 = data2_2359296[(alu50+1)];
var val4 = data2_2359296[(alu50+4)];
var val5 = data2_2359296[(alu50+5)];
var val6 = data1_25088[(alu49+7)];
var val7 = data2_2359296[(alu50+7)];
var val8 = data2_2359296[(alu50+8)];
var val9 = data2_2359296[(alu50+2)];
var val10 = data1_25088[(alu49+14)];
var val11 = data1_25088[(alu49+15)];
var val12 = data1_25088[(alu49+21)];
var val13 = data1_25088[(alu49+22)];
var val14 = data1_25088[(alu49+17)];
var val15 = data1_25088[(alu49+28)];
var val16 = data1_25088[(alu49+29)];
var val17 = data1_25088[(alu49+30)];
var val18 = data1_25088[(alu49+35)];
var val19 = data1_25088[(alu49+36)];
var val20 = data1_25088[(alu49+42)];
var val21 = data1_25088[(alu49+43)];
var val22 = data2_2359296[(alu50+3)];
var val23 = data1_25088[(alu49+2)];
var val24 = data2_2359296[(alu50+6)];
var val25 = data1_25088[(alu49+9)];
var val26 = data2_2359296[alu50];
var val27 = data1_25088[(alu49+16)];
var val28 = data1_25088[(alu49+23)];
var val29 = data1_25088[(alu49+37)];
var val30 = data1_25088[(alu49+44)];
var val31 = data1_25088[(alu49+3)];
var val32 = data1_25088[(alu49+10)];
var val33 = data1_25088[(alu49+24)];
var val34 = data1_25088[(alu49+31)];
var val35 = data1_25088[(alu49+38)];
var val36 = data1_25088[(alu49+45)];
var val37 = data1_25088[(alu49+4)];
var val38 = data1_25088[(alu49+11)];
var val39 = data1_25088[(alu49+18)];
var val40 = data1_25088[(alu49+25)];
var val41 = data1_25088[(alu49+32)];
var val42 = data1_25088[(alu49+39)];
var val43 = data1_25088[(alu49+46)];
var val44 = data1_25088[(alu49+5)];
var val45 = data1_25088[(alu49+12)];
var val46 = data1_25088[(alu49+19)];
var val47 = data1_25088[(alu49+26)];
var val48 = data1_25088[(alu49+33)];
var val49 = data1_25088[(alu49+40)];
var val50 = data1_25088[(alu49+47)];
var val51 = data1_25088[(alu49+6)];
var val52 = data1_25088[(alu49+13)];
var val53 = data1_25088[(alu49+20)];
var val54 = data1_25088[(alu49+27)];
var val55 = data1_25088[(alu49+34)];
var val56 = data1_25088[(alu49+41)];
var val57 = data1_25088[(alu49+48)];
acc0[0] = (acc0[0]+(val2*val4)+(val0*val5)+(val6*val7)+(val1*val8));
acc0[1] = (acc0[1]+(val2*val3)+(val0*val9)+(val6*val4)+(val1*val5)+(val10*val7)+(val11*val8));
acc0[2] = (acc0[2]+(val6*val3)+(val1*val9)+(val10*val4)+(val11*val5)+(val12*val7)+(val13*val8));
acc0[3] = (acc0[3]+(val10*val3)+(val11*val9)+(val12*val4)+(val13*val5)+(val15*val7)+(val16*val8));
acc0[4] = (acc0[4]+(val12*val3)+(val13*val9)+(val15*val4)+(val16*val5)+(val18*val7)+(val19*val8));
acc0[5] = (acc0[5]+(val15*val3)+(val16*val9)+(val18*val4)+(val19*val5)+(val20*val7)+(val21*val8));
acc0[6] = (acc0[6]+(val18*val3)+(val19*val9)+(val20*val4)+(val21*val5));
acc0[7] = (acc0[7]+(val2*val22)+(val0*val4)+(val23*val5)+(val6*val24)+(val1*val7)+(val25*val8));
acc0[8] = (acc0[8]+(val2*val26)+(val0*val3)+(val23*val9)+(val6*val22)+(val1*val4)+(val25*val5)+(val10*val24)+(val11*val7)+(val27*val8));
acc0[9] = (acc0[9]+(val6*val26)+(val1*val3)+(val25*val9)+(val10*val22)+(val11*val4)+(val27*val5)+(val12*val24)+(val13*val7)+(val28*val8));
acc0[10] = (acc0[10]+(val10*val26)+(val11*val3)+(val27*val9)+(val12*val22)+(val13*val4)+(val28*val5)+(val15*val24)+(val16*val7)+(val17*val8));
acc0[11] = (acc0[11]+(val12*val26)+(val13*val3)+(val28*val9)+(val15*val22)+(val16*val4)+(val17*val5)+(val18*val24)+(val19*val7)+(val29*val8));
acc0[12] = (acc0[12]+(val15*val26)+(val16*val3)+(val17*val9)+(val18*val22)+(val19*val4)+(val29*val5)+(val20*val24)+(val21*val7)+(val30*val8));
acc0[13] = (acc0[13]+(val18*val26)+(val19*val3)+(val29*val9)+(val20*val22)+(val21*val4)+(val30*val5));
acc0[14] = (acc0[14]+(val0*val22)+(val23*val4)+(val31*val5)+(val1*val24)+(val25*val7)+(val32*val8));
acc0[15] = (acc0[15]+(val0*val26)+(val23*val3)+(val31*val9)+(val1*val22)+(val25*val4)+(val32*val5)+(val11*val24)+(val27*val7)+(val14*val8));
acc0[16] = (acc0[16]+(val1*val26)+(val25*val3)+(val32*val9)+(val11*val22)+(val27*val4)+(val14*val5)+(val13*val24)+(val28*val7)+(val33*val8));
acc0[17] = (acc0[17]+(val11*val26)+(val27*val3)+(val14*val9)+(val13*val22)+(val28*val4)+(val33*val5)+(val16*val24)+(val17*val7)+(val34*val8));
acc0[18] = (acc0[18]+(val13*val26)+(val28*val3)+(val33*val9)+(val16*val22)+(val17*val4)+(val34*val5)+(val19*val24)+(val29*val7)+(val35*val8));
acc0[19] = (acc0[19]+(val16*val26)+(val17*val3)+(val34*val9)+(val19*val22)+(val29*val4)+(val35*val5)+(val21*val24)+(val30*val7)+(val36*val8));
acc0[20] = (acc0[20]+(val19*val26)+(val29*val3)+(val35*val9)+(val21*val22)+(val30*val4)+(val36*val5));
acc0[21] = (acc0[21]+(val23*val22)+(val31*val4)+(val37*val5)+(val25*val24)+(val32*val7)+(val38*val8));
acc0[22] = (acc0[22]+(val23*val26)+(val31*val3)+(val37*val9)+(val25*val22)+(val32*val4)+(val38*val5)+(val27*val24)+(val14*val7)+(val39*val8));
acc0[23] = (acc0[23]+(val25*val26)+(val32*val3)+(val38*val9)+(val27*val22)+(val14*val4)+(val39*val5)+(val28*val24)+(val33*val7)+(val40*val8));
acc0[24] = (acc0[24]+(val27*val26)+(val14*val3)+(val39*val9)+(val28*val22)+(val33*val4)+(val40*val5)+(val17*val24)+(val34*val7)+(val41*val8));
acc0[25] = (acc0[25]+(val28*val26)+(val33*val3)+(val40*val9)+(val17*val22)+(val34*val4)+(val41*val5)+(val29*val24)+(val35*val7)+(val42*val8));
acc0[26] = (acc0[26]+(val17*val26)+(val34*val3)+(val41*val9)+(val29*val22)+(val35*val4)+(val42*val5)+(val30*val24)+(val36*val7)+(val43*val8));
acc0[27] = (acc0[27]+(val29*val26)+(val35*val3)+(val42*val9)+(val30*val22)+(val36*val4)+(val43*val5));
acc0[28] = (acc0[28]+(val31*val22)+(val37*val4)+(val44*val5)+(val32*val24)+(val38*val7)+(val45*val8));
acc0[29] = (acc0[29]+(val31*val26)+(val37*val3)+(val44*val9)+(val32*val22)+(val38*val4)+(val45*val5)+(val14*val24)+(val39*val7)+(val46*val8));
acc0[30] = (acc0[30]+(val32*val26)+(val38*val3)+(val45*val9)+(val14*val22)+(val39*val4)+(val46*val5)+(val33*val24)+(val40*val7)+(val47*val8));
acc0[31] = (acc0[31]+(val14*val26)+(val39*val3)+(val46*val9)+(val33*val22)+(val40*val4)+(val47*val5)+(val34*val24)+(val41*val7)+(val48*val8));
acc0[32] = (acc0[32]+(val33*val26)+(val40*val3)+(val47*val9)+(val34*val22)+(val41*val4)+(val48*val5)+(val35*val24)+(val42*val7)+(val49*val8));
acc0[33] = (acc0[33]+(val34*val26)+(val41*val3)+(val48*val9)+(val35*val22)+(val42*val4)+(val49*val5)+(val36*val24)+(val43*val7)+(val50*val8));
acc0[34] = (acc0[34]+(val35*val26)+(val42*val3)+(val49*val9)+(val36*val22)+(val43*val4)+(val50*val5));
acc0[35] = (acc0[35]+(val37*val22)+(val44*val4)+(val51*val5)+(val38*val24)+(val45*val7)+(val52*val8));
acc0[36] = (acc0[36]+(val37*val26)+(val44*val3)+(val51*val9)+(val38*val22)+(val45*val4)+(val52*val5)+(val39*val24)+(val46*val7)+(val53*val8));
acc0[37] = (acc0[37]+(val38*val26)+(val45*val3)+(val52*val9)+(val39*val22)+(val46*val4)+(val53*val5)+(val40*val24)+(val47*val7)+(val54*val8));
acc0[38] = (acc0[38]+(val39*val26)+(val46*val3)+(val53*val9)+(val40*val22)+(val47*val4)+(val54*val5)+(val41*val24)+(val48*val7)+(val55*val8));
acc0[39] = (acc0[39]+(val40*val26)+(val47*val3)+(val54*val9)+(val41*val22)+(val48*val4)+(val55*val5)+(val42*val24)+(val49*val7)+(val56*val8));
acc0[40] = (acc0[40]+(val41*val26)+(val48*val3)+(val55*val9)+(val42*val22)+(val49*val4)+(val56*val5)+(val43*val24)+(val50*val7)+(val57*val8));
acc0[41] = (acc0[41]+(val42*val26)+(val49*val3)+(val56*val9)+(val43*val22)+(val50*val4)+(val57*val5));
acc0[42] = (acc0[42]+(val44*val22)+(val51*val4)+(val45*val24)+(val52*val7));
acc0[43] = (acc0[43]+(val44*val26)+(val51*val3)+(val45*val22)+(val52*val4)+(val46*val24)+(val53*val7));
acc0[44] = (acc0[44]+(val45*val26)+(val52*val3)+(val46*val22)+(val53*val4)+(val47*val24)+(val54*val7));
acc0[45] = (acc0[45]+(val46*val26)+(val53*val3)+(val47*val22)+(val54*val4)+(val48*val24)+(val55*val7));
acc0[46] = (acc0[46]+(val47*val26)+(val54*val3)+(val48*val22)+(val55*val4)+(val49*val24)+(val56*val7));
acc0[47] = (acc0[47]+(val48*val26)+(val55*val3)+(val49*val22)+(val56*val4)+(val50*val24)+(val57*val7));
acc0[48] = (acc0[48]+(val49*val26)+(val56*val3)+(val50*val22)+(val57*val4));
}
var val58 = data3_512[(lidx0+bitcast<i32>((bitcast<u32>(gidx0)<<5u)))];
var alu101 = ((gidx0*1568)+(lidx0*49));
var alu102 = (alu101+1);
var val59 = data4_25088[alu102];
var alu103 = (alu101+2);
var val60 = data4_25088[alu103];
var alu104 = (alu101+3);
var val61 = data4_25088[alu104];
var alu105 = (alu101+4);
var val62 = data4_25088[alu105];
var val63 = data4_25088[alu101];
var alu106 = (alu101+5);
var val64 = data4_25088[alu106];
var alu107 = (alu101+6);
var val65 = data4_25088[alu107];
var alu108 = (alu101+7);
var val66 = data4_25088[alu108];
var alu109 = (alu101+8);
var val67 = data4_25088[alu109];
var alu110 = (alu101+9);
var val68 = data4_25088[alu110];
var alu111 = (alu101+10);
var val69 = data4_25088[alu111];
var alu112 = (alu101+11);
var val70 = data4_25088[alu112];
var alu113 = (alu101+12);
var val71 = data4_25088[alu113];
var alu114 = (alu101+13);
var val72 = data4_25088[alu114];
var alu115 = (alu101+14);
var val73 = data4_25088[alu115];
var alu116 = (alu101+15);
var val74 = data4_25088[alu116];
var alu117 = (alu101+16);
var val75 = data4_25088[alu117];
var alu118 = (alu101+17);
var val76 = data4_25088[alu118];
var alu119 = (alu101+18);
var val77 = data4_25088[alu119];
var alu120 = (alu101+19);
var val78 = data4_25088[alu120];
var alu121 = (alu101+20);
var val79 = data4_25088[alu121];
var alu122 = (alu101+21);
var val80 = data4_25088[alu122];
var alu123 = (alu101+22);
var val81 = data4_25088[alu123];
var alu124 = (alu101+23);
var val82 = data4_25088[alu124];
var alu125 = (alu101+24);
var val83 = data4_25088[alu125];
var alu126 = (alu101+25);
var val84 = data4_25088[alu126];
var alu127 = (alu101+26);
var val85 = data4_25088[alu127];
var alu128 = (alu101+27);
var val86 = data4_25088[alu128];
var alu129 = (alu101+28);
var val87 = data4_25088[alu129];
var alu130 = (alu101+29);
var val88 = data4_25088[alu130];
var alu131 = (alu101+30);
var val89 = data4_25088[alu131];
var alu132 = (alu101+31);
var val90 = data4_25088[alu132];
var alu133 = (alu101+32);
var val91 = data4_25088[alu133];
var alu134 = (alu101+33);
var val92 = data4_25088[alu134];
var alu135 = (alu101+34);
var val93 = data4_25088[alu135];
var alu136 = (alu101+35);
var val94 = data4_25088[alu136];
var alu137 = (alu101+36);
var val95 = data4_25088[alu137];
var alu138 = (alu101+37);
var val96 = data4_25088[alu138];
var alu139 = (alu101+38);
var val97 = data4_25088[alu139];
var alu140 = (alu101+39);
var val98 = data4_25088[alu140];
var alu141 = (alu101+40);
var val99 = data4_25088[alu141];
var alu142 = (alu101+41);
var val100 = data4_25088[alu142];
var alu143 = (alu101+42);
var val101 = data4_25088[alu143];
var alu144 = (alu101+43);
var val102 = data4_25088[alu144];
var alu145 = (alu101+44);
var val103 = data4_25088[alu145];
var alu146 = (alu101+45);
var val104 = data4_25088[alu146];
var alu147 = (alu101+46);
var val105 = data4_25088[alu147];
var alu148 = (alu101+47);
var val106 = data4_25088[alu148];
var alu149 = (alu101+48);
var val107 = data4_25088[alu149];
data0_25088[alu102] = (acc0[7]+val58+val59);
data0_25088[alu103] = (acc0[14]+val58+val60);
data0_25088[alu104] = (acc0[21]+val58+val61);
data0_25088[alu105] = (acc0[28]+val58+val62);
data0_25088[alu106] = (acc0[35]+val58+val64);
data0_25088[alu107] = (acc0[42]+val58+val65);
data0_25088[alu108] = (acc0[1]+val58+val66);
data0_25088[alu109] = (acc0[8]+val58+val67);
data0_25088[alu110] = (acc0[15]+val58+val68);
data0_25088[alu111] = (acc0[22]+val58+val69);
data0_25088[alu112] = (acc0[29]+val58+val70);
data0_25088[alu113] = (acc0[36]+val58+val71);
data0_25088[alu114] = (acc0[43]+val58+val72);
data0_25088[alu115] = (acc0[2]+val58+val73);
data0_25088[alu116] = (acc0[9]+val58+val74);
data0_25088[alu117] = (acc0[16]+val58+val75);
data0_25088[alu118] = (acc0[23]+val58+val76);
data0_25088[alu119] = (acc0[30]+val58+val77);
data0_25088[alu120] = (acc0[37]+val58+val78);
data0_25088[alu121] = (acc0[44]+val58+val79);
data0_25088[alu122] = (acc0[3]+val58+val80);
data0_25088[alu123] = (acc0[10]+val58+val81);
data0_25088[alu124] = (acc0[17]+val58+val82);
data0_25088[alu125] = (acc0[24]+val58+val83);
data0_25088[alu126] = (acc0[31]+val58+val84);
data0_25088[alu127] = (acc0[38]+val58+val85);
data0_25088[alu128] = (acc0[45]+val58+val86);
data0_25088[alu129] = (acc0[4]+val58+val87);
data0_25088[alu130] = (acc0[11]+val58+val88);
data0_25088[alu131] = (acc0[18]+val58+val89);
data0_25088[alu132] = (acc0[25]+val58+val90);
data0_25088[alu133] = (acc0[32]+val58+val91);
data0_25088[alu134] = (acc0[39]+val58+val92);
data0_25088[alu135] = (acc0[46]+val58+val93);
data0_25088[alu136] = (acc0[5]+val58+val94);
data0_25088[alu137] = (acc0[12]+val58+val95);
data0_25088[alu138] = (acc0[19]+val58+val96);
data0_25088[alu139] = (acc0[26]+val58+val97);
data0_25088[alu140] = (acc0[33]+val58+val98);
data0_25088[alu141] = (acc0[40]+val58+val99);
data0_25088[alu142] = (acc0[47]+val58+val100);
data0_25088[alu143] = (acc0[6]+val58+val101);
data0_25088[alu144] = (acc0[13]+val58+val102);
data0_25088[alu145] = (acc0[20]+val58+val103);
data0_25088[alu146] = (acc0[27]+val58+val104);
data0_25088[alu147] = (acc0[34]+val58+val105);
data0_25088[alu148] = (acc0[41]+val58+val106);
data0_25088[alu149] = (acc0[48]+val58+val107);
data0_25088[alu101] = (acc0[0]+val58+val63);
}`;
const r_16_32_7_7_512_3_3n2 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_2359296:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_25088:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_512:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_512:array<f32>;
@group(0) @binding(8)var<storage,read_write>data7_512:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,49>;
var gidx0 = i32(gindex.x); /* 16 */
var lidx0 = i32(lindex.x); /* 32 */
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
acc0[4] = 0.0f;
acc0[5] = 0.0f;
acc0[6] = 0.0f;
acc0[7] = 0.0f;
acc0[8] = 0.0f;
acc0[9] = 0.0f;
acc0[10] = 0.0f;
acc0[11] = 0.0f;
acc0[12] = 0.0f;
acc0[13] = 0.0f;
acc0[14] = 0.0f;
acc0[15] = 0.0f;
acc0[16] = 0.0f;
acc0[17] = 0.0f;
acc0[18] = 0.0f;
acc0[19] = 0.0f;
acc0[20] = 0.0f;
acc0[21] = 0.0f;
acc0[22] = 0.0f;
acc0[23] = 0.0f;
acc0[24] = 0.0f;
acc0[25] = 0.0f;
acc0[26] = 0.0f;
acc0[27] = 0.0f;
acc0[28] = 0.0f;
acc0[29] = 0.0f;
acc0[30] = 0.0f;
acc0[31] = 0.0f;
acc0[32] = 0.0f;
acc0[33] = 0.0f;
acc0[34] = 0.0f;
acc0[35] = 0.0f;
acc0[36] = 0.0f;
acc0[37] = 0.0f;
acc0[38] = 0.0f;
acc0[39] = 0.0f;
acc0[40] = 0.0f;
acc0[41] = 0.0f;
acc0[42] = 0.0f;
acc0[43] = 0.0f;
acc0[44] = 0.0f;
acc0[45] = 0.0f;
acc0[46] = 0.0f;
acc0[47] = 0.0f;
acc0[48] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 512; Ridx0++) {
var alu49 = (Ridx0*49);
var val0 = data1_25088[(alu49+1)];
var val1 = data1_25088[alu49];
var alu50 = ((gidx0*147456)+(lidx0*4608)+(Ridx0*9));
var val2 = data2_2359296[(alu50+1)];
var val3 = data2_2359296[(alu50+2)];
var val4 = data2_2359296[(alu50+4)];
var val5 = data2_2359296[(alu50+5)];
var val6 = data1_25088[(alu49+7)];
var val7 = data2_2359296[(alu50+7)];
var val8 = data1_25088[(alu49+8)];
var val9 = data2_2359296[(alu50+8)];
var val10 = data1_25088[(alu49+14)];
var val11 = data1_25088[(alu49+15)];
var val12 = data1_25088[(alu49+21)];
var val13 = data1_25088[(alu49+22)];
var val14 = data1_25088[(alu49+28)];
var val15 = data1_25088[(alu49+29)];
var val16 = data1_25088[(alu49+35)];
var val17 = data1_25088[(alu49+36)];
var val18 = data1_25088[(alu49+42)];
var val19 = data1_25088[(alu49+43)];
var val20 = data2_2359296[(alu50+3)];
var val21 = data1_25088[(alu49+2)];
var val22 = data2_2359296[(alu50+6)];
var val23 = data1_25088[(alu49+9)];
var val24 = data2_2359296[alu50];
var val25 = data1_25088[(alu49+16)];
var val26 = data1_25088[(alu49+23)];
var val27 = data1_25088[(alu49+30)];
var val28 = data1_25088[(alu49+37)];
var val29 = data1_25088[(alu49+44)];
var val30 = data1_25088[(alu49+3)];
var val31 = data1_25088[(alu49+10)];
var val32 = data1_25088[(alu49+17)];
var val33 = data1_25088[(alu49+24)];
var val34 = data1_25088[(alu49+31)];
var val35 = data1_25088[(alu49+11)];
var val36 = data1_25088[(alu49+38)];
var val37 = data1_25088[(alu49+45)];
var val38 = data1_25088[(alu49+4)];
var val39 = data1_25088[(alu49+18)];
var val40 = data1_25088[(alu49+25)];
var val41 = data1_25088[(alu49+19)];
var val42 = data1_25088[(alu49+32)];
var val43 = data1_25088[(alu49+39)];
var val44 = data1_25088[(alu49+46)];
var val45 = data1_25088[(alu49+5)];
var val46 = data1_25088[(alu49+12)];
var val47 = data1_25088[(alu49+26)];
var val48 = data1_25088[(alu49+33)];
var val49 = data1_25088[(alu49+40)];
var val50 = data1_25088[(alu49+47)];
var val51 = data1_25088[(alu49+6)];
var val52 = data1_25088[(alu49+13)];
var val53 = data1_25088[(alu49+20)];
var val54 = data1_25088[(alu49+27)];
var val55 = data1_25088[(alu49+34)];
var val56 = data1_25088[(alu49+41)];
var val57 = data1_25088[(alu49+48)];
acc0[0] = (acc0[0]+(val1*val4)+(val0*val5)+(val6*val7)+(val8*val9));
acc0[1] = (acc0[1]+(val1*val2)+(val0*val3)+(val6*val4)+(val8*val5)+(val10*val7)+(val11*val9));
acc0[2] = (acc0[2]+(val6*val2)+(val8*val3)+(val10*val4)+(val11*val5)+(val12*val7)+(val13*val9));
acc0[3] = (acc0[3]+(val10*val2)+(val11*val3)+(val12*val4)+(val13*val5)+(val14*val7)+(val15*val9));
acc0[4] = (acc0[4]+(val12*val2)+(val13*val3)+(val14*val4)+(val15*val5)+(val16*val7)+(val17*val9));
acc0[5] = (acc0[5]+(val14*val2)+(val15*val3)+(val16*val4)+(val17*val5)+(val18*val7)+(val19*val9));
acc0[6] = (acc0[6]+(val16*val2)+(val17*val3)+(val18*val4)+(val19*val5));
acc0[7] = (acc0[7]+(val1*val20)+(val0*val4)+(val21*val5)+(val6*val22)+(val8*val7)+(val23*val9));
acc0[8] = (acc0[8]+(val1*val24)+(val0*val2)+(val21*val3)+(val6*val20)+(val8*val4)+(val23*val5)+(val10*val22)+(val11*val7)+(val25*val9));
acc0[9] = (acc0[9]+(val6*val24)+(val8*val2)+(val23*val3)+(val10*val20)+(val11*val4)+(val25*val5)+(val12*val22)+(val13*val7)+(val26*val9));
acc0[10] = (acc0[10]+(val10*val24)+(val11*val2)+(val25*val3)+(val12*val20)+(val13*val4)+(val26*val5)+(val14*val22)+(val15*val7)+(val27*val9));
acc0[11] = (acc0[11]+(val12*val24)+(val13*val2)+(val26*val3)+(val14*val20)+(val15*val4)+(val27*val5)+(val16*val22)+(val17*val7)+(val28*val9));
acc0[12] = (acc0[12]+(val14*val24)+(val15*val2)+(val27*val3)+(val16*val20)+(val17*val4)+(val28*val5)+(val18*val22)+(val19*val7)+(val29*val9));
acc0[13] = (acc0[13]+(val16*val24)+(val17*val2)+(val28*val3)+(val18*val20)+(val19*val4)+(val29*val5));
acc0[14] = (acc0[14]+(val0*val20)+(val21*val4)+(val30*val5)+(val8*val22)+(val23*val7)+(val31*val9));
acc0[15] = (acc0[15]+(val0*val24)+(val21*val2)+(val30*val3)+(val8*val20)+(val23*val4)+(val31*val5)+(val11*val22)+(val25*val7)+(val32*val9));
acc0[16] = (acc0[16]+(val8*val24)+(val23*val2)+(val31*val3)+(val11*val20)+(val25*val4)+(val32*val5)+(val13*val22)+(val26*val7)+(val33*val9));
acc0[17] = (acc0[17]+(val11*val24)+(val25*val2)+(val32*val3)+(val13*val20)+(val26*val4)+(val33*val5)+(val15*val22)+(val27*val7)+(val34*val9));
acc0[18] = (acc0[18]+(val13*val24)+(val26*val2)+(val33*val3)+(val15*val20)+(val27*val4)+(val34*val5)+(val17*val22)+(val28*val7)+(val36*val9));
acc0[19] = (acc0[19]+(val15*val24)+(val27*val2)+(val34*val3)+(val17*val20)+(val28*val4)+(val36*val5)+(val19*val22)+(val29*val7)+(val37*val9));
acc0[20] = (acc0[20]+(val17*val24)+(val28*val2)+(val36*val3)+(val19*val20)+(val29*val4)+(val37*val5));
acc0[21] = (acc0[21]+(val21*val20)+(val30*val4)+(val38*val5)+(val23*val22)+(val31*val7)+(val35*val9));
acc0[22] = (acc0[22]+(val21*val24)+(val30*val2)+(val38*val3)+(val23*val20)+(val31*val4)+(val35*val5)+(val25*val22)+(val32*val7)+(val39*val9));
acc0[23] = (acc0[23]+(val23*val24)+(val31*val2)+(val35*val3)+(val25*val20)+(val32*val4)+(val39*val5)+(val26*val22)+(val33*val7)+(val40*val9));
acc0[24] = (acc0[24]+(val25*val24)+(val32*val2)+(val39*val3)+(val26*val20)+(val33*val4)+(val40*val5)+(val27*val22)+(val34*val7)+(val42*val9));
acc0[25] = (acc0[25]+(val26*val24)+(val33*val2)+(val40*val3)+(val27*val20)+(val34*val4)+(val42*val5)+(val28*val22)+(val36*val7)+(val43*val9));
acc0[26] = (acc0[26]+(val27*val24)+(val34*val2)+(val42*val3)+(val28*val20)+(val36*val4)+(val43*val5)+(val29*val22)+(val37*val7)+(val44*val9));
acc0[27] = (acc0[27]+(val28*val24)+(val36*val2)+(val43*val3)+(val29*val20)+(val37*val4)+(val44*val5));
acc0[28] = (acc0[28]+(val30*val20)+(val38*val4)+(val45*val5)+(val31*val22)+(val35*val7)+(val46*val9));
acc0[29] = (acc0[29]+(val30*val24)+(val38*val2)+(val45*val3)+(val31*val20)+(val35*val4)+(val46*val5)+(val32*val22)+(val39*val7)+(val41*val9));
acc0[30] = (acc0[30]+(val31*val24)+(val35*val2)+(val46*val3)+(val32*val20)+(val39*val4)+(val41*val5)+(val33*val22)+(val40*val7)+(val47*val9));
acc0[31] = (acc0[31]+(val32*val24)+(val39*val2)+(val41*val3)+(val33*val20)+(val40*val4)+(val47*val5)+(val34*val22)+(val42*val7)+(val48*val9));
acc0[32] = (acc0[32]+(val33*val24)+(val40*val2)+(val47*val3)+(val34*val20)+(val42*val4)+(val48*val5)+(val36*val22)+(val43*val7)+(val49*val9));
acc0[33] = (acc0[33]+(val34*val24)+(val42*val2)+(val48*val3)+(val36*val20)+(val43*val4)+(val49*val5)+(val37*val22)+(val44*val7)+(val50*val9));
acc0[34] = (acc0[34]+(val36*val24)+(val43*val2)+(val49*val3)+(val37*val20)+(val44*val4)+(val50*val5));
acc0[35] = (acc0[35]+(val38*val20)+(val45*val4)+(val51*val5)+(val35*val22)+(val46*val7)+(val52*val9));
acc0[36] = (acc0[36]+(val38*val24)+(val45*val2)+(val51*val3)+(val35*val20)+(val46*val4)+(val52*val5)+(val39*val22)+(val41*val7)+(val53*val9));
acc0[37] = (acc0[37]+(val35*val24)+(val46*val2)+(val52*val3)+(val39*val20)+(val41*val4)+(val53*val5)+(val40*val22)+(val47*val7)+(val54*val9));
acc0[38] = (acc0[38]+(val39*val24)+(val41*val2)+(val53*val3)+(val40*val20)+(val47*val4)+(val54*val5)+(val42*val22)+(val48*val7)+(val55*val9));
acc0[39] = (acc0[39]+(val40*val24)+(val47*val2)+(val54*val3)+(val42*val20)+(val48*val4)+(val55*val5)+(val43*val22)+(val49*val7)+(val56*val9));
acc0[40] = (acc0[40]+(val42*val24)+(val48*val2)+(val55*val3)+(val43*val20)+(val49*val4)+(val56*val5)+(val44*val22)+(val50*val7)+(val57*val9));
acc0[41] = (acc0[41]+(val43*val24)+(val49*val2)+(val56*val3)+(val44*val20)+(val50*val4)+(val57*val5));
acc0[42] = (acc0[42]+(val45*val20)+(val51*val4)+(val46*val22)+(val52*val7));
acc0[43] = (acc0[43]+(val45*val24)+(val51*val2)+(val46*val20)+(val52*val4)+(val41*val22)+(val53*val7));
acc0[44] = (acc0[44]+(val46*val24)+(val52*val2)+(val41*val20)+(val53*val4)+(val47*val22)+(val54*val7));
acc0[45] = (acc0[45]+(val41*val24)+(val53*val2)+(val47*val20)+(val54*val4)+(val48*val22)+(val55*val7));
acc0[46] = (acc0[46]+(val47*val24)+(val54*val2)+(val48*val20)+(val55*val4)+(val49*val22)+(val56*val7));
acc0[47] = (acc0[47]+(val48*val24)+(val55*val2)+(val49*val20)+(val56*val4)+(val50*val22)+(val57*val7));
acc0[48] = (acc0[48]+(val49*val24)+(val56*val2)+(val50*val20)+(val57*val4));
}
var alu101 = (lidx0+bitcast<i32>((bitcast<u32>(gidx0)<<5u)));
var val58 = data3_512[alu101];
var alu102 = ((gidx0*1568)+(lidx0*49));
var val59 = data4_25088[alu102];
var val60 = data5_512[alu101];
var val61 = data6_512[alu101];
var val62 = data7_512[alu101];
var val63 = data4_25088[(alu102+1)];
var val64 = data4_25088[(alu102+2)];
var val65 = data4_25088[(alu102+3)];
var val66 = data4_25088[(alu102+4)];
var val67 = data4_25088[(alu102+5)];
var val68 = data4_25088[(alu102+6)];
var val69 = data4_25088[(alu102+7)];
var val70 = data4_25088[(alu102+8)];
var val71 = data4_25088[(alu102+9)];
var val72 = data4_25088[(alu102+10)];
var val73 = data4_25088[(alu102+11)];
var val74 = data4_25088[(alu102+12)];
var val75 = data4_25088[(alu102+13)];
var val76 = data4_25088[(alu102+14)];
var val77 = data4_25088[(alu102+15)];
var val78 = data4_25088[(alu102+16)];
var val79 = data4_25088[(alu102+17)];
var val80 = data4_25088[(alu102+18)];
var val81 = data4_25088[(alu102+19)];
var val82 = data4_25088[(alu102+20)];
var val83 = data4_25088[(alu102+21)];
var val84 = data4_25088[(alu102+22)];
var val85 = data4_25088[(alu102+23)];
var val86 = data4_25088[(alu102+24)];
var val87 = data4_25088[(alu102+25)];
var val88 = data4_25088[(alu102+26)];
var val89 = data4_25088[(alu102+27)];
var val90 = data4_25088[(alu102+28)];
var val91 = data4_25088[(alu102+29)];
var val92 = data4_25088[(alu102+30)];
var val93 = data4_25088[(alu102+31)];
var val94 = data4_25088[(alu102+32)];
var val95 = data4_25088[(alu102+33)];
var val96 = data4_25088[(alu102+34)];
var val97 = data4_25088[(alu102+35)];
var val98 = data4_25088[(alu102+36)];
var val99 = data4_25088[(alu102+37)];
var val100 = data4_25088[(alu102+38)];
var val101 = data4_25088[(alu102+39)];
var val102 = data4_25088[(alu102+40)];
var val103 = data4_25088[(alu102+41)];
var val104 = data4_25088[(alu102+42)];
var val105 = data4_25088[(alu102+43)];
var val106 = data4_25088[(alu102+44)];
var val107 = data4_25088[(alu102+45)];
var val108 = data4_25088[(alu102+46)];
var val109 = data4_25088[(alu102+47)];
var val110 = data4_25088[(alu102+48)];
var alu103 = (1/sqrt((val62+9.999999747378752e-06f)));
data0_25088[alu101] = (((acc0[0]+val58+val59)-val60)*val61*alu103);
data0_25088[(alu101+512)] = (((acc0[7]+val58+val63)-val60)*val61*alu103);
data0_25088[(alu101+1024)] = (((acc0[14]+val58+val64)-val60)*val61*alu103);
data0_25088[(alu101+1536)] = (((acc0[21]+val58+val65)-val60)*val61*alu103);
data0_25088[(alu101+2048)] = (((acc0[28]+val58+val66)-val60)*val61*alu103);
data0_25088[(alu101+2560)] = (((acc0[35]+val58+val67)-val60)*val61*alu103);
data0_25088[(alu101+3072)] = (((acc0[42]+val58+val68)-val60)*val61*alu103);
data0_25088[(alu101+3584)] = (((acc0[1]+val58+val69)-val60)*val61*alu103);
data0_25088[(alu101+4096)] = (((acc0[8]+val58+val70)-val60)*val61*alu103);
data0_25088[(alu101+4608)] = (((acc0[15]+val58+val71)-val60)*val61*alu103);
data0_25088[(alu101+5120)] = (((acc0[22]+val58+val72)-val60)*val61*alu103);
data0_25088[(alu101+5632)] = (((acc0[29]+val58+val73)-val60)*val61*alu103);
data0_25088[(alu101+6144)] = (((acc0[36]+val58+val74)-val60)*val61*alu103);
data0_25088[(alu101+6656)] = (((acc0[43]+val58+val75)-val60)*val61*alu103);
data0_25088[(alu101+7168)] = (((acc0[2]+val58+val76)-val60)*val61*alu103);
data0_25088[(alu101+7680)] = (((acc0[9]+val58+val77)-val60)*val61*alu103);
data0_25088[(alu101+8192)] = (((acc0[16]+val58+val78)-val60)*val61*alu103);
data0_25088[(alu101+8704)] = (((acc0[23]+val58+val79)-val60)*val61*alu103);
data0_25088[(alu101+9216)] = (((acc0[30]+val58+val80)-val60)*val61*alu103);
data0_25088[(alu101+9728)] = (((acc0[37]+val58+val81)-val60)*val61*alu103);
data0_25088[(alu101+10240)] = (((acc0[44]+val58+val82)-val60)*val61*alu103);
data0_25088[(alu101+10752)] = (((acc0[3]+val58+val83)-val60)*val61*alu103);
data0_25088[(alu101+11264)] = (((acc0[10]+val58+val84)-val60)*val61*alu103);
data0_25088[(alu101+11776)] = (((acc0[17]+val58+val85)-val60)*val61*alu103);
data0_25088[(alu101+12288)] = (((acc0[24]+val58+val86)-val60)*val61*alu103);
data0_25088[(alu101+12800)] = (((acc0[31]+val58+val87)-val60)*val61*alu103);
data0_25088[(alu101+13312)] = (((acc0[38]+val58+val88)-val60)*val61*alu103);
data0_25088[(alu101+13824)] = (((acc0[45]+val58+val89)-val60)*val61*alu103);
data0_25088[(alu101+14336)] = (((acc0[4]+val58+val90)-val60)*val61*alu103);
data0_25088[(alu101+14848)] = (((acc0[11]+val58+val91)-val60)*val61*alu103);
data0_25088[(alu101+15360)] = (((acc0[18]+val58+val92)-val60)*val61*alu103);
data0_25088[(alu101+15872)] = (((acc0[25]+val58+val93)-val60)*val61*alu103);
data0_25088[(alu101+16384)] = (((acc0[32]+val58+val94)-val60)*val61*alu103);
data0_25088[(alu101+16896)] = (((acc0[39]+val58+val95)-val60)*val61*alu103);
data0_25088[(alu101+17408)] = (((acc0[46]+val58+val96)-val60)*val61*alu103);
data0_25088[(alu101+17920)] = (((acc0[5]+val58+val97)-val60)*val61*alu103);
data0_25088[(alu101+18432)] = (((acc0[12]+val58+val98)-val60)*val61*alu103);
data0_25088[(alu101+18944)] = (((acc0[19]+val58+val99)-val60)*val61*alu103);
data0_25088[(alu101+19456)] = (((acc0[26]+val58+val100)-val60)*val61*alu103);
data0_25088[(alu101+19968)] = (((acc0[33]+val58+val101)-val60)*val61*alu103);
data0_25088[(alu101+20480)] = (((acc0[40]+val58+val102)-val60)*val61*alu103);
data0_25088[(alu101+20992)] = (((acc0[47]+val58+val103)-val60)*val61*alu103);
data0_25088[(alu101+21504)] = (((acc0[6]+val58+val104)-val60)*val61*alu103);
data0_25088[(alu101+22016)] = (((acc0[13]+val58+val105)-val60)*val61*alu103);
data0_25088[(alu101+22528)] = (((acc0[20]+val58+val106)-val60)*val61*alu103);
data0_25088[(alu101+23040)] = (((acc0[27]+val58+val107)-val60)*val61*alu103);
data0_25088[(alu101+23552)] = (((acc0[34]+val58+val108)-val60)*val61*alu103);
data0_25088[(alu101+24064)] = (((acc0[41]+val58+val109)-val60)*val61*alu103);
data0_25088[(alu101+24576)] = (((acc0[48]+val58+val110)-val60)*val61*alu103);
}`;
const E_4_49_32_4n1 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
@group(0) @binding(1)var<storage,read_write>data0_25088:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_512:array<f32>;
@compute @workgroup_size(32) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var gidx0 = i32(gindex.x); /* 49 */
var gidx1 = i32(gindex.y); /* 4 */
var lidx0 = i32(lindex.x); /* 32 */
var alu0 = (bitcast<i32>((bitcast<u32>(gidx1)<<7u))+bitcast<i32>((bitcast<u32>(lidx0)<<2u)));
var alu1 = (alu0+bitcast<i32>((bitcast<u32>(gidx0)<<9u)));
var val0 = data1_25088[alu1];
var val1 = data2_512[alu0];
var val2 = data1_25088[(alu1+1)];
var val3 = data2_512[(alu0+1)];
var val4 = data1_25088[(alu1+2)];
var val5 = data2_512[(alu0+2)];
var val6 = data1_25088[(alu1+3)];
var val7 = data2_512[(alu0+3)];
var alu2 = (gidx0+(gidx1*6272)+(lidx0*196));
data0_25088[alu2] = (val0+val1);
data0_25088[(alu2+49)] = (val2+val3);
data0_25088[(alu2+98)] = (val4+val5);
data0_25088[(alu2+147)] = (val6+val7);
}`;
const r_32_8_4_4_3136 = `fn nan() -> f32 { let bits = 0xffffffffu; return bitcast<f32>(bits); }
@group(0) @binding(0)
var<uniform> INFINITY : f32;
var<workgroup> temp0: array<f32,128>;
@group(0) @binding(1)var<storage,read_write>data0_512:array<f32>;
@group(0) @binding(2)var<storage,read_write>data1_25088:array<f32>;
@group(0) @binding(3)var<storage,read_write>data2_12845056:array<f32>;
@group(0) @binding(4)var<storage,read_write>data3_512:array<f32>;
@group(0) @binding(5)var<storage,read_write>data4_512:array<f32>;
@group(0) @binding(6)var<storage,read_write>data5_512:array<f32>;
@group(0) @binding(7)var<storage,read_write>data6_512:array<f32>;
@group(0) @binding(8)var<storage,read_write>data7_512:array<f32>;
@compute @workgroup_size(8,4) fn main(@builtin(workgroup_id) gindex: vec3<u32>,@builtin(local_invocation_id) lindex: vec3<u32>) {
var acc0: array<f32,4>;
var acc1: array<f32,4>;
var gidx0 = i32(gindex.x); /* 32 */
var lidx0 = i32(lindex.x); /* 8 */
var lidx1 = i32(lindex.y); /* 4 */
acc0[0] = 0.0f;
acc0[1] = 0.0f;
acc0[2] = 0.0f;
acc0[3] = 0.0f;
for (var Ridx0 = 0; Ridx0 < 3136; Ridx0++) {
var alu4 = (lidx0+bitcast<i32>((bitcast<u32>(Ridx0)<<3u)));
var val0 = data1_25088[alu4];
var alu5 = (alu4+(gidx0*401408)+(lidx1*25088));
var val1 = data2_12845056[alu5];
var val2 = data2_12845056[(alu5+100352)];
var val3 = data2_12845056[(alu5+200704)];
var val4 = data2_12845056[(alu5+301056)];
acc0[0] = (acc0[0]+(val0*val1));
acc0[1] = (acc0[1]+(val0*val2));
acc0[2] = (acc0[2]+(val0*val3));
acc0[3] = (acc0[3]+(val0*val4));
}
var cast0 = bitcast<i32>((bitcast<u32>(lidx1)<<5u));
var alu11 = (bitcast<i32>((bitcast<u32>(lidx0)<<2u))+cast0);
temp0[alu11] = acc0[0];
temp0[(alu11+1)] = acc0[1];
temp0[(alu11+2)] = acc0[2];
temp0[(alu11+3)] = acc0[3];
workgroupBarrier();
acc1[0] = 0.0f;
acc1[1] = 0.0f;
acc1[2] = 0.0f;
acc1[3] = 0.0f;
for (var Ridx102 = 0; Ridx102 < 8; Ridx102++) {
var alu21 = (cast0+bitcast<i32>((bitcast<u32>(Ridx102)<<2u)));
var val5 = temp0[alu21];
var val6 = temp0[(alu21+1)];
var val7 = temp0[(alu21+2)];
var val8 = temp0[(alu21+3)];
acc1[0] = (acc1[0]+val5);
acc1[1] = (acc1[1]+val6);
acc1[2] = (acc1[2]+val7);
acc1[3] = (acc1[3]+val8);
}
var alu27 = (lidx1+bitcast<i32>((bitcast<u32>(gidx0)<<4u)));
var val9 = data3_512[alu27];
var alu28 = (alu27+4);
var val10 = data3_512[alu28];
var alu29 = (alu27+8);
var val11 = data3_512[alu29];
var val12 = data4_512[alu27];
var val13 = data4_512[alu28];
var val14 = data4_512[alu29];
var val15 = data5_512[alu27];
var val16 = data5_512[alu28];
var val17 = data6_512[alu27];
var val18 = data6_512[alu28];
var val19 = data7_512[alu27];
var val20 = data7_512[alu28];
var val21 = data5_512[alu29];
var val22 = data6_512[alu29];
var val23 = data7_512[alu29];
var alu30 = (alu27+12);
var val24 = data3_512[alu30];
var val25 = data4_512[alu30];
var val26 = data5_512[alu30];
var val27 = data6_512[alu30];
var val28 = data7_512[alu30];
var alu31 = (lidx0==0);
if (alu31) {
data0_512[alu27] = ((((acc1[0]+val9)-val12)*val15*(1/sqrt((val17+9.999999747378752e-06f))))+val19);
}
if (alu31) {
data0_512[alu28] = ((((acc1[1]+val10)-val13)*val16*(1/sqrt((val18+9.999999747378752e-06f))))+val20);
}
if (alu31) {
data0_512[alu29] = ((((acc1[2]+val11)-val14)*val21*(1/sqrt((val22+9.999999747378752e-06f))))+val23);
}
if (alu31) {
data0_512[alu30] = ((((acc1[3]+val24)-val25)*val26*(1/sqrt((val27+9.999999747378752e-06f))))+val28);
}
}`;
const setupNet = async (device, safetensor) => {
const metadata = getTensorMetadata(safetensor);
const infinityBuf = createInfinityUniformBuf(device);
const layouts=[device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 8, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]}),device.createBindGroupLayout({entries: [{binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' }}, {binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 7, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },{binding: 8, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } }]})]
const buf_0 = createEmptyBuf(device, 3211264);;
const input0 = createEmptyBuf(device, 150528);;
const buf_1 = createWeightBuf(device, 6912, getTensorBuffer(safetensor, metadata['runner.graph_values.685']));
const buf_2 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.686']));
const buf_3 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.843']));
const buf_4 = createEmptyBuf(device, 3211264);;
const buf_5 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.0.bn1.running_mean']));
const buf_6 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.0.bn1.weight']));
const buf_7 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.0.bn1.running_var']));
const buf_8 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.0.bn1.bias']));
const buf_9 = createEmptyBuf(device, 3211264);;
const buf_10 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.688']));
const buf_11 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.689']));
const buf_12 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.844']));
const buf_13 = createEmptyBuf(device, 802816);;
const buf_14 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.691']));
const buf_15 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.692']));
const buf_16 = createWeightBuf(device, 16384, getTensorBuffer(safetensor, metadata['runner.graph_values.694']));
const buf_17 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.695']));
const buf_18 = createEmptyBuf(device, 802816);;
const buf_19 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.1.bn1.running_mean']));
const buf_20 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.1.bn1.weight']));
const buf_21 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.1.bn1.running_var']));
const buf_22 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.1.bn1.bias']));
const buf_23 = createEmptyBuf(device, 802816);;
const buf_24 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.697']));
const buf_25 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.698']));
const buf_26 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.845']));
const buf_27 = createEmptyBuf(device, 802816);;
const buf_28 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.700']));
const buf_29 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.701']));
const buf_30 = createEmptyBuf(device, 802816);;
const buf_31 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.2.bn1.running_mean']));
const buf_32 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.2.bn1.weight']));
const buf_33 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.2.bn1.running_var']));
const buf_34 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer1.2.bn1.bias']));
const buf_35 = createEmptyBuf(device, 802816);;
const buf_36 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.703']));
const buf_37 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.704']));
const buf_38 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.846']));
const buf_39 = createEmptyBuf(device, 802816);;
const buf_40 = createWeightBuf(device, 147456, getTensorBuffer(safetensor, metadata['runner.graph_values.706']));
const buf_41 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.707']));
const buf_42 = createEmptyBuf(device, 802816);;
const buf_43 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.0.bn1.running_mean']));
const buf_44 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.0.bn1.weight']));
const buf_45 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.0.bn1.running_var']));
const buf_46 = createWeightBuf(device, 256, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.0.bn1.bias']));
const buf_47 = createEmptyBuf(device, 1605632);;
const buf_48 = createWeightBuf(device, 294912, getTensorBuffer(safetensor, metadata['runner.graph_values.709']));
const buf_49 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.710']));
const buf_50 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.847']));
const buf_51 = createEmptyBuf(device, 401408);;
const buf_52 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.712']));
const buf_53 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.713']));
const buf_54 = createWeightBuf(device, 32768, getTensorBuffer(safetensor, metadata['runner.graph_values.715']));
const buf_55 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.716']));
const buf_56 = createEmptyBuf(device, 401408);;
const buf_57 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.1.bn1.running_mean']));
const buf_58 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.1.bn1.weight']));
const buf_59 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.1.bn1.running_var']));
const buf_60 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.1.bn1.bias']));
const buf_61 = createEmptyBuf(device, 401408);;
const buf_62 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.718']));
const buf_63 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.719']));
const buf_64 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.848']));
const buf_65 = createEmptyBuf(device, 401408);;
const buf_66 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.721']));
const buf_67 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.722']));
const buf_68 = createEmptyBuf(device, 401408);;
const buf_69 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.2.bn1.running_mean']));
const buf_70 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.2.bn1.weight']));
const buf_71 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.2.bn1.running_var']));
const buf_72 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.2.bn1.bias']));
const buf_73 = createEmptyBuf(device, 401408);;
const buf_74 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.724']));
const buf_75 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.725']));
const buf_76 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.849']));
const buf_77 = createEmptyBuf(device, 401408);;
const buf_78 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.727']));
const buf_79 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.728']));
const buf_80 = createEmptyBuf(device, 401408);;
const buf_81 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.3.bn1.running_mean']));
const buf_82 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.3.bn1.weight']));
const buf_83 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.3.bn1.running_var']));
const buf_84 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer2.3.bn1.bias']));
const buf_85 = createEmptyBuf(device, 401408);;
const buf_86 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.730']));
const buf_87 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.731']));
const buf_88 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.850']));
const buf_89 = createEmptyBuf(device, 401408);;
const buf_90 = createWeightBuf(device, 589824, getTensorBuffer(safetensor, metadata['runner.graph_values.733']));
const buf_91 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.734']));
const buf_92 = createEmptyBuf(device, 401408);;
const buf_93 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.0.bn1.running_mean']));
const buf_94 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.0.bn1.weight']));
const buf_95 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.0.bn1.running_var']));
const buf_96 = createWeightBuf(device, 512, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.0.bn1.bias']));
const buf_97 = createEmptyBuf(device, 802816);;
const buf_98 = createWeightBuf(device, 1179648, getTensorBuffer(safetensor, metadata['runner.graph_values.736']));
const buf_99 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.737']));
const buf_100 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.851']));
const buf_101 = createEmptyBuf(device, 200704);;
const buf_102 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.739']));
const buf_103 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.740']));
const buf_104 = createWeightBuf(device, 131072, getTensorBuffer(safetensor, metadata['runner.graph_values.742']));
const buf_105 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.743']));
const buf_106 = createEmptyBuf(device, 200704);;
const buf_107 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.1.bn1.running_mean']));
const buf_108 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.1.bn1.weight']));
const buf_109 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.1.bn1.running_var']));
const buf_110 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.1.bn1.bias']));
const buf_111 = createEmptyBuf(device, 200704);;
const buf_112 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.745']));
const buf_113 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.746']));
const buf_114 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.852']));
const buf_115 = createEmptyBuf(device, 200704);;
const buf_116 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.748']));
const buf_117 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.749']));
const buf_118 = createEmptyBuf(device, 200704);;
const buf_119 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.2.bn1.running_mean']));
const buf_120 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.2.bn1.weight']));
const buf_121 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.2.bn1.running_var']));
const buf_122 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.2.bn1.bias']));
const buf_123 = createEmptyBuf(device, 200704);;
const buf_124 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.751']));
const buf_125 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.752']));
const buf_126 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.853']));
const buf_127 = createEmptyBuf(device, 200704);;
const buf_128 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.754']));
const buf_129 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.755']));
const buf_130 = createEmptyBuf(device, 200704);;
const buf_131 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.3.bn1.running_mean']));
const buf_132 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.3.bn1.weight']));
const buf_133 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.3.bn1.running_var']));
const buf_134 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.3.bn1.bias']));
const buf_135 = createEmptyBuf(device, 200704);;
const buf_136 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.757']));
const buf_137 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.758']));
const buf_138 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.854']));
const buf_139 = createEmptyBuf(device, 200704);;
const buf_140 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.760']));
const buf_141 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.761']));
const buf_142 = createEmptyBuf(device, 200704);;
const buf_143 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.4.bn1.running_mean']));
const buf_144 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.4.bn1.weight']));
const buf_145 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.4.bn1.running_var']));
const buf_146 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.4.bn1.bias']));
const buf_147 = createEmptyBuf(device, 200704);;
const buf_148 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.763']));
const buf_149 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.764']));
const buf_150 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.855']));
const buf_151 = createEmptyBuf(device, 200704);;
const buf_152 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.766']));
const buf_153 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.767']));
const buf_154 = createEmptyBuf(device, 200704);;
const buf_155 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.5.bn1.running_mean']));
const buf_156 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.5.bn1.weight']));
const buf_157 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.5.bn1.running_var']));
const buf_158 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.5.bn1.bias']));
const buf_159 = createEmptyBuf(device, 200704);;
const buf_160 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.769']));
const buf_161 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.770']));
const buf_162 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.856']));
const buf_163 = createEmptyBuf(device, 200704);;
const buf_164 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.772']));
const buf_165 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.773']));
const buf_166 = createEmptyBuf(device, 200704);;
const buf_167 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.6.bn1.running_mean']));
const buf_168 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.6.bn1.weight']));
const buf_169 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.6.bn1.running_var']));
const buf_170 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.6.bn1.bias']));
const buf_171 = createEmptyBuf(device, 200704);;
const buf_172 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.775']));
const buf_173 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.776']));
const buf_174 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.857']));
const buf_175 = createEmptyBuf(device, 200704);;
const buf_176 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.778']));
const buf_177 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.779']));
const buf_178 = createEmptyBuf(device, 200704);;
const buf_179 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.7.bn1.running_mean']));
const buf_180 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.7.bn1.weight']));
const buf_181 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.7.bn1.running_var']));
const buf_182 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.7.bn1.bias']));
const buf_183 = createEmptyBuf(device, 200704);;
const buf_184 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.781']));
const buf_185 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.782']));
const buf_186 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.858']));
const buf_187 = createEmptyBuf(device, 200704);;
const buf_188 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.784']));
const buf_189 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.785']));
const buf_190 = createEmptyBuf(device, 200704);;
const buf_191 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.8.bn1.running_mean']));
const buf_192 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.8.bn1.weight']));
const buf_193 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.8.bn1.running_var']));
const buf_194 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.8.bn1.bias']));
const buf_195 = createEmptyBuf(device, 200704);;
const buf_196 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.787']));
const buf_197 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.788']));
const buf_198 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.859']));
const buf_199 = createEmptyBuf(device, 200704);;
const buf_200 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.790']));
const buf_201 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.791']));
const buf_202 = createEmptyBuf(device, 200704);;
const buf_203 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.9.bn1.running_mean']));
const buf_204 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.9.bn1.weight']));
const buf_205 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.9.bn1.running_var']));
const buf_206 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.9.bn1.bias']));
const buf_207 = createEmptyBuf(device, 200704);;
const buf_208 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.793']));
const buf_209 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.794']));
const buf_210 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.860']));
const buf_211 = createEmptyBuf(device, 200704);;
const buf_212 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.796']));
const buf_213 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.797']));
const buf_214 = createEmptyBuf(device, 200704);;
const buf_215 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.10.bn1.running_mean']));
const buf_216 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.10.bn1.weight']));
const buf_217 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.10.bn1.running_var']));
const buf_218 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.10.bn1.bias']));
const buf_219 = createEmptyBuf(device, 200704);;
const buf_220 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.799']));
const buf_221 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.800']));
const buf_222 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.861']));
const buf_223 = createEmptyBuf(device, 200704);;
const buf_224 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.802']));
const buf_225 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.803']));
const buf_226 = createEmptyBuf(device, 200704);;
const buf_227 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.11.bn1.running_mean']));
const buf_228 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.11.bn1.weight']));
const buf_229 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.11.bn1.running_var']));
const buf_230 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.11.bn1.bias']));
const buf_231 = createEmptyBuf(device, 200704);;
const buf_232 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.805']));
const buf_233 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.806']));
const buf_234 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.862']));
const buf_235 = createEmptyBuf(device, 200704);;
const buf_236 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.808']));
const buf_237 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.809']));
const buf_238 = createEmptyBuf(device, 200704);;
const buf_239 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.12.bn1.running_mean']));
const buf_240 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.12.bn1.weight']));
const buf_241 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.12.bn1.running_var']));
const buf_242 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.12.bn1.bias']));
const buf_243 = createEmptyBuf(device, 200704);;
const buf_244 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.811']));
const buf_245 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.812']));
const buf_246 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.863']));
const buf_247 = createEmptyBuf(device, 200704);;
const buf_248 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.814']));
const buf_249 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.815']));
const buf_250 = createEmptyBuf(device, 200704);;
const buf_251 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.13.bn1.running_mean']));
const buf_252 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.13.bn1.weight']));
const buf_253 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.13.bn1.running_var']));
const buf_254 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer3.13.bn1.bias']));
const buf_255 = createEmptyBuf(device, 200704);;
const buf_256 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.817']));
const buf_257 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.818']));
const buf_258 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.864']));
const buf_259 = createEmptyBuf(device, 200704);;
const buf_260 = createWeightBuf(device, 2359296, getTensorBuffer(safetensor, metadata['runner.graph_values.820']));
const buf_261 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.821']));
const buf_262 = createEmptyBuf(device, 200704);;
const buf_263 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.0.bn1.running_mean']));
const buf_264 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.0.bn1.weight']));
const buf_265 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.0.bn1.running_var']));
const buf_266 = createWeightBuf(device, 1024, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.0.bn1.bias']));
const buf_267 = createEmptyBuf(device, 401408);;
const buf_268 = createWeightBuf(device, 4718592, getTensorBuffer(safetensor, metadata['runner.graph_values.823']));
const buf_269 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.824']));
const buf_270 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.865']));
const buf_271 = createEmptyBuf(device, 100352);;
const buf_272 = createWeightBuf(device, 9437184, getTensorBuffer(safetensor, metadata['runner.graph_values.826']));
const buf_273 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.827']));
const buf_274 = createWeightBuf(device, 524288, getTensorBuffer(safetensor, metadata['runner.graph_values.829']));
const buf_275 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.830']));
const buf_276 = createEmptyBuf(device, 100352);;
const buf_277 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.1.bn1.running_mean']));
const buf_278 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.1.bn1.weight']));
const buf_279 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.1.bn1.running_var']));
const buf_280 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.1.bn1.bias']));
const buf_281 = createEmptyBuf(device, 100352);;
const buf_282 = createWeightBuf(device, 9437184, getTensorBuffer(safetensor, metadata['runner.graph_values.832']));
const buf_283 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.833']));
const buf_284 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.866']));
const buf_285 = createEmptyBuf(device, 100352);;
const buf_286 = createWeightBuf(device, 9437184, getTensorBuffer(safetensor, metadata['runner.graph_values.835']));
const buf_287 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.836']));
const buf_288 = createEmptyBuf(device, 100352);;
const buf_289 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.2.bn1.running_mean']));
const buf_290 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.2.bn1.weight']));
const buf_291 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.2.bn1.running_var']));
const buf_292 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.layer4.2.bn1.bias']));
const buf_293 = createEmptyBuf(device, 100352);;
const buf_294 = createWeightBuf(device, 9437184, getTensorBuffer(safetensor, metadata['runner.graph_values.838']));
const buf_295 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.839']));
const buf_296 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.867']));
const buf_297 = createEmptyBuf(device, 100352);;
const buf_298 = createWeightBuf(device, 9437184, getTensorBuffer(safetensor, metadata['runner.graph_values.841']));
const buf_299 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.842']));
const buf_300 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.bn2.running_mean']));
const buf_301 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.bn2.weight']));
const buf_302 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.bn2.running_var']));
const buf_303 = createEmptyBuf(device, 100352);;
const buf_304 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.bn2.bias']));
const output0 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.683']));
const buf_305 = createWeightBuf(device, 51380224, getTensorBuffer(safetensor, metadata['runner.graph_values.fc.weight']));
const buf_306 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.fc.bias']));
const buf_307 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.features.running_mean']));
const buf_308 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.features.weight']));
const buf_309 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.features.running_var']));
const buf_310 = createWeightBuf(device, 2048, getTensorBuffer(safetensor, metadata['runner.graph_values.features.bias']));
const gpuWriteBuffer0 = device.createBuffer({size:input0.size, usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE });
const gpuReadBuffer0 = device.createBuffer({size:output0.size, usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ });
const kernels = [r_8_7_7_2_16_4_4_4_3_3_3, E_8_196_8_16_4, r_8_7_7_2_16_4_4_4_64_3_3, r_2_7_7_8_8_2_4_4_64_3_3_16_4, E_8_49_8_16_4, r_2_7_7_8_8_2_4_4_64_3_3, r_2_7_7_8_8_2_4_4_64_3_3n1, E_8_49_8_16_4, r_2_7_7_8_8_2_4_4_64_3_3, r_2_7_7_8_8_2_4_4_64_3_3n1, E_8_49_8_16_4, r_4_7_7_8_8_2_4_4_64_3_3, r_7_7_32_4_4_4_128_3_3_16_4, E_4_49_32_4_4, r_7_7_32_4_4_4_128_3_3, r_7_7_32_4_4_4_128_3_3n1, E_4_49_32_4_4, r_7_7_32_4_4_4_128_3_3, r_7_7_32_4_4_4_128_3_3n1, E_4_49_32_4_4, r_7_7_32_4_4_4_128_3_3, r_7_7_32_4_4_4_128_3_3n1, E_4_49_32_4_4, r_2_7_7_32_4_4_4_128_3_3, r_2_7_7_32_2_2_4_256_3_3_32_4, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_2_7_7_32_2_2_4_256_3_3, r_2_7_7_32_2_2_4_256_3_3n1, E_8_49_32_4, r_4_7_7_32_2_2_4_256_3_3, r_16_32_7_7_512_3_3_64_4, E_4_49_32_4, r_16_32_7_7_512_3_3, r_16_32_7_7_512_3_3n1, E_4_49_32_4, r_16_32_7_7_512_3_3, r_16_32_7_7_512_3_3n2, E_4_49_32_4n1, r_32_8_4_4_3136];
const pipelines = await Promise.all(kernels.map(async (name, i) => {
return await device.createComputePipelineAsync({
layout: device.createPipelineLayout({
bindGroupLayouts: [layouts[i]],
}),
compute: {
module: device.createShaderModule({
code: name,
}),
entryPoint: "main",
},
});
}))
return async (_input0) => {
const commandEncoder = device.createCommandEncoder();
await gpuWriteBuffer0.mapAsync(GPUMapMode.WRITE);
new Float32Array(gpuWriteBuffer0.getMappedRange()).set(_input0);
gpuWriteBuffer0.unmap();
commandEncoder.copyBufferToBuffer(gpuWriteBuffer0, 0, input0, 0, gpuWriteBuffer0.size);
addComputePass(device, commandEncoder, pipelines[0], layouts[0], infinityBuf, [buf_0, input0, buf_1, buf_2, buf_3], [7, 7, 8]);
addComputePass(device, commandEncoder, pipelines[1], layouts[1], infinityBuf, [buf_4, buf_0, buf_5, buf_6, buf_7, buf_8], [196, 8, 1]);
addComputePass(device, commandEncoder, pipelines[2], layouts[2], infinityBuf, [buf_9, buf_4, buf_10, buf_11, buf_12], [7, 7, 8]);
addComputePass(device, commandEncoder, pipelines[3], layouts[3], infinityBuf, [buf_13, buf_9, buf_14, buf_15, buf_0, buf_16, buf_17], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[4], layouts[4], infinityBuf, [buf_18, buf_13, buf_19, buf_20, buf_21, buf_22], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[5], layouts[5], infinityBuf, [buf_23, buf_18, buf_24, buf_25, buf_26], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[6], layouts[6], infinityBuf, [buf_27, buf_23, buf_28, buf_29, buf_13], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[7], layouts[7], infinityBuf, [buf_30, buf_27, buf_31, buf_32, buf_33, buf_34], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[8], layouts[8], infinityBuf, [buf_35, buf_30, buf_36, buf_37, buf_38], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[9], layouts[9], infinityBuf, [buf_39, buf_35, buf_40, buf_41, buf_27], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[10], layouts[10], infinityBuf, [buf_42, buf_39, buf_43, buf_44, buf_45, buf_46], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[11], layouts[11], infinityBuf, [buf_47, buf_42, buf_48, buf_49, buf_50], [7, 7, 4]);
addComputePass(device, commandEncoder, pipelines[12], layouts[12], infinityBuf, [buf_51, buf_47, buf_52, buf_53, buf_39, buf_54, buf_55], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[13], layouts[13], infinityBuf, [buf_56, buf_51, buf_57, buf_58, buf_59, buf_60], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[14], layouts[14], infinityBuf, [buf_61, buf_56, buf_62, buf_63, buf_64], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[15], layouts[15], infinityBuf, [buf_65, buf_61, buf_66, buf_67, buf_51], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[16], layouts[16], infinityBuf, [buf_68, buf_65, buf_69, buf_70, buf_71, buf_72], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[17], layouts[17], infinityBuf, [buf_73, buf_68, buf_74, buf_75, buf_76], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[18], layouts[18], infinityBuf, [buf_77, buf_73, buf_78, buf_79, buf_65], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[19], layouts[19], infinityBuf, [buf_80, buf_77, buf_81, buf_82, buf_83, buf_84], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[20], layouts[20], infinityBuf, [buf_85, buf_80, buf_86, buf_87, buf_88], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[21], layouts[21], infinityBuf, [buf_89, buf_85, buf_90, buf_91, buf_77], [7, 7, 1]);
addComputePass(device, commandEncoder, pipelines[22], layouts[22], infinityBuf, [buf_92, buf_89, buf_93, buf_94, buf_95, buf_96], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[23], layouts[23], infinityBuf, [buf_97, buf_92, buf_98, buf_99, buf_100], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[24], layouts[24], infinityBuf, [buf_101, buf_97, buf_102, buf_103, buf_89, buf_104, buf_105], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[25], layouts[25], infinityBuf, [buf_106, buf_101, buf_107, buf_108, buf_109, buf_110], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[26], layouts[26], infinityBuf, [buf_111, buf_106, buf_112, buf_113, buf_114], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[27], layouts[27], infinityBuf, [buf_115, buf_111, buf_116, buf_117, buf_101], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[28], layouts[28], infinityBuf, [buf_118, buf_115, buf_119, buf_120, buf_121, buf_122], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[29], layouts[29], infinityBuf, [buf_123, buf_118, buf_124, buf_125, buf_126], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[30], layouts[30], infinityBuf, [buf_127, buf_123, buf_128, buf_129, buf_115], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[31], layouts[31], infinityBuf, [buf_130, buf_127, buf_131, buf_132, buf_133, buf_134], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[32], layouts[32], infinityBuf, [buf_135, buf_130, buf_136, buf_137, buf_138], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[33], layouts[33], infinityBuf, [buf_139, buf_135, buf_140, buf_141, buf_127], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[34], layouts[34], infinityBuf, [buf_142, buf_139, buf_143, buf_144, buf_145, buf_146], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[35], layouts[35], infinityBuf, [buf_147, buf_142, buf_148, buf_149, buf_150], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[36], layouts[36], infinityBuf, [buf_151, buf_147, buf_152, buf_153, buf_139], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[37], layouts[37], infinityBuf, [buf_154, buf_151, buf_155, buf_156, buf_157, buf_158], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[38], layouts[38], infinityBuf, [buf_159, buf_154, buf_160, buf_161, buf_162], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[39], layouts[39], infinityBuf, [buf_163, buf_159, buf_164, buf_165, buf_151], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[40], layouts[40], infinityBuf, [buf_166, buf_163, buf_167, buf_168, buf_169, buf_170], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[41], layouts[41], infinityBuf, [buf_171, buf_166, buf_172, buf_173, buf_174], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[42], layouts[42], infinityBuf, [buf_175, buf_171, buf_176, buf_177, buf_163], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[43], layouts[43], infinityBuf, [buf_178, buf_175, buf_179, buf_180, buf_181, buf_182], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[44], layouts[44], infinityBuf, [buf_183, buf_178, buf_184, buf_185, buf_186], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[45], layouts[45], infinityBuf, [buf_187, buf_183, buf_188, buf_189, buf_175], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[46], layouts[46], infinityBuf, [buf_190, buf_187, buf_191, buf_192, buf_193, buf_194], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[47], layouts[47], infinityBuf, [buf_195, buf_190, buf_196, buf_197, buf_198], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[48], layouts[48], infinityBuf, [buf_199, buf_195, buf_200, buf_201, buf_187], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[49], layouts[49], infinityBuf, [buf_202, buf_199, buf_203, buf_204, buf_205, buf_206], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[50], layouts[50], infinityBuf, [buf_207, buf_202, buf_208, buf_209, buf_210], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[51], layouts[51], infinityBuf, [buf_211, buf_207, buf_212, buf_213, buf_199], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[52], layouts[52], infinityBuf, [buf_214, buf_211, buf_215, buf_216, buf_217, buf_218], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[53], layouts[53], infinityBuf, [buf_219, buf_214, buf_220, buf_221, buf_222], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[54], layouts[54], infinityBuf, [buf_223, buf_219, buf_224, buf_225, buf_211], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[55], layouts[55], infinityBuf, [buf_226, buf_223, buf_227, buf_228, buf_229, buf_230], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[56], layouts[56], infinityBuf, [buf_231, buf_226, buf_232, buf_233, buf_234], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[57], layouts[57], infinityBuf, [buf_235, buf_231, buf_236, buf_237, buf_223], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[58], layouts[58], infinityBuf, [buf_238, buf_235, buf_239, buf_240, buf_241, buf_242], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[59], layouts[59], infinityBuf, [buf_243, buf_238, buf_244, buf_245, buf_246], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[60], layouts[60], infinityBuf, [buf_247, buf_243, buf_248, buf_249, buf_235], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[61], layouts[61], infinityBuf, [buf_250, buf_247, buf_251, buf_252, buf_253, buf_254], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[62], layouts[62], infinityBuf, [buf_255, buf_250, buf_256, buf_257, buf_258], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[63], layouts[63], infinityBuf, [buf_259, buf_255, buf_260, buf_261, buf_247], [7, 7, 2]);
addComputePass(device, commandEncoder, pipelines[64], layouts[64], infinityBuf, [buf_262, buf_259, buf_263, buf_264, buf_265, buf_266], [49, 8, 1]);
addComputePass(device, commandEncoder, pipelines[65], layouts[65], infinityBuf, [buf_267, buf_262, buf_268, buf_269, buf_270], [7, 7, 4]);
addComputePass(device, commandEncoder, pipelines[66], layouts[66], infinityBuf, [buf_271, buf_267, buf_272, buf_273, buf_259, buf_274, buf_275], [16, 1, 1]);
addComputePass(device, commandEncoder, pipelines[67], layouts[67], infinityBuf, [buf_276, buf_271, buf_277, buf_278, buf_279, buf_280], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[68], layouts[68], infinityBuf, [buf_281, buf_276, buf_282, buf_283, buf_284], [16, 1, 1]);
addComputePass(device, commandEncoder, pipelines[69], layouts[69], infinityBuf, [buf_285, buf_281, buf_286, buf_287, buf_271], [16, 1, 1]);
addComputePass(device, commandEncoder, pipelines[70], layouts[70], infinityBuf, [buf_288, buf_285, buf_289, buf_290, buf_291, buf_292], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[71], layouts[71], infinityBuf, [buf_293, buf_288, buf_294, buf_295, buf_296], [16, 1, 1]);
addComputePass(device, commandEncoder, pipelines[72], layouts[72], infinityBuf, [buf_297, buf_293, buf_298, buf_299, buf_285, buf_300, buf_301, buf_302], [16, 1, 1]);
addComputePass(device, commandEncoder, pipelines[73], layouts[73], infinityBuf, [buf_303, buf_297, buf_304], [49, 4, 1]);
addComputePass(device, commandEncoder, pipelines[74], layouts[74], infinityBuf, [output0, buf_303, buf_305, buf_306, buf_307, buf_308, buf_309, buf_310], [32, 1, 1]);
commandEncoder.copyBufferToBuffer(output0, 0, gpuReadBuffer0, 0, output0.size);
const gpuCommands = commandEncoder.finish();
device.queue.submit([gpuCommands]);
await gpuReadBuffer0.mapAsync(GPUMapMode.READ);
const resultBuffer0 = new Float32Array(gpuReadBuffer0.size/4);
resultBuffer0.set(new Float32Array(gpuReadBuffer0.getMappedRange()));
gpuReadBuffer0.unmap();
return [resultBuffer0];
}
}
const load = async (device, weight_path) => { return await fetch(weight_path).then(x => x.arrayBuffer()).then(x => setupNet(device, new Uint8Array(x))); }
return { load, setupNet };
})();
export default arcface;