#include <metal_stdlib>

using namespace metal;
void clamp_7706d7() {
  uint2 res =   clamp(uint2(), uint2(), uint2());
}

vertex void vertex_main() {
  clamp_7706d7();
  return;
}

fragment void fragment_main() {
  clamp_7706d7();
  return;
}

kernel void compute_main() {
  clamp_7706d7();
  return;
}

