#include <metal_stdlib>

using namespace metal;
kernel void tint_symbol() {
  float2 v2f = 0.0f;
  float3 v3f = 0.0f;
  float4 v4f = 0.0f;
  int2 v2i = 0;
  int3 v3i = 0;
  int4 v4i = 0;
  uint2 v2u = 0u;
  uint3 v3u = 0u;
  uint4 v4u = 0u;
  bool2 v2b = false;
  bool3 v3b = false;
  bool4 v4b = false;
  {
    int i = 0;
    while (true) {
      if (!((i < 2))) {
        break;
      }
      v2f[i] = 1.0f;
      v2i[i] = 1;
      v2u[i] = 1u;
      v2b[i] = true;
      {
        i = (i + 1);
      }
    }
  }
  int i = 0;
  v3f[i] = 1.0f;
  v4f[i] = 1.0f;
  v3i[i] = 1;
  v4i[i] = 1;
  v3u[i] = 1u;
  v4u[i] = 1u;
  v3b[i] = true;
  v4b[i] = true;
  return;
}

