struct Inner {
  x : i32;
}

struct S {
  a : vec3<i32>;
  b : i32;
  c : vec3<u32>;
  d : u32;
  e : vec3<f32>;
  f : f32;
  g : mat2x3<f32>;
  h : mat3x2<f32>;
  i : Inner;
  j : array<Inner, 4>;
}

@binding(0) @group(0) var<storage, write> s : S;

@stage(compute) @workgroup_size(1)
fn main() {
  s.a = vec3<i32>();
  s.b = i32();
  s.c = vec3<u32>();
  s.d = u32();
  s.e = vec3<f32>();
  s.f = f32();
  s.g = mat2x3<f32>();
  s.h = mat3x2<f32>();
  s.i = Inner();
  s.j = array<Inner, 4>();
}
