uniform half4 input, expected;
uniform half4 colorGreen, colorRed;

half4 main(float2 coords) {
    const half4 constVal1 = half4(0, 0, 1.1752011936438014568, -1.1752011936438014568);
    return (asinh(input.x)        == expected.x     &&
            asinh(input.xy)       == expected.xy    &&
            asinh(input.xyz)      == expected.xyz   &&
            asinh(input.xyzw)     == expected.xyzw  &&
            asinh(constVal1.x)    == expected.x     &&
            asinh(constVal1.xy)   == expected.xy    &&
            asinh(constVal1.xyz)  == expected.xyz   &&
            asinh(constVal1.xyzw) == expected.xyzw) ? colorGreen : colorRed;
}
