#include <metal_stdlib>

using namespace metal;
bool func_3(const constant int* const tint_symbol_1) {
  for(int i = 0; (i < *(tint_symbol_1)); i = as_type<int>((as_type<uint>(i) + as_type<uint>(1)))) {
    for(int j = -1; (j == 1); j = as_type<int>((as_type<uint>(j) + as_type<uint>(1)))) {
      return false;
    }
  }
  return false;
}

kernel void tint_symbol(const constant int* tint_symbol_2 [[buffer(0)]]) {
  func_3(tint_symbol_2);
  return;
}

