#include <metal_stdlib>

using namespace metal;
void textureSample_e53267(texturecube<float, access::sample> tint_symbol, sampler tint_symbol_1) {
  float3 arg_2 = float3(0.0f);
  float4 res = tint_symbol.sample(tint_symbol_1, arg_2);
}

fragment void fragment_main(texturecube<float, access::sample> tint_symbol_2 [[texture(0)]], sampler tint_symbol_3 [[sampler(0)]]) {
  textureSample_e53267(tint_symbol_2, tint_symbol_3);
  return;
}

