1cb93a386Sopenharmony_ci#include <metal_stdlib>
2cb93a386Sopenharmony_ci#include <simd/simd.h>
3cb93a386Sopenharmony_ciusing namespace metal;
4cb93a386Sopenharmony_cistruct Uniforms {
5cb93a386Sopenharmony_ci    half4 colorGreen;
6cb93a386Sopenharmony_ci    half4 colorRed;
7cb93a386Sopenharmony_ci    half4 colorWhite;
8cb93a386Sopenharmony_ci};
9cb93a386Sopenharmony_cistruct Inputs {
10cb93a386Sopenharmony_ci};
11cb93a386Sopenharmony_cistruct Outputs {
12cb93a386Sopenharmony_ci    half4 sk_FragColor [[color(0)]];
13cb93a386Sopenharmony_ci};
14cb93a386Sopenharmony_civoid out_half_vh(Uniforms _uniforms, thread half& v);
15cb93a386Sopenharmony_civoid _skOutParamHelper0_out_half_vh(Uniforms _uniforms, thread half& h) {
16cb93a386Sopenharmony_ci    half _var0;
17cb93a386Sopenharmony_ci    out_half_vh(_uniforms, _var0);
18cb93a386Sopenharmony_ci    h = _var0;
19cb93a386Sopenharmony_ci}
20cb93a386Sopenharmony_civoid out_half2_vh2(Uniforms _uniforms, thread half2& v);
21cb93a386Sopenharmony_civoid _skOutParamHelper1_out_half2_vh2(Uniforms _uniforms, thread half2& h2) {
22cb93a386Sopenharmony_ci    half2 _var0;
23cb93a386Sopenharmony_ci    out_half2_vh2(_uniforms, _var0);
24cb93a386Sopenharmony_ci    h2 = _var0;
25cb93a386Sopenharmony_ci}
26cb93a386Sopenharmony_civoid out_half3_vh3(Uniforms _uniforms, thread half3& v);
27cb93a386Sopenharmony_civoid _skOutParamHelper2_out_half3_vh3(Uniforms _uniforms, thread half3& h3) {
28cb93a386Sopenharmony_ci    half3 _var0;
29cb93a386Sopenharmony_ci    out_half3_vh3(_uniforms, _var0);
30cb93a386Sopenharmony_ci    h3 = _var0;
31cb93a386Sopenharmony_ci}
32cb93a386Sopenharmony_civoid out_half4_vh4(Uniforms _uniforms, thread half4& v);
33cb93a386Sopenharmony_civoid _skOutParamHelper3_out_half4_vh4(Uniforms _uniforms, thread half4& h4) {
34cb93a386Sopenharmony_ci    half4 _var0;
35cb93a386Sopenharmony_ci    out_half4_vh4(_uniforms, _var0);
36cb93a386Sopenharmony_ci    h4 = _var0;
37cb93a386Sopenharmony_ci}
38cb93a386Sopenharmony_civoid out_half_vh(Uniforms _uniforms, thread half& v);
39cb93a386Sopenharmony_civoid _skOutParamHelper4_out_half_vh(Uniforms _uniforms, thread half3& h3) {
40cb93a386Sopenharmony_ci    half _var0;
41cb93a386Sopenharmony_ci    out_half_vh(_uniforms, _var0);
42cb93a386Sopenharmony_ci    h3.y = _var0;
43cb93a386Sopenharmony_ci}
44cb93a386Sopenharmony_civoid out_half2_vh2(Uniforms _uniforms, thread half2& v);
45cb93a386Sopenharmony_civoid _skOutParamHelper5_out_half2_vh2(Uniforms _uniforms, thread half3& h3) {
46cb93a386Sopenharmony_ci    half2 _var0;
47cb93a386Sopenharmony_ci    out_half2_vh2(_uniforms, _var0);
48cb93a386Sopenharmony_ci    h3.xz = _var0;
49cb93a386Sopenharmony_ci}
50cb93a386Sopenharmony_civoid out_half4_vh4(Uniforms _uniforms, thread half4& v);
51cb93a386Sopenharmony_civoid _skOutParamHelper6_out_half4_vh4(Uniforms _uniforms, thread half4& h4) {
52cb93a386Sopenharmony_ci    half4 _var0;
53cb93a386Sopenharmony_ci    out_half4_vh4(_uniforms, _var0);
54cb93a386Sopenharmony_ci    h4.zwxy = _var0;
55cb93a386Sopenharmony_ci}
56cb93a386Sopenharmony_civoid out_half2x2_vh22(Uniforms _uniforms, thread half2x2& v);
57cb93a386Sopenharmony_civoid _skOutParamHelper7_out_half2x2_vh22(Uniforms _uniforms, thread half2x2& h2x2) {
58cb93a386Sopenharmony_ci    half2x2 _var0;
59cb93a386Sopenharmony_ci    out_half2x2_vh22(_uniforms, _var0);
60cb93a386Sopenharmony_ci    h2x2 = _var0;
61cb93a386Sopenharmony_ci}
62cb93a386Sopenharmony_civoid out_half3x3_vh33(Uniforms _uniforms, thread half3x3& v);
63cb93a386Sopenharmony_civoid _skOutParamHelper8_out_half3x3_vh33(Uniforms _uniforms, thread half3x3& h3x3) {
64cb93a386Sopenharmony_ci    half3x3 _var0;
65cb93a386Sopenharmony_ci    out_half3x3_vh33(_uniforms, _var0);
66cb93a386Sopenharmony_ci    h3x3 = _var0;
67cb93a386Sopenharmony_ci}
68cb93a386Sopenharmony_civoid out_half4x4_vh44(Uniforms _uniforms, thread half4x4& v);
69cb93a386Sopenharmony_civoid _skOutParamHelper9_out_half4x4_vh44(Uniforms _uniforms, thread half4x4& h4x4) {
70cb93a386Sopenharmony_ci    half4x4 _var0;
71cb93a386Sopenharmony_ci    out_half4x4_vh44(_uniforms, _var0);
72cb93a386Sopenharmony_ci    h4x4 = _var0;
73cb93a386Sopenharmony_ci}
74cb93a386Sopenharmony_civoid out_half3_vh3(Uniforms _uniforms, thread half3& v);
75cb93a386Sopenharmony_civoid _skOutParamHelper10_out_half3_vh3(Uniforms _uniforms, thread half3x3& h3x3) {
76cb93a386Sopenharmony_ci    half3 _var0;
77cb93a386Sopenharmony_ci    out_half3_vh3(_uniforms, _var0);
78cb93a386Sopenharmony_ci    h3x3[1] = _var0;
79cb93a386Sopenharmony_ci}
80cb93a386Sopenharmony_civoid out_half_vh(Uniforms _uniforms, thread half& v);
81cb93a386Sopenharmony_civoid _skOutParamHelper11_out_half_vh(Uniforms _uniforms, thread half4x4& h4x4) {
82cb93a386Sopenharmony_ci    half _var0;
83cb93a386Sopenharmony_ci    out_half_vh(_uniforms, _var0);
84cb93a386Sopenharmony_ci    h4x4[3].w = _var0;
85cb93a386Sopenharmony_ci}
86cb93a386Sopenharmony_civoid out_half_vh(Uniforms _uniforms, thread half& v);
87cb93a386Sopenharmony_civoid _skOutParamHelper12_out_half_vh(Uniforms _uniforms, thread half2x2& h2x2) {
88cb93a386Sopenharmony_ci    half _var0;
89cb93a386Sopenharmony_ci    out_half_vh(_uniforms, _var0);
90cb93a386Sopenharmony_ci    h2x2[0].x = _var0;
91cb93a386Sopenharmony_ci}
92cb93a386Sopenharmony_civoid out_int_vi(Uniforms _uniforms, thread int& v);
93cb93a386Sopenharmony_civoid _skOutParamHelper13_out_int_vi(Uniforms _uniforms, thread int& i) {
94cb93a386Sopenharmony_ci    int _var0;
95cb93a386Sopenharmony_ci    out_int_vi(_uniforms, _var0);
96cb93a386Sopenharmony_ci    i = _var0;
97cb93a386Sopenharmony_ci}
98cb93a386Sopenharmony_civoid out_int2_vi2(Uniforms _uniforms, thread int2& v);
99cb93a386Sopenharmony_civoid _skOutParamHelper14_out_int2_vi2(Uniforms _uniforms, thread int2& i2) {
100cb93a386Sopenharmony_ci    int2 _var0;
101cb93a386Sopenharmony_ci    out_int2_vi2(_uniforms, _var0);
102cb93a386Sopenharmony_ci    i2 = _var0;
103cb93a386Sopenharmony_ci}
104cb93a386Sopenharmony_civoid out_int3_vi3(Uniforms _uniforms, thread int3& v);
105cb93a386Sopenharmony_civoid _skOutParamHelper15_out_int3_vi3(Uniforms _uniforms, thread int3& i3) {
106cb93a386Sopenharmony_ci    int3 _var0;
107cb93a386Sopenharmony_ci    out_int3_vi3(_uniforms, _var0);
108cb93a386Sopenharmony_ci    i3 = _var0;
109cb93a386Sopenharmony_ci}
110cb93a386Sopenharmony_civoid out_int4_vi4(Uniforms _uniforms, thread int4& v);
111cb93a386Sopenharmony_civoid _skOutParamHelper16_out_int4_vi4(Uniforms _uniforms, thread int4& i4) {
112cb93a386Sopenharmony_ci    int4 _var0;
113cb93a386Sopenharmony_ci    out_int4_vi4(_uniforms, _var0);
114cb93a386Sopenharmony_ci    i4 = _var0;
115cb93a386Sopenharmony_ci}
116cb93a386Sopenharmony_civoid out_int3_vi3(Uniforms _uniforms, thread int3& v);
117cb93a386Sopenharmony_civoid _skOutParamHelper17_out_int3_vi3(Uniforms _uniforms, thread int4& i4) {
118cb93a386Sopenharmony_ci    int3 _var0;
119cb93a386Sopenharmony_ci    out_int3_vi3(_uniforms, _var0);
120cb93a386Sopenharmony_ci    i4.xyz = _var0;
121cb93a386Sopenharmony_ci}
122cb93a386Sopenharmony_civoid out_int_vi(Uniforms _uniforms, thread int& v);
123cb93a386Sopenharmony_civoid _skOutParamHelper18_out_int_vi(Uniforms _uniforms, thread int2& i2) {
124cb93a386Sopenharmony_ci    int _var0;
125cb93a386Sopenharmony_ci    out_int_vi(_uniforms, _var0);
126cb93a386Sopenharmony_ci    i2.y = _var0;
127cb93a386Sopenharmony_ci}
128cb93a386Sopenharmony_civoid out_float_vf(Uniforms _uniforms, thread float& v);
129cb93a386Sopenharmony_civoid _skOutParamHelper19_out_float_vf(Uniforms _uniforms, thread float& f) {
130cb93a386Sopenharmony_ci    float _var0;
131cb93a386Sopenharmony_ci    out_float_vf(_uniforms, _var0);
132cb93a386Sopenharmony_ci    f = _var0;
133cb93a386Sopenharmony_ci}
134cb93a386Sopenharmony_civoid out_float2_vf2(Uniforms _uniforms, thread float2& v);
135cb93a386Sopenharmony_civoid _skOutParamHelper20_out_float2_vf2(Uniforms _uniforms, thread float2& f2) {
136cb93a386Sopenharmony_ci    float2 _var0;
137cb93a386Sopenharmony_ci    out_float2_vf2(_uniforms, _var0);
138cb93a386Sopenharmony_ci    f2 = _var0;
139cb93a386Sopenharmony_ci}
140cb93a386Sopenharmony_civoid out_float3_vf3(Uniforms _uniforms, thread float3& v);
141cb93a386Sopenharmony_civoid _skOutParamHelper21_out_float3_vf3(Uniforms _uniforms, thread float3& f3) {
142cb93a386Sopenharmony_ci    float3 _var0;
143cb93a386Sopenharmony_ci    out_float3_vf3(_uniforms, _var0);
144cb93a386Sopenharmony_ci    f3 = _var0;
145cb93a386Sopenharmony_ci}
146cb93a386Sopenharmony_civoid out_float4_vf4(Uniforms _uniforms, thread float4& v);
147cb93a386Sopenharmony_civoid _skOutParamHelper22_out_float4_vf4(Uniforms _uniforms, thread float4& f4) {
148cb93a386Sopenharmony_ci    float4 _var0;
149cb93a386Sopenharmony_ci    out_float4_vf4(_uniforms, _var0);
150cb93a386Sopenharmony_ci    f4 = _var0;
151cb93a386Sopenharmony_ci}
152cb93a386Sopenharmony_civoid out_float2_vf2(Uniforms _uniforms, thread float2& v);
153cb93a386Sopenharmony_civoid _skOutParamHelper23_out_float2_vf2(Uniforms _uniforms, thread float3& f3) {
154cb93a386Sopenharmony_ci    float2 _var0;
155cb93a386Sopenharmony_ci    out_float2_vf2(_uniforms, _var0);
156cb93a386Sopenharmony_ci    f3.xy = _var0;
157cb93a386Sopenharmony_ci}
158cb93a386Sopenharmony_civoid out_float_vf(Uniforms _uniforms, thread float& v);
159cb93a386Sopenharmony_civoid _skOutParamHelper24_out_float_vf(Uniforms _uniforms, thread float2& f2) {
160cb93a386Sopenharmony_ci    float _var0;
161cb93a386Sopenharmony_ci    out_float_vf(_uniforms, _var0);
162cb93a386Sopenharmony_ci    f2.x = _var0;
163cb93a386Sopenharmony_ci}
164cb93a386Sopenharmony_civoid out_float2x2_vf22(Uniforms _uniforms, thread float2x2& v);
165cb93a386Sopenharmony_civoid _skOutParamHelper25_out_float2x2_vf22(Uniforms _uniforms, thread float2x2& f2x2) {
166cb93a386Sopenharmony_ci    float2x2 _var0;
167cb93a386Sopenharmony_ci    out_float2x2_vf22(_uniforms, _var0);
168cb93a386Sopenharmony_ci    f2x2 = _var0;
169cb93a386Sopenharmony_ci}
170cb93a386Sopenharmony_civoid out_float3x3_vf33(Uniforms _uniforms, thread float3x3& v);
171cb93a386Sopenharmony_civoid _skOutParamHelper26_out_float3x3_vf33(Uniforms _uniforms, thread float3x3& f3x3) {
172cb93a386Sopenharmony_ci    float3x3 _var0;
173cb93a386Sopenharmony_ci    out_float3x3_vf33(_uniforms, _var0);
174cb93a386Sopenharmony_ci    f3x3 = _var0;
175cb93a386Sopenharmony_ci}
176cb93a386Sopenharmony_civoid out_float4x4_vf44(Uniforms _uniforms, thread float4x4& v);
177cb93a386Sopenharmony_civoid _skOutParamHelper27_out_float4x4_vf44(Uniforms _uniforms, thread float4x4& f4x4) {
178cb93a386Sopenharmony_ci    float4x4 _var0;
179cb93a386Sopenharmony_ci    out_float4x4_vf44(_uniforms, _var0);
180cb93a386Sopenharmony_ci    f4x4 = _var0;
181cb93a386Sopenharmony_ci}
182cb93a386Sopenharmony_civoid out_float_vf(Uniforms _uniforms, thread float& v);
183cb93a386Sopenharmony_civoid _skOutParamHelper28_out_float_vf(Uniforms _uniforms, thread float2x2& f2x2) {
184cb93a386Sopenharmony_ci    float _var0;
185cb93a386Sopenharmony_ci    out_float_vf(_uniforms, _var0);
186cb93a386Sopenharmony_ci    f2x2[0].x = _var0;
187cb93a386Sopenharmony_ci}
188cb93a386Sopenharmony_civoid out_bool_vb(Uniforms _uniforms, thread bool& v);
189cb93a386Sopenharmony_civoid _skOutParamHelper29_out_bool_vb(Uniforms _uniforms, thread bool& b) {
190cb93a386Sopenharmony_ci    bool _var0;
191cb93a386Sopenharmony_ci    out_bool_vb(_uniforms, _var0);
192cb93a386Sopenharmony_ci    b = _var0;
193cb93a386Sopenharmony_ci}
194cb93a386Sopenharmony_civoid out_bool2_vb2(Uniforms _uniforms, thread bool2& v);
195cb93a386Sopenharmony_civoid _skOutParamHelper30_out_bool2_vb2(Uniforms _uniforms, thread bool2& b2) {
196cb93a386Sopenharmony_ci    bool2 _var0;
197cb93a386Sopenharmony_ci    out_bool2_vb2(_uniforms, _var0);
198cb93a386Sopenharmony_ci    b2 = _var0;
199cb93a386Sopenharmony_ci}
200cb93a386Sopenharmony_civoid out_bool3_vb3(Uniforms _uniforms, thread bool3& v);
201cb93a386Sopenharmony_civoid _skOutParamHelper31_out_bool3_vb3(Uniforms _uniforms, thread bool3& b3) {
202cb93a386Sopenharmony_ci    bool3 _var0;
203cb93a386Sopenharmony_ci    out_bool3_vb3(_uniforms, _var0);
204cb93a386Sopenharmony_ci    b3 = _var0;
205cb93a386Sopenharmony_ci}
206cb93a386Sopenharmony_civoid out_bool4_vb4(Uniforms _uniforms, thread bool4& v);
207cb93a386Sopenharmony_civoid _skOutParamHelper32_out_bool4_vb4(Uniforms _uniforms, thread bool4& b4) {
208cb93a386Sopenharmony_ci    bool4 _var0;
209cb93a386Sopenharmony_ci    out_bool4_vb4(_uniforms, _var0);
210cb93a386Sopenharmony_ci    b4 = _var0;
211cb93a386Sopenharmony_ci}
212cb93a386Sopenharmony_civoid out_bool2_vb2(Uniforms _uniforms, thread bool2& v);
213cb93a386Sopenharmony_civoid _skOutParamHelper33_out_bool2_vb2(Uniforms _uniforms, thread bool4& b4) {
214cb93a386Sopenharmony_ci    bool2 _var0;
215cb93a386Sopenharmony_ci    out_bool2_vb2(_uniforms, _var0);
216cb93a386Sopenharmony_ci    b4.xw = _var0;
217cb93a386Sopenharmony_ci}
218cb93a386Sopenharmony_civoid out_bool_vb(Uniforms _uniforms, thread bool& v);
219cb93a386Sopenharmony_civoid _skOutParamHelper34_out_bool_vb(Uniforms _uniforms, thread bool3& b3) {
220cb93a386Sopenharmony_ci    bool _var0;
221cb93a386Sopenharmony_ci    out_bool_vb(_uniforms, _var0);
222cb93a386Sopenharmony_ci    b3.z = _var0;
223cb93a386Sopenharmony_ci}
224cb93a386Sopenharmony_civoid out_half_vh(Uniforms _uniforms, thread half& v) {
225cb93a386Sopenharmony_ci    v = _uniforms.colorWhite.x;
226cb93a386Sopenharmony_ci}
227cb93a386Sopenharmony_civoid out_half2_vh2(Uniforms _uniforms, thread half2& v) {
228cb93a386Sopenharmony_ci    v = half2(_uniforms.colorWhite.y);
229cb93a386Sopenharmony_ci}
230cb93a386Sopenharmony_civoid out_half3_vh3(Uniforms _uniforms, thread half3& v) {
231cb93a386Sopenharmony_ci    v = half3(_uniforms.colorWhite.z);
232cb93a386Sopenharmony_ci}
233cb93a386Sopenharmony_civoid out_half4_vh4(Uniforms _uniforms, thread half4& v) {
234cb93a386Sopenharmony_ci    v = half4(_uniforms.colorWhite.w);
235cb93a386Sopenharmony_ci}
236cb93a386Sopenharmony_civoid out_half2x2_vh22(Uniforms _uniforms, thread half2x2& v) {
237cb93a386Sopenharmony_ci    v = half2x2(_uniforms.colorWhite.x);
238cb93a386Sopenharmony_ci}
239cb93a386Sopenharmony_civoid out_half3x3_vh33(Uniforms _uniforms, thread half3x3& v) {
240cb93a386Sopenharmony_ci    v = half3x3(_uniforms.colorWhite.y);
241cb93a386Sopenharmony_ci}
242cb93a386Sopenharmony_civoid out_half4x4_vh44(Uniforms _uniforms, thread half4x4& v) {
243cb93a386Sopenharmony_ci    v = half4x4(_uniforms.colorWhite.z);
244cb93a386Sopenharmony_ci}
245cb93a386Sopenharmony_civoid out_int_vi(Uniforms _uniforms, thread int& v) {
246cb93a386Sopenharmony_ci    v = int(_uniforms.colorWhite.x);
247cb93a386Sopenharmony_ci}
248cb93a386Sopenharmony_civoid out_int2_vi2(Uniforms _uniforms, thread int2& v) {
249cb93a386Sopenharmony_ci    v = int2(int(_uniforms.colorWhite.y));
250cb93a386Sopenharmony_ci}
251cb93a386Sopenharmony_civoid out_int3_vi3(Uniforms _uniforms, thread int3& v) {
252cb93a386Sopenharmony_ci    v = int3(int(_uniforms.colorWhite.z));
253cb93a386Sopenharmony_ci}
254cb93a386Sopenharmony_civoid out_int4_vi4(Uniforms _uniforms, thread int4& v) {
255cb93a386Sopenharmony_ci    v = int4(int(_uniforms.colorWhite.w));
256cb93a386Sopenharmony_ci}
257cb93a386Sopenharmony_civoid out_float_vf(Uniforms _uniforms, thread float& v) {
258cb93a386Sopenharmony_ci    v = float(_uniforms.colorWhite.x);
259cb93a386Sopenharmony_ci}
260cb93a386Sopenharmony_civoid out_float2_vf2(Uniforms _uniforms, thread float2& v) {
261cb93a386Sopenharmony_ci    v = float2(float(_uniforms.colorWhite.y));
262cb93a386Sopenharmony_ci}
263cb93a386Sopenharmony_civoid out_float3_vf3(Uniforms _uniforms, thread float3& v) {
264cb93a386Sopenharmony_ci    v = float3(float(_uniforms.colorWhite.z));
265cb93a386Sopenharmony_ci}
266cb93a386Sopenharmony_civoid out_float4_vf4(Uniforms _uniforms, thread float4& v) {
267cb93a386Sopenharmony_ci    v = float4(float(_uniforms.colorWhite.w));
268cb93a386Sopenharmony_ci}
269cb93a386Sopenharmony_civoid out_float2x2_vf22(Uniforms _uniforms, thread float2x2& v) {
270cb93a386Sopenharmony_ci    v = float2x2(float(_uniforms.colorWhite.x));
271cb93a386Sopenharmony_ci}
272cb93a386Sopenharmony_civoid out_float3x3_vf33(Uniforms _uniforms, thread float3x3& v) {
273cb93a386Sopenharmony_ci    v = float3x3(float(_uniforms.colorWhite.y));
274cb93a386Sopenharmony_ci}
275cb93a386Sopenharmony_civoid out_float4x4_vf44(Uniforms _uniforms, thread float4x4& v) {
276cb93a386Sopenharmony_ci    v = float4x4(float(_uniforms.colorWhite.z));
277cb93a386Sopenharmony_ci}
278cb93a386Sopenharmony_civoid out_bool_vb(Uniforms _uniforms, thread bool& v) {
279cb93a386Sopenharmony_ci    v = bool(_uniforms.colorWhite.x);
280cb93a386Sopenharmony_ci}
281cb93a386Sopenharmony_civoid out_bool2_vb2(Uniforms _uniforms, thread bool2& v) {
282cb93a386Sopenharmony_ci    v = bool2(bool(_uniforms.colorWhite.y));
283cb93a386Sopenharmony_ci}
284cb93a386Sopenharmony_civoid out_bool3_vb3(Uniforms _uniforms, thread bool3& v) {
285cb93a386Sopenharmony_ci    v = bool3(bool(_uniforms.colorWhite.z));
286cb93a386Sopenharmony_ci}
287cb93a386Sopenharmony_civoid out_bool4_vb4(Uniforms _uniforms, thread bool4& v) {
288cb93a386Sopenharmony_ci    v = bool4(bool(_uniforms.colorWhite.w));
289cb93a386Sopenharmony_ci}
290cb93a386Sopenharmony_cifragment Outputs fragmentMain(Inputs _in [[stage_in]], constant Uniforms& _uniforms [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) {
291cb93a386Sopenharmony_ci    Outputs _out;
292cb93a386Sopenharmony_ci    (void)_out;
293cb93a386Sopenharmony_ci    half h;
294cb93a386Sopenharmony_ci    _skOutParamHelper0_out_half_vh(_uniforms, h);
295cb93a386Sopenharmony_ci    half2 h2;
296cb93a386Sopenharmony_ci    _skOutParamHelper1_out_half2_vh2(_uniforms, h2);
297cb93a386Sopenharmony_ci    half3 h3;
298cb93a386Sopenharmony_ci    _skOutParamHelper2_out_half3_vh3(_uniforms, h3);
299cb93a386Sopenharmony_ci    half4 h4;
300cb93a386Sopenharmony_ci    _skOutParamHelper3_out_half4_vh4(_uniforms, h4);
301cb93a386Sopenharmony_ci    _skOutParamHelper4_out_half_vh(_uniforms, h3);
302cb93a386Sopenharmony_ci    _skOutParamHelper5_out_half2_vh2(_uniforms, h3);
303cb93a386Sopenharmony_ci    _skOutParamHelper6_out_half4_vh4(_uniforms, h4);
304cb93a386Sopenharmony_ci    half2x2 h2x2;
305cb93a386Sopenharmony_ci    _skOutParamHelper7_out_half2x2_vh22(_uniforms, h2x2);
306cb93a386Sopenharmony_ci    half3x3 h3x3;
307cb93a386Sopenharmony_ci    _skOutParamHelper8_out_half3x3_vh33(_uniforms, h3x3);
308cb93a386Sopenharmony_ci    half4x4 h4x4;
309cb93a386Sopenharmony_ci    _skOutParamHelper9_out_half4x4_vh44(_uniforms, h4x4);
310cb93a386Sopenharmony_ci    _skOutParamHelper10_out_half3_vh3(_uniforms, h3x3);
311cb93a386Sopenharmony_ci    _skOutParamHelper11_out_half_vh(_uniforms, h4x4);
312cb93a386Sopenharmony_ci    _skOutParamHelper12_out_half_vh(_uniforms, h2x2);
313cb93a386Sopenharmony_ci    int i;
314cb93a386Sopenharmony_ci    _skOutParamHelper13_out_int_vi(_uniforms, i);
315cb93a386Sopenharmony_ci    int2 i2;
316cb93a386Sopenharmony_ci    _skOutParamHelper14_out_int2_vi2(_uniforms, i2);
317cb93a386Sopenharmony_ci    int3 i3;
318cb93a386Sopenharmony_ci    _skOutParamHelper15_out_int3_vi3(_uniforms, i3);
319cb93a386Sopenharmony_ci    int4 i4;
320cb93a386Sopenharmony_ci    _skOutParamHelper16_out_int4_vi4(_uniforms, i4);
321cb93a386Sopenharmony_ci    _skOutParamHelper17_out_int3_vi3(_uniforms, i4);
322cb93a386Sopenharmony_ci    _skOutParamHelper18_out_int_vi(_uniforms, i2);
323cb93a386Sopenharmony_ci    float f;
324cb93a386Sopenharmony_ci    _skOutParamHelper19_out_float_vf(_uniforms, f);
325cb93a386Sopenharmony_ci    float2 f2;
326cb93a386Sopenharmony_ci    _skOutParamHelper20_out_float2_vf2(_uniforms, f2);
327cb93a386Sopenharmony_ci    float3 f3;
328cb93a386Sopenharmony_ci    _skOutParamHelper21_out_float3_vf3(_uniforms, f3);
329cb93a386Sopenharmony_ci    float4 f4;
330cb93a386Sopenharmony_ci    _skOutParamHelper22_out_float4_vf4(_uniforms, f4);
331cb93a386Sopenharmony_ci    _skOutParamHelper23_out_float2_vf2(_uniforms, f3);
332cb93a386Sopenharmony_ci    _skOutParamHelper24_out_float_vf(_uniforms, f2);
333cb93a386Sopenharmony_ci    float2x2 f2x2;
334cb93a386Sopenharmony_ci    _skOutParamHelper25_out_float2x2_vf22(_uniforms, f2x2);
335cb93a386Sopenharmony_ci    float3x3 f3x3;
336cb93a386Sopenharmony_ci    _skOutParamHelper26_out_float3x3_vf33(_uniforms, f3x3);
337cb93a386Sopenharmony_ci    float4x4 f4x4;
338cb93a386Sopenharmony_ci    _skOutParamHelper27_out_float4x4_vf44(_uniforms, f4x4);
339cb93a386Sopenharmony_ci    _skOutParamHelper28_out_float_vf(_uniforms, f2x2);
340cb93a386Sopenharmony_ci    bool b;
341cb93a386Sopenharmony_ci    _skOutParamHelper29_out_bool_vb(_uniforms, b);
342cb93a386Sopenharmony_ci    bool2 b2;
343cb93a386Sopenharmony_ci    _skOutParamHelper30_out_bool2_vb2(_uniforms, b2);
344cb93a386Sopenharmony_ci    bool3 b3;
345cb93a386Sopenharmony_ci    _skOutParamHelper31_out_bool3_vb3(_uniforms, b3);
346cb93a386Sopenharmony_ci    bool4 b4;
347cb93a386Sopenharmony_ci    _skOutParamHelper32_out_bool4_vb4(_uniforms, b4);
348cb93a386Sopenharmony_ci    _skOutParamHelper33_out_bool2_vb2(_uniforms, b4);
349cb93a386Sopenharmony_ci    _skOutParamHelper34_out_bool_vb(_uniforms, b3);
350cb93a386Sopenharmony_ci    bool ok = true;
351cb93a386Sopenharmony_ci    ok = ok && 1.0h == (((((h * h2.x) * h3.x) * h4.x) * h2x2[0].x) * h3x3[0].x) * h4x4[0].x;
352cb93a386Sopenharmony_ci    ok = ok && 1.0 == (((((f * f2.x) * f3.x) * f4.x) * f2x2[0].x) * f3x3[0].x) * f4x4[0].x;
353cb93a386Sopenharmony_ci    ok = ok && 1 == ((i * i2.x) * i3.x) * i4.x;
354cb93a386Sopenharmony_ci    ok = ok && (((b && b2.x) && b3.x) && b4.x);
355cb93a386Sopenharmony_ci    _out.sk_FragColor = ok ? _uniforms.colorGreen : _uniforms.colorRed;
356cb93a386Sopenharmony_ci    return _out;
357cb93a386Sopenharmony_ci}
358