#include <metal_stdlib>
using namespace metal;

void round_8fdca3() {
  float2 res = float2(4.0f);
}
vertex float4 vertex_main() {
  round_8fdca3();
  return float4(0.0f);
}
fragment void fragment_main() {
  round_8fdca3();
}
kernel void compute_main() {
  round_8fdca3();
}
