#version 310 es
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;

layout(binding = 0, std430) buffer SSBO0
{
    float scalar;
    vec2 vec2_val;
    vec3 vec3_val;
    vec4 vec4_val;
} _4;

void main()
{
    _4.scalar = unpackHalf2x16(packHalf2x16(vec2(_4.scalar))).x;
    _4.vec2_val = unpackHalf2x16(packHalf2x16(_4.vec2_val));
    _4.vec3_val = vec3(unpackHalf2x16(packHalf2x16(_4.vec3_val.xy)), unpackHalf2x16(packHalf2x16(_4.vec3_val.zz)).x);
    _4.vec4_val = vec4(unpackHalf2x16(packHalf2x16(_4.vec4_val.xy)), unpackHalf2x16(packHalf2x16(_4.vec4_val.zw)));
}

