type Arr = [[stride(16)]] array<i32, 2>;

[[block]]
struct buf0 {
  x_GLF_uniform_int_values : Arr;
};

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

var<private> x_GLF_color : vec4<f32>;

fn main_1() {
  var m : mat2x2<f32>;
  let x_29 : i32 = x_6.x_GLF_uniform_int_values[0];
  let x_30 : f32 = f32(x_29);
  m = transpose(transpose(mat2x2<f32>(vec2<f32>(x_30, 0.0), vec2<f32>(0.0, x_30))));
  let x_36 : mat2x2<f32> = m;
  let x_38 : i32 = x_6.x_GLF_uniform_int_values[0];
  let x_39 : f32 = f32(x_38);
  let x_42 : mat2x2<f32> = mat2x2<f32>(vec2<f32>(x_39, 0.0), vec2<f32>(0.0, x_39));
  if ((all((x_36[0u] == x_42[0u])) && all((x_36[1u] == x_42[1u])))) {
    let x_56 : i32 = x_6.x_GLF_uniform_int_values[0];
    let x_59 : i32 = x_6.x_GLF_uniform_int_values[1];
    let x_62 : i32 = x_6.x_GLF_uniform_int_values[1];
    let x_65 : i32 = x_6.x_GLF_uniform_int_values[0];
    x_GLF_color = vec4<f32>(f32(x_56), f32(x_59), f32(x_62), f32(x_65));
  } else {
    let x_69 : i32 = x_6.x_GLF_uniform_int_values[1];
    let x_70 : f32 = f32(x_69);
    x_GLF_color = vec4<f32>(x_70, x_70, x_70, x_70);
  }
  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);
}