#version 460
#extension GL_EXT_ray_query : require
#extension GL_EXT_descriptor_heap : require
#extension GL_EXT_nonuniform_qualifier : require
#extension GL_EXT_shader_image_load_formatted : require
#extension GL_EXT_scalar_block_layout : require
#extension GL_EXT_samplerless_texture_functions : require

layout(location = 0) out vec4 FragColor;
rayQueryEXT rq;
layout(descriptor_heap) uniform texture1D spv_23ResourceHeap[];
layout(descriptor_heap) uniform texture2D spv_36ResourceHeap[];
layout(descriptor_heap) uniform texture3D spv_49ResourceHeap[];
layout(descriptor_heap) uniform sampler spv_71SamplerHeap[];
layout(descriptor_heap, r32f) uniform image1D spv_108ResourceHeap[];
layout(descriptor_heap, r32f) uniform image2D spv_115ResourceHeap[];
layout(descriptor_heap, r32f) uniform image3D spv_122ResourceHeap[];
layout(descriptor_heap) uniform image2D spv_150ResourceHeap[];
layout(descriptor_heap, std140) uniform UBO140
{
    float data[2];
} spvUBO140_167ResourceHeap[];

layout(descriptor_heap, std140) uniform UBO430
{
    vec3 data[2];
} spvUBO430_179ResourceHeap[];

layout(descriptor_heap, scalar) uniform UBOScalar
{
    vec3 data[2];
} spvUBOScalar_191ResourceHeap[];

layout(descriptor_heap, std430) readonly buffer SSBOReadOnly
{
    vec4 data;
} spvSSBOReadOnly_204ResourceHeap[];

layout(descriptor_heap, std430) coherent writeonly buffer SSBOWriteOnly
{
    vec4 data;
} spvSSBOWriteOnly_216ResourceHeap[];

layout(descriptor_heap, std430) buffer SSBO
{
    vec4 data;
} spvSSBO_223ResourceHeap[];

layout(descriptor_heap, r32ui) uniform uimage2D spv_229ResourceHeap[];
layout(descriptor_heap) uniform accelerationStructureEXT spv_241ResourceHeap[];

void main()
{
    FragColor = vec4(0.0);
    FragColor += texelFetch(spv_23ResourceHeap[int(gl_FragCoord.x)], 0, 0);
    FragColor += texelFetch(spv_36ResourceHeap[int(gl_FragCoord.x)], ivec2(0), 0);
    FragColor += texelFetch(spv_49ResourceHeap[int(gl_FragCoord.x)], ivec3(0), 0);
    FragColor += texture(sampler2D(spv_36ResourceHeap[int(gl_FragCoord.x)], spv_71SamplerHeap[int(gl_FragCoord.y)]), vec2(0.0), 0.0);
    FragColor += vec4(texture(sampler2DShadow(spv_36ResourceHeap[int(gl_FragCoord.x)], spv_71SamplerHeap[int(gl_FragCoord.y)]), vec3(vec3(0.0).xy, 0.0), 0.0));
    imageStore(spv_108ResourceHeap[10], 0, FragColor);
    imageStore(spv_115ResourceHeap[20], ivec2(0), FragColor);
    imageStore(spv_122ResourceHeap[30], ivec3(0), FragColor);
    FragColor += imageLoad(spv_108ResourceHeap[10], 0);
    FragColor += imageLoad(spv_115ResourceHeap[20], ivec2(0));
    FragColor += imageLoad(spv_122ResourceHeap[30], ivec3(0));
    FragColor += imageLoad(spv_150ResourceHeap[40], ivec2(0));
    FragColor += vec4(spvUBO140_167ResourceHeap[50].data[1]);
    FragColor += vec4(spvUBO430_179ResourceHeap[51].data[1].x);
    FragColor += vec4(spvUBOScalar_191ResourceHeap[52].data[1].x);
    FragColor += spvSSBOReadOnly_204ResourceHeap[60].data;
    spvSSBOWriteOnly_216ResourceHeap[61].data = vec4(20.0);
    FragColor += spvSSBO_223ResourceHeap[62].data;
    uint _237 = imageAtomicAdd(spv_229ResourceHeap[70], ivec2(0), 50u);
    rayQueryInitializeEXT(rq, spv_241ResourceHeap[50], 0u, 0u, vec3(0.0), 0.0, vec3(1.0, 0.0, 0.0), 1.0);
}

