#include <metal_stdlib>

using namespace metal;
int4 subgroupExclusiveMul_019660() {
  int4 arg_0 = int4(1);
  int4 res = simd_prefix_exclusive_product(arg_0);
  return res;
}

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

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

