#include <metal_stdlib>

using namespace metal;
void sign_b8f634() {
  float4 res =   sign(float4());
}

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

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

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

