#include <metal_stdlib>

using namespace metal;
float2 quadBroadcast_cd3624() {
  float2 res = quad_broadcast(float2(1.0f),1u);
  return res;
}

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

kernel void compute_main(device float2* tint_symbol_1 [[buffer(0)]]) {
  *(tint_symbol_1) = quadBroadcast_cd3624();
  return;
}

