#include <metal_stdlib>
using namespace metal;

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