smesh_lol_web_common_helpers.mjs raw
1 // Package smesh.lol/web/common/helpers
2 // Generated by MoxieJS — Moxie JavaScript backend
3
4 import * as $rt from './$runtime/index.mjs';
5
6 // Package-level variables
7 export let b64encode = { $value: null, $get() { return this.$value; }, $set(v) { this.$value = v; } };
8 export let bech32Charset = { $value: null, $get() { return this.$value; }, $set(v) { this.$value = v; } };
9 export let hexChars = { $value: null, $get() { return this.$value; }, $set(v) { this.$value = v; } };
10
11 $rt.types.registerType('smesh.lol/web/common/helpers.Nevent', {
12 id: 'smesh.lol/web/common/helpers.Nevent',
13 kind: 'struct',
14 methods: new Map(),
15 fields: [
16 { name: 'ID', type: '[]byte', tag: '', embedded: false },
17 { name: 'Relays', type: '[][]byte', tag: '', embedded: false },
18 { name: 'Author', type: '[]byte', tag: '', embedded: false },
19 ],
20 zero: () => ({ ID: null, Relays: null, Author: null }),
21 });
22 $rt.types.registerType('smesh.lol/web/common/helpers.Nprofile', {
23 id: 'smesh.lol/web/common/helpers.Nprofile',
24 kind: 'struct',
25 methods: new Map(),
26 fields: [
27 { name: 'Pubkey', type: '[]byte', tag: '', embedded: false },
28 { name: 'Relays', type: '[][]byte', tag: '', embedded: false },
29 ],
30 zero: () => ({ Pubkey: null, Relays: null }),
31 });
32 export function init() {
33 let $t0_1, $t1_2, $t2_3;
34 $t0_1 = $rt.builtin.stringToBytes('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/');
35 b64encode.$set($t0_1);
36 $t1_2 = $rt.builtin.stringToBytes('qpzry9x8gf2tvdw0s3jn54khce6mua7l');
37 bech32Charset.$set($t1_2);
38 $t2_3 = $rt.builtin.stringToBytes('0123456789abcdef');
39 hexChars.$set($t2_3);
40 return;
41 }
42
43 export function Base64Encode(data) {
44 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43, $t43_44, $t44_45, $t45_46, $t46_47, $t47_48, $t48_49, $t49_50, $t50_51, $t51_52, $t52_53, $t53_54, $t54_55, $t55_56, $t56_57, $t57_58, $t58_59, $t59_60, $t60_61, $t61_62, $t62_63, $t63_64, $t64_65, $t65_66, $t66_67, $t67_68, $t68_69, $t69_70, $t70_71, $t71_72, $t72_73, $t73_74, $t74_75, $t75_76;
45 let $block = 0;
46 while (true) {
47 switch ($block) {
48 case 0: {
49 $t0_1 = $rt.builtin.len(data);
50 $t1_2 = ($t0_1 + 2);
51 $t2_3 = Math.trunc($t1_2 / 3);
52 $t3_4 = ($t2_3 * 4);
53 $t4_5 = $rt.builtin.makeSlice(0, $t3_4, 0);
54 $t5_6 = $t4_5;
55 $t6_7 = 0;
56 $block = 1; break;
57 break;
58 }
59 case 1: {
60 $t7_8 = ($t6_7 < $t0_1);
61 if ($t7_8) {
62 $block = 2; break;
63 }
64 else {
65 $block = 3; break;
66 }
67 break;
68 }
69 case 2: {
70 $t8_9 = data.addr($t6_7);
71 $t9_10 = $t8_9.$get();
72 $t10_11 = ($t6_7 + 1);
73 $t11_12 = ($t10_11 < $t0_1);
74 if ($t11_12) {
75 $block = 4; break;
76 }
77 else {
78 $t15_16 = 0;
79 $block = 5; break;
80 }
81 break;
82 }
83 case 3: {
84 return $t5_6;
85 break;
86 }
87 case 4: {
88 $t12_13 = ($t6_7 + 1);
89 $t13_14 = data.addr($t12_13);
90 $t14_15 = $t13_14.$get();
91 $t15_16 = $t14_15;
92 $block = 5; break;
93 break;
94 }
95 case 5: {
96 $t16_17 = ($t6_7 + 2);
97 $t17_18 = ($t16_17 < $t0_1);
98 if ($t17_18) {
99 $block = 6; break;
100 }
101 else {
102 $t21_22 = 0;
103 $block = 7; break;
104 }
105 break;
106 }
107 case 6: {
108 $t18_19 = ($t6_7 + 2);
109 $t19_20 = data.addr($t18_19);
110 $t20_21 = $t19_20.$get();
111 $t21_22 = $t20_21;
112 $block = 7; break;
113 break;
114 }
115 case 7: {
116 $t22_23 = b64encode.$get();
117 $t23_24 = (($t9_10 & 0xFF) >> 2);
118 $t24_25 = ($t23_24 & 63);
119 $t25_26 = $t22_23.addr($t24_25);
120 $t26_27 = $t25_26.$get();
121 $t27_28 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
122 $t28_29 = $t27_28.$get().addr(0);
123 $t28_29.$set($t26_27);
124 $t29_30 = $rt.builtin.sliceSlice($t27_28.$get(), undefined, undefined, undefined);
125 $t30_31 = $rt.builtin.appendSlice($t5_6, $t29_30);
126 $t31_32 = b64encode.$get();
127 $t32_33 = (($t9_10 << 4) & 0xFF);
128 $t33_34 = (($t15_16 & 0xFF) >> 4);
129 $t34_35 = (($t32_33 + $t33_34) & 0xFF);
130 $t35_36 = ($t34_35 & 63);
131 $t36_37 = $t31_32.addr($t35_36);
132 $t37_38 = $t36_37.$get();
133 $t38_39 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
134 $t39_40 = $t38_39.$get().addr(0);
135 $t39_40.$set($t37_38);
136 $t40_41 = $rt.builtin.sliceSlice($t38_39.$get(), undefined, undefined, undefined);
137 $t41_42 = $rt.builtin.appendSlice($t30_31, $t40_41);
138 $t42_43 = ($t6_7 + 1);
139 $t43_44 = ($t42_43 < $t0_1);
140 if ($t43_44) {
141 $block = 8; break;
142 }
143 else {
144 $block = 10; break;
145 }
146 break;
147 }
148 case 8: {
149 $t44_45 = b64encode.$get();
150 $t45_46 = (($t15_16 << 2) & 0xFF);
151 $t46_47 = (($t21_22 & 0xFF) >> 6);
152 $t47_48 = (($t45_46 + $t46_47) & 0xFF);
153 $t48_49 = ($t47_48 & 63);
154 $t49_50 = $t44_45.addr($t48_49);
155 $t50_51 = $t49_50.$get();
156 $t51_52 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
157 $t52_53 = $t51_52.$get().addr(0);
158 $t52_53.$set($t50_51);
159 $t53_54 = $rt.builtin.sliceSlice($t51_52.$get(), undefined, undefined, undefined);
160 $t54_55 = $rt.builtin.appendSlice($t41_42, $t53_54);
161 $t55_56 = $t54_55;
162 $block = 9; break;
163 break;
164 }
165 case 9: {
166 $t56_57 = ($t6_7 + 2);
167 $t57_58 = ($t56_57 < $t0_1);
168 if ($t57_58) {
169 $block = 11; break;
170 }
171 else {
172 $block = 13; break;
173 }
174 break;
175 }
176 case 10: {
177 $t58_59 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
178 $t59_60 = $t58_59.$get().addr(0);
179 $t59_60.$set(61);
180 $t60_61 = $rt.builtin.sliceSlice($t58_59.$get(), undefined, undefined, undefined);
181 $t61_62 = $rt.builtin.appendSlice($t41_42, $t60_61);
182 $t55_56 = $t61_62;
183 $block = 9; break;
184 break;
185 }
186 case 11: {
187 $t62_63 = b64encode.$get();
188 $t63_64 = ($t21_22 & 63);
189 $t64_65 = $t62_63.addr($t63_64);
190 $t65_66 = $t64_65.$get();
191 $t66_67 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
192 $t67_68 = $t66_67.$get().addr(0);
193 $t67_68.$set($t65_66);
194 $t68_69 = $rt.builtin.sliceSlice($t66_67.$get(), undefined, undefined, undefined);
195 $t69_70 = $rt.builtin.appendSlice($t55_56, $t68_69);
196 $t70_71 = $t69_70;
197 $block = 12; break;
198 break;
199 }
200 case 12: {
201 $t71_72 = ($t6_7 + 3);
202 $t5_6 = $t70_71;
203 $t6_7 = $t71_72;
204 $block = 1; break;
205 break;
206 }
207 case 13: {
208 $t72_73 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
209 $t73_74 = $t72_73.$get().addr(0);
210 $t73_74.$set(61);
211 $t74_75 = $rt.builtin.sliceSlice($t72_73.$get(), undefined, undefined, undefined);
212 $t75_76 = $rt.builtin.appendSlice($t55_56, $t74_75);
213 $t70_71 = $t75_76;
214 $block = 12; break;
215 break;
216 }
217 }
218 }
219 }
220
221 export function Base64Decode(s) {
222 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38;
223 let $block = 0;
224 while (true) {
225 switch ($block) {
226 case 0: {
227 $t0_1 = $rt.builtin.len(s);
228 $t6_7 = $t0_1;
229 $t7_8 = 0;
230 $block = 3; break;
231 break;
232 }
233 case 1: {
234 $t1_2 = ($t7_8 + 1);
235 $t2_3 = ($t6_7 - 1);
236 $t6_7 = $t2_3;
237 $t7_8 = $t1_2;
238 $block = 3; break;
239 break;
240 }
241 case 2: {
242 $t3_4 = ($t6_7 * 3);
243 $t4_5 = Math.trunc($t3_4 / 4);
244 $t5_6 = $rt.builtin.makeSlice(0, $t4_5, 0);
245 $t13_14 = $t5_6;
246 $t14_15 = 0;
247 $t15_16 = 0;
248 $t16_17 = 0;
249 $block = 5; break;
250 break;
251 }
252 case 3: {
253 $t8_9 = ($t6_7 > 0);
254 if ($t8_9) {
255 $block = 4; break;
256 }
257 else {
258 $block = 2; break;
259 }
260 break;
261 }
262 case 4: {
263 $t9_10 = ($t6_7 - 1);
264 $t10_11 = s.addr($t9_10);
265 $t11_12 = $t10_11.$get();
266 $t12_13 = ($t11_12 === 61);
267 if ($t12_13) {
268 $block = 1; break;
269 }
270 else {
271 $block = 2; break;
272 }
273 break;
274 }
275 case 5: {
276 $t17_18 = ($t16_17 < $t6_7);
277 if ($t17_18) {
278 $block = 6; break;
279 }
280 else {
281 $block = 7; break;
282 }
283 break;
284 }
285 case 6: {
286 $t18_19 = s.addr($t16_17);
287 $t19_20 = $t18_19.$get();
288 $t20_21 = b64val($t19_20);
289 $t21_22 = ($t20_21 < 0);
290 if ($t21_22) {
291 $block = 8; break;
292 }
293 else {
294 $block = 9; break;
295 }
296 break;
297 }
298 case 7: {
299 return $t13_14;
300 break;
301 }
302 case 8: {
303 return null;
304 break;
305 }
306 case 9: {
307 $t22_23 = (($t14_15 << 6) >>> 0);
308 $t23_24 = ($t20_21 >>> 0);
309 $t24_25 = (($t22_23 + $t23_24) >>> 0);
310 $t25_26 = ($t15_16 + 6);
311 $t26_27 = ($t25_26 >= 8);
312 if ($t26_27) {
313 $block = 10; break;
314 }
315 else {
316 $t35_36 = $t13_14;
317 $t36_37 = $t25_26;
318 $block = 11; break;
319 }
320 break;
321 }
322 case 10: {
323 $t27_28 = ($t25_26 - 8);
324 $t28_29 = $t27_28;
325 $t29_30 = ($t24_25 >>> $t28_29);
326 $t30_31 = ($t29_30 & 0xFF);
327 $t31_32 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
328 $t32_33 = $t31_32.$get().addr(0);
329 $t32_33.$set($t30_31);
330 $t33_34 = $rt.builtin.sliceSlice($t31_32.$get(), undefined, undefined, undefined);
331 $t34_35 = $rt.builtin.appendSlice($t13_14, $t33_34);
332 $t35_36 = $t34_35;
333 $t36_37 = $t27_28;
334 $block = 11; break;
335 break;
336 }
337 case 11: {
338 $t37_38 = ($t16_17 + 1);
339 $t13_14 = $t35_36;
340 $t14_15 = $t24_25;
341 $t15_16 = $t36_37;
342 $t16_17 = $t37_38;
343 $block = 5; break;
344 break;
345 }
346 }
347 }
348 }
349
350 export function b64val(c) {
351 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16;
352 let $block = 0;
353 while (true) {
354 switch ($block) {
355 case 0: {
356 $t0_1 = (c >= 65);
357 if ($t0_1) {
358 $block = 4; break;
359 }
360 else {
361 $block = 3; break;
362 }
363 break;
364 }
365 case 1: {
366 $t1_2 = ((c - 65) & 0xFF);
367 $t2_3 = $t1_2;
368 return $t2_3;
369 break;
370 }
371 case 2: {
372 $t3_4 = ((c - 97) & 0xFF);
373 $t4_5 = $t3_4;
374 $t5_6 = ($t4_5 + 26);
375 return $t5_6;
376 break;
377 }
378 case 3: {
379 $t6_7 = (c >= 97);
380 if ($t6_7) {
381 $block = 7; break;
382 }
383 else {
384 $block = 6; break;
385 }
386 break;
387 }
388 case 4: {
389 $t7_8 = (c <= 90);
390 if ($t7_8) {
391 $block = 1; break;
392 }
393 else {
394 $block = 3; break;
395 }
396 break;
397 }
398 case 5: {
399 $t8_9 = ((c - 48) & 0xFF);
400 $t9_10 = $t8_9;
401 $t10_11 = ($t9_10 + 52);
402 return $t10_11;
403 break;
404 }
405 case 6: {
406 $t11_12 = (c >= 48);
407 if ($t11_12) {
408 $block = 10; break;
409 }
410 else {
411 $block = 9; break;
412 }
413 break;
414 }
415 case 7: {
416 $t12_13 = (c <= 122);
417 if ($t12_13) {
418 $block = 2; break;
419 }
420 else {
421 $block = 6; break;
422 }
423 break;
424 }
425 case 8: {
426 return 62;
427 break;
428 }
429 case 9: {
430 $t13_14 = (c === 43);
431 if ($t13_14) {
432 $block = 8; break;
433 }
434 else {
435 $block = 12; break;
436 }
437 break;
438 }
439 case 10: {
440 $t14_15 = (c <= 57);
441 if ($t14_15) {
442 $block = 5; break;
443 }
444 else {
445 $block = 9; break;
446 }
447 break;
448 }
449 case 11: {
450 return 63;
451 break;
452 }
453 case 12: {
454 $t15_16 = (c === 47);
455 if ($t15_16) {
456 $block = 11; break;
457 }
458 else {
459 $block = 13; break;
460 }
461 break;
462 }
463 case 13: {
464 return -1;
465 break;
466 }
467 }
468 }
469 }
470
471 export function Bech32Encode(hrp, data) {
472 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27;
473 let $block = 0;
474 while (true) {
475 switch ($block) {
476 case 0: {
477 $t0_1 = bytesToBase32(data);
478 $t1_2 = bech32Checksum(hrp, $t0_1);
479 $t2_3 = $rt.builtin.appendSlice($t0_1, $t1_2);
480 $t3_4 = $rt.builtin.len(hrp);
481 $t4_5 = ($t3_4 + 1);
482 $t5_6 = $rt.builtin.len($t2_3);
483 $t6_7 = ($t4_5 + $t5_6);
484 $t7_8 = $rt.builtin.makeSlice(0, $t6_7, 0);
485 $t8_9 = $rt.builtin.appendSlice($t7_8, hrp);
486 $t9_10 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
487 $t10_11 = $t9_10.$get().addr(0);
488 $t10_11.$set(49);
489 $t11_12 = $rt.builtin.sliceSlice($t9_10.$get(), undefined, undefined, undefined);
490 $t12_13 = $rt.builtin.appendSlice($t8_9, $t11_12);
491 $t13_14 = $rt.builtin.len($t2_3);
492 $t14_15 = $t12_13;
493 $t15_16 = -1;
494 $block = 1; break;
495 break;
496 }
497 case 1: {
498 $t16_17 = ($t15_16 + 1);
499 $t17_18 = ($t16_17 < $t13_14);
500 if ($t17_18) {
501 $block = 2; break;
502 }
503 else {
504 $block = 3; break;
505 }
506 break;
507 }
508 case 2: {
509 $t18_19 = $t2_3.addr($t16_17);
510 $t19_20 = $t18_19.$get();
511 $t20_21 = bech32Charset.$get();
512 $t21_22 = $t20_21.addr($t19_20);
513 $t22_23 = $t21_22.$get();
514 $t23_24 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
515 $t24_25 = $t23_24.$get().addr(0);
516 $t24_25.$set($t22_23);
517 $t25_26 = $rt.builtin.sliceSlice($t23_24.$get(), undefined, undefined, undefined);
518 $t26_27 = $rt.builtin.appendSlice($t14_15, $t25_26);
519 $t14_15 = $t26_27;
520 $t15_16 = $t16_17;
521 $block = 1; break;
522 break;
523 }
524 case 3: {
525 return $t14_15;
526 break;
527 }
528 }
529 }
530 }
531
532 export function Bech32Decode(s) {
533 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36;
534 let $block = 0;
535 while (true) {
536 switch ($block) {
537 case 0: {
538 $t0_1 = $rt.builtin.len(s);
539 $t1_2 = ($t0_1 - 1);
540 $t2_3 = $t1_2;
541 $block = 1; break;
542 break;
543 }
544 case 1: {
545 $t3_4 = ($t2_3 >= 0);
546 if ($t3_4) {
547 $block = 2; break;
548 }
549 else {
550 $t7_8 = -1;
551 $block = 3; break;
552 }
553 break;
554 }
555 case 2: {
556 $t4_5 = s.addr($t2_3);
557 $t5_6 = $t4_5.$get();
558 $t6_7 = ($t5_6 === 49);
559 if ($t6_7) {
560 $block = 4; break;
561 }
562 else {
563 $block = 5; break;
564 }
565 break;
566 }
567 case 3: {
568 $t8_9 = ($t7_8 < 1);
569 if ($t8_9) {
570 $block = 6; break;
571 }
572 else {
573 $block = 8; break;
574 }
575 break;
576 }
577 case 4: {
578 $t7_8 = $t2_3;
579 $block = 3; break;
580 break;
581 }
582 case 5: {
583 $t9_10 = ($t2_3 - 1);
584 $t2_3 = $t9_10;
585 $block = 1; break;
586 break;
587 }
588 case 6: {
589 $t10_11 = $rt.builtin.stringToBytes('');
590 return [$t10_11, null];
591 break;
592 }
593 case 7: {
594 $t11_12 = $rt.builtin.sliceSlice(s, undefined, $t7_8, undefined);
595 $t12_13 = ($t7_8 + 1);
596 $t13_14 = $rt.builtin.sliceSlice(s, $t12_13, undefined, undefined);
597 $t14_15 = $rt.builtin.len($t13_14);
598 $t15_16 = $rt.builtin.makeSlice($t14_15, $t14_15, 0);
599 $t19_20 = 0;
600 $block = 9; break;
601 break;
602 }
603 case 8: {
604 $t16_17 = ($t7_8 + 7);
605 $t17_18 = $rt.builtin.len(s);
606 $t18_19 = ($t16_17 > $t17_18);
607 if ($t18_19) {
608 $block = 6; break;
609 }
610 else {
611 $block = 7; break;
612 }
613 break;
614 }
615 case 9: {
616 $t20_21 = $rt.builtin.len($t13_14);
617 $t21_22 = ($t19_20 < $t20_21);
618 if ($t21_22) {
619 $block = 10; break;
620 }
621 else {
622 $block = 11; break;
623 }
624 break;
625 }
626 case 10: {
627 $t22_23 = $t13_14.addr($t19_20);
628 $t23_24 = $t22_23.$get();
629 $t24_25 = charsetIndex($t23_24);
630 $t25_26 = ($t24_25 < 0);
631 if ($t25_26) {
632 $block = 12; break;
633 }
634 else {
635 $block = 13; break;
636 }
637 break;
638 }
639 case 11: {
640 $t26_27 = bech32Verify($t11_12, $t15_16);
641 if ($t26_27) {
642 $block = 15; break;
643 }
644 else {
645 $block = 14; break;
646 }
647 break;
648 }
649 case 12: {
650 $t27_28 = $rt.builtin.stringToBytes('');
651 return [$t27_28, null];
652 break;
653 }
654 case 13: {
655 $t28_29 = ($t24_25 & 0xFF);
656 $t29_30 = $t15_16.addr($t19_20);
657 $t29_30.$set($t28_29);
658 $t30_31 = ($t19_20 + 1);
659 $t19_20 = $t30_31;
660 $block = 9; break;
661 break;
662 }
663 case 14: {
664 $t31_32 = $rt.builtin.stringToBytes('');
665 return [$t31_32, null];
666 break;
667 }
668 case 15: {
669 $t32_33 = $rt.builtin.len($t15_16);
670 $t33_34 = ($t32_33 - 6);
671 $t34_35 = $rt.builtin.sliceSlice($t15_16, undefined, $t33_34, undefined);
672 $t35_36 = base32ToBytes($t34_35);
673 return [$t11_12, $t35_36];
674 break;
675 }
676 }
677 }
678 }
679
680 export function EncodeNpub(pubkey) {
681 let $t0_1, $t1_2;
682 $t0_1 = $rt.builtin.stringToBytes('npub');
683 $t1_2 = Bech32Encode($t0_1, pubkey);
684 return $t1_2;
685 }
686
687 export function EncodeNsec(seckey) {
688 let $t0_1, $t1_2;
689 $t0_1 = $rt.builtin.stringToBytes('nsec');
690 $t1_2 = Bech32Encode($t0_1, seckey);
691 return $t1_2;
692 }
693
694 export function EncodeNote(eventID) {
695 let $t0_1, $t1_2;
696 $t0_1 = $rt.builtin.stringToBytes('note');
697 $t1_2 = Bech32Encode($t0_1, eventID);
698 return $t1_2;
699 }
700
701 export function EncodeNevent(id, relays, author) {
702 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39;
703 let $block = 0;
704 while (true) {
705 switch ($block) {
706 case 0: {
707 $t0_1 = HexDecode(id);
708 $t1_2 = $rt.builtin.len($t0_1);
709 $t2_3 = ($t1_2 === 32);
710 if ($t2_3) {
711 $block = 1; break;
712 }
713 else {
714 $t9_10 = null;
715 $block = 2; break;
716 }
717 break;
718 }
719 case 1: {
720 $t3_4 = { $value: $rt.builtin.makeSlice(2, 2, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
721 $t4_5 = $t3_4.$get().addr(0);
722 $t4_5.$set(0);
723 $t5_6 = $t3_4.$get().addr(1);
724 $t5_6.$set(32);
725 $t6_7 = $rt.builtin.sliceSlice($t3_4.$get(), undefined, undefined, undefined);
726 $t7_8 = $rt.builtin.appendSlice(null, $t6_7);
727 $t8_9 = $rt.builtin.appendSlice($t7_8, $t0_1);
728 $t9_10 = $t8_9;
729 $block = 2; break;
730 break;
731 }
732 case 2: {
733 $t10_11 = $rt.builtin.len(relays);
734 $t11_12 = $t9_10;
735 $t12_13 = -1;
736 $block = 3; break;
737 break;
738 }
739 case 3: {
740 $t13_14 = ($t12_13 + 1);
741 $t14_15 = ($t13_14 < $t10_11);
742 if ($t14_15) {
743 $block = 4; break;
744 }
745 else {
746 $block = 5; break;
747 }
748 break;
749 }
750 case 4: {
751 $t15_16 = relays.addr($t13_14);
752 $t16_17 = $t15_16.$get();
753 $t17_18 = $rt.builtin.len($t16_17);
754 $t18_19 = ($t17_18 & 0xFF);
755 $t19_20 = { $value: $rt.builtin.makeSlice(2, 2, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
756 $t20_21 = $t19_20.$get().addr(0);
757 $t20_21.$set(1);
758 $t21_22 = $t19_20.$get().addr(1);
759 $t21_22.$set($t18_19);
760 $t22_23 = $rt.builtin.sliceSlice($t19_20.$get(), undefined, undefined, undefined);
761 $t23_24 = $rt.builtin.appendSlice($t11_12, $t22_23);
762 $t24_25 = $rt.builtin.appendSlice($t23_24, $t16_17);
763 $t11_12 = $t24_25;
764 $t12_13 = $t13_14;
765 $block = 3; break;
766 break;
767 }
768 case 5: {
769 $t25_26 = $rt.builtin.len(author);
770 $t26_27 = ($t25_26 !== 0);
771 if ($t26_27) {
772 $block = 6; break;
773 }
774 else {
775 $t30_31 = $t11_12;
776 $block = 7; break;
777 }
778 break;
779 }
780 case 6: {
781 $t27_28 = HexDecode(author);
782 $t28_29 = $rt.builtin.len($t27_28);
783 $t29_30 = ($t28_29 === 32);
784 if ($t29_30) {
785 $block = 8; break;
786 }
787 else {
788 $t30_31 = $t11_12;
789 $block = 7; break;
790 }
791 break;
792 }
793 case 7: {
794 $t31_32 = $rt.builtin.stringToBytes('nevent');
795 $t32_33 = Bech32Encode($t31_32, $t30_31);
796 return $t32_33;
797 break;
798 }
799 case 8: {
800 $t33_34 = { $value: $rt.builtin.makeSlice(2, 2, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
801 $t34_35 = $t33_34.$get().addr(0);
802 $t34_35.$set(2);
803 $t35_36 = $t33_34.$get().addr(1);
804 $t35_36.$set(32);
805 $t36_37 = $rt.builtin.sliceSlice($t33_34.$get(), undefined, undefined, undefined);
806 $t37_38 = $rt.builtin.appendSlice($t11_12, $t36_37);
807 $t38_39 = $rt.builtin.appendSlice($t37_38, $t27_28);
808 $t30_31 = $t38_39;
809 $block = 7; break;
810 break;
811 }
812 }
813 }
814 }
815
816 export function DecodeNpub(s) {
817 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7;
818 let $block = 0;
819 while (true) {
820 switch ($block) {
821 case 0: {
822 $t0_1 = Bech32Decode(s);
823 $t1_2 = $t0_1[0];
824 $t2_3 = $t0_1[1];
825 $t3_4 = $rt.builtin.stringToBytes('npub');
826 $t4_5 = $rt.builtin.stringEqual($t1_2, $t3_4);
827 if ($t4_5) {
828 $block = 3; break;
829 }
830 else {
831 $block = 1; break;
832 }
833 break;
834 }
835 case 1: {
836 return null;
837 break;
838 }
839 case 2: {
840 return $t2_3;
841 break;
842 }
843 case 3: {
844 $t5_6 = $rt.builtin.len($t2_3);
845 $t6_7 = ($t5_6 !== 32);
846 if ($t6_7) {
847 $block = 1; break;
848 }
849 else {
850 $block = 2; break;
851 }
852 break;
853 }
854 }
855 }
856 }
857
858 export function DecodeNsec(s) {
859 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7;
860 let $block = 0;
861 while (true) {
862 switch ($block) {
863 case 0: {
864 $t0_1 = Bech32Decode(s);
865 $t1_2 = $t0_1[0];
866 $t2_3 = $t0_1[1];
867 $t3_4 = $rt.builtin.stringToBytes('nsec');
868 $t4_5 = $rt.builtin.stringEqual($t1_2, $t3_4);
869 if ($t4_5) {
870 $block = 3; break;
871 }
872 else {
873 $block = 1; break;
874 }
875 break;
876 }
877 case 1: {
878 return null;
879 break;
880 }
881 case 2: {
882 return $t2_3;
883 break;
884 }
885 case 3: {
886 $t5_6 = $rt.builtin.len($t2_3);
887 $t6_7 = ($t5_6 !== 32);
888 if ($t6_7) {
889 $block = 1; break;
890 }
891 else {
892 $block = 2; break;
893 }
894 break;
895 }
896 }
897 }
898 }
899
900 export function DecodeNote(s) {
901 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7;
902 let $block = 0;
903 while (true) {
904 switch ($block) {
905 case 0: {
906 $t0_1 = Bech32Decode(s);
907 $t1_2 = $t0_1[0];
908 $t2_3 = $t0_1[1];
909 $t3_4 = $rt.builtin.stringToBytes('note');
910 $t4_5 = $rt.builtin.stringEqual($t1_2, $t3_4);
911 if ($t4_5) {
912 $block = 3; break;
913 }
914 else {
915 $block = 1; break;
916 }
917 break;
918 }
919 case 1: {
920 return null;
921 break;
922 }
923 case 2: {
924 return $t2_3;
925 break;
926 }
927 case 3: {
928 $t5_6 = $rt.builtin.len($t2_3);
929 $t6_7 = ($t5_6 !== 32);
930 if ($t6_7) {
931 $block = 1; break;
932 }
933 else {
934 $block = 2; break;
935 }
936 break;
937 }
938 }
939 }
940 }
941
942 export function DecodeNevent(s) {
943 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43;
944 let $block = 0;
945 while (true) {
946 switch ($block) {
947 case 0: {
948 $t0_1 = Bech32Decode(s);
949 $t1_2 = $t0_1[0];
950 $t2_3 = $t0_1[1];
951 $t3_4 = $rt.builtin.stringToBytes('nevent');
952 $t4_5 = $rt.builtin.stringEqual($t1_2, $t3_4);
953 if ($t4_5) {
954 $block = 2; break;
955 }
956 else {
957 $block = 1; break;
958 }
959 break;
960 }
961 case 1: {
962 return null;
963 break;
964 }
965 case 2: {
966 $t5_6 = { $value: { ID: null, Relays: null, Author: null }, $get() { return this.$value; }, $set(v) { this.$value = v; } };
967 $t20_21 = 0;
968 $block = 5; break;
969 break;
970 }
971 case 3: {
972 $t6_7 = $t2_3.addr($t20_21);
973 $t7_8 = $t6_7.$get();
974 $t8_9 = ($t20_21 + 1);
975 $t9_10 = $t2_3.addr($t8_9);
976 $t10_11 = $t9_10.$get();
977 $t11_12 = $t10_11;
978 $t12_13 = ($t20_21 + 2);
979 $t13_14 = ($t12_13 + $t11_12);
980 $t14_15 = $rt.builtin.len($t2_3);
981 $t15_16 = ($t13_14 > $t14_15);
982 if ($t15_16) {
983 $block = 4; break;
984 }
985 else {
986 $block = 6; break;
987 }
988 break;
989 }
990 case 4: {
991 $t16_17 = { $get() { return $t5_6.$get().ID; }, $set(v) { const obj = $t5_6.$get(); obj.ID = v; $t5_6.$set(obj); } };
992 $t17_18 = $t16_17.$get();
993 $t18_19 = $rt.builtin.len($t17_18);
994 $t19_20 = ($t18_19 === 0);
995 if ($t19_20) {
996 $block = 14; break;
997 }
998 else {
999 $block = 15; break;
1000 }
1001 break;
1002 }
1003 case 5: {
1004 $t21_22 = ($t20_21 + 2);
1005 $t22_23 = $rt.builtin.len($t2_3);
1006 $t23_24 = ($t21_22 <= $t22_23);
1007 if ($t23_24) {
1008 $block = 3; break;
1009 }
1010 else {
1011 $block = 4; break;
1012 }
1013 break;
1014 }
1015 case 6: {
1016 $t24_25 = ($t12_13 + $t11_12);
1017 $t25_26 = $rt.builtin.sliceSlice($t2_3, $t12_13, $t24_25, undefined);
1018 $t26_27 = ($t12_13 + $t11_12);
1019 $t27_28 = ($t7_8 === 0);
1020 if ($t27_28) {
1021 $block = 7; break;
1022 }
1023 else {
1024 $block = 9; break;
1025 }
1026 break;
1027 }
1028 case 7: {
1029 $t28_29 = ($t11_12 === 32);
1030 if ($t28_29) {
1031 $block = 10; break;
1032 }
1033 else {
1034 $t20_21 = $t26_27;
1035 $block = 5; break;
1036 }
1037 break;
1038 }
1039 case 8: {
1040 $t29_30 = { $get() { return $t5_6.$get().Relays; }, $set(v) { const obj = $t5_6.$get(); obj.Relays = v; $t5_6.$set(obj); } };
1041 $t30_31 = $t29_30.$get();
1042 $t31_32 = { $value: $rt.builtin.makeSlice(1, 1, null), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1043 $t32_33 = $t31_32.$get().addr(0);
1044 $t32_33.$set($t25_26);
1045 $t33_34 = $rt.builtin.sliceSlice($t31_32.$get(), undefined, undefined, undefined);
1046 $t34_35 = $rt.builtin.appendSlice($t30_31, $t33_34);
1047 $t35_36 = { $get() { return $t5_6.$get().Relays; }, $set(v) { const obj = $t5_6.$get(); obj.Relays = v; $t5_6.$set(obj); } };
1048 $t35_36.$set($t34_35);
1049 $t20_21 = $t26_27;
1050 $block = 5; break;
1051 break;
1052 }
1053 case 9: {
1054 $t36_37 = ($t7_8 === 1);
1055 if ($t36_37) {
1056 $block = 8; break;
1057 }
1058 else {
1059 $block = 12; break;
1060 }
1061 break;
1062 }
1063 case 10: {
1064 $t37_38 = HexEncode($t25_26);
1065 $t38_39 = { $get() { return $t5_6.$get().ID; }, $set(v) { const obj = $t5_6.$get(); obj.ID = v; $t5_6.$set(obj); } };
1066 $t38_39.$set($t37_38);
1067 $t20_21 = $t26_27;
1068 $block = 5; break;
1069 break;
1070 }
1071 case 11: {
1072 $t39_40 = ($t11_12 === 32);
1073 if ($t39_40) {
1074 $block = 13; break;
1075 }
1076 else {
1077 $t20_21 = $t26_27;
1078 $block = 5; break;
1079 }
1080 break;
1081 }
1082 case 12: {
1083 $t40_41 = ($t7_8 === 2);
1084 if ($t40_41) {
1085 $block = 11; break;
1086 }
1087 else {
1088 $t20_21 = $t26_27;
1089 $block = 5; break;
1090 }
1091 break;
1092 }
1093 case 13: {
1094 $t41_42 = HexEncode($t25_26);
1095 $t42_43 = { $get() { return $t5_6.$get().Author; }, $set(v) { const obj = $t5_6.$get(); obj.Author = v; $t5_6.$set(obj); } };
1096 $t42_43.$set($t41_42);
1097 $t20_21 = $t26_27;
1098 $block = 5; break;
1099 break;
1100 }
1101 case 14: {
1102 return null;
1103 break;
1104 }
1105 case 15: {
1106 return $t5_6;
1107 break;
1108 }
1109 }
1110 }
1111 }
1112
1113 export function DecodeNprofile(s) {
1114 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39;
1115 let $block = 0;
1116 while (true) {
1117 switch ($block) {
1118 case 0: {
1119 $t0_1 = Bech32Decode(s);
1120 $t1_2 = $t0_1[0];
1121 $t2_3 = $t0_1[1];
1122 $t3_4 = $rt.builtin.stringToBytes('nprofile');
1123 $t4_5 = $rt.builtin.stringEqual($t1_2, $t3_4);
1124 if ($t4_5) {
1125 $block = 2; break;
1126 }
1127 else {
1128 $block = 1; break;
1129 }
1130 break;
1131 }
1132 case 1: {
1133 return null;
1134 break;
1135 }
1136 case 2: {
1137 $t5_6 = { $value: { Pubkey: null, Relays: null }, $get() { return this.$value; }, $set(v) { this.$value = v; } };
1138 $t20_21 = 0;
1139 $block = 5; break;
1140 break;
1141 }
1142 case 3: {
1143 $t6_7 = $t2_3.addr($t20_21);
1144 $t7_8 = $t6_7.$get();
1145 $t8_9 = ($t20_21 + 1);
1146 $t9_10 = $t2_3.addr($t8_9);
1147 $t10_11 = $t9_10.$get();
1148 $t11_12 = $t10_11;
1149 $t12_13 = ($t20_21 + 2);
1150 $t13_14 = ($t12_13 + $t11_12);
1151 $t14_15 = $rt.builtin.len($t2_3);
1152 $t15_16 = ($t13_14 > $t14_15);
1153 if ($t15_16) {
1154 $block = 4; break;
1155 }
1156 else {
1157 $block = 6; break;
1158 }
1159 break;
1160 }
1161 case 4: {
1162 $t16_17 = { $get() { return $t5_6.$get().Pubkey; }, $set(v) { const obj = $t5_6.$get(); obj.Pubkey = v; $t5_6.$set(obj); } };
1163 $t17_18 = $t16_17.$get();
1164 $t18_19 = $rt.builtin.len($t17_18);
1165 $t19_20 = ($t18_19 === 0);
1166 if ($t19_20) {
1167 $block = 11; break;
1168 }
1169 else {
1170 $block = 12; break;
1171 }
1172 break;
1173 }
1174 case 5: {
1175 $t21_22 = ($t20_21 + 2);
1176 $t22_23 = $rt.builtin.len($t2_3);
1177 $t23_24 = ($t21_22 <= $t22_23);
1178 if ($t23_24) {
1179 $block = 3; break;
1180 }
1181 else {
1182 $block = 4; break;
1183 }
1184 break;
1185 }
1186 case 6: {
1187 $t24_25 = ($t12_13 + $t11_12);
1188 $t25_26 = $rt.builtin.sliceSlice($t2_3, $t12_13, $t24_25, undefined);
1189 $t26_27 = ($t12_13 + $t11_12);
1190 $t27_28 = ($t7_8 === 0);
1191 if ($t27_28) {
1192 $block = 7; break;
1193 }
1194 else {
1195 $block = 9; break;
1196 }
1197 break;
1198 }
1199 case 7: {
1200 $t28_29 = ($t11_12 === 32);
1201 if ($t28_29) {
1202 $block = 10; break;
1203 }
1204 else {
1205 $t20_21 = $t26_27;
1206 $block = 5; break;
1207 }
1208 break;
1209 }
1210 case 8: {
1211 $t29_30 = { $get() { return $t5_6.$get().Relays; }, $set(v) { const obj = $t5_6.$get(); obj.Relays = v; $t5_6.$set(obj); } };
1212 $t30_31 = $t29_30.$get();
1213 $t31_32 = { $value: $rt.builtin.makeSlice(1, 1, null), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1214 $t32_33 = $t31_32.$get().addr(0);
1215 $t32_33.$set($t25_26);
1216 $t33_34 = $rt.builtin.sliceSlice($t31_32.$get(), undefined, undefined, undefined);
1217 $t34_35 = $rt.builtin.appendSlice($t30_31, $t33_34);
1218 $t35_36 = { $get() { return $t5_6.$get().Relays; }, $set(v) { const obj = $t5_6.$get(); obj.Relays = v; $t5_6.$set(obj); } };
1219 $t35_36.$set($t34_35);
1220 $t20_21 = $t26_27;
1221 $block = 5; break;
1222 break;
1223 }
1224 case 9: {
1225 $t36_37 = ($t7_8 === 1);
1226 if ($t36_37) {
1227 $block = 8; break;
1228 }
1229 else {
1230 $t20_21 = $t26_27;
1231 $block = 5; break;
1232 }
1233 break;
1234 }
1235 case 10: {
1236 $t37_38 = HexEncode($t25_26);
1237 $t38_39 = { $get() { return $t5_6.$get().Pubkey; }, $set(v) { const obj = $t5_6.$get(); obj.Pubkey = v; $t5_6.$set(obj); } };
1238 $t38_39.$set($t37_38);
1239 $t20_21 = $t26_27;
1240 $block = 5; break;
1241 break;
1242 }
1243 case 11: {
1244 return null;
1245 break;
1246 }
1247 case 12: {
1248 return $t5_6;
1249 break;
1250 }
1251 }
1252 }
1253 }
1254
1255 export function PubkeyShort(pubkey) {
1256 let $t0_1, $t1_2, $t2_3;
1257 let $block = 0;
1258 while (true) {
1259 switch ($block) {
1260 case 0: {
1261 $t0_1 = $rt.builtin.len(pubkey);
1262 $t1_2 = ($t0_1 >= 8);
1263 if ($t1_2) {
1264 $block = 1; break;
1265 }
1266 else {
1267 $block = 2; break;
1268 }
1269 break;
1270 }
1271 case 1: {
1272 $t2_3 = $rt.builtin.sliceSlice(pubkey, undefined, 8, undefined);
1273 return $t2_3;
1274 break;
1275 }
1276 case 2: {
1277 return pubkey;
1278 break;
1279 }
1280 }
1281 }
1282 }
1283
1284 export function bytesToBase32(data) {
1285 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38;
1286 let $block = 0;
1287 while (true) {
1288 switch ($block) {
1289 case 0: {
1290 $t0_1 = $rt.builtin.len(data);
1291 $t1_2 = null;
1292 $t2_3 = 0;
1293 $t3_4 = 0;
1294 $t4_5 = -1;
1295 $block = 1; break;
1296 break;
1297 }
1298 case 1: {
1299 $t5_6 = ($t4_5 + 1);
1300 $t6_7 = ($t5_6 < $t0_1);
1301 if ($t6_7) {
1302 $block = 2; break;
1303 }
1304 else {
1305 $block = 3; break;
1306 }
1307 break;
1308 }
1309 case 2: {
1310 $t7_8 = data.addr($t5_6);
1311 $t8_9 = $t7_8.$get();
1312 $t9_10 = ($t2_3 << 8);
1313 $t10_11 = $t8_9;
1314 $t11_12 = ($t9_10 + $t10_11);
1315 $t12_13 = ($t3_4 + 8);
1316 $t26_27 = $t1_2;
1317 $t27_28 = $t12_13;
1318 $block = 6; break;
1319 break;
1320 }
1321 case 3: {
1322 $t13_14 = ($t3_4 > 0);
1323 if ($t13_14) {
1324 $block = 7; break;
1325 }
1326 else {
1327 $t37_38 = $t1_2;
1328 $block = 8; break;
1329 }
1330 break;
1331 }
1332 case 4: {
1333 $t14_15 = ($t27_28 - 5);
1334 $t15_16 = ($t11_12 >> $t14_15);
1335 $t16_17 = ($t15_16 & 31);
1336 $t17_18 = ($t16_17 & 0xFF);
1337 $t18_19 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1338 $t19_20 = $t18_19.$get().addr(0);
1339 $t19_20.$set($t17_18);
1340 $t20_21 = $rt.builtin.sliceSlice($t18_19.$get(), undefined, undefined, undefined);
1341 $t21_22 = $rt.builtin.appendSlice($t26_27, $t20_21);
1342 $t26_27 = $t21_22;
1343 $t27_28 = $t14_15;
1344 $block = 6; break;
1345 break;
1346 }
1347 case 5: {
1348 $t22_23 = $t27_28;
1349 $t23_24 = (1 << $t22_23);
1350 $t24_25 = ($t23_24 - 1);
1351 $t25_26 = ($t11_12 & $t24_25);
1352 $t1_2 = $t26_27;
1353 $t2_3 = $t25_26;
1354 $t3_4 = $t27_28;
1355 $t4_5 = $t5_6;
1356 $block = 1; break;
1357 break;
1358 }
1359 case 6: {
1360 $t28_29 = ($t27_28 >= 5);
1361 if ($t28_29) {
1362 $block = 4; break;
1363 }
1364 else {
1365 $block = 5; break;
1366 }
1367 break;
1368 }
1369 case 7: {
1370 $t29_30 = (5 - $t3_4);
1371 $t30_31 = ($t2_3 << $t29_30);
1372 $t31_32 = ($t30_31 & 31);
1373 $t32_33 = ($t31_32 & 0xFF);
1374 $t33_34 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1375 $t34_35 = $t33_34.$get().addr(0);
1376 $t34_35.$set($t32_33);
1377 $t35_36 = $rt.builtin.sliceSlice($t33_34.$get(), undefined, undefined, undefined);
1378 $t36_37 = $rt.builtin.appendSlice($t1_2, $t35_36);
1379 $t37_38 = $t36_37;
1380 $block = 8; break;
1381 break;
1382 }
1383 case 8: {
1384 return $t37_38;
1385 break;
1386 }
1387 }
1388 }
1389 }
1390
1391 export function base32ToBytes(data) {
1392 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28;
1393 let $block = 0;
1394 while (true) {
1395 switch ($block) {
1396 case 0: {
1397 $t0_1 = $rt.builtin.len(data);
1398 $t1_2 = null;
1399 $t2_3 = 0;
1400 $t3_4 = 0;
1401 $t4_5 = -1;
1402 $block = 1; break;
1403 break;
1404 }
1405 case 1: {
1406 $t5_6 = ($t4_5 + 1);
1407 $t6_7 = ($t5_6 < $t0_1);
1408 if ($t6_7) {
1409 $block = 2; break;
1410 }
1411 else {
1412 $block = 3; break;
1413 }
1414 break;
1415 }
1416 case 2: {
1417 $t7_8 = data.addr($t5_6);
1418 $t8_9 = $t7_8.$get();
1419 $t9_10 = ($t2_3 << 5);
1420 $t10_11 = $t8_9;
1421 $t11_12 = ($t9_10 + $t10_11);
1422 $t12_13 = ($t3_4 + 5);
1423 $t25_26 = $t1_2;
1424 $t26_27 = $t12_13;
1425 $block = 6; break;
1426 break;
1427 }
1428 case 3: {
1429 return $t1_2;
1430 break;
1431 }
1432 case 4: {
1433 $t13_14 = ($t26_27 - 8);
1434 $t14_15 = ($t11_12 >> $t13_14);
1435 $t15_16 = ($t14_15 & 255);
1436 $t16_17 = ($t15_16 & 0xFF);
1437 $t17_18 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1438 $t18_19 = $t17_18.$get().addr(0);
1439 $t18_19.$set($t16_17);
1440 $t19_20 = $rt.builtin.sliceSlice($t17_18.$get(), undefined, undefined, undefined);
1441 $t20_21 = $rt.builtin.appendSlice($t25_26, $t19_20);
1442 $t25_26 = $t20_21;
1443 $t26_27 = $t13_14;
1444 $block = 6; break;
1445 break;
1446 }
1447 case 5: {
1448 $t21_22 = $t26_27;
1449 $t22_23 = (1 << $t21_22);
1450 $t23_24 = ($t22_23 - 1);
1451 $t24_25 = ($t11_12 & $t23_24);
1452 $t1_2 = $t25_26;
1453 $t2_3 = $t24_25;
1454 $t3_4 = $t26_27;
1455 $t4_5 = $t5_6;
1456 $block = 1; break;
1457 break;
1458 }
1459 case 6: {
1460 $t27_28 = ($t26_27 >= 8);
1461 if ($t27_28) {
1462 $block = 4; break;
1463 }
1464 else {
1465 $block = 5; break;
1466 }
1467 break;
1468 }
1469 }
1470 }
1471 }
1472
1473 export function bech32Polymod(values) {
1474 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30;
1475 let $block = 0;
1476 while (true) {
1477 switch ($block) {
1478 case 0: {
1479 $t0_1 = { $value: $rt.builtin.makeSlice(5, 5, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1480 $t1_2 = $t0_1.$get().addr(0);
1481 $t2_3 = $t0_1.$get().addr(1);
1482 $t3_4 = $t0_1.$get().addr(2);
1483 $t4_5 = $t0_1.$get().addr(3);
1484 $t5_6 = $t0_1.$get().addr(4);
1485 $t1_2.$set(996825010);
1486 $t2_3.$set(642813549);
1487 $t3_4.$set(513874426);
1488 $t4_5.$set(1027748829);
1489 $t5_6.$set(705979059);
1490 $t6_7 = $rt.builtin.len(values);
1491 $t7_8 = 1;
1492 $t8_9 = -1;
1493 $block = 1; break;
1494 break;
1495 }
1496 case 1: {
1497 $t9_10 = ($t8_9 + 1);
1498 $t10_11 = ($t9_10 < $t6_7);
1499 if ($t10_11) {
1500 $block = 2; break;
1501 }
1502 else {
1503 $block = 3; break;
1504 }
1505 break;
1506 }
1507 case 2: {
1508 $t11_12 = values.addr($t9_10);
1509 $t12_13 = $t11_12.$get();
1510 $t13_14 = ($t7_8 >>> 25);
1511 $t14_15 = (($t7_8 & 33554431) >>> 0);
1512 $t15_16 = (($t14_15 << 5) >>> 0);
1513 $t16_17 = ($t12_13 >>> 0);
1514 $t17_18 = (($t15_16 ^ $t16_17) >>> 0);
1515 $t18_19 = $t17_18;
1516 $t19_20 = 0;
1517 $block = 4; break;
1518 break;
1519 }
1520 case 3: {
1521 return $t7_8;
1522 break;
1523 }
1524 case 4: {
1525 $t20_21 = ($t19_20 < 5);
1526 if ($t20_21) {
1527 $block = 5; break;
1528 }
1529 else {
1530 $t7_8 = $t18_19;
1531 $t8_9 = $t9_10;
1532 $block = 1; break;
1533 }
1534 break;
1535 }
1536 case 5: {
1537 $t21_22 = $t19_20;
1538 $t22_23 = ($t13_14 >>> $t21_22);
1539 $t23_24 = (($t22_23 & 1) >>> 0);
1540 $t24_25 = ($t23_24 === 1);
1541 if ($t24_25) {
1542 $block = 6; break;
1543 }
1544 else {
1545 $t28_29 = $t18_19;
1546 $block = 7; break;
1547 }
1548 break;
1549 }
1550 case 6: {
1551 $t25_26 = $t0_1.$get().addr($t19_20);
1552 $t26_27 = $t25_26.$get();
1553 $t27_28 = (($t18_19 ^ $t26_27) >>> 0);
1554 $t28_29 = $t27_28;
1555 $block = 7; break;
1556 break;
1557 }
1558 case 7: {
1559 $t29_30 = ($t19_20 + 1);
1560 $t18_19 = $t28_29;
1561 $t19_20 = $t29_30;
1562 $block = 4; break;
1563 break;
1564 }
1565 }
1566 }
1567 }
1568
1569 export function bech32HRPExpand(hrp) {
1570 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32;
1571 let $block = 0;
1572 while (true) {
1573 switch ($block) {
1574 case 0: {
1575 $t0_1 = $rt.builtin.len(hrp);
1576 $t1_2 = ($t0_1 * 2);
1577 $t2_3 = ($t1_2 + 1);
1578 $t3_4 = $rt.builtin.makeSlice(0, $t2_3, 0);
1579 $t4_5 = $t3_4;
1580 $t5_6 = 0;
1581 $block = 1; break;
1582 break;
1583 }
1584 case 1: {
1585 $t6_7 = $rt.builtin.len(hrp);
1586 $t7_8 = ($t5_6 < $t6_7);
1587 if ($t7_8) {
1588 $block = 2; break;
1589 }
1590 else {
1591 $block = 3; break;
1592 }
1593 break;
1594 }
1595 case 2: {
1596 $t8_9 = hrp.addr($t5_6);
1597 $t9_10 = $t8_9.$get();
1598 $t10_11 = (($t9_10 & 0xFF) >> 5);
1599 $t11_12 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1600 $t12_13 = $t11_12.$get().addr(0);
1601 $t12_13.$set($t10_11);
1602 $t13_14 = $rt.builtin.sliceSlice($t11_12.$get(), undefined, undefined, undefined);
1603 $t14_15 = $rt.builtin.appendSlice($t4_5, $t13_14);
1604 $t15_16 = ($t5_6 + 1);
1605 $t4_5 = $t14_15;
1606 $t5_6 = $t15_16;
1607 $block = 1; break;
1608 break;
1609 }
1610 case 3: {
1611 $t16_17 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1612 $t17_18 = $t16_17.$get().addr(0);
1613 $t17_18.$set(0);
1614 $t18_19 = $rt.builtin.sliceSlice($t16_17.$get(), undefined, undefined, undefined);
1615 $t19_20 = $rt.builtin.appendSlice($t4_5, $t18_19);
1616 $t20_21 = $t19_20;
1617 $t21_22 = 0;
1618 $block = 4; break;
1619 break;
1620 }
1621 case 4: {
1622 $t22_23 = $rt.builtin.len(hrp);
1623 $t23_24 = ($t21_22 < $t22_23);
1624 if ($t23_24) {
1625 $block = 5; break;
1626 }
1627 else {
1628 $block = 6; break;
1629 }
1630 break;
1631 }
1632 case 5: {
1633 $t24_25 = hrp.addr($t21_22);
1634 $t25_26 = $t24_25.$get();
1635 $t26_27 = ($t25_26 & 31);
1636 $t27_28 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1637 $t28_29 = $t27_28.$get().addr(0);
1638 $t28_29.$set($t26_27);
1639 $t29_30 = $rt.builtin.sliceSlice($t27_28.$get(), undefined, undefined, undefined);
1640 $t30_31 = $rt.builtin.appendSlice($t20_21, $t29_30);
1641 $t31_32 = ($t21_22 + 1);
1642 $t20_21 = $t30_31;
1643 $t21_22 = $t31_32;
1644 $block = 4; break;
1645 break;
1646 }
1647 case 6: {
1648 return $t20_21;
1649 break;
1650 }
1651 }
1652 }
1653 }
1654
1655 export function bech32Checksum(hrp, data) {
1656 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25;
1657 let $block = 0;
1658 while (true) {
1659 switch ($block) {
1660 case 0: {
1661 $t0_1 = bech32HRPExpand(hrp);
1662 $t1_2 = $rt.builtin.appendSlice($t0_1, data);
1663 $t2_3 = { $value: $rt.builtin.makeSlice(6, 6, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1664 $t3_4 = $t2_3.$get().addr(0);
1665 $t3_4.$set(0);
1666 $t4_5 = $t2_3.$get().addr(1);
1667 $t4_5.$set(0);
1668 $t5_6 = $t2_3.$get().addr(2);
1669 $t5_6.$set(0);
1670 $t6_7 = $t2_3.$get().addr(3);
1671 $t6_7.$set(0);
1672 $t7_8 = $t2_3.$get().addr(4);
1673 $t7_8.$set(0);
1674 $t8_9 = $t2_3.$get().addr(5);
1675 $t8_9.$set(0);
1676 $t9_10 = $rt.builtin.sliceSlice($t2_3.$get(), undefined, undefined, undefined);
1677 $t10_11 = $rt.builtin.appendSlice($t1_2, $t9_10);
1678 $t11_12 = bech32Polymod($t10_11);
1679 $t12_13 = (($t11_12 ^ 1) >>> 0);
1680 $t13_14 = { $value: $rt.builtin.makeSlice(6, 6, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1681 $t14_15 = $rt.builtin.sliceSlice($t13_14.$get(), undefined, 6, undefined);
1682 $t15_16 = 0;
1683 $block = 1; break;
1684 break;
1685 }
1686 case 1: {
1687 $t16_17 = ($t15_16 < 6);
1688 if ($t16_17) {
1689 $block = 2; break;
1690 }
1691 else {
1692 $block = 3; break;
1693 }
1694 break;
1695 }
1696 case 2: {
1697 $t17_18 = $t15_16;
1698 $t18_19 = ((5 - $t17_18) >>> 0);
1699 $t19_20 = (Math.imul(5, $t18_19) >>> 0);
1700 $t20_21 = ($t12_13 >>> $t19_20);
1701 $t21_22 = (($t20_21 & 31) >>> 0);
1702 $t22_23 = ($t21_22 & 0xFF);
1703 $t23_24 = $t14_15.addr($t15_16);
1704 $t23_24.$set($t22_23);
1705 $t24_25 = ($t15_16 + 1);
1706 $t15_16 = $t24_25;
1707 $block = 1; break;
1708 break;
1709 }
1710 case 3: {
1711 return $t14_15;
1712 break;
1713 }
1714 }
1715 }
1716 }
1717
1718 export function bech32Verify(hrp, data) {
1719 let $t0_1, $t1_2, $t2_3, $t3_4;
1720 $t0_1 = bech32HRPExpand(hrp);
1721 $t1_2 = $rt.builtin.appendSlice($t0_1, data);
1722 $t2_3 = bech32Polymod($t1_2);
1723 $t3_4 = ($t2_3 === 1);
1724 return $t3_4;
1725 }
1726
1727 export function charsetIndex(c) {
1728 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9;
1729 let $block = 0;
1730 while (true) {
1731 switch ($block) {
1732 case 0: {
1733 $t0_1 = 0;
1734 $block = 1; break;
1735 break;
1736 }
1737 case 1: {
1738 $t1_2 = bech32Charset.$get();
1739 $t2_3 = $rt.builtin.len($t1_2);
1740 $t3_4 = ($t0_1 < $t2_3);
1741 if ($t3_4) {
1742 $block = 2; break;
1743 }
1744 else {
1745 $block = 3; break;
1746 }
1747 break;
1748 }
1749 case 2: {
1750 $t4_5 = bech32Charset.$get();
1751 $t5_6 = $t4_5.addr($t0_1);
1752 $t6_7 = $t5_6.$get();
1753 $t7_8 = ($t6_7 === c);
1754 if ($t7_8) {
1755 $block = 4; break;
1756 }
1757 else {
1758 $block = 5; break;
1759 }
1760 break;
1761 }
1762 case 3: {
1763 return -1;
1764 break;
1765 }
1766 case 4: {
1767 return $t0_1;
1768 break;
1769 }
1770 case 5: {
1771 $t8_9 = ($t0_1 + 1);
1772 $t0_1 = $t8_9;
1773 $block = 1; break;
1774 break;
1775 }
1776 }
1777 }
1778 }
1779
1780 export function HexEncode(b) {
1781 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22;
1782 let $block = 0;
1783 while (true) {
1784 switch ($block) {
1785 case 0: {
1786 $t0_1 = $rt.builtin.len(b);
1787 $t1_2 = ($t0_1 * 2);
1788 $t2_3 = $rt.builtin.makeSlice($t1_2, $t1_2, 0);
1789 $t3_4 = $rt.builtin.len(b);
1790 $t4_5 = -1;
1791 $block = 1; break;
1792 break;
1793 }
1794 case 1: {
1795 $t5_6 = ($t4_5 + 1);
1796 $t6_7 = ($t5_6 < $t3_4);
1797 if ($t6_7) {
1798 $block = 2; break;
1799 }
1800 else {
1801 $block = 3; break;
1802 }
1803 break;
1804 }
1805 case 2: {
1806 $t7_8 = b.addr($t5_6);
1807 $t8_9 = $t7_8.$get();
1808 $t9_10 = ($t5_6 * 2);
1809 $t10_11 = hexChars.$get();
1810 $t11_12 = (($t8_9 & 0xFF) >> 4);
1811 $t12_13 = $t10_11.addr($t11_12);
1812 $t13_14 = $t12_13.$get();
1813 $t14_15 = $t2_3.addr($t9_10);
1814 $t14_15.$set($t13_14);
1815 $t15_16 = ($t5_6 * 2);
1816 $t16_17 = ($t15_16 + 1);
1817 $t17_18 = hexChars.$get();
1818 $t18_19 = ($t8_9 & 15);
1819 $t19_20 = $t17_18.addr($t18_19);
1820 $t20_21 = $t19_20.$get();
1821 $t21_22 = $t2_3.addr($t16_17);
1822 $t21_22.$set($t20_21);
1823 $t4_5 = $t5_6;
1824 $block = 1; break;
1825 break;
1826 }
1827 case 3: {
1828 return $t2_3;
1829 break;
1830 }
1831 }
1832 }
1833 }
1834
1835 export function HexDecode(s) {
1836 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24;
1837 let $block = 0;
1838 while (true) {
1839 switch ($block) {
1840 case 0: {
1841 $t0_1 = $rt.builtin.len(s);
1842 $t1_2 = ($t0_1 % 2);
1843 $t2_3 = ($t1_2 !== 0);
1844 if ($t2_3) {
1845 $block = 1; break;
1846 }
1847 else {
1848 $block = 2; break;
1849 }
1850 break;
1851 }
1852 case 1: {
1853 return null;
1854 break;
1855 }
1856 case 2: {
1857 $t3_4 = $rt.builtin.len(s);
1858 $t4_5 = Math.trunc($t3_4 / 2);
1859 $t5_6 = $rt.builtin.makeSlice($t4_5, $t4_5, 0);
1860 $t6_7 = 0;
1861 $block = 3; break;
1862 break;
1863 }
1864 case 3: {
1865 $t7_8 = $rt.builtin.len(s);
1866 $t8_9 = ($t6_7 < $t7_8);
1867 if ($t8_9) {
1868 $block = 4; break;
1869 }
1870 else {
1871 $block = 5; break;
1872 }
1873 break;
1874 }
1875 case 4: {
1876 $t9_10 = s.addr($t6_7);
1877 $t10_11 = $t9_10.$get();
1878 $t11_12 = hexVal($t10_11);
1879 $t12_13 = ($t6_7 + 1);
1880 $t13_14 = s.addr($t12_13);
1881 $t14_15 = $t13_14.$get();
1882 $t15_16 = hexVal($t14_15);
1883 $t16_17 = ($t11_12 < 0);
1884 if ($t16_17) {
1885 $block = 6; break;
1886 }
1887 else {
1888 $block = 8; break;
1889 }
1890 break;
1891 }
1892 case 5: {
1893 return $t5_6;
1894 break;
1895 }
1896 case 6: {
1897 return null;
1898 break;
1899 }
1900 case 7: {
1901 $t17_18 = Math.trunc($t6_7 / 2);
1902 $t18_19 = ($t11_12 << 4);
1903 $t19_20 = ($t18_19 + $t15_16);
1904 $t20_21 = ($t19_20 & 0xFF);
1905 $t21_22 = $t5_6.addr($t17_18);
1906 $t21_22.$set($t20_21);
1907 $t22_23 = ($t6_7 + 2);
1908 $t6_7 = $t22_23;
1909 $block = 3; break;
1910 break;
1911 }
1912 case 8: {
1913 $t23_24 = ($t15_16 < 0);
1914 if ($t23_24) {
1915 $block = 6; break;
1916 }
1917 else {
1918 $block = 7; break;
1919 }
1920 break;
1921 }
1922 }
1923 }
1924 }
1925
1926 export function HexDecode32(s) {
1927 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27;
1928 let $block = 0;
1929 while (true) {
1930 switch ($block) {
1931 case 0: {
1932 $t0_1 = { $value: $rt.builtin.makeSlice(32, 32, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
1933 $t1_2 = $rt.builtin.len(s);
1934 $t2_3 = ($t1_2 !== 64);
1935 if ($t2_3) {
1936 $block = 1; break;
1937 }
1938 else {
1939 $block = 2; break;
1940 }
1941 break;
1942 }
1943 case 1: {
1944 $t3_4 = $t0_1.$get();
1945 $t0_1.$set($rt.builtin.cloneValue($t3_4));
1946 $t4_5 = $t0_1.$get();
1947 return [$t4_5, false];
1948 break;
1949 }
1950 case 2: {
1951 $t5_6 = 0;
1952 $block = 3; break;
1953 break;
1954 }
1955 case 3: {
1956 $t6_7 = ($t5_6 < 32);
1957 if ($t6_7) {
1958 $block = 4; break;
1959 }
1960 else {
1961 $block = 5; break;
1962 }
1963 break;
1964 }
1965 case 4: {
1966 $t7_8 = ($t5_6 * 2);
1967 $t8_9 = s.addr($t7_8);
1968 $t9_10 = $t8_9.$get();
1969 $t10_11 = hexVal($t9_10);
1970 $t11_12 = ($t5_6 * 2);
1971 $t12_13 = ($t11_12 + 1);
1972 $t13_14 = s.addr($t12_13);
1973 $t14_15 = $t13_14.$get();
1974 $t15_16 = hexVal($t14_15);
1975 $t16_17 = ($t10_11 < 0);
1976 if ($t16_17) {
1977 $block = 6; break;
1978 }
1979 else {
1980 $block = 8; break;
1981 }
1982 break;
1983 }
1984 case 5: {
1985 $t17_18 = $t0_1.$get();
1986 $t0_1.$set($rt.builtin.cloneValue($t17_18));
1987 $t18_19 = $t0_1.$get();
1988 return [$t18_19, true];
1989 break;
1990 }
1991 case 6: {
1992 $t19_20 = $t0_1.$get();
1993 $t0_1.$set($rt.builtin.cloneValue($t19_20));
1994 $t20_21 = $t0_1.$get();
1995 return [$t20_21, false];
1996 break;
1997 }
1998 case 7: {
1999 $t21_22 = ($t10_11 << 4);
2000 $t22_23 = ($t21_22 + $t15_16);
2001 $t23_24 = ($t22_23 & 0xFF);
2002 $t24_25 = $t0_1.$get().addr($t5_6);
2003 $t24_25.$set($t23_24);
2004 $t25_26 = ($t5_6 + 1);
2005 $t5_6 = $t25_26;
2006 $block = 3; break;
2007 break;
2008 }
2009 case 8: {
2010 $t26_27 = ($t15_16 < 0);
2011 if ($t26_27) {
2012 $block = 6; break;
2013 }
2014 else {
2015 $block = 7; break;
2016 }
2017 break;
2018 }
2019 }
2020 }
2021 }
2022
2023 export function hexVal(c) {
2024 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14;
2025 let $block = 0;
2026 while (true) {
2027 switch ($block) {
2028 case 0: {
2029 $t0_1 = (c >= 48);
2030 if ($t0_1) {
2031 $block = 4; break;
2032 }
2033 else {
2034 $block = 3; break;
2035 }
2036 break;
2037 }
2038 case 1: {
2039 $t1_2 = ((c - 48) & 0xFF);
2040 $t2_3 = $t1_2;
2041 return $t2_3;
2042 break;
2043 }
2044 case 2: {
2045 $t3_4 = ((c - 97) & 0xFF);
2046 $t4_5 = (($t3_4 + 10) & 0xFF);
2047 $t5_6 = $t4_5;
2048 return $t5_6;
2049 break;
2050 }
2051 case 3: {
2052 $t6_7 = (c >= 97);
2053 if ($t6_7) {
2054 $block = 7; break;
2055 }
2056 else {
2057 $block = 6; break;
2058 }
2059 break;
2060 }
2061 case 4: {
2062 $t7_8 = (c <= 57);
2063 if ($t7_8) {
2064 $block = 1; break;
2065 }
2066 else {
2067 $block = 3; break;
2068 }
2069 break;
2070 }
2071 case 5: {
2072 $t8_9 = ((c - 65) & 0xFF);
2073 $t9_10 = (($t8_9 + 10) & 0xFF);
2074 $t10_11 = $t9_10;
2075 return $t10_11;
2076 break;
2077 }
2078 case 6: {
2079 $t11_12 = (c >= 65);
2080 if ($t11_12) {
2081 $block = 9; break;
2082 }
2083 else {
2084 $block = 8; break;
2085 }
2086 break;
2087 }
2088 case 7: {
2089 $t12_13 = (c <= 102);
2090 if ($t12_13) {
2091 $block = 2; break;
2092 }
2093 else {
2094 $block = 6; break;
2095 }
2096 break;
2097 }
2098 case 8: {
2099 return -1;
2100 break;
2101 }
2102 case 9: {
2103 $t13_14 = (c <= 70);
2104 if ($t13_14) {
2105 $block = 5; break;
2106 }
2107 else {
2108 $block = 8; break;
2109 }
2110 break;
2111 }
2112 }
2113 }
2114 }
2115
2116 export function JsonString(s) {
2117 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43, $t43_44, $t44_45, $t45_46, $t46_47, $t47_48, $t48_49, $t49_50, $t50_51, $t51_52;
2118 let $block = 0;
2119 while (true) {
2120 switch ($block) {
2121 case 0: {
2122 $t0_1 = $rt.builtin.stringToBytes('"');
2123 $t1_2 = $t0_1;
2124 $t2_3 = 0;
2125 $t3_4 = 0;
2126 $block = 1; break;
2127 break;
2128 }
2129 case 1: {
2130 $t4_5 = $rt.builtin.len(s);
2131 $t5_6 = ($t3_4 < $t4_5);
2132 if ($t5_6) {
2133 $block = 2; break;
2134 }
2135 else {
2136 $block = 4; break;
2137 }
2138 break;
2139 }
2140 case 2: {
2141 $t6_7 = s.addr($t3_4);
2142 $t7_8 = $t6_7.$get();
2143 $t8_9 = ($t7_8 === 34);
2144 if ($t8_9) {
2145 $block = 6; break;
2146 }
2147 else {
2148 $block = 8; break;
2149 }
2150 break;
2151 }
2152 case 3: {
2153 $t11_12 = ($t3_4 + 1);
2154 $t1_2 = $t9_10;
2155 $t2_3 = $t10_11;
2156 $t3_4 = $t11_12;
2157 $block = 1; break;
2158 break;
2159 }
2160 case 4: {
2161 $t12_13 = $rt.builtin.sliceSlice(s, $t2_3, undefined, undefined);
2162 $t13_14 = $rt.builtin.stringConcat($t1_2, $t12_13);
2163 $t14_15 = $rt.builtin.stringToBytes('"');
2164 $t15_16 = $rt.builtin.stringConcat($t13_14, $t14_15);
2165 return $t15_16;
2166 break;
2167 }
2168 case 5: {
2169 $t17_18 = $rt.builtin.sliceSlice(s, $t2_3, $t3_4, undefined);
2170 $t18_19 = $rt.builtin.stringConcat($t17_18, $t16_17);
2171 $t19_20 = $rt.builtin.stringConcat($t1_2, $t18_19);
2172 $t20_21 = ($t3_4 + 1);
2173 $t9_10 = $t19_20;
2174 $t10_11 = $t20_21;
2175 $block = 3; break;
2176 break;
2177 }
2178 case 6: {
2179 $t21_22 = $rt.builtin.stringToBytes('\\"');
2180 $t16_17 = $t21_22;
2181 $block = 5; break;
2182 break;
2183 }
2184 case 7: {
2185 $t22_23 = $rt.builtin.stringToBytes('\\\\');
2186 $t16_17 = $t22_23;
2187 $block = 5; break;
2188 break;
2189 }
2190 case 8: {
2191 $t23_24 = ($t7_8 === 92);
2192 if ($t23_24) {
2193 $block = 7; break;
2194 }
2195 else {
2196 $block = 10; break;
2197 }
2198 break;
2199 }
2200 case 9: {
2201 $t24_25 = $rt.builtin.stringToBytes('\\n');
2202 $t16_17 = $t24_25;
2203 $block = 5; break;
2204 break;
2205 }
2206 case 10: {
2207 $t25_26 = ($t7_8 === 10);
2208 if ($t25_26) {
2209 $block = 9; break;
2210 }
2211 else {
2212 $block = 12; break;
2213 }
2214 break;
2215 }
2216 case 11: {
2217 $t26_27 = $rt.builtin.stringToBytes('\\r');
2218 $t16_17 = $t26_27;
2219 $block = 5; break;
2220 break;
2221 }
2222 case 12: {
2223 $t27_28 = ($t7_8 === 13);
2224 if ($t27_28) {
2225 $block = 11; break;
2226 }
2227 else {
2228 $block = 14; break;
2229 }
2230 break;
2231 }
2232 case 13: {
2233 $t28_29 = $rt.builtin.stringToBytes('\\t');
2234 $t16_17 = $t28_29;
2235 $block = 5; break;
2236 break;
2237 }
2238 case 14: {
2239 $t29_30 = ($t7_8 === 9);
2240 if ($t29_30) {
2241 $block = 13; break;
2242 }
2243 else {
2244 $block = 16; break;
2245 }
2246 break;
2247 }
2248 case 15: {
2249 $t30_31 = $rt.builtin.stringToBytes('\\b');
2250 $t16_17 = $t30_31;
2251 $block = 5; break;
2252 break;
2253 }
2254 case 16: {
2255 $t31_32 = ($t7_8 === 8);
2256 if ($t31_32) {
2257 $block = 15; break;
2258 }
2259 else {
2260 $block = 18; break;
2261 }
2262 break;
2263 }
2264 case 17: {
2265 $t32_33 = $rt.builtin.stringToBytes('\\f');
2266 $t16_17 = $t32_33;
2267 $block = 5; break;
2268 break;
2269 }
2270 case 18: {
2271 $t33_34 = ($t7_8 === 12);
2272 if ($t33_34) {
2273 $block = 17; break;
2274 }
2275 else {
2276 $block = 19; break;
2277 }
2278 break;
2279 }
2280 case 19: {
2281 $t34_35 = ($t7_8 < 32);
2282 if ($t34_35) {
2283 $block = 20; break;
2284 }
2285 else {
2286 $t9_10 = $t1_2;
2287 $t10_11 = $t2_3;
2288 $block = 3; break;
2289 }
2290 break;
2291 }
2292 case 20: {
2293 $t35_36 = $rt.builtin.stringToBytes('\\u00');
2294 $t36_37 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
2295 $t37_38 = $t36_37.$get().addr(0);
2296 $t38_39 = hexChars.$get();
2297 $t39_40 = (($t7_8 & 0xFF) >> 4);
2298 $t40_41 = $t38_39.addr($t39_40);
2299 $t41_42 = $t40_41.$get();
2300 $t37_38.$set($t41_42);
2301 $t42_43 = $rt.builtin.sliceSlice($t36_37.$get(), undefined, undefined, undefined);
2302 $t43_44 = $rt.builtin.stringConcat($t35_36, $t42_43);
2303 $t44_45 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
2304 $t45_46 = $t44_45.$get().addr(0);
2305 $t46_47 = hexChars.$get();
2306 $t47_48 = ($t7_8 & 15);
2307 $t48_49 = $t46_47.addr($t47_48);
2308 $t49_50 = $t48_49.$get();
2309 $t45_46.$set($t49_50);
2310 $t50_51 = $rt.builtin.sliceSlice($t44_45.$get(), undefined, undefined, undefined);
2311 $t51_52 = $rt.builtin.stringConcat($t43_44, $t50_51);
2312 $t16_17 = $t51_52;
2313 $block = 5; break;
2314 break;
2315 }
2316 }
2317 }
2318 }
2319
2320 export function JsonGetString(s, key) {
2321 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43, $t43_44, $t44_45, $t45_46, $t46_47, $t47_48, $t48_49, $t49_50, $t50_51, $t51_52, $t52_53, $t53_54, $t54_55, $t55_56, $t56_57, $t57_58, $t58_59, $t59_60, $t60_61, $t61_62, $t62_63, $t63_64, $t64_65, $t65_66, $t66_67, $t67_68, $t68_69, $t69_70, $t70_71, $t71_72, $t72_73, $t73_74, $t74_75, $t75_76, $t76_77, $t77_78, $t78_79, $t79_80, $t80_81, $t81_82, $t82_83, $t83_84, $t84_85, $t85_86, $t86_87, $t87_88, $t88_89, $t89_90, $t90_91, $t91_92, $t92_93, $t93_94, $t94_95, $t95_96, $t96_97, $t97_98, $t98_99, $t99_100, $t100_101, $t101_102;
2322 let $block = 0;
2323 while (true) {
2324 switch ($block) {
2325 case 0: {
2326 $t0_1 = $rt.builtin.stringToBytes('"');
2327 $t1_2 = $rt.builtin.stringConcat($t0_1, key);
2328 $t2_3 = $rt.builtin.stringToBytes('"');
2329 $t3_4 = $rt.builtin.stringConcat($t1_2, $t2_3);
2330 $t4_5 = $rt.builtin.len($t3_4);
2331 $t5_6 = 0;
2332 $block = 1; break;
2333 break;
2334 }
2335 case 1: {
2336 $t6_7 = $rt.builtin.len(s);
2337 $t7_8 = ($t6_7 - $t4_5);
2338 $t8_9 = ($t5_6 <= $t7_8);
2339 if ($t8_9) {
2340 $block = 2; break;
2341 }
2342 else {
2343 $block = 4; break;
2344 }
2345 break;
2346 }
2347 case 2: {
2348 $t9_10 = ($t5_6 + $t4_5);
2349 $t10_11 = $rt.builtin.sliceSlice(s, $t5_6, $t9_10, undefined);
2350 $t11_12 = $rt.builtin.stringEqual($t10_11, $t3_4);
2351 if ($t11_12) {
2352 $block = 5; break;
2353 }
2354 else {
2355 $block = 3; break;
2356 }
2357 break;
2358 }
2359 case 3: {
2360 $t12_13 = ($t5_6 + 1);
2361 $t5_6 = $t12_13;
2362 $block = 1; break;
2363 break;
2364 }
2365 case 4: {
2366 $t13_14 = $rt.builtin.stringToBytes('');
2367 return $t13_14;
2368 break;
2369 }
2370 case 5: {
2371 $t14_15 = ($t5_6 + $t4_5);
2372 $t18_19 = $t14_15;
2373 $block = 8; break;
2374 break;
2375 }
2376 case 6: {
2377 $t15_16 = ($t18_19 + 1);
2378 $t18_19 = $t15_16;
2379 $block = 8; break;
2380 break;
2381 }
2382 case 7: {
2383 $t16_17 = $rt.builtin.len(s);
2384 $t17_18 = ($t18_19 >= $t16_17);
2385 if ($t17_18) {
2386 $block = 3; break;
2387 }
2388 else {
2389 $block = 14; break;
2390 }
2391 break;
2392 }
2393 case 8: {
2394 $t19_20 = $rt.builtin.len(s);
2395 $t20_21 = ($t18_19 < $t19_20);
2396 if ($t20_21) {
2397 $block = 9; break;
2398 }
2399 else {
2400 $block = 7; break;
2401 }
2402 break;
2403 }
2404 case 9: {
2405 $t21_22 = s.addr($t18_19);
2406 $t22_23 = $t21_22.$get();
2407 $t23_24 = ($t22_23 === 32);
2408 if ($t23_24) {
2409 $block = 6; break;
2410 }
2411 else {
2412 $block = 12; break;
2413 }
2414 break;
2415 }
2416 case 10: {
2417 $t24_25 = s.addr($t18_19);
2418 $t25_26 = $t24_25.$get();
2419 $t26_27 = ($t25_26 === 13);
2420 if ($t26_27) {
2421 $block = 6; break;
2422 }
2423 else {
2424 $block = 7; break;
2425 }
2426 break;
2427 }
2428 case 11: {
2429 $t27_28 = s.addr($t18_19);
2430 $t28_29 = $t27_28.$get();
2431 $t29_30 = ($t28_29 === 10);
2432 if ($t29_30) {
2433 $block = 6; break;
2434 }
2435 else {
2436 $block = 10; break;
2437 }
2438 break;
2439 }
2440 case 12: {
2441 $t30_31 = s.addr($t18_19);
2442 $t31_32 = $t30_31.$get();
2443 $t32_33 = ($t31_32 === 9);
2444 if ($t32_33) {
2445 $block = 6; break;
2446 }
2447 else {
2448 $block = 11; break;
2449 }
2450 break;
2451 }
2452 case 13: {
2453 $t33_34 = ($t18_19 + 1);
2454 $t40_41 = $t33_34;
2455 $block = 17; break;
2456 break;
2457 }
2458 case 14: {
2459 $t34_35 = s.addr($t18_19);
2460 $t35_36 = $t34_35.$get();
2461 $t36_37 = ($t35_36 !== 58);
2462 if ($t36_37) {
2463 $block = 3; break;
2464 }
2465 else {
2466 $block = 13; break;
2467 }
2468 break;
2469 }
2470 case 15: {
2471 $t37_38 = ($t40_41 + 1);
2472 $t40_41 = $t37_38;
2473 $block = 17; break;
2474 break;
2475 }
2476 case 16: {
2477 $t38_39 = $rt.builtin.len(s);
2478 $t39_40 = ($t40_41 >= $t38_39);
2479 if ($t39_40) {
2480 $block = 3; break;
2481 }
2482 else {
2483 $block = 23; break;
2484 }
2485 break;
2486 }
2487 case 17: {
2488 $t41_42 = $rt.builtin.len(s);
2489 $t42_43 = ($t40_41 < $t41_42);
2490 if ($t42_43) {
2491 $block = 18; break;
2492 }
2493 else {
2494 $block = 16; break;
2495 }
2496 break;
2497 }
2498 case 18: {
2499 $t43_44 = s.addr($t40_41);
2500 $t44_45 = $t43_44.$get();
2501 $t45_46 = ($t44_45 === 32);
2502 if ($t45_46) {
2503 $block = 15; break;
2504 }
2505 else {
2506 $block = 21; break;
2507 }
2508 break;
2509 }
2510 case 19: {
2511 $t46_47 = s.addr($t40_41);
2512 $t47_48 = $t46_47.$get();
2513 $t48_49 = ($t47_48 === 13);
2514 if ($t48_49) {
2515 $block = 15; break;
2516 }
2517 else {
2518 $block = 16; break;
2519 }
2520 break;
2521 }
2522 case 20: {
2523 $t49_50 = s.addr($t40_41);
2524 $t50_51 = $t49_50.$get();
2525 $t51_52 = ($t50_51 === 10);
2526 if ($t51_52) {
2527 $block = 15; break;
2528 }
2529 else {
2530 $block = 19; break;
2531 }
2532 break;
2533 }
2534 case 21: {
2535 $t52_53 = s.addr($t40_41);
2536 $t53_54 = $t52_53.$get();
2537 $t54_55 = ($t53_54 === 9);
2538 if ($t54_55) {
2539 $block = 15; break;
2540 }
2541 else {
2542 $block = 20; break;
2543 }
2544 break;
2545 }
2546 case 22: {
2547 $t55_56 = ($t40_41 + 1);
2548 $t56_57 = $rt.builtin.stringToBytes('');
2549 $t63_64 = $t55_56;
2550 $t64_65 = $t55_56;
2551 $t65_66 = $t56_57;
2552 $block = 25; break;
2553 break;
2554 }
2555 case 23: {
2556 $t57_58 = s.addr($t40_41);
2557 $t58_59 = $t57_58.$get();
2558 $t59_60 = ($t58_59 !== 34);
2559 if ($t59_60) {
2560 $block = 3; break;
2561 }
2562 else {
2563 $block = 22; break;
2564 }
2565 break;
2566 }
2567 case 24: {
2568 $t60_61 = s.addr($t63_64);
2569 $t61_62 = $t60_61.$get();
2570 $t62_63 = ($t61_62 === 92);
2571 if ($t62_63) {
2572 $block = 28; break;
2573 }
2574 else {
2575 $block = 27; break;
2576 }
2577 break;
2578 }
2579 case 25: {
2580 $t66_67 = $rt.builtin.len(s);
2581 $t67_68 = ($t63_64 < $t66_67);
2582 if ($t67_68) {
2583 $block = 24; break;
2584 }
2585 else {
2586 $block = 3; break;
2587 }
2588 break;
2589 }
2590 case 26: {
2591 $t68_69 = $rt.builtin.sliceSlice(s, $t64_65, $t63_64, undefined);
2592 $t69_70 = $rt.builtin.stringConcat($t65_66, $t68_69);
2593 $t70_71 = ($t63_64 + 1);
2594 $t71_72 = s.addr($t70_71);
2595 $t72_73 = $t71_72.$get();
2596 $t73_74 = ($t72_73 === 34);
2597 if ($t73_74) {
2598 $block = 30; break;
2599 }
2600 else {
2601 $block = 32; break;
2602 }
2603 break;
2604 }
2605 case 27: {
2606 $t74_75 = s.addr($t63_64);
2607 $t75_76 = $t74_75.$get();
2608 $t76_77 = ($t75_76 === 34);
2609 if ($t76_77) {
2610 $block = 40; break;
2611 }
2612 else {
2613 $block = 41; break;
2614 }
2615 break;
2616 }
2617 case 28: {
2618 $t77_78 = ($t63_64 + 1);
2619 $t78_79 = $rt.builtin.len(s);
2620 $t79_80 = ($t77_78 < $t78_79);
2621 if ($t79_80) {
2622 $block = 26; break;
2623 }
2624 else {
2625 $block = 27; break;
2626 }
2627 break;
2628 }
2629 case 29: {
2630 $t81_82 = ($t70_71 + 1);
2631 $t63_64 = $t81_82;
2632 $t64_65 = $t81_82;
2633 $t65_66 = $t80_81;
2634 $block = 25; break;
2635 break;
2636 }
2637 case 30: {
2638 $t82_83 = ($t70_71 + 1);
2639 $t83_84 = $rt.builtin.sliceSlice(s, $t70_71, $t82_83, undefined);
2640 $t84_85 = $rt.builtin.stringConcat($t69_70, $t83_84);
2641 $t80_81 = $t84_85;
2642 $block = 29; break;
2643 break;
2644 }
2645 case 31: {
2646 $t85_86 = $rt.builtin.stringToBytes('\n');
2647 $t86_87 = $rt.builtin.stringConcat($t69_70, $t85_86);
2648 $t80_81 = $t86_87;
2649 $block = 29; break;
2650 break;
2651 }
2652 case 32: {
2653 $t87_88 = ($t72_73 === 92);
2654 if ($t87_88) {
2655 $block = 30; break;
2656 }
2657 else {
2658 $block = 33; break;
2659 }
2660 break;
2661 }
2662 case 33: {
2663 $t88_89 = ($t72_73 === 47);
2664 if ($t88_89) {
2665 $block = 30; break;
2666 }
2667 else {
2668 $block = 34; break;
2669 }
2670 break;
2671 }
2672 case 34: {
2673 $t89_90 = ($t72_73 === 110);
2674 if ($t89_90) {
2675 $block = 31; break;
2676 }
2677 else {
2678 $block = 36; break;
2679 }
2680 break;
2681 }
2682 case 35: {
2683 $t90_91 = $rt.builtin.stringToBytes('\r');
2684 $t91_92 = $rt.builtin.stringConcat($t69_70, $t90_91);
2685 $t80_81 = $t91_92;
2686 $block = 29; break;
2687 break;
2688 }
2689 case 36: {
2690 $t92_93 = ($t72_73 === 114);
2691 if ($t92_93) {
2692 $block = 35; break;
2693 }
2694 else {
2695 $block = 38; break;
2696 }
2697 break;
2698 }
2699 case 37: {
2700 $t93_94 = $rt.builtin.stringToBytes('\t');
2701 $t94_95 = $rt.builtin.stringConcat($t69_70, $t93_94);
2702 $t80_81 = $t94_95;
2703 $block = 29; break;
2704 break;
2705 }
2706 case 38: {
2707 $t95_96 = ($t72_73 === 116);
2708 if ($t95_96) {
2709 $block = 37; break;
2710 }
2711 else {
2712 $block = 39; break;
2713 }
2714 break;
2715 }
2716 case 39: {
2717 $t96_97 = ($t70_71 + 1);
2718 $t97_98 = $rt.builtin.sliceSlice(s, $t70_71, $t96_97, undefined);
2719 $t98_99 = $rt.builtin.stringConcat($t69_70, $t97_98);
2720 $t80_81 = $t98_99;
2721 $block = 29; break;
2722 break;
2723 }
2724 case 40: {
2725 $t99_100 = $rt.builtin.sliceSlice(s, $t64_65, $t63_64, undefined);
2726 $t100_101 = $rt.builtin.stringConcat($t65_66, $t99_100);
2727 return $t100_101;
2728 break;
2729 }
2730 case 41: {
2731 $t101_102 = ($t63_64 + 1);
2732 let $phi0 = $t101_102;
2733 let $phi1 = $t64_65;
2734 let $phi2 = $t65_66;
2735 $t63_64 = $phi0;
2736 $t64_65 = $phi1;
2737 $t65_66 = $phi2;
2738 $block = 25; break;
2739 break;
2740 }
2741 }
2742 }
2743 }
2744
2745 export function JsonGetValue(s, key) {
2746 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43, $t43_44, $t44_45, $t45_46, $t46_47, $t47_48, $t48_49, $t49_50, $t50_51, $t51_52, $t52_53, $t53_54, $t54_55, $t55_56, $t56_57, $t57_58, $t58_59, $t59_60, $t60_61, $t61_62, $t62_63, $t63_64, $t64_65, $t65_66, $t66_67, $t67_68, $t68_69, $t69_70, $t70_71, $t71_72, $t72_73, $t73_74, $t74_75, $t75_76, $t76_77, $t77_78, $t78_79, $t79_80, $t80_81, $t81_82, $t82_83, $t83_84, $t84_85, $t85_86, $t86_87, $t87_88, $t88_89, $t89_90, $t90_91, $t91_92, $t92_93, $t93_94, $t94_95, $t95_96, $t96_97, $t97_98, $t98_99, $t99_100, $t100_101, $t101_102, $t102_103, $t103_104, $t104_105, $t105_106, $t106_107, $t107_108, $t108_109, $t109_110, $t110_111, $t111_112, $t112_113, $t113_114, $t114_115, $t115_116, $t116_117, $t117_118, $t118_119, $t119_120, $t120_121, $t121_122, $t122_123, $t123_124, $t124_125, $t125_126, $t126_127, $t127_128, $t128_129, $t129_130, $t130_131, $t131_132, $t132_133, $t133_134, $t134_135, $t135_136, $t136_137, $t137_138, $t138_139;
2747 let $block = 0;
2748 while (true) {
2749 switch ($block) {
2750 case 0: {
2751 $t0_1 = $rt.builtin.stringToBytes('"');
2752 $t1_2 = $rt.builtin.stringConcat($t0_1, key);
2753 $t2_3 = $rt.builtin.stringToBytes('"');
2754 $t3_4 = $rt.builtin.stringConcat($t1_2, $t2_3);
2755 $t4_5 = $rt.builtin.len($t3_4);
2756 $t5_6 = 0;
2757 $block = 1; break;
2758 break;
2759 }
2760 case 1: {
2761 $t6_7 = $rt.builtin.len(s);
2762 $t7_8 = ($t6_7 - $t4_5);
2763 $t8_9 = ($t5_6 <= $t7_8);
2764 if ($t8_9) {
2765 $block = 2; break;
2766 }
2767 else {
2768 $block = 4; break;
2769 }
2770 break;
2771 }
2772 case 2: {
2773 $t9_10 = ($t5_6 + $t4_5);
2774 $t10_11 = $rt.builtin.sliceSlice(s, $t5_6, $t9_10, undefined);
2775 $t11_12 = $rt.builtin.stringEqual($t10_11, $t3_4);
2776 if ($t11_12) {
2777 $block = 5; break;
2778 }
2779 else {
2780 $block = 3; break;
2781 }
2782 break;
2783 }
2784 case 3: {
2785 $t12_13 = ($t5_6 + 1);
2786 $t5_6 = $t12_13;
2787 $block = 1; break;
2788 break;
2789 }
2790 case 4: {
2791 $t13_14 = $rt.builtin.stringToBytes('');
2792 return $t13_14;
2793 break;
2794 }
2795 case 5: {
2796 $t14_15 = ($t5_6 + $t4_5);
2797 $t18_19 = $t14_15;
2798 $block = 8; break;
2799 break;
2800 }
2801 case 6: {
2802 $t15_16 = ($t18_19 + 1);
2803 $t18_19 = $t15_16;
2804 $block = 8; break;
2805 break;
2806 }
2807 case 7: {
2808 $t16_17 = $rt.builtin.len(s);
2809 $t17_18 = ($t18_19 >= $t16_17);
2810 if ($t17_18) {
2811 $block = 3; break;
2812 }
2813 else {
2814 $block = 14; break;
2815 }
2816 break;
2817 }
2818 case 8: {
2819 $t19_20 = $rt.builtin.len(s);
2820 $t20_21 = ($t18_19 < $t19_20);
2821 if ($t20_21) {
2822 $block = 9; break;
2823 }
2824 else {
2825 $block = 7; break;
2826 }
2827 break;
2828 }
2829 case 9: {
2830 $t21_22 = s.addr($t18_19);
2831 $t22_23 = $t21_22.$get();
2832 $t23_24 = ($t22_23 === 32);
2833 if ($t23_24) {
2834 $block = 6; break;
2835 }
2836 else {
2837 $block = 12; break;
2838 }
2839 break;
2840 }
2841 case 10: {
2842 $t24_25 = s.addr($t18_19);
2843 $t25_26 = $t24_25.$get();
2844 $t26_27 = ($t25_26 === 13);
2845 if ($t26_27) {
2846 $block = 6; break;
2847 }
2848 else {
2849 $block = 7; break;
2850 }
2851 break;
2852 }
2853 case 11: {
2854 $t27_28 = s.addr($t18_19);
2855 $t28_29 = $t27_28.$get();
2856 $t29_30 = ($t28_29 === 10);
2857 if ($t29_30) {
2858 $block = 6; break;
2859 }
2860 else {
2861 $block = 10; break;
2862 }
2863 break;
2864 }
2865 case 12: {
2866 $t30_31 = s.addr($t18_19);
2867 $t31_32 = $t30_31.$get();
2868 $t32_33 = ($t31_32 === 9);
2869 if ($t32_33) {
2870 $block = 6; break;
2871 }
2872 else {
2873 $block = 11; break;
2874 }
2875 break;
2876 }
2877 case 13: {
2878 $t33_34 = ($t18_19 + 1);
2879 $t40_41 = $t33_34;
2880 $block = 17; break;
2881 break;
2882 }
2883 case 14: {
2884 $t34_35 = s.addr($t18_19);
2885 $t35_36 = $t34_35.$get();
2886 $t36_37 = ($t35_36 !== 58);
2887 if ($t36_37) {
2888 $block = 3; break;
2889 }
2890 else {
2891 $block = 13; break;
2892 }
2893 break;
2894 }
2895 case 15: {
2896 $t37_38 = ($t40_41 + 1);
2897 $t40_41 = $t37_38;
2898 $block = 17; break;
2899 break;
2900 }
2901 case 16: {
2902 $t38_39 = $rt.builtin.len(s);
2903 $t39_40 = ($t40_41 >= $t38_39);
2904 if ($t39_40) {
2905 $block = 3; break;
2906 }
2907 else {
2908 $block = 22; break;
2909 }
2910 break;
2911 }
2912 case 17: {
2913 $t41_42 = $rt.builtin.len(s);
2914 $t42_43 = ($t40_41 < $t41_42);
2915 if ($t42_43) {
2916 $block = 18; break;
2917 }
2918 else {
2919 $block = 16; break;
2920 }
2921 break;
2922 }
2923 case 18: {
2924 $t43_44 = s.addr($t40_41);
2925 $t44_45 = $t43_44.$get();
2926 $t45_46 = ($t44_45 === 32);
2927 if ($t45_46) {
2928 $block = 15; break;
2929 }
2930 else {
2931 $block = 21; break;
2932 }
2933 break;
2934 }
2935 case 19: {
2936 $t46_47 = s.addr($t40_41);
2937 $t47_48 = $t46_47.$get();
2938 $t48_49 = ($t47_48 === 13);
2939 if ($t48_49) {
2940 $block = 15; break;
2941 }
2942 else {
2943 $block = 16; break;
2944 }
2945 break;
2946 }
2947 case 20: {
2948 $t49_50 = s.addr($t40_41);
2949 $t50_51 = $t49_50.$get();
2950 $t51_52 = ($t50_51 === 10);
2951 if ($t51_52) {
2952 $block = 15; break;
2953 }
2954 else {
2955 $block = 19; break;
2956 }
2957 break;
2958 }
2959 case 21: {
2960 $t52_53 = s.addr($t40_41);
2961 $t53_54 = $t52_53.$get();
2962 $t54_55 = ($t53_54 === 9);
2963 if ($t54_55) {
2964 $block = 15; break;
2965 }
2966 else {
2967 $block = 20; break;
2968 }
2969 break;
2970 }
2971 case 22: {
2972 $t55_56 = s.addr($t40_41);
2973 $t56_57 = $t55_56.$get();
2974 $t57_58 = ($t56_57 === 123);
2975 if ($t57_58) {
2976 $block = 23; break;
2977 }
2978 else {
2979 $block = 25; break;
2980 }
2981 break;
2982 }
2983 case 23: {
2984 $t58_59 = s.addr($t40_41);
2985 $t59_60 = $t58_59.$get();
2986 $t60_61 = ($t59_60 === 91);
2987 if ($t60_61) {
2988 $block = 27; break;
2989 }
2990 else {
2991 $t64_65 = 125;
2992 $block = 28; break;
2993 }
2994 break;
2995 }
2996 case 24: {
2997 $t61_62 = ($t40_41 + 1);
2998 $t104_105 = $t61_62;
2999 $block = 46; break;
3000 break;
3001 }
3002 case 25: {
3003 $t62_63 = ($t56_57 === 91);
3004 if ($t62_63) {
3005 $block = 23; break;
3006 }
3007 else {
3008 $block = 26; break;
3009 }
3010 break;
3011 }
3012 case 26: {
3013 $t63_64 = ($t56_57 === 34);
3014 if ($t63_64) {
3015 $block = 24; break;
3016 }
3017 else {
3018 $t115_116 = $t40_41;
3019 $block = 52; break;
3020 }
3021 break;
3022 }
3023 case 27: {
3024 $t64_65 = 93;
3025 $block = 28; break;
3026 break;
3027 }
3028 case 28: {
3029 $t65_66 = ($t40_41 + 1);
3030 $t70_71 = $t65_66;
3031 $t71_72 = 1;
3032 $block = 31; break;
3033 break;
3034 }
3035 case 29: {
3036 $t66_67 = s.addr($t70_71);
3037 $t67_68 = $t66_67.$get();
3038 $t68_69 = ($t67_68 === $t59_60);
3039 if ($t68_69) {
3040 $block = 33; break;
3041 }
3042 else {
3043 $block = 35; break;
3044 }
3045 break;
3046 }
3047 case 30: {
3048 $t69_70 = $rt.builtin.sliceSlice(s, $t40_41, $t70_71, undefined);
3049 return $t69_70;
3050 break;
3051 }
3052 case 31: {
3053 $t72_73 = $rt.builtin.len(s);
3054 $t73_74 = ($t70_71 < $t72_73);
3055 if ($t73_74) {
3056 $block = 32; break;
3057 }
3058 else {
3059 $block = 30; break;
3060 }
3061 break;
3062 }
3063 case 32: {
3064 $t74_75 = ($t71_72 > 0);
3065 if ($t74_75) {
3066 $block = 29; break;
3067 }
3068 else {
3069 $block = 30; break;
3070 }
3071 break;
3072 }
3073 case 33: {
3074 $t75_76 = ($t71_72 + 1);
3075 $t76_77 = $t70_71;
3076 $t77_78 = $t75_76;
3077 $block = 34; break;
3078 break;
3079 }
3080 case 34: {
3081 $t78_79 = ($t76_77 + 1);
3082 $t70_71 = $t78_79;
3083 $t71_72 = $t77_78;
3084 $block = 31; break;
3085 break;
3086 }
3087 case 35: {
3088 $t79_80 = s.addr($t70_71);
3089 $t80_81 = $t79_80.$get();
3090 $t81_82 = ($t80_81 === $t64_65);
3091 if ($t81_82) {
3092 $block = 36; break;
3093 }
3094 else {
3095 $block = 37; break;
3096 }
3097 break;
3098 }
3099 case 36: {
3100 $t82_83 = ($t71_72 - 1);
3101 $t76_77 = $t70_71;
3102 $t77_78 = $t82_83;
3103 $block = 34; break;
3104 break;
3105 }
3106 case 37: {
3107 $t83_84 = s.addr($t70_71);
3108 $t84_85 = $t83_84.$get();
3109 $t85_86 = ($t84_85 === 34);
3110 if ($t85_86) {
3111 $block = 38; break;
3112 }
3113 else {
3114 $t76_77 = $t70_71;
3115 $t77_78 = $t71_72;
3116 $block = 34; break;
3117 }
3118 break;
3119 }
3120 case 38: {
3121 $t86_87 = ($t70_71 + 1);
3122 $t90_91 = $t86_87;
3123 $block = 40; break;
3124 break;
3125 }
3126 case 39: {
3127 $t87_88 = s.addr($t90_91);
3128 $t88_89 = $t87_88.$get();
3129 $t89_90 = ($t88_89 === 92);
3130 if ($t89_90) {
3131 $block = 42; break;
3132 }
3133 else {
3134 $t97_98 = $t90_91;
3135 $block = 43; break;
3136 }
3137 break;
3138 }
3139 case 40: {
3140 $t91_92 = $rt.builtin.len(s);
3141 $t92_93 = ($t90_91 < $t91_92);
3142 if ($t92_93) {
3143 $block = 41; break;
3144 }
3145 else {
3146 $t76_77 = $t90_91;
3147 $t77_78 = $t71_72;
3148 $block = 34; break;
3149 }
3150 break;
3151 }
3152 case 41: {
3153 $t93_94 = s.addr($t90_91);
3154 $t94_95 = $t93_94.$get();
3155 $t95_96 = ($t94_95 !== 34);
3156 if ($t95_96) {
3157 $block = 39; break;
3158 }
3159 else {
3160 $t76_77 = $t90_91;
3161 $t77_78 = $t71_72;
3162 $block = 34; break;
3163 }
3164 break;
3165 }
3166 case 42: {
3167 $t96_97 = ($t90_91 + 1);
3168 $t97_98 = $t96_97;
3169 $block = 43; break;
3170 break;
3171 }
3172 case 43: {
3173 $t98_99 = ($t97_98 + 1);
3174 $t90_91 = $t98_99;
3175 $block = 40; break;
3176 break;
3177 }
3178 case 44: {
3179 $t99_100 = s.addr($t104_105);
3180 $t100_101 = $t99_100.$get();
3181 $t101_102 = ($t100_101 === 92);
3182 if ($t101_102) {
3183 $block = 48; break;
3184 }
3185 else {
3186 $t111_112 = $t104_105;
3187 $block = 49; break;
3188 }
3189 break;
3190 }
3191 case 45: {
3192 $t102_103 = ($t104_105 + 1);
3193 $t103_104 = $rt.builtin.sliceSlice(s, $t40_41, $t102_103, undefined);
3194 return $t103_104;
3195 break;
3196 }
3197 case 46: {
3198 $t105_106 = $rt.builtin.len(s);
3199 $t106_107 = ($t104_105 < $t105_106);
3200 if ($t106_107) {
3201 $block = 47; break;
3202 }
3203 else {
3204 $block = 45; break;
3205 }
3206 break;
3207 }
3208 case 47: {
3209 $t107_108 = s.addr($t104_105);
3210 $t108_109 = $t107_108.$get();
3211 $t109_110 = ($t108_109 !== 34);
3212 if ($t109_110) {
3213 $block = 44; break;
3214 }
3215 else {
3216 $block = 45; break;
3217 }
3218 break;
3219 }
3220 case 48: {
3221 $t110_111 = ($t104_105 + 1);
3222 $t111_112 = $t110_111;
3223 $block = 49; break;
3224 break;
3225 }
3226 case 49: {
3227 $t112_113 = ($t111_112 + 1);
3228 $t104_105 = $t112_113;
3229 $block = 46; break;
3230 break;
3231 }
3232 case 50: {
3233 $t113_114 = ($t115_116 + 1);
3234 $t115_116 = $t113_114;
3235 $block = 52; break;
3236 break;
3237 }
3238 case 51: {
3239 $t114_115 = $rt.builtin.sliceSlice(s, $t40_41, $t115_116, undefined);
3240 return $t114_115;
3241 break;
3242 }
3243 case 52: {
3244 $t116_117 = $rt.builtin.len(s);
3245 $t117_118 = ($t115_116 < $t116_117);
3246 if ($t117_118) {
3247 $block = 59; break;
3248 }
3249 else {
3250 $block = 51; break;
3251 }
3252 break;
3253 }
3254 case 53: {
3255 $t118_119 = s.addr($t115_116);
3256 $t119_120 = $t118_119.$get();
3257 $t120_121 = ($t119_120 !== 13);
3258 if ($t120_121) {
3259 $block = 50; break;
3260 }
3261 else {
3262 $block = 51; break;
3263 }
3264 break;
3265 }
3266 case 54: {
3267 $t121_122 = s.addr($t115_116);
3268 $t122_123 = $t121_122.$get();
3269 $t123_124 = ($t122_123 !== 10);
3270 if ($t123_124) {
3271 $block = 53; break;
3272 }
3273 else {
3274 $block = 51; break;
3275 }
3276 break;
3277 }
3278 case 55: {
3279 $t124_125 = s.addr($t115_116);
3280 $t125_126 = $t124_125.$get();
3281 $t126_127 = ($t125_126 !== 9);
3282 if ($t126_127) {
3283 $block = 54; break;
3284 }
3285 else {
3286 $block = 51; break;
3287 }
3288 break;
3289 }
3290 case 56: {
3291 $t127_128 = s.addr($t115_116);
3292 $t128_129 = $t127_128.$get();
3293 $t129_130 = ($t128_129 !== 32);
3294 if ($t129_130) {
3295 $block = 55; break;
3296 }
3297 else {
3298 $block = 51; break;
3299 }
3300 break;
3301 }
3302 case 57: {
3303 $t130_131 = s.addr($t115_116);
3304 $t131_132 = $t130_131.$get();
3305 $t132_133 = ($t131_132 !== 93);
3306 if ($t132_133) {
3307 $block = 56; break;
3308 }
3309 else {
3310 $block = 51; break;
3311 }
3312 break;
3313 }
3314 case 58: {
3315 $t133_134 = s.addr($t115_116);
3316 $t134_135 = $t133_134.$get();
3317 $t135_136 = ($t134_135 !== 125);
3318 if ($t135_136) {
3319 $block = 57; break;
3320 }
3321 else {
3322 $block = 51; break;
3323 }
3324 break;
3325 }
3326 case 59: {
3327 $t136_137 = s.addr($t115_116);
3328 $t137_138 = $t136_137.$get();
3329 $t138_139 = ($t137_138 !== 44);
3330 if ($t138_139) {
3331 $block = 58; break;
3332 }
3333 else {
3334 $block = 51; break;
3335 }
3336 break;
3337 }
3338 }
3339 }
3340 }
3341
3342 export function JsonGetBool(s, key) {
3343 let $t0_1, $t1_2, $t2_3;
3344 $t0_1 = JsonGetValue(s, key);
3345 $t1_2 = $rt.builtin.stringToBytes('true');
3346 $t2_3 = $rt.builtin.stringEqual($t0_1, $t1_2);
3347 return $t2_3;
3348 }
3349
3350 export function JsonGetIntArray(s, key) {
3351 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20, $t20_21, $t21_22, $t22_23, $t23_24, $t24_25, $t25_26, $t26_27, $t27_28, $t28_29, $t29_30, $t30_31, $t31_32, $t32_33, $t33_34, $t34_35, $t35_36, $t36_37, $t37_38, $t38_39, $t39_40, $t40_41, $t41_42, $t42_43, $t43_44, $t44_45, $t45_46, $t46_47, $t47_48, $t48_49, $t49_50, $t50_51, $t51_52, $t52_53, $t53_54, $t54_55, $t55_56, $t56_57, $t57_58, $t58_59, $t59_60, $t60_61, $t61_62, $t62_63, $t63_64, $t64_65, $t65_66, $t66_67, $t67_68, $t68_69, $t69_70, $t70_71, $t71_72, $t72_73, $t73_74, $t74_75, $t75_76, $t76_77;
3352 let $block = 0;
3353 while (true) {
3354 switch ($block) {
3355 case 0: {
3356 $t0_1 = JsonGetValue(s, key);
3357 $t1_2 = $rt.builtin.len($t0_1);
3358 $t2_3 = ($t1_2 < 2);
3359 if ($t2_3) {
3360 $block = 1; break;
3361 }
3362 else {
3363 $block = 3; break;
3364 }
3365 break;
3366 }
3367 case 1: {
3368 return null;
3369 break;
3370 }
3371 case 2: {
3372 $t6_7 = null;
3373 $t7_8 = 1;
3374 $block = 5; break;
3375 break;
3376 }
3377 case 3: {
3378 $t3_4 = $t0_1.addr(0);
3379 $t4_5 = $t3_4.$get();
3380 $t5_6 = ($t4_5 !== 91);
3381 if ($t5_6) {
3382 $block = 1; break;
3383 }
3384 else {
3385 $block = 2; break;
3386 }
3387 break;
3388 }
3389 case 4: {
3390 return $t6_7;
3391 break;
3392 }
3393 case 5: {
3394 $t8_9 = $rt.builtin.len($t0_1);
3395 $t9_10 = ($t7_8 < $t8_9);
3396 if ($t9_10) {
3397 $t13_14 = $t7_8;
3398 $block = 8; break;
3399 }
3400 else {
3401 $block = 4; break;
3402 }
3403 break;
3404 }
3405 case 6: {
3406 $t10_11 = ($t13_14 + 1);
3407 $t13_14 = $t10_11;
3408 $block = 8; break;
3409 break;
3410 }
3411 case 7: {
3412 $t11_12 = $rt.builtin.len($t0_1);
3413 $t12_13 = ($t13_14 >= $t11_12);
3414 if ($t12_13) {
3415 $block = 4; break;
3416 }
3417 else {
3418 $block = 15; break;
3419 }
3420 break;
3421 }
3422 case 8: {
3423 $t14_15 = $rt.builtin.len($t0_1);
3424 $t15_16 = ($t13_14 < $t14_15);
3425 if ($t15_16) {
3426 $block = 9; break;
3427 }
3428 else {
3429 $block = 7; break;
3430 }
3431 break;
3432 }
3433 case 9: {
3434 $t16_17 = $t0_1.addr($t13_14);
3435 $t17_18 = $t16_17.$get();
3436 $t18_19 = ($t17_18 === 32);
3437 if ($t18_19) {
3438 $block = 6; break;
3439 }
3440 else {
3441 $block = 13; break;
3442 }
3443 break;
3444 }
3445 case 10: {
3446 $t19_20 = $t0_1.addr($t13_14);
3447 $t20_21 = $t19_20.$get();
3448 $t21_22 = ($t20_21 === 44);
3449 if ($t21_22) {
3450 $block = 6; break;
3451 }
3452 else {
3453 $block = 7; break;
3454 }
3455 break;
3456 }
3457 case 11: {
3458 $t22_23 = $t0_1.addr($t13_14);
3459 $t23_24 = $t22_23.$get();
3460 $t24_25 = ($t23_24 === 13);
3461 if ($t24_25) {
3462 $block = 6; break;
3463 }
3464 else {
3465 $block = 10; break;
3466 }
3467 break;
3468 }
3469 case 12: {
3470 $t25_26 = $t0_1.addr($t13_14);
3471 $t26_27 = $t25_26.$get();
3472 $t27_28 = ($t26_27 === 10);
3473 if ($t27_28) {
3474 $block = 6; break;
3475 }
3476 else {
3477 $block = 11; break;
3478 }
3479 break;
3480 }
3481 case 13: {
3482 $t28_29 = $t0_1.addr($t13_14);
3483 $t29_30 = $t28_29.$get();
3484 $t30_31 = ($t29_30 === 9);
3485 if ($t30_31) {
3486 $block = 6; break;
3487 }
3488 else {
3489 $block = 12; break;
3490 }
3491 break;
3492 }
3493 case 14: {
3494 $t31_32 = $t0_1.addr($t13_14);
3495 $t32_33 = $t31_32.$get();
3496 $t33_34 = ($t32_33 === 45);
3497 if ($t33_34) {
3498 $block = 16; break;
3499 }
3500 else {
3501 $t38_39 = $t13_14;
3502 $t39_40 = false;
3503 $block = 17; break;
3504 }
3505 break;
3506 }
3507 case 15: {
3508 $t34_35 = $t0_1.addr($t13_14);
3509 $t35_36 = $t34_35.$get();
3510 $t36_37 = ($t35_36 === 93);
3511 if ($t36_37) {
3512 $block = 4; break;
3513 }
3514 else {
3515 $block = 14; break;
3516 }
3517 break;
3518 }
3519 case 16: {
3520 $t37_38 = ($t13_14 + 1);
3521 $t38_39 = $t37_38;
3522 $t39_40 = true;
3523 $block = 17; break;
3524 break;
3525 }
3526 case 17: {
3527 $t42_43 = $t38_39;
3528 $block = 20; break;
3529 break;
3530 }
3531 case 18: {
3532 $t40_41 = ($t42_43 + 1);
3533 $t42_43 = $t40_41;
3534 $block = 20; break;
3535 break;
3536 }
3537 case 19: {
3538 $t41_42 = ($t42_43 === $t38_39);
3539 if ($t41_42) {
3540 $t52_53 = $t42_43;
3541 $block = 25; break;
3542 }
3543 else {
3544 $block = 23; break;
3545 }
3546 break;
3547 }
3548 case 20: {
3549 $t43_44 = $rt.builtin.len($t0_1);
3550 $t44_45 = ($t42_43 < $t43_44);
3551 if ($t44_45) {
3552 $block = 22; break;
3553 }
3554 else {
3555 $block = 19; break;
3556 }
3557 break;
3558 }
3559 case 21: {
3560 $t45_46 = $t0_1.addr($t42_43);
3561 $t46_47 = $t45_46.$get();
3562 $t47_48 = ($t46_47 <= 57);
3563 if ($t47_48) {
3564 $block = 18; break;
3565 }
3566 else {
3567 $block = 19; break;
3568 }
3569 break;
3570 }
3571 case 22: {
3572 $t48_49 = $t0_1.addr($t42_43);
3573 $t49_50 = $t48_49.$get();
3574 $t50_51 = ($t49_50 >= 48);
3575 if ($t50_51) {
3576 $block = 21; break;
3577 }
3578 else {
3579 $block = 19; break;
3580 }
3581 break;
3582 }
3583 case 23: {
3584 $t61_62 = 0;
3585 $t62_63 = $t38_39;
3586 $block = 28; break;
3587 break;
3588 }
3589 case 24: {
3590 $t51_52 = ($t52_53 + 1);
3591 $t52_53 = $t51_52;
3592 $block = 25; break;
3593 break;
3594 }
3595 case 25: {
3596 $t53_54 = $rt.builtin.len($t0_1);
3597 $t54_55 = ($t52_53 < $t53_54);
3598 if ($t54_55) {
3599 $block = 27; break;
3600 }
3601 else {
3602 let $phi0 = $t6_7;
3603 let $phi1 = $t52_53;
3604 $t6_7 = $phi0;
3605 $t7_8 = $phi1;
3606 $block = 5; break;
3607 }
3608 break;
3609 }
3610 case 26: {
3611 $t55_56 = $t0_1.addr($t52_53);
3612 $t56_57 = $t55_56.$get();
3613 $t57_58 = ($t56_57 !== 93);
3614 if ($t57_58) {
3615 $block = 24; break;
3616 }
3617 else {
3618 let $phi0 = $t6_7;
3619 let $phi1 = $t52_53;
3620 $t6_7 = $phi0;
3621 $t7_8 = $phi1;
3622 $block = 5; break;
3623 }
3624 break;
3625 }
3626 case 27: {
3627 $t58_59 = $t0_1.addr($t52_53);
3628 $t59_60 = $t58_59.$get();
3629 $t60_61 = ($t59_60 !== 44);
3630 if ($t60_61) {
3631 $block = 26; break;
3632 }
3633 else {
3634 let $phi0 = $t6_7;
3635 let $phi1 = $t52_53;
3636 $t6_7 = $phi0;
3637 $t7_8 = $phi1;
3638 $block = 5; break;
3639 }
3640 break;
3641 }
3642 case 28: {
3643 $t63_64 = ($t62_63 < $t42_43);
3644 if ($t63_64) {
3645 $block = 29; break;
3646 }
3647 else {
3648 $block = 30; break;
3649 }
3650 break;
3651 }
3652 case 29: {
3653 $t64_65 = ($t61_62 * 10);
3654 $t65_66 = $t0_1.addr($t62_63);
3655 $t66_67 = $t65_66.$get();
3656 $t67_68 = (($t66_67 - 48) & 0xFF);
3657 $t68_69 = $t67_68;
3658 $t69_70 = ($t64_65 + $t68_69);
3659 $t70_71 = ($t62_63 + 1);
3660 $t61_62 = $t69_70;
3661 $t62_63 = $t70_71;
3662 $block = 28; break;
3663 break;
3664 }
3665 case 30: {
3666 if ($t39_40) {
3667 $block = 31; break;
3668 }
3669 else {
3670 $t72_73 = $t61_62;
3671 $block = 32; break;
3672 }
3673 break;
3674 }
3675 case 31: {
3676 $t71_72 = -$t61_62;
3677 $t72_73 = $t71_72;
3678 $block = 32; break;
3679 break;
3680 }
3681 case 32: {
3682 $t73_74 = { $value: $rt.builtin.makeSlice(1, 1, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
3683 $t74_75 = $t73_74.$get().addr(0);
3684 $t74_75.$set($t72_73);
3685 $t75_76 = $rt.builtin.sliceSlice($t73_74.$get(), undefined, undefined, undefined);
3686 $t76_77 = $rt.builtin.appendSlice($t6_7, $t75_76);
3687 $t6_7 = $t76_77;
3688 $t7_8 = $t42_43;
3689 $block = 5; break;
3690 break;
3691 }
3692 }
3693 }
3694 }
3695
3696 export function Itoa(n) {
3697 let $t0_1, $t1_2, $t2_3, $t3_4, $t4_5, $t5_6, $t6_7, $t7_8, $t8_9, $t9_10, $t10_11, $t11_12, $t12_13, $t13_14, $t14_15, $t15_16, $t16_17, $t17_18, $t18_19, $t19_20;
3698 let $block = 0;
3699 while (true) {
3700 switch ($block) {
3701 case 0: {
3702 $t0_1 = (n === 0n);
3703 if ($t0_1) {
3704 $block = 1; break;
3705 }
3706 else {
3707 $block = 2; break;
3708 }
3709 break;
3710 }
3711 case 1: {
3712 $t1_2 = $rt.builtin.stringToBytes('0');
3713 return $t1_2;
3714 break;
3715 }
3716 case 2: {
3717 $t2_3 = (n < 0n);
3718 if ($t2_3) {
3719 $block = 3; break;
3720 }
3721 else {
3722 $t4_5 = n;
3723 $t5_6 = false;
3724 $block = 4; break;
3725 }
3726 break;
3727 }
3728 case 3: {
3729 $t3_4 = -n;
3730 $t4_5 = $t3_4;
3731 $t5_6 = true;
3732 $block = 4; break;
3733 break;
3734 }
3735 case 4: {
3736 $t6_7 = { $value: $rt.builtin.makeSlice(20, 20, 0), $get() { return this.$value; }, $set(v) { this.$value = v; } };
3737 $t13_14 = $t4_5;
3738 $t14_15 = 20;
3739 $block = 7; break;
3740 break;
3741 }
3742 case 5: {
3743 $t7_8 = ($t14_15 - 1);
3744 $t8_9 = ($t13_14 % 10n);
3745 $t9_10 = BigInt.asIntN(64, 48n + $t8_9);
3746 $t10_11 = (Number($t9_10) & 0xFF);
3747 $t11_12 = $t6_7.$get().addr($t7_8);
3748 $t11_12.$set($t10_11);
3749 $t12_13 = BigInt.asIntN(64, $t13_14 / 10n);
3750 $t13_14 = $t12_13;
3751 $t14_15 = $t7_8;
3752 $block = 7; break;
3753 break;
3754 }
3755 case 6: {
3756 if ($t5_6) {
3757 $block = 8; break;
3758 }
3759 else {
3760 $t18_19 = $t14_15;
3761 $block = 9; break;
3762 }
3763 break;
3764 }
3765 case 7: {
3766 $t15_16 = ($t13_14 > 0n);
3767 if ($t15_16) {
3768 $block = 5; break;
3769 }
3770 else {
3771 $block = 6; break;
3772 }
3773 break;
3774 }
3775 case 8: {
3776 $t16_17 = ($t14_15 - 1);
3777 $t17_18 = $t6_7.$get().addr($t16_17);
3778 $t17_18.$set(45);
3779 $t18_19 = $t16_17;
3780 $block = 9; break;
3781 break;
3782 }
3783 case 9: {
3784 $t19_20 = $rt.builtin.sliceSlice($t6_7.$get(), $t18_19, undefined, undefined);
3785 return $t19_20;
3786 break;
3787 }
3788 }
3789 }
3790 }
3791
3792 export function __moxie_concat(a, b) {
3793 let $t0_1;
3794 $t0_1 = $rt.types.makeInterface('string', '__moxie_concat: compiler failed to intercept');
3795 $rt.runtime.panic($t0_1);
3796 }
3797
3798 export function __moxie_eq(a, b) {
3799 let $t0_1;
3800 $t0_1 = $rt.types.makeInterface('string', '__moxie_eq: compiler failed to intercept');
3801 $rt.runtime.panic($t0_1);
3802 }
3803
3804 export function __moxie_lt(a, b) {
3805 let $t0_1;
3806 $t0_1 = $rt.types.makeInterface('string', '__moxie_lt: compiler failed to intercept');
3807 $rt.runtime.panic($t0_1);
3808 }
3809
3810 export function __moxie_secalloc(n) {
3811 let $t0_1;
3812 $t0_1 = $rt.types.makeInterface('string', '__moxie_secalloc: compiler failed to intercept');
3813 $rt.runtime.panic($t0_1);
3814 }
3815
3816