1cb93a386Sopenharmony_ci 2cb93a386Sopenharmony_ciout vec4 sk_FragColor; 3cb93a386Sopenharmony_ciuniform vec4 testInputs; 4cb93a386Sopenharmony_ciuniform vec4 colorGreen; 5cb93a386Sopenharmony_ciuniform vec4 colorRed; 6cb93a386Sopenharmony_civec4 main() { 7cb93a386Sopenharmony_ci ivec4 intValues = ivec4(testInputs * 100.0); 8cb93a386Sopenharmony_ci ivec4 intGreen = ivec4(colorGreen * 100.0); 9cb93a386Sopenharmony_ci ivec4 expectedA = ivec4(50, 50, 75, 225); 10cb93a386Sopenharmony_ci ivec4 expectedB = ivec4(0, 100, 75, 225); 11cb93a386Sopenharmony_ci return ((((((((((((((max(intValues.x, 50) == expectedA.x && max(intValues.xy, 50) == expectedA.xy) && max(intValues.xyz, 50) == expectedA.xyz) && max(intValues, 50) == expectedA) && 50 == expectedA.x) && ivec2(50, 50) == expectedA.xy) && ivec3(50, 50, 75) == expectedA.xyz) && ivec4(50, 50, 75, 225) == expectedA) && max(intValues.x, intGreen.x) == expectedB.x) && max(intValues.xy, intGreen.xy) == expectedB.xy) && max(intValues.xyz, intGreen.xyz) == expectedB.xyz) && max(intValues, intGreen) == expectedB) && 0 == expectedB.x) && ivec2(0, 100) == expectedB.xy) && ivec3(0, 100, 75) == expectedB.xyz) && ivec4(0, 100, 75, 225) == expectedB ? colorGreen : colorRed; 12cb93a386Sopenharmony_ci} 13