1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3
4 #include "nimbase.h"
5 #undef LANGUAGE_C
6 #undef MIPSEB
7 #undef MIPSEL
8 #undef PPC
9 #undef R3000
10 #undef R4000
11 #undef i386
12 #undef linux
13 #undef mips
14 #undef near
15 #undef far
16 #undef powerpc
17 #undef unix
18 #define nimfr_(x, y)
19 #define nimln_(x, y)
20 typedef struct NimStringDesc NimStringDesc;
21 typedef struct TGenericSeq TGenericSeq;
22 struct TGenericSeq {
23 NI len;
24 NI reserved;
25 };
26 struct NimStringDesc {
27 TGenericSeq Sup;
28 NIM_CHAR data[SEQ_DECL_SIZE];
29 };
30 N_LIB_PRIVATE N_NIMCALL(NI, runeLenAt__pureZunicode_65)(NimStringDesc* s, NI i);
31 static N_INLINE(NIM_BOOL, lteqpercent___system_997)(NI32 x, NI32 y);
32 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
N_NIMCALL(NI,nucruneLen)33 N_LIB_PRIVATE N_NIMCALL(NI, nucruneLen)(NimStringDesc* s) {
34 NI result;
35 NI i;
36 result = (NI)0;
37 result = ((NI) 0);
38 i = ((NI) 0);
39 {
40 while (1) {
41 if (!(i < (s ? s->Sup.len : 0))) goto LA2;
42 {
43 if (!((NU32)(((NU) (((NU8)(s->data[i]))))) <= (NU32)(((NU) 127)))) goto LA5_;
44 i += ((NI) 1);
45 }
46 goto LA3_;
47 LA5_: ;
48 {
49 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 5))) == ((NU) 6))) goto LA8_;
50 i += ((NI) 2);
51 }
52 goto LA3_;
53 LA8_: ;
54 {
55 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 4))) == ((NU) 14))) goto LA11_;
56 i += ((NI) 3);
57 }
58 goto LA3_;
59 LA11_: ;
60 {
61 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 3))) == ((NU) 30))) goto LA14_;
62 i += ((NI) 4);
63 }
64 goto LA3_;
65 LA14_: ;
66 {
67 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 2))) == ((NU) 62))) goto LA17_;
68 i += ((NI) 5);
69 }
70 goto LA3_;
71 LA17_: ;
72 {
73 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 1))) == ((NU) 126))) goto LA20_;
74 i += ((NI) 6);
75 }
76 goto LA3_;
77 LA20_: ;
78 {
79 i += ((NI) 1);
80 }
81 LA3_: ;
82 result += ((NI) 1);
83 } LA2: ;
84 }
85 return result;
86 }
N_NIMCALL(NI,runeLenAt__pureZunicode_65)87 N_LIB_PRIVATE N_NIMCALL(NI, runeLenAt__pureZunicode_65)(NimStringDesc* s, NI i) {
88 NI result;
89 result = (NI)0;
90 {
91 if (!((NU32)(((NU) (((NU8)(s->data[i]))))) <= (NU32)(((NU) 127)))) goto LA3_;
92 result = ((NI) 1);
93 }
94 goto LA1_;
95 LA3_: ;
96 {
97 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 5))) == ((NU) 6))) goto LA6_;
98 result = ((NI) 2);
99 }
100 goto LA1_;
101 LA6_: ;
102 {
103 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 4))) == ((NU) 14))) goto LA9_;
104 result = ((NI) 3);
105 }
106 goto LA1_;
107 LA9_: ;
108 {
109 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 3))) == ((NU) 30))) goto LA12_;
110 result = ((NI) 4);
111 }
112 goto LA1_;
113 LA12_: ;
114 {
115 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 2))) == ((NU) 62))) goto LA15_;
116 result = ((NI) 5);
117 }
118 goto LA1_;
119 LA15_: ;
120 {
121 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 1))) == ((NU) 126))) goto LA18_;
122 result = ((NI) 6);
123 }
124 goto LA1_;
125 LA18_: ;
126 {
127 result = ((NI) 1);
128 }
129 LA1_: ;
130 return result;
131 }
N_NIMCALL(NI,runeOffset__pureZunicode_635)132 N_LIB_PRIVATE N_NIMCALL(NI, runeOffset__pureZunicode_635)(NimStringDesc* s, NI pos, NI start) {
133 NI result;
134 NI i;
135 NI o;
136 { result = (NI)0;
137 i = ((NI) 0);
138 o = start;
139 {
140 while (1) {
141 NI T3_;
142 if (!(i < ((NI) (pos)))) goto LA2;
143 T3_ = (NI)0;
144 T3_ = runeLenAt__pureZunicode_65(s, o);
145 o += ((NI) (T3_));
146 {
147 if (!((s ? s->Sup.len : 0) <= ((NI) (o)))) goto LA6_;
148 result = ((NI) -1);
149 goto BeforeRet_;
150 }
151 LA6_: ;
152 i += ((NI) 1);
153 } LA2: ;
154 }
155 result = ((NI) (o));
156 goto BeforeRet_;
157 }BeforeRet_: ;
158 return result;
159 }
N_NIMCALL(NI,validateUtf8__pureZunicode_277)160 N_LIB_PRIVATE N_NIMCALL(NI, validateUtf8__pureZunicode_277)(NimStringDesc* s) {
161 NI result;
162 NI i;
163 NI L;
164 { result = (NI)0;
165 i = ((NI) 0);
166 L = (s ? s->Sup.len : 0);
167 {
168 while (1) {
169 if (!(i < L)) goto LA2;
170 {
171 if (!((NU32)(((NU) (((NU8)(s->data[i]))))) <= (NU32)(((NU) 127)))) goto LA5_;
172 i += ((NI) 1);
173 }
174 goto LA3_;
175 LA5_: ;
176 {
177 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 5))) == ((NU) 6))) goto LA8_;
178 {
179 if (!((NU32)(((NU) (((NU8)(s->data[i]))))) < (NU32)(((NU) 194)))) goto LA12_;
180 result = i;
181 goto BeforeRet_;
182 }
183 LA12_: ;
184 {
185 NIM_BOOL T16_;
186 T16_ = (NIM_BOOL)0;
187 T16_ = ((NI)(i + ((NI) 1)) < L);
188 if (!(T16_)) goto LA17_;
189 T16_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 1))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
190 LA17_: ;
191 if (!T16_) goto LA18_;
192 i += ((NI) 2);
193 }
194 goto LA14_;
195 LA18_: ;
196 {
197 result = i;
198 goto BeforeRet_;
199 }
200 LA14_: ;
201 }
202 goto LA3_;
203 LA8_: ;
204 {
205 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 4))) == ((NU) 14))) goto LA22_;
206 {
207 NIM_BOOL T26_;
208 NIM_BOOL T27_;
209 T26_ = (NIM_BOOL)0;
210 T27_ = (NIM_BOOL)0;
211 T27_ = ((NI)(i + ((NI) 2)) < L);
212 if (!(T27_)) goto LA28_;
213 T27_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 1))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
214 LA28_: ;
215 T26_ = T27_;
216 if (!(T26_)) goto LA29_;
217 T26_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 2))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
218 LA29_: ;
219 if (!T26_) goto LA30_;
220 i += ((NI) 3);
221 }
222 goto LA24_;
223 LA30_: ;
224 {
225 result = i;
226 goto BeforeRet_;
227 }
228 LA24_: ;
229 }
230 goto LA3_;
231 LA22_: ;
232 {
233 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 3))) == ((NU) 30))) goto LA34_;
234 {
235 NIM_BOOL T38_;
236 NIM_BOOL T39_;
237 NIM_BOOL T40_;
238 T38_ = (NIM_BOOL)0;
239 T39_ = (NIM_BOOL)0;
240 T40_ = (NIM_BOOL)0;
241 T40_ = ((NI)(i + ((NI) 3)) < L);
242 if (!(T40_)) goto LA41_;
243 T40_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 1))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
244 LA41_: ;
245 T39_ = T40_;
246 if (!(T39_)) goto LA42_;
247 T39_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 2))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
248 LA42_: ;
249 T38_ = T39_;
250 if (!(T38_)) goto LA43_;
251 T38_ = ((NU)((NU32)(((NU) (((NU8)(s->data[(NI)(i + ((NI) 3))]))))) >> (NU32)(((NI) 6))) == ((NU) 2));
252 LA43_: ;
253 if (!T38_) goto LA44_;
254 i += ((NI) 4);
255 }
256 goto LA36_;
257 LA44_: ;
258 {
259 result = i;
260 goto BeforeRet_;
261 }
262 LA36_: ;
263 }
264 goto LA3_;
265 LA34_: ;
266 {
267 result = i;
268 goto BeforeRet_;
269 }
270 LA3_: ;
271 } LA2: ;
272 }
273 result = ((NI) -1);
274 goto BeforeRet_;
275 }BeforeRet_: ;
276 return result;
277 }
N_NIMCALL(NIM_BOOL,eqeq___pureZunicode_908)278 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___pureZunicode_908)(NI32 a, NI32 b) {
279 NIM_BOOL result;
280 { result = (NIM_BOOL)0;
281 result = (((NI) (a)) == ((NI) (b)));
282 goto BeforeRet_;
283 }BeforeRet_: ;
284 return result;
285 }
N_NIMCALL(NI32,runeAt__pureZunicode_95)286 N_LIB_PRIVATE N_NIMCALL(NI32, runeAt__pureZunicode_95)(NimStringDesc* s, NI i) {
287 NI32 result;
288 result = (NI32)0;
289 {
290 if (!((NU32)(((NU) (((NU8)(s->data[i]))))) <= (NU32)(((NU) 127)))) goto LA3_;
291 result = ((NI32) (((NU) (((NU8)(s->data[i]))))));
292 }
293 goto LA1_;
294 LA3_: ;
295 {
296 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 5))) == ((NU) 6))) goto LA6_;
297 {
298 if (!(((NI) (i)) <= (NI)((s ? s->Sup.len : 0) - ((NI) 2)))) goto LA10_;
299 result = ((NI32) ((NU)((NU)((NU32)((NU)(((NU) (((NU8)(s->data[i])))) & ((NU) 31))) << (NU32)(((NI) 6))) | (NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 1))])))) & ((NU) 63)))));
300 }
301 goto LA8_;
302 LA10_: ;
303 {
304 result = ((NI32) 65533);
305 }
306 LA8_: ;
307 }
308 goto LA1_;
309 LA6_: ;
310 {
311 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 4))) == ((NU) 14))) goto LA14_;
312 {
313 if (!(((NI) (i)) <= (NI)((s ? s->Sup.len : 0) - ((NI) 3)))) goto LA18_;
314 result = ((NI32) ((NU)((NU)((NU)((NU32)((NU)(((NU) (((NU8)(s->data[i])))) & ((NU) 15))) << (NU32)(((NI) 12))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 1))])))) & ((NU) 63))) << (NU32)(((NI) 6)))) | (NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 2))])))) & ((NU) 63)))));
315 }
316 goto LA16_;
317 LA18_: ;
318 {
319 result = ((NI32) 65533);
320 }
321 LA16_: ;
322 }
323 goto LA1_;
324 LA14_: ;
325 {
326 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 3))) == ((NU) 30))) goto LA22_;
327 {
328 if (!(((NI) (i)) <= (NI)((s ? s->Sup.len : 0) - ((NI) 4)))) goto LA26_;
329 result = ((NI32) ((NU)((NU)((NU)((NU)((NU32)((NU)(((NU) (((NU8)(s->data[i])))) & ((NU) 7))) << (NU32)(((NI) 18))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 1))])))) & ((NU) 63))) << (NU32)(((NI) 12)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 2))])))) & ((NU) 63))) << (NU32)(((NI) 6)))) | (NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 3))])))) & ((NU) 63)))));
330 }
331 goto LA24_;
332 LA26_: ;
333 {
334 result = ((NI32) 65533);
335 }
336 LA24_: ;
337 }
338 goto LA1_;
339 LA22_: ;
340 {
341 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 2))) == ((NU) 62))) goto LA30_;
342 {
343 if (!(((NI) (i)) <= (NI)((s ? s->Sup.len : 0) - ((NI) 5)))) goto LA34_;
344 result = ((NI32) ((NU)((NU)((NU)((NU)((NU)((NU32)((NU)(((NU) (((NU8)(s->data[i])))) & ((NU) 3))) << (NU32)(((NI) 24))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 1))])))) & ((NU) 63))) << (NU32)(((NI) 18)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 2))])))) & ((NU) 63))) << (NU32)(((NI) 12)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 3))])))) & ((NU) 63))) << (NU32)(((NI) 6)))) | (NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 4))])))) & ((NU) 63)))));
345 }
346 goto LA32_;
347 LA34_: ;
348 {
349 result = ((NI32) 65533);
350 }
351 LA32_: ;
352 }
353 goto LA1_;
354 LA30_: ;
355 {
356 if (!((NU)((NU32)(((NU) (((NU8)(s->data[i]))))) >> (NU32)(((NI) 1))) == ((NU) 126))) goto LA38_;
357 {
358 if (!(((NI) (i)) <= (NI)((s ? s->Sup.len : 0) - ((NI) 6)))) goto LA42_;
359 result = ((NI32) ((NU)((NU)((NU)((NU)((NU)((NU)((NU32)((NU)(((NU) (((NU8)(s->data[i])))) & ((NU) 1))) << (NU32)(((NI) 30))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 1))])))) & ((NU) 63))) << (NU32)(((NI) 24)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 2))])))) & ((NU) 63))) << (NU32)(((NI) 18)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 3))])))) & ((NU) 63))) << (NU32)(((NI) 12)))) | (NU)((NU32)((NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 4))])))) & ((NU) 63))) << (NU32)(((NI) 6)))) | (NU)(((NU) (((NU8)(s->data[(NI)(((NI) (i)) + ((NI) 5))])))) & ((NU) 63)))));
360 }
361 goto LA40_;
362 LA42_: ;
363 {
364 result = ((NI32) 65533);
365 }
366 LA40_: ;
367 }
368 goto LA1_;
369 LA38_: ;
370 {
371 result = ((NI32) (((NU) (((NU8)(s->data[i]))))));
372 }
373 LA1_: ;
374 return result;
375 }
N_NIMCALL(NI,size__pureZunicode_5119)376 N_LIB_PRIVATE N_NIMCALL(NI, size__pureZunicode_5119)(NI32 r) {
377 NI result;
378 NU32 v;
379 result = (NI)0;
380 v = ((NU32) (r));
381 {
382 if (!((NU32)(v) <= (NU32)(((NU32) 127)))) goto LA3_;
383 result = ((NI) 1);
384 }
385 goto LA1_;
386 LA3_: ;
387 {
388 if (!((NU32)(v) <= (NU32)(((NU32) 2047)))) goto LA6_;
389 result = ((NI) 2);
390 }
391 goto LA1_;
392 LA6_: ;
393 {
394 if (!((NU32)(v) <= (NU32)(((NU32) 65535)))) goto LA9_;
395 result = ((NI) 3);
396 }
397 goto LA1_;
398 LA9_: ;
399 {
400 if (!((NU32)(v) <= (NU32)(((NU32) 2097151)))) goto LA12_;
401 result = ((NI) 4);
402 }
403 goto LA1_;
404 LA12_: ;
405 {
406 if (!((NU32)(v) <= (NU32)(((NU32) 67108863)))) goto LA15_;
407 result = ((NI) 5);
408 }
409 goto LA1_;
410 LA15_: ;
411 {
412 if (!((NU32)(v) <= (NU32)(((NU32) 2147483647)))) goto LA18_;
413 result = ((NI) 6);
414 }
415 goto LA1_;
416 LA18_: ;
417 {
418 result = ((NI) 1);
419 }
420 LA1_: ;
421 return result;
422 }
N_INLINE(NIM_BOOL,lteqpercent___system_997)423 static N_INLINE(NIM_BOOL, lteqpercent___system_997)(NI32 x, NI32 y) {
424 NIM_BOOL result;
425 result = (NIM_BOOL)0;
426 result = ((NU32)(((NU32) (x))) <= (NU32)(((NU32) (y))));
427 return result;
428 }
N_NIMCALL(NimStringDesc *,nuctoUTF8)429 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nuctoUTF8)(NI32 c) {
430 NimStringDesc* result;
431 NI32 iX60gensym49_;
432 result = NIM_NIL;
433 result = ((NimStringDesc*) NIM_NIL);
434 iX60gensym49_ = c;
435 {
436 NIM_BOOL T3_;
437 T3_ = (NIM_BOOL)0;
438 T3_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 127));
439 if (!T3_) goto LA4_;
440 result = setLengthStr(result, ((NI) 1));
441 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) (iX60gensym49_))));
442 }
443 goto LA1_;
444 LA4_: ;
445 {
446 NIM_BOOL T7_;
447 T7_ = (NIM_BOOL)0;
448 T7_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 2047));
449 if (!T7_) goto LA8_;
450 result = setLengthStr(result, ((NI) 2));
451 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 6))) | ((NI32) 192))))));
452 result->data[((NI) 1)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)(iX60gensym49_ & ((NI32) 63)) | ((NI32) 128))))));
453 }
454 goto LA1_;
455 LA8_: ;
456 {
457 NIM_BOOL T11_;
458 T11_ = (NIM_BOOL)0;
459 T11_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 65535));
460 if (!T11_) goto LA12_;
461 result = setLengthStr(result, ((NI) 3));
462 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 12))) | ((NI32) 224))))));
463 result->data[((NI) 1)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 6))) & ((NI32) 63)) | ((NI32) 128))))));
464 result->data[((NI) 2)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)(iX60gensym49_ & ((NI32) 63)) | ((NI32) 128))))));
465 }
466 goto LA1_;
467 LA12_: ;
468 {
469 NIM_BOOL T15_;
470 T15_ = (NIM_BOOL)0;
471 T15_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 2097151));
472 if (!T15_) goto LA16_;
473 result = setLengthStr(result, ((NI) 4));
474 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 18))) | ((NI32) 240))))));
475 result->data[((NI) 1)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 12))) & ((NI32) 63)) | ((NI32) 128))))));
476 result->data[((NI) 2)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 6))) & ((NI32) 63)) | ((NI32) 128))))));
477 result->data[((NI) 3)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)(iX60gensym49_ & ((NI32) 63)) | ((NI32) 128))))));
478 }
479 goto LA1_;
480 LA16_: ;
481 {
482 NIM_BOOL T19_;
483 T19_ = (NIM_BOOL)0;
484 T19_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 67108863));
485 if (!T19_) goto LA20_;
486 result = setLengthStr(result, ((NI) 5));
487 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 24))) | ((NI32) 248))))));
488 result->data[((NI) 1)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 18))) & ((NI32) 63)) | ((NI32) 128))))));
489 result->data[((NI) 2)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 12))) & ((NI32) 63)) | ((NI32) 128))))));
490 result->data[((NI) 3)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 6))) & ((NI32) 63)) | ((NI32) 128))))));
491 result->data[((NI) 4)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)(iX60gensym49_ & ((NI32) 63)) | ((NI32) 128))))));
492 }
493 goto LA1_;
494 LA20_: ;
495 {
496 NIM_BOOL T23_;
497 T23_ = (NIM_BOOL)0;
498 T23_ = lteqpercent___system_997(iX60gensym49_, ((NI32) 2147483647));
499 if (!T23_) goto LA24_;
500 result = setLengthStr(result, ((NI) 6));
501 result->data[((NI) 0)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 30))) | ((NI32) 252))))));
502 result->data[((NI) 1)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 24))) & ((NI32) 63)) | ((NI32) 128))))));
503 result->data[((NI) 2)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 18))) & ((NI32) 63)) | ((NI32) 128))))));
504 result->data[((NI) 3)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 12))) & ((NI32) 63)) | ((NI32) 128))))));
505 result->data[((NI) 4)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)((NI32)((NI32)(iX60gensym49_) >> (NU32)(((NI) 6))) & ((NI32) 63)) | ((NI32) 128))))));
506 result->data[((NI) 5)] = ((NIM_CHAR) (((NI) ((NI32)((NI32)(iX60gensym49_ & ((NI32) 63)) | ((NI32) 128))))));
507 }
508 goto LA1_;
509 LA24_: ;
510 {
511 }
512 LA1_: ;
513 return result;
514 }
515