#include <metal_stdlib>

using namespace metal;
int3 tint_mod(int lhs, int3 rhs) {
  int3 const l = int3(lhs);
  return (l % select(rhs, int3(1), ((rhs == int3(0)) | ((l == int3((-2147483647 - 1))) & (rhs == int3(-1))))));
}

kernel void f() {
  int a = 4;
  int3 b = int3(0, 2, 0);
  int3 const r = tint_mod(a, as_type<int3>((as_type<uint3>(b) + as_type<uint3>(b))));
  return;
}

