#include <metal_stdlib>

using namespace metal;
float3 subgroupShuffle_7c5d64() {
  float3 arg_0 = float3(1.0f);
  int arg_1 = 1;
  float3 res = simd_shuffle(arg_0,arg_1);
  return res;
}

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

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

