#version 310 es
precision highp float;
precision highp int;

layout(location = 0) out vec4 tint_symbol_loc0_Output;
vec4 tint_symbol_inner() {
  return vec4(0.0f);
}
void main() {
  tint_symbol_loc0_Output = tint_symbol_inner();
}
