#include <metal_stdlib>
using namespace metal;
struct tint_symbol_2 {
  int3 tint_symbol_1;
};
struct tint_module_vars_struct {
  threadgroup int3* v;
};

kernel void tint_symbol(uint tint_local_index [[thread_index_in_threadgroup]], threadgroup tint_symbol_2* v_1 [[threadgroup(0)]]) {
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.v=(&(*v_1).tint_symbol_1)};
  if ((tint_local_index == 0u)) {
    (*tint_module_vars.v) = int3(0);
  }
  threadgroup_barrier(mem_flags::mem_threadgroup);
}
