#include using namespace metal; struct buf0 { /* 0x0000 */ packed_float2 injectionSwitch; }; struct tint_array_wrapper { float arr[9]; }; struct main_out { float4 x_GLF_color_1; }; struct tint_symbol_2 { float4 x_GLF_color_1 [[color(0)]]; }; float3 drawShape_vf2_(constant buf0& x_25, thread float2* const pos) { bool c2 = false; bool c3 = false; bool c4 = false; bool c5 = false; bool c6 = false; int GLF_live4i = 0; int GLF_live4_looplimiter5 = 0; float4x2 GLF_live7m42 = float4x2(0.0f); float3x3 GLF_live7m33 = float3x3(0.0f); int GLF_live7cols = 0; int GLF_live7_looplimiter3 = 0; int GLF_live7rows = 0; int GLF_live7_looplimiter2 = 0; int GLF_live7_looplimiter1 = 0; int GLF_live7c = 0; int GLF_live7r = 0; int GLF_live7_looplimiter0 = 0; int GLF_live7sum_index = 0; int GLF_live7_looplimiter7 = 0; int GLF_live7cols_1 = 0; int GLF_live7rows_1 = 0; tint_array_wrapper GLF_live7sums = {}; int GLF_live7c_1 = 0; int GLF_live7r_1 = 0; int x_180 = 0; float3x3 indexable = float3x3(0.0f); float const x_182 = (*(pos)).x; c2 = (x_182 > 1.0f); bool const x_184 = c2; if (x_184) { return float3(1.0f, 1.0f, 1.0f); } float const x_188 = (*(pos)).y; c3 = (x_188 < 1.0f); bool const x_190 = c3; if (x_190) { return float3(1.0f, 1.0f, 1.0f); } float const x_194 = (*(pos)).y; c4 = (x_194 > 1.0f); bool const x_196 = c4; if (x_196) { return float3(1.0f, 1.0f, 1.0f); } float const x_200 = (*(pos)).x; c5 = (x_200 < 1.0f); bool const x_202 = c5; if (x_202) { return float3(1.0f, 1.0f, 1.0f); } float const x_206 = (*(pos)).x; c6 = ((x_206 + 1.0f) > 1.0f); bool const x_209 = c6; if (x_209) { return float3(1.0f, 1.0f, 1.0f); } GLF_live4i = 0; while (true) { int const x_39 = GLF_live4i; if ((x_39 < 4)) { } else { break; } int const x_40 = GLF_live4_looplimiter5; if ((x_40 >= 7)) { break; } int const x_41 = GLF_live4_looplimiter5; GLF_live4_looplimiter5 = (x_41 + 1); GLF_live7m42 = float4x2(float2(1.0f, 0.0f), float2(0.0f, 1.0f), float2(0.0f, 0.0f), float2(1.0f, 0.0f)); GLF_live7m33 = float3x3(float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f)); GLF_live7cols = 2; while (true) { int const x_43 = GLF_live7cols; if ((x_43 < 4)) { } else { break; } int const x_44 = GLF_live7_looplimiter3; if ((x_44 >= 7)) { break; } int const x_45 = GLF_live7_looplimiter3; GLF_live7_looplimiter3 = (x_45 + 1); GLF_live7rows = 2; while (true) { int const x_47 = GLF_live7rows; if ((x_47 < 4)) { } else { break; } int const x_48 = GLF_live7_looplimiter2; if ((x_48 >= 7)) { break; } int const x_49 = GLF_live7_looplimiter2; GLF_live7_looplimiter2 = (x_49 + 1); GLF_live7_looplimiter1 = 0; GLF_live7c = 0; while (true) { int const x_51 = GLF_live7c; if ((x_51 < 3)) { } else { break; } int const x_52 = GLF_live7_looplimiter1; if ((x_52 >= 7)) { break; } int const x_53 = GLF_live7_looplimiter1; GLF_live7_looplimiter1 = (x_53 + 1); GLF_live7r = 0; while (true) { int const x_55 = GLF_live7r; if ((x_55 < 2)) { } else { break; } int const x_56 = GLF_live7_looplimiter0; if ((x_56 >= 7)) { break; } int const x_57 = GLF_live7_looplimiter0; GLF_live7_looplimiter0 = (x_57 + 1); int const x_59 = GLF_live7c; int const x_60 = GLF_live7c; int const x_61 = GLF_live7c; int const x_62 = GLF_live7r; int const x_63 = GLF_live7r; int const x_64 = GLF_live7r; GLF_live7m33[select(0, x_61, ((x_59 >= 0) & (x_60 < 3)))][select(0, x_64, ((x_62 >= 0) & (x_63 < 3)))] = 1.0f; float const x_267 = x_25.injectionSwitch.y; if ((0.0f > x_267)) { } else { int const x_65 = GLF_live7c; int const x_66 = GLF_live7c; int const x_67 = GLF_live7c; int const x_68 = GLF_live7r; int const x_69 = GLF_live7r; int const x_70 = GLF_live7r; GLF_live7m42[select(0, x_67, ((x_65 >= 0) & (x_66 < 4)))][select(0, x_70, ((x_68 >= 0) & (x_69 < 2)))] = 1.0f; } { int const x_71 = GLF_live7r; GLF_live7r = (x_71 + 1); } } { int const x_73 = GLF_live7c; GLF_live7c = (x_73 + 1); } } { int const x_75 = GLF_live7rows; GLF_live7rows = (x_75 + 1); } } { int const x_77 = GLF_live7cols; GLF_live7cols = (x_77 + 1); } } GLF_live7sum_index = 0; GLF_live7_looplimiter7 = 0; GLF_live7cols_1 = 2; while (true) { int const x_79 = GLF_live7cols_1; if ((x_79 < 4)) { } else { break; } int const x_80 = GLF_live7_looplimiter7; if ((x_80 >= 7)) { break; } int const x_81 = GLF_live7_looplimiter7; GLF_live7_looplimiter7 = (x_81 + 1); GLF_live7rows_1 = 2; int const x_83 = GLF_live7sum_index; int const x_84 = GLF_live7sum_index; int const x_85 = GLF_live7sum_index; GLF_live7sums.arr[select(0, x_85, ((x_83 >= 0) & (x_84 < 9)))] = 0.0f; GLF_live7c_1 = 0; while (true) { int const x_86 = GLF_live7c_1; if ((x_86 < 1)) { } else { break; } GLF_live7r_1 = 0; while (true) { int const x_87 = GLF_live7r_1; int const x_88 = GLF_live7rows_1; if ((x_87 < x_88)) { } else { break; } int const x_89 = GLF_live7sum_index; int const x_90 = GLF_live7sum_index; int const x_91 = GLF_live7sum_index; int const x_310 = select(0, x_91, ((x_89 >= 0) & (x_90 < 9))); float3x3 const x_311 = GLF_live7m33; float3x3 const x_312 = transpose(x_311); int const x_92 = GLF_live7c_1; if ((x_92 < 3)) { x_180 = 1; } else { float const x_318 = x_25.injectionSwitch.x; x_180 = int(x_318); } int const x_320 = x_180; int const x_93 = GLF_live7r_1; indexable = x_312; float const x_324 = indexable[x_320][select(0, 1, (x_93 < 3))]; float const x_326 = GLF_live7sums.arr[x_310]; GLF_live7sums.arr[x_310] = (x_326 + x_324); int const x_94 = GLF_live7sum_index; int const x_95 = GLF_live7sum_index; int const x_96 = GLF_live7sum_index; int const x_332 = select(0, x_96, ((x_94 >= 0) & (x_95 < 9))); int const x_97 = GLF_live7r_1; float const x_334 = GLF_live7m42[1][x_97]; float const x_336 = GLF_live7sums.arr[x_332]; GLF_live7sums.arr[x_332] = (x_336 + x_334); { int const x_98 = GLF_live7r_1; GLF_live7r_1 = (x_98 + 1); } } { int const x_100 = GLF_live7c_1; GLF_live7c_1 = (x_100 + 1); } } int const x_102 = GLF_live7sum_index; GLF_live7sum_index = (x_102 + 1); { int const x_104 = GLF_live7cols_1; GLF_live7cols_1 = (x_104 + 1); } } { int const x_106 = GLF_live4i; GLF_live4i = (x_106 + 1); } } return float3(1.0f, 1.0f, 1.0f); } void main_1(constant buf0& x_25, thread float4* const tint_symbol_5, thread float4* const tint_symbol_6) { float2 position = 0.0f; float2 param = 0.0f; float2 param_1 = 0.0f; int i = 0; float2 param_2 = 0.0f; float const x_161 = x_25.injectionSwitch.x; if ((x_161 >= 2.0f)) { float4 const x_165 = *(tint_symbol_5); position = float2(x_165.x, x_165.y); float2 const x_167 = position; param = x_167; float3 const x_168 = drawShape_vf2_(x_25, &(param)); float2 const x_169 = position; param_1 = x_169; float3 const x_170 = drawShape_vf2_(x_25, &(param_1)); i = 25; while (true) { int const x_108 = i; if ((x_108 > 0)) { } else { break; } float2 const x_177 = position; param_2 = x_177; float3 const x_178 = drawShape_vf2_(x_25, &(param_2)); { int const x_109 = i; i = (x_109 - 1); } } } *(tint_symbol_6) = float4(1.0f, 0.0f, 0.0f, 1.0f); return; } fragment tint_symbol_2 tint_symbol(float4 gl_FragCoord_param [[position]], constant buf0& x_25 [[buffer(0)]]) { thread float4 tint_symbol_7 = 0.0f; thread float4 tint_symbol_8 = 0.0f; tint_symbol_7 = gl_FragCoord_param; main_1(x_25, &(tint_symbol_7), &(tint_symbol_8)); main_out const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_8}; tint_symbol_2 const tint_symbol_4 = {.x_GLF_color_1=tint_symbol_3.x_GLF_color_1}; return tint_symbol_4; }