struct buf0 {
  zero : i32,
}

@group(0) @binding(0) var<uniform> x_9 : buf0;

var<private> x_GLF_color : vec4<f32>;

fn func_i1_(x : ptr<function, i32>) -> i32 {
  let x_45 : i32 = *(x);
  if ((x_45 == 10)) {
    discard;
  }
  let x_49 : i32 = *(x);
  return x_49;
}

fn main_1() {
  var a : i32;
  var b : i32;
  var param : i32;
  var x_37 : i32;
  var x_35_phi : i32;
  a = 0;
  let x_33 : i32 = x_9.zero;
  b = x_33;
  x_35_phi = x_33;
  loop {
    let x_35 : i32 = x_35_phi;
    param = x_35;
    x_37 = func_i1_(&(param));
    a = x_37;
    let x_36 : i32 = (x_35 + 1);
    b = x_36;
    x_35_phi = x_36;
    if ((x_36 < 4)) {
    } else {
      break;
    }
  }
  if ((x_37 == bitcast<i32>(3))) {
    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);
}