#version 310 es

struct Inner {
  ivec3 a;
  int b;
  uvec3 c;
  uint d;
  vec3 e;
  float f;
  mat2x3 g;
  mat3x2 h;
  ivec4 i[4];
};

layout(binding = 0, std430) buffer S_ssbo {
  Inner arr[];
} s;

void tint_symbol(uint idx) {
  ivec3 a = s.arr[idx].a;
  int b = s.arr[idx].b;
  uvec3 c = s.arr[idx].c;
  uint d = s.arr[idx].d;
  vec3 e = s.arr[idx].e;
  float f = s.arr[idx].f;
  mat2x3 g = s.arr[idx].g;
  mat3x2 h = s.arr[idx].h;
  ivec4 i[4] = s.arr[idx].i;
}

layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
  tint_symbol(gl_LocalInvocationIndex);
  return;
}
