#include <metal_stdlib>

using namespace metal;
struct buf0 {
  /* 0x0000 */ float2 injectionSwitch;
};
struct main_out {
  float4 x_GLF_color_1;
};
struct tint_symbol_1 {
  float4 x_GLF_color_1 [[color(0)]];
};

float makeFrame_(constant buf0& x_6) {
  float x_60 = 0.0f;
  float x_63_phi = 0.0f;
  while (true) {
    bool x_41 = false;
    float x_44 = 0.0f;
    float x_45 = 0.0f;
    bool x_42 = false;
    bool x_41_phi = false;
    int x_8_phi = 0;
    float x_44_phi = 0.0f;
    float x_60_phi = 0.0f;
    bool x_61_phi = false;
    x_41_phi = false;
    x_8_phi = 0;
    x_44_phi = 0.0f;
    while (true) {
      float x_50 = 0.0f;
      int x_9 = 0;
      bool x_52 = false;
      int x_7 = 0;
      float x_50_phi = 0.0f;
      int x_9_phi = 0;
      bool x_52_phi = false;
      float x_45_phi = 0.0f;
      bool x_42_phi = false;
      x_41 = x_41_phi;
      int const x_8 = x_8_phi;
      x_44 = x_44_phi;
      x_60_phi = x_44;
      x_61_phi = x_41;
      if ((x_8 < 1)) {
      } else {
        break;
      }
      x_50_phi = x_44;
      x_9_phi = x_8;
      x_52_phi = x_41;
      while (true) {
        x_50 = x_50_phi;
        x_9 = x_9_phi;
        x_52 = x_52_phi;
        float const x_54 = x_6.injectionSwitch.y;
        x_45_phi = x_50;
        x_42_phi = x_52;
        if ((1 < int(x_54))) {
        } else {
          break;
        }
        x_45_phi = 1.0f;
        x_42_phi = true;
        break;
        {
          x_50_phi = 0.0f;
          x_9_phi = 0;
          x_52_phi = false;
        }
      }
      x_45 = x_45_phi;
      x_42 = x_42_phi;
      x_60_phi = x_45;
      x_61_phi = x_42;
      if (x_42) {
        break;
      }
      {
        x_7 = as_type<int>(as_type<int>((as_type<uint>(x_9) + as_type<uint>(as_type<int>(1)))));
        x_41_phi = x_42;
        x_8_phi = x_7;
        x_44_phi = x_45;
      }
    }
    x_60 = x_60_phi;
    bool const x_61 = x_61_phi;
    x_63_phi = x_60;
    if (x_61) {
      break;
    }
    x_63_phi = 1.0f;
    break;
  }
  float const x_63 = x_63_phi;
  return x_63;
}

void main_1(constant buf0& x_6, thread float4* const tint_symbol_3) {
  float const x_34 = makeFrame_(x_6);
  *(tint_symbol_3) = float4(1.0f, 0.0f, 0.0f, 1.0f);
  return;
}

main_out tint_symbol_inner(constant buf0& x_6, thread float4* const tint_symbol_4) {
  main_1(x_6, tint_symbol_4);
  main_out const tint_symbol_2 = {.x_GLF_color_1=*(tint_symbol_4)};
  return tint_symbol_2;
}

fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]]) {
  thread float4 tint_symbol_5 = 0.0f;
  main_out const inner_result = tint_symbol_inner(x_6, &(tint_symbol_5));
  tint_symbol_1 wrapper_result = {};
  wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
  return wrapper_result;
}