@group(1) @binding(0) var arg_0 : texture_cube_array<f32>;

@group(1) @binding(1) var arg_1 : sampler;

fn textureSampleGrad_e383db() {
  var res : vec4<f32> = textureSampleGrad(arg_0, arg_1, vec3<f32>(1.0f), 1i, vec3<f32>(1.0f), vec3<f32>(1.0f));
}

@vertex
fn vertex_main() -> @builtin(position) vec4<f32> {
  textureSampleGrad_e383db();
  return vec4<f32>();
}

@fragment
fn fragment_main() {
  textureSampleGrad_e383db();
}

@compute @workgroup_size(1)
fn compute_main() {
  textureSampleGrad_e383db();
}
