#include <metal_stdlib>

using namespace metal;
float3 subgroupBroadcast_8855b2() {
  float3 res = simd_broadcast(float3(1.0f),ushort(1));
  return res;
}

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

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

