var<private> bool_var1 : bool = bool(1u);

var<private> bool_var2 : bool = bool(1);

var<private> bool_var3 : bool = bool(1.0);

var<private> i32_var1 : i32 = i32(1u);

var<private> i32_var2 : i32 = i32(1.0);

var<private> i32_var3 : i32 = i32(true);

var<private> u32_var1 : u32 = u32(1);

var<private> u32_var2 : u32 = u32(1.0);

var<private> u32_var3 : u32 = u32(true);

var<private> v3bool_var1 : vec3<bool> = vec3<bool>(vec3<u32>(1u));

var<private> v3bool_var2 : vec3<bool> = vec3<bool>(vec3<i32>(1));

var<private> v3bool_var3 : vec3<bool> = vec3<bool>(vec3<f32>(1.0));

var<private> v3i32_var1 : vec3<i32> = vec3<i32>(vec3<u32>(1u));

var<private> v3i32_var2 : vec3<i32> = vec3<i32>(vec3<f32>(1.0));

var<private> v3i32_var3 : vec3<i32> = vec3<i32>(vec3<bool>(true));

var<private> v3u32_var1 : vec3<u32> = vec3<u32>(vec3<i32>(1));

var<private> v3u32_var2 : vec3<u32> = vec3<u32>(vec3<f32>(1.0));

var<private> v3u32_var3 : vec3<u32> = vec3<u32>(vec3<bool>(true));

var<private> v3bool_var4 : vec3<bool> = vec3<bool>(vec2<bool>(vec2<f32>(123.0)), true);

var<private> v4bool_var5 : vec4<bool> = vec4<bool>(vec2<bool>(vec2<f32>(123.0, 0.0)), vec2<bool>(true, bool(f32(0.0))));

[[stage(compute), workgroup_size(1)]]
fn main() {
  bool_var1 = bool();
  bool_var2 = bool();
  bool_var3 = bool();
  i32_var1 = i32();
  i32_var2 = i32();
  i32_var3 = i32();
  u32_var1 = u32();
  u32_var2 = u32();
  u32_var3 = u32();
  v3bool_var1 = vec3<bool>();
  v3bool_var2 = vec3<bool>();
  v3bool_var3 = vec3<bool>();
  v3bool_var4 = vec3<bool>();
  v4bool_var5 = vec4<bool>();
  v3i32_var1 = vec3<i32>();
  v3i32_var2 = vec3<i32>();
  v3i32_var3 = vec3<i32>();
  v3u32_var1 = vec3<u32>();
  v3u32_var2 = vec3<u32>();
  v3u32_var3 = vec3<u32>();
}
