#include <metal_stdlib>

using namespace metal;
void textureSample_6e64fb(texture1d<float, access::sample> tint_symbol, sampler tint_symbol_1, device float4* const tint_symbol_2) {
  float4 res = tint_symbol.sample(tint_symbol_1, 1.0f);
  *(tint_symbol_2) = res;
}

fragment void fragment_main(texture1d<float, access::sample> tint_symbol_3 [[texture(0)]], sampler tint_symbol_4 [[sampler(0)]], device float4* tint_symbol_5 [[buffer(0)]]) {
  textureSample_6e64fb(tint_symbol_3, tint_symbol_4, tint_symbol_5);
  return;
}

