#include <metal_stdlib>

using namespace metal;
void main_1(thread uint3* const tint_symbol_1) {
  uint3 const x_2 = *(tint_symbol_1);
  return;
}

void tint_symbol_inner(uint3 x_1_param, thread uint3* const tint_symbol_2) {
  *(tint_symbol_2) = x_1_param;
  main_1(tint_symbol_2);
}

kernel void tint_symbol(uint3 x_1_param [[thread_position_in_threadgroup]]) {
  thread uint3 tint_symbol_3 = 0u;
  tint_symbol_inner(x_1_param, &(tint_symbol_3));
  return;
}

