struct buf0 { injectionSwitch : vec2; } struct buf1 { resolution : vec2; } var data : array; var temp : array; @group(0) @binding(0) var x_28 : buf0; var gl_FragCoord : vec4; var x_GLF_color : vec4; @group(0) @binding(1) var x_32 : buf1; fn merge_i1_i1_i1_(from : ptr, mid : ptr, to : ptr) { var k : i32; var i : i32; var j : i32; var i_1 : i32; let x_256 : i32 = *(from); k = x_256; let x_257 : i32 = *(from); i = x_257; let x_258 : i32 = *(mid); j = (x_258 + 1); loop { let x_264 : i32 = i; let x_265 : i32 = *(mid); let x_267 : i32 = j; let x_268 : i32 = *(to); if (((x_264 <= x_265) & (x_267 <= x_268))) { } else { break; } let x_272 : i32 = i; let x_274 : i32 = data[x_272]; let x_275 : i32 = j; let x_277 : i32 = data[x_275]; if ((x_274 < x_277)) { let x_282 : i32 = k; k = (x_282 + 1); let x_284 : i32 = i; i = (x_284 + 1); let x_287 : i32 = data[x_284]; temp[x_282] = x_287; } else { let x_289 : i32 = k; k = (x_289 + 1); let x_291 : i32 = j; j = (x_291 + 1); let x_294 : i32 = data[x_291]; temp[x_289] = x_294; } } loop { if (!((256.0 < 1.0))) { } else { continue; } let x_301 : i32 = i; let x_303 : i32 = i; let x_304 : i32 = *(mid); if (((x_301 < 10) & (x_303 <= x_304))) { } else { break; } let x_309 : i32 = k; k = (x_309 + 1); let x_311 : i32 = i; i = (x_311 + 1); let x_314 : i32 = data[x_311]; temp[x_309] = x_314; } let x_316 : i32 = *(from); i_1 = x_316; loop { let x_321 : i32 = i_1; let x_322 : i32 = *(to); if ((x_321 <= x_322)) { } else { break; } let x_325 : i32 = i_1; let x_326 : i32 = i_1; let x_328 : i32 = temp[x_326]; data[x_325] = x_328; continuing { let x_330 : i32 = i_1; i_1 = (x_330 + 1); } } return; } fn mergeSort_() { var low : i32; var high : i32; var m : i32; var i_2 : i32; var from_1 : i32; var mid_1 : i32; var to_1 : i32; var param : i32; var param_1 : i32; var param_2 : i32; low = 0; high = 9; m = 1; loop { let x_337 : i32 = m; let x_338 : i32 = high; if ((x_337 <= x_338)) { } else { break; } let x_341 : i32 = low; i_2 = x_341; loop { let x_346 : i32 = i_2; let x_347 : i32 = high; if ((x_346 < x_347)) { } else { break; } let x_350 : i32 = i_2; from_1 = x_350; let x_351 : i32 = i_2; let x_352 : i32 = m; mid_1 = ((x_351 + x_352) - 1); let x_355 : i32 = i_2; let x_356 : i32 = m; let x_360 : i32 = high; to_1 = min(((x_355 + (2 * x_356)) - 1), x_360); let x_362 : i32 = from_1; param = x_362; let x_363 : i32 = mid_1; param_1 = x_363; let x_364 : i32 = to_1; param_2 = x_364; merge_i1_i1_i1_(&(param), &(param_1), &(param_2)); continuing { let x_366 : i32 = m; let x_368 : i32 = i_2; i_2 = (x_368 + (2 * x_366)); } } continuing { let x_370 : i32 = m; m = (2 * x_370); } } return; } fn main_1() { var i_3 : i32; var j_1 : i32; var grey : f32; let x_89 : f32 = x_28.injectionSwitch.x; i_3 = i32(x_89); loop { let x_95 : i32 = i_3; switch(x_95) { case 9: { let x_125 : i32 = i_3; data[x_125] = -5; } case 8: { let x_123 : i32 = i_3; data[x_123] = -4; } case 7: { let x_121 : i32 = i_3; data[x_121] = -3; } case 6: { let x_119 : i32 = i_3; data[x_119] = -2; } case 5: { let x_117 : i32 = i_3; data[x_117] = -1; } case 4: { let x_115 : i32 = i_3; data[x_115] = 0; } case 3: { let x_113 : i32 = i_3; data[x_113] = 1; } case 2: { let x_111 : i32 = i_3; data[x_111] = 2; } case 1: { let x_109 : i32 = i_3; data[x_109] = 3; } case 0: { let x_107 : i32 = i_3; data[x_107] = 4; } default: { } } let x_127 : i32 = i_3; i_3 = (x_127 + 1); continuing { let x_129 : i32 = i_3; if ((x_129 < 10)) { } else { break; } } } j_1 = 0; loop { let x_135 : i32 = j_1; if ((x_135 < 10)) { } else { break; } let x_138 : i32 = j_1; let x_139 : i32 = j_1; let x_141 : i32 = data[x_139]; temp[x_138] = x_141; continuing { let x_143 : i32 = j_1; j_1 = (x_143 + 1); } } mergeSort_(); let x_147 : f32 = gl_FragCoord.y; if ((i32(x_147) < 30)) { let x_154 : i32 = data[0]; grey = (0.5 + (f32(x_154) / 10.0)); } else { let x_159 : f32 = gl_FragCoord.y; if ((i32(x_159) < 60)) { let x_166 : i32 = data[1]; grey = (0.5 + (f32(x_166) / 10.0)); } else { let x_171 : f32 = gl_FragCoord.y; if ((i32(x_171) < 90)) { let x_178 : i32 = data[2]; grey = (0.5 + (f32(x_178) / 10.0)); } else { let x_183 : f32 = gl_FragCoord.y; if ((i32(x_183) < 120)) { let x_190 : i32 = data[3]; grey = (0.5 + (f32(x_190) / 10.0)); } else { let x_195 : f32 = gl_FragCoord.y; if ((i32(x_195) < 150)) { discard; } else { let x_202 : f32 = gl_FragCoord.y; if ((i32(x_202) < 180)) { let x_209 : i32 = data[5]; grey = (0.5 + (f32(x_209) / 10.0)); } else { let x_214 : f32 = gl_FragCoord.y; if ((i32(x_214) < 210)) { let x_221 : i32 = data[6]; grey = (0.5 + (f32(x_221) / 10.0)); } else { let x_226 : f32 = gl_FragCoord.y; if ((i32(x_226) < 240)) { let x_233 : i32 = data[7]; grey = (0.5 + (f32(x_233) / 10.0)); } else { let x_238 : f32 = gl_FragCoord.y; if ((i32(x_238) < 270)) { let x_245 : i32 = data[8]; grey = (0.5 + (f32(x_245) / 10.0)); } else { discard; } } } } } } } } } let x_249 : f32 = grey; let x_250 : vec3 = vec3(x_249, x_249, x_249); x_GLF_color = vec4(x_250.x, x_250.y, x_250.z, 1.0); return; } struct main_out { @location(0) x_GLF_color_1 : vec4; } @stage(fragment) fn main(@builtin(position) gl_FragCoord_param : vec4) -> main_out { gl_FragCoord = gl_FragCoord_param; main_1(); return main_out(x_GLF_color); }