#version 310 es
precision mediump float;

struct Uniforms {
  uint i;
};
struct OuterS {
  uint a1[8];
};

layout(binding = 4) uniform Uniforms_1 {
  uint i;
} uniforms;

uint f(uint i) {
  return (i + 1u);
}

layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void tint_symbol() {
  OuterS s1 = OuterS(uint[8](0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u));
  vec3 v = vec3(0.0f, 0.0f, 0.0f);
  v[s1.a1[uniforms.i]] = 1.0f;
  v[f(s1.a1[uniforms.i])] = 1.0f;
  return;
}
void main() {
  tint_symbol();
}


