#version 310 es
precision mediump float;

struct Simulation {
  uint i;
};

struct Particle {
  vec3 position[8];
  float lifetime;
  vec4 color;
  vec3 velocity;
};

layout(binding = 3) buffer Particles_1 {
  Particle p[];
} particles;
layout(binding = 4) uniform Simulation_1 {
  uint i;
} sim;

layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void tint_symbol() {
  Particle particle = particles.p[0];
  particle.position[sim.i] = particle.position[sim.i];
  return;
}

void main() {
  tint_symbol();
}

