#include <metal_stdlib>
using namespace metal;

void trunc_117396() {
  float3 res = float3(1.0f);
}
vertex float4 vertex_main() {
  trunc_117396();
  return float4(0.0f);
}
fragment void fragment_main() {
  trunc_117396();
}
kernel void compute_main() {
  trunc_117396();
}
