#include <metal_stdlib>

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

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

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

