[[block]]
struct buf0 {
  one : i32;
};

[[group(0), binding(0)]] var<uniform> x_8 : buf0;

var<private> x_GLF_color : vec4<f32>;

fn main_1() {
  var a : array<i32, 3>;
  var b : i32;
  var c : i32;
  a[0] = 1;
  a[1] = 2;
  a[2] = 3;
  b = 0;
  let x_38 : i32 = x_8.one;
  let x_40 : i32 = a[x_38];
  c = x_40;
  let x_41 : i32 = c;
  if ((x_41 > 1)) {
    x_GLF_color = vec4<f32>(0.0, 1.0, 1.0, 0.0);
    let x_45 : i32 = b;
    b = (x_45 + 1);
  }
  let x_47 : i32 = b;
  let x_48 : i32 = (x_47 + 1);
  b = x_48;
  let x_50 : ptr<function, i32> = &(a[clamp(x_48, 0, 2)]);
  let x_51 : i32 = *(x_50);
  *(x_50) = (x_51 + 1);
  let x_54 : i32 = a[2];
  if ((x_54 == 4)) {
    x_GLF_color = vec4<f32>(1.0, 0.0, 0.0, 1.0);
  } else {
    x_GLF_color = vec4<f32>(0.0, 0.0, 0.0, 0.0);
  }
  return;
}

struct main_out {
  [[location(0)]]
  x_GLF_color_1 : vec4<f32>;
};

[[stage(fragment)]]
fn main() -> main_out {
  main_1();
  return main_out(x_GLF_color);
}