#include <metal_stdlib>

using namespace metal;
half3 subgroupExclusiveMul_13ba26() {
  half3 arg_0 = half3(1.0h);
  half3 res = simd_prefix_exclusive_product(arg_0);
  return res;
}

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

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

