#include <metal_stdlib>

using namespace metal;
void textureLoad_6273b1(depth2d_ms<float, access::read> tint_symbol_5) {
  float res = 0.0f;
  float4 const x_17 = float4(tint_symbol_5.read(uint2(int2(0)), 1), 0.0f, 0.0f, 0.0f);
  res = x_17[0];
  return;
}

void tint_symbol_2(float4 tint_symbol, thread float4* const tint_symbol_6) {
  *(tint_symbol_6) = tint_symbol;
  return;
}

void vertex_main_1(depth2d_ms<float, access::read> tint_symbol_7, thread float4* const tint_symbol_8) {
  textureLoad_6273b1(tint_symbol_7);
  tint_symbol_2(float4(0.0f), tint_symbol_8);
  return;
}

struct vertex_main_out {
  float4 tint_symbol_1_1;
};

struct tint_symbol_3 {
  float4 tint_symbol_1_1 [[position]];
};

vertex_main_out vertex_main_inner(depth2d_ms<float, access::read> tint_symbol_9, thread float4* const tint_symbol_10) {
  vertex_main_1(tint_symbol_9, tint_symbol_10);
  vertex_main_out const tint_symbol_4 = {.tint_symbol_1_1=*(tint_symbol_10)};
  return tint_symbol_4;
}

vertex tint_symbol_3 vertex_main(depth2d_ms<float, access::read> tint_symbol_11 [[texture(0)]]) {
  thread float4 tint_symbol_12 = float4(0.0f);
  vertex_main_out const inner_result = vertex_main_inner(tint_symbol_11, &(tint_symbol_12));
  tint_symbol_3 wrapper_result = {};
  wrapper_result.tint_symbol_1_1 = inner_result.tint_symbol_1_1;
  return wrapper_result;
}

void fragment_main_1(depth2d_ms<float, access::read> tint_symbol_13) {
  textureLoad_6273b1(tint_symbol_13);
  return;
}

fragment void fragment_main(depth2d_ms<float, access::read> tint_symbol_14 [[texture(0)]]) {
  fragment_main_1(tint_symbol_14);
  return;
}

void compute_main_1(depth2d_ms<float, access::read> tint_symbol_15) {
  textureLoad_6273b1(tint_symbol_15);
  return;
}

kernel void compute_main(depth2d_ms<float, access::read> tint_symbol_16 [[texture(0)]]) {
  compute_main_1(tint_symbol_16);
  return;
}