1e509ee18Sopenharmony_ci/*
2e509ee18Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd.
3e509ee18Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4e509ee18Sopenharmony_ci * you may not use this file except in compliance with the License.
5e509ee18Sopenharmony_ci * You may obtain a copy of the License at
6e509ee18Sopenharmony_ci *
7e509ee18Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8e509ee18Sopenharmony_ci *
9e509ee18Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10e509ee18Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11e509ee18Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12e509ee18Sopenharmony_ci * See the License for the specific language governing permissions and
13e509ee18Sopenharmony_ci * limitations under the License.
14e509ee18Sopenharmony_ci */
15e509ee18Sopenharmony_ci
16e509ee18Sopenharmony_civar o = {
17e509ee18Sopenharmony_ci    "foo": function () {
18e509ee18Sopenharmony_ci        var number0 = 1;
19e509ee18Sopenharmony_ci        var string0 = "helloworld";
20e509ee18Sopenharmony_ci        var boolean0 = false;
21e509ee18Sopenharmony_ci        var obj0 = {
22e509ee18Sopenharmony_ci            "key0": "value0",
23e509ee18Sopenharmony_ci            "key1": 100
24e509ee18Sopenharmony_ci        };
25e509ee18Sopenharmony_ci        var undefined0 = undefined;
26e509ee18Sopenharmony_ci        var null0 = null;
27e509ee18Sopenharmony_ci        var symbol0 = Symbol("symbol0");
28e509ee18Sopenharmony_ci        function function0() {
29e509ee18Sopenharmony_ci            var test = 0;
30e509ee18Sopenharmony_ci        }
31e509ee18Sopenharmony_ci        var date0 = new Date('December 17, 1995 03:24:00');
32e509ee18Sopenharmony_ci        var map0 = new Map();
33e509ee18Sopenharmony_ci        var set0 = new Set();
34e509ee18Sopenharmony_ci        let array0 = ['Apple', 'Banana'];
35e509ee18Sopenharmony_ci        function* generator0() {
36e509ee18Sopenharmony_ci            let aa = 0;
37e509ee18Sopenharmony_ci            var a1 = 100;
38e509ee18Sopenharmony_ci            yield 1;
39e509ee18Sopenharmony_ci            yield 2;
40e509ee18Sopenharmony_ci            yield 3;
41e509ee18Sopenharmony_ci        }
42e509ee18Sopenharmony_ci        var regexp0 = /^\d+\.\d+$/i;
43e509ee18Sopenharmony_ci        var arraybuffer0 = new ArrayBuffer(24);
44e509ee18Sopenharmony_ci        var uint8array0 = new Uint8Array(arraybuffer0);
45e509ee18Sopenharmony_ci        const dataview0 = new DataView(arraybuffer0, 0);
46e509ee18Sopenharmony_ci        var bigint0 = BigInt(999n);
47e509ee18Sopenharmony_ci        var typedarray0 = new Uint8Array();
48e509ee18Sopenharmony_ci        var sharedarraybuffer0 = new SharedArrayBuffer(32);
49e509ee18Sopenharmony_ci        var iterator0 = string0[Symbol.iterator];
50e509ee18Sopenharmony_ci        var weakref0 = new WeakRef(obj0);
51e509ee18Sopenharmony_ci
52e509ee18Sopenharmony_ci        var set1 = new Set();
53e509ee18Sopenharmony_ci        set1.add(number0);
54e509ee18Sopenharmony_ci        var set2 = new Set(string0);
55e509ee18Sopenharmony_ci        var set3 = new Set();
56e509ee18Sopenharmony_ci        set3.add(obj0);
57e509ee18Sopenharmony_ci        var set4 = new Set(undefined0);
58e509ee18Sopenharmony_ci        var set5 = new Set(array0);
59e509ee18Sopenharmony_ci        var set6 = new Set();
60e509ee18Sopenharmony_ci        var set7 = new Set();
61e509ee18Sopenharmony_ci        var set8 = new Set();
62e509ee18Sopenharmony_ci        set8.add(generator0);
63e509ee18Sopenharmony_ci        var set9 = new Set();
64e509ee18Sopenharmony_ci        set9.add(regexp0);
65e509ee18Sopenharmony_ci        var set10 = new Set();
66e509ee18Sopenharmony_ci        set10.add(arraybuffer0);
67e509ee18Sopenharmony_ci        var set11 = new Set();
68e509ee18Sopenharmony_ci        set11.add(uint8array0);
69e509ee18Sopenharmony_ci        var set12 = new Set();
70e509ee18Sopenharmony_ci        set12.add(dataview0);
71e509ee18Sopenharmony_ci        var set13 = new Set();
72e509ee18Sopenharmony_ci        set13.add(function0);
73e509ee18Sopenharmony_ci        var set14 = set0;
74e509ee18Sopenharmony_ci        var set15 = new Set();
75e509ee18Sopenharmony_ci        set15.add(0);
76e509ee18Sopenharmony_ci        set15.add("hello");
77e509ee18Sopenharmony_ci        set15.add(obj0);
78e509ee18Sopenharmony_ci        set15.add(number0);
79e509ee18Sopenharmony_ci        var set16 = new Set();
80e509ee18Sopenharmony_ci        set16.add(map0);
81e509ee18Sopenharmony_ci        var set17 = new Set();
82e509ee18Sopenharmony_ci        set17.add(bigint0);
83e509ee18Sopenharmony_ci        var set18 = new Set();
84e509ee18Sopenharmony_ci        set18.add(boolean0);
85e509ee18Sopenharmony_ci        var set19 = new Set(set0);
86e509ee18Sopenharmony_ci
87e509ee18Sopenharmony_ci        var number1 = 65535;
88e509ee18Sopenharmony_ci        var number2 = 5e-324;
89e509ee18Sopenharmony_ci        var number3 = 10 ** 10;
90e509ee18Sopenharmony_ci        var number4 = 0x1ffffffffff;
91e509ee18Sopenharmony_ci        var number5 = 0b11111111111111;
92e509ee18Sopenharmony_ci        var number6 = new Number(bigint0);
93e509ee18Sopenharmony_ci        var number7 = 123e45;
94e509ee18Sopenharmony_ci        var number8 = number0;
95e509ee18Sopenharmony_ci        var number9 = number0 + number1;
96e509ee18Sopenharmony_ci        var number10 = number0 - number1;
97e509ee18Sopenharmony_ci        var number11 = number0 * number1;
98e509ee18Sopenharmony_ci        var number12 = number0 / number1;
99e509ee18Sopenharmony_ci        var number13 = number0 % number1;
100e509ee18Sopenharmony_ci        var number14 = new Number(0);
101e509ee18Sopenharmony_ci        var number15 = new Number(1.7976931348623157e+308);
102e509ee18Sopenharmony_ci        var number16 = new Number(5e-324);
103e509ee18Sopenharmony_ci        var number17 = new Number(10 ** 10);
104e509ee18Sopenharmony_ci        var number18 = new Number(0x1ffffffffff);
105e509ee18Sopenharmony_ci        var number19 = new Number(0b11111111111111);
106e509ee18Sopenharmony_ci        var number20 = new Number(123e45);
107e509ee18Sopenharmony_ci        var number21 = new Number(number0);
108e509ee18Sopenharmony_ci        var number22 = new Number(number0 + number1);
109e509ee18Sopenharmony_ci        var number23 = new Number(number0 - number1);
110e509ee18Sopenharmony_ci        var number24 = new Number(number0 * number1);
111e509ee18Sopenharmony_ci        var number25 = new Number(number0 / number1);
112e509ee18Sopenharmony_ci        var number26 = new Number(number0 % number1);
113e509ee18Sopenharmony_ci        var number27 = 1.7976931348623157e+308;
114e509ee18Sopenharmony_ci
115e509ee18Sopenharmony_ci        var string1 = "";
116e509ee18Sopenharmony_ci        var string2 = string1;
117e509ee18Sopenharmony_ci        var string3 = string1 + 'world';
118e509ee18Sopenharmony_ci        var string4 = 'hello' + 'world';
119e509ee18Sopenharmony_ci        var string5 = string4.charAt(1);
120e509ee18Sopenharmony_ci        var string6 = string1 + number0;
121e509ee18Sopenharmony_ci        var string7 = new String(string1);
122e509ee18Sopenharmony_ci        var string8 = new String(set0);
123e509ee18Sopenharmony_ci        var string9 = new String(number0);
124e509ee18Sopenharmony_ci        var string10 = new String(string0);
125e509ee18Sopenharmony_ci        var string11 = new String(obj0);
126e509ee18Sopenharmony_ci        var string12 = new String(undefined0);
127e509ee18Sopenharmony_ci        var string13 = new String(array0);
128e509ee18Sopenharmony_ci        var string14 = new String(bigint0);
129e509ee18Sopenharmony_ci        var string15 = new String(generator0);
130e509ee18Sopenharmony_ci        var string16 = new String(regexp0);
131e509ee18Sopenharmony_ci        var string17 = new String(arraybuffer0);
132e509ee18Sopenharmony_ci        var string18 = new String(uint8array0);
133e509ee18Sopenharmony_ci        var string19 = new String(dataview0);
134e509ee18Sopenharmony_ci        var string20 = new String(map0);
135e509ee18Sopenharmony_ci        var string21 = new String(function0);
136e509ee18Sopenharmony_ci
137e509ee18Sopenharmony_ci        var bigint1 = BigInt(9007199254740991n);
138e509ee18Sopenharmony_ci        var bigint2 = BigInt(9007199254740991);
139e509ee18Sopenharmony_ci        var bigint3 = BigInt("9007199254740991");
140e509ee18Sopenharmony_ci        var bigint4 = BigInt("0x1fffffffffffff");
141e509ee18Sopenharmony_ci        var bigint5 = BigInt(0x1fffffffffffff);
142e509ee18Sopenharmony_ci        var bigint6 = BigInt("0b11111111111111111111111111111111111111111111111111111");
143e509ee18Sopenharmony_ci        var bigint7 = bigint0;
144e509ee18Sopenharmony_ci        var bigint8 = bigint0 + bigint1;
145e509ee18Sopenharmony_ci        var bigint9 = bigint0 - bigint1;
146e509ee18Sopenharmony_ci        var bigint10 = bigint0 * bigint1;
147e509ee18Sopenharmony_ci        var bigint11 = bigint0 / bigint1;
148e509ee18Sopenharmony_ci        var bigint12 = bigint0 % bigint1;
149e509ee18Sopenharmony_ci        var bigint13 = 10n ** 10n;
150e509ee18Sopenharmony_ci        var bigint14 = 888888888888888888888888888888888888888888888n;
151e509ee18Sopenharmony_ci        var bigint15 = BigInt(0b11111111111111);
152e509ee18Sopenharmony_ci        var bigint16 = BigInt(0);
153e509ee18Sopenharmony_ci        var bigint17 = 0n;
154e509ee18Sopenharmony_ci        var bigint18 = BigInt(123e45);
155e509ee18Sopenharmony_ci        var bigint19 = BigInt("01234567");
156e509ee18Sopenharmony_ci        var bigint20 = BigInt(number1);
157e509ee18Sopenharmony_ci
158e509ee18Sopenharmony_ci        var boolean1 = new Boolean(1);
159e509ee18Sopenharmony_ci        var boolean2 = new Boolean(-1);
160e509ee18Sopenharmony_ci        var boolean3 = new Boolean(true);
161e509ee18Sopenharmony_ci        var boolean4 = new Boolean(false);
162e509ee18Sopenharmony_ci        var boolean5 = new Boolean(boolean0 + boolean1);
163e509ee18Sopenharmony_ci        var boolean6 = new Boolean(boolean0 && boolean1);
164e509ee18Sopenharmony_ci        var boolean7 = new Boolean(boolean0 || boolean1);
165e509ee18Sopenharmony_ci        var boolean8 = new Boolean(!boolean0);
166e509ee18Sopenharmony_ci        var boolean9 = true;
167e509ee18Sopenharmony_ci        var boolean10 = false;
168e509ee18Sopenharmony_ci        var boolean11 = boolean0;
169e509ee18Sopenharmony_ci        var boolean12 = boolean0 && boolean10;
170e509ee18Sopenharmony_ci        var boolean13 = boolean0 || boolean10;
171e509ee18Sopenharmony_ci        var boolean14 = !boolean10;
172e509ee18Sopenharmony_ci        var boolean15 = new Boolean("hello");
173e509ee18Sopenharmony_ci        var boolean16 = new Boolean("");
174e509ee18Sopenharmony_ci        var boolean17 = new Boolean(function0);
175e509ee18Sopenharmony_ci        var boolean18 = new Boolean(map0);
176e509ee18Sopenharmony_ci        var boolean19 = new Boolean(set0);
177e509ee18Sopenharmony_ci        var boolean20 = new Boolean(number0);
178e509ee18Sopenharmony_ci        var boolean21 = new Boolean(string0);
179e509ee18Sopenharmony_ci        var boolean22 = new Boolean(obj0);
180e509ee18Sopenharmony_ci        var boolean23 = new Boolean(undefined0);
181e509ee18Sopenharmony_ci        var boolean24 = new Boolean(array0);
182e509ee18Sopenharmony_ci        var boolean25 = new Boolean(generator0);
183e509ee18Sopenharmony_ci        var boolean26 = new Boolean(regexp0);
184e509ee18Sopenharmony_ci        var boolean27 = new Boolean(arraybuffer0);
185e509ee18Sopenharmony_ci        var boolean28 = new Boolean(uint8array0);
186e509ee18Sopenharmony_ci        var boolean29 = new Boolean(dataview0);
187e509ee18Sopenharmony_ci
188e509ee18Sopenharmony_ci        var map1 = new Map(map0);
189e509ee18Sopenharmony_ci        var map2 = new Map([
190e509ee18Sopenharmony_ci            [1, 'hello'],
191e509ee18Sopenharmony_ci            [2, 'world']
192e509ee18Sopenharmony_ci        ]);
193e509ee18Sopenharmony_ci        var map3 = new Map();
194e509ee18Sopenharmony_ci        map3.set(NaN, 'NaN');
195e509ee18Sopenharmony_ci        var map4 = new Map();
196e509ee18Sopenharmony_ci        map4[0] = 'hello';
197e509ee18Sopenharmony_ci        var map5 = new Map();
198e509ee18Sopenharmony_ci        map5.set(0, 'zero');
199e509ee18Sopenharmony_ci        map5.set(1, 'one');
200e509ee18Sopenharmony_ci        map5.set(2, 'two');
201e509ee18Sopenharmony_ci        map5.set(3, 'three');
202e509ee18Sopenharmony_ci        var map6 = new Map();
203e509ee18Sopenharmony_ci        map6.set(set0, "set0");
204e509ee18Sopenharmony_ci        var map7 = new Map();
205e509ee18Sopenharmony_ci        map7.set(number0, "number0");
206e509ee18Sopenharmony_ci        var map8 = new Map();
207e509ee18Sopenharmony_ci        map8.set(string0, "string0");
208e509ee18Sopenharmony_ci        var map9 = new Map();
209e509ee18Sopenharmony_ci        map9.set(obj0, "object0");
210e509ee18Sopenharmony_ci        var map10 = new Map();
211e509ee18Sopenharmony_ci        map10.set(undefined0, "undefined0");
212e509ee18Sopenharmony_ci        var map11 = new Map();
213e509ee18Sopenharmony_ci        map11.set(array0, "array0");
214e509ee18Sopenharmony_ci        var map12 = new Map();
215e509ee18Sopenharmony_ci        map12.set(map3, "map3");
216e509ee18Sopenharmony_ci        var map13 = new Map();
217e509ee18Sopenharmony_ci        map13.set(generator0, "generator0");
218e509ee18Sopenharmony_ci        var map14 = new Map();
219e509ee18Sopenharmony_ci        map14.set(regexp0, "regexp0");
220e509ee18Sopenharmony_ci        var map15 = new Map();
221e509ee18Sopenharmony_ci        map15.set(arraybuffer0, "arraybuffer0");
222e509ee18Sopenharmony_ci        var map16 = new Map();
223e509ee18Sopenharmony_ci        map16.set(uint8array0, "uint8array0");
224e509ee18Sopenharmony_ci        var map17 = new Map();
225e509ee18Sopenharmony_ci        map17.set(dataview0, "dataview0");
226e509ee18Sopenharmony_ci        var map18 = new Map();
227e509ee18Sopenharmony_ci        map18.set(bigint10, "bigint10");
228e509ee18Sopenharmony_ci        var map19 = new Map();
229e509ee18Sopenharmony_ci        map19.set(function0, "function0");
230e509ee18Sopenharmony_ci
231e509ee18Sopenharmony_ci        var object1 = { 0: 'zero', 1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five' };
232e509ee18Sopenharmony_ci        var object2 = object1;
233e509ee18Sopenharmony_ci        var object3 = new Object({ 0: 'zero', 1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five' });
234e509ee18Sopenharmony_ci        var object4 = new Object(set0);
235e509ee18Sopenharmony_ci        var object5 = new Object(string0);
236e509ee18Sopenharmony_ci        var object6 = new Object(map0);
237e509ee18Sopenharmony_ci        var object7 = new Object(number0);
238e509ee18Sopenharmony_ci        var object8 = new Object(obj0);
239e509ee18Sopenharmony_ci        var object9 = new Object(undefined0);
240e509ee18Sopenharmony_ci        var object10 = new Object(array0);
241e509ee18Sopenharmony_ci        var object11 = new Object(bigint10);
242e509ee18Sopenharmony_ci        var object12 = new Object(generator0);
243e509ee18Sopenharmony_ci        var object13 = new Object(regexp0);
244e509ee18Sopenharmony_ci        var object14 = new Object(bigint0);
245e509ee18Sopenharmony_ci        var object15 = new Object(arraybuffer0);
246e509ee18Sopenharmony_ci        var object16 = new Object(uint8array0);
247e509ee18Sopenharmony_ci        var object17 = new Object(dataview0);
248e509ee18Sopenharmony_ci        var object18 = new Object(boolean10);
249e509ee18Sopenharmony_ci        var object19 = new Object(function0);
250e509ee18Sopenharmony_ci
251e509ee18Sopenharmony_ci        var regExp1 = /^a/g;
252e509ee18Sopenharmony_ci        var regExp2 = new RegExp('^ab+c', 'g');
253e509ee18Sopenharmony_ci        var regExp3 = /123$/;
254e509ee18Sopenharmony_ci        var regExp4 = /\d/i;
255e509ee18Sopenharmony_ci        var regExp5 = new RegExp('^[a-zA-Z]/w{5,17}$', 'iu');
256e509ee18Sopenharmony_ci        var regExp6 = /[A-Z]/m;
257e509ee18Sopenharmony_ci        var regExp7 = new RegExp('(/d{3}-|/d{4}-)?(/d{8}|/d{7})?', 'mg');
258e509ee18Sopenharmony_ci        var regExp8 = /[a-z]/y;
259e509ee18Sopenharmony_ci        var regExp9 = /\s/u;
260e509ee18Sopenharmony_ci        var regExp10 = /a+/s;
261e509ee18Sopenharmony_ci        var regExp11 = new RegExp('(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?', 's');
262e509ee18Sopenharmony_ci        var regExp12 = /a?/gy;
263e509ee18Sopenharmony_ci        var regExp13 = new RegExp('/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/');
264e509ee18Sopenharmony_ci        var regExp14 = /a*/igmy;
265e509ee18Sopenharmony_ci        var regExp15 = new RegExp('^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$', 'ig');
266e509ee18Sopenharmony_ci        var regExp16 = /a|b/iymsg;
267e509ee18Sopenharmony_ci        var regExp17 = new RegExp('^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$');
268e509ee18Sopenharmony_ci        var regExp18 = /\/<(.*)>.*<\/\/\/1>|<(.*) \/\/>/i;
269e509ee18Sopenharmony_ci        var regExp19 = new RegExp('^[1-9]*[1-9][0-9]*$', 'm');
270e509ee18Sopenharmony_ci        var regExp20 = /^[a-zA-Z]\/w{5,17}$/;
271e509ee18Sopenharmony_ci        var regExp21 = new RegExp('^[0-9a-zA-Z_]{1,}$', 'u');
272e509ee18Sopenharmony_ci
273e509ee18Sopenharmony_ci        var target = {
274e509ee18Sopenharmony_ci            name: "openharmony",
275e509ee18Sopenharmony_ci            age: 3
276e509ee18Sopenharmony_ci        };
277e509ee18Sopenharmony_ci        var handler = {
278e509ee18Sopenharmony_ci            get(target, key) {
279e509ee18Sopenharmony_ci                let result = target[key];
280e509ee18Sopenharmony_ci                if (key === "age") result += "岁";
281e509ee18Sopenharmony_ci                return result;
282e509ee18Sopenharmony_ci            },
283e509ee18Sopenharmony_ci            set(target, key, value) {
284e509ee18Sopenharmony_ci                if (key === "age" && typeof value !== "number") {
285e509ee18Sopenharmony_ci                    throw Error("age字段必须为Number类型");
286e509ee18Sopenharmony_ci                }
287e509ee18Sopenharmony_ci                return Reflect.set(target, key, value);
288e509ee18Sopenharmony_ci            }
289e509ee18Sopenharmony_ci        };
290e509ee18Sopenharmony_ci        var { proxy, revoke } = Proxy.revocable(target, handler);
291e509ee18Sopenharmony_ci        var proxy1 = new Proxy(target, handler);
292e509ee18Sopenharmony_ci        var proxy2 = Proxy.revocable(target, handler);
293e509ee18Sopenharmony_ci
294e509ee18Sopenharmony_ci        revoke();
295e509ee18Sopenharmony_ci        proxy2.revoke();
296e509ee18Sopenharmony_ci
297e509ee18Sopenharmony_ci        var promiseFulfilled = new Promise((resolve, reject) => {
298e509ee18Sopenharmony_ci            let result = {
299e509ee18Sopenharmony_ci                flag: true
300e509ee18Sopenharmony_ci            }
301e509ee18Sopenharmony_ci            if (result.flag == true) {
302e509ee18Sopenharmony_ci                resolve(result);
303e509ee18Sopenharmony_ci            } else {
304e509ee18Sopenharmony_ci                reject(new Error("The promise is rejected"));
305e509ee18Sopenharmony_ci            }
306e509ee18Sopenharmony_ci        });
307e509ee18Sopenharmony_ci        var string22 = "\uD83D";
308e509ee18Sopenharmony_ci        var string23 = string22 + "\uDE42";
309e509ee18Sopenharmony_ci        var string24 = "\u{1F468}";
310e509ee18Sopenharmony_ci        var string25 = string24 + "\u200D\u{1F468}\u200D\u{1F467}\u200D\u{1F466}\u200D";
311e509ee18Sopenharmony_ci        print(string22);
312e509ee18Sopenharmony_ci        print(string23);
313e509ee18Sopenharmony_ci        print(string24);
314e509ee18Sopenharmony_ci        print(string25);
315e509ee18Sopenharmony_ci
316e509ee18Sopenharmony_ci        function resolveHandler(result) {
317e509ee18Sopenharmony_ci            let a = promiseFulfilled;
318e509ee18Sopenharmony_ci            print("promise is fulfilled with result.flag " + result.flag);
319e509ee18Sopenharmony_ci        }
320e509ee18Sopenharmony_ci
321e509ee18Sopenharmony_ci        function rejectHandler(error) {
322e509ee18Sopenharmony_ci            print(error.message);
323e509ee18Sopenharmony_ci        }
324e509ee18Sopenharmony_ci
325e509ee18Sopenharmony_ci        promiseFulfilled.then(result => resolveHandler(result)).catch(error => rejectHandler(error));
326e509ee18Sopenharmony_ci
327e509ee18Sopenharmony_ci        var nop = undefined;
328e509ee18Sopenharmony_ci    }
329e509ee18Sopenharmony_ci}
330e509ee18Sopenharmony_ci
331e509ee18Sopenharmony_cio.foo();