#version 450

layout (location = 0) in vec4 position;
layout (binding = 5) uniform ComponentsBlock
{
    vec4 c1;
    vec2 c2;
} components;

layout (xfb_buffer = 3, xfb_offset = 16) out gl_PerVertex
{
    layout(xfb_stride = 80) vec4 gl_Position;
};

void main()
{
    gl_Position = position + components.c1 + vec4(components.c2, 0.0, 0.0);
}