1cb93a386Sopenharmony_ci#version 400
2cb93a386Sopenharmony_ciprecision mediump float;
3cb93a386Sopenharmony_ciprecision mediump sampler2D;
4cb93a386Sopenharmony_ciout mediump vec4 sk_FragColor;
5cb93a386Sopenharmony_ciuniform mediump vec4 colorGreen;
6cb93a386Sopenharmony_ciuniform mediump vec4 colorRed;
7cb93a386Sopenharmony_cimediump vec4 main() {
8cb93a386Sopenharmony_ci    highp float f[4] = float[4](1.0, 2.0, 3.0, 4.0);
9cb93a386Sopenharmony_ci    mediump float h[4] = f;
10cb93a386Sopenharmony_ci    f = h;
11cb93a386Sopenharmony_ci    h = f;
12cb93a386Sopenharmony_ci    highp ivec3 i3[3] = ivec3[3](ivec3(1), ivec3(2), ivec3(3));
13cb93a386Sopenharmony_ci    mediump ivec3 s3[3] = i3;
14cb93a386Sopenharmony_ci    i3 = s3;
15cb93a386Sopenharmony_ci    s3 = i3;
16cb93a386Sopenharmony_ci    mediump mat2 h2x2[2] = mat2[2](mat2(1.0, 2.0, 3.0, 4.0), mat2(5.0, 6.0, 7.0, 8.0));
17cb93a386Sopenharmony_ci    highp mat2 f2x2[2] = h2x2;
18cb93a386Sopenharmony_ci    f2x2 = h2x2;
19cb93a386Sopenharmony_ci    h2x2 = f2x2;
20cb93a386Sopenharmony_ci    return (f == h && i3 == s3) && f2x2 == h2x2 ? colorGreen : colorRed;
21cb93a386Sopenharmony_ci}
22