1e5c31af7Sopenharmony_ci# WARNING: This file is auto-generated. Do NOT modify it manually, but rather
2e5c31af7Sopenharmony_ci# modify the generating script file. Otherwise changes will be lost!
3e5c31af7Sopenharmony_ci
4e5c31af7Sopenharmony_cigroup vector_swizzles "Vector Swizzles"
5e5c31af7Sopenharmony_ci
6e5c31af7Sopenharmony_ci	case mediump_vec2_x
7e5c31af7Sopenharmony_ci		version 310 es
8e5c31af7Sopenharmony_ci		values
9e5c31af7Sopenharmony_ci		{
10e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
11e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
12e5c31af7Sopenharmony_ci		}
13e5c31af7Sopenharmony_ci
14e5c31af7Sopenharmony_ci		both ""
15e5c31af7Sopenharmony_ci			#version 310 es
16e5c31af7Sopenharmony_ci			precision highp float;
17e5c31af7Sopenharmony_ci			precision highp int;
18e5c31af7Sopenharmony_ci
19e5c31af7Sopenharmony_ci			${DECLARATIONS}
20e5c31af7Sopenharmony_ci
21e5c31af7Sopenharmony_ci			void main()
22e5c31af7Sopenharmony_ci			{
23e5c31af7Sopenharmony_ci				${SETUP}
24e5c31af7Sopenharmony_ci				out0 = in0.x;
25e5c31af7Sopenharmony_ci				${OUTPUT}
26e5c31af7Sopenharmony_ci			}
27e5c31af7Sopenharmony_ci		""
28e5c31af7Sopenharmony_ci	end
29e5c31af7Sopenharmony_ci
30e5c31af7Sopenharmony_ci	case mediump_vec2_xx
31e5c31af7Sopenharmony_ci		version 310 es
32e5c31af7Sopenharmony_ci		values
33e5c31af7Sopenharmony_ci		{
34e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
35e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(-0.5, -0.5) | vec2(-32.0, -32.0) | vec2(-0.75, -0.75) ];
36e5c31af7Sopenharmony_ci		}
37e5c31af7Sopenharmony_ci
38e5c31af7Sopenharmony_ci		both ""
39e5c31af7Sopenharmony_ci			#version 310 es
40e5c31af7Sopenharmony_ci			precision highp float;
41e5c31af7Sopenharmony_ci			precision highp int;
42e5c31af7Sopenharmony_ci
43e5c31af7Sopenharmony_ci			${DECLARATIONS}
44e5c31af7Sopenharmony_ci
45e5c31af7Sopenharmony_ci			void main()
46e5c31af7Sopenharmony_ci			{
47e5c31af7Sopenharmony_ci				${SETUP}
48e5c31af7Sopenharmony_ci				out0 = in0.xx;
49e5c31af7Sopenharmony_ci				${OUTPUT}
50e5c31af7Sopenharmony_ci			}
51e5c31af7Sopenharmony_ci		""
52e5c31af7Sopenharmony_ci	end
53e5c31af7Sopenharmony_ci
54e5c31af7Sopenharmony_ci	case mediump_vec2_xy
55e5c31af7Sopenharmony_ci		version 310 es
56e5c31af7Sopenharmony_ci		values
57e5c31af7Sopenharmony_ci		{
58e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
59e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
60e5c31af7Sopenharmony_ci		}
61e5c31af7Sopenharmony_ci
62e5c31af7Sopenharmony_ci		both ""
63e5c31af7Sopenharmony_ci			#version 310 es
64e5c31af7Sopenharmony_ci			precision highp float;
65e5c31af7Sopenharmony_ci			precision highp int;
66e5c31af7Sopenharmony_ci
67e5c31af7Sopenharmony_ci			${DECLARATIONS}
68e5c31af7Sopenharmony_ci
69e5c31af7Sopenharmony_ci			void main()
70e5c31af7Sopenharmony_ci			{
71e5c31af7Sopenharmony_ci				${SETUP}
72e5c31af7Sopenharmony_ci				out0 = in0.xy;
73e5c31af7Sopenharmony_ci				${OUTPUT}
74e5c31af7Sopenharmony_ci			}
75e5c31af7Sopenharmony_ci		""
76e5c31af7Sopenharmony_ci	end
77e5c31af7Sopenharmony_ci
78e5c31af7Sopenharmony_ci	case mediump_vec2_yx
79e5c31af7Sopenharmony_ci		version 310 es
80e5c31af7Sopenharmony_ci		values
81e5c31af7Sopenharmony_ci		{
82e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
83e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.5, 0.0) | vec2(1.25, 1.0) | vec2(-2.25, -0.5) | vec2(64.0, -32.0) | vec2(-0.0322580645161, -0.75) ];
84e5c31af7Sopenharmony_ci		}
85e5c31af7Sopenharmony_ci
86e5c31af7Sopenharmony_ci		both ""
87e5c31af7Sopenharmony_ci			#version 310 es
88e5c31af7Sopenharmony_ci			precision highp float;
89e5c31af7Sopenharmony_ci			precision highp int;
90e5c31af7Sopenharmony_ci
91e5c31af7Sopenharmony_ci			${DECLARATIONS}
92e5c31af7Sopenharmony_ci
93e5c31af7Sopenharmony_ci			void main()
94e5c31af7Sopenharmony_ci			{
95e5c31af7Sopenharmony_ci				${SETUP}
96e5c31af7Sopenharmony_ci				out0 = in0.yx;
97e5c31af7Sopenharmony_ci				${OUTPUT}
98e5c31af7Sopenharmony_ci			}
99e5c31af7Sopenharmony_ci		""
100e5c31af7Sopenharmony_ci	end
101e5c31af7Sopenharmony_ci
102e5c31af7Sopenharmony_ci	case mediump_vec2_yxy
103e5c31af7Sopenharmony_ci		version 310 es
104e5c31af7Sopenharmony_ci		values
105e5c31af7Sopenharmony_ci		{
106e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
107e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
108e5c31af7Sopenharmony_ci		}
109e5c31af7Sopenharmony_ci
110e5c31af7Sopenharmony_ci		both ""
111e5c31af7Sopenharmony_ci			#version 310 es
112e5c31af7Sopenharmony_ci			precision highp float;
113e5c31af7Sopenharmony_ci			precision highp int;
114e5c31af7Sopenharmony_ci
115e5c31af7Sopenharmony_ci			${DECLARATIONS}
116e5c31af7Sopenharmony_ci
117e5c31af7Sopenharmony_ci			void main()
118e5c31af7Sopenharmony_ci			{
119e5c31af7Sopenharmony_ci				${SETUP}
120e5c31af7Sopenharmony_ci				out0 = in0.yxy;
121e5c31af7Sopenharmony_ci				${OUTPUT}
122e5c31af7Sopenharmony_ci			}
123e5c31af7Sopenharmony_ci		""
124e5c31af7Sopenharmony_ci	end
125e5c31af7Sopenharmony_ci
126e5c31af7Sopenharmony_ci	case mediump_vec2_xyxx
127e5c31af7Sopenharmony_ci		version 310 es
128e5c31af7Sopenharmony_ci		values
129e5c31af7Sopenharmony_ci		{
130e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
131e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
132e5c31af7Sopenharmony_ci		}
133e5c31af7Sopenharmony_ci
134e5c31af7Sopenharmony_ci		both ""
135e5c31af7Sopenharmony_ci			#version 310 es
136e5c31af7Sopenharmony_ci			precision highp float;
137e5c31af7Sopenharmony_ci			precision highp int;
138e5c31af7Sopenharmony_ci
139e5c31af7Sopenharmony_ci			${DECLARATIONS}
140e5c31af7Sopenharmony_ci
141e5c31af7Sopenharmony_ci			void main()
142e5c31af7Sopenharmony_ci			{
143e5c31af7Sopenharmony_ci				${SETUP}
144e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
145e5c31af7Sopenharmony_ci				${OUTPUT}
146e5c31af7Sopenharmony_ci			}
147e5c31af7Sopenharmony_ci		""
148e5c31af7Sopenharmony_ci	end
149e5c31af7Sopenharmony_ci
150e5c31af7Sopenharmony_ci	case mediump_vec2_yyyy
151e5c31af7Sopenharmony_ci		version 310 es
152e5c31af7Sopenharmony_ci		values
153e5c31af7Sopenharmony_ci		{
154e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
155e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
156e5c31af7Sopenharmony_ci		}
157e5c31af7Sopenharmony_ci
158e5c31af7Sopenharmony_ci		both ""
159e5c31af7Sopenharmony_ci			#version 310 es
160e5c31af7Sopenharmony_ci			precision highp float;
161e5c31af7Sopenharmony_ci			precision highp int;
162e5c31af7Sopenharmony_ci
163e5c31af7Sopenharmony_ci			${DECLARATIONS}
164e5c31af7Sopenharmony_ci
165e5c31af7Sopenharmony_ci			void main()
166e5c31af7Sopenharmony_ci			{
167e5c31af7Sopenharmony_ci				${SETUP}
168e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
169e5c31af7Sopenharmony_ci				${OUTPUT}
170e5c31af7Sopenharmony_ci			}
171e5c31af7Sopenharmony_ci		""
172e5c31af7Sopenharmony_ci	end
173e5c31af7Sopenharmony_ci
174e5c31af7Sopenharmony_ci	case mediump_vec2_s
175e5c31af7Sopenharmony_ci		version 310 es
176e5c31af7Sopenharmony_ci		values
177e5c31af7Sopenharmony_ci		{
178e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
179e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
180e5c31af7Sopenharmony_ci		}
181e5c31af7Sopenharmony_ci
182e5c31af7Sopenharmony_ci		both ""
183e5c31af7Sopenharmony_ci			#version 310 es
184e5c31af7Sopenharmony_ci			precision highp float;
185e5c31af7Sopenharmony_ci			precision highp int;
186e5c31af7Sopenharmony_ci
187e5c31af7Sopenharmony_ci			${DECLARATIONS}
188e5c31af7Sopenharmony_ci
189e5c31af7Sopenharmony_ci			void main()
190e5c31af7Sopenharmony_ci			{
191e5c31af7Sopenharmony_ci				${SETUP}
192e5c31af7Sopenharmony_ci				out0 = in0.s;
193e5c31af7Sopenharmony_ci				${OUTPUT}
194e5c31af7Sopenharmony_ci			}
195e5c31af7Sopenharmony_ci		""
196e5c31af7Sopenharmony_ci	end
197e5c31af7Sopenharmony_ci
198e5c31af7Sopenharmony_ci	case mediump_vec2_ss
199e5c31af7Sopenharmony_ci		version 310 es
200e5c31af7Sopenharmony_ci		values
201e5c31af7Sopenharmony_ci		{
202e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
203e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(-0.5, -0.5) | vec2(-32.0, -32.0) | vec2(-0.75, -0.75) ];
204e5c31af7Sopenharmony_ci		}
205e5c31af7Sopenharmony_ci
206e5c31af7Sopenharmony_ci		both ""
207e5c31af7Sopenharmony_ci			#version 310 es
208e5c31af7Sopenharmony_ci			precision highp float;
209e5c31af7Sopenharmony_ci			precision highp int;
210e5c31af7Sopenharmony_ci
211e5c31af7Sopenharmony_ci			${DECLARATIONS}
212e5c31af7Sopenharmony_ci
213e5c31af7Sopenharmony_ci			void main()
214e5c31af7Sopenharmony_ci			{
215e5c31af7Sopenharmony_ci				${SETUP}
216e5c31af7Sopenharmony_ci				out0 = in0.ss;
217e5c31af7Sopenharmony_ci				${OUTPUT}
218e5c31af7Sopenharmony_ci			}
219e5c31af7Sopenharmony_ci		""
220e5c31af7Sopenharmony_ci	end
221e5c31af7Sopenharmony_ci
222e5c31af7Sopenharmony_ci	case mediump_vec2_st
223e5c31af7Sopenharmony_ci		version 310 es
224e5c31af7Sopenharmony_ci		values
225e5c31af7Sopenharmony_ci		{
226e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
227e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
228e5c31af7Sopenharmony_ci		}
229e5c31af7Sopenharmony_ci
230e5c31af7Sopenharmony_ci		both ""
231e5c31af7Sopenharmony_ci			#version 310 es
232e5c31af7Sopenharmony_ci			precision highp float;
233e5c31af7Sopenharmony_ci			precision highp int;
234e5c31af7Sopenharmony_ci
235e5c31af7Sopenharmony_ci			${DECLARATIONS}
236e5c31af7Sopenharmony_ci
237e5c31af7Sopenharmony_ci			void main()
238e5c31af7Sopenharmony_ci			{
239e5c31af7Sopenharmony_ci				${SETUP}
240e5c31af7Sopenharmony_ci				out0 = in0.st;
241e5c31af7Sopenharmony_ci				${OUTPUT}
242e5c31af7Sopenharmony_ci			}
243e5c31af7Sopenharmony_ci		""
244e5c31af7Sopenharmony_ci	end
245e5c31af7Sopenharmony_ci
246e5c31af7Sopenharmony_ci	case mediump_vec2_ts
247e5c31af7Sopenharmony_ci		version 310 es
248e5c31af7Sopenharmony_ci		values
249e5c31af7Sopenharmony_ci		{
250e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
251e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.5, 0.0) | vec2(1.25, 1.0) | vec2(-2.25, -0.5) | vec2(64.0, -32.0) | vec2(-0.0322580645161, -0.75) ];
252e5c31af7Sopenharmony_ci		}
253e5c31af7Sopenharmony_ci
254e5c31af7Sopenharmony_ci		both ""
255e5c31af7Sopenharmony_ci			#version 310 es
256e5c31af7Sopenharmony_ci			precision highp float;
257e5c31af7Sopenharmony_ci			precision highp int;
258e5c31af7Sopenharmony_ci
259e5c31af7Sopenharmony_ci			${DECLARATIONS}
260e5c31af7Sopenharmony_ci
261e5c31af7Sopenharmony_ci			void main()
262e5c31af7Sopenharmony_ci			{
263e5c31af7Sopenharmony_ci				${SETUP}
264e5c31af7Sopenharmony_ci				out0 = in0.ts;
265e5c31af7Sopenharmony_ci				${OUTPUT}
266e5c31af7Sopenharmony_ci			}
267e5c31af7Sopenharmony_ci		""
268e5c31af7Sopenharmony_ci	end
269e5c31af7Sopenharmony_ci
270e5c31af7Sopenharmony_ci	case mediump_vec2_tst
271e5c31af7Sopenharmony_ci		version 310 es
272e5c31af7Sopenharmony_ci		values
273e5c31af7Sopenharmony_ci		{
274e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
275e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
276e5c31af7Sopenharmony_ci		}
277e5c31af7Sopenharmony_ci
278e5c31af7Sopenharmony_ci		both ""
279e5c31af7Sopenharmony_ci			#version 310 es
280e5c31af7Sopenharmony_ci			precision highp float;
281e5c31af7Sopenharmony_ci			precision highp int;
282e5c31af7Sopenharmony_ci
283e5c31af7Sopenharmony_ci			${DECLARATIONS}
284e5c31af7Sopenharmony_ci
285e5c31af7Sopenharmony_ci			void main()
286e5c31af7Sopenharmony_ci			{
287e5c31af7Sopenharmony_ci				${SETUP}
288e5c31af7Sopenharmony_ci				out0 = in0.tst;
289e5c31af7Sopenharmony_ci				${OUTPUT}
290e5c31af7Sopenharmony_ci			}
291e5c31af7Sopenharmony_ci		""
292e5c31af7Sopenharmony_ci	end
293e5c31af7Sopenharmony_ci
294e5c31af7Sopenharmony_ci	case mediump_vec2_stss
295e5c31af7Sopenharmony_ci		version 310 es
296e5c31af7Sopenharmony_ci		values
297e5c31af7Sopenharmony_ci		{
298e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
299e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
300e5c31af7Sopenharmony_ci		}
301e5c31af7Sopenharmony_ci
302e5c31af7Sopenharmony_ci		both ""
303e5c31af7Sopenharmony_ci			#version 310 es
304e5c31af7Sopenharmony_ci			precision highp float;
305e5c31af7Sopenharmony_ci			precision highp int;
306e5c31af7Sopenharmony_ci
307e5c31af7Sopenharmony_ci			${DECLARATIONS}
308e5c31af7Sopenharmony_ci
309e5c31af7Sopenharmony_ci			void main()
310e5c31af7Sopenharmony_ci			{
311e5c31af7Sopenharmony_ci				${SETUP}
312e5c31af7Sopenharmony_ci				out0 = in0.stss;
313e5c31af7Sopenharmony_ci				${OUTPUT}
314e5c31af7Sopenharmony_ci			}
315e5c31af7Sopenharmony_ci		""
316e5c31af7Sopenharmony_ci	end
317e5c31af7Sopenharmony_ci
318e5c31af7Sopenharmony_ci	case mediump_vec2_tttt
319e5c31af7Sopenharmony_ci		version 310 es
320e5c31af7Sopenharmony_ci		values
321e5c31af7Sopenharmony_ci		{
322e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
323e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
324e5c31af7Sopenharmony_ci		}
325e5c31af7Sopenharmony_ci
326e5c31af7Sopenharmony_ci		both ""
327e5c31af7Sopenharmony_ci			#version 310 es
328e5c31af7Sopenharmony_ci			precision highp float;
329e5c31af7Sopenharmony_ci			precision highp int;
330e5c31af7Sopenharmony_ci
331e5c31af7Sopenharmony_ci			${DECLARATIONS}
332e5c31af7Sopenharmony_ci
333e5c31af7Sopenharmony_ci			void main()
334e5c31af7Sopenharmony_ci			{
335e5c31af7Sopenharmony_ci				${SETUP}
336e5c31af7Sopenharmony_ci				out0 = in0.tttt;
337e5c31af7Sopenharmony_ci				${OUTPUT}
338e5c31af7Sopenharmony_ci			}
339e5c31af7Sopenharmony_ci		""
340e5c31af7Sopenharmony_ci	end
341e5c31af7Sopenharmony_ci
342e5c31af7Sopenharmony_ci	case mediump_vec2_r
343e5c31af7Sopenharmony_ci		version 310 es
344e5c31af7Sopenharmony_ci		values
345e5c31af7Sopenharmony_ci		{
346e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
347e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
348e5c31af7Sopenharmony_ci		}
349e5c31af7Sopenharmony_ci
350e5c31af7Sopenharmony_ci		both ""
351e5c31af7Sopenharmony_ci			#version 310 es
352e5c31af7Sopenharmony_ci			precision highp float;
353e5c31af7Sopenharmony_ci			precision highp int;
354e5c31af7Sopenharmony_ci
355e5c31af7Sopenharmony_ci			${DECLARATIONS}
356e5c31af7Sopenharmony_ci
357e5c31af7Sopenharmony_ci			void main()
358e5c31af7Sopenharmony_ci			{
359e5c31af7Sopenharmony_ci				${SETUP}
360e5c31af7Sopenharmony_ci				out0 = in0.r;
361e5c31af7Sopenharmony_ci				${OUTPUT}
362e5c31af7Sopenharmony_ci			}
363e5c31af7Sopenharmony_ci		""
364e5c31af7Sopenharmony_ci	end
365e5c31af7Sopenharmony_ci
366e5c31af7Sopenharmony_ci	case mediump_vec2_rr
367e5c31af7Sopenharmony_ci		version 310 es
368e5c31af7Sopenharmony_ci		values
369e5c31af7Sopenharmony_ci		{
370e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
371e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(-0.5, -0.5) | vec2(-32.0, -32.0) | vec2(-0.75, -0.75) ];
372e5c31af7Sopenharmony_ci		}
373e5c31af7Sopenharmony_ci
374e5c31af7Sopenharmony_ci		both ""
375e5c31af7Sopenharmony_ci			#version 310 es
376e5c31af7Sopenharmony_ci			precision highp float;
377e5c31af7Sopenharmony_ci			precision highp int;
378e5c31af7Sopenharmony_ci
379e5c31af7Sopenharmony_ci			${DECLARATIONS}
380e5c31af7Sopenharmony_ci
381e5c31af7Sopenharmony_ci			void main()
382e5c31af7Sopenharmony_ci			{
383e5c31af7Sopenharmony_ci				${SETUP}
384e5c31af7Sopenharmony_ci				out0 = in0.rr;
385e5c31af7Sopenharmony_ci				${OUTPUT}
386e5c31af7Sopenharmony_ci			}
387e5c31af7Sopenharmony_ci		""
388e5c31af7Sopenharmony_ci	end
389e5c31af7Sopenharmony_ci
390e5c31af7Sopenharmony_ci	case mediump_vec2_rg
391e5c31af7Sopenharmony_ci		version 310 es
392e5c31af7Sopenharmony_ci		values
393e5c31af7Sopenharmony_ci		{
394e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
395e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
396e5c31af7Sopenharmony_ci		}
397e5c31af7Sopenharmony_ci
398e5c31af7Sopenharmony_ci		both ""
399e5c31af7Sopenharmony_ci			#version 310 es
400e5c31af7Sopenharmony_ci			precision highp float;
401e5c31af7Sopenharmony_ci			precision highp int;
402e5c31af7Sopenharmony_ci
403e5c31af7Sopenharmony_ci			${DECLARATIONS}
404e5c31af7Sopenharmony_ci
405e5c31af7Sopenharmony_ci			void main()
406e5c31af7Sopenharmony_ci			{
407e5c31af7Sopenharmony_ci				${SETUP}
408e5c31af7Sopenharmony_ci				out0 = in0.rg;
409e5c31af7Sopenharmony_ci				${OUTPUT}
410e5c31af7Sopenharmony_ci			}
411e5c31af7Sopenharmony_ci		""
412e5c31af7Sopenharmony_ci	end
413e5c31af7Sopenharmony_ci
414e5c31af7Sopenharmony_ci	case mediump_vec2_gr
415e5c31af7Sopenharmony_ci		version 310 es
416e5c31af7Sopenharmony_ci		values
417e5c31af7Sopenharmony_ci		{
418e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
419e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.5, 0.0) | vec2(1.25, 1.0) | vec2(-2.25, -0.5) | vec2(64.0, -32.0) | vec2(-0.0322580645161, -0.75) ];
420e5c31af7Sopenharmony_ci		}
421e5c31af7Sopenharmony_ci
422e5c31af7Sopenharmony_ci		both ""
423e5c31af7Sopenharmony_ci			#version 310 es
424e5c31af7Sopenharmony_ci			precision highp float;
425e5c31af7Sopenharmony_ci			precision highp int;
426e5c31af7Sopenharmony_ci
427e5c31af7Sopenharmony_ci			${DECLARATIONS}
428e5c31af7Sopenharmony_ci
429e5c31af7Sopenharmony_ci			void main()
430e5c31af7Sopenharmony_ci			{
431e5c31af7Sopenharmony_ci				${SETUP}
432e5c31af7Sopenharmony_ci				out0 = in0.gr;
433e5c31af7Sopenharmony_ci				${OUTPUT}
434e5c31af7Sopenharmony_ci			}
435e5c31af7Sopenharmony_ci		""
436e5c31af7Sopenharmony_ci	end
437e5c31af7Sopenharmony_ci
438e5c31af7Sopenharmony_ci	case mediump_vec2_grg
439e5c31af7Sopenharmony_ci		version 310 es
440e5c31af7Sopenharmony_ci		values
441e5c31af7Sopenharmony_ci		{
442e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
443e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
444e5c31af7Sopenharmony_ci		}
445e5c31af7Sopenharmony_ci
446e5c31af7Sopenharmony_ci		both ""
447e5c31af7Sopenharmony_ci			#version 310 es
448e5c31af7Sopenharmony_ci			precision highp float;
449e5c31af7Sopenharmony_ci			precision highp int;
450e5c31af7Sopenharmony_ci
451e5c31af7Sopenharmony_ci			${DECLARATIONS}
452e5c31af7Sopenharmony_ci
453e5c31af7Sopenharmony_ci			void main()
454e5c31af7Sopenharmony_ci			{
455e5c31af7Sopenharmony_ci				${SETUP}
456e5c31af7Sopenharmony_ci				out0 = in0.grg;
457e5c31af7Sopenharmony_ci				${OUTPUT}
458e5c31af7Sopenharmony_ci			}
459e5c31af7Sopenharmony_ci		""
460e5c31af7Sopenharmony_ci	end
461e5c31af7Sopenharmony_ci
462e5c31af7Sopenharmony_ci	case mediump_vec2_rgrr
463e5c31af7Sopenharmony_ci		version 310 es
464e5c31af7Sopenharmony_ci		values
465e5c31af7Sopenharmony_ci		{
466e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
467e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
468e5c31af7Sopenharmony_ci		}
469e5c31af7Sopenharmony_ci
470e5c31af7Sopenharmony_ci		both ""
471e5c31af7Sopenharmony_ci			#version 310 es
472e5c31af7Sopenharmony_ci			precision highp float;
473e5c31af7Sopenharmony_ci			precision highp int;
474e5c31af7Sopenharmony_ci
475e5c31af7Sopenharmony_ci			${DECLARATIONS}
476e5c31af7Sopenharmony_ci
477e5c31af7Sopenharmony_ci			void main()
478e5c31af7Sopenharmony_ci			{
479e5c31af7Sopenharmony_ci				${SETUP}
480e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
481e5c31af7Sopenharmony_ci				${OUTPUT}
482e5c31af7Sopenharmony_ci			}
483e5c31af7Sopenharmony_ci		""
484e5c31af7Sopenharmony_ci	end
485e5c31af7Sopenharmony_ci
486e5c31af7Sopenharmony_ci	case mediump_vec2_gggg
487e5c31af7Sopenharmony_ci		version 310 es
488e5c31af7Sopenharmony_ci		values
489e5c31af7Sopenharmony_ci		{
490e5c31af7Sopenharmony_ci			input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
491e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
492e5c31af7Sopenharmony_ci		}
493e5c31af7Sopenharmony_ci
494e5c31af7Sopenharmony_ci		both ""
495e5c31af7Sopenharmony_ci			#version 310 es
496e5c31af7Sopenharmony_ci			precision highp float;
497e5c31af7Sopenharmony_ci			precision highp int;
498e5c31af7Sopenharmony_ci
499e5c31af7Sopenharmony_ci			${DECLARATIONS}
500e5c31af7Sopenharmony_ci
501e5c31af7Sopenharmony_ci			void main()
502e5c31af7Sopenharmony_ci			{
503e5c31af7Sopenharmony_ci				${SETUP}
504e5c31af7Sopenharmony_ci				out0 = in0.gggg;
505e5c31af7Sopenharmony_ci				${OUTPUT}
506e5c31af7Sopenharmony_ci			}
507e5c31af7Sopenharmony_ci		""
508e5c31af7Sopenharmony_ci	end
509e5c31af7Sopenharmony_ci
510e5c31af7Sopenharmony_ci	case mediump_vec3_x
511e5c31af7Sopenharmony_ci		version 310 es
512e5c31af7Sopenharmony_ci		values
513e5c31af7Sopenharmony_ci		{
514e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
515e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
516e5c31af7Sopenharmony_ci		}
517e5c31af7Sopenharmony_ci
518e5c31af7Sopenharmony_ci		both ""
519e5c31af7Sopenharmony_ci			#version 310 es
520e5c31af7Sopenharmony_ci			precision highp float;
521e5c31af7Sopenharmony_ci			precision highp int;
522e5c31af7Sopenharmony_ci
523e5c31af7Sopenharmony_ci			${DECLARATIONS}
524e5c31af7Sopenharmony_ci
525e5c31af7Sopenharmony_ci			void main()
526e5c31af7Sopenharmony_ci			{
527e5c31af7Sopenharmony_ci				${SETUP}
528e5c31af7Sopenharmony_ci				out0 = in0.x;
529e5c31af7Sopenharmony_ci				${OUTPUT}
530e5c31af7Sopenharmony_ci			}
531e5c31af7Sopenharmony_ci		""
532e5c31af7Sopenharmony_ci	end
533e5c31af7Sopenharmony_ci
534e5c31af7Sopenharmony_ci	case mediump_vec3_z
535e5c31af7Sopenharmony_ci		version 310 es
536e5c31af7Sopenharmony_ci		values
537e5c31af7Sopenharmony_ci		{
538e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
539e5c31af7Sopenharmony_ci			output float out0 = [ 0.75 | 1.125 | -4.875 | -51.0 | 0.0526315789474 ];
540e5c31af7Sopenharmony_ci		}
541e5c31af7Sopenharmony_ci
542e5c31af7Sopenharmony_ci		both ""
543e5c31af7Sopenharmony_ci			#version 310 es
544e5c31af7Sopenharmony_ci			precision highp float;
545e5c31af7Sopenharmony_ci			precision highp int;
546e5c31af7Sopenharmony_ci
547e5c31af7Sopenharmony_ci			${DECLARATIONS}
548e5c31af7Sopenharmony_ci
549e5c31af7Sopenharmony_ci			void main()
550e5c31af7Sopenharmony_ci			{
551e5c31af7Sopenharmony_ci				${SETUP}
552e5c31af7Sopenharmony_ci				out0 = in0.z;
553e5c31af7Sopenharmony_ci				${OUTPUT}
554e5c31af7Sopenharmony_ci			}
555e5c31af7Sopenharmony_ci		""
556e5c31af7Sopenharmony_ci	end
557e5c31af7Sopenharmony_ci
558e5c31af7Sopenharmony_ci	case mediump_vec3_xz
559e5c31af7Sopenharmony_ci		version 310 es
560e5c31af7Sopenharmony_ci		values
561e5c31af7Sopenharmony_ci		{
562e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
563e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.75) | vec2(1.0, 1.125) | vec2(-0.5, -4.875) | vec2(-32.0, -51.0) | vec2(-0.75, 0.0526315789474) ];
564e5c31af7Sopenharmony_ci		}
565e5c31af7Sopenharmony_ci
566e5c31af7Sopenharmony_ci		both ""
567e5c31af7Sopenharmony_ci			#version 310 es
568e5c31af7Sopenharmony_ci			precision highp float;
569e5c31af7Sopenharmony_ci			precision highp int;
570e5c31af7Sopenharmony_ci
571e5c31af7Sopenharmony_ci			${DECLARATIONS}
572e5c31af7Sopenharmony_ci
573e5c31af7Sopenharmony_ci			void main()
574e5c31af7Sopenharmony_ci			{
575e5c31af7Sopenharmony_ci				${SETUP}
576e5c31af7Sopenharmony_ci				out0 = in0.xz;
577e5c31af7Sopenharmony_ci				${OUTPUT}
578e5c31af7Sopenharmony_ci			}
579e5c31af7Sopenharmony_ci		""
580e5c31af7Sopenharmony_ci	end
581e5c31af7Sopenharmony_ci
582e5c31af7Sopenharmony_ci	case mediump_vec3_zz
583e5c31af7Sopenharmony_ci		version 310 es
584e5c31af7Sopenharmony_ci		values
585e5c31af7Sopenharmony_ci		{
586e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
587e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.75, 0.75) | vec2(1.125, 1.125) | vec2(-4.875, -4.875) | vec2(-51.0, -51.0) | vec2(0.0526315789474, 0.0526315789474) ];
588e5c31af7Sopenharmony_ci		}
589e5c31af7Sopenharmony_ci
590e5c31af7Sopenharmony_ci		both ""
591e5c31af7Sopenharmony_ci			#version 310 es
592e5c31af7Sopenharmony_ci			precision highp float;
593e5c31af7Sopenharmony_ci			precision highp int;
594e5c31af7Sopenharmony_ci
595e5c31af7Sopenharmony_ci			${DECLARATIONS}
596e5c31af7Sopenharmony_ci
597e5c31af7Sopenharmony_ci			void main()
598e5c31af7Sopenharmony_ci			{
599e5c31af7Sopenharmony_ci				${SETUP}
600e5c31af7Sopenharmony_ci				out0 = in0.zz;
601e5c31af7Sopenharmony_ci				${OUTPUT}
602e5c31af7Sopenharmony_ci			}
603e5c31af7Sopenharmony_ci		""
604e5c31af7Sopenharmony_ci	end
605e5c31af7Sopenharmony_ci
606e5c31af7Sopenharmony_ci	case mediump_vec3_xyz
607e5c31af7Sopenharmony_ci		version 310 es
608e5c31af7Sopenharmony_ci		values
609e5c31af7Sopenharmony_ci		{
610e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
611e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
612e5c31af7Sopenharmony_ci		}
613e5c31af7Sopenharmony_ci
614e5c31af7Sopenharmony_ci		both ""
615e5c31af7Sopenharmony_ci			#version 310 es
616e5c31af7Sopenharmony_ci			precision highp float;
617e5c31af7Sopenharmony_ci			precision highp int;
618e5c31af7Sopenharmony_ci
619e5c31af7Sopenharmony_ci			${DECLARATIONS}
620e5c31af7Sopenharmony_ci
621e5c31af7Sopenharmony_ci			void main()
622e5c31af7Sopenharmony_ci			{
623e5c31af7Sopenharmony_ci				${SETUP}
624e5c31af7Sopenharmony_ci				out0 = in0.xyz;
625e5c31af7Sopenharmony_ci				${OUTPUT}
626e5c31af7Sopenharmony_ci			}
627e5c31af7Sopenharmony_ci		""
628e5c31af7Sopenharmony_ci	end
629e5c31af7Sopenharmony_ci
630e5c31af7Sopenharmony_ci	case mediump_vec3_zyx
631e5c31af7Sopenharmony_ci		version 310 es
632e5c31af7Sopenharmony_ci		values
633e5c31af7Sopenharmony_ci		{
634e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
635e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.5, 0.0) | vec3(1.125, 1.25, 1.0) | vec3(-4.875, -2.25, -0.5) | vec3(-51.0, 64.0, -32.0) | vec3(0.0526315789474, -0.0322580645161, -0.75) ];
636e5c31af7Sopenharmony_ci		}
637e5c31af7Sopenharmony_ci
638e5c31af7Sopenharmony_ci		both ""
639e5c31af7Sopenharmony_ci			#version 310 es
640e5c31af7Sopenharmony_ci			precision highp float;
641e5c31af7Sopenharmony_ci			precision highp int;
642e5c31af7Sopenharmony_ci
643e5c31af7Sopenharmony_ci			${DECLARATIONS}
644e5c31af7Sopenharmony_ci
645e5c31af7Sopenharmony_ci			void main()
646e5c31af7Sopenharmony_ci			{
647e5c31af7Sopenharmony_ci				${SETUP}
648e5c31af7Sopenharmony_ci				out0 = in0.zyx;
649e5c31af7Sopenharmony_ci				${OUTPUT}
650e5c31af7Sopenharmony_ci			}
651e5c31af7Sopenharmony_ci		""
652e5c31af7Sopenharmony_ci	end
653e5c31af7Sopenharmony_ci
654e5c31af7Sopenharmony_ci	case mediump_vec3_xxx
655e5c31af7Sopenharmony_ci		version 310 es
656e5c31af7Sopenharmony_ci		values
657e5c31af7Sopenharmony_ci		{
658e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
659e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(-0.5, -0.5, -0.5) | vec3(-32.0, -32.0, -32.0) | vec3(-0.75, -0.75, -0.75) ];
660e5c31af7Sopenharmony_ci		}
661e5c31af7Sopenharmony_ci
662e5c31af7Sopenharmony_ci		both ""
663e5c31af7Sopenharmony_ci			#version 310 es
664e5c31af7Sopenharmony_ci			precision highp float;
665e5c31af7Sopenharmony_ci			precision highp int;
666e5c31af7Sopenharmony_ci
667e5c31af7Sopenharmony_ci			${DECLARATIONS}
668e5c31af7Sopenharmony_ci
669e5c31af7Sopenharmony_ci			void main()
670e5c31af7Sopenharmony_ci			{
671e5c31af7Sopenharmony_ci				${SETUP}
672e5c31af7Sopenharmony_ci				out0 = in0.xxx;
673e5c31af7Sopenharmony_ci				${OUTPUT}
674e5c31af7Sopenharmony_ci			}
675e5c31af7Sopenharmony_ci		""
676e5c31af7Sopenharmony_ci	end
677e5c31af7Sopenharmony_ci
678e5c31af7Sopenharmony_ci	case mediump_vec3_zzz
679e5c31af7Sopenharmony_ci		version 310 es
680e5c31af7Sopenharmony_ci		values
681e5c31af7Sopenharmony_ci		{
682e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
683e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.75) | vec3(1.125, 1.125, 1.125) | vec3(-4.875, -4.875, -4.875) | vec3(-51.0, -51.0, -51.0) | vec3(0.0526315789474, 0.0526315789474, 0.0526315789474) ];
684e5c31af7Sopenharmony_ci		}
685e5c31af7Sopenharmony_ci
686e5c31af7Sopenharmony_ci		both ""
687e5c31af7Sopenharmony_ci			#version 310 es
688e5c31af7Sopenharmony_ci			precision highp float;
689e5c31af7Sopenharmony_ci			precision highp int;
690e5c31af7Sopenharmony_ci
691e5c31af7Sopenharmony_ci			${DECLARATIONS}
692e5c31af7Sopenharmony_ci
693e5c31af7Sopenharmony_ci			void main()
694e5c31af7Sopenharmony_ci			{
695e5c31af7Sopenharmony_ci				${SETUP}
696e5c31af7Sopenharmony_ci				out0 = in0.zzz;
697e5c31af7Sopenharmony_ci				${OUTPUT}
698e5c31af7Sopenharmony_ci			}
699e5c31af7Sopenharmony_ci		""
700e5c31af7Sopenharmony_ci	end
701e5c31af7Sopenharmony_ci
702e5c31af7Sopenharmony_ci	case mediump_vec3_zzy
703e5c31af7Sopenharmony_ci		version 310 es
704e5c31af7Sopenharmony_ci		values
705e5c31af7Sopenharmony_ci		{
706e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
707e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.5) | vec3(1.125, 1.125, 1.25) | vec3(-4.875, -4.875, -2.25) | vec3(-51.0, -51.0, 64.0) | vec3(0.0526315789474, 0.0526315789474, -0.0322580645161) ];
708e5c31af7Sopenharmony_ci		}
709e5c31af7Sopenharmony_ci
710e5c31af7Sopenharmony_ci		both ""
711e5c31af7Sopenharmony_ci			#version 310 es
712e5c31af7Sopenharmony_ci			precision highp float;
713e5c31af7Sopenharmony_ci			precision highp int;
714e5c31af7Sopenharmony_ci
715e5c31af7Sopenharmony_ci			${DECLARATIONS}
716e5c31af7Sopenharmony_ci
717e5c31af7Sopenharmony_ci			void main()
718e5c31af7Sopenharmony_ci			{
719e5c31af7Sopenharmony_ci				${SETUP}
720e5c31af7Sopenharmony_ci				out0 = in0.zzy;
721e5c31af7Sopenharmony_ci				${OUTPUT}
722e5c31af7Sopenharmony_ci			}
723e5c31af7Sopenharmony_ci		""
724e5c31af7Sopenharmony_ci	end
725e5c31af7Sopenharmony_ci
726e5c31af7Sopenharmony_ci	case mediump_vec3_yxy
727e5c31af7Sopenharmony_ci		version 310 es
728e5c31af7Sopenharmony_ci		values
729e5c31af7Sopenharmony_ci		{
730e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
731e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
732e5c31af7Sopenharmony_ci		}
733e5c31af7Sopenharmony_ci
734e5c31af7Sopenharmony_ci		both ""
735e5c31af7Sopenharmony_ci			#version 310 es
736e5c31af7Sopenharmony_ci			precision highp float;
737e5c31af7Sopenharmony_ci			precision highp int;
738e5c31af7Sopenharmony_ci
739e5c31af7Sopenharmony_ci			${DECLARATIONS}
740e5c31af7Sopenharmony_ci
741e5c31af7Sopenharmony_ci			void main()
742e5c31af7Sopenharmony_ci			{
743e5c31af7Sopenharmony_ci				${SETUP}
744e5c31af7Sopenharmony_ci				out0 = in0.yxy;
745e5c31af7Sopenharmony_ci				${OUTPUT}
746e5c31af7Sopenharmony_ci			}
747e5c31af7Sopenharmony_ci		""
748e5c31af7Sopenharmony_ci	end
749e5c31af7Sopenharmony_ci
750e5c31af7Sopenharmony_ci	case mediump_vec3_xzx
751e5c31af7Sopenharmony_ci		version 310 es
752e5c31af7Sopenharmony_ci		values
753e5c31af7Sopenharmony_ci		{
754e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
755e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.75, 0.0) | vec3(1.0, 1.125, 1.0) | vec3(-0.5, -4.875, -0.5) | vec3(-32.0, -51.0, -32.0) | vec3(-0.75, 0.0526315789474, -0.75) ];
756e5c31af7Sopenharmony_ci		}
757e5c31af7Sopenharmony_ci
758e5c31af7Sopenharmony_ci		both ""
759e5c31af7Sopenharmony_ci			#version 310 es
760e5c31af7Sopenharmony_ci			precision highp float;
761e5c31af7Sopenharmony_ci			precision highp int;
762e5c31af7Sopenharmony_ci
763e5c31af7Sopenharmony_ci			${DECLARATIONS}
764e5c31af7Sopenharmony_ci
765e5c31af7Sopenharmony_ci			void main()
766e5c31af7Sopenharmony_ci			{
767e5c31af7Sopenharmony_ci				${SETUP}
768e5c31af7Sopenharmony_ci				out0 = in0.xzx;
769e5c31af7Sopenharmony_ci				${OUTPUT}
770e5c31af7Sopenharmony_ci			}
771e5c31af7Sopenharmony_ci		""
772e5c31af7Sopenharmony_ci	end
773e5c31af7Sopenharmony_ci
774e5c31af7Sopenharmony_ci	case mediump_vec3_xyyx
775e5c31af7Sopenharmony_ci		version 310 es
776e5c31af7Sopenharmony_ci		values
777e5c31af7Sopenharmony_ci		{
778e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
779e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.5, 0.0) | vec4(1.0, 1.25, 1.25, 1.0) | vec4(-0.5, -2.25, -2.25, -0.5) | vec4(-32.0, 64.0, 64.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.0322580645161, -0.75) ];
780e5c31af7Sopenharmony_ci		}
781e5c31af7Sopenharmony_ci
782e5c31af7Sopenharmony_ci		both ""
783e5c31af7Sopenharmony_ci			#version 310 es
784e5c31af7Sopenharmony_ci			precision highp float;
785e5c31af7Sopenharmony_ci			precision highp int;
786e5c31af7Sopenharmony_ci
787e5c31af7Sopenharmony_ci			${DECLARATIONS}
788e5c31af7Sopenharmony_ci
789e5c31af7Sopenharmony_ci			void main()
790e5c31af7Sopenharmony_ci			{
791e5c31af7Sopenharmony_ci				${SETUP}
792e5c31af7Sopenharmony_ci				out0 = in0.xyyx;
793e5c31af7Sopenharmony_ci				${OUTPUT}
794e5c31af7Sopenharmony_ci			}
795e5c31af7Sopenharmony_ci		""
796e5c31af7Sopenharmony_ci	end
797e5c31af7Sopenharmony_ci
798e5c31af7Sopenharmony_ci	case mediump_vec3_zzzz
799e5c31af7Sopenharmony_ci		version 310 es
800e5c31af7Sopenharmony_ci		values
801e5c31af7Sopenharmony_ci		{
802e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
803e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.75, 0.75) | vec4(1.125, 1.125, 1.125, 1.125) | vec4(-4.875, -4.875, -4.875, -4.875) | vec4(-51.0, -51.0, -51.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.0526315789474, 0.0526315789474) ];
804e5c31af7Sopenharmony_ci		}
805e5c31af7Sopenharmony_ci
806e5c31af7Sopenharmony_ci		both ""
807e5c31af7Sopenharmony_ci			#version 310 es
808e5c31af7Sopenharmony_ci			precision highp float;
809e5c31af7Sopenharmony_ci			precision highp int;
810e5c31af7Sopenharmony_ci
811e5c31af7Sopenharmony_ci			${DECLARATIONS}
812e5c31af7Sopenharmony_ci
813e5c31af7Sopenharmony_ci			void main()
814e5c31af7Sopenharmony_ci			{
815e5c31af7Sopenharmony_ci				${SETUP}
816e5c31af7Sopenharmony_ci				out0 = in0.zzzz;
817e5c31af7Sopenharmony_ci				${OUTPUT}
818e5c31af7Sopenharmony_ci			}
819e5c31af7Sopenharmony_ci		""
820e5c31af7Sopenharmony_ci	end
821e5c31af7Sopenharmony_ci
822e5c31af7Sopenharmony_ci	case mediump_vec3_s
823e5c31af7Sopenharmony_ci		version 310 es
824e5c31af7Sopenharmony_ci		values
825e5c31af7Sopenharmony_ci		{
826e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
827e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
828e5c31af7Sopenharmony_ci		}
829e5c31af7Sopenharmony_ci
830e5c31af7Sopenharmony_ci		both ""
831e5c31af7Sopenharmony_ci			#version 310 es
832e5c31af7Sopenharmony_ci			precision highp float;
833e5c31af7Sopenharmony_ci			precision highp int;
834e5c31af7Sopenharmony_ci
835e5c31af7Sopenharmony_ci			${DECLARATIONS}
836e5c31af7Sopenharmony_ci
837e5c31af7Sopenharmony_ci			void main()
838e5c31af7Sopenharmony_ci			{
839e5c31af7Sopenharmony_ci				${SETUP}
840e5c31af7Sopenharmony_ci				out0 = in0.s;
841e5c31af7Sopenharmony_ci				${OUTPUT}
842e5c31af7Sopenharmony_ci			}
843e5c31af7Sopenharmony_ci		""
844e5c31af7Sopenharmony_ci	end
845e5c31af7Sopenharmony_ci
846e5c31af7Sopenharmony_ci	case mediump_vec3_p
847e5c31af7Sopenharmony_ci		version 310 es
848e5c31af7Sopenharmony_ci		values
849e5c31af7Sopenharmony_ci		{
850e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
851e5c31af7Sopenharmony_ci			output float out0 = [ 0.75 | 1.125 | -4.875 | -51.0 | 0.0526315789474 ];
852e5c31af7Sopenharmony_ci		}
853e5c31af7Sopenharmony_ci
854e5c31af7Sopenharmony_ci		both ""
855e5c31af7Sopenharmony_ci			#version 310 es
856e5c31af7Sopenharmony_ci			precision highp float;
857e5c31af7Sopenharmony_ci			precision highp int;
858e5c31af7Sopenharmony_ci
859e5c31af7Sopenharmony_ci			${DECLARATIONS}
860e5c31af7Sopenharmony_ci
861e5c31af7Sopenharmony_ci			void main()
862e5c31af7Sopenharmony_ci			{
863e5c31af7Sopenharmony_ci				${SETUP}
864e5c31af7Sopenharmony_ci				out0 = in0.p;
865e5c31af7Sopenharmony_ci				${OUTPUT}
866e5c31af7Sopenharmony_ci			}
867e5c31af7Sopenharmony_ci		""
868e5c31af7Sopenharmony_ci	end
869e5c31af7Sopenharmony_ci
870e5c31af7Sopenharmony_ci	case mediump_vec3_sp
871e5c31af7Sopenharmony_ci		version 310 es
872e5c31af7Sopenharmony_ci		values
873e5c31af7Sopenharmony_ci		{
874e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
875e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.75) | vec2(1.0, 1.125) | vec2(-0.5, -4.875) | vec2(-32.0, -51.0) | vec2(-0.75, 0.0526315789474) ];
876e5c31af7Sopenharmony_ci		}
877e5c31af7Sopenharmony_ci
878e5c31af7Sopenharmony_ci		both ""
879e5c31af7Sopenharmony_ci			#version 310 es
880e5c31af7Sopenharmony_ci			precision highp float;
881e5c31af7Sopenharmony_ci			precision highp int;
882e5c31af7Sopenharmony_ci
883e5c31af7Sopenharmony_ci			${DECLARATIONS}
884e5c31af7Sopenharmony_ci
885e5c31af7Sopenharmony_ci			void main()
886e5c31af7Sopenharmony_ci			{
887e5c31af7Sopenharmony_ci				${SETUP}
888e5c31af7Sopenharmony_ci				out0 = in0.sp;
889e5c31af7Sopenharmony_ci				${OUTPUT}
890e5c31af7Sopenharmony_ci			}
891e5c31af7Sopenharmony_ci		""
892e5c31af7Sopenharmony_ci	end
893e5c31af7Sopenharmony_ci
894e5c31af7Sopenharmony_ci	case mediump_vec3_pp
895e5c31af7Sopenharmony_ci		version 310 es
896e5c31af7Sopenharmony_ci		values
897e5c31af7Sopenharmony_ci		{
898e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
899e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.75, 0.75) | vec2(1.125, 1.125) | vec2(-4.875, -4.875) | vec2(-51.0, -51.0) | vec2(0.0526315789474, 0.0526315789474) ];
900e5c31af7Sopenharmony_ci		}
901e5c31af7Sopenharmony_ci
902e5c31af7Sopenharmony_ci		both ""
903e5c31af7Sopenharmony_ci			#version 310 es
904e5c31af7Sopenharmony_ci			precision highp float;
905e5c31af7Sopenharmony_ci			precision highp int;
906e5c31af7Sopenharmony_ci
907e5c31af7Sopenharmony_ci			${DECLARATIONS}
908e5c31af7Sopenharmony_ci
909e5c31af7Sopenharmony_ci			void main()
910e5c31af7Sopenharmony_ci			{
911e5c31af7Sopenharmony_ci				${SETUP}
912e5c31af7Sopenharmony_ci				out0 = in0.pp;
913e5c31af7Sopenharmony_ci				${OUTPUT}
914e5c31af7Sopenharmony_ci			}
915e5c31af7Sopenharmony_ci		""
916e5c31af7Sopenharmony_ci	end
917e5c31af7Sopenharmony_ci
918e5c31af7Sopenharmony_ci	case mediump_vec3_stp
919e5c31af7Sopenharmony_ci		version 310 es
920e5c31af7Sopenharmony_ci		values
921e5c31af7Sopenharmony_ci		{
922e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
923e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
924e5c31af7Sopenharmony_ci		}
925e5c31af7Sopenharmony_ci
926e5c31af7Sopenharmony_ci		both ""
927e5c31af7Sopenharmony_ci			#version 310 es
928e5c31af7Sopenharmony_ci			precision highp float;
929e5c31af7Sopenharmony_ci			precision highp int;
930e5c31af7Sopenharmony_ci
931e5c31af7Sopenharmony_ci			${DECLARATIONS}
932e5c31af7Sopenharmony_ci
933e5c31af7Sopenharmony_ci			void main()
934e5c31af7Sopenharmony_ci			{
935e5c31af7Sopenharmony_ci				${SETUP}
936e5c31af7Sopenharmony_ci				out0 = in0.stp;
937e5c31af7Sopenharmony_ci				${OUTPUT}
938e5c31af7Sopenharmony_ci			}
939e5c31af7Sopenharmony_ci		""
940e5c31af7Sopenharmony_ci	end
941e5c31af7Sopenharmony_ci
942e5c31af7Sopenharmony_ci	case mediump_vec3_pts
943e5c31af7Sopenharmony_ci		version 310 es
944e5c31af7Sopenharmony_ci		values
945e5c31af7Sopenharmony_ci		{
946e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
947e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.5, 0.0) | vec3(1.125, 1.25, 1.0) | vec3(-4.875, -2.25, -0.5) | vec3(-51.0, 64.0, -32.0) | vec3(0.0526315789474, -0.0322580645161, -0.75) ];
948e5c31af7Sopenharmony_ci		}
949e5c31af7Sopenharmony_ci
950e5c31af7Sopenharmony_ci		both ""
951e5c31af7Sopenharmony_ci			#version 310 es
952e5c31af7Sopenharmony_ci			precision highp float;
953e5c31af7Sopenharmony_ci			precision highp int;
954e5c31af7Sopenharmony_ci
955e5c31af7Sopenharmony_ci			${DECLARATIONS}
956e5c31af7Sopenharmony_ci
957e5c31af7Sopenharmony_ci			void main()
958e5c31af7Sopenharmony_ci			{
959e5c31af7Sopenharmony_ci				${SETUP}
960e5c31af7Sopenharmony_ci				out0 = in0.pts;
961e5c31af7Sopenharmony_ci				${OUTPUT}
962e5c31af7Sopenharmony_ci			}
963e5c31af7Sopenharmony_ci		""
964e5c31af7Sopenharmony_ci	end
965e5c31af7Sopenharmony_ci
966e5c31af7Sopenharmony_ci	case mediump_vec3_sss
967e5c31af7Sopenharmony_ci		version 310 es
968e5c31af7Sopenharmony_ci		values
969e5c31af7Sopenharmony_ci		{
970e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
971e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(-0.5, -0.5, -0.5) | vec3(-32.0, -32.0, -32.0) | vec3(-0.75, -0.75, -0.75) ];
972e5c31af7Sopenharmony_ci		}
973e5c31af7Sopenharmony_ci
974e5c31af7Sopenharmony_ci		both ""
975e5c31af7Sopenharmony_ci			#version 310 es
976e5c31af7Sopenharmony_ci			precision highp float;
977e5c31af7Sopenharmony_ci			precision highp int;
978e5c31af7Sopenharmony_ci
979e5c31af7Sopenharmony_ci			${DECLARATIONS}
980e5c31af7Sopenharmony_ci
981e5c31af7Sopenharmony_ci			void main()
982e5c31af7Sopenharmony_ci			{
983e5c31af7Sopenharmony_ci				${SETUP}
984e5c31af7Sopenharmony_ci				out0 = in0.sss;
985e5c31af7Sopenharmony_ci				${OUTPUT}
986e5c31af7Sopenharmony_ci			}
987e5c31af7Sopenharmony_ci		""
988e5c31af7Sopenharmony_ci	end
989e5c31af7Sopenharmony_ci
990e5c31af7Sopenharmony_ci	case mediump_vec3_ppp
991e5c31af7Sopenharmony_ci		version 310 es
992e5c31af7Sopenharmony_ci		values
993e5c31af7Sopenharmony_ci		{
994e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
995e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.75) | vec3(1.125, 1.125, 1.125) | vec3(-4.875, -4.875, -4.875) | vec3(-51.0, -51.0, -51.0) | vec3(0.0526315789474, 0.0526315789474, 0.0526315789474) ];
996e5c31af7Sopenharmony_ci		}
997e5c31af7Sopenharmony_ci
998e5c31af7Sopenharmony_ci		both ""
999e5c31af7Sopenharmony_ci			#version 310 es
1000e5c31af7Sopenharmony_ci			precision highp float;
1001e5c31af7Sopenharmony_ci			precision highp int;
1002e5c31af7Sopenharmony_ci
1003e5c31af7Sopenharmony_ci			${DECLARATIONS}
1004e5c31af7Sopenharmony_ci
1005e5c31af7Sopenharmony_ci			void main()
1006e5c31af7Sopenharmony_ci			{
1007e5c31af7Sopenharmony_ci				${SETUP}
1008e5c31af7Sopenharmony_ci				out0 = in0.ppp;
1009e5c31af7Sopenharmony_ci				${OUTPUT}
1010e5c31af7Sopenharmony_ci			}
1011e5c31af7Sopenharmony_ci		""
1012e5c31af7Sopenharmony_ci	end
1013e5c31af7Sopenharmony_ci
1014e5c31af7Sopenharmony_ci	case mediump_vec3_ppt
1015e5c31af7Sopenharmony_ci		version 310 es
1016e5c31af7Sopenharmony_ci		values
1017e5c31af7Sopenharmony_ci		{
1018e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1019e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.5) | vec3(1.125, 1.125, 1.25) | vec3(-4.875, -4.875, -2.25) | vec3(-51.0, -51.0, 64.0) | vec3(0.0526315789474, 0.0526315789474, -0.0322580645161) ];
1020e5c31af7Sopenharmony_ci		}
1021e5c31af7Sopenharmony_ci
1022e5c31af7Sopenharmony_ci		both ""
1023e5c31af7Sopenharmony_ci			#version 310 es
1024e5c31af7Sopenharmony_ci			precision highp float;
1025e5c31af7Sopenharmony_ci			precision highp int;
1026e5c31af7Sopenharmony_ci
1027e5c31af7Sopenharmony_ci			${DECLARATIONS}
1028e5c31af7Sopenharmony_ci
1029e5c31af7Sopenharmony_ci			void main()
1030e5c31af7Sopenharmony_ci			{
1031e5c31af7Sopenharmony_ci				${SETUP}
1032e5c31af7Sopenharmony_ci				out0 = in0.ppt;
1033e5c31af7Sopenharmony_ci				${OUTPUT}
1034e5c31af7Sopenharmony_ci			}
1035e5c31af7Sopenharmony_ci		""
1036e5c31af7Sopenharmony_ci	end
1037e5c31af7Sopenharmony_ci
1038e5c31af7Sopenharmony_ci	case mediump_vec3_tst
1039e5c31af7Sopenharmony_ci		version 310 es
1040e5c31af7Sopenharmony_ci		values
1041e5c31af7Sopenharmony_ci		{
1042e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1043e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
1044e5c31af7Sopenharmony_ci		}
1045e5c31af7Sopenharmony_ci
1046e5c31af7Sopenharmony_ci		both ""
1047e5c31af7Sopenharmony_ci			#version 310 es
1048e5c31af7Sopenharmony_ci			precision highp float;
1049e5c31af7Sopenharmony_ci			precision highp int;
1050e5c31af7Sopenharmony_ci
1051e5c31af7Sopenharmony_ci			${DECLARATIONS}
1052e5c31af7Sopenharmony_ci
1053e5c31af7Sopenharmony_ci			void main()
1054e5c31af7Sopenharmony_ci			{
1055e5c31af7Sopenharmony_ci				${SETUP}
1056e5c31af7Sopenharmony_ci				out0 = in0.tst;
1057e5c31af7Sopenharmony_ci				${OUTPUT}
1058e5c31af7Sopenharmony_ci			}
1059e5c31af7Sopenharmony_ci		""
1060e5c31af7Sopenharmony_ci	end
1061e5c31af7Sopenharmony_ci
1062e5c31af7Sopenharmony_ci	case mediump_vec3_sps
1063e5c31af7Sopenharmony_ci		version 310 es
1064e5c31af7Sopenharmony_ci		values
1065e5c31af7Sopenharmony_ci		{
1066e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1067e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.75, 0.0) | vec3(1.0, 1.125, 1.0) | vec3(-0.5, -4.875, -0.5) | vec3(-32.0, -51.0, -32.0) | vec3(-0.75, 0.0526315789474, -0.75) ];
1068e5c31af7Sopenharmony_ci		}
1069e5c31af7Sopenharmony_ci
1070e5c31af7Sopenharmony_ci		both ""
1071e5c31af7Sopenharmony_ci			#version 310 es
1072e5c31af7Sopenharmony_ci			precision highp float;
1073e5c31af7Sopenharmony_ci			precision highp int;
1074e5c31af7Sopenharmony_ci
1075e5c31af7Sopenharmony_ci			${DECLARATIONS}
1076e5c31af7Sopenharmony_ci
1077e5c31af7Sopenharmony_ci			void main()
1078e5c31af7Sopenharmony_ci			{
1079e5c31af7Sopenharmony_ci				${SETUP}
1080e5c31af7Sopenharmony_ci				out0 = in0.sps;
1081e5c31af7Sopenharmony_ci				${OUTPUT}
1082e5c31af7Sopenharmony_ci			}
1083e5c31af7Sopenharmony_ci		""
1084e5c31af7Sopenharmony_ci	end
1085e5c31af7Sopenharmony_ci
1086e5c31af7Sopenharmony_ci	case mediump_vec3_stts
1087e5c31af7Sopenharmony_ci		version 310 es
1088e5c31af7Sopenharmony_ci		values
1089e5c31af7Sopenharmony_ci		{
1090e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1091e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.5, 0.0) | vec4(1.0, 1.25, 1.25, 1.0) | vec4(-0.5, -2.25, -2.25, -0.5) | vec4(-32.0, 64.0, 64.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.0322580645161, -0.75) ];
1092e5c31af7Sopenharmony_ci		}
1093e5c31af7Sopenharmony_ci
1094e5c31af7Sopenharmony_ci		both ""
1095e5c31af7Sopenharmony_ci			#version 310 es
1096e5c31af7Sopenharmony_ci			precision highp float;
1097e5c31af7Sopenharmony_ci			precision highp int;
1098e5c31af7Sopenharmony_ci
1099e5c31af7Sopenharmony_ci			${DECLARATIONS}
1100e5c31af7Sopenharmony_ci
1101e5c31af7Sopenharmony_ci			void main()
1102e5c31af7Sopenharmony_ci			{
1103e5c31af7Sopenharmony_ci				${SETUP}
1104e5c31af7Sopenharmony_ci				out0 = in0.stts;
1105e5c31af7Sopenharmony_ci				${OUTPUT}
1106e5c31af7Sopenharmony_ci			}
1107e5c31af7Sopenharmony_ci		""
1108e5c31af7Sopenharmony_ci	end
1109e5c31af7Sopenharmony_ci
1110e5c31af7Sopenharmony_ci	case mediump_vec3_pppp
1111e5c31af7Sopenharmony_ci		version 310 es
1112e5c31af7Sopenharmony_ci		values
1113e5c31af7Sopenharmony_ci		{
1114e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1115e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.75, 0.75) | vec4(1.125, 1.125, 1.125, 1.125) | vec4(-4.875, -4.875, -4.875, -4.875) | vec4(-51.0, -51.0, -51.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.0526315789474, 0.0526315789474) ];
1116e5c31af7Sopenharmony_ci		}
1117e5c31af7Sopenharmony_ci
1118e5c31af7Sopenharmony_ci		both ""
1119e5c31af7Sopenharmony_ci			#version 310 es
1120e5c31af7Sopenharmony_ci			precision highp float;
1121e5c31af7Sopenharmony_ci			precision highp int;
1122e5c31af7Sopenharmony_ci
1123e5c31af7Sopenharmony_ci			${DECLARATIONS}
1124e5c31af7Sopenharmony_ci
1125e5c31af7Sopenharmony_ci			void main()
1126e5c31af7Sopenharmony_ci			{
1127e5c31af7Sopenharmony_ci				${SETUP}
1128e5c31af7Sopenharmony_ci				out0 = in0.pppp;
1129e5c31af7Sopenharmony_ci				${OUTPUT}
1130e5c31af7Sopenharmony_ci			}
1131e5c31af7Sopenharmony_ci		""
1132e5c31af7Sopenharmony_ci	end
1133e5c31af7Sopenharmony_ci
1134e5c31af7Sopenharmony_ci	case mediump_vec3_r
1135e5c31af7Sopenharmony_ci		version 310 es
1136e5c31af7Sopenharmony_ci		values
1137e5c31af7Sopenharmony_ci		{
1138e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1139e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
1140e5c31af7Sopenharmony_ci		}
1141e5c31af7Sopenharmony_ci
1142e5c31af7Sopenharmony_ci		both ""
1143e5c31af7Sopenharmony_ci			#version 310 es
1144e5c31af7Sopenharmony_ci			precision highp float;
1145e5c31af7Sopenharmony_ci			precision highp int;
1146e5c31af7Sopenharmony_ci
1147e5c31af7Sopenharmony_ci			${DECLARATIONS}
1148e5c31af7Sopenharmony_ci
1149e5c31af7Sopenharmony_ci			void main()
1150e5c31af7Sopenharmony_ci			{
1151e5c31af7Sopenharmony_ci				${SETUP}
1152e5c31af7Sopenharmony_ci				out0 = in0.r;
1153e5c31af7Sopenharmony_ci				${OUTPUT}
1154e5c31af7Sopenharmony_ci			}
1155e5c31af7Sopenharmony_ci		""
1156e5c31af7Sopenharmony_ci	end
1157e5c31af7Sopenharmony_ci
1158e5c31af7Sopenharmony_ci	case mediump_vec3_b
1159e5c31af7Sopenharmony_ci		version 310 es
1160e5c31af7Sopenharmony_ci		values
1161e5c31af7Sopenharmony_ci		{
1162e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1163e5c31af7Sopenharmony_ci			output float out0 = [ 0.75 | 1.125 | -4.875 | -51.0 | 0.0526315789474 ];
1164e5c31af7Sopenharmony_ci		}
1165e5c31af7Sopenharmony_ci
1166e5c31af7Sopenharmony_ci		both ""
1167e5c31af7Sopenharmony_ci			#version 310 es
1168e5c31af7Sopenharmony_ci			precision highp float;
1169e5c31af7Sopenharmony_ci			precision highp int;
1170e5c31af7Sopenharmony_ci
1171e5c31af7Sopenharmony_ci			${DECLARATIONS}
1172e5c31af7Sopenharmony_ci
1173e5c31af7Sopenharmony_ci			void main()
1174e5c31af7Sopenharmony_ci			{
1175e5c31af7Sopenharmony_ci				${SETUP}
1176e5c31af7Sopenharmony_ci				out0 = in0.b;
1177e5c31af7Sopenharmony_ci				${OUTPUT}
1178e5c31af7Sopenharmony_ci			}
1179e5c31af7Sopenharmony_ci		""
1180e5c31af7Sopenharmony_ci	end
1181e5c31af7Sopenharmony_ci
1182e5c31af7Sopenharmony_ci	case mediump_vec3_rb
1183e5c31af7Sopenharmony_ci		version 310 es
1184e5c31af7Sopenharmony_ci		values
1185e5c31af7Sopenharmony_ci		{
1186e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1187e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.0, 0.75) | vec2(1.0, 1.125) | vec2(-0.5, -4.875) | vec2(-32.0, -51.0) | vec2(-0.75, 0.0526315789474) ];
1188e5c31af7Sopenharmony_ci		}
1189e5c31af7Sopenharmony_ci
1190e5c31af7Sopenharmony_ci		both ""
1191e5c31af7Sopenharmony_ci			#version 310 es
1192e5c31af7Sopenharmony_ci			precision highp float;
1193e5c31af7Sopenharmony_ci			precision highp int;
1194e5c31af7Sopenharmony_ci
1195e5c31af7Sopenharmony_ci			${DECLARATIONS}
1196e5c31af7Sopenharmony_ci
1197e5c31af7Sopenharmony_ci			void main()
1198e5c31af7Sopenharmony_ci			{
1199e5c31af7Sopenharmony_ci				${SETUP}
1200e5c31af7Sopenharmony_ci				out0 = in0.rb;
1201e5c31af7Sopenharmony_ci				${OUTPUT}
1202e5c31af7Sopenharmony_ci			}
1203e5c31af7Sopenharmony_ci		""
1204e5c31af7Sopenharmony_ci	end
1205e5c31af7Sopenharmony_ci
1206e5c31af7Sopenharmony_ci	case mediump_vec3_bb
1207e5c31af7Sopenharmony_ci		version 310 es
1208e5c31af7Sopenharmony_ci		values
1209e5c31af7Sopenharmony_ci		{
1210e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1211e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.75, 0.75) | vec2(1.125, 1.125) | vec2(-4.875, -4.875) | vec2(-51.0, -51.0) | vec2(0.0526315789474, 0.0526315789474) ];
1212e5c31af7Sopenharmony_ci		}
1213e5c31af7Sopenharmony_ci
1214e5c31af7Sopenharmony_ci		both ""
1215e5c31af7Sopenharmony_ci			#version 310 es
1216e5c31af7Sopenharmony_ci			precision highp float;
1217e5c31af7Sopenharmony_ci			precision highp int;
1218e5c31af7Sopenharmony_ci
1219e5c31af7Sopenharmony_ci			${DECLARATIONS}
1220e5c31af7Sopenharmony_ci
1221e5c31af7Sopenharmony_ci			void main()
1222e5c31af7Sopenharmony_ci			{
1223e5c31af7Sopenharmony_ci				${SETUP}
1224e5c31af7Sopenharmony_ci				out0 = in0.bb;
1225e5c31af7Sopenharmony_ci				${OUTPUT}
1226e5c31af7Sopenharmony_ci			}
1227e5c31af7Sopenharmony_ci		""
1228e5c31af7Sopenharmony_ci	end
1229e5c31af7Sopenharmony_ci
1230e5c31af7Sopenharmony_ci	case mediump_vec3_rgb
1231e5c31af7Sopenharmony_ci		version 310 es
1232e5c31af7Sopenharmony_ci		values
1233e5c31af7Sopenharmony_ci		{
1234e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1235e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1236e5c31af7Sopenharmony_ci		}
1237e5c31af7Sopenharmony_ci
1238e5c31af7Sopenharmony_ci		both ""
1239e5c31af7Sopenharmony_ci			#version 310 es
1240e5c31af7Sopenharmony_ci			precision highp float;
1241e5c31af7Sopenharmony_ci			precision highp int;
1242e5c31af7Sopenharmony_ci
1243e5c31af7Sopenharmony_ci			${DECLARATIONS}
1244e5c31af7Sopenharmony_ci
1245e5c31af7Sopenharmony_ci			void main()
1246e5c31af7Sopenharmony_ci			{
1247e5c31af7Sopenharmony_ci				${SETUP}
1248e5c31af7Sopenharmony_ci				out0 = in0.rgb;
1249e5c31af7Sopenharmony_ci				${OUTPUT}
1250e5c31af7Sopenharmony_ci			}
1251e5c31af7Sopenharmony_ci		""
1252e5c31af7Sopenharmony_ci	end
1253e5c31af7Sopenharmony_ci
1254e5c31af7Sopenharmony_ci	case mediump_vec3_bgr
1255e5c31af7Sopenharmony_ci		version 310 es
1256e5c31af7Sopenharmony_ci		values
1257e5c31af7Sopenharmony_ci		{
1258e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1259e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.5, 0.0) | vec3(1.125, 1.25, 1.0) | vec3(-4.875, -2.25, -0.5) | vec3(-51.0, 64.0, -32.0) | vec3(0.0526315789474, -0.0322580645161, -0.75) ];
1260e5c31af7Sopenharmony_ci		}
1261e5c31af7Sopenharmony_ci
1262e5c31af7Sopenharmony_ci		both ""
1263e5c31af7Sopenharmony_ci			#version 310 es
1264e5c31af7Sopenharmony_ci			precision highp float;
1265e5c31af7Sopenharmony_ci			precision highp int;
1266e5c31af7Sopenharmony_ci
1267e5c31af7Sopenharmony_ci			${DECLARATIONS}
1268e5c31af7Sopenharmony_ci
1269e5c31af7Sopenharmony_ci			void main()
1270e5c31af7Sopenharmony_ci			{
1271e5c31af7Sopenharmony_ci				${SETUP}
1272e5c31af7Sopenharmony_ci				out0 = in0.bgr;
1273e5c31af7Sopenharmony_ci				${OUTPUT}
1274e5c31af7Sopenharmony_ci			}
1275e5c31af7Sopenharmony_ci		""
1276e5c31af7Sopenharmony_ci	end
1277e5c31af7Sopenharmony_ci
1278e5c31af7Sopenharmony_ci	case mediump_vec3_rrr
1279e5c31af7Sopenharmony_ci		version 310 es
1280e5c31af7Sopenharmony_ci		values
1281e5c31af7Sopenharmony_ci		{
1282e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1283e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(-0.5, -0.5, -0.5) | vec3(-32.0, -32.0, -32.0) | vec3(-0.75, -0.75, -0.75) ];
1284e5c31af7Sopenharmony_ci		}
1285e5c31af7Sopenharmony_ci
1286e5c31af7Sopenharmony_ci		both ""
1287e5c31af7Sopenharmony_ci			#version 310 es
1288e5c31af7Sopenharmony_ci			precision highp float;
1289e5c31af7Sopenharmony_ci			precision highp int;
1290e5c31af7Sopenharmony_ci
1291e5c31af7Sopenharmony_ci			${DECLARATIONS}
1292e5c31af7Sopenharmony_ci
1293e5c31af7Sopenharmony_ci			void main()
1294e5c31af7Sopenharmony_ci			{
1295e5c31af7Sopenharmony_ci				${SETUP}
1296e5c31af7Sopenharmony_ci				out0 = in0.rrr;
1297e5c31af7Sopenharmony_ci				${OUTPUT}
1298e5c31af7Sopenharmony_ci			}
1299e5c31af7Sopenharmony_ci		""
1300e5c31af7Sopenharmony_ci	end
1301e5c31af7Sopenharmony_ci
1302e5c31af7Sopenharmony_ci	case mediump_vec3_bbb
1303e5c31af7Sopenharmony_ci		version 310 es
1304e5c31af7Sopenharmony_ci		values
1305e5c31af7Sopenharmony_ci		{
1306e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1307e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.75) | vec3(1.125, 1.125, 1.125) | vec3(-4.875, -4.875, -4.875) | vec3(-51.0, -51.0, -51.0) | vec3(0.0526315789474, 0.0526315789474, 0.0526315789474) ];
1308e5c31af7Sopenharmony_ci		}
1309e5c31af7Sopenharmony_ci
1310e5c31af7Sopenharmony_ci		both ""
1311e5c31af7Sopenharmony_ci			#version 310 es
1312e5c31af7Sopenharmony_ci			precision highp float;
1313e5c31af7Sopenharmony_ci			precision highp int;
1314e5c31af7Sopenharmony_ci
1315e5c31af7Sopenharmony_ci			${DECLARATIONS}
1316e5c31af7Sopenharmony_ci
1317e5c31af7Sopenharmony_ci			void main()
1318e5c31af7Sopenharmony_ci			{
1319e5c31af7Sopenharmony_ci				${SETUP}
1320e5c31af7Sopenharmony_ci				out0 = in0.bbb;
1321e5c31af7Sopenharmony_ci				${OUTPUT}
1322e5c31af7Sopenharmony_ci			}
1323e5c31af7Sopenharmony_ci		""
1324e5c31af7Sopenharmony_ci	end
1325e5c31af7Sopenharmony_ci
1326e5c31af7Sopenharmony_ci	case mediump_vec3_bbg
1327e5c31af7Sopenharmony_ci		version 310 es
1328e5c31af7Sopenharmony_ci		values
1329e5c31af7Sopenharmony_ci		{
1330e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1331e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.75, 0.75, 0.5) | vec3(1.125, 1.125, 1.25) | vec3(-4.875, -4.875, -2.25) | vec3(-51.0, -51.0, 64.0) | vec3(0.0526315789474, 0.0526315789474, -0.0322580645161) ];
1332e5c31af7Sopenharmony_ci		}
1333e5c31af7Sopenharmony_ci
1334e5c31af7Sopenharmony_ci		both ""
1335e5c31af7Sopenharmony_ci			#version 310 es
1336e5c31af7Sopenharmony_ci			precision highp float;
1337e5c31af7Sopenharmony_ci			precision highp int;
1338e5c31af7Sopenharmony_ci
1339e5c31af7Sopenharmony_ci			${DECLARATIONS}
1340e5c31af7Sopenharmony_ci
1341e5c31af7Sopenharmony_ci			void main()
1342e5c31af7Sopenharmony_ci			{
1343e5c31af7Sopenharmony_ci				${SETUP}
1344e5c31af7Sopenharmony_ci				out0 = in0.bbg;
1345e5c31af7Sopenharmony_ci				${OUTPUT}
1346e5c31af7Sopenharmony_ci			}
1347e5c31af7Sopenharmony_ci		""
1348e5c31af7Sopenharmony_ci	end
1349e5c31af7Sopenharmony_ci
1350e5c31af7Sopenharmony_ci	case mediump_vec3_grg
1351e5c31af7Sopenharmony_ci		version 310 es
1352e5c31af7Sopenharmony_ci		values
1353e5c31af7Sopenharmony_ci		{
1354e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1355e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.0, 0.5) | vec3(1.25, 1.0, 1.25) | vec3(-2.25, -0.5, -2.25) | vec3(64.0, -32.0, 64.0) | vec3(-0.0322580645161, -0.75, -0.0322580645161) ];
1356e5c31af7Sopenharmony_ci		}
1357e5c31af7Sopenharmony_ci
1358e5c31af7Sopenharmony_ci		both ""
1359e5c31af7Sopenharmony_ci			#version 310 es
1360e5c31af7Sopenharmony_ci			precision highp float;
1361e5c31af7Sopenharmony_ci			precision highp int;
1362e5c31af7Sopenharmony_ci
1363e5c31af7Sopenharmony_ci			${DECLARATIONS}
1364e5c31af7Sopenharmony_ci
1365e5c31af7Sopenharmony_ci			void main()
1366e5c31af7Sopenharmony_ci			{
1367e5c31af7Sopenharmony_ci				${SETUP}
1368e5c31af7Sopenharmony_ci				out0 = in0.grg;
1369e5c31af7Sopenharmony_ci				${OUTPUT}
1370e5c31af7Sopenharmony_ci			}
1371e5c31af7Sopenharmony_ci		""
1372e5c31af7Sopenharmony_ci	end
1373e5c31af7Sopenharmony_ci
1374e5c31af7Sopenharmony_ci	case mediump_vec3_rbr
1375e5c31af7Sopenharmony_ci		version 310 es
1376e5c31af7Sopenharmony_ci		values
1377e5c31af7Sopenharmony_ci		{
1378e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1379e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.0, 0.75, 0.0) | vec3(1.0, 1.125, 1.0) | vec3(-0.5, -4.875, -0.5) | vec3(-32.0, -51.0, -32.0) | vec3(-0.75, 0.0526315789474, -0.75) ];
1380e5c31af7Sopenharmony_ci		}
1381e5c31af7Sopenharmony_ci
1382e5c31af7Sopenharmony_ci		both ""
1383e5c31af7Sopenharmony_ci			#version 310 es
1384e5c31af7Sopenharmony_ci			precision highp float;
1385e5c31af7Sopenharmony_ci			precision highp int;
1386e5c31af7Sopenharmony_ci
1387e5c31af7Sopenharmony_ci			${DECLARATIONS}
1388e5c31af7Sopenharmony_ci
1389e5c31af7Sopenharmony_ci			void main()
1390e5c31af7Sopenharmony_ci			{
1391e5c31af7Sopenharmony_ci				${SETUP}
1392e5c31af7Sopenharmony_ci				out0 = in0.rbr;
1393e5c31af7Sopenharmony_ci				${OUTPUT}
1394e5c31af7Sopenharmony_ci			}
1395e5c31af7Sopenharmony_ci		""
1396e5c31af7Sopenharmony_ci	end
1397e5c31af7Sopenharmony_ci
1398e5c31af7Sopenharmony_ci	case mediump_vec3_rggr
1399e5c31af7Sopenharmony_ci		version 310 es
1400e5c31af7Sopenharmony_ci		values
1401e5c31af7Sopenharmony_ci		{
1402e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1403e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.5, 0.0) | vec4(1.0, 1.25, 1.25, 1.0) | vec4(-0.5, -2.25, -2.25, -0.5) | vec4(-32.0, 64.0, 64.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.0322580645161, -0.75) ];
1404e5c31af7Sopenharmony_ci		}
1405e5c31af7Sopenharmony_ci
1406e5c31af7Sopenharmony_ci		both ""
1407e5c31af7Sopenharmony_ci			#version 310 es
1408e5c31af7Sopenharmony_ci			precision highp float;
1409e5c31af7Sopenharmony_ci			precision highp int;
1410e5c31af7Sopenharmony_ci
1411e5c31af7Sopenharmony_ci			${DECLARATIONS}
1412e5c31af7Sopenharmony_ci
1413e5c31af7Sopenharmony_ci			void main()
1414e5c31af7Sopenharmony_ci			{
1415e5c31af7Sopenharmony_ci				${SETUP}
1416e5c31af7Sopenharmony_ci				out0 = in0.rggr;
1417e5c31af7Sopenharmony_ci				${OUTPUT}
1418e5c31af7Sopenharmony_ci			}
1419e5c31af7Sopenharmony_ci		""
1420e5c31af7Sopenharmony_ci	end
1421e5c31af7Sopenharmony_ci
1422e5c31af7Sopenharmony_ci	case mediump_vec3_bbbb
1423e5c31af7Sopenharmony_ci		version 310 es
1424e5c31af7Sopenharmony_ci		values
1425e5c31af7Sopenharmony_ci		{
1426e5c31af7Sopenharmony_ci			input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1427e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.75, 0.75) | vec4(1.125, 1.125, 1.125, 1.125) | vec4(-4.875, -4.875, -4.875, -4.875) | vec4(-51.0, -51.0, -51.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.0526315789474, 0.0526315789474) ];
1428e5c31af7Sopenharmony_ci		}
1429e5c31af7Sopenharmony_ci
1430e5c31af7Sopenharmony_ci		both ""
1431e5c31af7Sopenharmony_ci			#version 310 es
1432e5c31af7Sopenharmony_ci			precision highp float;
1433e5c31af7Sopenharmony_ci			precision highp int;
1434e5c31af7Sopenharmony_ci
1435e5c31af7Sopenharmony_ci			${DECLARATIONS}
1436e5c31af7Sopenharmony_ci
1437e5c31af7Sopenharmony_ci			void main()
1438e5c31af7Sopenharmony_ci			{
1439e5c31af7Sopenharmony_ci				${SETUP}
1440e5c31af7Sopenharmony_ci				out0 = in0.bbbb;
1441e5c31af7Sopenharmony_ci				${OUTPUT}
1442e5c31af7Sopenharmony_ci			}
1443e5c31af7Sopenharmony_ci		""
1444e5c31af7Sopenharmony_ci	end
1445e5c31af7Sopenharmony_ci
1446e5c31af7Sopenharmony_ci	case mediump_vec4_x
1447e5c31af7Sopenharmony_ci		version 310 es
1448e5c31af7Sopenharmony_ci		values
1449e5c31af7Sopenharmony_ci		{
1450e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1451e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
1452e5c31af7Sopenharmony_ci		}
1453e5c31af7Sopenharmony_ci
1454e5c31af7Sopenharmony_ci		both ""
1455e5c31af7Sopenharmony_ci			#version 310 es
1456e5c31af7Sopenharmony_ci			precision highp float;
1457e5c31af7Sopenharmony_ci			precision highp int;
1458e5c31af7Sopenharmony_ci
1459e5c31af7Sopenharmony_ci			${DECLARATIONS}
1460e5c31af7Sopenharmony_ci
1461e5c31af7Sopenharmony_ci			void main()
1462e5c31af7Sopenharmony_ci			{
1463e5c31af7Sopenharmony_ci				${SETUP}
1464e5c31af7Sopenharmony_ci				out0 = in0.x;
1465e5c31af7Sopenharmony_ci				${OUTPUT}
1466e5c31af7Sopenharmony_ci			}
1467e5c31af7Sopenharmony_ci		""
1468e5c31af7Sopenharmony_ci	end
1469e5c31af7Sopenharmony_ci
1470e5c31af7Sopenharmony_ci	case mediump_vec4_w
1471e5c31af7Sopenharmony_ci		version 310 es
1472e5c31af7Sopenharmony_ci		values
1473e5c31af7Sopenharmony_ci		{
1474e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1475e5c31af7Sopenharmony_ci			output float out0 = [ 0.825 | 1.75 | 9.0 | 24.0 | 0.25 ];
1476e5c31af7Sopenharmony_ci		}
1477e5c31af7Sopenharmony_ci
1478e5c31af7Sopenharmony_ci		both ""
1479e5c31af7Sopenharmony_ci			#version 310 es
1480e5c31af7Sopenharmony_ci			precision highp float;
1481e5c31af7Sopenharmony_ci			precision highp int;
1482e5c31af7Sopenharmony_ci
1483e5c31af7Sopenharmony_ci			${DECLARATIONS}
1484e5c31af7Sopenharmony_ci
1485e5c31af7Sopenharmony_ci			void main()
1486e5c31af7Sopenharmony_ci			{
1487e5c31af7Sopenharmony_ci				${SETUP}
1488e5c31af7Sopenharmony_ci				out0 = in0.w;
1489e5c31af7Sopenharmony_ci				${OUTPUT}
1490e5c31af7Sopenharmony_ci			}
1491e5c31af7Sopenharmony_ci		""
1492e5c31af7Sopenharmony_ci	end
1493e5c31af7Sopenharmony_ci
1494e5c31af7Sopenharmony_ci	case mediump_vec4_wx
1495e5c31af7Sopenharmony_ci		version 310 es
1496e5c31af7Sopenharmony_ci		values
1497e5c31af7Sopenharmony_ci		{
1498e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1499e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.0) | vec2(1.75, 1.0) | vec2(9.0, -0.5) | vec2(24.0, -32.0) | vec2(0.25, -0.75) ];
1500e5c31af7Sopenharmony_ci		}
1501e5c31af7Sopenharmony_ci
1502e5c31af7Sopenharmony_ci		both ""
1503e5c31af7Sopenharmony_ci			#version 310 es
1504e5c31af7Sopenharmony_ci			precision highp float;
1505e5c31af7Sopenharmony_ci			precision highp int;
1506e5c31af7Sopenharmony_ci
1507e5c31af7Sopenharmony_ci			${DECLARATIONS}
1508e5c31af7Sopenharmony_ci
1509e5c31af7Sopenharmony_ci			void main()
1510e5c31af7Sopenharmony_ci			{
1511e5c31af7Sopenharmony_ci				${SETUP}
1512e5c31af7Sopenharmony_ci				out0 = in0.wx;
1513e5c31af7Sopenharmony_ci				${OUTPUT}
1514e5c31af7Sopenharmony_ci			}
1515e5c31af7Sopenharmony_ci		""
1516e5c31af7Sopenharmony_ci	end
1517e5c31af7Sopenharmony_ci
1518e5c31af7Sopenharmony_ci	case mediump_vec4_wz
1519e5c31af7Sopenharmony_ci		version 310 es
1520e5c31af7Sopenharmony_ci		values
1521e5c31af7Sopenharmony_ci		{
1522e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1523e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.75) | vec2(1.75, 1.125) | vec2(9.0, -4.875) | vec2(24.0, -51.0) | vec2(0.25, 0.0526315789474) ];
1524e5c31af7Sopenharmony_ci		}
1525e5c31af7Sopenharmony_ci
1526e5c31af7Sopenharmony_ci		both ""
1527e5c31af7Sopenharmony_ci			#version 310 es
1528e5c31af7Sopenharmony_ci			precision highp float;
1529e5c31af7Sopenharmony_ci			precision highp int;
1530e5c31af7Sopenharmony_ci
1531e5c31af7Sopenharmony_ci			${DECLARATIONS}
1532e5c31af7Sopenharmony_ci
1533e5c31af7Sopenharmony_ci			void main()
1534e5c31af7Sopenharmony_ci			{
1535e5c31af7Sopenharmony_ci				${SETUP}
1536e5c31af7Sopenharmony_ci				out0 = in0.wz;
1537e5c31af7Sopenharmony_ci				${OUTPUT}
1538e5c31af7Sopenharmony_ci			}
1539e5c31af7Sopenharmony_ci		""
1540e5c31af7Sopenharmony_ci	end
1541e5c31af7Sopenharmony_ci
1542e5c31af7Sopenharmony_ci	case mediump_vec4_www
1543e5c31af7Sopenharmony_ci		version 310 es
1544e5c31af7Sopenharmony_ci		values
1545e5c31af7Sopenharmony_ci		{
1546e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1547e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.825, 0.825) | vec3(1.75, 1.75, 1.75) | vec3(9.0, 9.0, 9.0) | vec3(24.0, 24.0, 24.0) | vec3(0.25, 0.25, 0.25) ];
1548e5c31af7Sopenharmony_ci		}
1549e5c31af7Sopenharmony_ci
1550e5c31af7Sopenharmony_ci		both ""
1551e5c31af7Sopenharmony_ci			#version 310 es
1552e5c31af7Sopenharmony_ci			precision highp float;
1553e5c31af7Sopenharmony_ci			precision highp int;
1554e5c31af7Sopenharmony_ci
1555e5c31af7Sopenharmony_ci			${DECLARATIONS}
1556e5c31af7Sopenharmony_ci
1557e5c31af7Sopenharmony_ci			void main()
1558e5c31af7Sopenharmony_ci			{
1559e5c31af7Sopenharmony_ci				${SETUP}
1560e5c31af7Sopenharmony_ci				out0 = in0.www;
1561e5c31af7Sopenharmony_ci				${OUTPUT}
1562e5c31af7Sopenharmony_ci			}
1563e5c31af7Sopenharmony_ci		""
1564e5c31af7Sopenharmony_ci	end
1565e5c31af7Sopenharmony_ci
1566e5c31af7Sopenharmony_ci	case mediump_vec4_yyw
1567e5c31af7Sopenharmony_ci		version 310 es
1568e5c31af7Sopenharmony_ci		values
1569e5c31af7Sopenharmony_ci		{
1570e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1571e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.5, 0.825) | vec3(1.25, 1.25, 1.75) | vec3(-2.25, -2.25, 9.0) | vec3(64.0, 64.0, 24.0) | vec3(-0.0322580645161, -0.0322580645161, 0.25) ];
1572e5c31af7Sopenharmony_ci		}
1573e5c31af7Sopenharmony_ci
1574e5c31af7Sopenharmony_ci		both ""
1575e5c31af7Sopenharmony_ci			#version 310 es
1576e5c31af7Sopenharmony_ci			precision highp float;
1577e5c31af7Sopenharmony_ci			precision highp int;
1578e5c31af7Sopenharmony_ci
1579e5c31af7Sopenharmony_ci			${DECLARATIONS}
1580e5c31af7Sopenharmony_ci
1581e5c31af7Sopenharmony_ci			void main()
1582e5c31af7Sopenharmony_ci			{
1583e5c31af7Sopenharmony_ci				${SETUP}
1584e5c31af7Sopenharmony_ci				out0 = in0.yyw;
1585e5c31af7Sopenharmony_ci				${OUTPUT}
1586e5c31af7Sopenharmony_ci			}
1587e5c31af7Sopenharmony_ci		""
1588e5c31af7Sopenharmony_ci	end
1589e5c31af7Sopenharmony_ci
1590e5c31af7Sopenharmony_ci	case mediump_vec4_wzy
1591e5c31af7Sopenharmony_ci		version 310 es
1592e5c31af7Sopenharmony_ci		values
1593e5c31af7Sopenharmony_ci		{
1594e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1595e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.75, 0.5) | vec3(1.75, 1.125, 1.25) | vec3(9.0, -4.875, -2.25) | vec3(24.0, -51.0, 64.0) | vec3(0.25, 0.0526315789474, -0.0322580645161) ];
1596e5c31af7Sopenharmony_ci		}
1597e5c31af7Sopenharmony_ci
1598e5c31af7Sopenharmony_ci		both ""
1599e5c31af7Sopenharmony_ci			#version 310 es
1600e5c31af7Sopenharmony_ci			precision highp float;
1601e5c31af7Sopenharmony_ci			precision highp int;
1602e5c31af7Sopenharmony_ci
1603e5c31af7Sopenharmony_ci			${DECLARATIONS}
1604e5c31af7Sopenharmony_ci
1605e5c31af7Sopenharmony_ci			void main()
1606e5c31af7Sopenharmony_ci			{
1607e5c31af7Sopenharmony_ci				${SETUP}
1608e5c31af7Sopenharmony_ci				out0 = in0.wzy;
1609e5c31af7Sopenharmony_ci				${OUTPUT}
1610e5c31af7Sopenharmony_ci			}
1611e5c31af7Sopenharmony_ci		""
1612e5c31af7Sopenharmony_ci	end
1613e5c31af7Sopenharmony_ci
1614e5c31af7Sopenharmony_ci	case mediump_vec4_xyzw
1615e5c31af7Sopenharmony_ci		version 310 es
1616e5c31af7Sopenharmony_ci		values
1617e5c31af7Sopenharmony_ci		{
1618e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1619e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1620e5c31af7Sopenharmony_ci		}
1621e5c31af7Sopenharmony_ci
1622e5c31af7Sopenharmony_ci		both ""
1623e5c31af7Sopenharmony_ci			#version 310 es
1624e5c31af7Sopenharmony_ci			precision highp float;
1625e5c31af7Sopenharmony_ci			precision highp int;
1626e5c31af7Sopenharmony_ci
1627e5c31af7Sopenharmony_ci			${DECLARATIONS}
1628e5c31af7Sopenharmony_ci
1629e5c31af7Sopenharmony_ci			void main()
1630e5c31af7Sopenharmony_ci			{
1631e5c31af7Sopenharmony_ci				${SETUP}
1632e5c31af7Sopenharmony_ci				out0 = in0.xyzw;
1633e5c31af7Sopenharmony_ci				${OUTPUT}
1634e5c31af7Sopenharmony_ci			}
1635e5c31af7Sopenharmony_ci		""
1636e5c31af7Sopenharmony_ci	end
1637e5c31af7Sopenharmony_ci
1638e5c31af7Sopenharmony_ci	case mediump_vec4_wzyx
1639e5c31af7Sopenharmony_ci		version 310 es
1640e5c31af7Sopenharmony_ci		values
1641e5c31af7Sopenharmony_ci		{
1642e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1643e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.5, 0.0) | vec4(1.75, 1.125, 1.25, 1.0) | vec4(9.0, -4.875, -2.25, -0.5) | vec4(24.0, -51.0, 64.0, -32.0) | vec4(0.25, 0.0526315789474, -0.0322580645161, -0.75) ];
1644e5c31af7Sopenharmony_ci		}
1645e5c31af7Sopenharmony_ci
1646e5c31af7Sopenharmony_ci		both ""
1647e5c31af7Sopenharmony_ci			#version 310 es
1648e5c31af7Sopenharmony_ci			precision highp float;
1649e5c31af7Sopenharmony_ci			precision highp int;
1650e5c31af7Sopenharmony_ci
1651e5c31af7Sopenharmony_ci			${DECLARATIONS}
1652e5c31af7Sopenharmony_ci
1653e5c31af7Sopenharmony_ci			void main()
1654e5c31af7Sopenharmony_ci			{
1655e5c31af7Sopenharmony_ci				${SETUP}
1656e5c31af7Sopenharmony_ci				out0 = in0.wzyx;
1657e5c31af7Sopenharmony_ci				${OUTPUT}
1658e5c31af7Sopenharmony_ci			}
1659e5c31af7Sopenharmony_ci		""
1660e5c31af7Sopenharmony_ci	end
1661e5c31af7Sopenharmony_ci
1662e5c31af7Sopenharmony_ci	case mediump_vec4_xxxx
1663e5c31af7Sopenharmony_ci		version 310 es
1664e5c31af7Sopenharmony_ci		values
1665e5c31af7Sopenharmony_ci		{
1666e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1667e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(-0.5, -0.5, -0.5, -0.5) | vec4(-32.0, -32.0, -32.0, -32.0) | vec4(-0.75, -0.75, -0.75, -0.75) ];
1668e5c31af7Sopenharmony_ci		}
1669e5c31af7Sopenharmony_ci
1670e5c31af7Sopenharmony_ci		both ""
1671e5c31af7Sopenharmony_ci			#version 310 es
1672e5c31af7Sopenharmony_ci			precision highp float;
1673e5c31af7Sopenharmony_ci			precision highp int;
1674e5c31af7Sopenharmony_ci
1675e5c31af7Sopenharmony_ci			${DECLARATIONS}
1676e5c31af7Sopenharmony_ci
1677e5c31af7Sopenharmony_ci			void main()
1678e5c31af7Sopenharmony_ci			{
1679e5c31af7Sopenharmony_ci				${SETUP}
1680e5c31af7Sopenharmony_ci				out0 = in0.xxxx;
1681e5c31af7Sopenharmony_ci				${OUTPUT}
1682e5c31af7Sopenharmony_ci			}
1683e5c31af7Sopenharmony_ci		""
1684e5c31af7Sopenharmony_ci	end
1685e5c31af7Sopenharmony_ci
1686e5c31af7Sopenharmony_ci	case mediump_vec4_yyyy
1687e5c31af7Sopenharmony_ci		version 310 es
1688e5c31af7Sopenharmony_ci		values
1689e5c31af7Sopenharmony_ci		{
1690e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1691e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
1692e5c31af7Sopenharmony_ci		}
1693e5c31af7Sopenharmony_ci
1694e5c31af7Sopenharmony_ci		both ""
1695e5c31af7Sopenharmony_ci			#version 310 es
1696e5c31af7Sopenharmony_ci			precision highp float;
1697e5c31af7Sopenharmony_ci			precision highp int;
1698e5c31af7Sopenharmony_ci
1699e5c31af7Sopenharmony_ci			${DECLARATIONS}
1700e5c31af7Sopenharmony_ci
1701e5c31af7Sopenharmony_ci			void main()
1702e5c31af7Sopenharmony_ci			{
1703e5c31af7Sopenharmony_ci				${SETUP}
1704e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
1705e5c31af7Sopenharmony_ci				${OUTPUT}
1706e5c31af7Sopenharmony_ci			}
1707e5c31af7Sopenharmony_ci		""
1708e5c31af7Sopenharmony_ci	end
1709e5c31af7Sopenharmony_ci
1710e5c31af7Sopenharmony_ci	case mediump_vec4_wwww
1711e5c31af7Sopenharmony_ci		version 310 es
1712e5c31af7Sopenharmony_ci		values
1713e5c31af7Sopenharmony_ci		{
1714e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1715e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.825) | vec4(1.75, 1.75, 1.75, 1.75) | vec4(9.0, 9.0, 9.0, 9.0) | vec4(24.0, 24.0, 24.0, 24.0) | vec4(0.25, 0.25, 0.25, 0.25) ];
1716e5c31af7Sopenharmony_ci		}
1717e5c31af7Sopenharmony_ci
1718e5c31af7Sopenharmony_ci		both ""
1719e5c31af7Sopenharmony_ci			#version 310 es
1720e5c31af7Sopenharmony_ci			precision highp float;
1721e5c31af7Sopenharmony_ci			precision highp int;
1722e5c31af7Sopenharmony_ci
1723e5c31af7Sopenharmony_ci			${DECLARATIONS}
1724e5c31af7Sopenharmony_ci
1725e5c31af7Sopenharmony_ci			void main()
1726e5c31af7Sopenharmony_ci			{
1727e5c31af7Sopenharmony_ci				${SETUP}
1728e5c31af7Sopenharmony_ci				out0 = in0.wwww;
1729e5c31af7Sopenharmony_ci				${OUTPUT}
1730e5c31af7Sopenharmony_ci			}
1731e5c31af7Sopenharmony_ci		""
1732e5c31af7Sopenharmony_ci	end
1733e5c31af7Sopenharmony_ci
1734e5c31af7Sopenharmony_ci	case mediump_vec4_wzzw
1735e5c31af7Sopenharmony_ci		version 310 es
1736e5c31af7Sopenharmony_ci		values
1737e5c31af7Sopenharmony_ci		{
1738e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1739e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.75, 0.825) | vec4(1.75, 1.125, 1.125, 1.75) | vec4(9.0, -4.875, -4.875, 9.0) | vec4(24.0, -51.0, -51.0, 24.0) | vec4(0.25, 0.0526315789474, 0.0526315789474, 0.25) ];
1740e5c31af7Sopenharmony_ci		}
1741e5c31af7Sopenharmony_ci
1742e5c31af7Sopenharmony_ci		both ""
1743e5c31af7Sopenharmony_ci			#version 310 es
1744e5c31af7Sopenharmony_ci			precision highp float;
1745e5c31af7Sopenharmony_ci			precision highp int;
1746e5c31af7Sopenharmony_ci
1747e5c31af7Sopenharmony_ci			${DECLARATIONS}
1748e5c31af7Sopenharmony_ci
1749e5c31af7Sopenharmony_ci			void main()
1750e5c31af7Sopenharmony_ci			{
1751e5c31af7Sopenharmony_ci				${SETUP}
1752e5c31af7Sopenharmony_ci				out0 = in0.wzzw;
1753e5c31af7Sopenharmony_ci				${OUTPUT}
1754e5c31af7Sopenharmony_ci			}
1755e5c31af7Sopenharmony_ci		""
1756e5c31af7Sopenharmony_ci	end
1757e5c31af7Sopenharmony_ci
1758e5c31af7Sopenharmony_ci	case mediump_vec4_wwwy
1759e5c31af7Sopenharmony_ci		version 310 es
1760e5c31af7Sopenharmony_ci		values
1761e5c31af7Sopenharmony_ci		{
1762e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1763e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.5) | vec4(1.75, 1.75, 1.75, 1.25) | vec4(9.0, 9.0, 9.0, -2.25) | vec4(24.0, 24.0, 24.0, 64.0) | vec4(0.25, 0.25, 0.25, -0.0322580645161) ];
1764e5c31af7Sopenharmony_ci		}
1765e5c31af7Sopenharmony_ci
1766e5c31af7Sopenharmony_ci		both ""
1767e5c31af7Sopenharmony_ci			#version 310 es
1768e5c31af7Sopenharmony_ci			precision highp float;
1769e5c31af7Sopenharmony_ci			precision highp int;
1770e5c31af7Sopenharmony_ci
1771e5c31af7Sopenharmony_ci			${DECLARATIONS}
1772e5c31af7Sopenharmony_ci
1773e5c31af7Sopenharmony_ci			void main()
1774e5c31af7Sopenharmony_ci			{
1775e5c31af7Sopenharmony_ci				${SETUP}
1776e5c31af7Sopenharmony_ci				out0 = in0.wwwy;
1777e5c31af7Sopenharmony_ci				${OUTPUT}
1778e5c31af7Sopenharmony_ci			}
1779e5c31af7Sopenharmony_ci		""
1780e5c31af7Sopenharmony_ci	end
1781e5c31af7Sopenharmony_ci
1782e5c31af7Sopenharmony_ci	case mediump_vec4_xyxx
1783e5c31af7Sopenharmony_ci		version 310 es
1784e5c31af7Sopenharmony_ci		values
1785e5c31af7Sopenharmony_ci		{
1786e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1787e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
1788e5c31af7Sopenharmony_ci		}
1789e5c31af7Sopenharmony_ci
1790e5c31af7Sopenharmony_ci		both ""
1791e5c31af7Sopenharmony_ci			#version 310 es
1792e5c31af7Sopenharmony_ci			precision highp float;
1793e5c31af7Sopenharmony_ci			precision highp int;
1794e5c31af7Sopenharmony_ci
1795e5c31af7Sopenharmony_ci			${DECLARATIONS}
1796e5c31af7Sopenharmony_ci
1797e5c31af7Sopenharmony_ci			void main()
1798e5c31af7Sopenharmony_ci			{
1799e5c31af7Sopenharmony_ci				${SETUP}
1800e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
1801e5c31af7Sopenharmony_ci				${OUTPUT}
1802e5c31af7Sopenharmony_ci			}
1803e5c31af7Sopenharmony_ci		""
1804e5c31af7Sopenharmony_ci	end
1805e5c31af7Sopenharmony_ci
1806e5c31af7Sopenharmony_ci	case mediump_vec4_zzwz
1807e5c31af7Sopenharmony_ci		version 310 es
1808e5c31af7Sopenharmony_ci		values
1809e5c31af7Sopenharmony_ci		{
1810e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1811e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.825, 0.75) | vec4(1.125, 1.125, 1.75, 1.125) | vec4(-4.875, -4.875, 9.0, -4.875) | vec4(-51.0, -51.0, 24.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.25, 0.0526315789474) ];
1812e5c31af7Sopenharmony_ci		}
1813e5c31af7Sopenharmony_ci
1814e5c31af7Sopenharmony_ci		both ""
1815e5c31af7Sopenharmony_ci			#version 310 es
1816e5c31af7Sopenharmony_ci			precision highp float;
1817e5c31af7Sopenharmony_ci			precision highp int;
1818e5c31af7Sopenharmony_ci
1819e5c31af7Sopenharmony_ci			${DECLARATIONS}
1820e5c31af7Sopenharmony_ci
1821e5c31af7Sopenharmony_ci			void main()
1822e5c31af7Sopenharmony_ci			{
1823e5c31af7Sopenharmony_ci				${SETUP}
1824e5c31af7Sopenharmony_ci				out0 = in0.zzwz;
1825e5c31af7Sopenharmony_ci				${OUTPUT}
1826e5c31af7Sopenharmony_ci			}
1827e5c31af7Sopenharmony_ci		""
1828e5c31af7Sopenharmony_ci	end
1829e5c31af7Sopenharmony_ci
1830e5c31af7Sopenharmony_ci	case mediump_vec4_s
1831e5c31af7Sopenharmony_ci		version 310 es
1832e5c31af7Sopenharmony_ci		values
1833e5c31af7Sopenharmony_ci		{
1834e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1835e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
1836e5c31af7Sopenharmony_ci		}
1837e5c31af7Sopenharmony_ci
1838e5c31af7Sopenharmony_ci		both ""
1839e5c31af7Sopenharmony_ci			#version 310 es
1840e5c31af7Sopenharmony_ci			precision highp float;
1841e5c31af7Sopenharmony_ci			precision highp int;
1842e5c31af7Sopenharmony_ci
1843e5c31af7Sopenharmony_ci			${DECLARATIONS}
1844e5c31af7Sopenharmony_ci
1845e5c31af7Sopenharmony_ci			void main()
1846e5c31af7Sopenharmony_ci			{
1847e5c31af7Sopenharmony_ci				${SETUP}
1848e5c31af7Sopenharmony_ci				out0 = in0.s;
1849e5c31af7Sopenharmony_ci				${OUTPUT}
1850e5c31af7Sopenharmony_ci			}
1851e5c31af7Sopenharmony_ci		""
1852e5c31af7Sopenharmony_ci	end
1853e5c31af7Sopenharmony_ci
1854e5c31af7Sopenharmony_ci	case mediump_vec4_q
1855e5c31af7Sopenharmony_ci		version 310 es
1856e5c31af7Sopenharmony_ci		values
1857e5c31af7Sopenharmony_ci		{
1858e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1859e5c31af7Sopenharmony_ci			output float out0 = [ 0.825 | 1.75 | 9.0 | 24.0 | 0.25 ];
1860e5c31af7Sopenharmony_ci		}
1861e5c31af7Sopenharmony_ci
1862e5c31af7Sopenharmony_ci		both ""
1863e5c31af7Sopenharmony_ci			#version 310 es
1864e5c31af7Sopenharmony_ci			precision highp float;
1865e5c31af7Sopenharmony_ci			precision highp int;
1866e5c31af7Sopenharmony_ci
1867e5c31af7Sopenharmony_ci			${DECLARATIONS}
1868e5c31af7Sopenharmony_ci
1869e5c31af7Sopenharmony_ci			void main()
1870e5c31af7Sopenharmony_ci			{
1871e5c31af7Sopenharmony_ci				${SETUP}
1872e5c31af7Sopenharmony_ci				out0 = in0.q;
1873e5c31af7Sopenharmony_ci				${OUTPUT}
1874e5c31af7Sopenharmony_ci			}
1875e5c31af7Sopenharmony_ci		""
1876e5c31af7Sopenharmony_ci	end
1877e5c31af7Sopenharmony_ci
1878e5c31af7Sopenharmony_ci	case mediump_vec4_qs
1879e5c31af7Sopenharmony_ci		version 310 es
1880e5c31af7Sopenharmony_ci		values
1881e5c31af7Sopenharmony_ci		{
1882e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1883e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.0) | vec2(1.75, 1.0) | vec2(9.0, -0.5) | vec2(24.0, -32.0) | vec2(0.25, -0.75) ];
1884e5c31af7Sopenharmony_ci		}
1885e5c31af7Sopenharmony_ci
1886e5c31af7Sopenharmony_ci		both ""
1887e5c31af7Sopenharmony_ci			#version 310 es
1888e5c31af7Sopenharmony_ci			precision highp float;
1889e5c31af7Sopenharmony_ci			precision highp int;
1890e5c31af7Sopenharmony_ci
1891e5c31af7Sopenharmony_ci			${DECLARATIONS}
1892e5c31af7Sopenharmony_ci
1893e5c31af7Sopenharmony_ci			void main()
1894e5c31af7Sopenharmony_ci			{
1895e5c31af7Sopenharmony_ci				${SETUP}
1896e5c31af7Sopenharmony_ci				out0 = in0.qs;
1897e5c31af7Sopenharmony_ci				${OUTPUT}
1898e5c31af7Sopenharmony_ci			}
1899e5c31af7Sopenharmony_ci		""
1900e5c31af7Sopenharmony_ci	end
1901e5c31af7Sopenharmony_ci
1902e5c31af7Sopenharmony_ci	case mediump_vec4_qp
1903e5c31af7Sopenharmony_ci		version 310 es
1904e5c31af7Sopenharmony_ci		values
1905e5c31af7Sopenharmony_ci		{
1906e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1907e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.75) | vec2(1.75, 1.125) | vec2(9.0, -4.875) | vec2(24.0, -51.0) | vec2(0.25, 0.0526315789474) ];
1908e5c31af7Sopenharmony_ci		}
1909e5c31af7Sopenharmony_ci
1910e5c31af7Sopenharmony_ci		both ""
1911e5c31af7Sopenharmony_ci			#version 310 es
1912e5c31af7Sopenharmony_ci			precision highp float;
1913e5c31af7Sopenharmony_ci			precision highp int;
1914e5c31af7Sopenharmony_ci
1915e5c31af7Sopenharmony_ci			${DECLARATIONS}
1916e5c31af7Sopenharmony_ci
1917e5c31af7Sopenharmony_ci			void main()
1918e5c31af7Sopenharmony_ci			{
1919e5c31af7Sopenharmony_ci				${SETUP}
1920e5c31af7Sopenharmony_ci				out0 = in0.qp;
1921e5c31af7Sopenharmony_ci				${OUTPUT}
1922e5c31af7Sopenharmony_ci			}
1923e5c31af7Sopenharmony_ci		""
1924e5c31af7Sopenharmony_ci	end
1925e5c31af7Sopenharmony_ci
1926e5c31af7Sopenharmony_ci	case mediump_vec4_qqq
1927e5c31af7Sopenharmony_ci		version 310 es
1928e5c31af7Sopenharmony_ci		values
1929e5c31af7Sopenharmony_ci		{
1930e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1931e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.825, 0.825) | vec3(1.75, 1.75, 1.75) | vec3(9.0, 9.0, 9.0) | vec3(24.0, 24.0, 24.0) | vec3(0.25, 0.25, 0.25) ];
1932e5c31af7Sopenharmony_ci		}
1933e5c31af7Sopenharmony_ci
1934e5c31af7Sopenharmony_ci		both ""
1935e5c31af7Sopenharmony_ci			#version 310 es
1936e5c31af7Sopenharmony_ci			precision highp float;
1937e5c31af7Sopenharmony_ci			precision highp int;
1938e5c31af7Sopenharmony_ci
1939e5c31af7Sopenharmony_ci			${DECLARATIONS}
1940e5c31af7Sopenharmony_ci
1941e5c31af7Sopenharmony_ci			void main()
1942e5c31af7Sopenharmony_ci			{
1943e5c31af7Sopenharmony_ci				${SETUP}
1944e5c31af7Sopenharmony_ci				out0 = in0.qqq;
1945e5c31af7Sopenharmony_ci				${OUTPUT}
1946e5c31af7Sopenharmony_ci			}
1947e5c31af7Sopenharmony_ci		""
1948e5c31af7Sopenharmony_ci	end
1949e5c31af7Sopenharmony_ci
1950e5c31af7Sopenharmony_ci	case mediump_vec4_ttq
1951e5c31af7Sopenharmony_ci		version 310 es
1952e5c31af7Sopenharmony_ci		values
1953e5c31af7Sopenharmony_ci		{
1954e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1955e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.5, 0.825) | vec3(1.25, 1.25, 1.75) | vec3(-2.25, -2.25, 9.0) | vec3(64.0, 64.0, 24.0) | vec3(-0.0322580645161, -0.0322580645161, 0.25) ];
1956e5c31af7Sopenharmony_ci		}
1957e5c31af7Sopenharmony_ci
1958e5c31af7Sopenharmony_ci		both ""
1959e5c31af7Sopenharmony_ci			#version 310 es
1960e5c31af7Sopenharmony_ci			precision highp float;
1961e5c31af7Sopenharmony_ci			precision highp int;
1962e5c31af7Sopenharmony_ci
1963e5c31af7Sopenharmony_ci			${DECLARATIONS}
1964e5c31af7Sopenharmony_ci
1965e5c31af7Sopenharmony_ci			void main()
1966e5c31af7Sopenharmony_ci			{
1967e5c31af7Sopenharmony_ci				${SETUP}
1968e5c31af7Sopenharmony_ci				out0 = in0.ttq;
1969e5c31af7Sopenharmony_ci				${OUTPUT}
1970e5c31af7Sopenharmony_ci			}
1971e5c31af7Sopenharmony_ci		""
1972e5c31af7Sopenharmony_ci	end
1973e5c31af7Sopenharmony_ci
1974e5c31af7Sopenharmony_ci	case mediump_vec4_qpt
1975e5c31af7Sopenharmony_ci		version 310 es
1976e5c31af7Sopenharmony_ci		values
1977e5c31af7Sopenharmony_ci		{
1978e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1979e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.75, 0.5) | vec3(1.75, 1.125, 1.25) | vec3(9.0, -4.875, -2.25) | vec3(24.0, -51.0, 64.0) | vec3(0.25, 0.0526315789474, -0.0322580645161) ];
1980e5c31af7Sopenharmony_ci		}
1981e5c31af7Sopenharmony_ci
1982e5c31af7Sopenharmony_ci		both ""
1983e5c31af7Sopenharmony_ci			#version 310 es
1984e5c31af7Sopenharmony_ci			precision highp float;
1985e5c31af7Sopenharmony_ci			precision highp int;
1986e5c31af7Sopenharmony_ci
1987e5c31af7Sopenharmony_ci			${DECLARATIONS}
1988e5c31af7Sopenharmony_ci
1989e5c31af7Sopenharmony_ci			void main()
1990e5c31af7Sopenharmony_ci			{
1991e5c31af7Sopenharmony_ci				${SETUP}
1992e5c31af7Sopenharmony_ci				out0 = in0.qpt;
1993e5c31af7Sopenharmony_ci				${OUTPUT}
1994e5c31af7Sopenharmony_ci			}
1995e5c31af7Sopenharmony_ci		""
1996e5c31af7Sopenharmony_ci	end
1997e5c31af7Sopenharmony_ci
1998e5c31af7Sopenharmony_ci	case mediump_vec4_stpq
1999e5c31af7Sopenharmony_ci		version 310 es
2000e5c31af7Sopenharmony_ci		values
2001e5c31af7Sopenharmony_ci		{
2002e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2003e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2004e5c31af7Sopenharmony_ci		}
2005e5c31af7Sopenharmony_ci
2006e5c31af7Sopenharmony_ci		both ""
2007e5c31af7Sopenharmony_ci			#version 310 es
2008e5c31af7Sopenharmony_ci			precision highp float;
2009e5c31af7Sopenharmony_ci			precision highp int;
2010e5c31af7Sopenharmony_ci
2011e5c31af7Sopenharmony_ci			${DECLARATIONS}
2012e5c31af7Sopenharmony_ci
2013e5c31af7Sopenharmony_ci			void main()
2014e5c31af7Sopenharmony_ci			{
2015e5c31af7Sopenharmony_ci				${SETUP}
2016e5c31af7Sopenharmony_ci				out0 = in0.stpq;
2017e5c31af7Sopenharmony_ci				${OUTPUT}
2018e5c31af7Sopenharmony_ci			}
2019e5c31af7Sopenharmony_ci		""
2020e5c31af7Sopenharmony_ci	end
2021e5c31af7Sopenharmony_ci
2022e5c31af7Sopenharmony_ci	case mediump_vec4_qpts
2023e5c31af7Sopenharmony_ci		version 310 es
2024e5c31af7Sopenharmony_ci		values
2025e5c31af7Sopenharmony_ci		{
2026e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2027e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.5, 0.0) | vec4(1.75, 1.125, 1.25, 1.0) | vec4(9.0, -4.875, -2.25, -0.5) | vec4(24.0, -51.0, 64.0, -32.0) | vec4(0.25, 0.0526315789474, -0.0322580645161, -0.75) ];
2028e5c31af7Sopenharmony_ci		}
2029e5c31af7Sopenharmony_ci
2030e5c31af7Sopenharmony_ci		both ""
2031e5c31af7Sopenharmony_ci			#version 310 es
2032e5c31af7Sopenharmony_ci			precision highp float;
2033e5c31af7Sopenharmony_ci			precision highp int;
2034e5c31af7Sopenharmony_ci
2035e5c31af7Sopenharmony_ci			${DECLARATIONS}
2036e5c31af7Sopenharmony_ci
2037e5c31af7Sopenharmony_ci			void main()
2038e5c31af7Sopenharmony_ci			{
2039e5c31af7Sopenharmony_ci				${SETUP}
2040e5c31af7Sopenharmony_ci				out0 = in0.qpts;
2041e5c31af7Sopenharmony_ci				${OUTPUT}
2042e5c31af7Sopenharmony_ci			}
2043e5c31af7Sopenharmony_ci		""
2044e5c31af7Sopenharmony_ci	end
2045e5c31af7Sopenharmony_ci
2046e5c31af7Sopenharmony_ci	case mediump_vec4_ssss
2047e5c31af7Sopenharmony_ci		version 310 es
2048e5c31af7Sopenharmony_ci		values
2049e5c31af7Sopenharmony_ci		{
2050e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2051e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(-0.5, -0.5, -0.5, -0.5) | vec4(-32.0, -32.0, -32.0, -32.0) | vec4(-0.75, -0.75, -0.75, -0.75) ];
2052e5c31af7Sopenharmony_ci		}
2053e5c31af7Sopenharmony_ci
2054e5c31af7Sopenharmony_ci		both ""
2055e5c31af7Sopenharmony_ci			#version 310 es
2056e5c31af7Sopenharmony_ci			precision highp float;
2057e5c31af7Sopenharmony_ci			precision highp int;
2058e5c31af7Sopenharmony_ci
2059e5c31af7Sopenharmony_ci			${DECLARATIONS}
2060e5c31af7Sopenharmony_ci
2061e5c31af7Sopenharmony_ci			void main()
2062e5c31af7Sopenharmony_ci			{
2063e5c31af7Sopenharmony_ci				${SETUP}
2064e5c31af7Sopenharmony_ci				out0 = in0.ssss;
2065e5c31af7Sopenharmony_ci				${OUTPUT}
2066e5c31af7Sopenharmony_ci			}
2067e5c31af7Sopenharmony_ci		""
2068e5c31af7Sopenharmony_ci	end
2069e5c31af7Sopenharmony_ci
2070e5c31af7Sopenharmony_ci	case mediump_vec4_tttt
2071e5c31af7Sopenharmony_ci		version 310 es
2072e5c31af7Sopenharmony_ci		values
2073e5c31af7Sopenharmony_ci		{
2074e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2075e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
2076e5c31af7Sopenharmony_ci		}
2077e5c31af7Sopenharmony_ci
2078e5c31af7Sopenharmony_ci		both ""
2079e5c31af7Sopenharmony_ci			#version 310 es
2080e5c31af7Sopenharmony_ci			precision highp float;
2081e5c31af7Sopenharmony_ci			precision highp int;
2082e5c31af7Sopenharmony_ci
2083e5c31af7Sopenharmony_ci			${DECLARATIONS}
2084e5c31af7Sopenharmony_ci
2085e5c31af7Sopenharmony_ci			void main()
2086e5c31af7Sopenharmony_ci			{
2087e5c31af7Sopenharmony_ci				${SETUP}
2088e5c31af7Sopenharmony_ci				out0 = in0.tttt;
2089e5c31af7Sopenharmony_ci				${OUTPUT}
2090e5c31af7Sopenharmony_ci			}
2091e5c31af7Sopenharmony_ci		""
2092e5c31af7Sopenharmony_ci	end
2093e5c31af7Sopenharmony_ci
2094e5c31af7Sopenharmony_ci	case mediump_vec4_qqqq
2095e5c31af7Sopenharmony_ci		version 310 es
2096e5c31af7Sopenharmony_ci		values
2097e5c31af7Sopenharmony_ci		{
2098e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2099e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.825) | vec4(1.75, 1.75, 1.75, 1.75) | vec4(9.0, 9.0, 9.0, 9.0) | vec4(24.0, 24.0, 24.0, 24.0) | vec4(0.25, 0.25, 0.25, 0.25) ];
2100e5c31af7Sopenharmony_ci		}
2101e5c31af7Sopenharmony_ci
2102e5c31af7Sopenharmony_ci		both ""
2103e5c31af7Sopenharmony_ci			#version 310 es
2104e5c31af7Sopenharmony_ci			precision highp float;
2105e5c31af7Sopenharmony_ci			precision highp int;
2106e5c31af7Sopenharmony_ci
2107e5c31af7Sopenharmony_ci			${DECLARATIONS}
2108e5c31af7Sopenharmony_ci
2109e5c31af7Sopenharmony_ci			void main()
2110e5c31af7Sopenharmony_ci			{
2111e5c31af7Sopenharmony_ci				${SETUP}
2112e5c31af7Sopenharmony_ci				out0 = in0.qqqq;
2113e5c31af7Sopenharmony_ci				${OUTPUT}
2114e5c31af7Sopenharmony_ci			}
2115e5c31af7Sopenharmony_ci		""
2116e5c31af7Sopenharmony_ci	end
2117e5c31af7Sopenharmony_ci
2118e5c31af7Sopenharmony_ci	case mediump_vec4_qppq
2119e5c31af7Sopenharmony_ci		version 310 es
2120e5c31af7Sopenharmony_ci		values
2121e5c31af7Sopenharmony_ci		{
2122e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2123e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.75, 0.825) | vec4(1.75, 1.125, 1.125, 1.75) | vec4(9.0, -4.875, -4.875, 9.0) | vec4(24.0, -51.0, -51.0, 24.0) | vec4(0.25, 0.0526315789474, 0.0526315789474, 0.25) ];
2124e5c31af7Sopenharmony_ci		}
2125e5c31af7Sopenharmony_ci
2126e5c31af7Sopenharmony_ci		both ""
2127e5c31af7Sopenharmony_ci			#version 310 es
2128e5c31af7Sopenharmony_ci			precision highp float;
2129e5c31af7Sopenharmony_ci			precision highp int;
2130e5c31af7Sopenharmony_ci
2131e5c31af7Sopenharmony_ci			${DECLARATIONS}
2132e5c31af7Sopenharmony_ci
2133e5c31af7Sopenharmony_ci			void main()
2134e5c31af7Sopenharmony_ci			{
2135e5c31af7Sopenharmony_ci				${SETUP}
2136e5c31af7Sopenharmony_ci				out0 = in0.qppq;
2137e5c31af7Sopenharmony_ci				${OUTPUT}
2138e5c31af7Sopenharmony_ci			}
2139e5c31af7Sopenharmony_ci		""
2140e5c31af7Sopenharmony_ci	end
2141e5c31af7Sopenharmony_ci
2142e5c31af7Sopenharmony_ci	case mediump_vec4_qqqt
2143e5c31af7Sopenharmony_ci		version 310 es
2144e5c31af7Sopenharmony_ci		values
2145e5c31af7Sopenharmony_ci		{
2146e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2147e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.5) | vec4(1.75, 1.75, 1.75, 1.25) | vec4(9.0, 9.0, 9.0, -2.25) | vec4(24.0, 24.0, 24.0, 64.0) | vec4(0.25, 0.25, 0.25, -0.0322580645161) ];
2148e5c31af7Sopenharmony_ci		}
2149e5c31af7Sopenharmony_ci
2150e5c31af7Sopenharmony_ci		both ""
2151e5c31af7Sopenharmony_ci			#version 310 es
2152e5c31af7Sopenharmony_ci			precision highp float;
2153e5c31af7Sopenharmony_ci			precision highp int;
2154e5c31af7Sopenharmony_ci
2155e5c31af7Sopenharmony_ci			${DECLARATIONS}
2156e5c31af7Sopenharmony_ci
2157e5c31af7Sopenharmony_ci			void main()
2158e5c31af7Sopenharmony_ci			{
2159e5c31af7Sopenharmony_ci				${SETUP}
2160e5c31af7Sopenharmony_ci				out0 = in0.qqqt;
2161e5c31af7Sopenharmony_ci				${OUTPUT}
2162e5c31af7Sopenharmony_ci			}
2163e5c31af7Sopenharmony_ci		""
2164e5c31af7Sopenharmony_ci	end
2165e5c31af7Sopenharmony_ci
2166e5c31af7Sopenharmony_ci	case mediump_vec4_stss
2167e5c31af7Sopenharmony_ci		version 310 es
2168e5c31af7Sopenharmony_ci		values
2169e5c31af7Sopenharmony_ci		{
2170e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2171e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
2172e5c31af7Sopenharmony_ci		}
2173e5c31af7Sopenharmony_ci
2174e5c31af7Sopenharmony_ci		both ""
2175e5c31af7Sopenharmony_ci			#version 310 es
2176e5c31af7Sopenharmony_ci			precision highp float;
2177e5c31af7Sopenharmony_ci			precision highp int;
2178e5c31af7Sopenharmony_ci
2179e5c31af7Sopenharmony_ci			${DECLARATIONS}
2180e5c31af7Sopenharmony_ci
2181e5c31af7Sopenharmony_ci			void main()
2182e5c31af7Sopenharmony_ci			{
2183e5c31af7Sopenharmony_ci				${SETUP}
2184e5c31af7Sopenharmony_ci				out0 = in0.stss;
2185e5c31af7Sopenharmony_ci				${OUTPUT}
2186e5c31af7Sopenharmony_ci			}
2187e5c31af7Sopenharmony_ci		""
2188e5c31af7Sopenharmony_ci	end
2189e5c31af7Sopenharmony_ci
2190e5c31af7Sopenharmony_ci	case mediump_vec4_ppqp
2191e5c31af7Sopenharmony_ci		version 310 es
2192e5c31af7Sopenharmony_ci		values
2193e5c31af7Sopenharmony_ci		{
2194e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2195e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.825, 0.75) | vec4(1.125, 1.125, 1.75, 1.125) | vec4(-4.875, -4.875, 9.0, -4.875) | vec4(-51.0, -51.0, 24.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.25, 0.0526315789474) ];
2196e5c31af7Sopenharmony_ci		}
2197e5c31af7Sopenharmony_ci
2198e5c31af7Sopenharmony_ci		both ""
2199e5c31af7Sopenharmony_ci			#version 310 es
2200e5c31af7Sopenharmony_ci			precision highp float;
2201e5c31af7Sopenharmony_ci			precision highp int;
2202e5c31af7Sopenharmony_ci
2203e5c31af7Sopenharmony_ci			${DECLARATIONS}
2204e5c31af7Sopenharmony_ci
2205e5c31af7Sopenharmony_ci			void main()
2206e5c31af7Sopenharmony_ci			{
2207e5c31af7Sopenharmony_ci				${SETUP}
2208e5c31af7Sopenharmony_ci				out0 = in0.ppqp;
2209e5c31af7Sopenharmony_ci				${OUTPUT}
2210e5c31af7Sopenharmony_ci			}
2211e5c31af7Sopenharmony_ci		""
2212e5c31af7Sopenharmony_ci	end
2213e5c31af7Sopenharmony_ci
2214e5c31af7Sopenharmony_ci	case mediump_vec4_r
2215e5c31af7Sopenharmony_ci		version 310 es
2216e5c31af7Sopenharmony_ci		values
2217e5c31af7Sopenharmony_ci		{
2218e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2219e5c31af7Sopenharmony_ci			output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
2220e5c31af7Sopenharmony_ci		}
2221e5c31af7Sopenharmony_ci
2222e5c31af7Sopenharmony_ci		both ""
2223e5c31af7Sopenharmony_ci			#version 310 es
2224e5c31af7Sopenharmony_ci			precision highp float;
2225e5c31af7Sopenharmony_ci			precision highp int;
2226e5c31af7Sopenharmony_ci
2227e5c31af7Sopenharmony_ci			${DECLARATIONS}
2228e5c31af7Sopenharmony_ci
2229e5c31af7Sopenharmony_ci			void main()
2230e5c31af7Sopenharmony_ci			{
2231e5c31af7Sopenharmony_ci				${SETUP}
2232e5c31af7Sopenharmony_ci				out0 = in0.r;
2233e5c31af7Sopenharmony_ci				${OUTPUT}
2234e5c31af7Sopenharmony_ci			}
2235e5c31af7Sopenharmony_ci		""
2236e5c31af7Sopenharmony_ci	end
2237e5c31af7Sopenharmony_ci
2238e5c31af7Sopenharmony_ci	case mediump_vec4_a
2239e5c31af7Sopenharmony_ci		version 310 es
2240e5c31af7Sopenharmony_ci		values
2241e5c31af7Sopenharmony_ci		{
2242e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2243e5c31af7Sopenharmony_ci			output float out0 = [ 0.825 | 1.75 | 9.0 | 24.0 | 0.25 ];
2244e5c31af7Sopenharmony_ci		}
2245e5c31af7Sopenharmony_ci
2246e5c31af7Sopenharmony_ci		both ""
2247e5c31af7Sopenharmony_ci			#version 310 es
2248e5c31af7Sopenharmony_ci			precision highp float;
2249e5c31af7Sopenharmony_ci			precision highp int;
2250e5c31af7Sopenharmony_ci
2251e5c31af7Sopenharmony_ci			${DECLARATIONS}
2252e5c31af7Sopenharmony_ci
2253e5c31af7Sopenharmony_ci			void main()
2254e5c31af7Sopenharmony_ci			{
2255e5c31af7Sopenharmony_ci				${SETUP}
2256e5c31af7Sopenharmony_ci				out0 = in0.a;
2257e5c31af7Sopenharmony_ci				${OUTPUT}
2258e5c31af7Sopenharmony_ci			}
2259e5c31af7Sopenharmony_ci		""
2260e5c31af7Sopenharmony_ci	end
2261e5c31af7Sopenharmony_ci
2262e5c31af7Sopenharmony_ci	case mediump_vec4_ar
2263e5c31af7Sopenharmony_ci		version 310 es
2264e5c31af7Sopenharmony_ci		values
2265e5c31af7Sopenharmony_ci		{
2266e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2267e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.0) | vec2(1.75, 1.0) | vec2(9.0, -0.5) | vec2(24.0, -32.0) | vec2(0.25, -0.75) ];
2268e5c31af7Sopenharmony_ci		}
2269e5c31af7Sopenharmony_ci
2270e5c31af7Sopenharmony_ci		both ""
2271e5c31af7Sopenharmony_ci			#version 310 es
2272e5c31af7Sopenharmony_ci			precision highp float;
2273e5c31af7Sopenharmony_ci			precision highp int;
2274e5c31af7Sopenharmony_ci
2275e5c31af7Sopenharmony_ci			${DECLARATIONS}
2276e5c31af7Sopenharmony_ci
2277e5c31af7Sopenharmony_ci			void main()
2278e5c31af7Sopenharmony_ci			{
2279e5c31af7Sopenharmony_ci				${SETUP}
2280e5c31af7Sopenharmony_ci				out0 = in0.ar;
2281e5c31af7Sopenharmony_ci				${OUTPUT}
2282e5c31af7Sopenharmony_ci			}
2283e5c31af7Sopenharmony_ci		""
2284e5c31af7Sopenharmony_ci	end
2285e5c31af7Sopenharmony_ci
2286e5c31af7Sopenharmony_ci	case mediump_vec4_ab
2287e5c31af7Sopenharmony_ci		version 310 es
2288e5c31af7Sopenharmony_ci		values
2289e5c31af7Sopenharmony_ci		{
2290e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2291e5c31af7Sopenharmony_ci			output vec2 out0 = [ vec2(0.825, 0.75) | vec2(1.75, 1.125) | vec2(9.0, -4.875) | vec2(24.0, -51.0) | vec2(0.25, 0.0526315789474) ];
2292e5c31af7Sopenharmony_ci		}
2293e5c31af7Sopenharmony_ci
2294e5c31af7Sopenharmony_ci		both ""
2295e5c31af7Sopenharmony_ci			#version 310 es
2296e5c31af7Sopenharmony_ci			precision highp float;
2297e5c31af7Sopenharmony_ci			precision highp int;
2298e5c31af7Sopenharmony_ci
2299e5c31af7Sopenharmony_ci			${DECLARATIONS}
2300e5c31af7Sopenharmony_ci
2301e5c31af7Sopenharmony_ci			void main()
2302e5c31af7Sopenharmony_ci			{
2303e5c31af7Sopenharmony_ci				${SETUP}
2304e5c31af7Sopenharmony_ci				out0 = in0.ab;
2305e5c31af7Sopenharmony_ci				${OUTPUT}
2306e5c31af7Sopenharmony_ci			}
2307e5c31af7Sopenharmony_ci		""
2308e5c31af7Sopenharmony_ci	end
2309e5c31af7Sopenharmony_ci
2310e5c31af7Sopenharmony_ci	case mediump_vec4_aaa
2311e5c31af7Sopenharmony_ci		version 310 es
2312e5c31af7Sopenharmony_ci		values
2313e5c31af7Sopenharmony_ci		{
2314e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2315e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.825, 0.825) | vec3(1.75, 1.75, 1.75) | vec3(9.0, 9.0, 9.0) | vec3(24.0, 24.0, 24.0) | vec3(0.25, 0.25, 0.25) ];
2316e5c31af7Sopenharmony_ci		}
2317e5c31af7Sopenharmony_ci
2318e5c31af7Sopenharmony_ci		both ""
2319e5c31af7Sopenharmony_ci			#version 310 es
2320e5c31af7Sopenharmony_ci			precision highp float;
2321e5c31af7Sopenharmony_ci			precision highp int;
2322e5c31af7Sopenharmony_ci
2323e5c31af7Sopenharmony_ci			${DECLARATIONS}
2324e5c31af7Sopenharmony_ci
2325e5c31af7Sopenharmony_ci			void main()
2326e5c31af7Sopenharmony_ci			{
2327e5c31af7Sopenharmony_ci				${SETUP}
2328e5c31af7Sopenharmony_ci				out0 = in0.aaa;
2329e5c31af7Sopenharmony_ci				${OUTPUT}
2330e5c31af7Sopenharmony_ci			}
2331e5c31af7Sopenharmony_ci		""
2332e5c31af7Sopenharmony_ci	end
2333e5c31af7Sopenharmony_ci
2334e5c31af7Sopenharmony_ci	case mediump_vec4_gga
2335e5c31af7Sopenharmony_ci		version 310 es
2336e5c31af7Sopenharmony_ci		values
2337e5c31af7Sopenharmony_ci		{
2338e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2339e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.5, 0.5, 0.825) | vec3(1.25, 1.25, 1.75) | vec3(-2.25, -2.25, 9.0) | vec3(64.0, 64.0, 24.0) | vec3(-0.0322580645161, -0.0322580645161, 0.25) ];
2340e5c31af7Sopenharmony_ci		}
2341e5c31af7Sopenharmony_ci
2342e5c31af7Sopenharmony_ci		both ""
2343e5c31af7Sopenharmony_ci			#version 310 es
2344e5c31af7Sopenharmony_ci			precision highp float;
2345e5c31af7Sopenharmony_ci			precision highp int;
2346e5c31af7Sopenharmony_ci
2347e5c31af7Sopenharmony_ci			${DECLARATIONS}
2348e5c31af7Sopenharmony_ci
2349e5c31af7Sopenharmony_ci			void main()
2350e5c31af7Sopenharmony_ci			{
2351e5c31af7Sopenharmony_ci				${SETUP}
2352e5c31af7Sopenharmony_ci				out0 = in0.gga;
2353e5c31af7Sopenharmony_ci				${OUTPUT}
2354e5c31af7Sopenharmony_ci			}
2355e5c31af7Sopenharmony_ci		""
2356e5c31af7Sopenharmony_ci	end
2357e5c31af7Sopenharmony_ci
2358e5c31af7Sopenharmony_ci	case mediump_vec4_abg
2359e5c31af7Sopenharmony_ci		version 310 es
2360e5c31af7Sopenharmony_ci		values
2361e5c31af7Sopenharmony_ci		{
2362e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2363e5c31af7Sopenharmony_ci			output vec3 out0 = [ vec3(0.825, 0.75, 0.5) | vec3(1.75, 1.125, 1.25) | vec3(9.0, -4.875, -2.25) | vec3(24.0, -51.0, 64.0) | vec3(0.25, 0.0526315789474, -0.0322580645161) ];
2364e5c31af7Sopenharmony_ci		}
2365e5c31af7Sopenharmony_ci
2366e5c31af7Sopenharmony_ci		both ""
2367e5c31af7Sopenharmony_ci			#version 310 es
2368e5c31af7Sopenharmony_ci			precision highp float;
2369e5c31af7Sopenharmony_ci			precision highp int;
2370e5c31af7Sopenharmony_ci
2371e5c31af7Sopenharmony_ci			${DECLARATIONS}
2372e5c31af7Sopenharmony_ci
2373e5c31af7Sopenharmony_ci			void main()
2374e5c31af7Sopenharmony_ci			{
2375e5c31af7Sopenharmony_ci				${SETUP}
2376e5c31af7Sopenharmony_ci				out0 = in0.abg;
2377e5c31af7Sopenharmony_ci				${OUTPUT}
2378e5c31af7Sopenharmony_ci			}
2379e5c31af7Sopenharmony_ci		""
2380e5c31af7Sopenharmony_ci	end
2381e5c31af7Sopenharmony_ci
2382e5c31af7Sopenharmony_ci	case mediump_vec4_rgba
2383e5c31af7Sopenharmony_ci		version 310 es
2384e5c31af7Sopenharmony_ci		values
2385e5c31af7Sopenharmony_ci		{
2386e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2387e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2388e5c31af7Sopenharmony_ci		}
2389e5c31af7Sopenharmony_ci
2390e5c31af7Sopenharmony_ci		both ""
2391e5c31af7Sopenharmony_ci			#version 310 es
2392e5c31af7Sopenharmony_ci			precision highp float;
2393e5c31af7Sopenharmony_ci			precision highp int;
2394e5c31af7Sopenharmony_ci
2395e5c31af7Sopenharmony_ci			${DECLARATIONS}
2396e5c31af7Sopenharmony_ci
2397e5c31af7Sopenharmony_ci			void main()
2398e5c31af7Sopenharmony_ci			{
2399e5c31af7Sopenharmony_ci				${SETUP}
2400e5c31af7Sopenharmony_ci				out0 = in0.rgba;
2401e5c31af7Sopenharmony_ci				${OUTPUT}
2402e5c31af7Sopenharmony_ci			}
2403e5c31af7Sopenharmony_ci		""
2404e5c31af7Sopenharmony_ci	end
2405e5c31af7Sopenharmony_ci
2406e5c31af7Sopenharmony_ci	case mediump_vec4_abgr
2407e5c31af7Sopenharmony_ci		version 310 es
2408e5c31af7Sopenharmony_ci		values
2409e5c31af7Sopenharmony_ci		{
2410e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2411e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.5, 0.0) | vec4(1.75, 1.125, 1.25, 1.0) | vec4(9.0, -4.875, -2.25, -0.5) | vec4(24.0, -51.0, 64.0, -32.0) | vec4(0.25, 0.0526315789474, -0.0322580645161, -0.75) ];
2412e5c31af7Sopenharmony_ci		}
2413e5c31af7Sopenharmony_ci
2414e5c31af7Sopenharmony_ci		both ""
2415e5c31af7Sopenharmony_ci			#version 310 es
2416e5c31af7Sopenharmony_ci			precision highp float;
2417e5c31af7Sopenharmony_ci			precision highp int;
2418e5c31af7Sopenharmony_ci
2419e5c31af7Sopenharmony_ci			${DECLARATIONS}
2420e5c31af7Sopenharmony_ci
2421e5c31af7Sopenharmony_ci			void main()
2422e5c31af7Sopenharmony_ci			{
2423e5c31af7Sopenharmony_ci				${SETUP}
2424e5c31af7Sopenharmony_ci				out0 = in0.abgr;
2425e5c31af7Sopenharmony_ci				${OUTPUT}
2426e5c31af7Sopenharmony_ci			}
2427e5c31af7Sopenharmony_ci		""
2428e5c31af7Sopenharmony_ci	end
2429e5c31af7Sopenharmony_ci
2430e5c31af7Sopenharmony_ci	case mediump_vec4_rrrr
2431e5c31af7Sopenharmony_ci		version 310 es
2432e5c31af7Sopenharmony_ci		values
2433e5c31af7Sopenharmony_ci		{
2434e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2435e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(-0.5, -0.5, -0.5, -0.5) | vec4(-32.0, -32.0, -32.0, -32.0) | vec4(-0.75, -0.75, -0.75, -0.75) ];
2436e5c31af7Sopenharmony_ci		}
2437e5c31af7Sopenharmony_ci
2438e5c31af7Sopenharmony_ci		both ""
2439e5c31af7Sopenharmony_ci			#version 310 es
2440e5c31af7Sopenharmony_ci			precision highp float;
2441e5c31af7Sopenharmony_ci			precision highp int;
2442e5c31af7Sopenharmony_ci
2443e5c31af7Sopenharmony_ci			${DECLARATIONS}
2444e5c31af7Sopenharmony_ci
2445e5c31af7Sopenharmony_ci			void main()
2446e5c31af7Sopenharmony_ci			{
2447e5c31af7Sopenharmony_ci				${SETUP}
2448e5c31af7Sopenharmony_ci				out0 = in0.rrrr;
2449e5c31af7Sopenharmony_ci				${OUTPUT}
2450e5c31af7Sopenharmony_ci			}
2451e5c31af7Sopenharmony_ci		""
2452e5c31af7Sopenharmony_ci	end
2453e5c31af7Sopenharmony_ci
2454e5c31af7Sopenharmony_ci	case mediump_vec4_gggg
2455e5c31af7Sopenharmony_ci		version 310 es
2456e5c31af7Sopenharmony_ci		values
2457e5c31af7Sopenharmony_ci		{
2458e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2459e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.5, 0.5, 0.5, 0.5) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(-2.25, -2.25, -2.25, -2.25) | vec4(64.0, 64.0, 64.0, 64.0) | vec4(-0.0322580645161, -0.0322580645161, -0.0322580645161, -0.0322580645161) ];
2460e5c31af7Sopenharmony_ci		}
2461e5c31af7Sopenharmony_ci
2462e5c31af7Sopenharmony_ci		both ""
2463e5c31af7Sopenharmony_ci			#version 310 es
2464e5c31af7Sopenharmony_ci			precision highp float;
2465e5c31af7Sopenharmony_ci			precision highp int;
2466e5c31af7Sopenharmony_ci
2467e5c31af7Sopenharmony_ci			${DECLARATIONS}
2468e5c31af7Sopenharmony_ci
2469e5c31af7Sopenharmony_ci			void main()
2470e5c31af7Sopenharmony_ci			{
2471e5c31af7Sopenharmony_ci				${SETUP}
2472e5c31af7Sopenharmony_ci				out0 = in0.gggg;
2473e5c31af7Sopenharmony_ci				${OUTPUT}
2474e5c31af7Sopenharmony_ci			}
2475e5c31af7Sopenharmony_ci		""
2476e5c31af7Sopenharmony_ci	end
2477e5c31af7Sopenharmony_ci
2478e5c31af7Sopenharmony_ci	case mediump_vec4_aaaa
2479e5c31af7Sopenharmony_ci		version 310 es
2480e5c31af7Sopenharmony_ci		values
2481e5c31af7Sopenharmony_ci		{
2482e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2483e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.825) | vec4(1.75, 1.75, 1.75, 1.75) | vec4(9.0, 9.0, 9.0, 9.0) | vec4(24.0, 24.0, 24.0, 24.0) | vec4(0.25, 0.25, 0.25, 0.25) ];
2484e5c31af7Sopenharmony_ci		}
2485e5c31af7Sopenharmony_ci
2486e5c31af7Sopenharmony_ci		both ""
2487e5c31af7Sopenharmony_ci			#version 310 es
2488e5c31af7Sopenharmony_ci			precision highp float;
2489e5c31af7Sopenharmony_ci			precision highp int;
2490e5c31af7Sopenharmony_ci
2491e5c31af7Sopenharmony_ci			${DECLARATIONS}
2492e5c31af7Sopenharmony_ci
2493e5c31af7Sopenharmony_ci			void main()
2494e5c31af7Sopenharmony_ci			{
2495e5c31af7Sopenharmony_ci				${SETUP}
2496e5c31af7Sopenharmony_ci				out0 = in0.aaaa;
2497e5c31af7Sopenharmony_ci				${OUTPUT}
2498e5c31af7Sopenharmony_ci			}
2499e5c31af7Sopenharmony_ci		""
2500e5c31af7Sopenharmony_ci	end
2501e5c31af7Sopenharmony_ci
2502e5c31af7Sopenharmony_ci	case mediump_vec4_abba
2503e5c31af7Sopenharmony_ci		version 310 es
2504e5c31af7Sopenharmony_ci		values
2505e5c31af7Sopenharmony_ci		{
2506e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2507e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.75, 0.75, 0.825) | vec4(1.75, 1.125, 1.125, 1.75) | vec4(9.0, -4.875, -4.875, 9.0) | vec4(24.0, -51.0, -51.0, 24.0) | vec4(0.25, 0.0526315789474, 0.0526315789474, 0.25) ];
2508e5c31af7Sopenharmony_ci		}
2509e5c31af7Sopenharmony_ci
2510e5c31af7Sopenharmony_ci		both ""
2511e5c31af7Sopenharmony_ci			#version 310 es
2512e5c31af7Sopenharmony_ci			precision highp float;
2513e5c31af7Sopenharmony_ci			precision highp int;
2514e5c31af7Sopenharmony_ci
2515e5c31af7Sopenharmony_ci			${DECLARATIONS}
2516e5c31af7Sopenharmony_ci
2517e5c31af7Sopenharmony_ci			void main()
2518e5c31af7Sopenharmony_ci			{
2519e5c31af7Sopenharmony_ci				${SETUP}
2520e5c31af7Sopenharmony_ci				out0 = in0.abba;
2521e5c31af7Sopenharmony_ci				${OUTPUT}
2522e5c31af7Sopenharmony_ci			}
2523e5c31af7Sopenharmony_ci		""
2524e5c31af7Sopenharmony_ci	end
2525e5c31af7Sopenharmony_ci
2526e5c31af7Sopenharmony_ci	case mediump_vec4_aaag
2527e5c31af7Sopenharmony_ci		version 310 es
2528e5c31af7Sopenharmony_ci		values
2529e5c31af7Sopenharmony_ci		{
2530e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2531e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.825, 0.825, 0.825, 0.5) | vec4(1.75, 1.75, 1.75, 1.25) | vec4(9.0, 9.0, 9.0, -2.25) | vec4(24.0, 24.0, 24.0, 64.0) | vec4(0.25, 0.25, 0.25, -0.0322580645161) ];
2532e5c31af7Sopenharmony_ci		}
2533e5c31af7Sopenharmony_ci
2534e5c31af7Sopenharmony_ci		both ""
2535e5c31af7Sopenharmony_ci			#version 310 es
2536e5c31af7Sopenharmony_ci			precision highp float;
2537e5c31af7Sopenharmony_ci			precision highp int;
2538e5c31af7Sopenharmony_ci
2539e5c31af7Sopenharmony_ci			${DECLARATIONS}
2540e5c31af7Sopenharmony_ci
2541e5c31af7Sopenharmony_ci			void main()
2542e5c31af7Sopenharmony_ci			{
2543e5c31af7Sopenharmony_ci				${SETUP}
2544e5c31af7Sopenharmony_ci				out0 = in0.aaag;
2545e5c31af7Sopenharmony_ci				${OUTPUT}
2546e5c31af7Sopenharmony_ci			}
2547e5c31af7Sopenharmony_ci		""
2548e5c31af7Sopenharmony_ci	end
2549e5c31af7Sopenharmony_ci
2550e5c31af7Sopenharmony_ci	case mediump_vec4_rgrr
2551e5c31af7Sopenharmony_ci		version 310 es
2552e5c31af7Sopenharmony_ci		values
2553e5c31af7Sopenharmony_ci		{
2554e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2555e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.0, 0.5, 0.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.5, -2.25, -0.5, -0.5) | vec4(-32.0, 64.0, -32.0, -32.0) | vec4(-0.75, -0.0322580645161, -0.75, -0.75) ];
2556e5c31af7Sopenharmony_ci		}
2557e5c31af7Sopenharmony_ci
2558e5c31af7Sopenharmony_ci		both ""
2559e5c31af7Sopenharmony_ci			#version 310 es
2560e5c31af7Sopenharmony_ci			precision highp float;
2561e5c31af7Sopenharmony_ci			precision highp int;
2562e5c31af7Sopenharmony_ci
2563e5c31af7Sopenharmony_ci			${DECLARATIONS}
2564e5c31af7Sopenharmony_ci
2565e5c31af7Sopenharmony_ci			void main()
2566e5c31af7Sopenharmony_ci			{
2567e5c31af7Sopenharmony_ci				${SETUP}
2568e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
2569e5c31af7Sopenharmony_ci				${OUTPUT}
2570e5c31af7Sopenharmony_ci			}
2571e5c31af7Sopenharmony_ci		""
2572e5c31af7Sopenharmony_ci	end
2573e5c31af7Sopenharmony_ci
2574e5c31af7Sopenharmony_ci	case mediump_vec4_bbab
2575e5c31af7Sopenharmony_ci		version 310 es
2576e5c31af7Sopenharmony_ci		values
2577e5c31af7Sopenharmony_ci		{
2578e5c31af7Sopenharmony_ci			input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2579e5c31af7Sopenharmony_ci			output vec4 out0 = [ vec4(0.75, 0.75, 0.825, 0.75) | vec4(1.125, 1.125, 1.75, 1.125) | vec4(-4.875, -4.875, 9.0, -4.875) | vec4(-51.0, -51.0, 24.0, -51.0) | vec4(0.0526315789474, 0.0526315789474, 0.25, 0.0526315789474) ];
2580e5c31af7Sopenharmony_ci		}
2581e5c31af7Sopenharmony_ci
2582e5c31af7Sopenharmony_ci		both ""
2583e5c31af7Sopenharmony_ci			#version 310 es
2584e5c31af7Sopenharmony_ci			precision highp float;
2585e5c31af7Sopenharmony_ci			precision highp int;
2586e5c31af7Sopenharmony_ci
2587e5c31af7Sopenharmony_ci			${DECLARATIONS}
2588e5c31af7Sopenharmony_ci
2589e5c31af7Sopenharmony_ci			void main()
2590e5c31af7Sopenharmony_ci			{
2591e5c31af7Sopenharmony_ci				${SETUP}
2592e5c31af7Sopenharmony_ci				out0 = in0.bbab;
2593e5c31af7Sopenharmony_ci				${OUTPUT}
2594e5c31af7Sopenharmony_ci			}
2595e5c31af7Sopenharmony_ci		""
2596e5c31af7Sopenharmony_ci	end
2597e5c31af7Sopenharmony_ci
2598e5c31af7Sopenharmony_ci	case mediump_ivec2_x
2599e5c31af7Sopenharmony_ci		version 310 es
2600e5c31af7Sopenharmony_ci		values
2601e5c31af7Sopenharmony_ci		{
2602e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2603e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
2604e5c31af7Sopenharmony_ci		}
2605e5c31af7Sopenharmony_ci
2606e5c31af7Sopenharmony_ci		both ""
2607e5c31af7Sopenharmony_ci			#version 310 es
2608e5c31af7Sopenharmony_ci			precision highp float;
2609e5c31af7Sopenharmony_ci			precision highp int;
2610e5c31af7Sopenharmony_ci
2611e5c31af7Sopenharmony_ci			${DECLARATIONS}
2612e5c31af7Sopenharmony_ci
2613e5c31af7Sopenharmony_ci			void main()
2614e5c31af7Sopenharmony_ci			{
2615e5c31af7Sopenharmony_ci				${SETUP}
2616e5c31af7Sopenharmony_ci				out0 = in0.x;
2617e5c31af7Sopenharmony_ci				${OUTPUT}
2618e5c31af7Sopenharmony_ci			}
2619e5c31af7Sopenharmony_ci		""
2620e5c31af7Sopenharmony_ci	end
2621e5c31af7Sopenharmony_ci
2622e5c31af7Sopenharmony_ci	case mediump_ivec2_xx
2623e5c31af7Sopenharmony_ci		version 310 es
2624e5c31af7Sopenharmony_ci		values
2625e5c31af7Sopenharmony_ci		{
2626e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2627e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, 0) | ivec2(-32, -32) | ivec2(0, 0) ];
2628e5c31af7Sopenharmony_ci		}
2629e5c31af7Sopenharmony_ci
2630e5c31af7Sopenharmony_ci		both ""
2631e5c31af7Sopenharmony_ci			#version 310 es
2632e5c31af7Sopenharmony_ci			precision highp float;
2633e5c31af7Sopenharmony_ci			precision highp int;
2634e5c31af7Sopenharmony_ci
2635e5c31af7Sopenharmony_ci			${DECLARATIONS}
2636e5c31af7Sopenharmony_ci
2637e5c31af7Sopenharmony_ci			void main()
2638e5c31af7Sopenharmony_ci			{
2639e5c31af7Sopenharmony_ci				${SETUP}
2640e5c31af7Sopenharmony_ci				out0 = in0.xx;
2641e5c31af7Sopenharmony_ci				${OUTPUT}
2642e5c31af7Sopenharmony_ci			}
2643e5c31af7Sopenharmony_ci		""
2644e5c31af7Sopenharmony_ci	end
2645e5c31af7Sopenharmony_ci
2646e5c31af7Sopenharmony_ci	case mediump_ivec2_xy
2647e5c31af7Sopenharmony_ci		version 310 es
2648e5c31af7Sopenharmony_ci		values
2649e5c31af7Sopenharmony_ci		{
2650e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2651e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2652e5c31af7Sopenharmony_ci		}
2653e5c31af7Sopenharmony_ci
2654e5c31af7Sopenharmony_ci		both ""
2655e5c31af7Sopenharmony_ci			#version 310 es
2656e5c31af7Sopenharmony_ci			precision highp float;
2657e5c31af7Sopenharmony_ci			precision highp int;
2658e5c31af7Sopenharmony_ci
2659e5c31af7Sopenharmony_ci			${DECLARATIONS}
2660e5c31af7Sopenharmony_ci
2661e5c31af7Sopenharmony_ci			void main()
2662e5c31af7Sopenharmony_ci			{
2663e5c31af7Sopenharmony_ci				${SETUP}
2664e5c31af7Sopenharmony_ci				out0 = in0.xy;
2665e5c31af7Sopenharmony_ci				${OUTPUT}
2666e5c31af7Sopenharmony_ci			}
2667e5c31af7Sopenharmony_ci		""
2668e5c31af7Sopenharmony_ci	end
2669e5c31af7Sopenharmony_ci
2670e5c31af7Sopenharmony_ci	case mediump_ivec2_yx
2671e5c31af7Sopenharmony_ci		version 310 es
2672e5c31af7Sopenharmony_ci		values
2673e5c31af7Sopenharmony_ci		{
2674e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2675e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-2, 0) | ivec2(64, -32) | ivec2(0, 0) ];
2676e5c31af7Sopenharmony_ci		}
2677e5c31af7Sopenharmony_ci
2678e5c31af7Sopenharmony_ci		both ""
2679e5c31af7Sopenharmony_ci			#version 310 es
2680e5c31af7Sopenharmony_ci			precision highp float;
2681e5c31af7Sopenharmony_ci			precision highp int;
2682e5c31af7Sopenharmony_ci
2683e5c31af7Sopenharmony_ci			${DECLARATIONS}
2684e5c31af7Sopenharmony_ci
2685e5c31af7Sopenharmony_ci			void main()
2686e5c31af7Sopenharmony_ci			{
2687e5c31af7Sopenharmony_ci				${SETUP}
2688e5c31af7Sopenharmony_ci				out0 = in0.yx;
2689e5c31af7Sopenharmony_ci				${OUTPUT}
2690e5c31af7Sopenharmony_ci			}
2691e5c31af7Sopenharmony_ci		""
2692e5c31af7Sopenharmony_ci	end
2693e5c31af7Sopenharmony_ci
2694e5c31af7Sopenharmony_ci	case mediump_ivec2_yxy
2695e5c31af7Sopenharmony_ci		version 310 es
2696e5c31af7Sopenharmony_ci		values
2697e5c31af7Sopenharmony_ci		{
2698e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2699e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
2700e5c31af7Sopenharmony_ci		}
2701e5c31af7Sopenharmony_ci
2702e5c31af7Sopenharmony_ci		both ""
2703e5c31af7Sopenharmony_ci			#version 310 es
2704e5c31af7Sopenharmony_ci			precision highp float;
2705e5c31af7Sopenharmony_ci			precision highp int;
2706e5c31af7Sopenharmony_ci
2707e5c31af7Sopenharmony_ci			${DECLARATIONS}
2708e5c31af7Sopenharmony_ci
2709e5c31af7Sopenharmony_ci			void main()
2710e5c31af7Sopenharmony_ci			{
2711e5c31af7Sopenharmony_ci				${SETUP}
2712e5c31af7Sopenharmony_ci				out0 = in0.yxy;
2713e5c31af7Sopenharmony_ci				${OUTPUT}
2714e5c31af7Sopenharmony_ci			}
2715e5c31af7Sopenharmony_ci		""
2716e5c31af7Sopenharmony_ci	end
2717e5c31af7Sopenharmony_ci
2718e5c31af7Sopenharmony_ci	case mediump_ivec2_xyxx
2719e5c31af7Sopenharmony_ci		version 310 es
2720e5c31af7Sopenharmony_ci		values
2721e5c31af7Sopenharmony_ci		{
2722e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2723e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
2724e5c31af7Sopenharmony_ci		}
2725e5c31af7Sopenharmony_ci
2726e5c31af7Sopenharmony_ci		both ""
2727e5c31af7Sopenharmony_ci			#version 310 es
2728e5c31af7Sopenharmony_ci			precision highp float;
2729e5c31af7Sopenharmony_ci			precision highp int;
2730e5c31af7Sopenharmony_ci
2731e5c31af7Sopenharmony_ci			${DECLARATIONS}
2732e5c31af7Sopenharmony_ci
2733e5c31af7Sopenharmony_ci			void main()
2734e5c31af7Sopenharmony_ci			{
2735e5c31af7Sopenharmony_ci				${SETUP}
2736e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
2737e5c31af7Sopenharmony_ci				${OUTPUT}
2738e5c31af7Sopenharmony_ci			}
2739e5c31af7Sopenharmony_ci		""
2740e5c31af7Sopenharmony_ci	end
2741e5c31af7Sopenharmony_ci
2742e5c31af7Sopenharmony_ci	case mediump_ivec2_yyyy
2743e5c31af7Sopenharmony_ci		version 310 es
2744e5c31af7Sopenharmony_ci		values
2745e5c31af7Sopenharmony_ci		{
2746e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2747e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
2748e5c31af7Sopenharmony_ci		}
2749e5c31af7Sopenharmony_ci
2750e5c31af7Sopenharmony_ci		both ""
2751e5c31af7Sopenharmony_ci			#version 310 es
2752e5c31af7Sopenharmony_ci			precision highp float;
2753e5c31af7Sopenharmony_ci			precision highp int;
2754e5c31af7Sopenharmony_ci
2755e5c31af7Sopenharmony_ci			${DECLARATIONS}
2756e5c31af7Sopenharmony_ci
2757e5c31af7Sopenharmony_ci			void main()
2758e5c31af7Sopenharmony_ci			{
2759e5c31af7Sopenharmony_ci				${SETUP}
2760e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
2761e5c31af7Sopenharmony_ci				${OUTPUT}
2762e5c31af7Sopenharmony_ci			}
2763e5c31af7Sopenharmony_ci		""
2764e5c31af7Sopenharmony_ci	end
2765e5c31af7Sopenharmony_ci
2766e5c31af7Sopenharmony_ci	case mediump_ivec2_s
2767e5c31af7Sopenharmony_ci		version 310 es
2768e5c31af7Sopenharmony_ci		values
2769e5c31af7Sopenharmony_ci		{
2770e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2771e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
2772e5c31af7Sopenharmony_ci		}
2773e5c31af7Sopenharmony_ci
2774e5c31af7Sopenharmony_ci		both ""
2775e5c31af7Sopenharmony_ci			#version 310 es
2776e5c31af7Sopenharmony_ci			precision highp float;
2777e5c31af7Sopenharmony_ci			precision highp int;
2778e5c31af7Sopenharmony_ci
2779e5c31af7Sopenharmony_ci			${DECLARATIONS}
2780e5c31af7Sopenharmony_ci
2781e5c31af7Sopenharmony_ci			void main()
2782e5c31af7Sopenharmony_ci			{
2783e5c31af7Sopenharmony_ci				${SETUP}
2784e5c31af7Sopenharmony_ci				out0 = in0.s;
2785e5c31af7Sopenharmony_ci				${OUTPUT}
2786e5c31af7Sopenharmony_ci			}
2787e5c31af7Sopenharmony_ci		""
2788e5c31af7Sopenharmony_ci	end
2789e5c31af7Sopenharmony_ci
2790e5c31af7Sopenharmony_ci	case mediump_ivec2_ss
2791e5c31af7Sopenharmony_ci		version 310 es
2792e5c31af7Sopenharmony_ci		values
2793e5c31af7Sopenharmony_ci		{
2794e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2795e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, 0) | ivec2(-32, -32) | ivec2(0, 0) ];
2796e5c31af7Sopenharmony_ci		}
2797e5c31af7Sopenharmony_ci
2798e5c31af7Sopenharmony_ci		both ""
2799e5c31af7Sopenharmony_ci			#version 310 es
2800e5c31af7Sopenharmony_ci			precision highp float;
2801e5c31af7Sopenharmony_ci			precision highp int;
2802e5c31af7Sopenharmony_ci
2803e5c31af7Sopenharmony_ci			${DECLARATIONS}
2804e5c31af7Sopenharmony_ci
2805e5c31af7Sopenharmony_ci			void main()
2806e5c31af7Sopenharmony_ci			{
2807e5c31af7Sopenharmony_ci				${SETUP}
2808e5c31af7Sopenharmony_ci				out0 = in0.ss;
2809e5c31af7Sopenharmony_ci				${OUTPUT}
2810e5c31af7Sopenharmony_ci			}
2811e5c31af7Sopenharmony_ci		""
2812e5c31af7Sopenharmony_ci	end
2813e5c31af7Sopenharmony_ci
2814e5c31af7Sopenharmony_ci	case mediump_ivec2_st
2815e5c31af7Sopenharmony_ci		version 310 es
2816e5c31af7Sopenharmony_ci		values
2817e5c31af7Sopenharmony_ci		{
2818e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2819e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2820e5c31af7Sopenharmony_ci		}
2821e5c31af7Sopenharmony_ci
2822e5c31af7Sopenharmony_ci		both ""
2823e5c31af7Sopenharmony_ci			#version 310 es
2824e5c31af7Sopenharmony_ci			precision highp float;
2825e5c31af7Sopenharmony_ci			precision highp int;
2826e5c31af7Sopenharmony_ci
2827e5c31af7Sopenharmony_ci			${DECLARATIONS}
2828e5c31af7Sopenharmony_ci
2829e5c31af7Sopenharmony_ci			void main()
2830e5c31af7Sopenharmony_ci			{
2831e5c31af7Sopenharmony_ci				${SETUP}
2832e5c31af7Sopenharmony_ci				out0 = in0.st;
2833e5c31af7Sopenharmony_ci				${OUTPUT}
2834e5c31af7Sopenharmony_ci			}
2835e5c31af7Sopenharmony_ci		""
2836e5c31af7Sopenharmony_ci	end
2837e5c31af7Sopenharmony_ci
2838e5c31af7Sopenharmony_ci	case mediump_ivec2_ts
2839e5c31af7Sopenharmony_ci		version 310 es
2840e5c31af7Sopenharmony_ci		values
2841e5c31af7Sopenharmony_ci		{
2842e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2843e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-2, 0) | ivec2(64, -32) | ivec2(0, 0) ];
2844e5c31af7Sopenharmony_ci		}
2845e5c31af7Sopenharmony_ci
2846e5c31af7Sopenharmony_ci		both ""
2847e5c31af7Sopenharmony_ci			#version 310 es
2848e5c31af7Sopenharmony_ci			precision highp float;
2849e5c31af7Sopenharmony_ci			precision highp int;
2850e5c31af7Sopenharmony_ci
2851e5c31af7Sopenharmony_ci			${DECLARATIONS}
2852e5c31af7Sopenharmony_ci
2853e5c31af7Sopenharmony_ci			void main()
2854e5c31af7Sopenharmony_ci			{
2855e5c31af7Sopenharmony_ci				${SETUP}
2856e5c31af7Sopenharmony_ci				out0 = in0.ts;
2857e5c31af7Sopenharmony_ci				${OUTPUT}
2858e5c31af7Sopenharmony_ci			}
2859e5c31af7Sopenharmony_ci		""
2860e5c31af7Sopenharmony_ci	end
2861e5c31af7Sopenharmony_ci
2862e5c31af7Sopenharmony_ci	case mediump_ivec2_tst
2863e5c31af7Sopenharmony_ci		version 310 es
2864e5c31af7Sopenharmony_ci		values
2865e5c31af7Sopenharmony_ci		{
2866e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2867e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
2868e5c31af7Sopenharmony_ci		}
2869e5c31af7Sopenharmony_ci
2870e5c31af7Sopenharmony_ci		both ""
2871e5c31af7Sopenharmony_ci			#version 310 es
2872e5c31af7Sopenharmony_ci			precision highp float;
2873e5c31af7Sopenharmony_ci			precision highp int;
2874e5c31af7Sopenharmony_ci
2875e5c31af7Sopenharmony_ci			${DECLARATIONS}
2876e5c31af7Sopenharmony_ci
2877e5c31af7Sopenharmony_ci			void main()
2878e5c31af7Sopenharmony_ci			{
2879e5c31af7Sopenharmony_ci				${SETUP}
2880e5c31af7Sopenharmony_ci				out0 = in0.tst;
2881e5c31af7Sopenharmony_ci				${OUTPUT}
2882e5c31af7Sopenharmony_ci			}
2883e5c31af7Sopenharmony_ci		""
2884e5c31af7Sopenharmony_ci	end
2885e5c31af7Sopenharmony_ci
2886e5c31af7Sopenharmony_ci	case mediump_ivec2_stss
2887e5c31af7Sopenharmony_ci		version 310 es
2888e5c31af7Sopenharmony_ci		values
2889e5c31af7Sopenharmony_ci		{
2890e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2891e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
2892e5c31af7Sopenharmony_ci		}
2893e5c31af7Sopenharmony_ci
2894e5c31af7Sopenharmony_ci		both ""
2895e5c31af7Sopenharmony_ci			#version 310 es
2896e5c31af7Sopenharmony_ci			precision highp float;
2897e5c31af7Sopenharmony_ci			precision highp int;
2898e5c31af7Sopenharmony_ci
2899e5c31af7Sopenharmony_ci			${DECLARATIONS}
2900e5c31af7Sopenharmony_ci
2901e5c31af7Sopenharmony_ci			void main()
2902e5c31af7Sopenharmony_ci			{
2903e5c31af7Sopenharmony_ci				${SETUP}
2904e5c31af7Sopenharmony_ci				out0 = in0.stss;
2905e5c31af7Sopenharmony_ci				${OUTPUT}
2906e5c31af7Sopenharmony_ci			}
2907e5c31af7Sopenharmony_ci		""
2908e5c31af7Sopenharmony_ci	end
2909e5c31af7Sopenharmony_ci
2910e5c31af7Sopenharmony_ci	case mediump_ivec2_tttt
2911e5c31af7Sopenharmony_ci		version 310 es
2912e5c31af7Sopenharmony_ci		values
2913e5c31af7Sopenharmony_ci		{
2914e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2915e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
2916e5c31af7Sopenharmony_ci		}
2917e5c31af7Sopenharmony_ci
2918e5c31af7Sopenharmony_ci		both ""
2919e5c31af7Sopenharmony_ci			#version 310 es
2920e5c31af7Sopenharmony_ci			precision highp float;
2921e5c31af7Sopenharmony_ci			precision highp int;
2922e5c31af7Sopenharmony_ci
2923e5c31af7Sopenharmony_ci			${DECLARATIONS}
2924e5c31af7Sopenharmony_ci
2925e5c31af7Sopenharmony_ci			void main()
2926e5c31af7Sopenharmony_ci			{
2927e5c31af7Sopenharmony_ci				${SETUP}
2928e5c31af7Sopenharmony_ci				out0 = in0.tttt;
2929e5c31af7Sopenharmony_ci				${OUTPUT}
2930e5c31af7Sopenharmony_ci			}
2931e5c31af7Sopenharmony_ci		""
2932e5c31af7Sopenharmony_ci	end
2933e5c31af7Sopenharmony_ci
2934e5c31af7Sopenharmony_ci	case mediump_ivec2_r
2935e5c31af7Sopenharmony_ci		version 310 es
2936e5c31af7Sopenharmony_ci		values
2937e5c31af7Sopenharmony_ci		{
2938e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2939e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
2940e5c31af7Sopenharmony_ci		}
2941e5c31af7Sopenharmony_ci
2942e5c31af7Sopenharmony_ci		both ""
2943e5c31af7Sopenharmony_ci			#version 310 es
2944e5c31af7Sopenharmony_ci			precision highp float;
2945e5c31af7Sopenharmony_ci			precision highp int;
2946e5c31af7Sopenharmony_ci
2947e5c31af7Sopenharmony_ci			${DECLARATIONS}
2948e5c31af7Sopenharmony_ci
2949e5c31af7Sopenharmony_ci			void main()
2950e5c31af7Sopenharmony_ci			{
2951e5c31af7Sopenharmony_ci				${SETUP}
2952e5c31af7Sopenharmony_ci				out0 = in0.r;
2953e5c31af7Sopenharmony_ci				${OUTPUT}
2954e5c31af7Sopenharmony_ci			}
2955e5c31af7Sopenharmony_ci		""
2956e5c31af7Sopenharmony_ci	end
2957e5c31af7Sopenharmony_ci
2958e5c31af7Sopenharmony_ci	case mediump_ivec2_rr
2959e5c31af7Sopenharmony_ci		version 310 es
2960e5c31af7Sopenharmony_ci		values
2961e5c31af7Sopenharmony_ci		{
2962e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2963e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, 0) | ivec2(-32, -32) | ivec2(0, 0) ];
2964e5c31af7Sopenharmony_ci		}
2965e5c31af7Sopenharmony_ci
2966e5c31af7Sopenharmony_ci		both ""
2967e5c31af7Sopenharmony_ci			#version 310 es
2968e5c31af7Sopenharmony_ci			precision highp float;
2969e5c31af7Sopenharmony_ci			precision highp int;
2970e5c31af7Sopenharmony_ci
2971e5c31af7Sopenharmony_ci			${DECLARATIONS}
2972e5c31af7Sopenharmony_ci
2973e5c31af7Sopenharmony_ci			void main()
2974e5c31af7Sopenharmony_ci			{
2975e5c31af7Sopenharmony_ci				${SETUP}
2976e5c31af7Sopenharmony_ci				out0 = in0.rr;
2977e5c31af7Sopenharmony_ci				${OUTPUT}
2978e5c31af7Sopenharmony_ci			}
2979e5c31af7Sopenharmony_ci		""
2980e5c31af7Sopenharmony_ci	end
2981e5c31af7Sopenharmony_ci
2982e5c31af7Sopenharmony_ci	case mediump_ivec2_rg
2983e5c31af7Sopenharmony_ci		version 310 es
2984e5c31af7Sopenharmony_ci		values
2985e5c31af7Sopenharmony_ci		{
2986e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2987e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2988e5c31af7Sopenharmony_ci		}
2989e5c31af7Sopenharmony_ci
2990e5c31af7Sopenharmony_ci		both ""
2991e5c31af7Sopenharmony_ci			#version 310 es
2992e5c31af7Sopenharmony_ci			precision highp float;
2993e5c31af7Sopenharmony_ci			precision highp int;
2994e5c31af7Sopenharmony_ci
2995e5c31af7Sopenharmony_ci			${DECLARATIONS}
2996e5c31af7Sopenharmony_ci
2997e5c31af7Sopenharmony_ci			void main()
2998e5c31af7Sopenharmony_ci			{
2999e5c31af7Sopenharmony_ci				${SETUP}
3000e5c31af7Sopenharmony_ci				out0 = in0.rg;
3001e5c31af7Sopenharmony_ci				${OUTPUT}
3002e5c31af7Sopenharmony_ci			}
3003e5c31af7Sopenharmony_ci		""
3004e5c31af7Sopenharmony_ci	end
3005e5c31af7Sopenharmony_ci
3006e5c31af7Sopenharmony_ci	case mediump_ivec2_gr
3007e5c31af7Sopenharmony_ci		version 310 es
3008e5c31af7Sopenharmony_ci		values
3009e5c31af7Sopenharmony_ci		{
3010e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3011e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-2, 0) | ivec2(64, -32) | ivec2(0, 0) ];
3012e5c31af7Sopenharmony_ci		}
3013e5c31af7Sopenharmony_ci
3014e5c31af7Sopenharmony_ci		both ""
3015e5c31af7Sopenharmony_ci			#version 310 es
3016e5c31af7Sopenharmony_ci			precision highp float;
3017e5c31af7Sopenharmony_ci			precision highp int;
3018e5c31af7Sopenharmony_ci
3019e5c31af7Sopenharmony_ci			${DECLARATIONS}
3020e5c31af7Sopenharmony_ci
3021e5c31af7Sopenharmony_ci			void main()
3022e5c31af7Sopenharmony_ci			{
3023e5c31af7Sopenharmony_ci				${SETUP}
3024e5c31af7Sopenharmony_ci				out0 = in0.gr;
3025e5c31af7Sopenharmony_ci				${OUTPUT}
3026e5c31af7Sopenharmony_ci			}
3027e5c31af7Sopenharmony_ci		""
3028e5c31af7Sopenharmony_ci	end
3029e5c31af7Sopenharmony_ci
3030e5c31af7Sopenharmony_ci	case mediump_ivec2_grg
3031e5c31af7Sopenharmony_ci		version 310 es
3032e5c31af7Sopenharmony_ci		values
3033e5c31af7Sopenharmony_ci		{
3034e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3035e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
3036e5c31af7Sopenharmony_ci		}
3037e5c31af7Sopenharmony_ci
3038e5c31af7Sopenharmony_ci		both ""
3039e5c31af7Sopenharmony_ci			#version 310 es
3040e5c31af7Sopenharmony_ci			precision highp float;
3041e5c31af7Sopenharmony_ci			precision highp int;
3042e5c31af7Sopenharmony_ci
3043e5c31af7Sopenharmony_ci			${DECLARATIONS}
3044e5c31af7Sopenharmony_ci
3045e5c31af7Sopenharmony_ci			void main()
3046e5c31af7Sopenharmony_ci			{
3047e5c31af7Sopenharmony_ci				${SETUP}
3048e5c31af7Sopenharmony_ci				out0 = in0.grg;
3049e5c31af7Sopenharmony_ci				${OUTPUT}
3050e5c31af7Sopenharmony_ci			}
3051e5c31af7Sopenharmony_ci		""
3052e5c31af7Sopenharmony_ci	end
3053e5c31af7Sopenharmony_ci
3054e5c31af7Sopenharmony_ci	case mediump_ivec2_rgrr
3055e5c31af7Sopenharmony_ci		version 310 es
3056e5c31af7Sopenharmony_ci		values
3057e5c31af7Sopenharmony_ci		{
3058e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3059e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
3060e5c31af7Sopenharmony_ci		}
3061e5c31af7Sopenharmony_ci
3062e5c31af7Sopenharmony_ci		both ""
3063e5c31af7Sopenharmony_ci			#version 310 es
3064e5c31af7Sopenharmony_ci			precision highp float;
3065e5c31af7Sopenharmony_ci			precision highp int;
3066e5c31af7Sopenharmony_ci
3067e5c31af7Sopenharmony_ci			${DECLARATIONS}
3068e5c31af7Sopenharmony_ci
3069e5c31af7Sopenharmony_ci			void main()
3070e5c31af7Sopenharmony_ci			{
3071e5c31af7Sopenharmony_ci				${SETUP}
3072e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
3073e5c31af7Sopenharmony_ci				${OUTPUT}
3074e5c31af7Sopenharmony_ci			}
3075e5c31af7Sopenharmony_ci		""
3076e5c31af7Sopenharmony_ci	end
3077e5c31af7Sopenharmony_ci
3078e5c31af7Sopenharmony_ci	case mediump_ivec2_gggg
3079e5c31af7Sopenharmony_ci		version 310 es
3080e5c31af7Sopenharmony_ci		values
3081e5c31af7Sopenharmony_ci		{
3082e5c31af7Sopenharmony_ci			input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3083e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
3084e5c31af7Sopenharmony_ci		}
3085e5c31af7Sopenharmony_ci
3086e5c31af7Sopenharmony_ci		both ""
3087e5c31af7Sopenharmony_ci			#version 310 es
3088e5c31af7Sopenharmony_ci			precision highp float;
3089e5c31af7Sopenharmony_ci			precision highp int;
3090e5c31af7Sopenharmony_ci
3091e5c31af7Sopenharmony_ci			${DECLARATIONS}
3092e5c31af7Sopenharmony_ci
3093e5c31af7Sopenharmony_ci			void main()
3094e5c31af7Sopenharmony_ci			{
3095e5c31af7Sopenharmony_ci				${SETUP}
3096e5c31af7Sopenharmony_ci				out0 = in0.gggg;
3097e5c31af7Sopenharmony_ci				${OUTPUT}
3098e5c31af7Sopenharmony_ci			}
3099e5c31af7Sopenharmony_ci		""
3100e5c31af7Sopenharmony_ci	end
3101e5c31af7Sopenharmony_ci
3102e5c31af7Sopenharmony_ci	case mediump_ivec3_x
3103e5c31af7Sopenharmony_ci		version 310 es
3104e5c31af7Sopenharmony_ci		values
3105e5c31af7Sopenharmony_ci		{
3106e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3107e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
3108e5c31af7Sopenharmony_ci		}
3109e5c31af7Sopenharmony_ci
3110e5c31af7Sopenharmony_ci		both ""
3111e5c31af7Sopenharmony_ci			#version 310 es
3112e5c31af7Sopenharmony_ci			precision highp float;
3113e5c31af7Sopenharmony_ci			precision highp int;
3114e5c31af7Sopenharmony_ci
3115e5c31af7Sopenharmony_ci			${DECLARATIONS}
3116e5c31af7Sopenharmony_ci
3117e5c31af7Sopenharmony_ci			void main()
3118e5c31af7Sopenharmony_ci			{
3119e5c31af7Sopenharmony_ci				${SETUP}
3120e5c31af7Sopenharmony_ci				out0 = in0.x;
3121e5c31af7Sopenharmony_ci				${OUTPUT}
3122e5c31af7Sopenharmony_ci			}
3123e5c31af7Sopenharmony_ci		""
3124e5c31af7Sopenharmony_ci	end
3125e5c31af7Sopenharmony_ci
3126e5c31af7Sopenharmony_ci	case mediump_ivec3_z
3127e5c31af7Sopenharmony_ci		version 310 es
3128e5c31af7Sopenharmony_ci		values
3129e5c31af7Sopenharmony_ci		{
3130e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3131e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | -4 | -51 | 0 ];
3132e5c31af7Sopenharmony_ci		}
3133e5c31af7Sopenharmony_ci
3134e5c31af7Sopenharmony_ci		both ""
3135e5c31af7Sopenharmony_ci			#version 310 es
3136e5c31af7Sopenharmony_ci			precision highp float;
3137e5c31af7Sopenharmony_ci			precision highp int;
3138e5c31af7Sopenharmony_ci
3139e5c31af7Sopenharmony_ci			${DECLARATIONS}
3140e5c31af7Sopenharmony_ci
3141e5c31af7Sopenharmony_ci			void main()
3142e5c31af7Sopenharmony_ci			{
3143e5c31af7Sopenharmony_ci				${SETUP}
3144e5c31af7Sopenharmony_ci				out0 = in0.z;
3145e5c31af7Sopenharmony_ci				${OUTPUT}
3146e5c31af7Sopenharmony_ci			}
3147e5c31af7Sopenharmony_ci		""
3148e5c31af7Sopenharmony_ci	end
3149e5c31af7Sopenharmony_ci
3150e5c31af7Sopenharmony_ci	case mediump_ivec3_xz
3151e5c31af7Sopenharmony_ci		version 310 es
3152e5c31af7Sopenharmony_ci		values
3153e5c31af7Sopenharmony_ci		{
3154e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3155e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -4) | ivec2(-32, -51) | ivec2(0, 0) ];
3156e5c31af7Sopenharmony_ci		}
3157e5c31af7Sopenharmony_ci
3158e5c31af7Sopenharmony_ci		both ""
3159e5c31af7Sopenharmony_ci			#version 310 es
3160e5c31af7Sopenharmony_ci			precision highp float;
3161e5c31af7Sopenharmony_ci			precision highp int;
3162e5c31af7Sopenharmony_ci
3163e5c31af7Sopenharmony_ci			${DECLARATIONS}
3164e5c31af7Sopenharmony_ci
3165e5c31af7Sopenharmony_ci			void main()
3166e5c31af7Sopenharmony_ci			{
3167e5c31af7Sopenharmony_ci				${SETUP}
3168e5c31af7Sopenharmony_ci				out0 = in0.xz;
3169e5c31af7Sopenharmony_ci				${OUTPUT}
3170e5c31af7Sopenharmony_ci			}
3171e5c31af7Sopenharmony_ci		""
3172e5c31af7Sopenharmony_ci	end
3173e5c31af7Sopenharmony_ci
3174e5c31af7Sopenharmony_ci	case mediump_ivec3_zz
3175e5c31af7Sopenharmony_ci		version 310 es
3176e5c31af7Sopenharmony_ci		values
3177e5c31af7Sopenharmony_ci		{
3178e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3179e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-4, -4) | ivec2(-51, -51) | ivec2(0, 0) ];
3180e5c31af7Sopenharmony_ci		}
3181e5c31af7Sopenharmony_ci
3182e5c31af7Sopenharmony_ci		both ""
3183e5c31af7Sopenharmony_ci			#version 310 es
3184e5c31af7Sopenharmony_ci			precision highp float;
3185e5c31af7Sopenharmony_ci			precision highp int;
3186e5c31af7Sopenharmony_ci
3187e5c31af7Sopenharmony_ci			${DECLARATIONS}
3188e5c31af7Sopenharmony_ci
3189e5c31af7Sopenharmony_ci			void main()
3190e5c31af7Sopenharmony_ci			{
3191e5c31af7Sopenharmony_ci				${SETUP}
3192e5c31af7Sopenharmony_ci				out0 = in0.zz;
3193e5c31af7Sopenharmony_ci				${OUTPUT}
3194e5c31af7Sopenharmony_ci			}
3195e5c31af7Sopenharmony_ci		""
3196e5c31af7Sopenharmony_ci	end
3197e5c31af7Sopenharmony_ci
3198e5c31af7Sopenharmony_ci	case mediump_ivec3_xyz
3199e5c31af7Sopenharmony_ci		version 310 es
3200e5c31af7Sopenharmony_ci		values
3201e5c31af7Sopenharmony_ci		{
3202e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3203e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3204e5c31af7Sopenharmony_ci		}
3205e5c31af7Sopenharmony_ci
3206e5c31af7Sopenharmony_ci		both ""
3207e5c31af7Sopenharmony_ci			#version 310 es
3208e5c31af7Sopenharmony_ci			precision highp float;
3209e5c31af7Sopenharmony_ci			precision highp int;
3210e5c31af7Sopenharmony_ci
3211e5c31af7Sopenharmony_ci			${DECLARATIONS}
3212e5c31af7Sopenharmony_ci
3213e5c31af7Sopenharmony_ci			void main()
3214e5c31af7Sopenharmony_ci			{
3215e5c31af7Sopenharmony_ci				${SETUP}
3216e5c31af7Sopenharmony_ci				out0 = in0.xyz;
3217e5c31af7Sopenharmony_ci				${OUTPUT}
3218e5c31af7Sopenharmony_ci			}
3219e5c31af7Sopenharmony_ci		""
3220e5c31af7Sopenharmony_ci	end
3221e5c31af7Sopenharmony_ci
3222e5c31af7Sopenharmony_ci	case mediump_ivec3_zyx
3223e5c31af7Sopenharmony_ci		version 310 es
3224e5c31af7Sopenharmony_ci		values
3225e5c31af7Sopenharmony_ci		{
3226e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3227e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -2, 0) | ivec3(-51, 64, -32) | ivec3(0, 0, 0) ];
3228e5c31af7Sopenharmony_ci		}
3229e5c31af7Sopenharmony_ci
3230e5c31af7Sopenharmony_ci		both ""
3231e5c31af7Sopenharmony_ci			#version 310 es
3232e5c31af7Sopenharmony_ci			precision highp float;
3233e5c31af7Sopenharmony_ci			precision highp int;
3234e5c31af7Sopenharmony_ci
3235e5c31af7Sopenharmony_ci			${DECLARATIONS}
3236e5c31af7Sopenharmony_ci
3237e5c31af7Sopenharmony_ci			void main()
3238e5c31af7Sopenharmony_ci			{
3239e5c31af7Sopenharmony_ci				${SETUP}
3240e5c31af7Sopenharmony_ci				out0 = in0.zyx;
3241e5c31af7Sopenharmony_ci				${OUTPUT}
3242e5c31af7Sopenharmony_ci			}
3243e5c31af7Sopenharmony_ci		""
3244e5c31af7Sopenharmony_ci	end
3245e5c31af7Sopenharmony_ci
3246e5c31af7Sopenharmony_ci	case mediump_ivec3_xxx
3247e5c31af7Sopenharmony_ci		version 310 es
3248e5c31af7Sopenharmony_ci		values
3249e5c31af7Sopenharmony_ci		{
3250e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3251e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, 0, 0) | ivec3(-32, -32, -32) | ivec3(0, 0, 0) ];
3252e5c31af7Sopenharmony_ci		}
3253e5c31af7Sopenharmony_ci
3254e5c31af7Sopenharmony_ci		both ""
3255e5c31af7Sopenharmony_ci			#version 310 es
3256e5c31af7Sopenharmony_ci			precision highp float;
3257e5c31af7Sopenharmony_ci			precision highp int;
3258e5c31af7Sopenharmony_ci
3259e5c31af7Sopenharmony_ci			${DECLARATIONS}
3260e5c31af7Sopenharmony_ci
3261e5c31af7Sopenharmony_ci			void main()
3262e5c31af7Sopenharmony_ci			{
3263e5c31af7Sopenharmony_ci				${SETUP}
3264e5c31af7Sopenharmony_ci				out0 = in0.xxx;
3265e5c31af7Sopenharmony_ci				${OUTPUT}
3266e5c31af7Sopenharmony_ci			}
3267e5c31af7Sopenharmony_ci		""
3268e5c31af7Sopenharmony_ci	end
3269e5c31af7Sopenharmony_ci
3270e5c31af7Sopenharmony_ci	case mediump_ivec3_zzz
3271e5c31af7Sopenharmony_ci		version 310 es
3272e5c31af7Sopenharmony_ci		values
3273e5c31af7Sopenharmony_ci		{
3274e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3275e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -4) | ivec3(-51, -51, -51) | ivec3(0, 0, 0) ];
3276e5c31af7Sopenharmony_ci		}
3277e5c31af7Sopenharmony_ci
3278e5c31af7Sopenharmony_ci		both ""
3279e5c31af7Sopenharmony_ci			#version 310 es
3280e5c31af7Sopenharmony_ci			precision highp float;
3281e5c31af7Sopenharmony_ci			precision highp int;
3282e5c31af7Sopenharmony_ci
3283e5c31af7Sopenharmony_ci			${DECLARATIONS}
3284e5c31af7Sopenharmony_ci
3285e5c31af7Sopenharmony_ci			void main()
3286e5c31af7Sopenharmony_ci			{
3287e5c31af7Sopenharmony_ci				${SETUP}
3288e5c31af7Sopenharmony_ci				out0 = in0.zzz;
3289e5c31af7Sopenharmony_ci				${OUTPUT}
3290e5c31af7Sopenharmony_ci			}
3291e5c31af7Sopenharmony_ci		""
3292e5c31af7Sopenharmony_ci	end
3293e5c31af7Sopenharmony_ci
3294e5c31af7Sopenharmony_ci	case mediump_ivec3_zzy
3295e5c31af7Sopenharmony_ci		version 310 es
3296e5c31af7Sopenharmony_ci		values
3297e5c31af7Sopenharmony_ci		{
3298e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3299e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -2) | ivec3(-51, -51, 64) | ivec3(0, 0, 0) ];
3300e5c31af7Sopenharmony_ci		}
3301e5c31af7Sopenharmony_ci
3302e5c31af7Sopenharmony_ci		both ""
3303e5c31af7Sopenharmony_ci			#version 310 es
3304e5c31af7Sopenharmony_ci			precision highp float;
3305e5c31af7Sopenharmony_ci			precision highp int;
3306e5c31af7Sopenharmony_ci
3307e5c31af7Sopenharmony_ci			${DECLARATIONS}
3308e5c31af7Sopenharmony_ci
3309e5c31af7Sopenharmony_ci			void main()
3310e5c31af7Sopenharmony_ci			{
3311e5c31af7Sopenharmony_ci				${SETUP}
3312e5c31af7Sopenharmony_ci				out0 = in0.zzy;
3313e5c31af7Sopenharmony_ci				${OUTPUT}
3314e5c31af7Sopenharmony_ci			}
3315e5c31af7Sopenharmony_ci		""
3316e5c31af7Sopenharmony_ci	end
3317e5c31af7Sopenharmony_ci
3318e5c31af7Sopenharmony_ci	case mediump_ivec3_yxy
3319e5c31af7Sopenharmony_ci		version 310 es
3320e5c31af7Sopenharmony_ci		values
3321e5c31af7Sopenharmony_ci		{
3322e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3323e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
3324e5c31af7Sopenharmony_ci		}
3325e5c31af7Sopenharmony_ci
3326e5c31af7Sopenharmony_ci		both ""
3327e5c31af7Sopenharmony_ci			#version 310 es
3328e5c31af7Sopenharmony_ci			precision highp float;
3329e5c31af7Sopenharmony_ci			precision highp int;
3330e5c31af7Sopenharmony_ci
3331e5c31af7Sopenharmony_ci			${DECLARATIONS}
3332e5c31af7Sopenharmony_ci
3333e5c31af7Sopenharmony_ci			void main()
3334e5c31af7Sopenharmony_ci			{
3335e5c31af7Sopenharmony_ci				${SETUP}
3336e5c31af7Sopenharmony_ci				out0 = in0.yxy;
3337e5c31af7Sopenharmony_ci				${OUTPUT}
3338e5c31af7Sopenharmony_ci			}
3339e5c31af7Sopenharmony_ci		""
3340e5c31af7Sopenharmony_ci	end
3341e5c31af7Sopenharmony_ci
3342e5c31af7Sopenharmony_ci	case mediump_ivec3_xzx
3343e5c31af7Sopenharmony_ci		version 310 es
3344e5c31af7Sopenharmony_ci		values
3345e5c31af7Sopenharmony_ci		{
3346e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3347e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -4, 0) | ivec3(-32, -51, -32) | ivec3(0, 0, 0) ];
3348e5c31af7Sopenharmony_ci		}
3349e5c31af7Sopenharmony_ci
3350e5c31af7Sopenharmony_ci		both ""
3351e5c31af7Sopenharmony_ci			#version 310 es
3352e5c31af7Sopenharmony_ci			precision highp float;
3353e5c31af7Sopenharmony_ci			precision highp int;
3354e5c31af7Sopenharmony_ci
3355e5c31af7Sopenharmony_ci			${DECLARATIONS}
3356e5c31af7Sopenharmony_ci
3357e5c31af7Sopenharmony_ci			void main()
3358e5c31af7Sopenharmony_ci			{
3359e5c31af7Sopenharmony_ci				${SETUP}
3360e5c31af7Sopenharmony_ci				out0 = in0.xzx;
3361e5c31af7Sopenharmony_ci				${OUTPUT}
3362e5c31af7Sopenharmony_ci			}
3363e5c31af7Sopenharmony_ci		""
3364e5c31af7Sopenharmony_ci	end
3365e5c31af7Sopenharmony_ci
3366e5c31af7Sopenharmony_ci	case mediump_ivec3_xyyx
3367e5c31af7Sopenharmony_ci		version 310 es
3368e5c31af7Sopenharmony_ci		values
3369e5c31af7Sopenharmony_ci		{
3370e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3371e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -2, 0) | ivec4(-32, 64, 64, -32) | ivec4(0, 0, 0, 0) ];
3372e5c31af7Sopenharmony_ci		}
3373e5c31af7Sopenharmony_ci
3374e5c31af7Sopenharmony_ci		both ""
3375e5c31af7Sopenharmony_ci			#version 310 es
3376e5c31af7Sopenharmony_ci			precision highp float;
3377e5c31af7Sopenharmony_ci			precision highp int;
3378e5c31af7Sopenharmony_ci
3379e5c31af7Sopenharmony_ci			${DECLARATIONS}
3380e5c31af7Sopenharmony_ci
3381e5c31af7Sopenharmony_ci			void main()
3382e5c31af7Sopenharmony_ci			{
3383e5c31af7Sopenharmony_ci				${SETUP}
3384e5c31af7Sopenharmony_ci				out0 = in0.xyyx;
3385e5c31af7Sopenharmony_ci				${OUTPUT}
3386e5c31af7Sopenharmony_ci			}
3387e5c31af7Sopenharmony_ci		""
3388e5c31af7Sopenharmony_ci	end
3389e5c31af7Sopenharmony_ci
3390e5c31af7Sopenharmony_ci	case mediump_ivec3_zzzz
3391e5c31af7Sopenharmony_ci		version 310 es
3392e5c31af7Sopenharmony_ci		values
3393e5c31af7Sopenharmony_ci		{
3394e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3395e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, -4, -4) | ivec4(-51, -51, -51, -51) | ivec4(0, 0, 0, 0) ];
3396e5c31af7Sopenharmony_ci		}
3397e5c31af7Sopenharmony_ci
3398e5c31af7Sopenharmony_ci		both ""
3399e5c31af7Sopenharmony_ci			#version 310 es
3400e5c31af7Sopenharmony_ci			precision highp float;
3401e5c31af7Sopenharmony_ci			precision highp int;
3402e5c31af7Sopenharmony_ci
3403e5c31af7Sopenharmony_ci			${DECLARATIONS}
3404e5c31af7Sopenharmony_ci
3405e5c31af7Sopenharmony_ci			void main()
3406e5c31af7Sopenharmony_ci			{
3407e5c31af7Sopenharmony_ci				${SETUP}
3408e5c31af7Sopenharmony_ci				out0 = in0.zzzz;
3409e5c31af7Sopenharmony_ci				${OUTPUT}
3410e5c31af7Sopenharmony_ci			}
3411e5c31af7Sopenharmony_ci		""
3412e5c31af7Sopenharmony_ci	end
3413e5c31af7Sopenharmony_ci
3414e5c31af7Sopenharmony_ci	case mediump_ivec3_s
3415e5c31af7Sopenharmony_ci		version 310 es
3416e5c31af7Sopenharmony_ci		values
3417e5c31af7Sopenharmony_ci		{
3418e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3419e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
3420e5c31af7Sopenharmony_ci		}
3421e5c31af7Sopenharmony_ci
3422e5c31af7Sopenharmony_ci		both ""
3423e5c31af7Sopenharmony_ci			#version 310 es
3424e5c31af7Sopenharmony_ci			precision highp float;
3425e5c31af7Sopenharmony_ci			precision highp int;
3426e5c31af7Sopenharmony_ci
3427e5c31af7Sopenharmony_ci			${DECLARATIONS}
3428e5c31af7Sopenharmony_ci
3429e5c31af7Sopenharmony_ci			void main()
3430e5c31af7Sopenharmony_ci			{
3431e5c31af7Sopenharmony_ci				${SETUP}
3432e5c31af7Sopenharmony_ci				out0 = in0.s;
3433e5c31af7Sopenharmony_ci				${OUTPUT}
3434e5c31af7Sopenharmony_ci			}
3435e5c31af7Sopenharmony_ci		""
3436e5c31af7Sopenharmony_ci	end
3437e5c31af7Sopenharmony_ci
3438e5c31af7Sopenharmony_ci	case mediump_ivec3_p
3439e5c31af7Sopenharmony_ci		version 310 es
3440e5c31af7Sopenharmony_ci		values
3441e5c31af7Sopenharmony_ci		{
3442e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3443e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | -4 | -51 | 0 ];
3444e5c31af7Sopenharmony_ci		}
3445e5c31af7Sopenharmony_ci
3446e5c31af7Sopenharmony_ci		both ""
3447e5c31af7Sopenharmony_ci			#version 310 es
3448e5c31af7Sopenharmony_ci			precision highp float;
3449e5c31af7Sopenharmony_ci			precision highp int;
3450e5c31af7Sopenharmony_ci
3451e5c31af7Sopenharmony_ci			${DECLARATIONS}
3452e5c31af7Sopenharmony_ci
3453e5c31af7Sopenharmony_ci			void main()
3454e5c31af7Sopenharmony_ci			{
3455e5c31af7Sopenharmony_ci				${SETUP}
3456e5c31af7Sopenharmony_ci				out0 = in0.p;
3457e5c31af7Sopenharmony_ci				${OUTPUT}
3458e5c31af7Sopenharmony_ci			}
3459e5c31af7Sopenharmony_ci		""
3460e5c31af7Sopenharmony_ci	end
3461e5c31af7Sopenharmony_ci
3462e5c31af7Sopenharmony_ci	case mediump_ivec3_sp
3463e5c31af7Sopenharmony_ci		version 310 es
3464e5c31af7Sopenharmony_ci		values
3465e5c31af7Sopenharmony_ci		{
3466e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3467e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -4) | ivec2(-32, -51) | ivec2(0, 0) ];
3468e5c31af7Sopenharmony_ci		}
3469e5c31af7Sopenharmony_ci
3470e5c31af7Sopenharmony_ci		both ""
3471e5c31af7Sopenharmony_ci			#version 310 es
3472e5c31af7Sopenharmony_ci			precision highp float;
3473e5c31af7Sopenharmony_ci			precision highp int;
3474e5c31af7Sopenharmony_ci
3475e5c31af7Sopenharmony_ci			${DECLARATIONS}
3476e5c31af7Sopenharmony_ci
3477e5c31af7Sopenharmony_ci			void main()
3478e5c31af7Sopenharmony_ci			{
3479e5c31af7Sopenharmony_ci				${SETUP}
3480e5c31af7Sopenharmony_ci				out0 = in0.sp;
3481e5c31af7Sopenharmony_ci				${OUTPUT}
3482e5c31af7Sopenharmony_ci			}
3483e5c31af7Sopenharmony_ci		""
3484e5c31af7Sopenharmony_ci	end
3485e5c31af7Sopenharmony_ci
3486e5c31af7Sopenharmony_ci	case mediump_ivec3_pp
3487e5c31af7Sopenharmony_ci		version 310 es
3488e5c31af7Sopenharmony_ci		values
3489e5c31af7Sopenharmony_ci		{
3490e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3491e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-4, -4) | ivec2(-51, -51) | ivec2(0, 0) ];
3492e5c31af7Sopenharmony_ci		}
3493e5c31af7Sopenharmony_ci
3494e5c31af7Sopenharmony_ci		both ""
3495e5c31af7Sopenharmony_ci			#version 310 es
3496e5c31af7Sopenharmony_ci			precision highp float;
3497e5c31af7Sopenharmony_ci			precision highp int;
3498e5c31af7Sopenharmony_ci
3499e5c31af7Sopenharmony_ci			${DECLARATIONS}
3500e5c31af7Sopenharmony_ci
3501e5c31af7Sopenharmony_ci			void main()
3502e5c31af7Sopenharmony_ci			{
3503e5c31af7Sopenharmony_ci				${SETUP}
3504e5c31af7Sopenharmony_ci				out0 = in0.pp;
3505e5c31af7Sopenharmony_ci				${OUTPUT}
3506e5c31af7Sopenharmony_ci			}
3507e5c31af7Sopenharmony_ci		""
3508e5c31af7Sopenharmony_ci	end
3509e5c31af7Sopenharmony_ci
3510e5c31af7Sopenharmony_ci	case mediump_ivec3_stp
3511e5c31af7Sopenharmony_ci		version 310 es
3512e5c31af7Sopenharmony_ci		values
3513e5c31af7Sopenharmony_ci		{
3514e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3515e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3516e5c31af7Sopenharmony_ci		}
3517e5c31af7Sopenharmony_ci
3518e5c31af7Sopenharmony_ci		both ""
3519e5c31af7Sopenharmony_ci			#version 310 es
3520e5c31af7Sopenharmony_ci			precision highp float;
3521e5c31af7Sopenharmony_ci			precision highp int;
3522e5c31af7Sopenharmony_ci
3523e5c31af7Sopenharmony_ci			${DECLARATIONS}
3524e5c31af7Sopenharmony_ci
3525e5c31af7Sopenharmony_ci			void main()
3526e5c31af7Sopenharmony_ci			{
3527e5c31af7Sopenharmony_ci				${SETUP}
3528e5c31af7Sopenharmony_ci				out0 = in0.stp;
3529e5c31af7Sopenharmony_ci				${OUTPUT}
3530e5c31af7Sopenharmony_ci			}
3531e5c31af7Sopenharmony_ci		""
3532e5c31af7Sopenharmony_ci	end
3533e5c31af7Sopenharmony_ci
3534e5c31af7Sopenharmony_ci	case mediump_ivec3_pts
3535e5c31af7Sopenharmony_ci		version 310 es
3536e5c31af7Sopenharmony_ci		values
3537e5c31af7Sopenharmony_ci		{
3538e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3539e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -2, 0) | ivec3(-51, 64, -32) | ivec3(0, 0, 0) ];
3540e5c31af7Sopenharmony_ci		}
3541e5c31af7Sopenharmony_ci
3542e5c31af7Sopenharmony_ci		both ""
3543e5c31af7Sopenharmony_ci			#version 310 es
3544e5c31af7Sopenharmony_ci			precision highp float;
3545e5c31af7Sopenharmony_ci			precision highp int;
3546e5c31af7Sopenharmony_ci
3547e5c31af7Sopenharmony_ci			${DECLARATIONS}
3548e5c31af7Sopenharmony_ci
3549e5c31af7Sopenharmony_ci			void main()
3550e5c31af7Sopenharmony_ci			{
3551e5c31af7Sopenharmony_ci				${SETUP}
3552e5c31af7Sopenharmony_ci				out0 = in0.pts;
3553e5c31af7Sopenharmony_ci				${OUTPUT}
3554e5c31af7Sopenharmony_ci			}
3555e5c31af7Sopenharmony_ci		""
3556e5c31af7Sopenharmony_ci	end
3557e5c31af7Sopenharmony_ci
3558e5c31af7Sopenharmony_ci	case mediump_ivec3_sss
3559e5c31af7Sopenharmony_ci		version 310 es
3560e5c31af7Sopenharmony_ci		values
3561e5c31af7Sopenharmony_ci		{
3562e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3563e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, 0, 0) | ivec3(-32, -32, -32) | ivec3(0, 0, 0) ];
3564e5c31af7Sopenharmony_ci		}
3565e5c31af7Sopenharmony_ci
3566e5c31af7Sopenharmony_ci		both ""
3567e5c31af7Sopenharmony_ci			#version 310 es
3568e5c31af7Sopenharmony_ci			precision highp float;
3569e5c31af7Sopenharmony_ci			precision highp int;
3570e5c31af7Sopenharmony_ci
3571e5c31af7Sopenharmony_ci			${DECLARATIONS}
3572e5c31af7Sopenharmony_ci
3573e5c31af7Sopenharmony_ci			void main()
3574e5c31af7Sopenharmony_ci			{
3575e5c31af7Sopenharmony_ci				${SETUP}
3576e5c31af7Sopenharmony_ci				out0 = in0.sss;
3577e5c31af7Sopenharmony_ci				${OUTPUT}
3578e5c31af7Sopenharmony_ci			}
3579e5c31af7Sopenharmony_ci		""
3580e5c31af7Sopenharmony_ci	end
3581e5c31af7Sopenharmony_ci
3582e5c31af7Sopenharmony_ci	case mediump_ivec3_ppp
3583e5c31af7Sopenharmony_ci		version 310 es
3584e5c31af7Sopenharmony_ci		values
3585e5c31af7Sopenharmony_ci		{
3586e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3587e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -4) | ivec3(-51, -51, -51) | ivec3(0, 0, 0) ];
3588e5c31af7Sopenharmony_ci		}
3589e5c31af7Sopenharmony_ci
3590e5c31af7Sopenharmony_ci		both ""
3591e5c31af7Sopenharmony_ci			#version 310 es
3592e5c31af7Sopenharmony_ci			precision highp float;
3593e5c31af7Sopenharmony_ci			precision highp int;
3594e5c31af7Sopenharmony_ci
3595e5c31af7Sopenharmony_ci			${DECLARATIONS}
3596e5c31af7Sopenharmony_ci
3597e5c31af7Sopenharmony_ci			void main()
3598e5c31af7Sopenharmony_ci			{
3599e5c31af7Sopenharmony_ci				${SETUP}
3600e5c31af7Sopenharmony_ci				out0 = in0.ppp;
3601e5c31af7Sopenharmony_ci				${OUTPUT}
3602e5c31af7Sopenharmony_ci			}
3603e5c31af7Sopenharmony_ci		""
3604e5c31af7Sopenharmony_ci	end
3605e5c31af7Sopenharmony_ci
3606e5c31af7Sopenharmony_ci	case mediump_ivec3_ppt
3607e5c31af7Sopenharmony_ci		version 310 es
3608e5c31af7Sopenharmony_ci		values
3609e5c31af7Sopenharmony_ci		{
3610e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3611e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -2) | ivec3(-51, -51, 64) | ivec3(0, 0, 0) ];
3612e5c31af7Sopenharmony_ci		}
3613e5c31af7Sopenharmony_ci
3614e5c31af7Sopenharmony_ci		both ""
3615e5c31af7Sopenharmony_ci			#version 310 es
3616e5c31af7Sopenharmony_ci			precision highp float;
3617e5c31af7Sopenharmony_ci			precision highp int;
3618e5c31af7Sopenharmony_ci
3619e5c31af7Sopenharmony_ci			${DECLARATIONS}
3620e5c31af7Sopenharmony_ci
3621e5c31af7Sopenharmony_ci			void main()
3622e5c31af7Sopenharmony_ci			{
3623e5c31af7Sopenharmony_ci				${SETUP}
3624e5c31af7Sopenharmony_ci				out0 = in0.ppt;
3625e5c31af7Sopenharmony_ci				${OUTPUT}
3626e5c31af7Sopenharmony_ci			}
3627e5c31af7Sopenharmony_ci		""
3628e5c31af7Sopenharmony_ci	end
3629e5c31af7Sopenharmony_ci
3630e5c31af7Sopenharmony_ci	case mediump_ivec3_tst
3631e5c31af7Sopenharmony_ci		version 310 es
3632e5c31af7Sopenharmony_ci		values
3633e5c31af7Sopenharmony_ci		{
3634e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3635e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
3636e5c31af7Sopenharmony_ci		}
3637e5c31af7Sopenharmony_ci
3638e5c31af7Sopenharmony_ci		both ""
3639e5c31af7Sopenharmony_ci			#version 310 es
3640e5c31af7Sopenharmony_ci			precision highp float;
3641e5c31af7Sopenharmony_ci			precision highp int;
3642e5c31af7Sopenharmony_ci
3643e5c31af7Sopenharmony_ci			${DECLARATIONS}
3644e5c31af7Sopenharmony_ci
3645e5c31af7Sopenharmony_ci			void main()
3646e5c31af7Sopenharmony_ci			{
3647e5c31af7Sopenharmony_ci				${SETUP}
3648e5c31af7Sopenharmony_ci				out0 = in0.tst;
3649e5c31af7Sopenharmony_ci				${OUTPUT}
3650e5c31af7Sopenharmony_ci			}
3651e5c31af7Sopenharmony_ci		""
3652e5c31af7Sopenharmony_ci	end
3653e5c31af7Sopenharmony_ci
3654e5c31af7Sopenharmony_ci	case mediump_ivec3_sps
3655e5c31af7Sopenharmony_ci		version 310 es
3656e5c31af7Sopenharmony_ci		values
3657e5c31af7Sopenharmony_ci		{
3658e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3659e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -4, 0) | ivec3(-32, -51, -32) | ivec3(0, 0, 0) ];
3660e5c31af7Sopenharmony_ci		}
3661e5c31af7Sopenharmony_ci
3662e5c31af7Sopenharmony_ci		both ""
3663e5c31af7Sopenharmony_ci			#version 310 es
3664e5c31af7Sopenharmony_ci			precision highp float;
3665e5c31af7Sopenharmony_ci			precision highp int;
3666e5c31af7Sopenharmony_ci
3667e5c31af7Sopenharmony_ci			${DECLARATIONS}
3668e5c31af7Sopenharmony_ci
3669e5c31af7Sopenharmony_ci			void main()
3670e5c31af7Sopenharmony_ci			{
3671e5c31af7Sopenharmony_ci				${SETUP}
3672e5c31af7Sopenharmony_ci				out0 = in0.sps;
3673e5c31af7Sopenharmony_ci				${OUTPUT}
3674e5c31af7Sopenharmony_ci			}
3675e5c31af7Sopenharmony_ci		""
3676e5c31af7Sopenharmony_ci	end
3677e5c31af7Sopenharmony_ci
3678e5c31af7Sopenharmony_ci	case mediump_ivec3_stts
3679e5c31af7Sopenharmony_ci		version 310 es
3680e5c31af7Sopenharmony_ci		values
3681e5c31af7Sopenharmony_ci		{
3682e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3683e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -2, 0) | ivec4(-32, 64, 64, -32) | ivec4(0, 0, 0, 0) ];
3684e5c31af7Sopenharmony_ci		}
3685e5c31af7Sopenharmony_ci
3686e5c31af7Sopenharmony_ci		both ""
3687e5c31af7Sopenharmony_ci			#version 310 es
3688e5c31af7Sopenharmony_ci			precision highp float;
3689e5c31af7Sopenharmony_ci			precision highp int;
3690e5c31af7Sopenharmony_ci
3691e5c31af7Sopenharmony_ci			${DECLARATIONS}
3692e5c31af7Sopenharmony_ci
3693e5c31af7Sopenharmony_ci			void main()
3694e5c31af7Sopenharmony_ci			{
3695e5c31af7Sopenharmony_ci				${SETUP}
3696e5c31af7Sopenharmony_ci				out0 = in0.stts;
3697e5c31af7Sopenharmony_ci				${OUTPUT}
3698e5c31af7Sopenharmony_ci			}
3699e5c31af7Sopenharmony_ci		""
3700e5c31af7Sopenharmony_ci	end
3701e5c31af7Sopenharmony_ci
3702e5c31af7Sopenharmony_ci	case mediump_ivec3_pppp
3703e5c31af7Sopenharmony_ci		version 310 es
3704e5c31af7Sopenharmony_ci		values
3705e5c31af7Sopenharmony_ci		{
3706e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3707e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, -4, -4) | ivec4(-51, -51, -51, -51) | ivec4(0, 0, 0, 0) ];
3708e5c31af7Sopenharmony_ci		}
3709e5c31af7Sopenharmony_ci
3710e5c31af7Sopenharmony_ci		both ""
3711e5c31af7Sopenharmony_ci			#version 310 es
3712e5c31af7Sopenharmony_ci			precision highp float;
3713e5c31af7Sopenharmony_ci			precision highp int;
3714e5c31af7Sopenharmony_ci
3715e5c31af7Sopenharmony_ci			${DECLARATIONS}
3716e5c31af7Sopenharmony_ci
3717e5c31af7Sopenharmony_ci			void main()
3718e5c31af7Sopenharmony_ci			{
3719e5c31af7Sopenharmony_ci				${SETUP}
3720e5c31af7Sopenharmony_ci				out0 = in0.pppp;
3721e5c31af7Sopenharmony_ci				${OUTPUT}
3722e5c31af7Sopenharmony_ci			}
3723e5c31af7Sopenharmony_ci		""
3724e5c31af7Sopenharmony_ci	end
3725e5c31af7Sopenharmony_ci
3726e5c31af7Sopenharmony_ci	case mediump_ivec3_r
3727e5c31af7Sopenharmony_ci		version 310 es
3728e5c31af7Sopenharmony_ci		values
3729e5c31af7Sopenharmony_ci		{
3730e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3731e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
3732e5c31af7Sopenharmony_ci		}
3733e5c31af7Sopenharmony_ci
3734e5c31af7Sopenharmony_ci		both ""
3735e5c31af7Sopenharmony_ci			#version 310 es
3736e5c31af7Sopenharmony_ci			precision highp float;
3737e5c31af7Sopenharmony_ci			precision highp int;
3738e5c31af7Sopenharmony_ci
3739e5c31af7Sopenharmony_ci			${DECLARATIONS}
3740e5c31af7Sopenharmony_ci
3741e5c31af7Sopenharmony_ci			void main()
3742e5c31af7Sopenharmony_ci			{
3743e5c31af7Sopenharmony_ci				${SETUP}
3744e5c31af7Sopenharmony_ci				out0 = in0.r;
3745e5c31af7Sopenharmony_ci				${OUTPUT}
3746e5c31af7Sopenharmony_ci			}
3747e5c31af7Sopenharmony_ci		""
3748e5c31af7Sopenharmony_ci	end
3749e5c31af7Sopenharmony_ci
3750e5c31af7Sopenharmony_ci	case mediump_ivec3_b
3751e5c31af7Sopenharmony_ci		version 310 es
3752e5c31af7Sopenharmony_ci		values
3753e5c31af7Sopenharmony_ci		{
3754e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3755e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | -4 | -51 | 0 ];
3756e5c31af7Sopenharmony_ci		}
3757e5c31af7Sopenharmony_ci
3758e5c31af7Sopenharmony_ci		both ""
3759e5c31af7Sopenharmony_ci			#version 310 es
3760e5c31af7Sopenharmony_ci			precision highp float;
3761e5c31af7Sopenharmony_ci			precision highp int;
3762e5c31af7Sopenharmony_ci
3763e5c31af7Sopenharmony_ci			${DECLARATIONS}
3764e5c31af7Sopenharmony_ci
3765e5c31af7Sopenharmony_ci			void main()
3766e5c31af7Sopenharmony_ci			{
3767e5c31af7Sopenharmony_ci				${SETUP}
3768e5c31af7Sopenharmony_ci				out0 = in0.b;
3769e5c31af7Sopenharmony_ci				${OUTPUT}
3770e5c31af7Sopenharmony_ci			}
3771e5c31af7Sopenharmony_ci		""
3772e5c31af7Sopenharmony_ci	end
3773e5c31af7Sopenharmony_ci
3774e5c31af7Sopenharmony_ci	case mediump_ivec3_rb
3775e5c31af7Sopenharmony_ci		version 310 es
3776e5c31af7Sopenharmony_ci		values
3777e5c31af7Sopenharmony_ci		{
3778e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3779e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -4) | ivec2(-32, -51) | ivec2(0, 0) ];
3780e5c31af7Sopenharmony_ci		}
3781e5c31af7Sopenharmony_ci
3782e5c31af7Sopenharmony_ci		both ""
3783e5c31af7Sopenharmony_ci			#version 310 es
3784e5c31af7Sopenharmony_ci			precision highp float;
3785e5c31af7Sopenharmony_ci			precision highp int;
3786e5c31af7Sopenharmony_ci
3787e5c31af7Sopenharmony_ci			${DECLARATIONS}
3788e5c31af7Sopenharmony_ci
3789e5c31af7Sopenharmony_ci			void main()
3790e5c31af7Sopenharmony_ci			{
3791e5c31af7Sopenharmony_ci				${SETUP}
3792e5c31af7Sopenharmony_ci				out0 = in0.rb;
3793e5c31af7Sopenharmony_ci				${OUTPUT}
3794e5c31af7Sopenharmony_ci			}
3795e5c31af7Sopenharmony_ci		""
3796e5c31af7Sopenharmony_ci	end
3797e5c31af7Sopenharmony_ci
3798e5c31af7Sopenharmony_ci	case mediump_ivec3_bb
3799e5c31af7Sopenharmony_ci		version 310 es
3800e5c31af7Sopenharmony_ci		values
3801e5c31af7Sopenharmony_ci		{
3802e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3803e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(-4, -4) | ivec2(-51, -51) | ivec2(0, 0) ];
3804e5c31af7Sopenharmony_ci		}
3805e5c31af7Sopenharmony_ci
3806e5c31af7Sopenharmony_ci		both ""
3807e5c31af7Sopenharmony_ci			#version 310 es
3808e5c31af7Sopenharmony_ci			precision highp float;
3809e5c31af7Sopenharmony_ci			precision highp int;
3810e5c31af7Sopenharmony_ci
3811e5c31af7Sopenharmony_ci			${DECLARATIONS}
3812e5c31af7Sopenharmony_ci
3813e5c31af7Sopenharmony_ci			void main()
3814e5c31af7Sopenharmony_ci			{
3815e5c31af7Sopenharmony_ci				${SETUP}
3816e5c31af7Sopenharmony_ci				out0 = in0.bb;
3817e5c31af7Sopenharmony_ci				${OUTPUT}
3818e5c31af7Sopenharmony_ci			}
3819e5c31af7Sopenharmony_ci		""
3820e5c31af7Sopenharmony_ci	end
3821e5c31af7Sopenharmony_ci
3822e5c31af7Sopenharmony_ci	case mediump_ivec3_rgb
3823e5c31af7Sopenharmony_ci		version 310 es
3824e5c31af7Sopenharmony_ci		values
3825e5c31af7Sopenharmony_ci		{
3826e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3827e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3828e5c31af7Sopenharmony_ci		}
3829e5c31af7Sopenharmony_ci
3830e5c31af7Sopenharmony_ci		both ""
3831e5c31af7Sopenharmony_ci			#version 310 es
3832e5c31af7Sopenharmony_ci			precision highp float;
3833e5c31af7Sopenharmony_ci			precision highp int;
3834e5c31af7Sopenharmony_ci
3835e5c31af7Sopenharmony_ci			${DECLARATIONS}
3836e5c31af7Sopenharmony_ci
3837e5c31af7Sopenharmony_ci			void main()
3838e5c31af7Sopenharmony_ci			{
3839e5c31af7Sopenharmony_ci				${SETUP}
3840e5c31af7Sopenharmony_ci				out0 = in0.rgb;
3841e5c31af7Sopenharmony_ci				${OUTPUT}
3842e5c31af7Sopenharmony_ci			}
3843e5c31af7Sopenharmony_ci		""
3844e5c31af7Sopenharmony_ci	end
3845e5c31af7Sopenharmony_ci
3846e5c31af7Sopenharmony_ci	case mediump_ivec3_bgr
3847e5c31af7Sopenharmony_ci		version 310 es
3848e5c31af7Sopenharmony_ci		values
3849e5c31af7Sopenharmony_ci		{
3850e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3851e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -2, 0) | ivec3(-51, 64, -32) | ivec3(0, 0, 0) ];
3852e5c31af7Sopenharmony_ci		}
3853e5c31af7Sopenharmony_ci
3854e5c31af7Sopenharmony_ci		both ""
3855e5c31af7Sopenharmony_ci			#version 310 es
3856e5c31af7Sopenharmony_ci			precision highp float;
3857e5c31af7Sopenharmony_ci			precision highp int;
3858e5c31af7Sopenharmony_ci
3859e5c31af7Sopenharmony_ci			${DECLARATIONS}
3860e5c31af7Sopenharmony_ci
3861e5c31af7Sopenharmony_ci			void main()
3862e5c31af7Sopenharmony_ci			{
3863e5c31af7Sopenharmony_ci				${SETUP}
3864e5c31af7Sopenharmony_ci				out0 = in0.bgr;
3865e5c31af7Sopenharmony_ci				${OUTPUT}
3866e5c31af7Sopenharmony_ci			}
3867e5c31af7Sopenharmony_ci		""
3868e5c31af7Sopenharmony_ci	end
3869e5c31af7Sopenharmony_ci
3870e5c31af7Sopenharmony_ci	case mediump_ivec3_rrr
3871e5c31af7Sopenharmony_ci		version 310 es
3872e5c31af7Sopenharmony_ci		values
3873e5c31af7Sopenharmony_ci		{
3874e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3875e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, 0, 0) | ivec3(-32, -32, -32) | ivec3(0, 0, 0) ];
3876e5c31af7Sopenharmony_ci		}
3877e5c31af7Sopenharmony_ci
3878e5c31af7Sopenharmony_ci		both ""
3879e5c31af7Sopenharmony_ci			#version 310 es
3880e5c31af7Sopenharmony_ci			precision highp float;
3881e5c31af7Sopenharmony_ci			precision highp int;
3882e5c31af7Sopenharmony_ci
3883e5c31af7Sopenharmony_ci			${DECLARATIONS}
3884e5c31af7Sopenharmony_ci
3885e5c31af7Sopenharmony_ci			void main()
3886e5c31af7Sopenharmony_ci			{
3887e5c31af7Sopenharmony_ci				${SETUP}
3888e5c31af7Sopenharmony_ci				out0 = in0.rrr;
3889e5c31af7Sopenharmony_ci				${OUTPUT}
3890e5c31af7Sopenharmony_ci			}
3891e5c31af7Sopenharmony_ci		""
3892e5c31af7Sopenharmony_ci	end
3893e5c31af7Sopenharmony_ci
3894e5c31af7Sopenharmony_ci	case mediump_ivec3_bbb
3895e5c31af7Sopenharmony_ci		version 310 es
3896e5c31af7Sopenharmony_ci		values
3897e5c31af7Sopenharmony_ci		{
3898e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3899e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -4) | ivec3(-51, -51, -51) | ivec3(0, 0, 0) ];
3900e5c31af7Sopenharmony_ci		}
3901e5c31af7Sopenharmony_ci
3902e5c31af7Sopenharmony_ci		both ""
3903e5c31af7Sopenharmony_ci			#version 310 es
3904e5c31af7Sopenharmony_ci			precision highp float;
3905e5c31af7Sopenharmony_ci			precision highp int;
3906e5c31af7Sopenharmony_ci
3907e5c31af7Sopenharmony_ci			${DECLARATIONS}
3908e5c31af7Sopenharmony_ci
3909e5c31af7Sopenharmony_ci			void main()
3910e5c31af7Sopenharmony_ci			{
3911e5c31af7Sopenharmony_ci				${SETUP}
3912e5c31af7Sopenharmony_ci				out0 = in0.bbb;
3913e5c31af7Sopenharmony_ci				${OUTPUT}
3914e5c31af7Sopenharmony_ci			}
3915e5c31af7Sopenharmony_ci		""
3916e5c31af7Sopenharmony_ci	end
3917e5c31af7Sopenharmony_ci
3918e5c31af7Sopenharmony_ci	case mediump_ivec3_bbg
3919e5c31af7Sopenharmony_ci		version 310 es
3920e5c31af7Sopenharmony_ci		values
3921e5c31af7Sopenharmony_ci		{
3922e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3923e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-4, -4, -2) | ivec3(-51, -51, 64) | ivec3(0, 0, 0) ];
3924e5c31af7Sopenharmony_ci		}
3925e5c31af7Sopenharmony_ci
3926e5c31af7Sopenharmony_ci		both ""
3927e5c31af7Sopenharmony_ci			#version 310 es
3928e5c31af7Sopenharmony_ci			precision highp float;
3929e5c31af7Sopenharmony_ci			precision highp int;
3930e5c31af7Sopenharmony_ci
3931e5c31af7Sopenharmony_ci			${DECLARATIONS}
3932e5c31af7Sopenharmony_ci
3933e5c31af7Sopenharmony_ci			void main()
3934e5c31af7Sopenharmony_ci			{
3935e5c31af7Sopenharmony_ci				${SETUP}
3936e5c31af7Sopenharmony_ci				out0 = in0.bbg;
3937e5c31af7Sopenharmony_ci				${OUTPUT}
3938e5c31af7Sopenharmony_ci			}
3939e5c31af7Sopenharmony_ci		""
3940e5c31af7Sopenharmony_ci	end
3941e5c31af7Sopenharmony_ci
3942e5c31af7Sopenharmony_ci	case mediump_ivec3_grg
3943e5c31af7Sopenharmony_ci		version 310 es
3944e5c31af7Sopenharmony_ci		values
3945e5c31af7Sopenharmony_ci		{
3946e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3947e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, 0, -2) | ivec3(64, -32, 64) | ivec3(0, 0, 0) ];
3948e5c31af7Sopenharmony_ci		}
3949e5c31af7Sopenharmony_ci
3950e5c31af7Sopenharmony_ci		both ""
3951e5c31af7Sopenharmony_ci			#version 310 es
3952e5c31af7Sopenharmony_ci			precision highp float;
3953e5c31af7Sopenharmony_ci			precision highp int;
3954e5c31af7Sopenharmony_ci
3955e5c31af7Sopenharmony_ci			${DECLARATIONS}
3956e5c31af7Sopenharmony_ci
3957e5c31af7Sopenharmony_ci			void main()
3958e5c31af7Sopenharmony_ci			{
3959e5c31af7Sopenharmony_ci				${SETUP}
3960e5c31af7Sopenharmony_ci				out0 = in0.grg;
3961e5c31af7Sopenharmony_ci				${OUTPUT}
3962e5c31af7Sopenharmony_ci			}
3963e5c31af7Sopenharmony_ci		""
3964e5c31af7Sopenharmony_ci	end
3965e5c31af7Sopenharmony_ci
3966e5c31af7Sopenharmony_ci	case mediump_ivec3_rbr
3967e5c31af7Sopenharmony_ci		version 310 es
3968e5c31af7Sopenharmony_ci		values
3969e5c31af7Sopenharmony_ci		{
3970e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3971e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -4, 0) | ivec3(-32, -51, -32) | ivec3(0, 0, 0) ];
3972e5c31af7Sopenharmony_ci		}
3973e5c31af7Sopenharmony_ci
3974e5c31af7Sopenharmony_ci		both ""
3975e5c31af7Sopenharmony_ci			#version 310 es
3976e5c31af7Sopenharmony_ci			precision highp float;
3977e5c31af7Sopenharmony_ci			precision highp int;
3978e5c31af7Sopenharmony_ci
3979e5c31af7Sopenharmony_ci			${DECLARATIONS}
3980e5c31af7Sopenharmony_ci
3981e5c31af7Sopenharmony_ci			void main()
3982e5c31af7Sopenharmony_ci			{
3983e5c31af7Sopenharmony_ci				${SETUP}
3984e5c31af7Sopenharmony_ci				out0 = in0.rbr;
3985e5c31af7Sopenharmony_ci				${OUTPUT}
3986e5c31af7Sopenharmony_ci			}
3987e5c31af7Sopenharmony_ci		""
3988e5c31af7Sopenharmony_ci	end
3989e5c31af7Sopenharmony_ci
3990e5c31af7Sopenharmony_ci	case mediump_ivec3_rggr
3991e5c31af7Sopenharmony_ci		version 310 es
3992e5c31af7Sopenharmony_ci		values
3993e5c31af7Sopenharmony_ci		{
3994e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
3995e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -2, 0) | ivec4(-32, 64, 64, -32) | ivec4(0, 0, 0, 0) ];
3996e5c31af7Sopenharmony_ci		}
3997e5c31af7Sopenharmony_ci
3998e5c31af7Sopenharmony_ci		both ""
3999e5c31af7Sopenharmony_ci			#version 310 es
4000e5c31af7Sopenharmony_ci			precision highp float;
4001e5c31af7Sopenharmony_ci			precision highp int;
4002e5c31af7Sopenharmony_ci
4003e5c31af7Sopenharmony_ci			${DECLARATIONS}
4004e5c31af7Sopenharmony_ci
4005e5c31af7Sopenharmony_ci			void main()
4006e5c31af7Sopenharmony_ci			{
4007e5c31af7Sopenharmony_ci				${SETUP}
4008e5c31af7Sopenharmony_ci				out0 = in0.rggr;
4009e5c31af7Sopenharmony_ci				${OUTPUT}
4010e5c31af7Sopenharmony_ci			}
4011e5c31af7Sopenharmony_ci		""
4012e5c31af7Sopenharmony_ci	end
4013e5c31af7Sopenharmony_ci
4014e5c31af7Sopenharmony_ci	case mediump_ivec3_bbbb
4015e5c31af7Sopenharmony_ci		version 310 es
4016e5c31af7Sopenharmony_ci		values
4017e5c31af7Sopenharmony_ci		{
4018e5c31af7Sopenharmony_ci			input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
4019e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, -4, -4) | ivec4(-51, -51, -51, -51) | ivec4(0, 0, 0, 0) ];
4020e5c31af7Sopenharmony_ci		}
4021e5c31af7Sopenharmony_ci
4022e5c31af7Sopenharmony_ci		both ""
4023e5c31af7Sopenharmony_ci			#version 310 es
4024e5c31af7Sopenharmony_ci			precision highp float;
4025e5c31af7Sopenharmony_ci			precision highp int;
4026e5c31af7Sopenharmony_ci
4027e5c31af7Sopenharmony_ci			${DECLARATIONS}
4028e5c31af7Sopenharmony_ci
4029e5c31af7Sopenharmony_ci			void main()
4030e5c31af7Sopenharmony_ci			{
4031e5c31af7Sopenharmony_ci				${SETUP}
4032e5c31af7Sopenharmony_ci				out0 = in0.bbbb;
4033e5c31af7Sopenharmony_ci				${OUTPUT}
4034e5c31af7Sopenharmony_ci			}
4035e5c31af7Sopenharmony_ci		""
4036e5c31af7Sopenharmony_ci	end
4037e5c31af7Sopenharmony_ci
4038e5c31af7Sopenharmony_ci	case mediump_ivec4_x
4039e5c31af7Sopenharmony_ci		version 310 es
4040e5c31af7Sopenharmony_ci		values
4041e5c31af7Sopenharmony_ci		{
4042e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4043e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
4044e5c31af7Sopenharmony_ci		}
4045e5c31af7Sopenharmony_ci
4046e5c31af7Sopenharmony_ci		both ""
4047e5c31af7Sopenharmony_ci			#version 310 es
4048e5c31af7Sopenharmony_ci			precision highp float;
4049e5c31af7Sopenharmony_ci			precision highp int;
4050e5c31af7Sopenharmony_ci
4051e5c31af7Sopenharmony_ci			${DECLARATIONS}
4052e5c31af7Sopenharmony_ci
4053e5c31af7Sopenharmony_ci			void main()
4054e5c31af7Sopenharmony_ci			{
4055e5c31af7Sopenharmony_ci				${SETUP}
4056e5c31af7Sopenharmony_ci				out0 = in0.x;
4057e5c31af7Sopenharmony_ci				${OUTPUT}
4058e5c31af7Sopenharmony_ci			}
4059e5c31af7Sopenharmony_ci		""
4060e5c31af7Sopenharmony_ci	end
4061e5c31af7Sopenharmony_ci
4062e5c31af7Sopenharmony_ci	case mediump_ivec4_w
4063e5c31af7Sopenharmony_ci		version 310 es
4064e5c31af7Sopenharmony_ci		values
4065e5c31af7Sopenharmony_ci		{
4066e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4067e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 9 | 24 | 0 ];
4068e5c31af7Sopenharmony_ci		}
4069e5c31af7Sopenharmony_ci
4070e5c31af7Sopenharmony_ci		both ""
4071e5c31af7Sopenharmony_ci			#version 310 es
4072e5c31af7Sopenharmony_ci			precision highp float;
4073e5c31af7Sopenharmony_ci			precision highp int;
4074e5c31af7Sopenharmony_ci
4075e5c31af7Sopenharmony_ci			${DECLARATIONS}
4076e5c31af7Sopenharmony_ci
4077e5c31af7Sopenharmony_ci			void main()
4078e5c31af7Sopenharmony_ci			{
4079e5c31af7Sopenharmony_ci				${SETUP}
4080e5c31af7Sopenharmony_ci				out0 = in0.w;
4081e5c31af7Sopenharmony_ci				${OUTPUT}
4082e5c31af7Sopenharmony_ci			}
4083e5c31af7Sopenharmony_ci		""
4084e5c31af7Sopenharmony_ci	end
4085e5c31af7Sopenharmony_ci
4086e5c31af7Sopenharmony_ci	case mediump_ivec4_wx
4087e5c31af7Sopenharmony_ci		version 310 es
4088e5c31af7Sopenharmony_ci		values
4089e5c31af7Sopenharmony_ci		{
4090e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4091e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, 0) | ivec2(24, -32) | ivec2(0, 0) ];
4092e5c31af7Sopenharmony_ci		}
4093e5c31af7Sopenharmony_ci
4094e5c31af7Sopenharmony_ci		both ""
4095e5c31af7Sopenharmony_ci			#version 310 es
4096e5c31af7Sopenharmony_ci			precision highp float;
4097e5c31af7Sopenharmony_ci			precision highp int;
4098e5c31af7Sopenharmony_ci
4099e5c31af7Sopenharmony_ci			${DECLARATIONS}
4100e5c31af7Sopenharmony_ci
4101e5c31af7Sopenharmony_ci			void main()
4102e5c31af7Sopenharmony_ci			{
4103e5c31af7Sopenharmony_ci				${SETUP}
4104e5c31af7Sopenharmony_ci				out0 = in0.wx;
4105e5c31af7Sopenharmony_ci				${OUTPUT}
4106e5c31af7Sopenharmony_ci			}
4107e5c31af7Sopenharmony_ci		""
4108e5c31af7Sopenharmony_ci	end
4109e5c31af7Sopenharmony_ci
4110e5c31af7Sopenharmony_ci	case mediump_ivec4_wz
4111e5c31af7Sopenharmony_ci		version 310 es
4112e5c31af7Sopenharmony_ci		values
4113e5c31af7Sopenharmony_ci		{
4114e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4115e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, -4) | ivec2(24, -51) | ivec2(0, 0) ];
4116e5c31af7Sopenharmony_ci		}
4117e5c31af7Sopenharmony_ci
4118e5c31af7Sopenharmony_ci		both ""
4119e5c31af7Sopenharmony_ci			#version 310 es
4120e5c31af7Sopenharmony_ci			precision highp float;
4121e5c31af7Sopenharmony_ci			precision highp int;
4122e5c31af7Sopenharmony_ci
4123e5c31af7Sopenharmony_ci			${DECLARATIONS}
4124e5c31af7Sopenharmony_ci
4125e5c31af7Sopenharmony_ci			void main()
4126e5c31af7Sopenharmony_ci			{
4127e5c31af7Sopenharmony_ci				${SETUP}
4128e5c31af7Sopenharmony_ci				out0 = in0.wz;
4129e5c31af7Sopenharmony_ci				${OUTPUT}
4130e5c31af7Sopenharmony_ci			}
4131e5c31af7Sopenharmony_ci		""
4132e5c31af7Sopenharmony_ci	end
4133e5c31af7Sopenharmony_ci
4134e5c31af7Sopenharmony_ci	case mediump_ivec4_www
4135e5c31af7Sopenharmony_ci		version 310 es
4136e5c31af7Sopenharmony_ci		values
4137e5c31af7Sopenharmony_ci		{
4138e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4139e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, 9, 9) | ivec3(24, 24, 24) | ivec3(0, 0, 0) ];
4140e5c31af7Sopenharmony_ci		}
4141e5c31af7Sopenharmony_ci
4142e5c31af7Sopenharmony_ci		both ""
4143e5c31af7Sopenharmony_ci			#version 310 es
4144e5c31af7Sopenharmony_ci			precision highp float;
4145e5c31af7Sopenharmony_ci			precision highp int;
4146e5c31af7Sopenharmony_ci
4147e5c31af7Sopenharmony_ci			${DECLARATIONS}
4148e5c31af7Sopenharmony_ci
4149e5c31af7Sopenharmony_ci			void main()
4150e5c31af7Sopenharmony_ci			{
4151e5c31af7Sopenharmony_ci				${SETUP}
4152e5c31af7Sopenharmony_ci				out0 = in0.www;
4153e5c31af7Sopenharmony_ci				${OUTPUT}
4154e5c31af7Sopenharmony_ci			}
4155e5c31af7Sopenharmony_ci		""
4156e5c31af7Sopenharmony_ci	end
4157e5c31af7Sopenharmony_ci
4158e5c31af7Sopenharmony_ci	case mediump_ivec4_yyw
4159e5c31af7Sopenharmony_ci		version 310 es
4160e5c31af7Sopenharmony_ci		values
4161e5c31af7Sopenharmony_ci		{
4162e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4163e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, -2, 9) | ivec3(64, 64, 24) | ivec3(0, 0, 0) ];
4164e5c31af7Sopenharmony_ci		}
4165e5c31af7Sopenharmony_ci
4166e5c31af7Sopenharmony_ci		both ""
4167e5c31af7Sopenharmony_ci			#version 310 es
4168e5c31af7Sopenharmony_ci			precision highp float;
4169e5c31af7Sopenharmony_ci			precision highp int;
4170e5c31af7Sopenharmony_ci
4171e5c31af7Sopenharmony_ci			${DECLARATIONS}
4172e5c31af7Sopenharmony_ci
4173e5c31af7Sopenharmony_ci			void main()
4174e5c31af7Sopenharmony_ci			{
4175e5c31af7Sopenharmony_ci				${SETUP}
4176e5c31af7Sopenharmony_ci				out0 = in0.yyw;
4177e5c31af7Sopenharmony_ci				${OUTPUT}
4178e5c31af7Sopenharmony_ci			}
4179e5c31af7Sopenharmony_ci		""
4180e5c31af7Sopenharmony_ci	end
4181e5c31af7Sopenharmony_ci
4182e5c31af7Sopenharmony_ci	case mediump_ivec4_wzy
4183e5c31af7Sopenharmony_ci		version 310 es
4184e5c31af7Sopenharmony_ci		values
4185e5c31af7Sopenharmony_ci		{
4186e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4187e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, -4, -2) | ivec3(24, -51, 64) | ivec3(0, 0, 0) ];
4188e5c31af7Sopenharmony_ci		}
4189e5c31af7Sopenharmony_ci
4190e5c31af7Sopenharmony_ci		both ""
4191e5c31af7Sopenharmony_ci			#version 310 es
4192e5c31af7Sopenharmony_ci			precision highp float;
4193e5c31af7Sopenharmony_ci			precision highp int;
4194e5c31af7Sopenharmony_ci
4195e5c31af7Sopenharmony_ci			${DECLARATIONS}
4196e5c31af7Sopenharmony_ci
4197e5c31af7Sopenharmony_ci			void main()
4198e5c31af7Sopenharmony_ci			{
4199e5c31af7Sopenharmony_ci				${SETUP}
4200e5c31af7Sopenharmony_ci				out0 = in0.wzy;
4201e5c31af7Sopenharmony_ci				${OUTPUT}
4202e5c31af7Sopenharmony_ci			}
4203e5c31af7Sopenharmony_ci		""
4204e5c31af7Sopenharmony_ci	end
4205e5c31af7Sopenharmony_ci
4206e5c31af7Sopenharmony_ci	case mediump_ivec4_xyzw
4207e5c31af7Sopenharmony_ci		version 310 es
4208e5c31af7Sopenharmony_ci		values
4209e5c31af7Sopenharmony_ci		{
4210e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4211e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4212e5c31af7Sopenharmony_ci		}
4213e5c31af7Sopenharmony_ci
4214e5c31af7Sopenharmony_ci		both ""
4215e5c31af7Sopenharmony_ci			#version 310 es
4216e5c31af7Sopenharmony_ci			precision highp float;
4217e5c31af7Sopenharmony_ci			precision highp int;
4218e5c31af7Sopenharmony_ci
4219e5c31af7Sopenharmony_ci			${DECLARATIONS}
4220e5c31af7Sopenharmony_ci
4221e5c31af7Sopenharmony_ci			void main()
4222e5c31af7Sopenharmony_ci			{
4223e5c31af7Sopenharmony_ci				${SETUP}
4224e5c31af7Sopenharmony_ci				out0 = in0.xyzw;
4225e5c31af7Sopenharmony_ci				${OUTPUT}
4226e5c31af7Sopenharmony_ci			}
4227e5c31af7Sopenharmony_ci		""
4228e5c31af7Sopenharmony_ci	end
4229e5c31af7Sopenharmony_ci
4230e5c31af7Sopenharmony_ci	case mediump_ivec4_wzyx
4231e5c31af7Sopenharmony_ci		version 310 es
4232e5c31af7Sopenharmony_ci		values
4233e5c31af7Sopenharmony_ci		{
4234e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4235e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -2, 0) | ivec4(24, -51, 64, -32) | ivec4(0, 0, 0, 0) ];
4236e5c31af7Sopenharmony_ci		}
4237e5c31af7Sopenharmony_ci
4238e5c31af7Sopenharmony_ci		both ""
4239e5c31af7Sopenharmony_ci			#version 310 es
4240e5c31af7Sopenharmony_ci			precision highp float;
4241e5c31af7Sopenharmony_ci			precision highp int;
4242e5c31af7Sopenharmony_ci
4243e5c31af7Sopenharmony_ci			${DECLARATIONS}
4244e5c31af7Sopenharmony_ci
4245e5c31af7Sopenharmony_ci			void main()
4246e5c31af7Sopenharmony_ci			{
4247e5c31af7Sopenharmony_ci				${SETUP}
4248e5c31af7Sopenharmony_ci				out0 = in0.wzyx;
4249e5c31af7Sopenharmony_ci				${OUTPUT}
4250e5c31af7Sopenharmony_ci			}
4251e5c31af7Sopenharmony_ci		""
4252e5c31af7Sopenharmony_ci	end
4253e5c31af7Sopenharmony_ci
4254e5c31af7Sopenharmony_ci	case mediump_ivec4_xxxx
4255e5c31af7Sopenharmony_ci		version 310 es
4256e5c31af7Sopenharmony_ci		values
4257e5c31af7Sopenharmony_ci		{
4258e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4259e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) | ivec4(-32, -32, -32, -32) | ivec4(0, 0, 0, 0) ];
4260e5c31af7Sopenharmony_ci		}
4261e5c31af7Sopenharmony_ci
4262e5c31af7Sopenharmony_ci		both ""
4263e5c31af7Sopenharmony_ci			#version 310 es
4264e5c31af7Sopenharmony_ci			precision highp float;
4265e5c31af7Sopenharmony_ci			precision highp int;
4266e5c31af7Sopenharmony_ci
4267e5c31af7Sopenharmony_ci			${DECLARATIONS}
4268e5c31af7Sopenharmony_ci
4269e5c31af7Sopenharmony_ci			void main()
4270e5c31af7Sopenharmony_ci			{
4271e5c31af7Sopenharmony_ci				${SETUP}
4272e5c31af7Sopenharmony_ci				out0 = in0.xxxx;
4273e5c31af7Sopenharmony_ci				${OUTPUT}
4274e5c31af7Sopenharmony_ci			}
4275e5c31af7Sopenharmony_ci		""
4276e5c31af7Sopenharmony_ci	end
4277e5c31af7Sopenharmony_ci
4278e5c31af7Sopenharmony_ci	case mediump_ivec4_yyyy
4279e5c31af7Sopenharmony_ci		version 310 es
4280e5c31af7Sopenharmony_ci		values
4281e5c31af7Sopenharmony_ci		{
4282e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4283e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
4284e5c31af7Sopenharmony_ci		}
4285e5c31af7Sopenharmony_ci
4286e5c31af7Sopenharmony_ci		both ""
4287e5c31af7Sopenharmony_ci			#version 310 es
4288e5c31af7Sopenharmony_ci			precision highp float;
4289e5c31af7Sopenharmony_ci			precision highp int;
4290e5c31af7Sopenharmony_ci
4291e5c31af7Sopenharmony_ci			${DECLARATIONS}
4292e5c31af7Sopenharmony_ci
4293e5c31af7Sopenharmony_ci			void main()
4294e5c31af7Sopenharmony_ci			{
4295e5c31af7Sopenharmony_ci				${SETUP}
4296e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
4297e5c31af7Sopenharmony_ci				${OUTPUT}
4298e5c31af7Sopenharmony_ci			}
4299e5c31af7Sopenharmony_ci		""
4300e5c31af7Sopenharmony_ci	end
4301e5c31af7Sopenharmony_ci
4302e5c31af7Sopenharmony_ci	case mediump_ivec4_wwww
4303e5c31af7Sopenharmony_ci		version 310 es
4304e5c31af7Sopenharmony_ci		values
4305e5c31af7Sopenharmony_ci		{
4306e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4307e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, 9) | ivec4(24, 24, 24, 24) | ivec4(0, 0, 0, 0) ];
4308e5c31af7Sopenharmony_ci		}
4309e5c31af7Sopenharmony_ci
4310e5c31af7Sopenharmony_ci		both ""
4311e5c31af7Sopenharmony_ci			#version 310 es
4312e5c31af7Sopenharmony_ci			precision highp float;
4313e5c31af7Sopenharmony_ci			precision highp int;
4314e5c31af7Sopenharmony_ci
4315e5c31af7Sopenharmony_ci			${DECLARATIONS}
4316e5c31af7Sopenharmony_ci
4317e5c31af7Sopenharmony_ci			void main()
4318e5c31af7Sopenharmony_ci			{
4319e5c31af7Sopenharmony_ci				${SETUP}
4320e5c31af7Sopenharmony_ci				out0 = in0.wwww;
4321e5c31af7Sopenharmony_ci				${OUTPUT}
4322e5c31af7Sopenharmony_ci			}
4323e5c31af7Sopenharmony_ci		""
4324e5c31af7Sopenharmony_ci	end
4325e5c31af7Sopenharmony_ci
4326e5c31af7Sopenharmony_ci	case mediump_ivec4_wzzw
4327e5c31af7Sopenharmony_ci		version 310 es
4328e5c31af7Sopenharmony_ci		values
4329e5c31af7Sopenharmony_ci		{
4330e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4331e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -4, 9) | ivec4(24, -51, -51, 24) | ivec4(0, 0, 0, 0) ];
4332e5c31af7Sopenharmony_ci		}
4333e5c31af7Sopenharmony_ci
4334e5c31af7Sopenharmony_ci		both ""
4335e5c31af7Sopenharmony_ci			#version 310 es
4336e5c31af7Sopenharmony_ci			precision highp float;
4337e5c31af7Sopenharmony_ci			precision highp int;
4338e5c31af7Sopenharmony_ci
4339e5c31af7Sopenharmony_ci			${DECLARATIONS}
4340e5c31af7Sopenharmony_ci
4341e5c31af7Sopenharmony_ci			void main()
4342e5c31af7Sopenharmony_ci			{
4343e5c31af7Sopenharmony_ci				${SETUP}
4344e5c31af7Sopenharmony_ci				out0 = in0.wzzw;
4345e5c31af7Sopenharmony_ci				${OUTPUT}
4346e5c31af7Sopenharmony_ci			}
4347e5c31af7Sopenharmony_ci		""
4348e5c31af7Sopenharmony_ci	end
4349e5c31af7Sopenharmony_ci
4350e5c31af7Sopenharmony_ci	case mediump_ivec4_wwwy
4351e5c31af7Sopenharmony_ci		version 310 es
4352e5c31af7Sopenharmony_ci		values
4353e5c31af7Sopenharmony_ci		{
4354e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4355e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, -2) | ivec4(24, 24, 24, 64) | ivec4(0, 0, 0, 0) ];
4356e5c31af7Sopenharmony_ci		}
4357e5c31af7Sopenharmony_ci
4358e5c31af7Sopenharmony_ci		both ""
4359e5c31af7Sopenharmony_ci			#version 310 es
4360e5c31af7Sopenharmony_ci			precision highp float;
4361e5c31af7Sopenharmony_ci			precision highp int;
4362e5c31af7Sopenharmony_ci
4363e5c31af7Sopenharmony_ci			${DECLARATIONS}
4364e5c31af7Sopenharmony_ci
4365e5c31af7Sopenharmony_ci			void main()
4366e5c31af7Sopenharmony_ci			{
4367e5c31af7Sopenharmony_ci				${SETUP}
4368e5c31af7Sopenharmony_ci				out0 = in0.wwwy;
4369e5c31af7Sopenharmony_ci				${OUTPUT}
4370e5c31af7Sopenharmony_ci			}
4371e5c31af7Sopenharmony_ci		""
4372e5c31af7Sopenharmony_ci	end
4373e5c31af7Sopenharmony_ci
4374e5c31af7Sopenharmony_ci	case mediump_ivec4_xyxx
4375e5c31af7Sopenharmony_ci		version 310 es
4376e5c31af7Sopenharmony_ci		values
4377e5c31af7Sopenharmony_ci		{
4378e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4379e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
4380e5c31af7Sopenharmony_ci		}
4381e5c31af7Sopenharmony_ci
4382e5c31af7Sopenharmony_ci		both ""
4383e5c31af7Sopenharmony_ci			#version 310 es
4384e5c31af7Sopenharmony_ci			precision highp float;
4385e5c31af7Sopenharmony_ci			precision highp int;
4386e5c31af7Sopenharmony_ci
4387e5c31af7Sopenharmony_ci			${DECLARATIONS}
4388e5c31af7Sopenharmony_ci
4389e5c31af7Sopenharmony_ci			void main()
4390e5c31af7Sopenharmony_ci			{
4391e5c31af7Sopenharmony_ci				${SETUP}
4392e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
4393e5c31af7Sopenharmony_ci				${OUTPUT}
4394e5c31af7Sopenharmony_ci			}
4395e5c31af7Sopenharmony_ci		""
4396e5c31af7Sopenharmony_ci	end
4397e5c31af7Sopenharmony_ci
4398e5c31af7Sopenharmony_ci	case mediump_ivec4_zzwz
4399e5c31af7Sopenharmony_ci		version 310 es
4400e5c31af7Sopenharmony_ci		values
4401e5c31af7Sopenharmony_ci		{
4402e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4403e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, 9, -4) | ivec4(-51, -51, 24, -51) | ivec4(0, 0, 0, 0) ];
4404e5c31af7Sopenharmony_ci		}
4405e5c31af7Sopenharmony_ci
4406e5c31af7Sopenharmony_ci		both ""
4407e5c31af7Sopenharmony_ci			#version 310 es
4408e5c31af7Sopenharmony_ci			precision highp float;
4409e5c31af7Sopenharmony_ci			precision highp int;
4410e5c31af7Sopenharmony_ci
4411e5c31af7Sopenharmony_ci			${DECLARATIONS}
4412e5c31af7Sopenharmony_ci
4413e5c31af7Sopenharmony_ci			void main()
4414e5c31af7Sopenharmony_ci			{
4415e5c31af7Sopenharmony_ci				${SETUP}
4416e5c31af7Sopenharmony_ci				out0 = in0.zzwz;
4417e5c31af7Sopenharmony_ci				${OUTPUT}
4418e5c31af7Sopenharmony_ci			}
4419e5c31af7Sopenharmony_ci		""
4420e5c31af7Sopenharmony_ci	end
4421e5c31af7Sopenharmony_ci
4422e5c31af7Sopenharmony_ci	case mediump_ivec4_s
4423e5c31af7Sopenharmony_ci		version 310 es
4424e5c31af7Sopenharmony_ci		values
4425e5c31af7Sopenharmony_ci		{
4426e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4427e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
4428e5c31af7Sopenharmony_ci		}
4429e5c31af7Sopenharmony_ci
4430e5c31af7Sopenharmony_ci		both ""
4431e5c31af7Sopenharmony_ci			#version 310 es
4432e5c31af7Sopenharmony_ci			precision highp float;
4433e5c31af7Sopenharmony_ci			precision highp int;
4434e5c31af7Sopenharmony_ci
4435e5c31af7Sopenharmony_ci			${DECLARATIONS}
4436e5c31af7Sopenharmony_ci
4437e5c31af7Sopenharmony_ci			void main()
4438e5c31af7Sopenharmony_ci			{
4439e5c31af7Sopenharmony_ci				${SETUP}
4440e5c31af7Sopenharmony_ci				out0 = in0.s;
4441e5c31af7Sopenharmony_ci				${OUTPUT}
4442e5c31af7Sopenharmony_ci			}
4443e5c31af7Sopenharmony_ci		""
4444e5c31af7Sopenharmony_ci	end
4445e5c31af7Sopenharmony_ci
4446e5c31af7Sopenharmony_ci	case mediump_ivec4_q
4447e5c31af7Sopenharmony_ci		version 310 es
4448e5c31af7Sopenharmony_ci		values
4449e5c31af7Sopenharmony_ci		{
4450e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4451e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 9 | 24 | 0 ];
4452e5c31af7Sopenharmony_ci		}
4453e5c31af7Sopenharmony_ci
4454e5c31af7Sopenharmony_ci		both ""
4455e5c31af7Sopenharmony_ci			#version 310 es
4456e5c31af7Sopenharmony_ci			precision highp float;
4457e5c31af7Sopenharmony_ci			precision highp int;
4458e5c31af7Sopenharmony_ci
4459e5c31af7Sopenharmony_ci			${DECLARATIONS}
4460e5c31af7Sopenharmony_ci
4461e5c31af7Sopenharmony_ci			void main()
4462e5c31af7Sopenharmony_ci			{
4463e5c31af7Sopenharmony_ci				${SETUP}
4464e5c31af7Sopenharmony_ci				out0 = in0.q;
4465e5c31af7Sopenharmony_ci				${OUTPUT}
4466e5c31af7Sopenharmony_ci			}
4467e5c31af7Sopenharmony_ci		""
4468e5c31af7Sopenharmony_ci	end
4469e5c31af7Sopenharmony_ci
4470e5c31af7Sopenharmony_ci	case mediump_ivec4_qs
4471e5c31af7Sopenharmony_ci		version 310 es
4472e5c31af7Sopenharmony_ci		values
4473e5c31af7Sopenharmony_ci		{
4474e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4475e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, 0) | ivec2(24, -32) | ivec2(0, 0) ];
4476e5c31af7Sopenharmony_ci		}
4477e5c31af7Sopenharmony_ci
4478e5c31af7Sopenharmony_ci		both ""
4479e5c31af7Sopenharmony_ci			#version 310 es
4480e5c31af7Sopenharmony_ci			precision highp float;
4481e5c31af7Sopenharmony_ci			precision highp int;
4482e5c31af7Sopenharmony_ci
4483e5c31af7Sopenharmony_ci			${DECLARATIONS}
4484e5c31af7Sopenharmony_ci
4485e5c31af7Sopenharmony_ci			void main()
4486e5c31af7Sopenharmony_ci			{
4487e5c31af7Sopenharmony_ci				${SETUP}
4488e5c31af7Sopenharmony_ci				out0 = in0.qs;
4489e5c31af7Sopenharmony_ci				${OUTPUT}
4490e5c31af7Sopenharmony_ci			}
4491e5c31af7Sopenharmony_ci		""
4492e5c31af7Sopenharmony_ci	end
4493e5c31af7Sopenharmony_ci
4494e5c31af7Sopenharmony_ci	case mediump_ivec4_qp
4495e5c31af7Sopenharmony_ci		version 310 es
4496e5c31af7Sopenharmony_ci		values
4497e5c31af7Sopenharmony_ci		{
4498e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4499e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, -4) | ivec2(24, -51) | ivec2(0, 0) ];
4500e5c31af7Sopenharmony_ci		}
4501e5c31af7Sopenharmony_ci
4502e5c31af7Sopenharmony_ci		both ""
4503e5c31af7Sopenharmony_ci			#version 310 es
4504e5c31af7Sopenharmony_ci			precision highp float;
4505e5c31af7Sopenharmony_ci			precision highp int;
4506e5c31af7Sopenharmony_ci
4507e5c31af7Sopenharmony_ci			${DECLARATIONS}
4508e5c31af7Sopenharmony_ci
4509e5c31af7Sopenharmony_ci			void main()
4510e5c31af7Sopenharmony_ci			{
4511e5c31af7Sopenharmony_ci				${SETUP}
4512e5c31af7Sopenharmony_ci				out0 = in0.qp;
4513e5c31af7Sopenharmony_ci				${OUTPUT}
4514e5c31af7Sopenharmony_ci			}
4515e5c31af7Sopenharmony_ci		""
4516e5c31af7Sopenharmony_ci	end
4517e5c31af7Sopenharmony_ci
4518e5c31af7Sopenharmony_ci	case mediump_ivec4_qqq
4519e5c31af7Sopenharmony_ci		version 310 es
4520e5c31af7Sopenharmony_ci		values
4521e5c31af7Sopenharmony_ci		{
4522e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4523e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, 9, 9) | ivec3(24, 24, 24) | ivec3(0, 0, 0) ];
4524e5c31af7Sopenharmony_ci		}
4525e5c31af7Sopenharmony_ci
4526e5c31af7Sopenharmony_ci		both ""
4527e5c31af7Sopenharmony_ci			#version 310 es
4528e5c31af7Sopenharmony_ci			precision highp float;
4529e5c31af7Sopenharmony_ci			precision highp int;
4530e5c31af7Sopenharmony_ci
4531e5c31af7Sopenharmony_ci			${DECLARATIONS}
4532e5c31af7Sopenharmony_ci
4533e5c31af7Sopenharmony_ci			void main()
4534e5c31af7Sopenharmony_ci			{
4535e5c31af7Sopenharmony_ci				${SETUP}
4536e5c31af7Sopenharmony_ci				out0 = in0.qqq;
4537e5c31af7Sopenharmony_ci				${OUTPUT}
4538e5c31af7Sopenharmony_ci			}
4539e5c31af7Sopenharmony_ci		""
4540e5c31af7Sopenharmony_ci	end
4541e5c31af7Sopenharmony_ci
4542e5c31af7Sopenharmony_ci	case mediump_ivec4_ttq
4543e5c31af7Sopenharmony_ci		version 310 es
4544e5c31af7Sopenharmony_ci		values
4545e5c31af7Sopenharmony_ci		{
4546e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4547e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, -2, 9) | ivec3(64, 64, 24) | ivec3(0, 0, 0) ];
4548e5c31af7Sopenharmony_ci		}
4549e5c31af7Sopenharmony_ci
4550e5c31af7Sopenharmony_ci		both ""
4551e5c31af7Sopenharmony_ci			#version 310 es
4552e5c31af7Sopenharmony_ci			precision highp float;
4553e5c31af7Sopenharmony_ci			precision highp int;
4554e5c31af7Sopenharmony_ci
4555e5c31af7Sopenharmony_ci			${DECLARATIONS}
4556e5c31af7Sopenharmony_ci
4557e5c31af7Sopenharmony_ci			void main()
4558e5c31af7Sopenharmony_ci			{
4559e5c31af7Sopenharmony_ci				${SETUP}
4560e5c31af7Sopenharmony_ci				out0 = in0.ttq;
4561e5c31af7Sopenharmony_ci				${OUTPUT}
4562e5c31af7Sopenharmony_ci			}
4563e5c31af7Sopenharmony_ci		""
4564e5c31af7Sopenharmony_ci	end
4565e5c31af7Sopenharmony_ci
4566e5c31af7Sopenharmony_ci	case mediump_ivec4_qpt
4567e5c31af7Sopenharmony_ci		version 310 es
4568e5c31af7Sopenharmony_ci		values
4569e5c31af7Sopenharmony_ci		{
4570e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4571e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, -4, -2) | ivec3(24, -51, 64) | ivec3(0, 0, 0) ];
4572e5c31af7Sopenharmony_ci		}
4573e5c31af7Sopenharmony_ci
4574e5c31af7Sopenharmony_ci		both ""
4575e5c31af7Sopenharmony_ci			#version 310 es
4576e5c31af7Sopenharmony_ci			precision highp float;
4577e5c31af7Sopenharmony_ci			precision highp int;
4578e5c31af7Sopenharmony_ci
4579e5c31af7Sopenharmony_ci			${DECLARATIONS}
4580e5c31af7Sopenharmony_ci
4581e5c31af7Sopenharmony_ci			void main()
4582e5c31af7Sopenharmony_ci			{
4583e5c31af7Sopenharmony_ci				${SETUP}
4584e5c31af7Sopenharmony_ci				out0 = in0.qpt;
4585e5c31af7Sopenharmony_ci				${OUTPUT}
4586e5c31af7Sopenharmony_ci			}
4587e5c31af7Sopenharmony_ci		""
4588e5c31af7Sopenharmony_ci	end
4589e5c31af7Sopenharmony_ci
4590e5c31af7Sopenharmony_ci	case mediump_ivec4_stpq
4591e5c31af7Sopenharmony_ci		version 310 es
4592e5c31af7Sopenharmony_ci		values
4593e5c31af7Sopenharmony_ci		{
4594e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4595e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4596e5c31af7Sopenharmony_ci		}
4597e5c31af7Sopenharmony_ci
4598e5c31af7Sopenharmony_ci		both ""
4599e5c31af7Sopenharmony_ci			#version 310 es
4600e5c31af7Sopenharmony_ci			precision highp float;
4601e5c31af7Sopenharmony_ci			precision highp int;
4602e5c31af7Sopenharmony_ci
4603e5c31af7Sopenharmony_ci			${DECLARATIONS}
4604e5c31af7Sopenharmony_ci
4605e5c31af7Sopenharmony_ci			void main()
4606e5c31af7Sopenharmony_ci			{
4607e5c31af7Sopenharmony_ci				${SETUP}
4608e5c31af7Sopenharmony_ci				out0 = in0.stpq;
4609e5c31af7Sopenharmony_ci				${OUTPUT}
4610e5c31af7Sopenharmony_ci			}
4611e5c31af7Sopenharmony_ci		""
4612e5c31af7Sopenharmony_ci	end
4613e5c31af7Sopenharmony_ci
4614e5c31af7Sopenharmony_ci	case mediump_ivec4_qpts
4615e5c31af7Sopenharmony_ci		version 310 es
4616e5c31af7Sopenharmony_ci		values
4617e5c31af7Sopenharmony_ci		{
4618e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4619e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -2, 0) | ivec4(24, -51, 64, -32) | ivec4(0, 0, 0, 0) ];
4620e5c31af7Sopenharmony_ci		}
4621e5c31af7Sopenharmony_ci
4622e5c31af7Sopenharmony_ci		both ""
4623e5c31af7Sopenharmony_ci			#version 310 es
4624e5c31af7Sopenharmony_ci			precision highp float;
4625e5c31af7Sopenharmony_ci			precision highp int;
4626e5c31af7Sopenharmony_ci
4627e5c31af7Sopenharmony_ci			${DECLARATIONS}
4628e5c31af7Sopenharmony_ci
4629e5c31af7Sopenharmony_ci			void main()
4630e5c31af7Sopenharmony_ci			{
4631e5c31af7Sopenharmony_ci				${SETUP}
4632e5c31af7Sopenharmony_ci				out0 = in0.qpts;
4633e5c31af7Sopenharmony_ci				${OUTPUT}
4634e5c31af7Sopenharmony_ci			}
4635e5c31af7Sopenharmony_ci		""
4636e5c31af7Sopenharmony_ci	end
4637e5c31af7Sopenharmony_ci
4638e5c31af7Sopenharmony_ci	case mediump_ivec4_ssss
4639e5c31af7Sopenharmony_ci		version 310 es
4640e5c31af7Sopenharmony_ci		values
4641e5c31af7Sopenharmony_ci		{
4642e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4643e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) | ivec4(-32, -32, -32, -32) | ivec4(0, 0, 0, 0) ];
4644e5c31af7Sopenharmony_ci		}
4645e5c31af7Sopenharmony_ci
4646e5c31af7Sopenharmony_ci		both ""
4647e5c31af7Sopenharmony_ci			#version 310 es
4648e5c31af7Sopenharmony_ci			precision highp float;
4649e5c31af7Sopenharmony_ci			precision highp int;
4650e5c31af7Sopenharmony_ci
4651e5c31af7Sopenharmony_ci			${DECLARATIONS}
4652e5c31af7Sopenharmony_ci
4653e5c31af7Sopenharmony_ci			void main()
4654e5c31af7Sopenharmony_ci			{
4655e5c31af7Sopenharmony_ci				${SETUP}
4656e5c31af7Sopenharmony_ci				out0 = in0.ssss;
4657e5c31af7Sopenharmony_ci				${OUTPUT}
4658e5c31af7Sopenharmony_ci			}
4659e5c31af7Sopenharmony_ci		""
4660e5c31af7Sopenharmony_ci	end
4661e5c31af7Sopenharmony_ci
4662e5c31af7Sopenharmony_ci	case mediump_ivec4_tttt
4663e5c31af7Sopenharmony_ci		version 310 es
4664e5c31af7Sopenharmony_ci		values
4665e5c31af7Sopenharmony_ci		{
4666e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4667e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
4668e5c31af7Sopenharmony_ci		}
4669e5c31af7Sopenharmony_ci
4670e5c31af7Sopenharmony_ci		both ""
4671e5c31af7Sopenharmony_ci			#version 310 es
4672e5c31af7Sopenharmony_ci			precision highp float;
4673e5c31af7Sopenharmony_ci			precision highp int;
4674e5c31af7Sopenharmony_ci
4675e5c31af7Sopenharmony_ci			${DECLARATIONS}
4676e5c31af7Sopenharmony_ci
4677e5c31af7Sopenharmony_ci			void main()
4678e5c31af7Sopenharmony_ci			{
4679e5c31af7Sopenharmony_ci				${SETUP}
4680e5c31af7Sopenharmony_ci				out0 = in0.tttt;
4681e5c31af7Sopenharmony_ci				${OUTPUT}
4682e5c31af7Sopenharmony_ci			}
4683e5c31af7Sopenharmony_ci		""
4684e5c31af7Sopenharmony_ci	end
4685e5c31af7Sopenharmony_ci
4686e5c31af7Sopenharmony_ci	case mediump_ivec4_qqqq
4687e5c31af7Sopenharmony_ci		version 310 es
4688e5c31af7Sopenharmony_ci		values
4689e5c31af7Sopenharmony_ci		{
4690e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4691e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, 9) | ivec4(24, 24, 24, 24) | ivec4(0, 0, 0, 0) ];
4692e5c31af7Sopenharmony_ci		}
4693e5c31af7Sopenharmony_ci
4694e5c31af7Sopenharmony_ci		both ""
4695e5c31af7Sopenharmony_ci			#version 310 es
4696e5c31af7Sopenharmony_ci			precision highp float;
4697e5c31af7Sopenharmony_ci			precision highp int;
4698e5c31af7Sopenharmony_ci
4699e5c31af7Sopenharmony_ci			${DECLARATIONS}
4700e5c31af7Sopenharmony_ci
4701e5c31af7Sopenharmony_ci			void main()
4702e5c31af7Sopenharmony_ci			{
4703e5c31af7Sopenharmony_ci				${SETUP}
4704e5c31af7Sopenharmony_ci				out0 = in0.qqqq;
4705e5c31af7Sopenharmony_ci				${OUTPUT}
4706e5c31af7Sopenharmony_ci			}
4707e5c31af7Sopenharmony_ci		""
4708e5c31af7Sopenharmony_ci	end
4709e5c31af7Sopenharmony_ci
4710e5c31af7Sopenharmony_ci	case mediump_ivec4_qppq
4711e5c31af7Sopenharmony_ci		version 310 es
4712e5c31af7Sopenharmony_ci		values
4713e5c31af7Sopenharmony_ci		{
4714e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4715e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -4, 9) | ivec4(24, -51, -51, 24) | ivec4(0, 0, 0, 0) ];
4716e5c31af7Sopenharmony_ci		}
4717e5c31af7Sopenharmony_ci
4718e5c31af7Sopenharmony_ci		both ""
4719e5c31af7Sopenharmony_ci			#version 310 es
4720e5c31af7Sopenharmony_ci			precision highp float;
4721e5c31af7Sopenharmony_ci			precision highp int;
4722e5c31af7Sopenharmony_ci
4723e5c31af7Sopenharmony_ci			${DECLARATIONS}
4724e5c31af7Sopenharmony_ci
4725e5c31af7Sopenharmony_ci			void main()
4726e5c31af7Sopenharmony_ci			{
4727e5c31af7Sopenharmony_ci				${SETUP}
4728e5c31af7Sopenharmony_ci				out0 = in0.qppq;
4729e5c31af7Sopenharmony_ci				${OUTPUT}
4730e5c31af7Sopenharmony_ci			}
4731e5c31af7Sopenharmony_ci		""
4732e5c31af7Sopenharmony_ci	end
4733e5c31af7Sopenharmony_ci
4734e5c31af7Sopenharmony_ci	case mediump_ivec4_qqqt
4735e5c31af7Sopenharmony_ci		version 310 es
4736e5c31af7Sopenharmony_ci		values
4737e5c31af7Sopenharmony_ci		{
4738e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4739e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, -2) | ivec4(24, 24, 24, 64) | ivec4(0, 0, 0, 0) ];
4740e5c31af7Sopenharmony_ci		}
4741e5c31af7Sopenharmony_ci
4742e5c31af7Sopenharmony_ci		both ""
4743e5c31af7Sopenharmony_ci			#version 310 es
4744e5c31af7Sopenharmony_ci			precision highp float;
4745e5c31af7Sopenharmony_ci			precision highp int;
4746e5c31af7Sopenharmony_ci
4747e5c31af7Sopenharmony_ci			${DECLARATIONS}
4748e5c31af7Sopenharmony_ci
4749e5c31af7Sopenharmony_ci			void main()
4750e5c31af7Sopenharmony_ci			{
4751e5c31af7Sopenharmony_ci				${SETUP}
4752e5c31af7Sopenharmony_ci				out0 = in0.qqqt;
4753e5c31af7Sopenharmony_ci				${OUTPUT}
4754e5c31af7Sopenharmony_ci			}
4755e5c31af7Sopenharmony_ci		""
4756e5c31af7Sopenharmony_ci	end
4757e5c31af7Sopenharmony_ci
4758e5c31af7Sopenharmony_ci	case mediump_ivec4_stss
4759e5c31af7Sopenharmony_ci		version 310 es
4760e5c31af7Sopenharmony_ci		values
4761e5c31af7Sopenharmony_ci		{
4762e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4763e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
4764e5c31af7Sopenharmony_ci		}
4765e5c31af7Sopenharmony_ci
4766e5c31af7Sopenharmony_ci		both ""
4767e5c31af7Sopenharmony_ci			#version 310 es
4768e5c31af7Sopenharmony_ci			precision highp float;
4769e5c31af7Sopenharmony_ci			precision highp int;
4770e5c31af7Sopenharmony_ci
4771e5c31af7Sopenharmony_ci			${DECLARATIONS}
4772e5c31af7Sopenharmony_ci
4773e5c31af7Sopenharmony_ci			void main()
4774e5c31af7Sopenharmony_ci			{
4775e5c31af7Sopenharmony_ci				${SETUP}
4776e5c31af7Sopenharmony_ci				out0 = in0.stss;
4777e5c31af7Sopenharmony_ci				${OUTPUT}
4778e5c31af7Sopenharmony_ci			}
4779e5c31af7Sopenharmony_ci		""
4780e5c31af7Sopenharmony_ci	end
4781e5c31af7Sopenharmony_ci
4782e5c31af7Sopenharmony_ci	case mediump_ivec4_ppqp
4783e5c31af7Sopenharmony_ci		version 310 es
4784e5c31af7Sopenharmony_ci		values
4785e5c31af7Sopenharmony_ci		{
4786e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4787e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, 9, -4) | ivec4(-51, -51, 24, -51) | ivec4(0, 0, 0, 0) ];
4788e5c31af7Sopenharmony_ci		}
4789e5c31af7Sopenharmony_ci
4790e5c31af7Sopenharmony_ci		both ""
4791e5c31af7Sopenharmony_ci			#version 310 es
4792e5c31af7Sopenharmony_ci			precision highp float;
4793e5c31af7Sopenharmony_ci			precision highp int;
4794e5c31af7Sopenharmony_ci
4795e5c31af7Sopenharmony_ci			${DECLARATIONS}
4796e5c31af7Sopenharmony_ci
4797e5c31af7Sopenharmony_ci			void main()
4798e5c31af7Sopenharmony_ci			{
4799e5c31af7Sopenharmony_ci				${SETUP}
4800e5c31af7Sopenharmony_ci				out0 = in0.ppqp;
4801e5c31af7Sopenharmony_ci				${OUTPUT}
4802e5c31af7Sopenharmony_ci			}
4803e5c31af7Sopenharmony_ci		""
4804e5c31af7Sopenharmony_ci	end
4805e5c31af7Sopenharmony_ci
4806e5c31af7Sopenharmony_ci	case mediump_ivec4_r
4807e5c31af7Sopenharmony_ci		version 310 es
4808e5c31af7Sopenharmony_ci		values
4809e5c31af7Sopenharmony_ci		{
4810e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4811e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
4812e5c31af7Sopenharmony_ci		}
4813e5c31af7Sopenharmony_ci
4814e5c31af7Sopenharmony_ci		both ""
4815e5c31af7Sopenharmony_ci			#version 310 es
4816e5c31af7Sopenharmony_ci			precision highp float;
4817e5c31af7Sopenharmony_ci			precision highp int;
4818e5c31af7Sopenharmony_ci
4819e5c31af7Sopenharmony_ci			${DECLARATIONS}
4820e5c31af7Sopenharmony_ci
4821e5c31af7Sopenharmony_ci			void main()
4822e5c31af7Sopenharmony_ci			{
4823e5c31af7Sopenharmony_ci				${SETUP}
4824e5c31af7Sopenharmony_ci				out0 = in0.r;
4825e5c31af7Sopenharmony_ci				${OUTPUT}
4826e5c31af7Sopenharmony_ci			}
4827e5c31af7Sopenharmony_ci		""
4828e5c31af7Sopenharmony_ci	end
4829e5c31af7Sopenharmony_ci
4830e5c31af7Sopenharmony_ci	case mediump_ivec4_a
4831e5c31af7Sopenharmony_ci		version 310 es
4832e5c31af7Sopenharmony_ci		values
4833e5c31af7Sopenharmony_ci		{
4834e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4835e5c31af7Sopenharmony_ci			output int out0 = [ 0 | 1 | 9 | 24 | 0 ];
4836e5c31af7Sopenharmony_ci		}
4837e5c31af7Sopenharmony_ci
4838e5c31af7Sopenharmony_ci		both ""
4839e5c31af7Sopenharmony_ci			#version 310 es
4840e5c31af7Sopenharmony_ci			precision highp float;
4841e5c31af7Sopenharmony_ci			precision highp int;
4842e5c31af7Sopenharmony_ci
4843e5c31af7Sopenharmony_ci			${DECLARATIONS}
4844e5c31af7Sopenharmony_ci
4845e5c31af7Sopenharmony_ci			void main()
4846e5c31af7Sopenharmony_ci			{
4847e5c31af7Sopenharmony_ci				${SETUP}
4848e5c31af7Sopenharmony_ci				out0 = in0.a;
4849e5c31af7Sopenharmony_ci				${OUTPUT}
4850e5c31af7Sopenharmony_ci			}
4851e5c31af7Sopenharmony_ci		""
4852e5c31af7Sopenharmony_ci	end
4853e5c31af7Sopenharmony_ci
4854e5c31af7Sopenharmony_ci	case mediump_ivec4_ar
4855e5c31af7Sopenharmony_ci		version 310 es
4856e5c31af7Sopenharmony_ci		values
4857e5c31af7Sopenharmony_ci		{
4858e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4859e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, 0) | ivec2(24, -32) | ivec2(0, 0) ];
4860e5c31af7Sopenharmony_ci		}
4861e5c31af7Sopenharmony_ci
4862e5c31af7Sopenharmony_ci		both ""
4863e5c31af7Sopenharmony_ci			#version 310 es
4864e5c31af7Sopenharmony_ci			precision highp float;
4865e5c31af7Sopenharmony_ci			precision highp int;
4866e5c31af7Sopenharmony_ci
4867e5c31af7Sopenharmony_ci			${DECLARATIONS}
4868e5c31af7Sopenharmony_ci
4869e5c31af7Sopenharmony_ci			void main()
4870e5c31af7Sopenharmony_ci			{
4871e5c31af7Sopenharmony_ci				${SETUP}
4872e5c31af7Sopenharmony_ci				out0 = in0.ar;
4873e5c31af7Sopenharmony_ci				${OUTPUT}
4874e5c31af7Sopenharmony_ci			}
4875e5c31af7Sopenharmony_ci		""
4876e5c31af7Sopenharmony_ci	end
4877e5c31af7Sopenharmony_ci
4878e5c31af7Sopenharmony_ci	case mediump_ivec4_ab
4879e5c31af7Sopenharmony_ci		version 310 es
4880e5c31af7Sopenharmony_ci		values
4881e5c31af7Sopenharmony_ci		{
4882e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4883e5c31af7Sopenharmony_ci			output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(9, -4) | ivec2(24, -51) | ivec2(0, 0) ];
4884e5c31af7Sopenharmony_ci		}
4885e5c31af7Sopenharmony_ci
4886e5c31af7Sopenharmony_ci		both ""
4887e5c31af7Sopenharmony_ci			#version 310 es
4888e5c31af7Sopenharmony_ci			precision highp float;
4889e5c31af7Sopenharmony_ci			precision highp int;
4890e5c31af7Sopenharmony_ci
4891e5c31af7Sopenharmony_ci			${DECLARATIONS}
4892e5c31af7Sopenharmony_ci
4893e5c31af7Sopenharmony_ci			void main()
4894e5c31af7Sopenharmony_ci			{
4895e5c31af7Sopenharmony_ci				${SETUP}
4896e5c31af7Sopenharmony_ci				out0 = in0.ab;
4897e5c31af7Sopenharmony_ci				${OUTPUT}
4898e5c31af7Sopenharmony_ci			}
4899e5c31af7Sopenharmony_ci		""
4900e5c31af7Sopenharmony_ci	end
4901e5c31af7Sopenharmony_ci
4902e5c31af7Sopenharmony_ci	case mediump_ivec4_aaa
4903e5c31af7Sopenharmony_ci		version 310 es
4904e5c31af7Sopenharmony_ci		values
4905e5c31af7Sopenharmony_ci		{
4906e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4907e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, 9, 9) | ivec3(24, 24, 24) | ivec3(0, 0, 0) ];
4908e5c31af7Sopenharmony_ci		}
4909e5c31af7Sopenharmony_ci
4910e5c31af7Sopenharmony_ci		both ""
4911e5c31af7Sopenharmony_ci			#version 310 es
4912e5c31af7Sopenharmony_ci			precision highp float;
4913e5c31af7Sopenharmony_ci			precision highp int;
4914e5c31af7Sopenharmony_ci
4915e5c31af7Sopenharmony_ci			${DECLARATIONS}
4916e5c31af7Sopenharmony_ci
4917e5c31af7Sopenharmony_ci			void main()
4918e5c31af7Sopenharmony_ci			{
4919e5c31af7Sopenharmony_ci				${SETUP}
4920e5c31af7Sopenharmony_ci				out0 = in0.aaa;
4921e5c31af7Sopenharmony_ci				${OUTPUT}
4922e5c31af7Sopenharmony_ci			}
4923e5c31af7Sopenharmony_ci		""
4924e5c31af7Sopenharmony_ci	end
4925e5c31af7Sopenharmony_ci
4926e5c31af7Sopenharmony_ci	case mediump_ivec4_gga
4927e5c31af7Sopenharmony_ci		version 310 es
4928e5c31af7Sopenharmony_ci		values
4929e5c31af7Sopenharmony_ci		{
4930e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4931e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(-2, -2, 9) | ivec3(64, 64, 24) | ivec3(0, 0, 0) ];
4932e5c31af7Sopenharmony_ci		}
4933e5c31af7Sopenharmony_ci
4934e5c31af7Sopenharmony_ci		both ""
4935e5c31af7Sopenharmony_ci			#version 310 es
4936e5c31af7Sopenharmony_ci			precision highp float;
4937e5c31af7Sopenharmony_ci			precision highp int;
4938e5c31af7Sopenharmony_ci
4939e5c31af7Sopenharmony_ci			${DECLARATIONS}
4940e5c31af7Sopenharmony_ci
4941e5c31af7Sopenharmony_ci			void main()
4942e5c31af7Sopenharmony_ci			{
4943e5c31af7Sopenharmony_ci				${SETUP}
4944e5c31af7Sopenharmony_ci				out0 = in0.gga;
4945e5c31af7Sopenharmony_ci				${OUTPUT}
4946e5c31af7Sopenharmony_ci			}
4947e5c31af7Sopenharmony_ci		""
4948e5c31af7Sopenharmony_ci	end
4949e5c31af7Sopenharmony_ci
4950e5c31af7Sopenharmony_ci	case mediump_ivec4_abg
4951e5c31af7Sopenharmony_ci		version 310 es
4952e5c31af7Sopenharmony_ci		values
4953e5c31af7Sopenharmony_ci		{
4954e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4955e5c31af7Sopenharmony_ci			output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(9, -4, -2) | ivec3(24, -51, 64) | ivec3(0, 0, 0) ];
4956e5c31af7Sopenharmony_ci		}
4957e5c31af7Sopenharmony_ci
4958e5c31af7Sopenharmony_ci		both ""
4959e5c31af7Sopenharmony_ci			#version 310 es
4960e5c31af7Sopenharmony_ci			precision highp float;
4961e5c31af7Sopenharmony_ci			precision highp int;
4962e5c31af7Sopenharmony_ci
4963e5c31af7Sopenharmony_ci			${DECLARATIONS}
4964e5c31af7Sopenharmony_ci
4965e5c31af7Sopenharmony_ci			void main()
4966e5c31af7Sopenharmony_ci			{
4967e5c31af7Sopenharmony_ci				${SETUP}
4968e5c31af7Sopenharmony_ci				out0 = in0.abg;
4969e5c31af7Sopenharmony_ci				${OUTPUT}
4970e5c31af7Sopenharmony_ci			}
4971e5c31af7Sopenharmony_ci		""
4972e5c31af7Sopenharmony_ci	end
4973e5c31af7Sopenharmony_ci
4974e5c31af7Sopenharmony_ci	case mediump_ivec4_rgba
4975e5c31af7Sopenharmony_ci		version 310 es
4976e5c31af7Sopenharmony_ci		values
4977e5c31af7Sopenharmony_ci		{
4978e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4979e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
4980e5c31af7Sopenharmony_ci		}
4981e5c31af7Sopenharmony_ci
4982e5c31af7Sopenharmony_ci		both ""
4983e5c31af7Sopenharmony_ci			#version 310 es
4984e5c31af7Sopenharmony_ci			precision highp float;
4985e5c31af7Sopenharmony_ci			precision highp int;
4986e5c31af7Sopenharmony_ci
4987e5c31af7Sopenharmony_ci			${DECLARATIONS}
4988e5c31af7Sopenharmony_ci
4989e5c31af7Sopenharmony_ci			void main()
4990e5c31af7Sopenharmony_ci			{
4991e5c31af7Sopenharmony_ci				${SETUP}
4992e5c31af7Sopenharmony_ci				out0 = in0.rgba;
4993e5c31af7Sopenharmony_ci				${OUTPUT}
4994e5c31af7Sopenharmony_ci			}
4995e5c31af7Sopenharmony_ci		""
4996e5c31af7Sopenharmony_ci	end
4997e5c31af7Sopenharmony_ci
4998e5c31af7Sopenharmony_ci	case mediump_ivec4_abgr
4999e5c31af7Sopenharmony_ci		version 310 es
5000e5c31af7Sopenharmony_ci		values
5001e5c31af7Sopenharmony_ci		{
5002e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5003e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -2, 0) | ivec4(24, -51, 64, -32) | ivec4(0, 0, 0, 0) ];
5004e5c31af7Sopenharmony_ci		}
5005e5c31af7Sopenharmony_ci
5006e5c31af7Sopenharmony_ci		both ""
5007e5c31af7Sopenharmony_ci			#version 310 es
5008e5c31af7Sopenharmony_ci			precision highp float;
5009e5c31af7Sopenharmony_ci			precision highp int;
5010e5c31af7Sopenharmony_ci
5011e5c31af7Sopenharmony_ci			${DECLARATIONS}
5012e5c31af7Sopenharmony_ci
5013e5c31af7Sopenharmony_ci			void main()
5014e5c31af7Sopenharmony_ci			{
5015e5c31af7Sopenharmony_ci				${SETUP}
5016e5c31af7Sopenharmony_ci				out0 = in0.abgr;
5017e5c31af7Sopenharmony_ci				${OUTPUT}
5018e5c31af7Sopenharmony_ci			}
5019e5c31af7Sopenharmony_ci		""
5020e5c31af7Sopenharmony_ci	end
5021e5c31af7Sopenharmony_ci
5022e5c31af7Sopenharmony_ci	case mediump_ivec4_rrrr
5023e5c31af7Sopenharmony_ci		version 310 es
5024e5c31af7Sopenharmony_ci		values
5025e5c31af7Sopenharmony_ci		{
5026e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5027e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) | ivec4(-32, -32, -32, -32) | ivec4(0, 0, 0, 0) ];
5028e5c31af7Sopenharmony_ci		}
5029e5c31af7Sopenharmony_ci
5030e5c31af7Sopenharmony_ci		both ""
5031e5c31af7Sopenharmony_ci			#version 310 es
5032e5c31af7Sopenharmony_ci			precision highp float;
5033e5c31af7Sopenharmony_ci			precision highp int;
5034e5c31af7Sopenharmony_ci
5035e5c31af7Sopenharmony_ci			${DECLARATIONS}
5036e5c31af7Sopenharmony_ci
5037e5c31af7Sopenharmony_ci			void main()
5038e5c31af7Sopenharmony_ci			{
5039e5c31af7Sopenharmony_ci				${SETUP}
5040e5c31af7Sopenharmony_ci				out0 = in0.rrrr;
5041e5c31af7Sopenharmony_ci				${OUTPUT}
5042e5c31af7Sopenharmony_ci			}
5043e5c31af7Sopenharmony_ci		""
5044e5c31af7Sopenharmony_ci	end
5045e5c31af7Sopenharmony_ci
5046e5c31af7Sopenharmony_ci	case mediump_ivec4_gggg
5047e5c31af7Sopenharmony_ci		version 310 es
5048e5c31af7Sopenharmony_ci		values
5049e5c31af7Sopenharmony_ci		{
5050e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5051e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-2, -2, -2, -2) | ivec4(64, 64, 64, 64) | ivec4(0, 0, 0, 0) ];
5052e5c31af7Sopenharmony_ci		}
5053e5c31af7Sopenharmony_ci
5054e5c31af7Sopenharmony_ci		both ""
5055e5c31af7Sopenharmony_ci			#version 310 es
5056e5c31af7Sopenharmony_ci			precision highp float;
5057e5c31af7Sopenharmony_ci			precision highp int;
5058e5c31af7Sopenharmony_ci
5059e5c31af7Sopenharmony_ci			${DECLARATIONS}
5060e5c31af7Sopenharmony_ci
5061e5c31af7Sopenharmony_ci			void main()
5062e5c31af7Sopenharmony_ci			{
5063e5c31af7Sopenharmony_ci				${SETUP}
5064e5c31af7Sopenharmony_ci				out0 = in0.gggg;
5065e5c31af7Sopenharmony_ci				${OUTPUT}
5066e5c31af7Sopenharmony_ci			}
5067e5c31af7Sopenharmony_ci		""
5068e5c31af7Sopenharmony_ci	end
5069e5c31af7Sopenharmony_ci
5070e5c31af7Sopenharmony_ci	case mediump_ivec4_aaaa
5071e5c31af7Sopenharmony_ci		version 310 es
5072e5c31af7Sopenharmony_ci		values
5073e5c31af7Sopenharmony_ci		{
5074e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5075e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, 9) | ivec4(24, 24, 24, 24) | ivec4(0, 0, 0, 0) ];
5076e5c31af7Sopenharmony_ci		}
5077e5c31af7Sopenharmony_ci
5078e5c31af7Sopenharmony_ci		both ""
5079e5c31af7Sopenharmony_ci			#version 310 es
5080e5c31af7Sopenharmony_ci			precision highp float;
5081e5c31af7Sopenharmony_ci			precision highp int;
5082e5c31af7Sopenharmony_ci
5083e5c31af7Sopenharmony_ci			${DECLARATIONS}
5084e5c31af7Sopenharmony_ci
5085e5c31af7Sopenharmony_ci			void main()
5086e5c31af7Sopenharmony_ci			{
5087e5c31af7Sopenharmony_ci				${SETUP}
5088e5c31af7Sopenharmony_ci				out0 = in0.aaaa;
5089e5c31af7Sopenharmony_ci				${OUTPUT}
5090e5c31af7Sopenharmony_ci			}
5091e5c31af7Sopenharmony_ci		""
5092e5c31af7Sopenharmony_ci	end
5093e5c31af7Sopenharmony_ci
5094e5c31af7Sopenharmony_ci	case mediump_ivec4_abba
5095e5c31af7Sopenharmony_ci		version 310 es
5096e5c31af7Sopenharmony_ci		values
5097e5c31af7Sopenharmony_ci		{
5098e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5099e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, -4, -4, 9) | ivec4(24, -51, -51, 24) | ivec4(0, 0, 0, 0) ];
5100e5c31af7Sopenharmony_ci		}
5101e5c31af7Sopenharmony_ci
5102e5c31af7Sopenharmony_ci		both ""
5103e5c31af7Sopenharmony_ci			#version 310 es
5104e5c31af7Sopenharmony_ci			precision highp float;
5105e5c31af7Sopenharmony_ci			precision highp int;
5106e5c31af7Sopenharmony_ci
5107e5c31af7Sopenharmony_ci			${DECLARATIONS}
5108e5c31af7Sopenharmony_ci
5109e5c31af7Sopenharmony_ci			void main()
5110e5c31af7Sopenharmony_ci			{
5111e5c31af7Sopenharmony_ci				${SETUP}
5112e5c31af7Sopenharmony_ci				out0 = in0.abba;
5113e5c31af7Sopenharmony_ci				${OUTPUT}
5114e5c31af7Sopenharmony_ci			}
5115e5c31af7Sopenharmony_ci		""
5116e5c31af7Sopenharmony_ci	end
5117e5c31af7Sopenharmony_ci
5118e5c31af7Sopenharmony_ci	case mediump_ivec4_aaag
5119e5c31af7Sopenharmony_ci		version 310 es
5120e5c31af7Sopenharmony_ci		values
5121e5c31af7Sopenharmony_ci		{
5122e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5123e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, -2) | ivec4(24, 24, 24, 64) | ivec4(0, 0, 0, 0) ];
5124e5c31af7Sopenharmony_ci		}
5125e5c31af7Sopenharmony_ci
5126e5c31af7Sopenharmony_ci		both ""
5127e5c31af7Sopenharmony_ci			#version 310 es
5128e5c31af7Sopenharmony_ci			precision highp float;
5129e5c31af7Sopenharmony_ci			precision highp int;
5130e5c31af7Sopenharmony_ci
5131e5c31af7Sopenharmony_ci			${DECLARATIONS}
5132e5c31af7Sopenharmony_ci
5133e5c31af7Sopenharmony_ci			void main()
5134e5c31af7Sopenharmony_ci			{
5135e5c31af7Sopenharmony_ci				${SETUP}
5136e5c31af7Sopenharmony_ci				out0 = in0.aaag;
5137e5c31af7Sopenharmony_ci				${OUTPUT}
5138e5c31af7Sopenharmony_ci			}
5139e5c31af7Sopenharmony_ci		""
5140e5c31af7Sopenharmony_ci	end
5141e5c31af7Sopenharmony_ci
5142e5c31af7Sopenharmony_ci	case mediump_ivec4_rgrr
5143e5c31af7Sopenharmony_ci		version 310 es
5144e5c31af7Sopenharmony_ci		values
5145e5c31af7Sopenharmony_ci		{
5146e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5147e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, 0, 0) | ivec4(-32, 64, -32, -32) | ivec4(0, 0, 0, 0) ];
5148e5c31af7Sopenharmony_ci		}
5149e5c31af7Sopenharmony_ci
5150e5c31af7Sopenharmony_ci		both ""
5151e5c31af7Sopenharmony_ci			#version 310 es
5152e5c31af7Sopenharmony_ci			precision highp float;
5153e5c31af7Sopenharmony_ci			precision highp int;
5154e5c31af7Sopenharmony_ci
5155e5c31af7Sopenharmony_ci			${DECLARATIONS}
5156e5c31af7Sopenharmony_ci
5157e5c31af7Sopenharmony_ci			void main()
5158e5c31af7Sopenharmony_ci			{
5159e5c31af7Sopenharmony_ci				${SETUP}
5160e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
5161e5c31af7Sopenharmony_ci				${OUTPUT}
5162e5c31af7Sopenharmony_ci			}
5163e5c31af7Sopenharmony_ci		""
5164e5c31af7Sopenharmony_ci	end
5165e5c31af7Sopenharmony_ci
5166e5c31af7Sopenharmony_ci	case mediump_ivec4_bbab
5167e5c31af7Sopenharmony_ci		version 310 es
5168e5c31af7Sopenharmony_ci		values
5169e5c31af7Sopenharmony_ci		{
5170e5c31af7Sopenharmony_ci			input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5171e5c31af7Sopenharmony_ci			output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(-4, -4, 9, -4) | ivec4(-51, -51, 24, -51) | ivec4(0, 0, 0, 0) ];
5172e5c31af7Sopenharmony_ci		}
5173e5c31af7Sopenharmony_ci
5174e5c31af7Sopenharmony_ci		both ""
5175e5c31af7Sopenharmony_ci			#version 310 es
5176e5c31af7Sopenharmony_ci			precision highp float;
5177e5c31af7Sopenharmony_ci			precision highp int;
5178e5c31af7Sopenharmony_ci
5179e5c31af7Sopenharmony_ci			${DECLARATIONS}
5180e5c31af7Sopenharmony_ci
5181e5c31af7Sopenharmony_ci			void main()
5182e5c31af7Sopenharmony_ci			{
5183e5c31af7Sopenharmony_ci				${SETUP}
5184e5c31af7Sopenharmony_ci				out0 = in0.bbab;
5185e5c31af7Sopenharmony_ci				${OUTPUT}
5186e5c31af7Sopenharmony_ci			}
5187e5c31af7Sopenharmony_ci		""
5188e5c31af7Sopenharmony_ci	end
5189e5c31af7Sopenharmony_ci
5190e5c31af7Sopenharmony_ci	case mediump_bvec2_x
5191e5c31af7Sopenharmony_ci		version 310 es
5192e5c31af7Sopenharmony_ci		values
5193e5c31af7Sopenharmony_ci		{
5194e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5195e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
5196e5c31af7Sopenharmony_ci		}
5197e5c31af7Sopenharmony_ci
5198e5c31af7Sopenharmony_ci		both ""
5199e5c31af7Sopenharmony_ci			#version 310 es
5200e5c31af7Sopenharmony_ci			precision highp float;
5201e5c31af7Sopenharmony_ci			precision highp int;
5202e5c31af7Sopenharmony_ci
5203e5c31af7Sopenharmony_ci			${DECLARATIONS}
5204e5c31af7Sopenharmony_ci
5205e5c31af7Sopenharmony_ci			void main()
5206e5c31af7Sopenharmony_ci			{
5207e5c31af7Sopenharmony_ci				${SETUP}
5208e5c31af7Sopenharmony_ci				out0 = in0.x;
5209e5c31af7Sopenharmony_ci				${OUTPUT}
5210e5c31af7Sopenharmony_ci			}
5211e5c31af7Sopenharmony_ci		""
5212e5c31af7Sopenharmony_ci	end
5213e5c31af7Sopenharmony_ci
5214e5c31af7Sopenharmony_ci	case mediump_bvec2_xx
5215e5c31af7Sopenharmony_ci		version 310 es
5216e5c31af7Sopenharmony_ci		values
5217e5c31af7Sopenharmony_ci		{
5218e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5219e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
5220e5c31af7Sopenharmony_ci		}
5221e5c31af7Sopenharmony_ci
5222e5c31af7Sopenharmony_ci		both ""
5223e5c31af7Sopenharmony_ci			#version 310 es
5224e5c31af7Sopenharmony_ci			precision highp float;
5225e5c31af7Sopenharmony_ci			precision highp int;
5226e5c31af7Sopenharmony_ci
5227e5c31af7Sopenharmony_ci			${DECLARATIONS}
5228e5c31af7Sopenharmony_ci
5229e5c31af7Sopenharmony_ci			void main()
5230e5c31af7Sopenharmony_ci			{
5231e5c31af7Sopenharmony_ci				${SETUP}
5232e5c31af7Sopenharmony_ci				out0 = in0.xx;
5233e5c31af7Sopenharmony_ci				${OUTPUT}
5234e5c31af7Sopenharmony_ci			}
5235e5c31af7Sopenharmony_ci		""
5236e5c31af7Sopenharmony_ci	end
5237e5c31af7Sopenharmony_ci
5238e5c31af7Sopenharmony_ci	case mediump_bvec2_xy
5239e5c31af7Sopenharmony_ci		version 310 es
5240e5c31af7Sopenharmony_ci		values
5241e5c31af7Sopenharmony_ci		{
5242e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5243e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5244e5c31af7Sopenharmony_ci		}
5245e5c31af7Sopenharmony_ci
5246e5c31af7Sopenharmony_ci		both ""
5247e5c31af7Sopenharmony_ci			#version 310 es
5248e5c31af7Sopenharmony_ci			precision highp float;
5249e5c31af7Sopenharmony_ci			precision highp int;
5250e5c31af7Sopenharmony_ci
5251e5c31af7Sopenharmony_ci			${DECLARATIONS}
5252e5c31af7Sopenharmony_ci
5253e5c31af7Sopenharmony_ci			void main()
5254e5c31af7Sopenharmony_ci			{
5255e5c31af7Sopenharmony_ci				${SETUP}
5256e5c31af7Sopenharmony_ci				out0 = in0.xy;
5257e5c31af7Sopenharmony_ci				${OUTPUT}
5258e5c31af7Sopenharmony_ci			}
5259e5c31af7Sopenharmony_ci		""
5260e5c31af7Sopenharmony_ci	end
5261e5c31af7Sopenharmony_ci
5262e5c31af7Sopenharmony_ci	case mediump_bvec2_yx
5263e5c31af7Sopenharmony_ci		version 310 es
5264e5c31af7Sopenharmony_ci		values
5265e5c31af7Sopenharmony_ci		{
5266e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5267e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, true) | bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, false) ];
5268e5c31af7Sopenharmony_ci		}
5269e5c31af7Sopenharmony_ci
5270e5c31af7Sopenharmony_ci		both ""
5271e5c31af7Sopenharmony_ci			#version 310 es
5272e5c31af7Sopenharmony_ci			precision highp float;
5273e5c31af7Sopenharmony_ci			precision highp int;
5274e5c31af7Sopenharmony_ci
5275e5c31af7Sopenharmony_ci			${DECLARATIONS}
5276e5c31af7Sopenharmony_ci
5277e5c31af7Sopenharmony_ci			void main()
5278e5c31af7Sopenharmony_ci			{
5279e5c31af7Sopenharmony_ci				${SETUP}
5280e5c31af7Sopenharmony_ci				out0 = in0.yx;
5281e5c31af7Sopenharmony_ci				${OUTPUT}
5282e5c31af7Sopenharmony_ci			}
5283e5c31af7Sopenharmony_ci		""
5284e5c31af7Sopenharmony_ci	end
5285e5c31af7Sopenharmony_ci
5286e5c31af7Sopenharmony_ci	case mediump_bvec2_yxy
5287e5c31af7Sopenharmony_ci		version 310 es
5288e5c31af7Sopenharmony_ci		values
5289e5c31af7Sopenharmony_ci		{
5290e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5291e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
5292e5c31af7Sopenharmony_ci		}
5293e5c31af7Sopenharmony_ci
5294e5c31af7Sopenharmony_ci		both ""
5295e5c31af7Sopenharmony_ci			#version 310 es
5296e5c31af7Sopenharmony_ci			precision highp float;
5297e5c31af7Sopenharmony_ci			precision highp int;
5298e5c31af7Sopenharmony_ci
5299e5c31af7Sopenharmony_ci			${DECLARATIONS}
5300e5c31af7Sopenharmony_ci
5301e5c31af7Sopenharmony_ci			void main()
5302e5c31af7Sopenharmony_ci			{
5303e5c31af7Sopenharmony_ci				${SETUP}
5304e5c31af7Sopenharmony_ci				out0 = in0.yxy;
5305e5c31af7Sopenharmony_ci				${OUTPUT}
5306e5c31af7Sopenharmony_ci			}
5307e5c31af7Sopenharmony_ci		""
5308e5c31af7Sopenharmony_ci	end
5309e5c31af7Sopenharmony_ci
5310e5c31af7Sopenharmony_ci	case mediump_bvec2_xyxx
5311e5c31af7Sopenharmony_ci		version 310 es
5312e5c31af7Sopenharmony_ci		values
5313e5c31af7Sopenharmony_ci		{
5314e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5315e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5316e5c31af7Sopenharmony_ci		}
5317e5c31af7Sopenharmony_ci
5318e5c31af7Sopenharmony_ci		both ""
5319e5c31af7Sopenharmony_ci			#version 310 es
5320e5c31af7Sopenharmony_ci			precision highp float;
5321e5c31af7Sopenharmony_ci			precision highp int;
5322e5c31af7Sopenharmony_ci
5323e5c31af7Sopenharmony_ci			${DECLARATIONS}
5324e5c31af7Sopenharmony_ci
5325e5c31af7Sopenharmony_ci			void main()
5326e5c31af7Sopenharmony_ci			{
5327e5c31af7Sopenharmony_ci				${SETUP}
5328e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
5329e5c31af7Sopenharmony_ci				${OUTPUT}
5330e5c31af7Sopenharmony_ci			}
5331e5c31af7Sopenharmony_ci		""
5332e5c31af7Sopenharmony_ci	end
5333e5c31af7Sopenharmony_ci
5334e5c31af7Sopenharmony_ci	case mediump_bvec2_yyyy
5335e5c31af7Sopenharmony_ci		version 310 es
5336e5c31af7Sopenharmony_ci		values
5337e5c31af7Sopenharmony_ci		{
5338e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5339e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5340e5c31af7Sopenharmony_ci		}
5341e5c31af7Sopenharmony_ci
5342e5c31af7Sopenharmony_ci		both ""
5343e5c31af7Sopenharmony_ci			#version 310 es
5344e5c31af7Sopenharmony_ci			precision highp float;
5345e5c31af7Sopenharmony_ci			precision highp int;
5346e5c31af7Sopenharmony_ci
5347e5c31af7Sopenharmony_ci			${DECLARATIONS}
5348e5c31af7Sopenharmony_ci
5349e5c31af7Sopenharmony_ci			void main()
5350e5c31af7Sopenharmony_ci			{
5351e5c31af7Sopenharmony_ci				${SETUP}
5352e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
5353e5c31af7Sopenharmony_ci				${OUTPUT}
5354e5c31af7Sopenharmony_ci			}
5355e5c31af7Sopenharmony_ci		""
5356e5c31af7Sopenharmony_ci	end
5357e5c31af7Sopenharmony_ci
5358e5c31af7Sopenharmony_ci	case mediump_bvec2_s
5359e5c31af7Sopenharmony_ci		version 310 es
5360e5c31af7Sopenharmony_ci		values
5361e5c31af7Sopenharmony_ci		{
5362e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5363e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
5364e5c31af7Sopenharmony_ci		}
5365e5c31af7Sopenharmony_ci
5366e5c31af7Sopenharmony_ci		both ""
5367e5c31af7Sopenharmony_ci			#version 310 es
5368e5c31af7Sopenharmony_ci			precision highp float;
5369e5c31af7Sopenharmony_ci			precision highp int;
5370e5c31af7Sopenharmony_ci
5371e5c31af7Sopenharmony_ci			${DECLARATIONS}
5372e5c31af7Sopenharmony_ci
5373e5c31af7Sopenharmony_ci			void main()
5374e5c31af7Sopenharmony_ci			{
5375e5c31af7Sopenharmony_ci				${SETUP}
5376e5c31af7Sopenharmony_ci				out0 = in0.s;
5377e5c31af7Sopenharmony_ci				${OUTPUT}
5378e5c31af7Sopenharmony_ci			}
5379e5c31af7Sopenharmony_ci		""
5380e5c31af7Sopenharmony_ci	end
5381e5c31af7Sopenharmony_ci
5382e5c31af7Sopenharmony_ci	case mediump_bvec2_ss
5383e5c31af7Sopenharmony_ci		version 310 es
5384e5c31af7Sopenharmony_ci		values
5385e5c31af7Sopenharmony_ci		{
5386e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5387e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
5388e5c31af7Sopenharmony_ci		}
5389e5c31af7Sopenharmony_ci
5390e5c31af7Sopenharmony_ci		both ""
5391e5c31af7Sopenharmony_ci			#version 310 es
5392e5c31af7Sopenharmony_ci			precision highp float;
5393e5c31af7Sopenharmony_ci			precision highp int;
5394e5c31af7Sopenharmony_ci
5395e5c31af7Sopenharmony_ci			${DECLARATIONS}
5396e5c31af7Sopenharmony_ci
5397e5c31af7Sopenharmony_ci			void main()
5398e5c31af7Sopenharmony_ci			{
5399e5c31af7Sopenharmony_ci				${SETUP}
5400e5c31af7Sopenharmony_ci				out0 = in0.ss;
5401e5c31af7Sopenharmony_ci				${OUTPUT}
5402e5c31af7Sopenharmony_ci			}
5403e5c31af7Sopenharmony_ci		""
5404e5c31af7Sopenharmony_ci	end
5405e5c31af7Sopenharmony_ci
5406e5c31af7Sopenharmony_ci	case mediump_bvec2_st
5407e5c31af7Sopenharmony_ci		version 310 es
5408e5c31af7Sopenharmony_ci		values
5409e5c31af7Sopenharmony_ci		{
5410e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5411e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5412e5c31af7Sopenharmony_ci		}
5413e5c31af7Sopenharmony_ci
5414e5c31af7Sopenharmony_ci		both ""
5415e5c31af7Sopenharmony_ci			#version 310 es
5416e5c31af7Sopenharmony_ci			precision highp float;
5417e5c31af7Sopenharmony_ci			precision highp int;
5418e5c31af7Sopenharmony_ci
5419e5c31af7Sopenharmony_ci			${DECLARATIONS}
5420e5c31af7Sopenharmony_ci
5421e5c31af7Sopenharmony_ci			void main()
5422e5c31af7Sopenharmony_ci			{
5423e5c31af7Sopenharmony_ci				${SETUP}
5424e5c31af7Sopenharmony_ci				out0 = in0.st;
5425e5c31af7Sopenharmony_ci				${OUTPUT}
5426e5c31af7Sopenharmony_ci			}
5427e5c31af7Sopenharmony_ci		""
5428e5c31af7Sopenharmony_ci	end
5429e5c31af7Sopenharmony_ci
5430e5c31af7Sopenharmony_ci	case mediump_bvec2_ts
5431e5c31af7Sopenharmony_ci		version 310 es
5432e5c31af7Sopenharmony_ci		values
5433e5c31af7Sopenharmony_ci		{
5434e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5435e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, true) | bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, false) ];
5436e5c31af7Sopenharmony_ci		}
5437e5c31af7Sopenharmony_ci
5438e5c31af7Sopenharmony_ci		both ""
5439e5c31af7Sopenharmony_ci			#version 310 es
5440e5c31af7Sopenharmony_ci			precision highp float;
5441e5c31af7Sopenharmony_ci			precision highp int;
5442e5c31af7Sopenharmony_ci
5443e5c31af7Sopenharmony_ci			${DECLARATIONS}
5444e5c31af7Sopenharmony_ci
5445e5c31af7Sopenharmony_ci			void main()
5446e5c31af7Sopenharmony_ci			{
5447e5c31af7Sopenharmony_ci				${SETUP}
5448e5c31af7Sopenharmony_ci				out0 = in0.ts;
5449e5c31af7Sopenharmony_ci				${OUTPUT}
5450e5c31af7Sopenharmony_ci			}
5451e5c31af7Sopenharmony_ci		""
5452e5c31af7Sopenharmony_ci	end
5453e5c31af7Sopenharmony_ci
5454e5c31af7Sopenharmony_ci	case mediump_bvec2_tst
5455e5c31af7Sopenharmony_ci		version 310 es
5456e5c31af7Sopenharmony_ci		values
5457e5c31af7Sopenharmony_ci		{
5458e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5459e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
5460e5c31af7Sopenharmony_ci		}
5461e5c31af7Sopenharmony_ci
5462e5c31af7Sopenharmony_ci		both ""
5463e5c31af7Sopenharmony_ci			#version 310 es
5464e5c31af7Sopenharmony_ci			precision highp float;
5465e5c31af7Sopenharmony_ci			precision highp int;
5466e5c31af7Sopenharmony_ci
5467e5c31af7Sopenharmony_ci			${DECLARATIONS}
5468e5c31af7Sopenharmony_ci
5469e5c31af7Sopenharmony_ci			void main()
5470e5c31af7Sopenharmony_ci			{
5471e5c31af7Sopenharmony_ci				${SETUP}
5472e5c31af7Sopenharmony_ci				out0 = in0.tst;
5473e5c31af7Sopenharmony_ci				${OUTPUT}
5474e5c31af7Sopenharmony_ci			}
5475e5c31af7Sopenharmony_ci		""
5476e5c31af7Sopenharmony_ci	end
5477e5c31af7Sopenharmony_ci
5478e5c31af7Sopenharmony_ci	case mediump_bvec2_stss
5479e5c31af7Sopenharmony_ci		version 310 es
5480e5c31af7Sopenharmony_ci		values
5481e5c31af7Sopenharmony_ci		{
5482e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5483e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5484e5c31af7Sopenharmony_ci		}
5485e5c31af7Sopenharmony_ci
5486e5c31af7Sopenharmony_ci		both ""
5487e5c31af7Sopenharmony_ci			#version 310 es
5488e5c31af7Sopenharmony_ci			precision highp float;
5489e5c31af7Sopenharmony_ci			precision highp int;
5490e5c31af7Sopenharmony_ci
5491e5c31af7Sopenharmony_ci			${DECLARATIONS}
5492e5c31af7Sopenharmony_ci
5493e5c31af7Sopenharmony_ci			void main()
5494e5c31af7Sopenharmony_ci			{
5495e5c31af7Sopenharmony_ci				${SETUP}
5496e5c31af7Sopenharmony_ci				out0 = in0.stss;
5497e5c31af7Sopenharmony_ci				${OUTPUT}
5498e5c31af7Sopenharmony_ci			}
5499e5c31af7Sopenharmony_ci		""
5500e5c31af7Sopenharmony_ci	end
5501e5c31af7Sopenharmony_ci
5502e5c31af7Sopenharmony_ci	case mediump_bvec2_tttt
5503e5c31af7Sopenharmony_ci		version 310 es
5504e5c31af7Sopenharmony_ci		values
5505e5c31af7Sopenharmony_ci		{
5506e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5507e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5508e5c31af7Sopenharmony_ci		}
5509e5c31af7Sopenharmony_ci
5510e5c31af7Sopenharmony_ci		both ""
5511e5c31af7Sopenharmony_ci			#version 310 es
5512e5c31af7Sopenharmony_ci			precision highp float;
5513e5c31af7Sopenharmony_ci			precision highp int;
5514e5c31af7Sopenharmony_ci
5515e5c31af7Sopenharmony_ci			${DECLARATIONS}
5516e5c31af7Sopenharmony_ci
5517e5c31af7Sopenharmony_ci			void main()
5518e5c31af7Sopenharmony_ci			{
5519e5c31af7Sopenharmony_ci				${SETUP}
5520e5c31af7Sopenharmony_ci				out0 = in0.tttt;
5521e5c31af7Sopenharmony_ci				${OUTPUT}
5522e5c31af7Sopenharmony_ci			}
5523e5c31af7Sopenharmony_ci		""
5524e5c31af7Sopenharmony_ci	end
5525e5c31af7Sopenharmony_ci
5526e5c31af7Sopenharmony_ci	case mediump_bvec2_r
5527e5c31af7Sopenharmony_ci		version 310 es
5528e5c31af7Sopenharmony_ci		values
5529e5c31af7Sopenharmony_ci		{
5530e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5531e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
5532e5c31af7Sopenharmony_ci		}
5533e5c31af7Sopenharmony_ci
5534e5c31af7Sopenharmony_ci		both ""
5535e5c31af7Sopenharmony_ci			#version 310 es
5536e5c31af7Sopenharmony_ci			precision highp float;
5537e5c31af7Sopenharmony_ci			precision highp int;
5538e5c31af7Sopenharmony_ci
5539e5c31af7Sopenharmony_ci			${DECLARATIONS}
5540e5c31af7Sopenharmony_ci
5541e5c31af7Sopenharmony_ci			void main()
5542e5c31af7Sopenharmony_ci			{
5543e5c31af7Sopenharmony_ci				${SETUP}
5544e5c31af7Sopenharmony_ci				out0 = in0.r;
5545e5c31af7Sopenharmony_ci				${OUTPUT}
5546e5c31af7Sopenharmony_ci			}
5547e5c31af7Sopenharmony_ci		""
5548e5c31af7Sopenharmony_ci	end
5549e5c31af7Sopenharmony_ci
5550e5c31af7Sopenharmony_ci	case mediump_bvec2_rr
5551e5c31af7Sopenharmony_ci		version 310 es
5552e5c31af7Sopenharmony_ci		values
5553e5c31af7Sopenharmony_ci		{
5554e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5555e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
5556e5c31af7Sopenharmony_ci		}
5557e5c31af7Sopenharmony_ci
5558e5c31af7Sopenharmony_ci		both ""
5559e5c31af7Sopenharmony_ci			#version 310 es
5560e5c31af7Sopenharmony_ci			precision highp float;
5561e5c31af7Sopenharmony_ci			precision highp int;
5562e5c31af7Sopenharmony_ci
5563e5c31af7Sopenharmony_ci			${DECLARATIONS}
5564e5c31af7Sopenharmony_ci
5565e5c31af7Sopenharmony_ci			void main()
5566e5c31af7Sopenharmony_ci			{
5567e5c31af7Sopenharmony_ci				${SETUP}
5568e5c31af7Sopenharmony_ci				out0 = in0.rr;
5569e5c31af7Sopenharmony_ci				${OUTPUT}
5570e5c31af7Sopenharmony_ci			}
5571e5c31af7Sopenharmony_ci		""
5572e5c31af7Sopenharmony_ci	end
5573e5c31af7Sopenharmony_ci
5574e5c31af7Sopenharmony_ci	case mediump_bvec2_rg
5575e5c31af7Sopenharmony_ci		version 310 es
5576e5c31af7Sopenharmony_ci		values
5577e5c31af7Sopenharmony_ci		{
5578e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5579e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5580e5c31af7Sopenharmony_ci		}
5581e5c31af7Sopenharmony_ci
5582e5c31af7Sopenharmony_ci		both ""
5583e5c31af7Sopenharmony_ci			#version 310 es
5584e5c31af7Sopenharmony_ci			precision highp float;
5585e5c31af7Sopenharmony_ci			precision highp int;
5586e5c31af7Sopenharmony_ci
5587e5c31af7Sopenharmony_ci			${DECLARATIONS}
5588e5c31af7Sopenharmony_ci
5589e5c31af7Sopenharmony_ci			void main()
5590e5c31af7Sopenharmony_ci			{
5591e5c31af7Sopenharmony_ci				${SETUP}
5592e5c31af7Sopenharmony_ci				out0 = in0.rg;
5593e5c31af7Sopenharmony_ci				${OUTPUT}
5594e5c31af7Sopenharmony_ci			}
5595e5c31af7Sopenharmony_ci		""
5596e5c31af7Sopenharmony_ci	end
5597e5c31af7Sopenharmony_ci
5598e5c31af7Sopenharmony_ci	case mediump_bvec2_gr
5599e5c31af7Sopenharmony_ci		version 310 es
5600e5c31af7Sopenharmony_ci		values
5601e5c31af7Sopenharmony_ci		{
5602e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5603e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, true) | bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, false) ];
5604e5c31af7Sopenharmony_ci		}
5605e5c31af7Sopenharmony_ci
5606e5c31af7Sopenharmony_ci		both ""
5607e5c31af7Sopenharmony_ci			#version 310 es
5608e5c31af7Sopenharmony_ci			precision highp float;
5609e5c31af7Sopenharmony_ci			precision highp int;
5610e5c31af7Sopenharmony_ci
5611e5c31af7Sopenharmony_ci			${DECLARATIONS}
5612e5c31af7Sopenharmony_ci
5613e5c31af7Sopenharmony_ci			void main()
5614e5c31af7Sopenharmony_ci			{
5615e5c31af7Sopenharmony_ci				${SETUP}
5616e5c31af7Sopenharmony_ci				out0 = in0.gr;
5617e5c31af7Sopenharmony_ci				${OUTPUT}
5618e5c31af7Sopenharmony_ci			}
5619e5c31af7Sopenharmony_ci		""
5620e5c31af7Sopenharmony_ci	end
5621e5c31af7Sopenharmony_ci
5622e5c31af7Sopenharmony_ci	case mediump_bvec2_grg
5623e5c31af7Sopenharmony_ci		version 310 es
5624e5c31af7Sopenharmony_ci		values
5625e5c31af7Sopenharmony_ci		{
5626e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5627e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
5628e5c31af7Sopenharmony_ci		}
5629e5c31af7Sopenharmony_ci
5630e5c31af7Sopenharmony_ci		both ""
5631e5c31af7Sopenharmony_ci			#version 310 es
5632e5c31af7Sopenharmony_ci			precision highp float;
5633e5c31af7Sopenharmony_ci			precision highp int;
5634e5c31af7Sopenharmony_ci
5635e5c31af7Sopenharmony_ci			${DECLARATIONS}
5636e5c31af7Sopenharmony_ci
5637e5c31af7Sopenharmony_ci			void main()
5638e5c31af7Sopenharmony_ci			{
5639e5c31af7Sopenharmony_ci				${SETUP}
5640e5c31af7Sopenharmony_ci				out0 = in0.grg;
5641e5c31af7Sopenharmony_ci				${OUTPUT}
5642e5c31af7Sopenharmony_ci			}
5643e5c31af7Sopenharmony_ci		""
5644e5c31af7Sopenharmony_ci	end
5645e5c31af7Sopenharmony_ci
5646e5c31af7Sopenharmony_ci	case mediump_bvec2_rgrr
5647e5c31af7Sopenharmony_ci		version 310 es
5648e5c31af7Sopenharmony_ci		values
5649e5c31af7Sopenharmony_ci		{
5650e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5651e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5652e5c31af7Sopenharmony_ci		}
5653e5c31af7Sopenharmony_ci
5654e5c31af7Sopenharmony_ci		both ""
5655e5c31af7Sopenharmony_ci			#version 310 es
5656e5c31af7Sopenharmony_ci			precision highp float;
5657e5c31af7Sopenharmony_ci			precision highp int;
5658e5c31af7Sopenharmony_ci
5659e5c31af7Sopenharmony_ci			${DECLARATIONS}
5660e5c31af7Sopenharmony_ci
5661e5c31af7Sopenharmony_ci			void main()
5662e5c31af7Sopenharmony_ci			{
5663e5c31af7Sopenharmony_ci				${SETUP}
5664e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
5665e5c31af7Sopenharmony_ci				${OUTPUT}
5666e5c31af7Sopenharmony_ci			}
5667e5c31af7Sopenharmony_ci		""
5668e5c31af7Sopenharmony_ci	end
5669e5c31af7Sopenharmony_ci
5670e5c31af7Sopenharmony_ci	case mediump_bvec2_gggg
5671e5c31af7Sopenharmony_ci		version 310 es
5672e5c31af7Sopenharmony_ci		values
5673e5c31af7Sopenharmony_ci		{
5674e5c31af7Sopenharmony_ci			input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
5675e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5676e5c31af7Sopenharmony_ci		}
5677e5c31af7Sopenharmony_ci
5678e5c31af7Sopenharmony_ci		both ""
5679e5c31af7Sopenharmony_ci			#version 310 es
5680e5c31af7Sopenharmony_ci			precision highp float;
5681e5c31af7Sopenharmony_ci			precision highp int;
5682e5c31af7Sopenharmony_ci
5683e5c31af7Sopenharmony_ci			${DECLARATIONS}
5684e5c31af7Sopenharmony_ci
5685e5c31af7Sopenharmony_ci			void main()
5686e5c31af7Sopenharmony_ci			{
5687e5c31af7Sopenharmony_ci				${SETUP}
5688e5c31af7Sopenharmony_ci				out0 = in0.gggg;
5689e5c31af7Sopenharmony_ci				${OUTPUT}
5690e5c31af7Sopenharmony_ci			}
5691e5c31af7Sopenharmony_ci		""
5692e5c31af7Sopenharmony_ci	end
5693e5c31af7Sopenharmony_ci
5694e5c31af7Sopenharmony_ci	case mediump_bvec3_x
5695e5c31af7Sopenharmony_ci		version 310 es
5696e5c31af7Sopenharmony_ci		values
5697e5c31af7Sopenharmony_ci		{
5698e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5699e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
5700e5c31af7Sopenharmony_ci		}
5701e5c31af7Sopenharmony_ci
5702e5c31af7Sopenharmony_ci		both ""
5703e5c31af7Sopenharmony_ci			#version 310 es
5704e5c31af7Sopenharmony_ci			precision highp float;
5705e5c31af7Sopenharmony_ci			precision highp int;
5706e5c31af7Sopenharmony_ci
5707e5c31af7Sopenharmony_ci			${DECLARATIONS}
5708e5c31af7Sopenharmony_ci
5709e5c31af7Sopenharmony_ci			void main()
5710e5c31af7Sopenharmony_ci			{
5711e5c31af7Sopenharmony_ci				${SETUP}
5712e5c31af7Sopenharmony_ci				out0 = in0.x;
5713e5c31af7Sopenharmony_ci				${OUTPUT}
5714e5c31af7Sopenharmony_ci			}
5715e5c31af7Sopenharmony_ci		""
5716e5c31af7Sopenharmony_ci	end
5717e5c31af7Sopenharmony_ci
5718e5c31af7Sopenharmony_ci	case mediump_bvec3_z
5719e5c31af7Sopenharmony_ci		version 310 es
5720e5c31af7Sopenharmony_ci		values
5721e5c31af7Sopenharmony_ci		{
5722e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5723e5c31af7Sopenharmony_ci			output bool out0 = [ false | false | false | true | false ];
5724e5c31af7Sopenharmony_ci		}
5725e5c31af7Sopenharmony_ci
5726e5c31af7Sopenharmony_ci		both ""
5727e5c31af7Sopenharmony_ci			#version 310 es
5728e5c31af7Sopenharmony_ci			precision highp float;
5729e5c31af7Sopenharmony_ci			precision highp int;
5730e5c31af7Sopenharmony_ci
5731e5c31af7Sopenharmony_ci			${DECLARATIONS}
5732e5c31af7Sopenharmony_ci
5733e5c31af7Sopenharmony_ci			void main()
5734e5c31af7Sopenharmony_ci			{
5735e5c31af7Sopenharmony_ci				${SETUP}
5736e5c31af7Sopenharmony_ci				out0 = in0.z;
5737e5c31af7Sopenharmony_ci				${OUTPUT}
5738e5c31af7Sopenharmony_ci			}
5739e5c31af7Sopenharmony_ci		""
5740e5c31af7Sopenharmony_ci	end
5741e5c31af7Sopenharmony_ci
5742e5c31af7Sopenharmony_ci	case mediump_bvec3_xz
5743e5c31af7Sopenharmony_ci		version 310 es
5744e5c31af7Sopenharmony_ci		values
5745e5c31af7Sopenharmony_ci		{
5746e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5747e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
5748e5c31af7Sopenharmony_ci		}
5749e5c31af7Sopenharmony_ci
5750e5c31af7Sopenharmony_ci		both ""
5751e5c31af7Sopenharmony_ci			#version 310 es
5752e5c31af7Sopenharmony_ci			precision highp float;
5753e5c31af7Sopenharmony_ci			precision highp int;
5754e5c31af7Sopenharmony_ci
5755e5c31af7Sopenharmony_ci			${DECLARATIONS}
5756e5c31af7Sopenharmony_ci
5757e5c31af7Sopenharmony_ci			void main()
5758e5c31af7Sopenharmony_ci			{
5759e5c31af7Sopenharmony_ci				${SETUP}
5760e5c31af7Sopenharmony_ci				out0 = in0.xz;
5761e5c31af7Sopenharmony_ci				${OUTPUT}
5762e5c31af7Sopenharmony_ci			}
5763e5c31af7Sopenharmony_ci		""
5764e5c31af7Sopenharmony_ci	end
5765e5c31af7Sopenharmony_ci
5766e5c31af7Sopenharmony_ci	case mediump_bvec3_zz
5767e5c31af7Sopenharmony_ci		version 310 es
5768e5c31af7Sopenharmony_ci		values
5769e5c31af7Sopenharmony_ci		{
5770e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5771e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
5772e5c31af7Sopenharmony_ci		}
5773e5c31af7Sopenharmony_ci
5774e5c31af7Sopenharmony_ci		both ""
5775e5c31af7Sopenharmony_ci			#version 310 es
5776e5c31af7Sopenharmony_ci			precision highp float;
5777e5c31af7Sopenharmony_ci			precision highp int;
5778e5c31af7Sopenharmony_ci
5779e5c31af7Sopenharmony_ci			${DECLARATIONS}
5780e5c31af7Sopenharmony_ci
5781e5c31af7Sopenharmony_ci			void main()
5782e5c31af7Sopenharmony_ci			{
5783e5c31af7Sopenharmony_ci				${SETUP}
5784e5c31af7Sopenharmony_ci				out0 = in0.zz;
5785e5c31af7Sopenharmony_ci				${OUTPUT}
5786e5c31af7Sopenharmony_ci			}
5787e5c31af7Sopenharmony_ci		""
5788e5c31af7Sopenharmony_ci	end
5789e5c31af7Sopenharmony_ci
5790e5c31af7Sopenharmony_ci	case mediump_bvec3_xyz
5791e5c31af7Sopenharmony_ci		version 310 es
5792e5c31af7Sopenharmony_ci		values
5793e5c31af7Sopenharmony_ci		{
5794e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5795e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5796e5c31af7Sopenharmony_ci		}
5797e5c31af7Sopenharmony_ci
5798e5c31af7Sopenharmony_ci		both ""
5799e5c31af7Sopenharmony_ci			#version 310 es
5800e5c31af7Sopenharmony_ci			precision highp float;
5801e5c31af7Sopenharmony_ci			precision highp int;
5802e5c31af7Sopenharmony_ci
5803e5c31af7Sopenharmony_ci			${DECLARATIONS}
5804e5c31af7Sopenharmony_ci
5805e5c31af7Sopenharmony_ci			void main()
5806e5c31af7Sopenharmony_ci			{
5807e5c31af7Sopenharmony_ci				${SETUP}
5808e5c31af7Sopenharmony_ci				out0 = in0.xyz;
5809e5c31af7Sopenharmony_ci				${OUTPUT}
5810e5c31af7Sopenharmony_ci			}
5811e5c31af7Sopenharmony_ci		""
5812e5c31af7Sopenharmony_ci	end
5813e5c31af7Sopenharmony_ci
5814e5c31af7Sopenharmony_ci	case mediump_bvec3_zyx
5815e5c31af7Sopenharmony_ci		version 310 es
5816e5c31af7Sopenharmony_ci		values
5817e5c31af7Sopenharmony_ci		{
5818e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5819e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5820e5c31af7Sopenharmony_ci		}
5821e5c31af7Sopenharmony_ci
5822e5c31af7Sopenharmony_ci		both ""
5823e5c31af7Sopenharmony_ci			#version 310 es
5824e5c31af7Sopenharmony_ci			precision highp float;
5825e5c31af7Sopenharmony_ci			precision highp int;
5826e5c31af7Sopenharmony_ci
5827e5c31af7Sopenharmony_ci			${DECLARATIONS}
5828e5c31af7Sopenharmony_ci
5829e5c31af7Sopenharmony_ci			void main()
5830e5c31af7Sopenharmony_ci			{
5831e5c31af7Sopenharmony_ci				${SETUP}
5832e5c31af7Sopenharmony_ci				out0 = in0.zyx;
5833e5c31af7Sopenharmony_ci				${OUTPUT}
5834e5c31af7Sopenharmony_ci			}
5835e5c31af7Sopenharmony_ci		""
5836e5c31af7Sopenharmony_ci	end
5837e5c31af7Sopenharmony_ci
5838e5c31af7Sopenharmony_ci	case mediump_bvec3_xxx
5839e5c31af7Sopenharmony_ci		version 310 es
5840e5c31af7Sopenharmony_ci		values
5841e5c31af7Sopenharmony_ci		{
5842e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5843e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5844e5c31af7Sopenharmony_ci		}
5845e5c31af7Sopenharmony_ci
5846e5c31af7Sopenharmony_ci		both ""
5847e5c31af7Sopenharmony_ci			#version 310 es
5848e5c31af7Sopenharmony_ci			precision highp float;
5849e5c31af7Sopenharmony_ci			precision highp int;
5850e5c31af7Sopenharmony_ci
5851e5c31af7Sopenharmony_ci			${DECLARATIONS}
5852e5c31af7Sopenharmony_ci
5853e5c31af7Sopenharmony_ci			void main()
5854e5c31af7Sopenharmony_ci			{
5855e5c31af7Sopenharmony_ci				${SETUP}
5856e5c31af7Sopenharmony_ci				out0 = in0.xxx;
5857e5c31af7Sopenharmony_ci				${OUTPUT}
5858e5c31af7Sopenharmony_ci			}
5859e5c31af7Sopenharmony_ci		""
5860e5c31af7Sopenharmony_ci	end
5861e5c31af7Sopenharmony_ci
5862e5c31af7Sopenharmony_ci	case mediump_bvec3_zzz
5863e5c31af7Sopenharmony_ci		version 310 es
5864e5c31af7Sopenharmony_ci		values
5865e5c31af7Sopenharmony_ci		{
5866e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5867e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5868e5c31af7Sopenharmony_ci		}
5869e5c31af7Sopenharmony_ci
5870e5c31af7Sopenharmony_ci		both ""
5871e5c31af7Sopenharmony_ci			#version 310 es
5872e5c31af7Sopenharmony_ci			precision highp float;
5873e5c31af7Sopenharmony_ci			precision highp int;
5874e5c31af7Sopenharmony_ci
5875e5c31af7Sopenharmony_ci			${DECLARATIONS}
5876e5c31af7Sopenharmony_ci
5877e5c31af7Sopenharmony_ci			void main()
5878e5c31af7Sopenharmony_ci			{
5879e5c31af7Sopenharmony_ci				${SETUP}
5880e5c31af7Sopenharmony_ci				out0 = in0.zzz;
5881e5c31af7Sopenharmony_ci				${OUTPUT}
5882e5c31af7Sopenharmony_ci			}
5883e5c31af7Sopenharmony_ci		""
5884e5c31af7Sopenharmony_ci	end
5885e5c31af7Sopenharmony_ci
5886e5c31af7Sopenharmony_ci	case mediump_bvec3_zzy
5887e5c31af7Sopenharmony_ci		version 310 es
5888e5c31af7Sopenharmony_ci		values
5889e5c31af7Sopenharmony_ci		{
5890e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5891e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
5892e5c31af7Sopenharmony_ci		}
5893e5c31af7Sopenharmony_ci
5894e5c31af7Sopenharmony_ci		both ""
5895e5c31af7Sopenharmony_ci			#version 310 es
5896e5c31af7Sopenharmony_ci			precision highp float;
5897e5c31af7Sopenharmony_ci			precision highp int;
5898e5c31af7Sopenharmony_ci
5899e5c31af7Sopenharmony_ci			${DECLARATIONS}
5900e5c31af7Sopenharmony_ci
5901e5c31af7Sopenharmony_ci			void main()
5902e5c31af7Sopenharmony_ci			{
5903e5c31af7Sopenharmony_ci				${SETUP}
5904e5c31af7Sopenharmony_ci				out0 = in0.zzy;
5905e5c31af7Sopenharmony_ci				${OUTPUT}
5906e5c31af7Sopenharmony_ci			}
5907e5c31af7Sopenharmony_ci		""
5908e5c31af7Sopenharmony_ci	end
5909e5c31af7Sopenharmony_ci
5910e5c31af7Sopenharmony_ci	case mediump_bvec3_yxy
5911e5c31af7Sopenharmony_ci		version 310 es
5912e5c31af7Sopenharmony_ci		values
5913e5c31af7Sopenharmony_ci		{
5914e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5915e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
5916e5c31af7Sopenharmony_ci		}
5917e5c31af7Sopenharmony_ci
5918e5c31af7Sopenharmony_ci		both ""
5919e5c31af7Sopenharmony_ci			#version 310 es
5920e5c31af7Sopenharmony_ci			precision highp float;
5921e5c31af7Sopenharmony_ci			precision highp int;
5922e5c31af7Sopenharmony_ci
5923e5c31af7Sopenharmony_ci			${DECLARATIONS}
5924e5c31af7Sopenharmony_ci
5925e5c31af7Sopenharmony_ci			void main()
5926e5c31af7Sopenharmony_ci			{
5927e5c31af7Sopenharmony_ci				${SETUP}
5928e5c31af7Sopenharmony_ci				out0 = in0.yxy;
5929e5c31af7Sopenharmony_ci				${OUTPUT}
5930e5c31af7Sopenharmony_ci			}
5931e5c31af7Sopenharmony_ci		""
5932e5c31af7Sopenharmony_ci	end
5933e5c31af7Sopenharmony_ci
5934e5c31af7Sopenharmony_ci	case mediump_bvec3_xzx
5935e5c31af7Sopenharmony_ci		version 310 es
5936e5c31af7Sopenharmony_ci		values
5937e5c31af7Sopenharmony_ci		{
5938e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5939e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5940e5c31af7Sopenharmony_ci		}
5941e5c31af7Sopenharmony_ci
5942e5c31af7Sopenharmony_ci		both ""
5943e5c31af7Sopenharmony_ci			#version 310 es
5944e5c31af7Sopenharmony_ci			precision highp float;
5945e5c31af7Sopenharmony_ci			precision highp int;
5946e5c31af7Sopenharmony_ci
5947e5c31af7Sopenharmony_ci			${DECLARATIONS}
5948e5c31af7Sopenharmony_ci
5949e5c31af7Sopenharmony_ci			void main()
5950e5c31af7Sopenharmony_ci			{
5951e5c31af7Sopenharmony_ci				${SETUP}
5952e5c31af7Sopenharmony_ci				out0 = in0.xzx;
5953e5c31af7Sopenharmony_ci				${OUTPUT}
5954e5c31af7Sopenharmony_ci			}
5955e5c31af7Sopenharmony_ci		""
5956e5c31af7Sopenharmony_ci	end
5957e5c31af7Sopenharmony_ci
5958e5c31af7Sopenharmony_ci	case mediump_bvec3_xyyx
5959e5c31af7Sopenharmony_ci		version 310 es
5960e5c31af7Sopenharmony_ci		values
5961e5c31af7Sopenharmony_ci		{
5962e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5963e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(false, true, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5964e5c31af7Sopenharmony_ci		}
5965e5c31af7Sopenharmony_ci
5966e5c31af7Sopenharmony_ci		both ""
5967e5c31af7Sopenharmony_ci			#version 310 es
5968e5c31af7Sopenharmony_ci			precision highp float;
5969e5c31af7Sopenharmony_ci			precision highp int;
5970e5c31af7Sopenharmony_ci
5971e5c31af7Sopenharmony_ci			${DECLARATIONS}
5972e5c31af7Sopenharmony_ci
5973e5c31af7Sopenharmony_ci			void main()
5974e5c31af7Sopenharmony_ci			{
5975e5c31af7Sopenharmony_ci				${SETUP}
5976e5c31af7Sopenharmony_ci				out0 = in0.xyyx;
5977e5c31af7Sopenharmony_ci				${OUTPUT}
5978e5c31af7Sopenharmony_ci			}
5979e5c31af7Sopenharmony_ci		""
5980e5c31af7Sopenharmony_ci	end
5981e5c31af7Sopenharmony_ci
5982e5c31af7Sopenharmony_ci	case mediump_bvec3_zzzz
5983e5c31af7Sopenharmony_ci		version 310 es
5984e5c31af7Sopenharmony_ci		values
5985e5c31af7Sopenharmony_ci		{
5986e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
5987e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
5988e5c31af7Sopenharmony_ci		}
5989e5c31af7Sopenharmony_ci
5990e5c31af7Sopenharmony_ci		both ""
5991e5c31af7Sopenharmony_ci			#version 310 es
5992e5c31af7Sopenharmony_ci			precision highp float;
5993e5c31af7Sopenharmony_ci			precision highp int;
5994e5c31af7Sopenharmony_ci
5995e5c31af7Sopenharmony_ci			${DECLARATIONS}
5996e5c31af7Sopenharmony_ci
5997e5c31af7Sopenharmony_ci			void main()
5998e5c31af7Sopenharmony_ci			{
5999e5c31af7Sopenharmony_ci				${SETUP}
6000e5c31af7Sopenharmony_ci				out0 = in0.zzzz;
6001e5c31af7Sopenharmony_ci				${OUTPUT}
6002e5c31af7Sopenharmony_ci			}
6003e5c31af7Sopenharmony_ci		""
6004e5c31af7Sopenharmony_ci	end
6005e5c31af7Sopenharmony_ci
6006e5c31af7Sopenharmony_ci	case mediump_bvec3_s
6007e5c31af7Sopenharmony_ci		version 310 es
6008e5c31af7Sopenharmony_ci		values
6009e5c31af7Sopenharmony_ci		{
6010e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6011e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
6012e5c31af7Sopenharmony_ci		}
6013e5c31af7Sopenharmony_ci
6014e5c31af7Sopenharmony_ci		both ""
6015e5c31af7Sopenharmony_ci			#version 310 es
6016e5c31af7Sopenharmony_ci			precision highp float;
6017e5c31af7Sopenharmony_ci			precision highp int;
6018e5c31af7Sopenharmony_ci
6019e5c31af7Sopenharmony_ci			${DECLARATIONS}
6020e5c31af7Sopenharmony_ci
6021e5c31af7Sopenharmony_ci			void main()
6022e5c31af7Sopenharmony_ci			{
6023e5c31af7Sopenharmony_ci				${SETUP}
6024e5c31af7Sopenharmony_ci				out0 = in0.s;
6025e5c31af7Sopenharmony_ci				${OUTPUT}
6026e5c31af7Sopenharmony_ci			}
6027e5c31af7Sopenharmony_ci		""
6028e5c31af7Sopenharmony_ci	end
6029e5c31af7Sopenharmony_ci
6030e5c31af7Sopenharmony_ci	case mediump_bvec3_p
6031e5c31af7Sopenharmony_ci		version 310 es
6032e5c31af7Sopenharmony_ci		values
6033e5c31af7Sopenharmony_ci		{
6034e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6035e5c31af7Sopenharmony_ci			output bool out0 = [ false | false | false | true | false ];
6036e5c31af7Sopenharmony_ci		}
6037e5c31af7Sopenharmony_ci
6038e5c31af7Sopenharmony_ci		both ""
6039e5c31af7Sopenharmony_ci			#version 310 es
6040e5c31af7Sopenharmony_ci			precision highp float;
6041e5c31af7Sopenharmony_ci			precision highp int;
6042e5c31af7Sopenharmony_ci
6043e5c31af7Sopenharmony_ci			${DECLARATIONS}
6044e5c31af7Sopenharmony_ci
6045e5c31af7Sopenharmony_ci			void main()
6046e5c31af7Sopenharmony_ci			{
6047e5c31af7Sopenharmony_ci				${SETUP}
6048e5c31af7Sopenharmony_ci				out0 = in0.p;
6049e5c31af7Sopenharmony_ci				${OUTPUT}
6050e5c31af7Sopenharmony_ci			}
6051e5c31af7Sopenharmony_ci		""
6052e5c31af7Sopenharmony_ci	end
6053e5c31af7Sopenharmony_ci
6054e5c31af7Sopenharmony_ci	case mediump_bvec3_sp
6055e5c31af7Sopenharmony_ci		version 310 es
6056e5c31af7Sopenharmony_ci		values
6057e5c31af7Sopenharmony_ci		{
6058e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6059e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6060e5c31af7Sopenharmony_ci		}
6061e5c31af7Sopenharmony_ci
6062e5c31af7Sopenharmony_ci		both ""
6063e5c31af7Sopenharmony_ci			#version 310 es
6064e5c31af7Sopenharmony_ci			precision highp float;
6065e5c31af7Sopenharmony_ci			precision highp int;
6066e5c31af7Sopenharmony_ci
6067e5c31af7Sopenharmony_ci			${DECLARATIONS}
6068e5c31af7Sopenharmony_ci
6069e5c31af7Sopenharmony_ci			void main()
6070e5c31af7Sopenharmony_ci			{
6071e5c31af7Sopenharmony_ci				${SETUP}
6072e5c31af7Sopenharmony_ci				out0 = in0.sp;
6073e5c31af7Sopenharmony_ci				${OUTPUT}
6074e5c31af7Sopenharmony_ci			}
6075e5c31af7Sopenharmony_ci		""
6076e5c31af7Sopenharmony_ci	end
6077e5c31af7Sopenharmony_ci
6078e5c31af7Sopenharmony_ci	case mediump_bvec3_pp
6079e5c31af7Sopenharmony_ci		version 310 es
6080e5c31af7Sopenharmony_ci		values
6081e5c31af7Sopenharmony_ci		{
6082e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6083e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6084e5c31af7Sopenharmony_ci		}
6085e5c31af7Sopenharmony_ci
6086e5c31af7Sopenharmony_ci		both ""
6087e5c31af7Sopenharmony_ci			#version 310 es
6088e5c31af7Sopenharmony_ci			precision highp float;
6089e5c31af7Sopenharmony_ci			precision highp int;
6090e5c31af7Sopenharmony_ci
6091e5c31af7Sopenharmony_ci			${DECLARATIONS}
6092e5c31af7Sopenharmony_ci
6093e5c31af7Sopenharmony_ci			void main()
6094e5c31af7Sopenharmony_ci			{
6095e5c31af7Sopenharmony_ci				${SETUP}
6096e5c31af7Sopenharmony_ci				out0 = in0.pp;
6097e5c31af7Sopenharmony_ci				${OUTPUT}
6098e5c31af7Sopenharmony_ci			}
6099e5c31af7Sopenharmony_ci		""
6100e5c31af7Sopenharmony_ci	end
6101e5c31af7Sopenharmony_ci
6102e5c31af7Sopenharmony_ci	case mediump_bvec3_stp
6103e5c31af7Sopenharmony_ci		version 310 es
6104e5c31af7Sopenharmony_ci		values
6105e5c31af7Sopenharmony_ci		{
6106e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6107e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6108e5c31af7Sopenharmony_ci		}
6109e5c31af7Sopenharmony_ci
6110e5c31af7Sopenharmony_ci		both ""
6111e5c31af7Sopenharmony_ci			#version 310 es
6112e5c31af7Sopenharmony_ci			precision highp float;
6113e5c31af7Sopenharmony_ci			precision highp int;
6114e5c31af7Sopenharmony_ci
6115e5c31af7Sopenharmony_ci			${DECLARATIONS}
6116e5c31af7Sopenharmony_ci
6117e5c31af7Sopenharmony_ci			void main()
6118e5c31af7Sopenharmony_ci			{
6119e5c31af7Sopenharmony_ci				${SETUP}
6120e5c31af7Sopenharmony_ci				out0 = in0.stp;
6121e5c31af7Sopenharmony_ci				${OUTPUT}
6122e5c31af7Sopenharmony_ci			}
6123e5c31af7Sopenharmony_ci		""
6124e5c31af7Sopenharmony_ci	end
6125e5c31af7Sopenharmony_ci
6126e5c31af7Sopenharmony_ci	case mediump_bvec3_pts
6127e5c31af7Sopenharmony_ci		version 310 es
6128e5c31af7Sopenharmony_ci		values
6129e5c31af7Sopenharmony_ci		{
6130e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6131e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6132e5c31af7Sopenharmony_ci		}
6133e5c31af7Sopenharmony_ci
6134e5c31af7Sopenharmony_ci		both ""
6135e5c31af7Sopenharmony_ci			#version 310 es
6136e5c31af7Sopenharmony_ci			precision highp float;
6137e5c31af7Sopenharmony_ci			precision highp int;
6138e5c31af7Sopenharmony_ci
6139e5c31af7Sopenharmony_ci			${DECLARATIONS}
6140e5c31af7Sopenharmony_ci
6141e5c31af7Sopenharmony_ci			void main()
6142e5c31af7Sopenharmony_ci			{
6143e5c31af7Sopenharmony_ci				${SETUP}
6144e5c31af7Sopenharmony_ci				out0 = in0.pts;
6145e5c31af7Sopenharmony_ci				${OUTPUT}
6146e5c31af7Sopenharmony_ci			}
6147e5c31af7Sopenharmony_ci		""
6148e5c31af7Sopenharmony_ci	end
6149e5c31af7Sopenharmony_ci
6150e5c31af7Sopenharmony_ci	case mediump_bvec3_sss
6151e5c31af7Sopenharmony_ci		version 310 es
6152e5c31af7Sopenharmony_ci		values
6153e5c31af7Sopenharmony_ci		{
6154e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6155e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6156e5c31af7Sopenharmony_ci		}
6157e5c31af7Sopenharmony_ci
6158e5c31af7Sopenharmony_ci		both ""
6159e5c31af7Sopenharmony_ci			#version 310 es
6160e5c31af7Sopenharmony_ci			precision highp float;
6161e5c31af7Sopenharmony_ci			precision highp int;
6162e5c31af7Sopenharmony_ci
6163e5c31af7Sopenharmony_ci			${DECLARATIONS}
6164e5c31af7Sopenharmony_ci
6165e5c31af7Sopenharmony_ci			void main()
6166e5c31af7Sopenharmony_ci			{
6167e5c31af7Sopenharmony_ci				${SETUP}
6168e5c31af7Sopenharmony_ci				out0 = in0.sss;
6169e5c31af7Sopenharmony_ci				${OUTPUT}
6170e5c31af7Sopenharmony_ci			}
6171e5c31af7Sopenharmony_ci		""
6172e5c31af7Sopenharmony_ci	end
6173e5c31af7Sopenharmony_ci
6174e5c31af7Sopenharmony_ci	case mediump_bvec3_ppp
6175e5c31af7Sopenharmony_ci		version 310 es
6176e5c31af7Sopenharmony_ci		values
6177e5c31af7Sopenharmony_ci		{
6178e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6179e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6180e5c31af7Sopenharmony_ci		}
6181e5c31af7Sopenharmony_ci
6182e5c31af7Sopenharmony_ci		both ""
6183e5c31af7Sopenharmony_ci			#version 310 es
6184e5c31af7Sopenharmony_ci			precision highp float;
6185e5c31af7Sopenharmony_ci			precision highp int;
6186e5c31af7Sopenharmony_ci
6187e5c31af7Sopenharmony_ci			${DECLARATIONS}
6188e5c31af7Sopenharmony_ci
6189e5c31af7Sopenharmony_ci			void main()
6190e5c31af7Sopenharmony_ci			{
6191e5c31af7Sopenharmony_ci				${SETUP}
6192e5c31af7Sopenharmony_ci				out0 = in0.ppp;
6193e5c31af7Sopenharmony_ci				${OUTPUT}
6194e5c31af7Sopenharmony_ci			}
6195e5c31af7Sopenharmony_ci		""
6196e5c31af7Sopenharmony_ci	end
6197e5c31af7Sopenharmony_ci
6198e5c31af7Sopenharmony_ci	case mediump_bvec3_ppt
6199e5c31af7Sopenharmony_ci		version 310 es
6200e5c31af7Sopenharmony_ci		values
6201e5c31af7Sopenharmony_ci		{
6202e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6203e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
6204e5c31af7Sopenharmony_ci		}
6205e5c31af7Sopenharmony_ci
6206e5c31af7Sopenharmony_ci		both ""
6207e5c31af7Sopenharmony_ci			#version 310 es
6208e5c31af7Sopenharmony_ci			precision highp float;
6209e5c31af7Sopenharmony_ci			precision highp int;
6210e5c31af7Sopenharmony_ci
6211e5c31af7Sopenharmony_ci			${DECLARATIONS}
6212e5c31af7Sopenharmony_ci
6213e5c31af7Sopenharmony_ci			void main()
6214e5c31af7Sopenharmony_ci			{
6215e5c31af7Sopenharmony_ci				${SETUP}
6216e5c31af7Sopenharmony_ci				out0 = in0.ppt;
6217e5c31af7Sopenharmony_ci				${OUTPUT}
6218e5c31af7Sopenharmony_ci			}
6219e5c31af7Sopenharmony_ci		""
6220e5c31af7Sopenharmony_ci	end
6221e5c31af7Sopenharmony_ci
6222e5c31af7Sopenharmony_ci	case mediump_bvec3_tst
6223e5c31af7Sopenharmony_ci		version 310 es
6224e5c31af7Sopenharmony_ci		values
6225e5c31af7Sopenharmony_ci		{
6226e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6227e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
6228e5c31af7Sopenharmony_ci		}
6229e5c31af7Sopenharmony_ci
6230e5c31af7Sopenharmony_ci		both ""
6231e5c31af7Sopenharmony_ci			#version 310 es
6232e5c31af7Sopenharmony_ci			precision highp float;
6233e5c31af7Sopenharmony_ci			precision highp int;
6234e5c31af7Sopenharmony_ci
6235e5c31af7Sopenharmony_ci			${DECLARATIONS}
6236e5c31af7Sopenharmony_ci
6237e5c31af7Sopenharmony_ci			void main()
6238e5c31af7Sopenharmony_ci			{
6239e5c31af7Sopenharmony_ci				${SETUP}
6240e5c31af7Sopenharmony_ci				out0 = in0.tst;
6241e5c31af7Sopenharmony_ci				${OUTPUT}
6242e5c31af7Sopenharmony_ci			}
6243e5c31af7Sopenharmony_ci		""
6244e5c31af7Sopenharmony_ci	end
6245e5c31af7Sopenharmony_ci
6246e5c31af7Sopenharmony_ci	case mediump_bvec3_sps
6247e5c31af7Sopenharmony_ci		version 310 es
6248e5c31af7Sopenharmony_ci		values
6249e5c31af7Sopenharmony_ci		{
6250e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6251e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6252e5c31af7Sopenharmony_ci		}
6253e5c31af7Sopenharmony_ci
6254e5c31af7Sopenharmony_ci		both ""
6255e5c31af7Sopenharmony_ci			#version 310 es
6256e5c31af7Sopenharmony_ci			precision highp float;
6257e5c31af7Sopenharmony_ci			precision highp int;
6258e5c31af7Sopenharmony_ci
6259e5c31af7Sopenharmony_ci			${DECLARATIONS}
6260e5c31af7Sopenharmony_ci
6261e5c31af7Sopenharmony_ci			void main()
6262e5c31af7Sopenharmony_ci			{
6263e5c31af7Sopenharmony_ci				${SETUP}
6264e5c31af7Sopenharmony_ci				out0 = in0.sps;
6265e5c31af7Sopenharmony_ci				${OUTPUT}
6266e5c31af7Sopenharmony_ci			}
6267e5c31af7Sopenharmony_ci		""
6268e5c31af7Sopenharmony_ci	end
6269e5c31af7Sopenharmony_ci
6270e5c31af7Sopenharmony_ci	case mediump_bvec3_stts
6271e5c31af7Sopenharmony_ci		version 310 es
6272e5c31af7Sopenharmony_ci		values
6273e5c31af7Sopenharmony_ci		{
6274e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6275e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(false, true, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6276e5c31af7Sopenharmony_ci		}
6277e5c31af7Sopenharmony_ci
6278e5c31af7Sopenharmony_ci		both ""
6279e5c31af7Sopenharmony_ci			#version 310 es
6280e5c31af7Sopenharmony_ci			precision highp float;
6281e5c31af7Sopenharmony_ci			precision highp int;
6282e5c31af7Sopenharmony_ci
6283e5c31af7Sopenharmony_ci			${DECLARATIONS}
6284e5c31af7Sopenharmony_ci
6285e5c31af7Sopenharmony_ci			void main()
6286e5c31af7Sopenharmony_ci			{
6287e5c31af7Sopenharmony_ci				${SETUP}
6288e5c31af7Sopenharmony_ci				out0 = in0.stts;
6289e5c31af7Sopenharmony_ci				${OUTPUT}
6290e5c31af7Sopenharmony_ci			}
6291e5c31af7Sopenharmony_ci		""
6292e5c31af7Sopenharmony_ci	end
6293e5c31af7Sopenharmony_ci
6294e5c31af7Sopenharmony_ci	case mediump_bvec3_pppp
6295e5c31af7Sopenharmony_ci		version 310 es
6296e5c31af7Sopenharmony_ci		values
6297e5c31af7Sopenharmony_ci		{
6298e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6299e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6300e5c31af7Sopenharmony_ci		}
6301e5c31af7Sopenharmony_ci
6302e5c31af7Sopenharmony_ci		both ""
6303e5c31af7Sopenharmony_ci			#version 310 es
6304e5c31af7Sopenharmony_ci			precision highp float;
6305e5c31af7Sopenharmony_ci			precision highp int;
6306e5c31af7Sopenharmony_ci
6307e5c31af7Sopenharmony_ci			${DECLARATIONS}
6308e5c31af7Sopenharmony_ci
6309e5c31af7Sopenharmony_ci			void main()
6310e5c31af7Sopenharmony_ci			{
6311e5c31af7Sopenharmony_ci				${SETUP}
6312e5c31af7Sopenharmony_ci				out0 = in0.pppp;
6313e5c31af7Sopenharmony_ci				${OUTPUT}
6314e5c31af7Sopenharmony_ci			}
6315e5c31af7Sopenharmony_ci		""
6316e5c31af7Sopenharmony_ci	end
6317e5c31af7Sopenharmony_ci
6318e5c31af7Sopenharmony_ci	case mediump_bvec3_r
6319e5c31af7Sopenharmony_ci		version 310 es
6320e5c31af7Sopenharmony_ci		values
6321e5c31af7Sopenharmony_ci		{
6322e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6323e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
6324e5c31af7Sopenharmony_ci		}
6325e5c31af7Sopenharmony_ci
6326e5c31af7Sopenharmony_ci		both ""
6327e5c31af7Sopenharmony_ci			#version 310 es
6328e5c31af7Sopenharmony_ci			precision highp float;
6329e5c31af7Sopenharmony_ci			precision highp int;
6330e5c31af7Sopenharmony_ci
6331e5c31af7Sopenharmony_ci			${DECLARATIONS}
6332e5c31af7Sopenharmony_ci
6333e5c31af7Sopenharmony_ci			void main()
6334e5c31af7Sopenharmony_ci			{
6335e5c31af7Sopenharmony_ci				${SETUP}
6336e5c31af7Sopenharmony_ci				out0 = in0.r;
6337e5c31af7Sopenharmony_ci				${OUTPUT}
6338e5c31af7Sopenharmony_ci			}
6339e5c31af7Sopenharmony_ci		""
6340e5c31af7Sopenharmony_ci	end
6341e5c31af7Sopenharmony_ci
6342e5c31af7Sopenharmony_ci	case mediump_bvec3_b
6343e5c31af7Sopenharmony_ci		version 310 es
6344e5c31af7Sopenharmony_ci		values
6345e5c31af7Sopenharmony_ci		{
6346e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6347e5c31af7Sopenharmony_ci			output bool out0 = [ false | false | false | true | false ];
6348e5c31af7Sopenharmony_ci		}
6349e5c31af7Sopenharmony_ci
6350e5c31af7Sopenharmony_ci		both ""
6351e5c31af7Sopenharmony_ci			#version 310 es
6352e5c31af7Sopenharmony_ci			precision highp float;
6353e5c31af7Sopenharmony_ci			precision highp int;
6354e5c31af7Sopenharmony_ci
6355e5c31af7Sopenharmony_ci			${DECLARATIONS}
6356e5c31af7Sopenharmony_ci
6357e5c31af7Sopenharmony_ci			void main()
6358e5c31af7Sopenharmony_ci			{
6359e5c31af7Sopenharmony_ci				${SETUP}
6360e5c31af7Sopenharmony_ci				out0 = in0.b;
6361e5c31af7Sopenharmony_ci				${OUTPUT}
6362e5c31af7Sopenharmony_ci			}
6363e5c31af7Sopenharmony_ci		""
6364e5c31af7Sopenharmony_ci	end
6365e5c31af7Sopenharmony_ci
6366e5c31af7Sopenharmony_ci	case mediump_bvec3_rb
6367e5c31af7Sopenharmony_ci		version 310 es
6368e5c31af7Sopenharmony_ci		values
6369e5c31af7Sopenharmony_ci		{
6370e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6371e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6372e5c31af7Sopenharmony_ci		}
6373e5c31af7Sopenharmony_ci
6374e5c31af7Sopenharmony_ci		both ""
6375e5c31af7Sopenharmony_ci			#version 310 es
6376e5c31af7Sopenharmony_ci			precision highp float;
6377e5c31af7Sopenharmony_ci			precision highp int;
6378e5c31af7Sopenharmony_ci
6379e5c31af7Sopenharmony_ci			${DECLARATIONS}
6380e5c31af7Sopenharmony_ci
6381e5c31af7Sopenharmony_ci			void main()
6382e5c31af7Sopenharmony_ci			{
6383e5c31af7Sopenharmony_ci				${SETUP}
6384e5c31af7Sopenharmony_ci				out0 = in0.rb;
6385e5c31af7Sopenharmony_ci				${OUTPUT}
6386e5c31af7Sopenharmony_ci			}
6387e5c31af7Sopenharmony_ci		""
6388e5c31af7Sopenharmony_ci	end
6389e5c31af7Sopenharmony_ci
6390e5c31af7Sopenharmony_ci	case mediump_bvec3_bb
6391e5c31af7Sopenharmony_ci		version 310 es
6392e5c31af7Sopenharmony_ci		values
6393e5c31af7Sopenharmony_ci		{
6394e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6395e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6396e5c31af7Sopenharmony_ci		}
6397e5c31af7Sopenharmony_ci
6398e5c31af7Sopenharmony_ci		both ""
6399e5c31af7Sopenharmony_ci			#version 310 es
6400e5c31af7Sopenharmony_ci			precision highp float;
6401e5c31af7Sopenharmony_ci			precision highp int;
6402e5c31af7Sopenharmony_ci
6403e5c31af7Sopenharmony_ci			${DECLARATIONS}
6404e5c31af7Sopenharmony_ci
6405e5c31af7Sopenharmony_ci			void main()
6406e5c31af7Sopenharmony_ci			{
6407e5c31af7Sopenharmony_ci				${SETUP}
6408e5c31af7Sopenharmony_ci				out0 = in0.bb;
6409e5c31af7Sopenharmony_ci				${OUTPUT}
6410e5c31af7Sopenharmony_ci			}
6411e5c31af7Sopenharmony_ci		""
6412e5c31af7Sopenharmony_ci	end
6413e5c31af7Sopenharmony_ci
6414e5c31af7Sopenharmony_ci	case mediump_bvec3_rgb
6415e5c31af7Sopenharmony_ci		version 310 es
6416e5c31af7Sopenharmony_ci		values
6417e5c31af7Sopenharmony_ci		{
6418e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6419e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6420e5c31af7Sopenharmony_ci		}
6421e5c31af7Sopenharmony_ci
6422e5c31af7Sopenharmony_ci		both ""
6423e5c31af7Sopenharmony_ci			#version 310 es
6424e5c31af7Sopenharmony_ci			precision highp float;
6425e5c31af7Sopenharmony_ci			precision highp int;
6426e5c31af7Sopenharmony_ci
6427e5c31af7Sopenharmony_ci			${DECLARATIONS}
6428e5c31af7Sopenharmony_ci
6429e5c31af7Sopenharmony_ci			void main()
6430e5c31af7Sopenharmony_ci			{
6431e5c31af7Sopenharmony_ci				${SETUP}
6432e5c31af7Sopenharmony_ci				out0 = in0.rgb;
6433e5c31af7Sopenharmony_ci				${OUTPUT}
6434e5c31af7Sopenharmony_ci			}
6435e5c31af7Sopenharmony_ci		""
6436e5c31af7Sopenharmony_ci	end
6437e5c31af7Sopenharmony_ci
6438e5c31af7Sopenharmony_ci	case mediump_bvec3_bgr
6439e5c31af7Sopenharmony_ci		version 310 es
6440e5c31af7Sopenharmony_ci		values
6441e5c31af7Sopenharmony_ci		{
6442e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6443e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6444e5c31af7Sopenharmony_ci		}
6445e5c31af7Sopenharmony_ci
6446e5c31af7Sopenharmony_ci		both ""
6447e5c31af7Sopenharmony_ci			#version 310 es
6448e5c31af7Sopenharmony_ci			precision highp float;
6449e5c31af7Sopenharmony_ci			precision highp int;
6450e5c31af7Sopenharmony_ci
6451e5c31af7Sopenharmony_ci			${DECLARATIONS}
6452e5c31af7Sopenharmony_ci
6453e5c31af7Sopenharmony_ci			void main()
6454e5c31af7Sopenharmony_ci			{
6455e5c31af7Sopenharmony_ci				${SETUP}
6456e5c31af7Sopenharmony_ci				out0 = in0.bgr;
6457e5c31af7Sopenharmony_ci				${OUTPUT}
6458e5c31af7Sopenharmony_ci			}
6459e5c31af7Sopenharmony_ci		""
6460e5c31af7Sopenharmony_ci	end
6461e5c31af7Sopenharmony_ci
6462e5c31af7Sopenharmony_ci	case mediump_bvec3_rrr
6463e5c31af7Sopenharmony_ci		version 310 es
6464e5c31af7Sopenharmony_ci		values
6465e5c31af7Sopenharmony_ci		{
6466e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6467e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6468e5c31af7Sopenharmony_ci		}
6469e5c31af7Sopenharmony_ci
6470e5c31af7Sopenharmony_ci		both ""
6471e5c31af7Sopenharmony_ci			#version 310 es
6472e5c31af7Sopenharmony_ci			precision highp float;
6473e5c31af7Sopenharmony_ci			precision highp int;
6474e5c31af7Sopenharmony_ci
6475e5c31af7Sopenharmony_ci			${DECLARATIONS}
6476e5c31af7Sopenharmony_ci
6477e5c31af7Sopenharmony_ci			void main()
6478e5c31af7Sopenharmony_ci			{
6479e5c31af7Sopenharmony_ci				${SETUP}
6480e5c31af7Sopenharmony_ci				out0 = in0.rrr;
6481e5c31af7Sopenharmony_ci				${OUTPUT}
6482e5c31af7Sopenharmony_ci			}
6483e5c31af7Sopenharmony_ci		""
6484e5c31af7Sopenharmony_ci	end
6485e5c31af7Sopenharmony_ci
6486e5c31af7Sopenharmony_ci	case mediump_bvec3_bbb
6487e5c31af7Sopenharmony_ci		version 310 es
6488e5c31af7Sopenharmony_ci		values
6489e5c31af7Sopenharmony_ci		{
6490e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6491e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6492e5c31af7Sopenharmony_ci		}
6493e5c31af7Sopenharmony_ci
6494e5c31af7Sopenharmony_ci		both ""
6495e5c31af7Sopenharmony_ci			#version 310 es
6496e5c31af7Sopenharmony_ci			precision highp float;
6497e5c31af7Sopenharmony_ci			precision highp int;
6498e5c31af7Sopenharmony_ci
6499e5c31af7Sopenharmony_ci			${DECLARATIONS}
6500e5c31af7Sopenharmony_ci
6501e5c31af7Sopenharmony_ci			void main()
6502e5c31af7Sopenharmony_ci			{
6503e5c31af7Sopenharmony_ci				${SETUP}
6504e5c31af7Sopenharmony_ci				out0 = in0.bbb;
6505e5c31af7Sopenharmony_ci				${OUTPUT}
6506e5c31af7Sopenharmony_ci			}
6507e5c31af7Sopenharmony_ci		""
6508e5c31af7Sopenharmony_ci	end
6509e5c31af7Sopenharmony_ci
6510e5c31af7Sopenharmony_ci	case mediump_bvec3_bbg
6511e5c31af7Sopenharmony_ci		version 310 es
6512e5c31af7Sopenharmony_ci		values
6513e5c31af7Sopenharmony_ci		{
6514e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6515e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
6516e5c31af7Sopenharmony_ci		}
6517e5c31af7Sopenharmony_ci
6518e5c31af7Sopenharmony_ci		both ""
6519e5c31af7Sopenharmony_ci			#version 310 es
6520e5c31af7Sopenharmony_ci			precision highp float;
6521e5c31af7Sopenharmony_ci			precision highp int;
6522e5c31af7Sopenharmony_ci
6523e5c31af7Sopenharmony_ci			${DECLARATIONS}
6524e5c31af7Sopenharmony_ci
6525e5c31af7Sopenharmony_ci			void main()
6526e5c31af7Sopenharmony_ci			{
6527e5c31af7Sopenharmony_ci				${SETUP}
6528e5c31af7Sopenharmony_ci				out0 = in0.bbg;
6529e5c31af7Sopenharmony_ci				${OUTPUT}
6530e5c31af7Sopenharmony_ci			}
6531e5c31af7Sopenharmony_ci		""
6532e5c31af7Sopenharmony_ci	end
6533e5c31af7Sopenharmony_ci
6534e5c31af7Sopenharmony_ci	case mediump_bvec3_grg
6535e5c31af7Sopenharmony_ci		version 310 es
6536e5c31af7Sopenharmony_ci		values
6537e5c31af7Sopenharmony_ci		{
6538e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6539e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, false, false) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
6540e5c31af7Sopenharmony_ci		}
6541e5c31af7Sopenharmony_ci
6542e5c31af7Sopenharmony_ci		both ""
6543e5c31af7Sopenharmony_ci			#version 310 es
6544e5c31af7Sopenharmony_ci			precision highp float;
6545e5c31af7Sopenharmony_ci			precision highp int;
6546e5c31af7Sopenharmony_ci
6547e5c31af7Sopenharmony_ci			${DECLARATIONS}
6548e5c31af7Sopenharmony_ci
6549e5c31af7Sopenharmony_ci			void main()
6550e5c31af7Sopenharmony_ci			{
6551e5c31af7Sopenharmony_ci				${SETUP}
6552e5c31af7Sopenharmony_ci				out0 = in0.grg;
6553e5c31af7Sopenharmony_ci				${OUTPUT}
6554e5c31af7Sopenharmony_ci			}
6555e5c31af7Sopenharmony_ci		""
6556e5c31af7Sopenharmony_ci	end
6557e5c31af7Sopenharmony_ci
6558e5c31af7Sopenharmony_ci	case mediump_bvec3_rbr
6559e5c31af7Sopenharmony_ci		version 310 es
6560e5c31af7Sopenharmony_ci		values
6561e5c31af7Sopenharmony_ci		{
6562e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6563e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, true) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6564e5c31af7Sopenharmony_ci		}
6565e5c31af7Sopenharmony_ci
6566e5c31af7Sopenharmony_ci		both ""
6567e5c31af7Sopenharmony_ci			#version 310 es
6568e5c31af7Sopenharmony_ci			precision highp float;
6569e5c31af7Sopenharmony_ci			precision highp int;
6570e5c31af7Sopenharmony_ci
6571e5c31af7Sopenharmony_ci			${DECLARATIONS}
6572e5c31af7Sopenharmony_ci
6573e5c31af7Sopenharmony_ci			void main()
6574e5c31af7Sopenharmony_ci			{
6575e5c31af7Sopenharmony_ci				${SETUP}
6576e5c31af7Sopenharmony_ci				out0 = in0.rbr;
6577e5c31af7Sopenharmony_ci				${OUTPUT}
6578e5c31af7Sopenharmony_ci			}
6579e5c31af7Sopenharmony_ci		""
6580e5c31af7Sopenharmony_ci	end
6581e5c31af7Sopenharmony_ci
6582e5c31af7Sopenharmony_ci	case mediump_bvec3_rggr
6583e5c31af7Sopenharmony_ci		version 310 es
6584e5c31af7Sopenharmony_ci		values
6585e5c31af7Sopenharmony_ci		{
6586e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6587e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(false, true, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6588e5c31af7Sopenharmony_ci		}
6589e5c31af7Sopenharmony_ci
6590e5c31af7Sopenharmony_ci		both ""
6591e5c31af7Sopenharmony_ci			#version 310 es
6592e5c31af7Sopenharmony_ci			precision highp float;
6593e5c31af7Sopenharmony_ci			precision highp int;
6594e5c31af7Sopenharmony_ci
6595e5c31af7Sopenharmony_ci			${DECLARATIONS}
6596e5c31af7Sopenharmony_ci
6597e5c31af7Sopenharmony_ci			void main()
6598e5c31af7Sopenharmony_ci			{
6599e5c31af7Sopenharmony_ci				${SETUP}
6600e5c31af7Sopenharmony_ci				out0 = in0.rggr;
6601e5c31af7Sopenharmony_ci				${OUTPUT}
6602e5c31af7Sopenharmony_ci			}
6603e5c31af7Sopenharmony_ci		""
6604e5c31af7Sopenharmony_ci	end
6605e5c31af7Sopenharmony_ci
6606e5c31af7Sopenharmony_ci	case mediump_bvec3_bbbb
6607e5c31af7Sopenharmony_ci		version 310 es
6608e5c31af7Sopenharmony_ci		values
6609e5c31af7Sopenharmony_ci		{
6610e5c31af7Sopenharmony_ci			input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6611e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6612e5c31af7Sopenharmony_ci		}
6613e5c31af7Sopenharmony_ci
6614e5c31af7Sopenharmony_ci		both ""
6615e5c31af7Sopenharmony_ci			#version 310 es
6616e5c31af7Sopenharmony_ci			precision highp float;
6617e5c31af7Sopenharmony_ci			precision highp int;
6618e5c31af7Sopenharmony_ci
6619e5c31af7Sopenharmony_ci			${DECLARATIONS}
6620e5c31af7Sopenharmony_ci
6621e5c31af7Sopenharmony_ci			void main()
6622e5c31af7Sopenharmony_ci			{
6623e5c31af7Sopenharmony_ci				${SETUP}
6624e5c31af7Sopenharmony_ci				out0 = in0.bbbb;
6625e5c31af7Sopenharmony_ci				${OUTPUT}
6626e5c31af7Sopenharmony_ci			}
6627e5c31af7Sopenharmony_ci		""
6628e5c31af7Sopenharmony_ci	end
6629e5c31af7Sopenharmony_ci
6630e5c31af7Sopenharmony_ci	case mediump_bvec4_x
6631e5c31af7Sopenharmony_ci		version 310 es
6632e5c31af7Sopenharmony_ci		values
6633e5c31af7Sopenharmony_ci		{
6634e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6635e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
6636e5c31af7Sopenharmony_ci		}
6637e5c31af7Sopenharmony_ci
6638e5c31af7Sopenharmony_ci		both ""
6639e5c31af7Sopenharmony_ci			#version 310 es
6640e5c31af7Sopenharmony_ci			precision highp float;
6641e5c31af7Sopenharmony_ci			precision highp int;
6642e5c31af7Sopenharmony_ci
6643e5c31af7Sopenharmony_ci			${DECLARATIONS}
6644e5c31af7Sopenharmony_ci
6645e5c31af7Sopenharmony_ci			void main()
6646e5c31af7Sopenharmony_ci			{
6647e5c31af7Sopenharmony_ci				${SETUP}
6648e5c31af7Sopenharmony_ci				out0 = in0.x;
6649e5c31af7Sopenharmony_ci				${OUTPUT}
6650e5c31af7Sopenharmony_ci			}
6651e5c31af7Sopenharmony_ci		""
6652e5c31af7Sopenharmony_ci	end
6653e5c31af7Sopenharmony_ci
6654e5c31af7Sopenharmony_ci	case mediump_bvec4_w
6655e5c31af7Sopenharmony_ci		version 310 es
6656e5c31af7Sopenharmony_ci		values
6657e5c31af7Sopenharmony_ci		{
6658e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6659e5c31af7Sopenharmony_ci			output bool out0 = [ true | true | false | true | false ];
6660e5c31af7Sopenharmony_ci		}
6661e5c31af7Sopenharmony_ci
6662e5c31af7Sopenharmony_ci		both ""
6663e5c31af7Sopenharmony_ci			#version 310 es
6664e5c31af7Sopenharmony_ci			precision highp float;
6665e5c31af7Sopenharmony_ci			precision highp int;
6666e5c31af7Sopenharmony_ci
6667e5c31af7Sopenharmony_ci			${DECLARATIONS}
6668e5c31af7Sopenharmony_ci
6669e5c31af7Sopenharmony_ci			void main()
6670e5c31af7Sopenharmony_ci			{
6671e5c31af7Sopenharmony_ci				${SETUP}
6672e5c31af7Sopenharmony_ci				out0 = in0.w;
6673e5c31af7Sopenharmony_ci				${OUTPUT}
6674e5c31af7Sopenharmony_ci			}
6675e5c31af7Sopenharmony_ci		""
6676e5c31af7Sopenharmony_ci	end
6677e5c31af7Sopenharmony_ci
6678e5c31af7Sopenharmony_ci	case mediump_bvec4_wx
6679e5c31af7Sopenharmony_ci		version 310 es
6680e5c31af7Sopenharmony_ci		values
6681e5c31af7Sopenharmony_ci		{
6682e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6683e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6684e5c31af7Sopenharmony_ci		}
6685e5c31af7Sopenharmony_ci
6686e5c31af7Sopenharmony_ci		both ""
6687e5c31af7Sopenharmony_ci			#version 310 es
6688e5c31af7Sopenharmony_ci			precision highp float;
6689e5c31af7Sopenharmony_ci			precision highp int;
6690e5c31af7Sopenharmony_ci
6691e5c31af7Sopenharmony_ci			${DECLARATIONS}
6692e5c31af7Sopenharmony_ci
6693e5c31af7Sopenharmony_ci			void main()
6694e5c31af7Sopenharmony_ci			{
6695e5c31af7Sopenharmony_ci				${SETUP}
6696e5c31af7Sopenharmony_ci				out0 = in0.wx;
6697e5c31af7Sopenharmony_ci				${OUTPUT}
6698e5c31af7Sopenharmony_ci			}
6699e5c31af7Sopenharmony_ci		""
6700e5c31af7Sopenharmony_ci	end
6701e5c31af7Sopenharmony_ci
6702e5c31af7Sopenharmony_ci	case mediump_bvec4_wz
6703e5c31af7Sopenharmony_ci		version 310 es
6704e5c31af7Sopenharmony_ci		values
6705e5c31af7Sopenharmony_ci		{
6706e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6707e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
6708e5c31af7Sopenharmony_ci		}
6709e5c31af7Sopenharmony_ci
6710e5c31af7Sopenharmony_ci		both ""
6711e5c31af7Sopenharmony_ci			#version 310 es
6712e5c31af7Sopenharmony_ci			precision highp float;
6713e5c31af7Sopenharmony_ci			precision highp int;
6714e5c31af7Sopenharmony_ci
6715e5c31af7Sopenharmony_ci			${DECLARATIONS}
6716e5c31af7Sopenharmony_ci
6717e5c31af7Sopenharmony_ci			void main()
6718e5c31af7Sopenharmony_ci			{
6719e5c31af7Sopenharmony_ci				${SETUP}
6720e5c31af7Sopenharmony_ci				out0 = in0.wz;
6721e5c31af7Sopenharmony_ci				${OUTPUT}
6722e5c31af7Sopenharmony_ci			}
6723e5c31af7Sopenharmony_ci		""
6724e5c31af7Sopenharmony_ci	end
6725e5c31af7Sopenharmony_ci
6726e5c31af7Sopenharmony_ci	case mediump_bvec4_www
6727e5c31af7Sopenharmony_ci		version 310 es
6728e5c31af7Sopenharmony_ci		values
6729e5c31af7Sopenharmony_ci		{
6730e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6731e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(true, true, true) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6732e5c31af7Sopenharmony_ci		}
6733e5c31af7Sopenharmony_ci
6734e5c31af7Sopenharmony_ci		both ""
6735e5c31af7Sopenharmony_ci			#version 310 es
6736e5c31af7Sopenharmony_ci			precision highp float;
6737e5c31af7Sopenharmony_ci			precision highp int;
6738e5c31af7Sopenharmony_ci
6739e5c31af7Sopenharmony_ci			${DECLARATIONS}
6740e5c31af7Sopenharmony_ci
6741e5c31af7Sopenharmony_ci			void main()
6742e5c31af7Sopenharmony_ci			{
6743e5c31af7Sopenharmony_ci				${SETUP}
6744e5c31af7Sopenharmony_ci				out0 = in0.www;
6745e5c31af7Sopenharmony_ci				${OUTPUT}
6746e5c31af7Sopenharmony_ci			}
6747e5c31af7Sopenharmony_ci		""
6748e5c31af7Sopenharmony_ci	end
6749e5c31af7Sopenharmony_ci
6750e5c31af7Sopenharmony_ci	case mediump_bvec4_yyw
6751e5c31af7Sopenharmony_ci		version 310 es
6752e5c31af7Sopenharmony_ci		values
6753e5c31af7Sopenharmony_ci		{
6754e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6755e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, true) | bvec3(true, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
6756e5c31af7Sopenharmony_ci		}
6757e5c31af7Sopenharmony_ci
6758e5c31af7Sopenharmony_ci		both ""
6759e5c31af7Sopenharmony_ci			#version 310 es
6760e5c31af7Sopenharmony_ci			precision highp float;
6761e5c31af7Sopenharmony_ci			precision highp int;
6762e5c31af7Sopenharmony_ci
6763e5c31af7Sopenharmony_ci			${DECLARATIONS}
6764e5c31af7Sopenharmony_ci
6765e5c31af7Sopenharmony_ci			void main()
6766e5c31af7Sopenharmony_ci			{
6767e5c31af7Sopenharmony_ci				${SETUP}
6768e5c31af7Sopenharmony_ci				out0 = in0.yyw;
6769e5c31af7Sopenharmony_ci				${OUTPUT}
6770e5c31af7Sopenharmony_ci			}
6771e5c31af7Sopenharmony_ci		""
6772e5c31af7Sopenharmony_ci	end
6773e5c31af7Sopenharmony_ci
6774e5c31af7Sopenharmony_ci	case mediump_bvec4_wzy
6775e5c31af7Sopenharmony_ci		version 310 es
6776e5c31af7Sopenharmony_ci		values
6777e5c31af7Sopenharmony_ci		{
6778e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6779e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(true, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
6780e5c31af7Sopenharmony_ci		}
6781e5c31af7Sopenharmony_ci
6782e5c31af7Sopenharmony_ci		both ""
6783e5c31af7Sopenharmony_ci			#version 310 es
6784e5c31af7Sopenharmony_ci			precision highp float;
6785e5c31af7Sopenharmony_ci			precision highp int;
6786e5c31af7Sopenharmony_ci
6787e5c31af7Sopenharmony_ci			${DECLARATIONS}
6788e5c31af7Sopenharmony_ci
6789e5c31af7Sopenharmony_ci			void main()
6790e5c31af7Sopenharmony_ci			{
6791e5c31af7Sopenharmony_ci				${SETUP}
6792e5c31af7Sopenharmony_ci				out0 = in0.wzy;
6793e5c31af7Sopenharmony_ci				${OUTPUT}
6794e5c31af7Sopenharmony_ci			}
6795e5c31af7Sopenharmony_ci		""
6796e5c31af7Sopenharmony_ci	end
6797e5c31af7Sopenharmony_ci
6798e5c31af7Sopenharmony_ci	case mediump_bvec4_xyzw
6799e5c31af7Sopenharmony_ci		version 310 es
6800e5c31af7Sopenharmony_ci		values
6801e5c31af7Sopenharmony_ci		{
6802e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6803e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6804e5c31af7Sopenharmony_ci		}
6805e5c31af7Sopenharmony_ci
6806e5c31af7Sopenharmony_ci		both ""
6807e5c31af7Sopenharmony_ci			#version 310 es
6808e5c31af7Sopenharmony_ci			precision highp float;
6809e5c31af7Sopenharmony_ci			precision highp int;
6810e5c31af7Sopenharmony_ci
6811e5c31af7Sopenharmony_ci			${DECLARATIONS}
6812e5c31af7Sopenharmony_ci
6813e5c31af7Sopenharmony_ci			void main()
6814e5c31af7Sopenharmony_ci			{
6815e5c31af7Sopenharmony_ci				${SETUP}
6816e5c31af7Sopenharmony_ci				out0 = in0.xyzw;
6817e5c31af7Sopenharmony_ci				${OUTPUT}
6818e5c31af7Sopenharmony_ci			}
6819e5c31af7Sopenharmony_ci		""
6820e5c31af7Sopenharmony_ci	end
6821e5c31af7Sopenharmony_ci
6822e5c31af7Sopenharmony_ci	case mediump_bvec4_wzyx
6823e5c31af7Sopenharmony_ci		version 310 es
6824e5c31af7Sopenharmony_ci		values
6825e5c31af7Sopenharmony_ci		{
6826e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6827e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, false) | bvec4(false, false, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6828e5c31af7Sopenharmony_ci		}
6829e5c31af7Sopenharmony_ci
6830e5c31af7Sopenharmony_ci		both ""
6831e5c31af7Sopenharmony_ci			#version 310 es
6832e5c31af7Sopenharmony_ci			precision highp float;
6833e5c31af7Sopenharmony_ci			precision highp int;
6834e5c31af7Sopenharmony_ci
6835e5c31af7Sopenharmony_ci			${DECLARATIONS}
6836e5c31af7Sopenharmony_ci
6837e5c31af7Sopenharmony_ci			void main()
6838e5c31af7Sopenharmony_ci			{
6839e5c31af7Sopenharmony_ci				${SETUP}
6840e5c31af7Sopenharmony_ci				out0 = in0.wzyx;
6841e5c31af7Sopenharmony_ci				${OUTPUT}
6842e5c31af7Sopenharmony_ci			}
6843e5c31af7Sopenharmony_ci		""
6844e5c31af7Sopenharmony_ci	end
6845e5c31af7Sopenharmony_ci
6846e5c31af7Sopenharmony_ci	case mediump_bvec4_xxxx
6847e5c31af7Sopenharmony_ci		version 310 es
6848e5c31af7Sopenharmony_ci		values
6849e5c31af7Sopenharmony_ci		{
6850e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6851e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6852e5c31af7Sopenharmony_ci		}
6853e5c31af7Sopenharmony_ci
6854e5c31af7Sopenharmony_ci		both ""
6855e5c31af7Sopenharmony_ci			#version 310 es
6856e5c31af7Sopenharmony_ci			precision highp float;
6857e5c31af7Sopenharmony_ci			precision highp int;
6858e5c31af7Sopenharmony_ci
6859e5c31af7Sopenharmony_ci			${DECLARATIONS}
6860e5c31af7Sopenharmony_ci
6861e5c31af7Sopenharmony_ci			void main()
6862e5c31af7Sopenharmony_ci			{
6863e5c31af7Sopenharmony_ci				${SETUP}
6864e5c31af7Sopenharmony_ci				out0 = in0.xxxx;
6865e5c31af7Sopenharmony_ci				${OUTPUT}
6866e5c31af7Sopenharmony_ci			}
6867e5c31af7Sopenharmony_ci		""
6868e5c31af7Sopenharmony_ci	end
6869e5c31af7Sopenharmony_ci
6870e5c31af7Sopenharmony_ci	case mediump_bvec4_yyyy
6871e5c31af7Sopenharmony_ci		version 310 es
6872e5c31af7Sopenharmony_ci		values
6873e5c31af7Sopenharmony_ci		{
6874e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6875e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6876e5c31af7Sopenharmony_ci		}
6877e5c31af7Sopenharmony_ci
6878e5c31af7Sopenharmony_ci		both ""
6879e5c31af7Sopenharmony_ci			#version 310 es
6880e5c31af7Sopenharmony_ci			precision highp float;
6881e5c31af7Sopenharmony_ci			precision highp int;
6882e5c31af7Sopenharmony_ci
6883e5c31af7Sopenharmony_ci			${DECLARATIONS}
6884e5c31af7Sopenharmony_ci
6885e5c31af7Sopenharmony_ci			void main()
6886e5c31af7Sopenharmony_ci			{
6887e5c31af7Sopenharmony_ci				${SETUP}
6888e5c31af7Sopenharmony_ci				out0 = in0.yyyy;
6889e5c31af7Sopenharmony_ci				${OUTPUT}
6890e5c31af7Sopenharmony_ci			}
6891e5c31af7Sopenharmony_ci		""
6892e5c31af7Sopenharmony_ci	end
6893e5c31af7Sopenharmony_ci
6894e5c31af7Sopenharmony_ci	case mediump_bvec4_wwww
6895e5c31af7Sopenharmony_ci		version 310 es
6896e5c31af7Sopenharmony_ci		values
6897e5c31af7Sopenharmony_ci		{
6898e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6899e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6900e5c31af7Sopenharmony_ci		}
6901e5c31af7Sopenharmony_ci
6902e5c31af7Sopenharmony_ci		both ""
6903e5c31af7Sopenharmony_ci			#version 310 es
6904e5c31af7Sopenharmony_ci			precision highp float;
6905e5c31af7Sopenharmony_ci			precision highp int;
6906e5c31af7Sopenharmony_ci
6907e5c31af7Sopenharmony_ci			${DECLARATIONS}
6908e5c31af7Sopenharmony_ci
6909e5c31af7Sopenharmony_ci			void main()
6910e5c31af7Sopenharmony_ci			{
6911e5c31af7Sopenharmony_ci				${SETUP}
6912e5c31af7Sopenharmony_ci				out0 = in0.wwww;
6913e5c31af7Sopenharmony_ci				${OUTPUT}
6914e5c31af7Sopenharmony_ci			}
6915e5c31af7Sopenharmony_ci		""
6916e5c31af7Sopenharmony_ci	end
6917e5c31af7Sopenharmony_ci
6918e5c31af7Sopenharmony_ci	case mediump_bvec4_wzzw
6919e5c31af7Sopenharmony_ci		version 310 es
6920e5c31af7Sopenharmony_ci		values
6921e5c31af7Sopenharmony_ci		{
6922e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6923e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6924e5c31af7Sopenharmony_ci		}
6925e5c31af7Sopenharmony_ci
6926e5c31af7Sopenharmony_ci		both ""
6927e5c31af7Sopenharmony_ci			#version 310 es
6928e5c31af7Sopenharmony_ci			precision highp float;
6929e5c31af7Sopenharmony_ci			precision highp int;
6930e5c31af7Sopenharmony_ci
6931e5c31af7Sopenharmony_ci			${DECLARATIONS}
6932e5c31af7Sopenharmony_ci
6933e5c31af7Sopenharmony_ci			void main()
6934e5c31af7Sopenharmony_ci			{
6935e5c31af7Sopenharmony_ci				${SETUP}
6936e5c31af7Sopenharmony_ci				out0 = in0.wzzw;
6937e5c31af7Sopenharmony_ci				${OUTPUT}
6938e5c31af7Sopenharmony_ci			}
6939e5c31af7Sopenharmony_ci		""
6940e5c31af7Sopenharmony_ci	end
6941e5c31af7Sopenharmony_ci
6942e5c31af7Sopenharmony_ci	case mediump_bvec4_wwwy
6943e5c31af7Sopenharmony_ci		version 310 es
6944e5c31af7Sopenharmony_ci		values
6945e5c31af7Sopenharmony_ci		{
6946e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6947e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, false) | bvec4(true, true, true, false) | bvec4(false, false, false, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6948e5c31af7Sopenharmony_ci		}
6949e5c31af7Sopenharmony_ci
6950e5c31af7Sopenharmony_ci		both ""
6951e5c31af7Sopenharmony_ci			#version 310 es
6952e5c31af7Sopenharmony_ci			precision highp float;
6953e5c31af7Sopenharmony_ci			precision highp int;
6954e5c31af7Sopenharmony_ci
6955e5c31af7Sopenharmony_ci			${DECLARATIONS}
6956e5c31af7Sopenharmony_ci
6957e5c31af7Sopenharmony_ci			void main()
6958e5c31af7Sopenharmony_ci			{
6959e5c31af7Sopenharmony_ci				${SETUP}
6960e5c31af7Sopenharmony_ci				out0 = in0.wwwy;
6961e5c31af7Sopenharmony_ci				${OUTPUT}
6962e5c31af7Sopenharmony_ci			}
6963e5c31af7Sopenharmony_ci		""
6964e5c31af7Sopenharmony_ci	end
6965e5c31af7Sopenharmony_ci
6966e5c31af7Sopenharmony_ci	case mediump_bvec4_xyxx
6967e5c31af7Sopenharmony_ci		version 310 es
6968e5c31af7Sopenharmony_ci		values
6969e5c31af7Sopenharmony_ci		{
6970e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6971e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6972e5c31af7Sopenharmony_ci		}
6973e5c31af7Sopenharmony_ci
6974e5c31af7Sopenharmony_ci		both ""
6975e5c31af7Sopenharmony_ci			#version 310 es
6976e5c31af7Sopenharmony_ci			precision highp float;
6977e5c31af7Sopenharmony_ci			precision highp int;
6978e5c31af7Sopenharmony_ci
6979e5c31af7Sopenharmony_ci			${DECLARATIONS}
6980e5c31af7Sopenharmony_ci
6981e5c31af7Sopenharmony_ci			void main()
6982e5c31af7Sopenharmony_ci			{
6983e5c31af7Sopenharmony_ci				${SETUP}
6984e5c31af7Sopenharmony_ci				out0 = in0.xyxx;
6985e5c31af7Sopenharmony_ci				${OUTPUT}
6986e5c31af7Sopenharmony_ci			}
6987e5c31af7Sopenharmony_ci		""
6988e5c31af7Sopenharmony_ci	end
6989e5c31af7Sopenharmony_ci
6990e5c31af7Sopenharmony_ci	case mediump_bvec4_zzwz
6991e5c31af7Sopenharmony_ci		version 310 es
6992e5c31af7Sopenharmony_ci		values
6993e5c31af7Sopenharmony_ci		{
6994e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6995e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, true, false) | bvec4(false, false, true, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
6996e5c31af7Sopenharmony_ci		}
6997e5c31af7Sopenharmony_ci
6998e5c31af7Sopenharmony_ci		both ""
6999e5c31af7Sopenharmony_ci			#version 310 es
7000e5c31af7Sopenharmony_ci			precision highp float;
7001e5c31af7Sopenharmony_ci			precision highp int;
7002e5c31af7Sopenharmony_ci
7003e5c31af7Sopenharmony_ci			${DECLARATIONS}
7004e5c31af7Sopenharmony_ci
7005e5c31af7Sopenharmony_ci			void main()
7006e5c31af7Sopenharmony_ci			{
7007e5c31af7Sopenharmony_ci				${SETUP}
7008e5c31af7Sopenharmony_ci				out0 = in0.zzwz;
7009e5c31af7Sopenharmony_ci				${OUTPUT}
7010e5c31af7Sopenharmony_ci			}
7011e5c31af7Sopenharmony_ci		""
7012e5c31af7Sopenharmony_ci	end
7013e5c31af7Sopenharmony_ci
7014e5c31af7Sopenharmony_ci	case mediump_bvec4_s
7015e5c31af7Sopenharmony_ci		version 310 es
7016e5c31af7Sopenharmony_ci		values
7017e5c31af7Sopenharmony_ci		{
7018e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7019e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
7020e5c31af7Sopenharmony_ci		}
7021e5c31af7Sopenharmony_ci
7022e5c31af7Sopenharmony_ci		both ""
7023e5c31af7Sopenharmony_ci			#version 310 es
7024e5c31af7Sopenharmony_ci			precision highp float;
7025e5c31af7Sopenharmony_ci			precision highp int;
7026e5c31af7Sopenharmony_ci
7027e5c31af7Sopenharmony_ci			${DECLARATIONS}
7028e5c31af7Sopenharmony_ci
7029e5c31af7Sopenharmony_ci			void main()
7030e5c31af7Sopenharmony_ci			{
7031e5c31af7Sopenharmony_ci				${SETUP}
7032e5c31af7Sopenharmony_ci				out0 = in0.s;
7033e5c31af7Sopenharmony_ci				${OUTPUT}
7034e5c31af7Sopenharmony_ci			}
7035e5c31af7Sopenharmony_ci		""
7036e5c31af7Sopenharmony_ci	end
7037e5c31af7Sopenharmony_ci
7038e5c31af7Sopenharmony_ci	case mediump_bvec4_q
7039e5c31af7Sopenharmony_ci		version 310 es
7040e5c31af7Sopenharmony_ci		values
7041e5c31af7Sopenharmony_ci		{
7042e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7043e5c31af7Sopenharmony_ci			output bool out0 = [ true | true | false | true | false ];
7044e5c31af7Sopenharmony_ci		}
7045e5c31af7Sopenharmony_ci
7046e5c31af7Sopenharmony_ci		both ""
7047e5c31af7Sopenharmony_ci			#version 310 es
7048e5c31af7Sopenharmony_ci			precision highp float;
7049e5c31af7Sopenharmony_ci			precision highp int;
7050e5c31af7Sopenharmony_ci
7051e5c31af7Sopenharmony_ci			${DECLARATIONS}
7052e5c31af7Sopenharmony_ci
7053e5c31af7Sopenharmony_ci			void main()
7054e5c31af7Sopenharmony_ci			{
7055e5c31af7Sopenharmony_ci				${SETUP}
7056e5c31af7Sopenharmony_ci				out0 = in0.q;
7057e5c31af7Sopenharmony_ci				${OUTPUT}
7058e5c31af7Sopenharmony_ci			}
7059e5c31af7Sopenharmony_ci		""
7060e5c31af7Sopenharmony_ci	end
7061e5c31af7Sopenharmony_ci
7062e5c31af7Sopenharmony_ci	case mediump_bvec4_qs
7063e5c31af7Sopenharmony_ci		version 310 es
7064e5c31af7Sopenharmony_ci		values
7065e5c31af7Sopenharmony_ci		{
7066e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7067e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
7068e5c31af7Sopenharmony_ci		}
7069e5c31af7Sopenharmony_ci
7070e5c31af7Sopenharmony_ci		both ""
7071e5c31af7Sopenharmony_ci			#version 310 es
7072e5c31af7Sopenharmony_ci			precision highp float;
7073e5c31af7Sopenharmony_ci			precision highp int;
7074e5c31af7Sopenharmony_ci
7075e5c31af7Sopenharmony_ci			${DECLARATIONS}
7076e5c31af7Sopenharmony_ci
7077e5c31af7Sopenharmony_ci			void main()
7078e5c31af7Sopenharmony_ci			{
7079e5c31af7Sopenharmony_ci				${SETUP}
7080e5c31af7Sopenharmony_ci				out0 = in0.qs;
7081e5c31af7Sopenharmony_ci				${OUTPUT}
7082e5c31af7Sopenharmony_ci			}
7083e5c31af7Sopenharmony_ci		""
7084e5c31af7Sopenharmony_ci	end
7085e5c31af7Sopenharmony_ci
7086e5c31af7Sopenharmony_ci	case mediump_bvec4_qp
7087e5c31af7Sopenharmony_ci		version 310 es
7088e5c31af7Sopenharmony_ci		values
7089e5c31af7Sopenharmony_ci		{
7090e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7091e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
7092e5c31af7Sopenharmony_ci		}
7093e5c31af7Sopenharmony_ci
7094e5c31af7Sopenharmony_ci		both ""
7095e5c31af7Sopenharmony_ci			#version 310 es
7096e5c31af7Sopenharmony_ci			precision highp float;
7097e5c31af7Sopenharmony_ci			precision highp int;
7098e5c31af7Sopenharmony_ci
7099e5c31af7Sopenharmony_ci			${DECLARATIONS}
7100e5c31af7Sopenharmony_ci
7101e5c31af7Sopenharmony_ci			void main()
7102e5c31af7Sopenharmony_ci			{
7103e5c31af7Sopenharmony_ci				${SETUP}
7104e5c31af7Sopenharmony_ci				out0 = in0.qp;
7105e5c31af7Sopenharmony_ci				${OUTPUT}
7106e5c31af7Sopenharmony_ci			}
7107e5c31af7Sopenharmony_ci		""
7108e5c31af7Sopenharmony_ci	end
7109e5c31af7Sopenharmony_ci
7110e5c31af7Sopenharmony_ci	case mediump_bvec4_qqq
7111e5c31af7Sopenharmony_ci		version 310 es
7112e5c31af7Sopenharmony_ci		values
7113e5c31af7Sopenharmony_ci		{
7114e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7115e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(true, true, true) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
7116e5c31af7Sopenharmony_ci		}
7117e5c31af7Sopenharmony_ci
7118e5c31af7Sopenharmony_ci		both ""
7119e5c31af7Sopenharmony_ci			#version 310 es
7120e5c31af7Sopenharmony_ci			precision highp float;
7121e5c31af7Sopenharmony_ci			precision highp int;
7122e5c31af7Sopenharmony_ci
7123e5c31af7Sopenharmony_ci			${DECLARATIONS}
7124e5c31af7Sopenharmony_ci
7125e5c31af7Sopenharmony_ci			void main()
7126e5c31af7Sopenharmony_ci			{
7127e5c31af7Sopenharmony_ci				${SETUP}
7128e5c31af7Sopenharmony_ci				out0 = in0.qqq;
7129e5c31af7Sopenharmony_ci				${OUTPUT}
7130e5c31af7Sopenharmony_ci			}
7131e5c31af7Sopenharmony_ci		""
7132e5c31af7Sopenharmony_ci	end
7133e5c31af7Sopenharmony_ci
7134e5c31af7Sopenharmony_ci	case mediump_bvec4_ttq
7135e5c31af7Sopenharmony_ci		version 310 es
7136e5c31af7Sopenharmony_ci		values
7137e5c31af7Sopenharmony_ci		{
7138e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7139e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, true) | bvec3(true, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
7140e5c31af7Sopenharmony_ci		}
7141e5c31af7Sopenharmony_ci
7142e5c31af7Sopenharmony_ci		both ""
7143e5c31af7Sopenharmony_ci			#version 310 es
7144e5c31af7Sopenharmony_ci			precision highp float;
7145e5c31af7Sopenharmony_ci			precision highp int;
7146e5c31af7Sopenharmony_ci
7147e5c31af7Sopenharmony_ci			${DECLARATIONS}
7148e5c31af7Sopenharmony_ci
7149e5c31af7Sopenharmony_ci			void main()
7150e5c31af7Sopenharmony_ci			{
7151e5c31af7Sopenharmony_ci				${SETUP}
7152e5c31af7Sopenharmony_ci				out0 = in0.ttq;
7153e5c31af7Sopenharmony_ci				${OUTPUT}
7154e5c31af7Sopenharmony_ci			}
7155e5c31af7Sopenharmony_ci		""
7156e5c31af7Sopenharmony_ci	end
7157e5c31af7Sopenharmony_ci
7158e5c31af7Sopenharmony_ci	case mediump_bvec4_qpt
7159e5c31af7Sopenharmony_ci		version 310 es
7160e5c31af7Sopenharmony_ci		values
7161e5c31af7Sopenharmony_ci		{
7162e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7163e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(true, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
7164e5c31af7Sopenharmony_ci		}
7165e5c31af7Sopenharmony_ci
7166e5c31af7Sopenharmony_ci		both ""
7167e5c31af7Sopenharmony_ci			#version 310 es
7168e5c31af7Sopenharmony_ci			precision highp float;
7169e5c31af7Sopenharmony_ci			precision highp int;
7170e5c31af7Sopenharmony_ci
7171e5c31af7Sopenharmony_ci			${DECLARATIONS}
7172e5c31af7Sopenharmony_ci
7173e5c31af7Sopenharmony_ci			void main()
7174e5c31af7Sopenharmony_ci			{
7175e5c31af7Sopenharmony_ci				${SETUP}
7176e5c31af7Sopenharmony_ci				out0 = in0.qpt;
7177e5c31af7Sopenharmony_ci				${OUTPUT}
7178e5c31af7Sopenharmony_ci			}
7179e5c31af7Sopenharmony_ci		""
7180e5c31af7Sopenharmony_ci	end
7181e5c31af7Sopenharmony_ci
7182e5c31af7Sopenharmony_ci	case mediump_bvec4_stpq
7183e5c31af7Sopenharmony_ci		version 310 es
7184e5c31af7Sopenharmony_ci		values
7185e5c31af7Sopenharmony_ci		{
7186e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7187e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7188e5c31af7Sopenharmony_ci		}
7189e5c31af7Sopenharmony_ci
7190e5c31af7Sopenharmony_ci		both ""
7191e5c31af7Sopenharmony_ci			#version 310 es
7192e5c31af7Sopenharmony_ci			precision highp float;
7193e5c31af7Sopenharmony_ci			precision highp int;
7194e5c31af7Sopenharmony_ci
7195e5c31af7Sopenharmony_ci			${DECLARATIONS}
7196e5c31af7Sopenharmony_ci
7197e5c31af7Sopenharmony_ci			void main()
7198e5c31af7Sopenharmony_ci			{
7199e5c31af7Sopenharmony_ci				${SETUP}
7200e5c31af7Sopenharmony_ci				out0 = in0.stpq;
7201e5c31af7Sopenharmony_ci				${OUTPUT}
7202e5c31af7Sopenharmony_ci			}
7203e5c31af7Sopenharmony_ci		""
7204e5c31af7Sopenharmony_ci	end
7205e5c31af7Sopenharmony_ci
7206e5c31af7Sopenharmony_ci	case mediump_bvec4_qpts
7207e5c31af7Sopenharmony_ci		version 310 es
7208e5c31af7Sopenharmony_ci		values
7209e5c31af7Sopenharmony_ci		{
7210e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7211e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, false) | bvec4(false, false, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7212e5c31af7Sopenharmony_ci		}
7213e5c31af7Sopenharmony_ci
7214e5c31af7Sopenharmony_ci		both ""
7215e5c31af7Sopenharmony_ci			#version 310 es
7216e5c31af7Sopenharmony_ci			precision highp float;
7217e5c31af7Sopenharmony_ci			precision highp int;
7218e5c31af7Sopenharmony_ci
7219e5c31af7Sopenharmony_ci			${DECLARATIONS}
7220e5c31af7Sopenharmony_ci
7221e5c31af7Sopenharmony_ci			void main()
7222e5c31af7Sopenharmony_ci			{
7223e5c31af7Sopenharmony_ci				${SETUP}
7224e5c31af7Sopenharmony_ci				out0 = in0.qpts;
7225e5c31af7Sopenharmony_ci				${OUTPUT}
7226e5c31af7Sopenharmony_ci			}
7227e5c31af7Sopenharmony_ci		""
7228e5c31af7Sopenharmony_ci	end
7229e5c31af7Sopenharmony_ci
7230e5c31af7Sopenharmony_ci	case mediump_bvec4_ssss
7231e5c31af7Sopenharmony_ci		version 310 es
7232e5c31af7Sopenharmony_ci		values
7233e5c31af7Sopenharmony_ci		{
7234e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7235e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7236e5c31af7Sopenharmony_ci		}
7237e5c31af7Sopenharmony_ci
7238e5c31af7Sopenharmony_ci		both ""
7239e5c31af7Sopenharmony_ci			#version 310 es
7240e5c31af7Sopenharmony_ci			precision highp float;
7241e5c31af7Sopenharmony_ci			precision highp int;
7242e5c31af7Sopenharmony_ci
7243e5c31af7Sopenharmony_ci			${DECLARATIONS}
7244e5c31af7Sopenharmony_ci
7245e5c31af7Sopenharmony_ci			void main()
7246e5c31af7Sopenharmony_ci			{
7247e5c31af7Sopenharmony_ci				${SETUP}
7248e5c31af7Sopenharmony_ci				out0 = in0.ssss;
7249e5c31af7Sopenharmony_ci				${OUTPUT}
7250e5c31af7Sopenharmony_ci			}
7251e5c31af7Sopenharmony_ci		""
7252e5c31af7Sopenharmony_ci	end
7253e5c31af7Sopenharmony_ci
7254e5c31af7Sopenharmony_ci	case mediump_bvec4_tttt
7255e5c31af7Sopenharmony_ci		version 310 es
7256e5c31af7Sopenharmony_ci		values
7257e5c31af7Sopenharmony_ci		{
7258e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7259e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7260e5c31af7Sopenharmony_ci		}
7261e5c31af7Sopenharmony_ci
7262e5c31af7Sopenharmony_ci		both ""
7263e5c31af7Sopenharmony_ci			#version 310 es
7264e5c31af7Sopenharmony_ci			precision highp float;
7265e5c31af7Sopenharmony_ci			precision highp int;
7266e5c31af7Sopenharmony_ci
7267e5c31af7Sopenharmony_ci			${DECLARATIONS}
7268e5c31af7Sopenharmony_ci
7269e5c31af7Sopenharmony_ci			void main()
7270e5c31af7Sopenharmony_ci			{
7271e5c31af7Sopenharmony_ci				${SETUP}
7272e5c31af7Sopenharmony_ci				out0 = in0.tttt;
7273e5c31af7Sopenharmony_ci				${OUTPUT}
7274e5c31af7Sopenharmony_ci			}
7275e5c31af7Sopenharmony_ci		""
7276e5c31af7Sopenharmony_ci	end
7277e5c31af7Sopenharmony_ci
7278e5c31af7Sopenharmony_ci	case mediump_bvec4_qqqq
7279e5c31af7Sopenharmony_ci		version 310 es
7280e5c31af7Sopenharmony_ci		values
7281e5c31af7Sopenharmony_ci		{
7282e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7283e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7284e5c31af7Sopenharmony_ci		}
7285e5c31af7Sopenharmony_ci
7286e5c31af7Sopenharmony_ci		both ""
7287e5c31af7Sopenharmony_ci			#version 310 es
7288e5c31af7Sopenharmony_ci			precision highp float;
7289e5c31af7Sopenharmony_ci			precision highp int;
7290e5c31af7Sopenharmony_ci
7291e5c31af7Sopenharmony_ci			${DECLARATIONS}
7292e5c31af7Sopenharmony_ci
7293e5c31af7Sopenharmony_ci			void main()
7294e5c31af7Sopenharmony_ci			{
7295e5c31af7Sopenharmony_ci				${SETUP}
7296e5c31af7Sopenharmony_ci				out0 = in0.qqqq;
7297e5c31af7Sopenharmony_ci				${OUTPUT}
7298e5c31af7Sopenharmony_ci			}
7299e5c31af7Sopenharmony_ci		""
7300e5c31af7Sopenharmony_ci	end
7301e5c31af7Sopenharmony_ci
7302e5c31af7Sopenharmony_ci	case mediump_bvec4_qppq
7303e5c31af7Sopenharmony_ci		version 310 es
7304e5c31af7Sopenharmony_ci		values
7305e5c31af7Sopenharmony_ci		{
7306e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7307e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7308e5c31af7Sopenharmony_ci		}
7309e5c31af7Sopenharmony_ci
7310e5c31af7Sopenharmony_ci		both ""
7311e5c31af7Sopenharmony_ci			#version 310 es
7312e5c31af7Sopenharmony_ci			precision highp float;
7313e5c31af7Sopenharmony_ci			precision highp int;
7314e5c31af7Sopenharmony_ci
7315e5c31af7Sopenharmony_ci			${DECLARATIONS}
7316e5c31af7Sopenharmony_ci
7317e5c31af7Sopenharmony_ci			void main()
7318e5c31af7Sopenharmony_ci			{
7319e5c31af7Sopenharmony_ci				${SETUP}
7320e5c31af7Sopenharmony_ci				out0 = in0.qppq;
7321e5c31af7Sopenharmony_ci				${OUTPUT}
7322e5c31af7Sopenharmony_ci			}
7323e5c31af7Sopenharmony_ci		""
7324e5c31af7Sopenharmony_ci	end
7325e5c31af7Sopenharmony_ci
7326e5c31af7Sopenharmony_ci	case mediump_bvec4_qqqt
7327e5c31af7Sopenharmony_ci		version 310 es
7328e5c31af7Sopenharmony_ci		values
7329e5c31af7Sopenharmony_ci		{
7330e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7331e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, false) | bvec4(true, true, true, false) | bvec4(false, false, false, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7332e5c31af7Sopenharmony_ci		}
7333e5c31af7Sopenharmony_ci
7334e5c31af7Sopenharmony_ci		both ""
7335e5c31af7Sopenharmony_ci			#version 310 es
7336e5c31af7Sopenharmony_ci			precision highp float;
7337e5c31af7Sopenharmony_ci			precision highp int;
7338e5c31af7Sopenharmony_ci
7339e5c31af7Sopenharmony_ci			${DECLARATIONS}
7340e5c31af7Sopenharmony_ci
7341e5c31af7Sopenharmony_ci			void main()
7342e5c31af7Sopenharmony_ci			{
7343e5c31af7Sopenharmony_ci				${SETUP}
7344e5c31af7Sopenharmony_ci				out0 = in0.qqqt;
7345e5c31af7Sopenharmony_ci				${OUTPUT}
7346e5c31af7Sopenharmony_ci			}
7347e5c31af7Sopenharmony_ci		""
7348e5c31af7Sopenharmony_ci	end
7349e5c31af7Sopenharmony_ci
7350e5c31af7Sopenharmony_ci	case mediump_bvec4_stss
7351e5c31af7Sopenharmony_ci		version 310 es
7352e5c31af7Sopenharmony_ci		values
7353e5c31af7Sopenharmony_ci		{
7354e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7355e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7356e5c31af7Sopenharmony_ci		}
7357e5c31af7Sopenharmony_ci
7358e5c31af7Sopenharmony_ci		both ""
7359e5c31af7Sopenharmony_ci			#version 310 es
7360e5c31af7Sopenharmony_ci			precision highp float;
7361e5c31af7Sopenharmony_ci			precision highp int;
7362e5c31af7Sopenharmony_ci
7363e5c31af7Sopenharmony_ci			${DECLARATIONS}
7364e5c31af7Sopenharmony_ci
7365e5c31af7Sopenharmony_ci			void main()
7366e5c31af7Sopenharmony_ci			{
7367e5c31af7Sopenharmony_ci				${SETUP}
7368e5c31af7Sopenharmony_ci				out0 = in0.stss;
7369e5c31af7Sopenharmony_ci				${OUTPUT}
7370e5c31af7Sopenharmony_ci			}
7371e5c31af7Sopenharmony_ci		""
7372e5c31af7Sopenharmony_ci	end
7373e5c31af7Sopenharmony_ci
7374e5c31af7Sopenharmony_ci	case mediump_bvec4_ppqp
7375e5c31af7Sopenharmony_ci		version 310 es
7376e5c31af7Sopenharmony_ci		values
7377e5c31af7Sopenharmony_ci		{
7378e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7379e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, true, false) | bvec4(false, false, true, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7380e5c31af7Sopenharmony_ci		}
7381e5c31af7Sopenharmony_ci
7382e5c31af7Sopenharmony_ci		both ""
7383e5c31af7Sopenharmony_ci			#version 310 es
7384e5c31af7Sopenharmony_ci			precision highp float;
7385e5c31af7Sopenharmony_ci			precision highp int;
7386e5c31af7Sopenharmony_ci
7387e5c31af7Sopenharmony_ci			${DECLARATIONS}
7388e5c31af7Sopenharmony_ci
7389e5c31af7Sopenharmony_ci			void main()
7390e5c31af7Sopenharmony_ci			{
7391e5c31af7Sopenharmony_ci				${SETUP}
7392e5c31af7Sopenharmony_ci				out0 = in0.ppqp;
7393e5c31af7Sopenharmony_ci				${OUTPUT}
7394e5c31af7Sopenharmony_ci			}
7395e5c31af7Sopenharmony_ci		""
7396e5c31af7Sopenharmony_ci	end
7397e5c31af7Sopenharmony_ci
7398e5c31af7Sopenharmony_ci	case mediump_bvec4_r
7399e5c31af7Sopenharmony_ci		version 310 es
7400e5c31af7Sopenharmony_ci		values
7401e5c31af7Sopenharmony_ci		{
7402e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7403e5c31af7Sopenharmony_ci			output bool out0 = [ true | false | false | true | false ];
7404e5c31af7Sopenharmony_ci		}
7405e5c31af7Sopenharmony_ci
7406e5c31af7Sopenharmony_ci		both ""
7407e5c31af7Sopenharmony_ci			#version 310 es
7408e5c31af7Sopenharmony_ci			precision highp float;
7409e5c31af7Sopenharmony_ci			precision highp int;
7410e5c31af7Sopenharmony_ci
7411e5c31af7Sopenharmony_ci			${DECLARATIONS}
7412e5c31af7Sopenharmony_ci
7413e5c31af7Sopenharmony_ci			void main()
7414e5c31af7Sopenharmony_ci			{
7415e5c31af7Sopenharmony_ci				${SETUP}
7416e5c31af7Sopenharmony_ci				out0 = in0.r;
7417e5c31af7Sopenharmony_ci				${OUTPUT}
7418e5c31af7Sopenharmony_ci			}
7419e5c31af7Sopenharmony_ci		""
7420e5c31af7Sopenharmony_ci	end
7421e5c31af7Sopenharmony_ci
7422e5c31af7Sopenharmony_ci	case mediump_bvec4_a
7423e5c31af7Sopenharmony_ci		version 310 es
7424e5c31af7Sopenharmony_ci		values
7425e5c31af7Sopenharmony_ci		{
7426e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7427e5c31af7Sopenharmony_ci			output bool out0 = [ true | true | false | true | false ];
7428e5c31af7Sopenharmony_ci		}
7429e5c31af7Sopenharmony_ci
7430e5c31af7Sopenharmony_ci		both ""
7431e5c31af7Sopenharmony_ci			#version 310 es
7432e5c31af7Sopenharmony_ci			precision highp float;
7433e5c31af7Sopenharmony_ci			precision highp int;
7434e5c31af7Sopenharmony_ci
7435e5c31af7Sopenharmony_ci			${DECLARATIONS}
7436e5c31af7Sopenharmony_ci
7437e5c31af7Sopenharmony_ci			void main()
7438e5c31af7Sopenharmony_ci			{
7439e5c31af7Sopenharmony_ci				${SETUP}
7440e5c31af7Sopenharmony_ci				out0 = in0.a;
7441e5c31af7Sopenharmony_ci				${OUTPUT}
7442e5c31af7Sopenharmony_ci			}
7443e5c31af7Sopenharmony_ci		""
7444e5c31af7Sopenharmony_ci	end
7445e5c31af7Sopenharmony_ci
7446e5c31af7Sopenharmony_ci	case mediump_bvec4_ar
7447e5c31af7Sopenharmony_ci		version 310 es
7448e5c31af7Sopenharmony_ci		values
7449e5c31af7Sopenharmony_ci		{
7450e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7451e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, true) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
7452e5c31af7Sopenharmony_ci		}
7453e5c31af7Sopenharmony_ci
7454e5c31af7Sopenharmony_ci		both ""
7455e5c31af7Sopenharmony_ci			#version 310 es
7456e5c31af7Sopenharmony_ci			precision highp float;
7457e5c31af7Sopenharmony_ci			precision highp int;
7458e5c31af7Sopenharmony_ci
7459e5c31af7Sopenharmony_ci			${DECLARATIONS}
7460e5c31af7Sopenharmony_ci
7461e5c31af7Sopenharmony_ci			void main()
7462e5c31af7Sopenharmony_ci			{
7463e5c31af7Sopenharmony_ci				${SETUP}
7464e5c31af7Sopenharmony_ci				out0 = in0.ar;
7465e5c31af7Sopenharmony_ci				${OUTPUT}
7466e5c31af7Sopenharmony_ci			}
7467e5c31af7Sopenharmony_ci		""
7468e5c31af7Sopenharmony_ci	end
7469e5c31af7Sopenharmony_ci
7470e5c31af7Sopenharmony_ci	case mediump_bvec4_ab
7471e5c31af7Sopenharmony_ci		version 310 es
7472e5c31af7Sopenharmony_ci		values
7473e5c31af7Sopenharmony_ci		{
7474e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7475e5c31af7Sopenharmony_ci			output bvec2 out0 = [ bvec2(true, false) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, false) ];
7476e5c31af7Sopenharmony_ci		}
7477e5c31af7Sopenharmony_ci
7478e5c31af7Sopenharmony_ci		both ""
7479e5c31af7Sopenharmony_ci			#version 310 es
7480e5c31af7Sopenharmony_ci			precision highp float;
7481e5c31af7Sopenharmony_ci			precision highp int;
7482e5c31af7Sopenharmony_ci
7483e5c31af7Sopenharmony_ci			${DECLARATIONS}
7484e5c31af7Sopenharmony_ci
7485e5c31af7Sopenharmony_ci			void main()
7486e5c31af7Sopenharmony_ci			{
7487e5c31af7Sopenharmony_ci				${SETUP}
7488e5c31af7Sopenharmony_ci				out0 = in0.ab;
7489e5c31af7Sopenharmony_ci				${OUTPUT}
7490e5c31af7Sopenharmony_ci			}
7491e5c31af7Sopenharmony_ci		""
7492e5c31af7Sopenharmony_ci	end
7493e5c31af7Sopenharmony_ci
7494e5c31af7Sopenharmony_ci	case mediump_bvec4_aaa
7495e5c31af7Sopenharmony_ci		version 310 es
7496e5c31af7Sopenharmony_ci		values
7497e5c31af7Sopenharmony_ci		{
7498e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7499e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, true, true) | bvec3(true, true, true) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
7500e5c31af7Sopenharmony_ci		}
7501e5c31af7Sopenharmony_ci
7502e5c31af7Sopenharmony_ci		both ""
7503e5c31af7Sopenharmony_ci			#version 310 es
7504e5c31af7Sopenharmony_ci			precision highp float;
7505e5c31af7Sopenharmony_ci			precision highp int;
7506e5c31af7Sopenharmony_ci
7507e5c31af7Sopenharmony_ci			${DECLARATIONS}
7508e5c31af7Sopenharmony_ci
7509e5c31af7Sopenharmony_ci			void main()
7510e5c31af7Sopenharmony_ci			{
7511e5c31af7Sopenharmony_ci				${SETUP}
7512e5c31af7Sopenharmony_ci				out0 = in0.aaa;
7513e5c31af7Sopenharmony_ci				${OUTPUT}
7514e5c31af7Sopenharmony_ci			}
7515e5c31af7Sopenharmony_ci		""
7516e5c31af7Sopenharmony_ci	end
7517e5c31af7Sopenharmony_ci
7518e5c31af7Sopenharmony_ci	case mediump_bvec4_gga
7519e5c31af7Sopenharmony_ci		version 310 es
7520e5c31af7Sopenharmony_ci		values
7521e5c31af7Sopenharmony_ci		{
7522e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7523e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(false, false, true) | bvec3(false, false, true) | bvec3(true, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
7524e5c31af7Sopenharmony_ci		}
7525e5c31af7Sopenharmony_ci
7526e5c31af7Sopenharmony_ci		both ""
7527e5c31af7Sopenharmony_ci			#version 310 es
7528e5c31af7Sopenharmony_ci			precision highp float;
7529e5c31af7Sopenharmony_ci			precision highp int;
7530e5c31af7Sopenharmony_ci
7531e5c31af7Sopenharmony_ci			${DECLARATIONS}
7532e5c31af7Sopenharmony_ci
7533e5c31af7Sopenharmony_ci			void main()
7534e5c31af7Sopenharmony_ci			{
7535e5c31af7Sopenharmony_ci				${SETUP}
7536e5c31af7Sopenharmony_ci				out0 = in0.gga;
7537e5c31af7Sopenharmony_ci				${OUTPUT}
7538e5c31af7Sopenharmony_ci			}
7539e5c31af7Sopenharmony_ci		""
7540e5c31af7Sopenharmony_ci	end
7541e5c31af7Sopenharmony_ci
7542e5c31af7Sopenharmony_ci	case mediump_bvec4_abg
7543e5c31af7Sopenharmony_ci		version 310 es
7544e5c31af7Sopenharmony_ci		values
7545e5c31af7Sopenharmony_ci		{
7546e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7547e5c31af7Sopenharmony_ci			output bvec3 out0 = [ bvec3(true, false, false) | bvec3(true, false, false) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
7548e5c31af7Sopenharmony_ci		}
7549e5c31af7Sopenharmony_ci
7550e5c31af7Sopenharmony_ci		both ""
7551e5c31af7Sopenharmony_ci			#version 310 es
7552e5c31af7Sopenharmony_ci			precision highp float;
7553e5c31af7Sopenharmony_ci			precision highp int;
7554e5c31af7Sopenharmony_ci
7555e5c31af7Sopenharmony_ci			${DECLARATIONS}
7556e5c31af7Sopenharmony_ci
7557e5c31af7Sopenharmony_ci			void main()
7558e5c31af7Sopenharmony_ci			{
7559e5c31af7Sopenharmony_ci				${SETUP}
7560e5c31af7Sopenharmony_ci				out0 = in0.abg;
7561e5c31af7Sopenharmony_ci				${OUTPUT}
7562e5c31af7Sopenharmony_ci			}
7563e5c31af7Sopenharmony_ci		""
7564e5c31af7Sopenharmony_ci	end
7565e5c31af7Sopenharmony_ci
7566e5c31af7Sopenharmony_ci	case mediump_bvec4_rgba
7567e5c31af7Sopenharmony_ci		version 310 es
7568e5c31af7Sopenharmony_ci		values
7569e5c31af7Sopenharmony_ci		{
7570e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7571e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7572e5c31af7Sopenharmony_ci		}
7573e5c31af7Sopenharmony_ci
7574e5c31af7Sopenharmony_ci		both ""
7575e5c31af7Sopenharmony_ci			#version 310 es
7576e5c31af7Sopenharmony_ci			precision highp float;
7577e5c31af7Sopenharmony_ci			precision highp int;
7578e5c31af7Sopenharmony_ci
7579e5c31af7Sopenharmony_ci			${DECLARATIONS}
7580e5c31af7Sopenharmony_ci
7581e5c31af7Sopenharmony_ci			void main()
7582e5c31af7Sopenharmony_ci			{
7583e5c31af7Sopenharmony_ci				${SETUP}
7584e5c31af7Sopenharmony_ci				out0 = in0.rgba;
7585e5c31af7Sopenharmony_ci				${OUTPUT}
7586e5c31af7Sopenharmony_ci			}
7587e5c31af7Sopenharmony_ci		""
7588e5c31af7Sopenharmony_ci	end
7589e5c31af7Sopenharmony_ci
7590e5c31af7Sopenharmony_ci	case mediump_bvec4_abgr
7591e5c31af7Sopenharmony_ci		version 310 es
7592e5c31af7Sopenharmony_ci		values
7593e5c31af7Sopenharmony_ci		{
7594e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7595e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, false) | bvec4(false, false, true, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7596e5c31af7Sopenharmony_ci		}
7597e5c31af7Sopenharmony_ci
7598e5c31af7Sopenharmony_ci		both ""
7599e5c31af7Sopenharmony_ci			#version 310 es
7600e5c31af7Sopenharmony_ci			precision highp float;
7601e5c31af7Sopenharmony_ci			precision highp int;
7602e5c31af7Sopenharmony_ci
7603e5c31af7Sopenharmony_ci			${DECLARATIONS}
7604e5c31af7Sopenharmony_ci
7605e5c31af7Sopenharmony_ci			void main()
7606e5c31af7Sopenharmony_ci			{
7607e5c31af7Sopenharmony_ci				${SETUP}
7608e5c31af7Sopenharmony_ci				out0 = in0.abgr;
7609e5c31af7Sopenharmony_ci				${OUTPUT}
7610e5c31af7Sopenharmony_ci			}
7611e5c31af7Sopenharmony_ci		""
7612e5c31af7Sopenharmony_ci	end
7613e5c31af7Sopenharmony_ci
7614e5c31af7Sopenharmony_ci	case mediump_bvec4_rrrr
7615e5c31af7Sopenharmony_ci		version 310 es
7616e5c31af7Sopenharmony_ci		values
7617e5c31af7Sopenharmony_ci		{
7618e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7619e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7620e5c31af7Sopenharmony_ci		}
7621e5c31af7Sopenharmony_ci
7622e5c31af7Sopenharmony_ci		both ""
7623e5c31af7Sopenharmony_ci			#version 310 es
7624e5c31af7Sopenharmony_ci			precision highp float;
7625e5c31af7Sopenharmony_ci			precision highp int;
7626e5c31af7Sopenharmony_ci
7627e5c31af7Sopenharmony_ci			${DECLARATIONS}
7628e5c31af7Sopenharmony_ci
7629e5c31af7Sopenharmony_ci			void main()
7630e5c31af7Sopenharmony_ci			{
7631e5c31af7Sopenharmony_ci				${SETUP}
7632e5c31af7Sopenharmony_ci				out0 = in0.rrrr;
7633e5c31af7Sopenharmony_ci				${OUTPUT}
7634e5c31af7Sopenharmony_ci			}
7635e5c31af7Sopenharmony_ci		""
7636e5c31af7Sopenharmony_ci	end
7637e5c31af7Sopenharmony_ci
7638e5c31af7Sopenharmony_ci	case mediump_bvec4_gggg
7639e5c31af7Sopenharmony_ci		version 310 es
7640e5c31af7Sopenharmony_ci		values
7641e5c31af7Sopenharmony_ci		{
7642e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7643e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7644e5c31af7Sopenharmony_ci		}
7645e5c31af7Sopenharmony_ci
7646e5c31af7Sopenharmony_ci		both ""
7647e5c31af7Sopenharmony_ci			#version 310 es
7648e5c31af7Sopenharmony_ci			precision highp float;
7649e5c31af7Sopenharmony_ci			precision highp int;
7650e5c31af7Sopenharmony_ci
7651e5c31af7Sopenharmony_ci			${DECLARATIONS}
7652e5c31af7Sopenharmony_ci
7653e5c31af7Sopenharmony_ci			void main()
7654e5c31af7Sopenharmony_ci			{
7655e5c31af7Sopenharmony_ci				${SETUP}
7656e5c31af7Sopenharmony_ci				out0 = in0.gggg;
7657e5c31af7Sopenharmony_ci				${OUTPUT}
7658e5c31af7Sopenharmony_ci			}
7659e5c31af7Sopenharmony_ci		""
7660e5c31af7Sopenharmony_ci	end
7661e5c31af7Sopenharmony_ci
7662e5c31af7Sopenharmony_ci	case mediump_bvec4_aaaa
7663e5c31af7Sopenharmony_ci		version 310 es
7664e5c31af7Sopenharmony_ci		values
7665e5c31af7Sopenharmony_ci		{
7666e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7667e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7668e5c31af7Sopenharmony_ci		}
7669e5c31af7Sopenharmony_ci
7670e5c31af7Sopenharmony_ci		both ""
7671e5c31af7Sopenharmony_ci			#version 310 es
7672e5c31af7Sopenharmony_ci			precision highp float;
7673e5c31af7Sopenharmony_ci			precision highp int;
7674e5c31af7Sopenharmony_ci
7675e5c31af7Sopenharmony_ci			${DECLARATIONS}
7676e5c31af7Sopenharmony_ci
7677e5c31af7Sopenharmony_ci			void main()
7678e5c31af7Sopenharmony_ci			{
7679e5c31af7Sopenharmony_ci				${SETUP}
7680e5c31af7Sopenharmony_ci				out0 = in0.aaaa;
7681e5c31af7Sopenharmony_ci				${OUTPUT}
7682e5c31af7Sopenharmony_ci			}
7683e5c31af7Sopenharmony_ci		""
7684e5c31af7Sopenharmony_ci	end
7685e5c31af7Sopenharmony_ci
7686e5c31af7Sopenharmony_ci	case mediump_bvec4_abba
7687e5c31af7Sopenharmony_ci		version 310 es
7688e5c31af7Sopenharmony_ci		values
7689e5c31af7Sopenharmony_ci		{
7690e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7691e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, true) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7692e5c31af7Sopenharmony_ci		}
7693e5c31af7Sopenharmony_ci
7694e5c31af7Sopenharmony_ci		both ""
7695e5c31af7Sopenharmony_ci			#version 310 es
7696e5c31af7Sopenharmony_ci			precision highp float;
7697e5c31af7Sopenharmony_ci			precision highp int;
7698e5c31af7Sopenharmony_ci
7699e5c31af7Sopenharmony_ci			${DECLARATIONS}
7700e5c31af7Sopenharmony_ci
7701e5c31af7Sopenharmony_ci			void main()
7702e5c31af7Sopenharmony_ci			{
7703e5c31af7Sopenharmony_ci				${SETUP}
7704e5c31af7Sopenharmony_ci				out0 = in0.abba;
7705e5c31af7Sopenharmony_ci				${OUTPUT}
7706e5c31af7Sopenharmony_ci			}
7707e5c31af7Sopenharmony_ci		""
7708e5c31af7Sopenharmony_ci	end
7709e5c31af7Sopenharmony_ci
7710e5c31af7Sopenharmony_ci	case mediump_bvec4_aaag
7711e5c31af7Sopenharmony_ci		version 310 es
7712e5c31af7Sopenharmony_ci		values
7713e5c31af7Sopenharmony_ci		{
7714e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7715e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, true, true, false) | bvec4(true, true, true, false) | bvec4(false, false, false, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7716e5c31af7Sopenharmony_ci		}
7717e5c31af7Sopenharmony_ci
7718e5c31af7Sopenharmony_ci		both ""
7719e5c31af7Sopenharmony_ci			#version 310 es
7720e5c31af7Sopenharmony_ci			precision highp float;
7721e5c31af7Sopenharmony_ci			precision highp int;
7722e5c31af7Sopenharmony_ci
7723e5c31af7Sopenharmony_ci			${DECLARATIONS}
7724e5c31af7Sopenharmony_ci
7725e5c31af7Sopenharmony_ci			void main()
7726e5c31af7Sopenharmony_ci			{
7727e5c31af7Sopenharmony_ci				${SETUP}
7728e5c31af7Sopenharmony_ci				out0 = in0.aaag;
7729e5c31af7Sopenharmony_ci				${OUTPUT}
7730e5c31af7Sopenharmony_ci			}
7731e5c31af7Sopenharmony_ci		""
7732e5c31af7Sopenharmony_ci	end
7733e5c31af7Sopenharmony_ci
7734e5c31af7Sopenharmony_ci	case mediump_bvec4_rgrr
7735e5c31af7Sopenharmony_ci		version 310 es
7736e5c31af7Sopenharmony_ci		values
7737e5c31af7Sopenharmony_ci		{
7738e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7739e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7740e5c31af7Sopenharmony_ci		}
7741e5c31af7Sopenharmony_ci
7742e5c31af7Sopenharmony_ci		both ""
7743e5c31af7Sopenharmony_ci			#version 310 es
7744e5c31af7Sopenharmony_ci			precision highp float;
7745e5c31af7Sopenharmony_ci			precision highp int;
7746e5c31af7Sopenharmony_ci
7747e5c31af7Sopenharmony_ci			${DECLARATIONS}
7748e5c31af7Sopenharmony_ci
7749e5c31af7Sopenharmony_ci			void main()
7750e5c31af7Sopenharmony_ci			{
7751e5c31af7Sopenharmony_ci				${SETUP}
7752e5c31af7Sopenharmony_ci				out0 = in0.rgrr;
7753e5c31af7Sopenharmony_ci				${OUTPUT}
7754e5c31af7Sopenharmony_ci			}
7755e5c31af7Sopenharmony_ci		""
7756e5c31af7Sopenharmony_ci	end
7757e5c31af7Sopenharmony_ci
7758e5c31af7Sopenharmony_ci	case mediump_bvec4_bbab
7759e5c31af7Sopenharmony_ci		version 310 es
7760e5c31af7Sopenharmony_ci		values
7761e5c31af7Sopenharmony_ci		{
7762e5c31af7Sopenharmony_ci			input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7763e5c31af7Sopenharmony_ci			output bvec4 out0 = [ bvec4(false, false, true, false) | bvec4(false, false, true, false) | bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
7764e5c31af7Sopenharmony_ci		}
7765e5c31af7Sopenharmony_ci
7766e5c31af7Sopenharmony_ci		both ""
7767e5c31af7Sopenharmony_ci			#version 310 es
7768e5c31af7Sopenharmony_ci			precision highp float;
7769e5c31af7Sopenharmony_ci			precision highp int;
7770e5c31af7Sopenharmony_ci
7771e5c31af7Sopenharmony_ci			${DECLARATIONS}
7772e5c31af7Sopenharmony_ci
7773e5c31af7Sopenharmony_ci			void main()
7774e5c31af7Sopenharmony_ci			{
7775e5c31af7Sopenharmony_ci				${SETUP}
7776e5c31af7Sopenharmony_ci				out0 = in0.bbab;
7777e5c31af7Sopenharmony_ci				${OUTPUT}
7778e5c31af7Sopenharmony_ci			}
7779e5c31af7Sopenharmony_ci		""
7780e5c31af7Sopenharmony_ci	end
7781e5c31af7Sopenharmony_ci
7782e5c31af7Sopenharmony_ci
7783e5c31af7Sopenharmony_ciend # vector_swizzles
7784