@group(0) @binding(0) var<uniform> u : array<mat3x4<f32>, 4>;

@compute @workgroup_size(1)
fn f() {
  let t = transpose(u[2]);
  let l = length(u[0][1].ywxz);
  let a = abs(u[0][1].ywxz.x);
}
