1cb93a386Sopenharmony_ci 2cb93a386Sopenharmony_ciout vec4 sk_FragColor; 3cb93a386Sopenharmony_ciuniform vec4 colorGreen; 4cb93a386Sopenharmony_ciuniform vec4 colorRed; 5cb93a386Sopenharmony_civec4 unpremul_h4h4(vec4 color) { 6cb93a386Sopenharmony_ci return vec4(color.xyz / max(color.w, 9.9999997473787516e-05), color.w); 7cb93a386Sopenharmony_ci} 8cb93a386Sopenharmony_civec4 live_fn_h4h4h4(vec4 a, vec4 b) { 9cb93a386Sopenharmony_ci return a + b; 10cb93a386Sopenharmony_ci} 11cb93a386Sopenharmony_civec4 main() { 12cb93a386Sopenharmony_ci vec4 a; 13cb93a386Sopenharmony_ci vec4 b; 14cb93a386Sopenharmony_ci { 15cb93a386Sopenharmony_ci a = live_fn_h4h4h4(vec4(3.0), vec4(-5.0)); 16cb93a386Sopenharmony_ci } 17cb93a386Sopenharmony_ci { 18cb93a386Sopenharmony_ci b = unpremul_h4h4(vec4(1.0)); 19cb93a386Sopenharmony_ci } 20cb93a386Sopenharmony_ci return a != vec4(0.0) && b != vec4(0.0) ? colorGreen : colorRed; 21cb93a386Sopenharmony_ci} 22