| #version 310 es | 
 | #extension GL_AMD_gpu_shader_half_float : require | 
 | precision mediump float; | 
 |  | 
 | struct S { | 
 |   f16mat3 matrix; | 
 |   f16vec3 vector; | 
 | }; | 
 |  | 
 | struct S_std140 { | 
 |   f16vec3 matrix_0; | 
 |   f16vec3 matrix_1; | 
 |   f16vec3 matrix_2; | 
 |   f16vec3 vector; | 
 | }; | 
 |  | 
 | layout(binding = 0, std140) uniform data_block_std140_ubo { | 
 |   S_std140 inner; | 
 | } data; | 
 |  | 
 | f16mat3 load_data_inner_matrix() { | 
 |   return f16mat3(data.inner.matrix_0, data.inner.matrix_1, data.inner.matrix_2); | 
 | } | 
 |  | 
 | void tint_symbol() { | 
 |   f16vec3 x = (data.inner.vector * load_data_inner_matrix()); | 
 | } | 
 |  | 
 | void main() { | 
 |   tint_symbol(); | 
 |   return; | 
 | } |