1cb93a386Sopenharmony_ci
2cb93a386Sopenharmony_ciout vec4 sk_FragColor;
3cb93a386Sopenharmony_ciuniform vec4 colorGreen;
4cb93a386Sopenharmony_ciuniform vec4 colorRed;
5cb93a386Sopenharmony_ciuniform mat2 testHalf2x2;
6cb93a386Sopenharmony_ciuniform mat2 testFloat2x2;
7cb93a386Sopenharmony_ciuniform mat3 testHalf3x3;
8cb93a386Sopenharmony_ciuniform mat4x2 testFloat4x2;
9cb93a386Sopenharmony_civec4 main() {
10cb93a386Sopenharmony_ci    bool _0_ok = true;
11cb93a386Sopenharmony_ci    _0_ok = _0_ok && testHalf2x2 == mat2(1.0, 2.0, 3.0, 4.0);
12cb93a386Sopenharmony_ci    _0_ok = _0_ok && testFloat2x2 == mat2(5.0, 6.0, 7.0, 8.0);
13cb93a386Sopenharmony_ci    _0_ok = _0_ok && testHalf2x2 != mat2(123.0);
14cb93a386Sopenharmony_ci    _0_ok = _0_ok && testFloat2x2 != mat2(456.0);
15cb93a386Sopenharmony_ci    _0_ok = _0_ok && testHalf3x3 == mat3(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0);
16cb93a386Sopenharmony_ci    _0_ok = _0_ok && testFloat4x2 != mat4x2(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0);
17cb93a386Sopenharmony_ci    return _0_ok ? colorGreen : colorRed;
18cb93a386Sopenharmony_ci}
19