#include <metal_stdlib>

using namespace metal;
half2 quadBroadcast_3c3824() {
  half2 res = quad_broadcast(half2(1.0h),1u);
  return res;
}

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

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

