[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_array_elements:*]
  [:abstract_type="abstract-float";concrete_type="f16";length=1]

  [:abstract_type="abstract-float";concrete_type="f16";length=10]

  [:abstract_type="abstract-float";concrete_type="f16";length=5]

  [:abstract_type="abstract-float";concrete_type="f32";length=1]

  [:abstract_type="abstract-float";concrete_type="f32";length=10]

  [:abstract_type="abstract-float";concrete_type="f32";length=5]

  [:abstract_type="abstract-int";concrete_type="f16";length=1]

  [:abstract_type="abstract-int";concrete_type="f16";length=10]

  [:abstract_type="abstract-int";concrete_type="f16";length=5]

  [:abstract_type="abstract-int";concrete_type="f32";length=1]

  [:abstract_type="abstract-int";concrete_type="f32";length=10]

  [:abstract_type="abstract-int";concrete_type="f32";length=5]

  [:abstract_type="abstract-int";concrete_type="i32";length=1]

  [:abstract_type="abstract-int";concrete_type="i32";length=10]

  [:abstract_type="abstract-int";concrete_type="i32";length=5]

  [:abstract_type="abstract-int";concrete_type="u32";length=1]

  [:abstract_type="abstract-int";concrete_type="u32";length=10]

  [:abstract_type="abstract-int";concrete_type="u32";length=5]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=1]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=10]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=5]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=1]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=10]

  [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=5]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=1]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=10]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=5]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=1]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=10]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=5]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=1]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=10]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=5]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=1]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=10]

  [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=5]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=1]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=10]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=5]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=1]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=10]

  [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=5]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_column_vectors:*]
  [:concrete_type="f16";columns=2;rows=2]

  [:concrete_type="f16";columns=2;rows=3]

  [:concrete_type="f16";columns=2;rows=4]

  [:concrete_type="f16";columns=3;rows=2]

  [:concrete_type="f16";columns=3;rows=3]

  [:concrete_type="f16";columns=3;rows=4]

  [:concrete_type="f16";columns=4;rows=2]

  [:concrete_type="f16";columns=4;rows=3]

  [:concrete_type="f16";columns=4;rows=4]

  [:concrete_type="f32";columns=2;rows=2]

  [:concrete_type="f32";columns=2;rows=3]

  [:concrete_type="f32";columns=2;rows=4]

  [:concrete_type="f32";columns=3;rows=2]

  [:concrete_type="f32";columns=3;rows=3]

  [:concrete_type="f32";columns=3;rows=4]

  [:concrete_type="f32";columns=4;rows=2]

  [:concrete_type="f32";columns=4;rows=3]

  [:concrete_type="f32";columns=4;rows=4]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_elements:*]
  [:concrete_type="f16";columns=2;rows=2]

  [:concrete_type="f16";columns=2;rows=3]

  [:concrete_type="f16";columns=2;rows=4]

  [:concrete_type="f16";columns=3;rows=2]

  [:concrete_type="f16";columns=3;rows=3]

  [:concrete_type="f16";columns=3;rows=4]

  [:concrete_type="f16";columns=4;rows=2]

  [:concrete_type="f16";columns=4;rows=3]

  [:concrete_type="f16";columns=4;rows=4]

  [:concrete_type="f32";columns=2;rows=2]

  [:concrete_type="f32";columns=2;rows=3]

  [:concrete_type="f32";columns=2;rows=4]

  [:concrete_type="f32";columns=3;rows=2]

  [:concrete_type="f32";columns=3;rows=3]

  [:concrete_type="f32";columns=3;rows=4]

  [:concrete_type="f32";columns=4;rows=2]

  [:concrete_type="f32";columns=4;rows=3]

  [:concrete_type="f32";columns=4;rows=4]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_elements:*]
  [:abstract_type="abstract-float";concrete_type="f16";width=2]

  [:abstract_type="abstract-float";concrete_type="f16";width=3]

  [:abstract_type="abstract-float";concrete_type="f16";width=4]

  [:abstract_type="abstract-float";concrete_type="f32";width=2]

  [:abstract_type="abstract-float";concrete_type="f32";width=3]

  [:abstract_type="abstract-float";concrete_type="f32";width=4]

  [:abstract_type="abstract-int";concrete_type="f16";width=2]

  [:abstract_type="abstract-int";concrete_type="f16";width=3]

  [:abstract_type="abstract-int";concrete_type="f16";width=4]

  [:abstract_type="abstract-int";concrete_type="f32";width=2]

  [:abstract_type="abstract-int";concrete_type="f32";width=3]

  [:abstract_type="abstract-int";concrete_type="f32";width=4]

  [:abstract_type="abstract-int";concrete_type="i32";width=2]

  [:abstract_type="abstract-int";concrete_type="i32";width=3]

  [:abstract_type="abstract-int";concrete_type="i32";width=4]

  [:abstract_type="abstract-int";concrete_type="u32";width=2]

  [:abstract_type="abstract-int";concrete_type="u32";width=3]

  [:abstract_type="abstract-int";concrete_type="u32";width=4]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_mix:*]
  [:abstract_type="abstract-float";concrete_type="f16";signature="22"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="2s"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="2ss"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="3s"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="s2"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="s2s"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="s3"]

  [:abstract_type="abstract-float";concrete_type="f16";signature="ss2"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="22"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="2s"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="2ss"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="3s"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="s2"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="s2s"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="s3"]

  [:abstract_type="abstract-float";concrete_type="f32";signature="ss2"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="22"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="2s"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="2ss"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="3s"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="s2"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="s2s"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="s3"]

  [:abstract_type="abstract-int";concrete_type="f16";signature="ss2"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="22"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="2s"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="2ss"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="3s"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="s2"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="s2s"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="s3"]

  [:abstract_type="abstract-int";concrete_type="f32";signature="ss2"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="22"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="2s"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="2ss"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="3s"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="s2"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="s2s"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="s3"]

  [:abstract_type="abstract-int";concrete_type="i32";signature="ss2"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="22"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="2s"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="2ss"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="3s"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="s2"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="s2s"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="s3"]

  [:abstract_type="abstract-int";concrete_type="u32";signature="ss2"]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_splat:*]
  [:abstract_type="abstract-float";concrete_type="f16";value=100;width=2]

  [:abstract_type="abstract-float";concrete_type="f16";value=100;width=3]

  [:abstract_type="abstract-float";concrete_type="f16";value=100;width=4]

  [:abstract_type="abstract-float";concrete_type="f16";value=1;width=2]

  [:abstract_type="abstract-float";concrete_type="f16";value=1;width=3]

  [:abstract_type="abstract-float";concrete_type="f16";value=1;width=4]

  [:abstract_type="abstract-float";concrete_type="f16";value=2;width=2]

  [:abstract_type="abstract-float";concrete_type="f16";value=2;width=3]

  [:abstract_type="abstract-float";concrete_type="f16";value=2;width=4]

  [:abstract_type="abstract-float";concrete_type="f16";value=5;width=2]

  [:abstract_type="abstract-float";concrete_type="f16";value=5;width=3]

  [:abstract_type="abstract-float";concrete_type="f16";value=5;width=4]

  [:abstract_type="abstract-float";concrete_type="f32";value=100;width=2]

  [:abstract_type="abstract-float";concrete_type="f32";value=100;width=3]

  [:abstract_type="abstract-float";concrete_type="f32";value=100;width=4]

  [:abstract_type="abstract-float";concrete_type="f32";value=1;width=2]

  [:abstract_type="abstract-float";concrete_type="f32";value=1;width=3]

  [:abstract_type="abstract-float";concrete_type="f32";value=1;width=4]

  [:abstract_type="abstract-float";concrete_type="f32";value=2;width=2]

  [:abstract_type="abstract-float";concrete_type="f32";value=2;width=3]

  [:abstract_type="abstract-float";concrete_type="f32";value=2;width=4]

  [:abstract_type="abstract-float";concrete_type="f32";value=5;width=2]

  [:abstract_type="abstract-float";concrete_type="f32";value=5;width=3]

  [:abstract_type="abstract-float";concrete_type="f32";value=5;width=4]

  [:abstract_type="abstract-int";concrete_type="f16";value=100;width=2]

  [:abstract_type="abstract-int";concrete_type="f16";value=100;width=3]

  [:abstract_type="abstract-int";concrete_type="f16";value=100;width=4]

  [:abstract_type="abstract-int";concrete_type="f16";value=1;width=2]

  [:abstract_type="abstract-int";concrete_type="f16";value=1;width=3]

  [:abstract_type="abstract-int";concrete_type="f16";value=1;width=4]

  [:abstract_type="abstract-int";concrete_type="f16";value=2;width=2]

  [:abstract_type="abstract-int";concrete_type="f16";value=2;width=3]

  [:abstract_type="abstract-int";concrete_type="f16";value=2;width=4]

  [:abstract_type="abstract-int";concrete_type="f16";value=5;width=2]

  [:abstract_type="abstract-int";concrete_type="f16";value=5;width=3]

  [:abstract_type="abstract-int";concrete_type="f16";value=5;width=4]

  [:abstract_type="abstract-int";concrete_type="f32";value=100;width=2]

  [:abstract_type="abstract-int";concrete_type="f32";value=100;width=3]

  [:abstract_type="abstract-int";concrete_type="f32";value=100;width=4]

  [:abstract_type="abstract-int";concrete_type="f32";value=1;width=2]

  [:abstract_type="abstract-int";concrete_type="f32";value=1;width=3]

  [:abstract_type="abstract-int";concrete_type="f32";value=1;width=4]

  [:abstract_type="abstract-int";concrete_type="f32";value=2;width=2]

  [:abstract_type="abstract-int";concrete_type="f32";value=2;width=3]

  [:abstract_type="abstract-int";concrete_type="f32";value=2;width=4]

  [:abstract_type="abstract-int";concrete_type="f32";value=5;width=2]

  [:abstract_type="abstract-int";concrete_type="f32";value=5;width=3]

  [:abstract_type="abstract-int";concrete_type="f32";value=5;width=4]

  [:abstract_type="abstract-int";concrete_type="i32";value=100;width=2]

  [:abstract_type="abstract-int";concrete_type="i32";value=100;width=3]

  [:abstract_type="abstract-int";concrete_type="i32";value=100;width=4]

  [:abstract_type="abstract-int";concrete_type="i32";value=1;width=2]

  [:abstract_type="abstract-int";concrete_type="i32";value=1;width=3]

  [:abstract_type="abstract-int";concrete_type="i32";value=1;width=4]

  [:abstract_type="abstract-int";concrete_type="i32";value=2;width=2]

  [:abstract_type="abstract-int";concrete_type="i32";value=2;width=3]

  [:abstract_type="abstract-int";concrete_type="i32";value=2;width=4]

  [:abstract_type="abstract-int";concrete_type="i32";value=5;width=2]

  [:abstract_type="abstract-int";concrete_type="i32";value=5;width=3]

  [:abstract_type="abstract-int";concrete_type="i32";value=5;width=4]

  [:abstract_type="abstract-int";concrete_type="u32";value=100;width=2]

  [:abstract_type="abstract-int";concrete_type="u32";value=100;width=3]

  [:abstract_type="abstract-int";concrete_type="u32";value=100;width=4]

  [:abstract_type="abstract-int";concrete_type="u32";value=1;width=2]

  [:abstract_type="abstract-int";concrete_type="u32";value=1;width=3]

  [:abstract_type="abstract-int";concrete_type="u32";value=1;width=4]

  [:abstract_type="abstract-int";concrete_type="u32";value=2;width=2]

  [:abstract_type="abstract-int";concrete_type="u32";value=2;width=3]

  [:abstract_type="abstract-int";concrete_type="u32";value=2;width=4]

  [:abstract_type="abstract-int";concrete_type="u32";value=5;width=2]

  [:abstract_type="abstract-int";concrete_type="u32";value=5;width=3]

  [:abstract_type="abstract-int";concrete_type="u32";value=5;width=4]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_array_elements:*]
  [:inputSource="const";type="bool";length=10;infer_type=false]

  [:inputSource="const";type="bool";length=10;infer_type=true]

  [:inputSource="const";type="bool";length=1;infer_type=false]

  [:inputSource="const";type="bool";length=1;infer_type=true]

  [:inputSource="const";type="bool";length=5;infer_type=false]

  [:inputSource="const";type="bool";length=5;infer_type=true]

  [:inputSource="const";type="f16";length=10;infer_type=false]

  [:inputSource="const";type="f16";length=10;infer_type=true]

  [:inputSource="const";type="f16";length=1;infer_type=false]

  [:inputSource="const";type="f16";length=1;infer_type=true]

  [:inputSource="const";type="f16";length=5;infer_type=false]

  [:inputSource="const";type="f16";length=5;infer_type=true]

  [:inputSource="const";type="f32";length=10;infer_type=false]

  [:inputSource="const";type="f32";length=10;infer_type=true]

  [:inputSource="const";type="f32";length=1;infer_type=false]

  [:inputSource="const";type="f32";length=1;infer_type=true]

  [:inputSource="const";type="f32";length=5;infer_type=false]

  [:inputSource="const";type="f32";length=5;infer_type=true]

  [:inputSource="const";type="i32";length=10;infer_type=false]

  [:inputSource="const";type="i32";length=10;infer_type=true]

  [:inputSource="const";type="i32";length=1;infer_type=false]

  [:inputSource="const";type="i32";length=1;infer_type=true]

  [:inputSource="const";type="i32";length=5;infer_type=false]

  [:inputSource="const";type="i32";length=5;infer_type=true]

  [:inputSource="const";type="u32";length=10;infer_type=false]

  [:inputSource="const";type="u32";length=10;infer_type=true]

  [:inputSource="const";type="u32";length=1;infer_type=false]

  [:inputSource="const";type="u32";length=1;infer_type=true]

  [:inputSource="const";type="u32";length=5;infer_type=false]

  [:inputSource="const";type="u32";length=5;infer_type=true]

  [:inputSource="const";type="vec3f";length=10;infer_type=false]

  [:inputSource="const";type="vec3f";length=10;infer_type=true]

  [:inputSource="const";type="vec3f";length=1;infer_type=false]

  [:inputSource="const";type="vec3f";length=1;infer_type=true]

  [:inputSource="const";type="vec3f";length=5;infer_type=false]

  [:inputSource="const";type="vec3f";length=5;infer_type=true]

  [:inputSource="const";type="vec4i";length=10;infer_type=false]

  [:inputSource="const";type="vec4i";length=10;infer_type=true]

  [:inputSource="const";type="vec4i";length=1;infer_type=false]

  [:inputSource="const";type="vec4i";length=1;infer_type=true]

  [:inputSource="const";type="vec4i";length=5;infer_type=false]

  [:inputSource="const";type="vec4i";length=5;infer_type=true]

  [:inputSource="storage_r";type="bool";length=10;infer_type=false]

  [:inputSource="storage_r";type="bool";length=10;infer_type=true]

  [:inputSource="storage_r";type="bool";length=1;infer_type=false]

  [:inputSource="storage_r";type="bool";length=1;infer_type=true]

  [:inputSource="storage_r";type="bool";length=5;infer_type=false]

  [:inputSource="storage_r";type="bool";length=5;infer_type=true]

  [:inputSource="storage_r";type="f16";length=10;infer_type=false]

  [:inputSource="storage_r";type="f16";length=10;infer_type=true]

  [:inputSource="storage_r";type="f16";length=1;infer_type=false]

  [:inputSource="storage_r";type="f16";length=1;infer_type=true]

  [:inputSource="storage_r";type="f16";length=5;infer_type=false]

  [:inputSource="storage_r";type="f16";length=5;infer_type=true]

  [:inputSource="storage_r";type="f32";length=10;infer_type=false]

  [:inputSource="storage_r";type="f32";length=10;infer_type=true]

  [:inputSource="storage_r";type="f32";length=1;infer_type=false]

  [:inputSource="storage_r";type="f32";length=1;infer_type=true]

  [:inputSource="storage_r";type="f32";length=5;infer_type=false]

  [:inputSource="storage_r";type="f32";length=5;infer_type=true]

  [:inputSource="storage_r";type="i32";length=10;infer_type=false]

  [:inputSource="storage_r";type="i32";length=10;infer_type=true]

  [:inputSource="storage_r";type="i32";length=1;infer_type=false]

  [:inputSource="storage_r";type="i32";length=1;infer_type=true]

  [:inputSource="storage_r";type="i32";length=5;infer_type=false]

  [:inputSource="storage_r";type="i32";length=5;infer_type=true]

  [:inputSource="storage_r";type="u32";length=10;infer_type=false]

  [:inputSource="storage_r";type="u32";length=10;infer_type=true]

  [:inputSource="storage_r";type="u32";length=1;infer_type=false]

  [:inputSource="storage_r";type="u32";length=1;infer_type=true]

  [:inputSource="storage_r";type="u32";length=5;infer_type=false]

  [:inputSource="storage_r";type="u32";length=5;infer_type=true]

  [:inputSource="storage_r";type="vec3f";length=10;infer_type=false]

  [:inputSource="storage_r";type="vec3f";length=10;infer_type=true]

  [:inputSource="storage_r";type="vec3f";length=1;infer_type=false]

  [:inputSource="storage_r";type="vec3f";length=1;infer_type=true]

  [:inputSource="storage_r";type="vec3f";length=5;infer_type=false]

  [:inputSource="storage_r";type="vec3f";length=5;infer_type=true]

  [:inputSource="storage_r";type="vec4i";length=10;infer_type=false]

  [:inputSource="storage_r";type="vec4i";length=10;infer_type=true]

  [:inputSource="storage_r";type="vec4i";length=1;infer_type=false]

  [:inputSource="storage_r";type="vec4i";length=1;infer_type=true]

  [:inputSource="storage_r";type="vec4i";length=5;infer_type=false]

  [:inputSource="storage_r";type="vec4i";length=5;infer_type=true]

  [:inputSource="storage_rw";type="bool";length=10;infer_type=false]

  [:inputSource="storage_rw";type="bool";length=10;infer_type=true]

  [:inputSource="storage_rw";type="bool";length=1;infer_type=false]

  [:inputSource="storage_rw";type="bool";length=1;infer_type=true]

  [:inputSource="storage_rw";type="bool";length=5;infer_type=false]

  [:inputSource="storage_rw";type="bool";length=5;infer_type=true]

  [:inputSource="storage_rw";type="f16";length=10;infer_type=false]

  [:inputSource="storage_rw";type="f16";length=10;infer_type=true]

  [:inputSource="storage_rw";type="f16";length=1;infer_type=false]

  [:inputSource="storage_rw";type="f16";length=1;infer_type=true]

  [:inputSource="storage_rw";type="f16";length=5;infer_type=false]

  [:inputSource="storage_rw";type="f16";length=5;infer_type=true]

  [:inputSource="storage_rw";type="f32";length=10;infer_type=false]

  [:inputSource="storage_rw";type="f32";length=10;infer_type=true]

  [:inputSource="storage_rw";type="f32";length=1;infer_type=false]

  [:inputSource="storage_rw";type="f32";length=1;infer_type=true]

  [:inputSource="storage_rw";type="f32";length=5;infer_type=false]

  [:inputSource="storage_rw";type="f32";length=5;infer_type=true]

  [:inputSource="storage_rw";type="i32";length=10;infer_type=false]

  [:inputSource="storage_rw";type="i32";length=10;infer_type=true]

  [:inputSource="storage_rw";type="i32";length=1;infer_type=false]

  [:inputSource="storage_rw";type="i32";length=1;infer_type=true]

  [:inputSource="storage_rw";type="i32";length=5;infer_type=false]

  [:inputSource="storage_rw";type="i32";length=5;infer_type=true]

  [:inputSource="storage_rw";type="u32";length=10;infer_type=false]

  [:inputSource="storage_rw";type="u32";length=10;infer_type=true]

  [:inputSource="storage_rw";type="u32";length=1;infer_type=false]

  [:inputSource="storage_rw";type="u32";length=1;infer_type=true]

  [:inputSource="storage_rw";type="u32";length=5;infer_type=false]

  [:inputSource="storage_rw";type="u32";length=5;infer_type=true]

  [:inputSource="storage_rw";type="vec3f";length=10;infer_type=false]

  [:inputSource="storage_rw";type="vec3f";length=10;infer_type=true]

  [:inputSource="storage_rw";type="vec3f";length=1;infer_type=false]

  [:inputSource="storage_rw";type="vec3f";length=1;infer_type=true]

  [:inputSource="storage_rw";type="vec3f";length=5;infer_type=false]

  [:inputSource="storage_rw";type="vec3f";length=5;infer_type=true]

  [:inputSource="storage_rw";type="vec4i";length=10;infer_type=false]

  [:inputSource="storage_rw";type="vec4i";length=10;infer_type=true]

  [:inputSource="storage_rw";type="vec4i";length=1;infer_type=false]

  [:inputSource="storage_rw";type="vec4i";length=1;infer_type=true]

  [:inputSource="storage_rw";type="vec4i";length=5;infer_type=false]

  [:inputSource="storage_rw";type="vec4i";length=5;infer_type=true]

  [:inputSource="uniform";type="bool";length=10;infer_type=false]

  [:inputSource="uniform";type="bool";length=10;infer_type=true]

  [:inputSource="uniform";type="bool";length=1;infer_type=false]

  [:inputSource="uniform";type="bool";length=1;infer_type=true]

  [:inputSource="uniform";type="bool";length=5;infer_type=false]

  [:inputSource="uniform";type="bool";length=5;infer_type=true]

  [:inputSource="uniform";type="f16";length=10;infer_type=false]

  [:inputSource="uniform";type="f16";length=10;infer_type=true]

  [:inputSource="uniform";type="f16";length=1;infer_type=false]

  [:inputSource="uniform";type="f16";length=1;infer_type=true]

  [:inputSource="uniform";type="f16";length=5;infer_type=false]

  [:inputSource="uniform";type="f16";length=5;infer_type=true]

  [:inputSource="uniform";type="f32";length=10;infer_type=false]

  [:inputSource="uniform";type="f32";length=10;infer_type=true]

  [:inputSource="uniform";type="f32";length=1;infer_type=false]

  [:inputSource="uniform";type="f32";length=1;infer_type=true]

  [:inputSource="uniform";type="f32";length=5;infer_type=false]

  [:inputSource="uniform";type="f32";length=5;infer_type=true]

  [:inputSource="uniform";type="i32";length=10;infer_type=false]

  [:inputSource="uniform";type="i32";length=10;infer_type=true]

  [:inputSource="uniform";type="i32";length=1;infer_type=false]

  [:inputSource="uniform";type="i32";length=1;infer_type=true]

  [:inputSource="uniform";type="i32";length=5;infer_type=false]

  [:inputSource="uniform";type="i32";length=5;infer_type=true]

  [:inputSource="uniform";type="u32";length=10;infer_type=false]

  [:inputSource="uniform";type="u32";length=10;infer_type=true]

  [:inputSource="uniform";type="u32";length=1;infer_type=false]

  [:inputSource="uniform";type="u32";length=1;infer_type=true]

  [:inputSource="uniform";type="u32";length=5;infer_type=false]

  [:inputSource="uniform";type="u32";length=5;infer_type=true]

  [:inputSource="uniform";type="vec3f";length=10;infer_type=false]

  [:inputSource="uniform";type="vec3f";length=10;infer_type=true]

  [:inputSource="uniform";type="vec3f";length=1;infer_type=false]

  [:inputSource="uniform";type="vec3f";length=1;infer_type=true]

  [:inputSource="uniform";type="vec3f";length=5;infer_type=false]

  [:inputSource="uniform";type="vec3f";length=5;infer_type=true]

  [:inputSource="uniform";type="vec4i";length=10;infer_type=false]

  [:inputSource="uniform";type="vec4i";length=10;infer_type=true]

  [:inputSource="uniform";type="vec4i";length=1;infer_type=false]

  [:inputSource="uniform";type="vec4i";length=1;infer_type=true]

  [:inputSource="uniform";type="vec4i";length=5;infer_type=false]

  [:inputSource="uniform";type="vec4i";length=5;infer_type=true]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_column_vectors:*]
  implementation-status:
    if os == "mac": backlog
  expected:
    if os == "mac": [OK, TIMEOUT]
  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": FAIL

  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [FAIL, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_elements:*]
  implementation-status:
    if os == "mac": backlog
  expected:
    if os == "mac": [OK, TIMEOUT]
  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": FAIL

  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [FAIL, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_elements:*]
  [:inputSource="const";type="bool";width=2;infer_type=false]

  [:inputSource="const";type="bool";width=2;infer_type=true]

  [:inputSource="const";type="bool";width=3;infer_type=false]

  [:inputSource="const";type="bool";width=3;infer_type=true]

  [:inputSource="const";type="bool";width=4;infer_type=false]

  [:inputSource="const";type="bool";width=4;infer_type=true]

  [:inputSource="const";type="f16";width=2;infer_type=false]

  [:inputSource="const";type="f16";width=2;infer_type=true]

  [:inputSource="const";type="f16";width=3;infer_type=false]

  [:inputSource="const";type="f16";width=3;infer_type=true]

  [:inputSource="const";type="f16";width=4;infer_type=false]

  [:inputSource="const";type="f16";width=4;infer_type=true]

  [:inputSource="const";type="f32";width=2;infer_type=false]

  [:inputSource="const";type="f32";width=2;infer_type=true]

  [:inputSource="const";type="f32";width=3;infer_type=false]

  [:inputSource="const";type="f32";width=3;infer_type=true]

  [:inputSource="const";type="f32";width=4;infer_type=false]

  [:inputSource="const";type="f32";width=4;infer_type=true]

  [:inputSource="const";type="i32";width=2;infer_type=false]

  [:inputSource="const";type="i32";width=2;infer_type=true]

  [:inputSource="const";type="i32";width=3;infer_type=false]

  [:inputSource="const";type="i32";width=3;infer_type=true]

  [:inputSource="const";type="i32";width=4;infer_type=false]

  [:inputSource="const";type="i32";width=4;infer_type=true]

  [:inputSource="const";type="u32";width=2;infer_type=false]

  [:inputSource="const";type="u32";width=2;infer_type=true]

  [:inputSource="const";type="u32";width=3;infer_type=false]

  [:inputSource="const";type="u32";width=3;infer_type=true]

  [:inputSource="const";type="u32";width=4;infer_type=false]

  [:inputSource="const";type="u32";width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=4;infer_type=true]

  [:inputSource="uniform";type="bool";width=2;infer_type=false]

  [:inputSource="uniform";type="bool";width=2;infer_type=true]

  [:inputSource="uniform";type="bool";width=3;infer_type=false]

  [:inputSource="uniform";type="bool";width=3;infer_type=true]

  [:inputSource="uniform";type="bool";width=4;infer_type=false]

  [:inputSource="uniform";type="bool";width=4;infer_type=true]

  [:inputSource="uniform";type="f16";width=2;infer_type=false]

  [:inputSource="uniform";type="f16";width=2;infer_type=true]

  [:inputSource="uniform";type="f16";width=3;infer_type=false]

  [:inputSource="uniform";type="f16";width=3;infer_type=true]

  [:inputSource="uniform";type="f16";width=4;infer_type=false]

  [:inputSource="uniform";type="f16";width=4;infer_type=true]

  [:inputSource="uniform";type="f32";width=2;infer_type=false]

  [:inputSource="uniform";type="f32";width=2;infer_type=true]

  [:inputSource="uniform";type="f32";width=3;infer_type=false]

  [:inputSource="uniform";type="f32";width=3;infer_type=true]

  [:inputSource="uniform";type="f32";width=4;infer_type=false]

  [:inputSource="uniform";type="f32";width=4;infer_type=true]

  [:inputSource="uniform";type="i32";width=2;infer_type=false]

  [:inputSource="uniform";type="i32";width=2;infer_type=true]

  [:inputSource="uniform";type="i32";width=3;infer_type=false]

  [:inputSource="uniform";type="i32";width=3;infer_type=true]

  [:inputSource="uniform";type="i32";width=4;infer_type=false]

  [:inputSource="uniform";type="i32";width=4;infer_type=true]

  [:inputSource="uniform";type="u32";width=2;infer_type=false]

  [:inputSource="uniform";type="u32";width=2;infer_type=true]

  [:inputSource="uniform";type="u32";width=3;infer_type=false]

  [:inputSource="uniform";type="u32";width=3;infer_type=true]

  [:inputSource="uniform";type="u32";width=4;infer_type=false]

  [:inputSource="uniform";type="u32";width=4;infer_type=true]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_mix:*]
  tags: [webgpu, webgpu-long]
  [:inputSource="const";type="bool";signature="22";infer_type=false]

  [:inputSource="const";type="bool";signature="22";infer_type=true]

  [:inputSource="const";type="bool";signature="2s";infer_type=false]

  [:inputSource="const";type="bool";signature="2s";infer_type=true]

  [:inputSource="const";type="bool";signature="2ss";infer_type=false]

  [:inputSource="const";type="bool";signature="2ss";infer_type=true]

  [:inputSource="const";type="bool";signature="3s";infer_type=false]

  [:inputSource="const";type="bool";signature="3s";infer_type=true]

  [:inputSource="const";type="bool";signature="s2";infer_type=false]

  [:inputSource="const";type="bool";signature="s2";infer_type=true]

  [:inputSource="const";type="bool";signature="s2s";infer_type=false]

  [:inputSource="const";type="bool";signature="s2s";infer_type=true]

  [:inputSource="const";type="bool";signature="s3";infer_type=false]

  [:inputSource="const";type="bool";signature="s3";infer_type=true]

  [:inputSource="const";type="bool";signature="ss2";infer_type=false]

  [:inputSource="const";type="bool";signature="ss2";infer_type=true]

  [:inputSource="const";type="f16";signature="22";infer_type=false]

  [:inputSource="const";type="f16";signature="22";infer_type=true]

  [:inputSource="const";type="f16";signature="2s";infer_type=false]

  [:inputSource="const";type="f16";signature="2s";infer_type=true]

  [:inputSource="const";type="f16";signature="2ss";infer_type=false]

  [:inputSource="const";type="f16";signature="2ss";infer_type=true]

  [:inputSource="const";type="f16";signature="3s";infer_type=false]

  [:inputSource="const";type="f16";signature="3s";infer_type=true]

  [:inputSource="const";type="f16";signature="s2";infer_type=false]

  [:inputSource="const";type="f16";signature="s2";infer_type=true]

  [:inputSource="const";type="f16";signature="s2s";infer_type=false]

  [:inputSource="const";type="f16";signature="s2s";infer_type=true]

  [:inputSource="const";type="f16";signature="s3";infer_type=false]

  [:inputSource="const";type="f16";signature="s3";infer_type=true]

  [:inputSource="const";type="f16";signature="ss2";infer_type=false]

  [:inputSource="const";type="f16";signature="ss2";infer_type=true]

  [:inputSource="const";type="f32";signature="22";infer_type=false]

  [:inputSource="const";type="f32";signature="22";infer_type=true]

  [:inputSource="const";type="f32";signature="2s";infer_type=false]

  [:inputSource="const";type="f32";signature="2s";infer_type=true]

  [:inputSource="const";type="f32";signature="2ss";infer_type=false]

  [:inputSource="const";type="f32";signature="2ss";infer_type=true]

  [:inputSource="const";type="f32";signature="3s";infer_type=false]

  [:inputSource="const";type="f32";signature="3s";infer_type=true]

  [:inputSource="const";type="f32";signature="s2";infer_type=false]

  [:inputSource="const";type="f32";signature="s2";infer_type=true]

  [:inputSource="const";type="f32";signature="s2s";infer_type=false]

  [:inputSource="const";type="f32";signature="s2s";infer_type=true]

  [:inputSource="const";type="f32";signature="s3";infer_type=false]

  [:inputSource="const";type="f32";signature="s3";infer_type=true]

  [:inputSource="const";type="f32";signature="ss2";infer_type=false]

  [:inputSource="const";type="f32";signature="ss2";infer_type=true]

  [:inputSource="const";type="i32";signature="22";infer_type=false]

  [:inputSource="const";type="i32";signature="22";infer_type=true]

  [:inputSource="const";type="i32";signature="2s";infer_type=false]

  [:inputSource="const";type="i32";signature="2s";infer_type=true]

  [:inputSource="const";type="i32";signature="2ss";infer_type=false]

  [:inputSource="const";type="i32";signature="2ss";infer_type=true]

  [:inputSource="const";type="i32";signature="3s";infer_type=false]

  [:inputSource="const";type="i32";signature="3s";infer_type=true]

  [:inputSource="const";type="i32";signature="s2";infer_type=false]

  [:inputSource="const";type="i32";signature="s2";infer_type=true]

  [:inputSource="const";type="i32";signature="s2s";infer_type=false]

  [:inputSource="const";type="i32";signature="s2s";infer_type=true]

  [:inputSource="const";type="i32";signature="s3";infer_type=false]

  [:inputSource="const";type="i32";signature="s3";infer_type=true]

  [:inputSource="const";type="i32";signature="ss2";infer_type=false]

  [:inputSource="const";type="i32";signature="ss2";infer_type=true]

  [:inputSource="const";type="u32";signature="22";infer_type=false]

  [:inputSource="const";type="u32";signature="22";infer_type=true]

  [:inputSource="const";type="u32";signature="2s";infer_type=false]

  [:inputSource="const";type="u32";signature="2s";infer_type=true]

  [:inputSource="const";type="u32";signature="2ss";infer_type=false]

  [:inputSource="const";type="u32";signature="2ss";infer_type=true]

  [:inputSource="const";type="u32";signature="3s";infer_type=false]

  [:inputSource="const";type="u32";signature="3s";infer_type=true]

  [:inputSource="const";type="u32";signature="s2";infer_type=false]

  [:inputSource="const";type="u32";signature="s2";infer_type=true]

  [:inputSource="const";type="u32";signature="s2s";infer_type=false]

  [:inputSource="const";type="u32";signature="s2s";infer_type=true]

  [:inputSource="const";type="u32";signature="s3";infer_type=false]

  [:inputSource="const";type="u32";signature="s3";infer_type=true]

  [:inputSource="const";type="u32";signature="ss2";infer_type=false]

  [:inputSource="const";type="u32";signature="ss2";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="22";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="22";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="2s";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="2s";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="2ss";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="2ss";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="3s";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="3s";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="s2";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="s2";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="s2s";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="s2s";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="s3";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="s3";infer_type=true]

  [:inputSource="storage_r";type="bool";signature="ss2";infer_type=false]

  [:inputSource="storage_r";type="bool";signature="ss2";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="22";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="22";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="2s";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="2s";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="2ss";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="2ss";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="3s";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="3s";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="s2";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="s2";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="s2s";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="s2s";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="s3";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="s3";infer_type=true]

  [:inputSource="storage_r";type="f16";signature="ss2";infer_type=false]

  [:inputSource="storage_r";type="f16";signature="ss2";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="22";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="22";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="2s";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="2s";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="2ss";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="2ss";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="3s";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="3s";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="s2";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="s2";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="s2s";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="s2s";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="s3";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="s3";infer_type=true]

  [:inputSource="storage_r";type="f32";signature="ss2";infer_type=false]

  [:inputSource="storage_r";type="f32";signature="ss2";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="22";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="22";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="2s";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="2s";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="2ss";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="2ss";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="3s";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="3s";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="s2";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="s2";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="s2s";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="s2s";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="s3";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="s3";infer_type=true]

  [:inputSource="storage_r";type="i32";signature="ss2";infer_type=false]

  [:inputSource="storage_r";type="i32";signature="ss2";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="22";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="22";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="2s";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="2s";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="2ss";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="2ss";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="3s";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="3s";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="s2";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="s2";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="s2s";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="s2s";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="s3";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="s3";infer_type=true]

  [:inputSource="storage_r";type="u32";signature="ss2";infer_type=false]

  [:inputSource="storage_r";type="u32";signature="ss2";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="22";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="22";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="2s";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="2s";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="2ss";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="2ss";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="3s";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="3s";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="s2";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="s2";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="s2s";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="s2s";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="s3";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="s3";infer_type=true]

  [:inputSource="storage_rw";type="bool";signature="ss2";infer_type=false]

  [:inputSource="storage_rw";type="bool";signature="ss2";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="22";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="22";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="2s";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="2s";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="2ss";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="2ss";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="3s";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="3s";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="s2";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="s2";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="s2s";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="s2s";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="s3";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="s3";infer_type=true]

  [:inputSource="storage_rw";type="f16";signature="ss2";infer_type=false]

  [:inputSource="storage_rw";type="f16";signature="ss2";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="22";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="22";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="2s";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="2s";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="2ss";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="2ss";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="3s";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="3s";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="s2";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="s2";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="s2s";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="s2s";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="s3";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="s3";infer_type=true]

  [:inputSource="storage_rw";type="f32";signature="ss2";infer_type=false]

  [:inputSource="storage_rw";type="f32";signature="ss2";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="22";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="22";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="2s";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="2s";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="2ss";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="2ss";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="3s";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="3s";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="s2";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="s2";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="s2s";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="s2s";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="s3";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="s3";infer_type=true]

  [:inputSource="storage_rw";type="i32";signature="ss2";infer_type=false]

  [:inputSource="storage_rw";type="i32";signature="ss2";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="22";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="22";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="2s";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="2s";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="2ss";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="2ss";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="3s";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="3s";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="s2";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="s2";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="s2s";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="s2s";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="s3";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="s3";infer_type=true]

  [:inputSource="storage_rw";type="u32";signature="ss2";infer_type=false]

  [:inputSource="storage_rw";type="u32";signature="ss2";infer_type=true]

  [:inputSource="uniform";type="bool";signature="22";infer_type=false]

  [:inputSource="uniform";type="bool";signature="22";infer_type=true]

  [:inputSource="uniform";type="bool";signature="2s";infer_type=false]

  [:inputSource="uniform";type="bool";signature="2s";infer_type=true]

  [:inputSource="uniform";type="bool";signature="2ss";infer_type=false]

  [:inputSource="uniform";type="bool";signature="2ss";infer_type=true]

  [:inputSource="uniform";type="bool";signature="3s";infer_type=false]

  [:inputSource="uniform";type="bool";signature="3s";infer_type=true]

  [:inputSource="uniform";type="bool";signature="s2";infer_type=false]

  [:inputSource="uniform";type="bool";signature="s2";infer_type=true]

  [:inputSource="uniform";type="bool";signature="s2s";infer_type=false]

  [:inputSource="uniform";type="bool";signature="s2s";infer_type=true]

  [:inputSource="uniform";type="bool";signature="s3";infer_type=false]

  [:inputSource="uniform";type="bool";signature="s3";infer_type=true]

  [:inputSource="uniform";type="bool";signature="ss2";infer_type=false]

  [:inputSource="uniform";type="bool";signature="ss2";infer_type=true]

  [:inputSource="uniform";type="f16";signature="22";infer_type=false]

  [:inputSource="uniform";type="f16";signature="22";infer_type=true]

  [:inputSource="uniform";type="f16";signature="2s";infer_type=false]

  [:inputSource="uniform";type="f16";signature="2s";infer_type=true]

  [:inputSource="uniform";type="f16";signature="2ss";infer_type=false]

  [:inputSource="uniform";type="f16";signature="2ss";infer_type=true]

  [:inputSource="uniform";type="f16";signature="3s";infer_type=false]

  [:inputSource="uniform";type="f16";signature="3s";infer_type=true]

  [:inputSource="uniform";type="f16";signature="s2";infer_type=false]

  [:inputSource="uniform";type="f16";signature="s2";infer_type=true]

  [:inputSource="uniform";type="f16";signature="s2s";infer_type=false]

  [:inputSource="uniform";type="f16";signature="s2s";infer_type=true]

  [:inputSource="uniform";type="f16";signature="s3";infer_type=false]

  [:inputSource="uniform";type="f16";signature="s3";infer_type=true]

  [:inputSource="uniform";type="f16";signature="ss2";infer_type=false]

  [:inputSource="uniform";type="f16";signature="ss2";infer_type=true]

  [:inputSource="uniform";type="f32";signature="22";infer_type=false]

  [:inputSource="uniform";type="f32";signature="22";infer_type=true]

  [:inputSource="uniform";type="f32";signature="2s";infer_type=false]

  [:inputSource="uniform";type="f32";signature="2s";infer_type=true]

  [:inputSource="uniform";type="f32";signature="2ss";infer_type=false]

  [:inputSource="uniform";type="f32";signature="2ss";infer_type=true]

  [:inputSource="uniform";type="f32";signature="3s";infer_type=false]

  [:inputSource="uniform";type="f32";signature="3s";infer_type=true]

  [:inputSource="uniform";type="f32";signature="s2";infer_type=false]

  [:inputSource="uniform";type="f32";signature="s2";infer_type=true]

  [:inputSource="uniform";type="f32";signature="s2s";infer_type=false]

  [:inputSource="uniform";type="f32";signature="s2s";infer_type=true]

  [:inputSource="uniform";type="f32";signature="s3";infer_type=false]

  [:inputSource="uniform";type="f32";signature="s3";infer_type=true]

  [:inputSource="uniform";type="f32";signature="ss2";infer_type=false]

  [:inputSource="uniform";type="f32";signature="ss2";infer_type=true]

  [:inputSource="uniform";type="i32";signature="22";infer_type=false]

  [:inputSource="uniform";type="i32";signature="22";infer_type=true]

  [:inputSource="uniform";type="i32";signature="2s";infer_type=false]

  [:inputSource="uniform";type="i32";signature="2s";infer_type=true]

  [:inputSource="uniform";type="i32";signature="2ss";infer_type=false]

  [:inputSource="uniform";type="i32";signature="2ss";infer_type=true]

  [:inputSource="uniform";type="i32";signature="3s";infer_type=false]

  [:inputSource="uniform";type="i32";signature="3s";infer_type=true]

  [:inputSource="uniform";type="i32";signature="s2";infer_type=false]

  [:inputSource="uniform";type="i32";signature="s2";infer_type=true]

  [:inputSource="uniform";type="i32";signature="s2s";infer_type=false]

  [:inputSource="uniform";type="i32";signature="s2s";infer_type=true]

  [:inputSource="uniform";type="i32";signature="s3";infer_type=false]

  [:inputSource="uniform";type="i32";signature="s3";infer_type=true]

  [:inputSource="uniform";type="i32";signature="ss2";infer_type=false]

  [:inputSource="uniform";type="i32";signature="ss2";infer_type=true]

  [:inputSource="uniform";type="u32";signature="22";infer_type=false]

  [:inputSource="uniform";type="u32";signature="22";infer_type=true]

  [:inputSource="uniform";type="u32";signature="2s";infer_type=false]

  [:inputSource="uniform";type="u32";signature="2s";infer_type=true]

  [:inputSource="uniform";type="u32";signature="2ss";infer_type=false]

  [:inputSource="uniform";type="u32";signature="2ss";infer_type=true]

  [:inputSource="uniform";type="u32";signature="3s";infer_type=false]

  [:inputSource="uniform";type="u32";signature="3s";infer_type=true]

  [:inputSource="uniform";type="u32";signature="s2";infer_type=false]

  [:inputSource="uniform";type="u32";signature="s2";infer_type=true]

  [:inputSource="uniform";type="u32";signature="s2s";infer_type=false]

  [:inputSource="uniform";type="u32";signature="s2s";infer_type=true]

  [:inputSource="uniform";type="u32";signature="s3";infer_type=false]

  [:inputSource="uniform";type="u32";signature="s3";infer_type=true]

  [:inputSource="uniform";type="u32";signature="ss2";infer_type=false]

  [:inputSource="uniform";type="u32";signature="ss2";infer_type=true]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_splat:*]
  tags: [webgpu, webgpu-long]
  [:inputSource="const";type="bool";value="max";width=2;infer_type=false]

  [:inputSource="const";type="bool";value="max";width=2;infer_type=true]

  [:inputSource="const";type="bool";value="max";width=3;infer_type=false]

  [:inputSource="const";type="bool";value="max";width=3;infer_type=true]

  [:inputSource="const";type="bool";value="max";width=4;infer_type=false]

  [:inputSource="const";type="bool";value="max";width=4;infer_type=true]

  [:inputSource="const";type="bool";value="min";width=2;infer_type=false]

  [:inputSource="const";type="bool";value="min";width=2;infer_type=true]

  [:inputSource="const";type="bool";value="min";width=3;infer_type=false]

  [:inputSource="const";type="bool";value="min";width=3;infer_type=true]

  [:inputSource="const";type="bool";value="min";width=4;infer_type=false]

  [:inputSource="const";type="bool";value="min";width=4;infer_type=true]

  [:inputSource="const";type="bool";value=100;width=2;infer_type=false]

  [:inputSource="const";type="bool";value=100;width=2;infer_type=true]

  [:inputSource="const";type="bool";value=100;width=3;infer_type=false]

  [:inputSource="const";type="bool";value=100;width=3;infer_type=true]

  [:inputSource="const";type="bool";value=100;width=4;infer_type=false]

  [:inputSource="const";type="bool";value=100;width=4;infer_type=true]

  [:inputSource="const";type="bool";value=1;width=2;infer_type=false]

  [:inputSource="const";type="bool";value=1;width=2;infer_type=true]

  [:inputSource="const";type="bool";value=1;width=3;infer_type=false]

  [:inputSource="const";type="bool";value=1;width=3;infer_type=true]

  [:inputSource="const";type="bool";value=1;width=4;infer_type=false]

  [:inputSource="const";type="bool";value=1;width=4;infer_type=true]

  [:inputSource="const";type="bool";value=2;width=2;infer_type=false]

  [:inputSource="const";type="bool";value=2;width=2;infer_type=true]

  [:inputSource="const";type="bool";value=2;width=3;infer_type=false]

  [:inputSource="const";type="bool";value=2;width=3;infer_type=true]

  [:inputSource="const";type="bool";value=2;width=4;infer_type=false]

  [:inputSource="const";type="bool";value=2;width=4;infer_type=true]

  [:inputSource="const";type="bool";value=5;width=2;infer_type=false]

  [:inputSource="const";type="bool";value=5;width=2;infer_type=true]

  [:inputSource="const";type="bool";value=5;width=3;infer_type=false]

  [:inputSource="const";type="bool";value=5;width=3;infer_type=true]

  [:inputSource="const";type="bool";value=5;width=4;infer_type=false]

  [:inputSource="const";type="bool";value=5;width=4;infer_type=true]

  [:inputSource="const";type="f16";value="max";width=2;infer_type=false]

  [:inputSource="const";type="f16";value="max";width=2;infer_type=true]

  [:inputSource="const";type="f16";value="max";width=3;infer_type=false]

  [:inputSource="const";type="f16";value="max";width=3;infer_type=true]

  [:inputSource="const";type="f16";value="max";width=4;infer_type=false]

  [:inputSource="const";type="f16";value="max";width=4;infer_type=true]

  [:inputSource="const";type="f16";value="min";width=2;infer_type=false]

  [:inputSource="const";type="f16";value="min";width=2;infer_type=true]

  [:inputSource="const";type="f16";value="min";width=3;infer_type=false]

  [:inputSource="const";type="f16";value="min";width=3;infer_type=true]

  [:inputSource="const";type="f16";value="min";width=4;infer_type=false]

  [:inputSource="const";type="f16";value="min";width=4;infer_type=true]

  [:inputSource="const";type="f16";value=100;width=2;infer_type=false]

  [:inputSource="const";type="f16";value=100;width=2;infer_type=true]

  [:inputSource="const";type="f16";value=100;width=3;infer_type=false]

  [:inputSource="const";type="f16";value=100;width=3;infer_type=true]

  [:inputSource="const";type="f16";value=100;width=4;infer_type=false]

  [:inputSource="const";type="f16";value=100;width=4;infer_type=true]

  [:inputSource="const";type="f16";value=1;width=2;infer_type=false]

  [:inputSource="const";type="f16";value=1;width=2;infer_type=true]

  [:inputSource="const";type="f16";value=1;width=3;infer_type=false]

  [:inputSource="const";type="f16";value=1;width=3;infer_type=true]

  [:inputSource="const";type="f16";value=1;width=4;infer_type=false]

  [:inputSource="const";type="f16";value=1;width=4;infer_type=true]

  [:inputSource="const";type="f16";value=2;width=2;infer_type=false]

  [:inputSource="const";type="f16";value=2;width=2;infer_type=true]

  [:inputSource="const";type="f16";value=2;width=3;infer_type=false]

  [:inputSource="const";type="f16";value=2;width=3;infer_type=true]

  [:inputSource="const";type="f16";value=2;width=4;infer_type=false]

  [:inputSource="const";type="f16";value=2;width=4;infer_type=true]

  [:inputSource="const";type="f16";value=5;width=2;infer_type=false]

  [:inputSource="const";type="f16";value=5;width=2;infer_type=true]

  [:inputSource="const";type="f16";value=5;width=3;infer_type=false]

  [:inputSource="const";type="f16";value=5;width=3;infer_type=true]

  [:inputSource="const";type="f16";value=5;width=4;infer_type=false]

  [:inputSource="const";type="f16";value=5;width=4;infer_type=true]

  [:inputSource="const";type="f32";value="max";width=2;infer_type=false]

  [:inputSource="const";type="f32";value="max";width=2;infer_type=true]

  [:inputSource="const";type="f32";value="max";width=3;infer_type=false]

  [:inputSource="const";type="f32";value="max";width=3;infer_type=true]

  [:inputSource="const";type="f32";value="max";width=4;infer_type=false]

  [:inputSource="const";type="f32";value="max";width=4;infer_type=true]

  [:inputSource="const";type="f32";value="min";width=2;infer_type=false]

  [:inputSource="const";type="f32";value="min";width=2;infer_type=true]

  [:inputSource="const";type="f32";value="min";width=3;infer_type=false]

  [:inputSource="const";type="f32";value="min";width=3;infer_type=true]

  [:inputSource="const";type="f32";value="min";width=4;infer_type=false]

  [:inputSource="const";type="f32";value="min";width=4;infer_type=true]

  [:inputSource="const";type="f32";value=100;width=2;infer_type=false]

  [:inputSource="const";type="f32";value=100;width=2;infer_type=true]

  [:inputSource="const";type="f32";value=100;width=3;infer_type=false]

  [:inputSource="const";type="f32";value=100;width=3;infer_type=true]

  [:inputSource="const";type="f32";value=100;width=4;infer_type=false]

  [:inputSource="const";type="f32";value=100;width=4;infer_type=true]

  [:inputSource="const";type="f32";value=1;width=2;infer_type=false]

  [:inputSource="const";type="f32";value=1;width=2;infer_type=true]

  [:inputSource="const";type="f32";value=1;width=3;infer_type=false]

  [:inputSource="const";type="f32";value=1;width=3;infer_type=true]

  [:inputSource="const";type="f32";value=1;width=4;infer_type=false]

  [:inputSource="const";type="f32";value=1;width=4;infer_type=true]

  [:inputSource="const";type="f32";value=2;width=2;infer_type=false]

  [:inputSource="const";type="f32";value=2;width=2;infer_type=true]

  [:inputSource="const";type="f32";value=2;width=3;infer_type=false]

  [:inputSource="const";type="f32";value=2;width=3;infer_type=true]

  [:inputSource="const";type="f32";value=2;width=4;infer_type=false]

  [:inputSource="const";type="f32";value=2;width=4;infer_type=true]

  [:inputSource="const";type="f32";value=5;width=2;infer_type=false]

  [:inputSource="const";type="f32";value=5;width=2;infer_type=true]

  [:inputSource="const";type="f32";value=5;width=3;infer_type=false]

  [:inputSource="const";type="f32";value=5;width=3;infer_type=true]

  [:inputSource="const";type="f32";value=5;width=4;infer_type=false]

  [:inputSource="const";type="f32";value=5;width=4;infer_type=true]

  [:inputSource="const";type="i32";value="max";width=2;infer_type=false]

  [:inputSource="const";type="i32";value="max";width=2;infer_type=true]

  [:inputSource="const";type="i32";value="max";width=3;infer_type=false]

  [:inputSource="const";type="i32";value="max";width=3;infer_type=true]

  [:inputSource="const";type="i32";value="max";width=4;infer_type=false]

  [:inputSource="const";type="i32";value="max";width=4;infer_type=true]

  [:inputSource="const";type="i32";value="min";width=2;infer_type=false]

  [:inputSource="const";type="i32";value="min";width=2;infer_type=true]

  [:inputSource="const";type="i32";value="min";width=3;infer_type=false]

  [:inputSource="const";type="i32";value="min";width=3;infer_type=true]

  [:inputSource="const";type="i32";value="min";width=4;infer_type=false]

  [:inputSource="const";type="i32";value="min";width=4;infer_type=true]

  [:inputSource="const";type="i32";value=100;width=2;infer_type=false]

  [:inputSource="const";type="i32";value=100;width=2;infer_type=true]

  [:inputSource="const";type="i32";value=100;width=3;infer_type=false]

  [:inputSource="const";type="i32";value=100;width=3;infer_type=true]

  [:inputSource="const";type="i32";value=100;width=4;infer_type=false]

  [:inputSource="const";type="i32";value=100;width=4;infer_type=true]

  [:inputSource="const";type="i32";value=1;width=2;infer_type=false]

  [:inputSource="const";type="i32";value=1;width=2;infer_type=true]

  [:inputSource="const";type="i32";value=1;width=3;infer_type=false]

  [:inputSource="const";type="i32";value=1;width=3;infer_type=true]

  [:inputSource="const";type="i32";value=1;width=4;infer_type=false]

  [:inputSource="const";type="i32";value=1;width=4;infer_type=true]

  [:inputSource="const";type="i32";value=2;width=2;infer_type=false]

  [:inputSource="const";type="i32";value=2;width=2;infer_type=true]

  [:inputSource="const";type="i32";value=2;width=3;infer_type=false]

  [:inputSource="const";type="i32";value=2;width=3;infer_type=true]

  [:inputSource="const";type="i32";value=2;width=4;infer_type=false]

  [:inputSource="const";type="i32";value=2;width=4;infer_type=true]

  [:inputSource="const";type="i32";value=5;width=2;infer_type=false]

  [:inputSource="const";type="i32";value=5;width=2;infer_type=true]

  [:inputSource="const";type="i32";value=5;width=3;infer_type=false]

  [:inputSource="const";type="i32";value=5;width=3;infer_type=true]

  [:inputSource="const";type="i32";value=5;width=4;infer_type=false]

  [:inputSource="const";type="i32";value=5;width=4;infer_type=true]

  [:inputSource="const";type="u32";value="max";width=2;infer_type=false]

  [:inputSource="const";type="u32";value="max";width=2;infer_type=true]

  [:inputSource="const";type="u32";value="max";width=3;infer_type=false]

  [:inputSource="const";type="u32";value="max";width=3;infer_type=true]

  [:inputSource="const";type="u32";value="max";width=4;infer_type=false]

  [:inputSource="const";type="u32";value="max";width=4;infer_type=true]

  [:inputSource="const";type="u32";value="min";width=2;infer_type=false]

  [:inputSource="const";type="u32";value="min";width=2;infer_type=true]

  [:inputSource="const";type="u32";value="min";width=3;infer_type=false]

  [:inputSource="const";type="u32";value="min";width=3;infer_type=true]

  [:inputSource="const";type="u32";value="min";width=4;infer_type=false]

  [:inputSource="const";type="u32";value="min";width=4;infer_type=true]

  [:inputSource="const";type="u32";value=100;width=2;infer_type=false]

  [:inputSource="const";type="u32";value=100;width=2;infer_type=true]

  [:inputSource="const";type="u32";value=100;width=3;infer_type=false]

  [:inputSource="const";type="u32";value=100;width=3;infer_type=true]

  [:inputSource="const";type="u32";value=100;width=4;infer_type=false]

  [:inputSource="const";type="u32";value=100;width=4;infer_type=true]

  [:inputSource="const";type="u32";value=1;width=2;infer_type=false]

  [:inputSource="const";type="u32";value=1;width=2;infer_type=true]

  [:inputSource="const";type="u32";value=1;width=3;infer_type=false]

  [:inputSource="const";type="u32";value=1;width=3;infer_type=true]

  [:inputSource="const";type="u32";value=1;width=4;infer_type=false]

  [:inputSource="const";type="u32";value=1;width=4;infer_type=true]

  [:inputSource="const";type="u32";value=2;width=2;infer_type=false]

  [:inputSource="const";type="u32";value=2;width=2;infer_type=true]

  [:inputSource="const";type="u32";value=2;width=3;infer_type=false]

  [:inputSource="const";type="u32";value=2;width=3;infer_type=true]

  [:inputSource="const";type="u32";value=2;width=4;infer_type=false]

  [:inputSource="const";type="u32";value=2;width=4;infer_type=true]

  [:inputSource="const";type="u32";value=5;width=2;infer_type=false]

  [:inputSource="const";type="u32";value=5;width=2;infer_type=true]

  [:inputSource="const";type="u32";value=5;width=3;infer_type=false]

  [:inputSource="const";type="u32";value=5;width=3;infer_type=true]

  [:inputSource="const";type="u32";value=5;width=4;infer_type=false]

  [:inputSource="const";type="u32";value=5;width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value="max";width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value="max";width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value="max";width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value="max";width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value="max";width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value="max";width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value="min";width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value="min";width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value="min";width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value="min";width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value="min";width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value="min";width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value=100;width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value=100;width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value=100;width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value=100;width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value=100;width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value=100;width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value=1;width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value=1;width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value=1;width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value=1;width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value=1;width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value=1;width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value=2;width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value=2;width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value=2;width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value=2;width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value=2;width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value=2;width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";value=5;width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";value=5;width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";value=5;width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";value=5;width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";value=5;width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";value=5;width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value="max";width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value="max";width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value="max";width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value="max";width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value="max";width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value="max";width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value="min";width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value="min";width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value="min";width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value="min";width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value="min";width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value="min";width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value=100;width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value=100;width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value=100;width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value=100;width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value=100;width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value=100;width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value=1;width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value=1;width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value=1;width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value=1;width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value=1;width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value=1;width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value=2;width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value=2;width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value=2;width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value=2;width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value=2;width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value=2;width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";value=5;width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";value=5;width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";value=5;width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";value=5;width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";value=5;width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";value=5;width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value="max";width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value="max";width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value="max";width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value="max";width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value="max";width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value="max";width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value="min";width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value="min";width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value="min";width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value="min";width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value="min";width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value="min";width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value=100;width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value=100;width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value=100;width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value=100;width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value=100;width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value=100;width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value=1;width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value=1;width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value=1;width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value=1;width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value=1;width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value=1;width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value=2;width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value=2;width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value=2;width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value=2;width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value=2;width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value=2;width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";value=5;width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";value=5;width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";value=5;width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";value=5;width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";value=5;width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";value=5;width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value="max";width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value="max";width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value="max";width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value="max";width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value="max";width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value="max";width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value="min";width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value="min";width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value="min";width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value="min";width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value="min";width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value="min";width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value=100;width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value=100;width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value=100;width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value=100;width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value=100;width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value=100;width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value=1;width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value=1;width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value=1;width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value=1;width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value=1;width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value=1;width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value=2;width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value=2;width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value=2;width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value=2;width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value=2;width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value=2;width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";value=5;width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";value=5;width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";value=5;width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";value=5;width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";value=5;width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";value=5;width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value="max";width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value="max";width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value="max";width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value="max";width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value="max";width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value="max";width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value="min";width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value="min";width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value="min";width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value="min";width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value="min";width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value="min";width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value=100;width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value=100;width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value=100;width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value=100;width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value=100;width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value=100;width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value=1;width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value=1;width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value=1;width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value=1;width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value=1;width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value=1;width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value=2;width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value=2;width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value=2;width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value=2;width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value=2;width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value=2;width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";value=5;width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";value=5;width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";value=5;width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";value=5;width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";value=5;width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";value=5;width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="max";width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="max";width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="max";width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="max";width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="max";width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="max";width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="min";width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="min";width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="min";width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="min";width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value="min";width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value="min";width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=100;width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=100;width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=100;width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=100;width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=100;width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=100;width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=1;width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=1;width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=1;width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=1;width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=1;width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=1;width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=2;width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=2;width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=2;width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=2;width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=2;width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=2;width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=5;width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=5;width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=5;width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=5;width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";value=5;width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";value=5;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="max";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="max";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="max";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="max";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="max";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="max";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="min";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="min";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="min";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="min";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value="min";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value="min";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=100;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=100;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=100;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=100;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=100;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=100;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=1;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=1;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=1;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=1;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=1;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=1;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=2;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=2;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=2;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=2;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=2;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=2;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=5;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=5;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=5;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=5;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";value=5;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";value=5;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="max";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="max";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="max";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="max";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="max";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="max";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="min";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="min";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="min";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="min";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value="min";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value="min";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=100;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=100;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=100;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=100;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=100;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=100;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=1;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=1;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=1;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=1;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=1;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=1;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=2;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=2;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=2;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=2;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=2;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=2;width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=5;width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=5;width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=5;width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=5;width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";value=5;width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";value=5;width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="max";width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="max";width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="max";width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="max";width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="max";width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="max";width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="min";width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="min";width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="min";width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="min";width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value="min";width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value="min";width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=100;width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=100;width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=100;width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=100;width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=100;width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=100;width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=1;width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=1;width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=1;width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=1;width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=1;width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=1;width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=2;width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=2;width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=2;width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=2;width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=2;width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=2;width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=5;width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=5;width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=5;width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=5;width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";value=5;width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";value=5;width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="max";width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="max";width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="max";width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="max";width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="max";width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="max";width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="min";width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="min";width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="min";width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="min";width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value="min";width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value="min";width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=100;width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=100;width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=100;width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=100;width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=100;width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=100;width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=1;width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=1;width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=1;width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=1;width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=1;width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=1;width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=2;width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=2;width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=2;width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=2;width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=2;width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=2;width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=5;width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=5;width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=5;width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=5;width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";value=5;width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";value=5;width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value="max";width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value="max";width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value="max";width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value="max";width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value="max";width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value="max";width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value="min";width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value="min";width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value="min";width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value="min";width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value="min";width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value="min";width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value=100;width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value=100;width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value=100;width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value=100;width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value=100;width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value=100;width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value=1;width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value=1;width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value=1;width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value=1;width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value=1;width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value=1;width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value=2;width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value=2;width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value=2;width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value=2;width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value=2;width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value=2;width=4;infer_type=true]

  [:inputSource="uniform";type="bool";value=5;width=2;infer_type=false]

  [:inputSource="uniform";type="bool";value=5;width=2;infer_type=true]

  [:inputSource="uniform";type="bool";value=5;width=3;infer_type=false]

  [:inputSource="uniform";type="bool";value=5;width=3;infer_type=true]

  [:inputSource="uniform";type="bool";value=5;width=4;infer_type=false]

  [:inputSource="uniform";type="bool";value=5;width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value="max";width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value="max";width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value="max";width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value="max";width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value="max";width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value="max";width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value="min";width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value="min";width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value="min";width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value="min";width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value="min";width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value="min";width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value=100;width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value=100;width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value=100;width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value=100;width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value=100;width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value=100;width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value=1;width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value=1;width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value=1;width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value=1;width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value=1;width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value=1;width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value=2;width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value=2;width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value=2;width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value=2;width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value=2;width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value=2;width=4;infer_type=true]

  [:inputSource="uniform";type="f16";value=5;width=2;infer_type=false]

  [:inputSource="uniform";type="f16";value=5;width=2;infer_type=true]

  [:inputSource="uniform";type="f16";value=5;width=3;infer_type=false]

  [:inputSource="uniform";type="f16";value=5;width=3;infer_type=true]

  [:inputSource="uniform";type="f16";value=5;width=4;infer_type=false]

  [:inputSource="uniform";type="f16";value=5;width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value="max";width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value="max";width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value="max";width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value="max";width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value="max";width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value="max";width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value="min";width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value="min";width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value="min";width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value="min";width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value="min";width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value="min";width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value=100;width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value=100;width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value=100;width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value=100;width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value=100;width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value=100;width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value=1;width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value=1;width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value=1;width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value=1;width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value=1;width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value=1;width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value=2;width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value=2;width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value=2;width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value=2;width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value=2;width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value=2;width=4;infer_type=true]

  [:inputSource="uniform";type="f32";value=5;width=2;infer_type=false]

  [:inputSource="uniform";type="f32";value=5;width=2;infer_type=true]

  [:inputSource="uniform";type="f32";value=5;width=3;infer_type=false]

  [:inputSource="uniform";type="f32";value=5;width=3;infer_type=true]

  [:inputSource="uniform";type="f32";value=5;width=4;infer_type=false]

  [:inputSource="uniform";type="f32";value=5;width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value="max";width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value="max";width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value="max";width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value="max";width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value="max";width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value="max";width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value="min";width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value="min";width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value="min";width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value="min";width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value="min";width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value="min";width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value=100;width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value=100;width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value=100;width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value=100;width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value=100;width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value=100;width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value=1;width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value=1;width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value=1;width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value=1;width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value=1;width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value=1;width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value=2;width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value=2;width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value=2;width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value=2;width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value=2;width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value=2;width=4;infer_type=true]

  [:inputSource="uniform";type="i32";value=5;width=2;infer_type=false]

  [:inputSource="uniform";type="i32";value=5;width=2;infer_type=true]

  [:inputSource="uniform";type="i32";value=5;width=3;infer_type=false]

  [:inputSource="uniform";type="i32";value=5;width=3;infer_type=true]

  [:inputSource="uniform";type="i32";value=5;width=4;infer_type=false]

  [:inputSource="uniform";type="i32";value=5;width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value="max";width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value="max";width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value="max";width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value="max";width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value="max";width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value="max";width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value="min";width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value="min";width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value="min";width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value="min";width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value="min";width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value="min";width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value=100;width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value=100;width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value=100;width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value=100;width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value=100;width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value=100;width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value=1;width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value=1;width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value=1;width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value=1;width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value=1;width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value=1;width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value=2;width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value=2;width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value=2;width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value=2;width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value=2;width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value=2;width=4;infer_type=true]

  [:inputSource="uniform";type="u32";value=5;width=2;infer_type=false]

  [:inputSource="uniform";type="u32";value=5;width=2;infer_type=true]

  [:inputSource="uniform";type="u32";value=5;width=3;infer_type=false]

  [:inputSource="uniform";type="u32";value=5;width=3;infer_type=true]

  [:inputSource="uniform";type="u32";value=5;width=4;infer_type=false]

  [:inputSource="uniform";type="u32";value=5;width=4;infer_type=true]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:matrix_identity:*]
  implementation-status:
    if os == "mac": backlog
  expected:
    if os == "mac": [OK, TIMEOUT]
  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": FAIL

  [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [FAIL, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]

  [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:scalar_identity:*]
  [:inputSource="const";type="bool";value="max"]

  [:inputSource="const";type="bool";value="min"]

  [:inputSource="const";type="bool";value=1]

  [:inputSource="const";type="bool";value=100]

  [:inputSource="const";type="bool";value=2]

  [:inputSource="const";type="bool";value=5]

  [:inputSource="const";type="f16";value="max"]

  [:inputSource="const";type="f16";value="min"]

  [:inputSource="const";type="f16";value=1]

  [:inputSource="const";type="f16";value=100]

  [:inputSource="const";type="f16";value=2]

  [:inputSource="const";type="f16";value=5]

  [:inputSource="const";type="f32";value="max"]

  [:inputSource="const";type="f32";value="min"]

  [:inputSource="const";type="f32";value=1]

  [:inputSource="const";type="f32";value=100]

  [:inputSource="const";type="f32";value=2]

  [:inputSource="const";type="f32";value=5]

  [:inputSource="const";type="i32";value="max"]

  [:inputSource="const";type="i32";value="min"]

  [:inputSource="const";type="i32";value=1]

  [:inputSource="const";type="i32";value=100]

  [:inputSource="const";type="i32";value=2]

  [:inputSource="const";type="i32";value=5]

  [:inputSource="const";type="u32";value="max"]

  [:inputSource="const";type="u32";value="min"]

  [:inputSource="const";type="u32";value=1]

  [:inputSource="const";type="u32";value=100]

  [:inputSource="const";type="u32";value=2]

  [:inputSource="const";type="u32";value=5]

  [:inputSource="storage_r";type="bool";value="max"]

  [:inputSource="storage_r";type="bool";value="min"]

  [:inputSource="storage_r";type="bool";value=1]

  [:inputSource="storage_r";type="bool";value=100]

  [:inputSource="storage_r";type="bool";value=2]

  [:inputSource="storage_r";type="bool";value=5]

  [:inputSource="storage_r";type="f16";value="max"]

  [:inputSource="storage_r";type="f16";value="min"]

  [:inputSource="storage_r";type="f16";value=1]

  [:inputSource="storage_r";type="f16";value=100]

  [:inputSource="storage_r";type="f16";value=2]

  [:inputSource="storage_r";type="f16";value=5]

  [:inputSource="storage_r";type="f32";value="max"]

  [:inputSource="storage_r";type="f32";value="min"]

  [:inputSource="storage_r";type="f32";value=1]

  [:inputSource="storage_r";type="f32";value=100]

  [:inputSource="storage_r";type="f32";value=2]

  [:inputSource="storage_r";type="f32";value=5]

  [:inputSource="storage_r";type="i32";value="max"]

  [:inputSource="storage_r";type="i32";value="min"]

  [:inputSource="storage_r";type="i32";value=1]

  [:inputSource="storage_r";type="i32";value=100]

  [:inputSource="storage_r";type="i32";value=2]

  [:inputSource="storage_r";type="i32";value=5]

  [:inputSource="storage_r";type="u32";value="max"]

  [:inputSource="storage_r";type="u32";value="min"]

  [:inputSource="storage_r";type="u32";value=1]

  [:inputSource="storage_r";type="u32";value=100]

  [:inputSource="storage_r";type="u32";value=2]

  [:inputSource="storage_r";type="u32";value=5]

  [:inputSource="storage_rw";type="bool";value="max"]

  [:inputSource="storage_rw";type="bool";value="min"]

  [:inputSource="storage_rw";type="bool";value=1]

  [:inputSource="storage_rw";type="bool";value=100]

  [:inputSource="storage_rw";type="bool";value=2]

  [:inputSource="storage_rw";type="bool";value=5]

  [:inputSource="storage_rw";type="f16";value="max"]

  [:inputSource="storage_rw";type="f16";value="min"]

  [:inputSource="storage_rw";type="f16";value=1]

  [:inputSource="storage_rw";type="f16";value=100]

  [:inputSource="storage_rw";type="f16";value=2]

  [:inputSource="storage_rw";type="f16";value=5]

  [:inputSource="storage_rw";type="f32";value="max"]

  [:inputSource="storage_rw";type="f32";value="min"]

  [:inputSource="storage_rw";type="f32";value=1]

  [:inputSource="storage_rw";type="f32";value=100]

  [:inputSource="storage_rw";type="f32";value=2]

  [:inputSource="storage_rw";type="f32";value=5]

  [:inputSource="storage_rw";type="i32";value="max"]

  [:inputSource="storage_rw";type="i32";value="min"]

  [:inputSource="storage_rw";type="i32";value=1]

  [:inputSource="storage_rw";type="i32";value=100]

  [:inputSource="storage_rw";type="i32";value=2]

  [:inputSource="storage_rw";type="i32";value=5]

  [:inputSource="storage_rw";type="u32";value="max"]

  [:inputSource="storage_rw";type="u32";value="min"]

  [:inputSource="storage_rw";type="u32";value=1]

  [:inputSource="storage_rw";type="u32";value=100]

  [:inputSource="storage_rw";type="u32";value=2]

  [:inputSource="storage_rw";type="u32";value=5]

  [:inputSource="uniform";type="bool";value="max"]

  [:inputSource="uniform";type="bool";value="min"]

  [:inputSource="uniform";type="bool";value=1]

  [:inputSource="uniform";type="bool";value=100]

  [:inputSource="uniform";type="bool";value=2]

  [:inputSource="uniform";type="bool";value=5]

  [:inputSource="uniform";type="f16";value="max"]

  [:inputSource="uniform";type="f16";value="min"]

  [:inputSource="uniform";type="f16";value=1]

  [:inputSource="uniform";type="f16";value=100]

  [:inputSource="uniform";type="f16";value=2]

  [:inputSource="uniform";type="f16";value=5]

  [:inputSource="uniform";type="f32";value="max"]

  [:inputSource="uniform";type="f32";value="min"]

  [:inputSource="uniform";type="f32";value=1]

  [:inputSource="uniform";type="f32";value=100]

  [:inputSource="uniform";type="f32";value=2]

  [:inputSource="uniform";type="f32";value=5]

  [:inputSource="uniform";type="i32";value="max"]

  [:inputSource="uniform";type="i32";value="min"]

  [:inputSource="uniform";type="i32";value=1]

  [:inputSource="uniform";type="i32";value=100]

  [:inputSource="uniform";type="i32";value=2]

  [:inputSource="uniform";type="i32";value=5]

  [:inputSource="uniform";type="u32";value="max"]

  [:inputSource="uniform";type="u32";value="min"]

  [:inputSource="uniform";type="u32";value=1]

  [:inputSource="uniform";type="u32";value=100]

  [:inputSource="uniform";type="u32";value=2]

  [:inputSource="uniform";type="u32";value=5]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:structure:*]
  [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=false]

  [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=true]

  [:member_types=["bool"\];nested=false]

  [:member_types=["bool"\];nested=true]

  [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=false]

  [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=true]

  [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=false]

  [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=true]

  [:member_types=["i32","u32"\];nested=false]

  [:member_types=["i32","u32"\];nested=true]

  [:member_types=["u32"\];nested=false]

  [:member_types=["u32"\];nested=true]

  [:member_types=["vec3f"\];nested=false]

  [:member_types=["vec3f"\];nested=true]


[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:vector_identity:*]
  [:inputSource="const";type="bool";width=2;infer_type=false]

  [:inputSource="const";type="bool";width=2;infer_type=true]

  [:inputSource="const";type="bool";width=3;infer_type=false]

  [:inputSource="const";type="bool";width=3;infer_type=true]

  [:inputSource="const";type="bool";width=4;infer_type=false]

  [:inputSource="const";type="bool";width=4;infer_type=true]

  [:inputSource="const";type="f16";width=2;infer_type=false]

  [:inputSource="const";type="f16";width=2;infer_type=true]

  [:inputSource="const";type="f16";width=3;infer_type=false]

  [:inputSource="const";type="f16";width=3;infer_type=true]

  [:inputSource="const";type="f16";width=4;infer_type=false]

  [:inputSource="const";type="f16";width=4;infer_type=true]

  [:inputSource="const";type="f32";width=2;infer_type=false]

  [:inputSource="const";type="f32";width=2;infer_type=true]

  [:inputSource="const";type="f32";width=3;infer_type=false]

  [:inputSource="const";type="f32";width=3;infer_type=true]

  [:inputSource="const";type="f32";width=4;infer_type=false]

  [:inputSource="const";type="f32";width=4;infer_type=true]

  [:inputSource="const";type="i32";width=2;infer_type=false]

  [:inputSource="const";type="i32";width=2;infer_type=true]

  [:inputSource="const";type="i32";width=3;infer_type=false]

  [:inputSource="const";type="i32";width=3;infer_type=true]

  [:inputSource="const";type="i32";width=4;infer_type=false]

  [:inputSource="const";type="i32";width=4;infer_type=true]

  [:inputSource="const";type="u32";width=2;infer_type=false]

  [:inputSource="const";type="u32";width=2;infer_type=true]

  [:inputSource="const";type="u32";width=3;infer_type=false]

  [:inputSource="const";type="u32";width=3;infer_type=true]

  [:inputSource="const";type="u32";width=4;infer_type=false]

  [:inputSource="const";type="u32";width=4;infer_type=true]

  [:inputSource="storage_r";type="bool";width=2;infer_type=false]

  [:inputSource="storage_r";type="bool";width=2;infer_type=true]

  [:inputSource="storage_r";type="bool";width=3;infer_type=false]

  [:inputSource="storage_r";type="bool";width=3;infer_type=true]

  [:inputSource="storage_r";type="bool";width=4;infer_type=false]

  [:inputSource="storage_r";type="bool";width=4;infer_type=true]

  [:inputSource="storage_r";type="f16";width=2;infer_type=false]

  [:inputSource="storage_r";type="f16";width=2;infer_type=true]

  [:inputSource="storage_r";type="f16";width=3;infer_type=false]

  [:inputSource="storage_r";type="f16";width=3;infer_type=true]

  [:inputSource="storage_r";type="f16";width=4;infer_type=false]

  [:inputSource="storage_r";type="f16";width=4;infer_type=true]

  [:inputSource="storage_r";type="f32";width=2;infer_type=false]

  [:inputSource="storage_r";type="f32";width=2;infer_type=true]

  [:inputSource="storage_r";type="f32";width=3;infer_type=false]

  [:inputSource="storage_r";type="f32";width=3;infer_type=true]

  [:inputSource="storage_r";type="f32";width=4;infer_type=false]

  [:inputSource="storage_r";type="f32";width=4;infer_type=true]

  [:inputSource="storage_r";type="i32";width=2;infer_type=false]

  [:inputSource="storage_r";type="i32";width=2;infer_type=true]

  [:inputSource="storage_r";type="i32";width=3;infer_type=false]

  [:inputSource="storage_r";type="i32";width=3;infer_type=true]

  [:inputSource="storage_r";type="i32";width=4;infer_type=false]

  [:inputSource="storage_r";type="i32";width=4;infer_type=true]

  [:inputSource="storage_r";type="u32";width=2;infer_type=false]

  [:inputSource="storage_r";type="u32";width=2;infer_type=true]

  [:inputSource="storage_r";type="u32";width=3;infer_type=false]

  [:inputSource="storage_r";type="u32";width=3;infer_type=true]

  [:inputSource="storage_r";type="u32";width=4;infer_type=false]

  [:inputSource="storage_r";type="u32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=2;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=2;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=3;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=3;infer_type=true]

  [:inputSource="storage_rw";type="bool";width=4;infer_type=false]

  [:inputSource="storage_rw";type="bool";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f16";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f16";width=4;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="f32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="f32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="i32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="i32";width=4;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=2;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=2;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=3;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=3;infer_type=true]

  [:inputSource="storage_rw";type="u32";width=4;infer_type=false]

  [:inputSource="storage_rw";type="u32";width=4;infer_type=true]

  [:inputSource="uniform";type="bool";width=2;infer_type=false]

  [:inputSource="uniform";type="bool";width=2;infer_type=true]

  [:inputSource="uniform";type="bool";width=3;infer_type=false]

  [:inputSource="uniform";type="bool";width=3;infer_type=true]

  [:inputSource="uniform";type="bool";width=4;infer_type=false]

  [:inputSource="uniform";type="bool";width=4;infer_type=true]

  [:inputSource="uniform";type="f16";width=2;infer_type=false]

  [:inputSource="uniform";type="f16";width=2;infer_type=true]

  [:inputSource="uniform";type="f16";width=3;infer_type=false]

  [:inputSource="uniform";type="f16";width=3;infer_type=true]

  [:inputSource="uniform";type="f16";width=4;infer_type=false]

  [:inputSource="uniform";type="f16";width=4;infer_type=true]

  [:inputSource="uniform";type="f32";width=2;infer_type=false]

  [:inputSource="uniform";type="f32";width=2;infer_type=true]

  [:inputSource="uniform";type="f32";width=3;infer_type=false]

  [:inputSource="uniform";type="f32";width=3;infer_type=true]

  [:inputSource="uniform";type="f32";width=4;infer_type=false]

  [:inputSource="uniform";type="f32";width=4;infer_type=true]

  [:inputSource="uniform";type="i32";width=2;infer_type=false]

  [:inputSource="uniform";type="i32";width=2;infer_type=true]

  [:inputSource="uniform";type="i32";width=3;infer_type=false]

  [:inputSource="uniform";type="i32";width=3;infer_type=true]

  [:inputSource="uniform";type="i32";width=4;infer_type=false]

  [:inputSource="uniform";type="i32";width=4;infer_type=true]

  [:inputSource="uniform";type="u32";width=2;infer_type=false]

  [:inputSource="uniform";type="u32";width=2;infer_type=true]

  [:inputSource="uniform";type="u32";width=3;infer_type=false]

  [:inputSource="uniform";type="u32";width=3;infer_type=true]

  [:inputSource="uniform";type="u32";width=4;infer_type=false]

  [:inputSource="uniform";type="u32";width=4;infer_type=true]
