#version 310 es
precision mediump float;

struct S {
  mat3x2 matrix;
  vec3 vector;
};

layout(binding = 0) uniform S_1 {
  mat3x2 matrix;
  vec3 vector;
} data;

void tint_symbol() {
  vec2 x = (data.matrix * data.vector);
  return;
}

void main() {
  tint_symbol();
}

