#include <metal_stdlib>

using namespace metal;
uint4 textureLoad_17095b(texture1d<uint, access::read_write> tint_symbol) {
  uint4 res = tint_symbol.read(uint(1u));
  return res;
}

fragment void fragment_main(device uint4* tint_symbol_1 [[buffer(0)]], texture1d<uint, access::read_write> tint_symbol_2 [[texture(0)]]) {
  *(tint_symbol_1) = textureLoad_17095b(tint_symbol_2);
  return;
}

kernel void compute_main(device uint4* tint_symbol_3 [[buffer(0)]], texture1d<uint, access::read_write> tint_symbol_4 [[texture(0)]]) {
  *(tint_symbol_3) = textureLoad_17095b(tint_symbol_4);
  return;
}

