#include <metal_stdlib>

using namespace metal;
float4 tint_fwidth_fine(float4 v) {
  return (fabs(dfdx(v)) + fabs(dfdy(v)));
}

float4 fwidthFine_68f4ef() {
  float4 arg_0 = float4(1.0f);
  float4 res = tint_fwidth_fine(arg_0);
  return res;
}

fragment void fragment_main(device float4* tint_symbol [[buffer(0)]]) {
  *(tint_symbol) = fwidthFine_68f4ef();
  return;
}

