// defines built-in interfaces supported by SkSL vertex shaders

out sk_PerVertex {
    layout(builtin=0) float4 sk_Position;
    layout(builtin=1) float sk_PointSize;
};

layout(builtin=42) in int sk_VertexID;
layout(builtin=43) in int sk_InstanceID;
