uniform half4 colorGreen, colorRed;

half4 main(float2 coords) {
    float4 value = colorGreen.gggg * 6;
    int4   exp;
    float4 result;
    bool4  ok;

    // 6 equals 0.75 * 2^3.
    result.x    = frexp(value.x,    exp.x);
    ok.x        = (result.x == 0.75 && exp.x == 3);
    result.xy   = frexp(value.xy,   exp.xy);
    ok.y        = (result.y == 0.75 && exp.y == 3);
    result.xyz  = frexp(value.xyz,  exp.xyz);
    ok.z        = (result.z == 0.75 && exp.z == 3);
    result.xyzw = frexp(value.xyzw, exp.xyzw);
    ok.w        = (result.w == 0.75 && exp.w == 3);

    return all(ok) ? colorGreen : colorRed;
}
