1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #include <math.h>
7 #undef LANGUAGE_C
8 #undef MIPSEB
9 #undef MIPSEL
10 #undef PPC
11 #undef R3000
12 #undef R4000
13 #undef i386
14 #undef linux
15 #undef mips
16 #undef near
17 #undef far
18 #undef powerpc
19 #undef unix
20 #define nimfr_(x, y)
21 #define nimln_(x, y)
22 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
23 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
24 typedef struct tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA;
25 typedef struct tyObject_Table__GpIQt2f0xrasZObyH6X8bg tyObject_Table__GpIQt2f0xrasZObyH6X8bg;
26 typedef struct tySequence__9chP3SzkaldXzawWQCDsqqg tySequence__9chP3SzkaldXzawWQCDsqqg;
27 typedef struct NimStringDesc NimStringDesc;
28 typedef struct TGenericSeq TGenericSeq;
29 typedef struct tyTuple__aGv2fk9ceddvdC01ZJC2Q2g tyTuple__aGv2fk9ceddvdC01ZJC2Q2g;
30 typedef struct TNimType TNimType;
31 typedef struct TNimNode TNimNode;
32 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
33 typedef struct RootObj RootObj;
34 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
35 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
36 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
37 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
38 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
39 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
40 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
41 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
42 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
43 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
44 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
45 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
46 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
47 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
48 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
49 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
50 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
51 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
52 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
53 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
54 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
55 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
56 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
57 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
58 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
59 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
60 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
61 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
62 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
63 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
64 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
65 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
66 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
67 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
68 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
69 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
70 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
71 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
72 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
73 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
74 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
75 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
76 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
77 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
78 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
79 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
80 typedef struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA tyObject_Int128__9a9axPfb75jdWY25AamJewkA;
81 typedef struct tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg;
82 typedef struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q;
83 typedef struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA tySequence__Mh9agqM29bm9aP5AUL1x7dZGA;
84 typedef struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg;
85 typedef struct tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA;
86 typedef struct tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA;
87 typedef struct tySequence__K8W16aeLg4OWxniQxtguMw tySequence__K8W16aeLg4OWxniQxtguMw;
88 typedef struct tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w;
89 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
90 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
91 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
92 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
93 struct tyObject_Table__GpIQt2f0xrasZObyH6X8bg {
94 tySequence__9chP3SzkaldXzawWQCDsqqg* data;
95 NI counter;
96 };
97 struct TGenericSeq {
98 NI len;
99 NI reserved;
100 };
101 struct NimStringDesc {
102   TGenericSeq Sup;
103 NIM_CHAR data[SEQ_DECL_SIZE];
104 };
105 struct tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA {
106 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf;
107 tyObject_Table__GpIQt2f0xrasZObyH6X8bg visited;
108 NIM_BOOL renderSymType;
109 NI indent;
110 NI currentLine;
111 NIM_BOOL firstItem;
112 NIM_BOOL useColor;
113 NimStringDesc* res;
114 };
115 struct tyTuple__aGv2fk9ceddvdC01ZJC2Q2g {
116 NI Field0;
117 void* Field1;
118 NI Field2;
119 };
120 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
121 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
122 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
123 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
124 struct TNimType {
125 NI size;
126 NI align;
127 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
128 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
129 TNimType* base;
130 TNimNode* node;
131 void* finalizer;
132 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
133 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
134 };
135 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
136 struct TNimNode {
137 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
138 NI offset;
139 TNimType* typ;
140 NCSTRING name;
141 NI len;
142 TNimNode** sons;
143 };
144 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
145 struct RootObj {
146 TNimType* m_type;
147 };
148 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
149 NI32 module;
150 NI32 item;
151 };
152 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
153   RootObj Sup;
154 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
155 };
156 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
157 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
158 NU16 line;
159 NI16 col;
160 NI32 fileIndex;
161 };
162 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
163 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
164 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
165 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
166 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
167 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
168 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
169 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
170 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
171 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
172 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
173 };
174 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
175   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
176 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
177 union{
178 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
179 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
180 } _kind_1;
181 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
182 NI bitsize;
183 NI alignment;
184 } _kind_2;
185 };
186 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
187 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
188 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
189 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
190 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
191 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
192 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
193 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
194 NI position;
195 NI offset;
196 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
197 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
198 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
199 };
200 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
201 NI id;
202 NimStringDesc* s;
203 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
204 NI h;
205 };
206 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
207 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
208 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
209 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
210 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
211   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
212 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
213 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
214 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
215 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
216 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
217 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
218 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
219 NI64 size;
220 NI16 align;
221 NI16 paddingAtEnd;
222 NI16 lockLevel;
223 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
224 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
225 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
226 };
227 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
228 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
229 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
230 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
231 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
232 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
233 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
234 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
235 union{
236 struct {NI64 intVal;
237 } _kind_1;
238 struct {NF floatVal;
239 } _kind_2;
240 struct {NimStringDesc* strVal;
241 } _kind_3;
242 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
243 } _kind_4;
244 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
245 } _kind_5;
246 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
247 } _kind_6;
248 };
249 };
250 struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA {
251   RootObj Sup;
252 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* left;
253 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* right;
254 NI L;
255 NimStringDesc* data;
256 };
257 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__wqYjTJU9ab2ZgEFMaQc3vNA[3];
258 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
259 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
260 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
261 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
262 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
263 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
264 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
265 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
266 NI intSize;
267 NI floatSize;
268 NI ptrSize;
269 NimStringDesc* tnl;
270 };
271 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
272 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
273 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
274 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
275 NI counter;
276 };
277 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
278 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
279 NIM_BOOL trackPosAttached;
280 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
281 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
282 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
283 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
284 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
285 NI32 systemFileIdx;
286 };
287 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
288 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
289 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
290 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
291 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
292 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
293 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
294 NI counter;
295 };
296 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
297 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
298 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
299 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
300 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
301 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
302 NI Field0;
303 NI Field1;
304 NI Field2;
305 };
306 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
307 typedef struct {
308 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
309 void* ClE_0;
310 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
311 typedef struct {
312 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
313 void* ClE_0;
314 } tyProc__k2HFjxisIgDALbEUFojxaQ;
315 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
316 typedef struct {
317 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
318 void* ClE_0;
319 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
320 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
321 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
322 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
323 NI linesCompiled;
324 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
325 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
326 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
327 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
328 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
329 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
330 NimStringDesc* unitSep;
331 NI evalTemplateCounter;
332 NI evalMacroCounter;
333 NI8 exitcode;
334 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
335 NimStringDesc* cmdInput;
336 NIM_BOOL projectIsCmd;
337 NIM_BOOL implicitCmd;
338 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
339 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
340 NIM_BOOL hintProcessingDots;
341 NI verbosity;
342 NI numberOfProcessors;
343 NF lastCmdTime;
344 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
345 NI spellSuggestMax;
346 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
347 NimStringDesc* headerFile;
348 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
349 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
350 NimStringDesc* arguments;
351 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
352 NIM_BOOL oldNewlines;
353 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
354 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
355 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
356 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
357 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
358 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
359 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
360 NI mainPackageId;
361 NI errorCounter;
362 NI hintCounter;
363 NI warnCounter;
364 NI errorMax;
365 NI maxLoopIterationsVM;
366 NIM_BOOL isVmTrace;
367 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
368 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
369 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
370 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
371 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
372 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
373 NimStringDesc* outFile;
374 NimStringDesc* outDir;
375 NimStringDesc* jsonBuildFile;
376 NimStringDesc* prefixDir;
377 NimStringDesc* libpath;
378 NimStringDesc* nimcacheDir;
379 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
380 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
381 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
382 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
383 NimStringDesc* projectName;
384 NimStringDesc* projectPath;
385 NimStringDesc* projectFull;
386 NIM_BOOL projectIsStdin;
387 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
388 NI32 projectMainIdx;
389 NI32 projectMainIdx2;
390 NimStringDesc* command;
391 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
392 NimStringDesc* commandLine;
393 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
394 NIM_BOOL keepComments;
395 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
396 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
397 NimStringDesc* docSeeSrcUrl;
398 NimStringDesc* docRoot;
399 NimStringDesc* docCmd;
400 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
401 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
402 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
403 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
404 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
405 NimStringDesc* linkOptionsCmd;
406 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
407 NimStringDesc* linkOptions;
408 NimStringDesc* compileOptions;
409 NimStringDesc* cCompilerPath;
410 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
411 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
412 NI suggestVersion;
413 NI suggestMaxResults;
414 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
415 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
416 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
417 NimStringDesc* cppCustomNamespace;
418 NimStringDesc* nimMainPrefix;
419 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
420 };
421 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
422 NimStringDesc* fullPath;
423 NimStringDesc* projPath;
424 NimStringDesc* shortName;
425 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
426 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
427 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
428 NimStringDesc* dirtyFile;
429 NimStringDesc* hash;
430 NIM_BOOL dirty;
431 };
432 typedef NU8 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
433 typedef NU8 tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA;
434 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
435 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
436 NI counter;
437 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
438 };
439 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
440 NI refcount;
441 TNimType* typ;
442 };
443 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
444 void* bottom;
445 };
446 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
447 NI len;
448 NI cap;
449 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
450 };
451 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
452 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
453 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
454 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
455 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
456 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
457 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
458 };
459 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
460 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
461 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
462 NI key;
463 NI upperBound;
464 NI level;
465 };
466 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
467 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
468 NI Field1;
469 };
470 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
471 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
472 NI len;
473 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
474 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
475 };
476 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
477 NI minLargeObj;
478 NI maxLargeObj;
479 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
480 NU32 flBitmap;
481 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
482 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
483 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
484 NI currMem;
485 NI maxMem;
486 NI freeMem;
487 NI occ;
488 NI lastSize;
489 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
490 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
491 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
492 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
493 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
494 NIM_BOOL locked;
495 NIM_BOOL blockChunkSizeIncrease;
496 NI nextChunkSize;
497 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
498 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
499 };
500 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
501 NI stackScans;
502 NI cycleCollections;
503 NI maxThreshold;
504 NI maxStackSize;
505 NI maxStackCells;
506 NI cycleTableSize;
507 NI64 maxPause;
508 };
509 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
510 NI counter;
511 NI max;
512 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
513 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
514 };
515 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
516 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
517 NI cycleThreshold;
518 NI zctThreshold;
519 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
520 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
521 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
522 NI recGcLock;
523 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
524 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
525 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
526 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
527 NI gcThreadId;
528 };
529 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
530 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
531 NI elems;
532 NI counter;
533 NI max;
534 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
535 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
536 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
537 };
538 typedef NU tyArray__cC4ce9cdvDKtIpar5g9cDejA[16];
539 struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA {
540 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* next;
541 NI key;
542 tyArray__cC4ce9cdvDKtIpar5g9cDejA bits;
543 };
544 typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
545 struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA {
546 tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
547 };
548 struct tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg {
549 NI h;
550 };
551 struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg {
552 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
553 RootObj* val;
554 };
555 struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q {
556 NI counter;
557 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* data;
558 };
559 struct tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA {
560 NI h;
561 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
562 };
563 struct tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA {
564 NI counter;
565 tySequence__K8W16aeLg4OWxniQxtguMw* data;
566 };
567 struct tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w {
568 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
569 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val;
570 };
571 typedef NU8 tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA;
572 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
573 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
574 NimStringDesc* Field1;
575 };
576 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
577 NI Field0;
578 NimStringDesc* Field1;
579 NI32 Field2;
580 };
581 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
582 NI Field0;
583 NimStringDesc* Field1;
584 };
585 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
586 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
587 NimStringDesc* nimname;
588 NimStringDesc* cname;
589 NimStringDesc* obj;
590 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
591 NimStringDesc* customArgs;
592 };
593 struct tySequence__9chP3SzkaldXzawWQCDsqqg {
594   TGenericSeq Sup;
595   tyTuple__aGv2fk9ceddvdC01ZJC2Q2g data[SEQ_DECL_SIZE];
596 };
597 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
598   TGenericSeq Sup;
599   tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
600 };
601 struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA {
602   TGenericSeq Sup;
603   tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE];
604 };
605 struct tySequence__K8W16aeLg4OWxniQxtguMw {
606   TGenericSeq Sup;
607   tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w data[SEQ_DECL_SIZE];
608 };
609 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
610   TGenericSeq Sup;
611   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
612 };
613 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
614   TGenericSeq Sup;
615   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
616 };
617 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
618   TGenericSeq Sup;
619   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
620 };
621 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
622   TGenericSeq Sup;
623   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
624 };
625 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
626   TGenericSeq Sup;
627   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
628 };
629 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
630   TGenericSeq Sup;
631   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
632 };
633 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
634   TGenericSeq Sup;
635   NimStringDesc* data[SEQ_DECL_SIZE];
636 };
637 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
638   TGenericSeq Sup;
639   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
640 };
641 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
642   TGenericSeq Sup;
643   tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
644 };
645 N_LIB_PRIVATE N_NIMCALL(void, debugSym)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
646 static N_INLINE(void, nimZeroMem)(void* p, NI size);
647 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
648 N_LIB_PRIVATE N_NIMCALL(void, initTable__astalgo_3033)(NI initialSize, tyObject_Table__GpIQt2f0xrasZObyH6X8bg* Result);
649 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
650 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
651 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x);
652 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
653 static N_NIMCALL(void, Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)(void* p, NI op);
654 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1103)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* value);
655 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
656 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
657 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
658 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
659 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__astalgo_1178)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI default_0);
660 static N_INLINE(NI, rawGet__astalgo_1188)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI* hc);
661 static N_INLINE(NI, hash__pureZhashes_124)(void* x);
662 static N_INLINE(NI, hash__pureZhashes_128)(NI x);
663 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
664 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
665 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b);
666 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
667 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
668 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___astalgo_1522)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, void* key, NI val);
669 static N_INLINE(NIM_BOOL, mustRehash__astalgo_1695)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t);
670 N_LIB_PRIVATE N_NIMCALL(void, enlarge__astalgo_1848)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t);
671 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__astalgo_2152)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, tySequence__9chP3SzkaldXzawWQCDsqqg** data, void* key, NI val, NI hc, NI h);
672 static N_INLINE(NI, rawGetKnownHC__astalgo_2321)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI hc);
673 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
674 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
675 N_LIB_PRIVATE N_NIMCALL(void, openCurly__astalgo_1062)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
676 N_LIB_PRIVATE N_NIMCALL(void, indentMore__astalgo_1039)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
677 N_LIB_PRIVATE N_NIMCALL(void, key__astalgo_1072)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* key);
678 N_LIB_PRIVATE N_NIMCALL(void, newlineAndIndent__astalgo_1051)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
679 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
680 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2558)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw value);
681 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
682 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1075)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* value);
683 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1078)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NI64 value);
684 static N_INLINE(NI, countBits64)(NU64 n);
685 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_61)(NU64 x);
686 N_CDECL(int, __builtin_popcountll)(unsigned long long x);
687 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2578)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value);
688 N_LIB_PRIVATE N_NIMCALL(void, openBracket__astalgo_1068)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
689 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2591)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value);
690 N_LIB_PRIVATE N_NIMCALL(void, comma__astalgo_1066)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
691 N_LIB_PRIVATE N_NIMCALL(void, closeBracket__astalgo_1070)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
692 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1097)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TType__facALICuu8zUj0hjvbTLFg* value);
693 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2734)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag value);
694 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2754)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value);
695 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2767)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value);
696 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1100)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
697 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2933)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw value);
698 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, comment__ast_993)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
699 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___ropes_250)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
700 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lineInfoToStr__astalgo_28)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
701 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___astalgo_353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
702 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, runtimeFormat__ropes_271)(NimStringDesc* frmt, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
703 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeYamlString__astalgo_330)(NimStringDesc* s);
704 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
705 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_159)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
706 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_109)(NimStringDesc* s);
707 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toYamlChar__astalgo_320)(NIM_CHAR c);
708 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toHex__pureZstrutils_1792)(NI x, NI len);
709 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
710 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
711 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
712 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_115)(NI64 i);
713 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
714 static N_INLINE(NI, toColumn__msgs_612)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
715 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2948)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value);
716 static N_INLINE(NI, countBits32)(NU32 n);
717 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x);
718 N_CDECL(int, __builtin_popcount)(unsigned int x);
719 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2988)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value);
720 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__astalgo_920)(NF f);
721 N_LIB_PRIVATE N_NIMCALL(tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA, classify__pureZmath_147)(NF x);
722 static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x);
723 N_LIB_PRIVATE N_NIMCALL(void, addFloatRoundtrip__system_3127)(NimStringDesc** result, NF x);
724 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b);
725 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
726 N_LIB_PRIVATE N_NIMCALL(void, closeCurly__astalgo_1064)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
727 N_LIB_PRIVATE N_NIMCALL(void, indentLess__astalgo_1045)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
728 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
729 N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringDesc** args, NI argsLen_0);
730 N_LIB_PRIVATE N_NIMCALL(void, debugType)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
731 N_LIB_PRIVATE N_NIMCALL(void, debugNode)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
732 static N_INLINE(NI, nextTry__astalgo_90)(NI h, NI maxHash);
733 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, mustRehash__astalgo_87)(NI length, NI counter);
734 N_LIB_PRIVATE N_NIMCALL(void, strTableEnlarge__astalgo_3306)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t);
735 N_LIB_PRIVATE N_NIMCALL(void, strTableRawInsert__astalgo_3252)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n);
736 static N_INLINE(void, asgnRef)(void** dest, void* src);
737 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
738 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
739 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr);
740 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
741 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
742 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
743 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
744 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5264)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
745 N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
746 N_LIB_PRIVATE N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*, packedSetGet__astalgo_433)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* t, NI key);
747 static N_INLINE(NI, nextTry__stdZpackedsets_41)(NI h, NI maxHash, NI* perturb);
748 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___int495056_313)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
749 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getInt__ast_4592)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
750 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
751 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
752 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
753 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIter__astalgo_3762)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab);
754 N_LIB_PRIVATE N_NIMCALL(NI, idTableRawGet__astalgo_3813)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, NI key);
755 N_LIB_PRIVATE N_NIMCALL(void, idTableRawInsert__astalgo_3905)(tySequence__Mh9agqM29bm9aP5AUL1x7dZGA** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val);
756 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentIter__astalgo_3408)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab);
757 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameIgnoreBacktickGensymInfo__astalgo_264)(NimStringDesc* a, NimStringDesc* b);
758 N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c);
759 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentExcluding__astalgo_3432)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding);
760 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
761 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field);
762 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
763 N_LIB_PRIVATE N_NIMCALL(NI, idNodeTableRawGet__astalgo_4024)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key);
764 N_LIB_PRIVATE N_NIMCALL(void, idNodeTableRawInsert__astalgo_4071)(tySequence__K8W16aeLg4OWxniQxtguMw** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
765 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int495056_309)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
766 static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b);
767 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValue__astalgo_135)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
768 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableInclReportConflict__astalgo_3342)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld);
769 N_LIB_PRIVATE N_NIMCALL(void, symTabReplaceRaw__astalgo_3277)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym);
770 N_LIB_PRIVATE TNimType NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_;
771 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
772 extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_;
773 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_;
774 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_3, "null", 4);
775 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_4, "\033[90m", 5);
776 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_5, "<defined ", 9);
777 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_6, " lines upwards>", 15);
778 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_7, "\033[0m", 4);
779 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_8, "{", 1);
780 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_9, ",", 1);
781 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_10, "\012", 1);
782 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_11, "\"", 1);
783 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_12, "\": ", 3);
784 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_13, "kind", 4);
785 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_14, "\033[34m", 5);
786 extern TNimType NTItsymkind__cNCW9acsSznmEccl1fgQwkw_;
787 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_15, "name", 4);
788 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_16, "\033[32m", 5);
789 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_17, "id", 2);
790 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_18, "\033[33m", 5);
791 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_19, "position", 8);
792 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_20, "flags", 5);
793 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_21, "[", 1);
794 extern TNimType NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_;
795 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_22, ", ", 2);
796 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_23, "]", 1);
797 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_24, "typ", 3);
798 extern TNimType NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_;
799 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_25, "sym", 3);
800 extern TNimType NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_;
801 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_26, "n", 1);
802 extern TNimType NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_;
803 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_27, "comment", 7);
804 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_28, "info", 4);
805 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_29, "[$1, $2, $3]", 12);
806 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_30, "\\u", 2);
807 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_31, "command line", 12);
808 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_32, "\?\?\?", 3);
809 extern TNimType NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_;
810 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_33, "nil", 3);
811 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_34, "intVal", 6);
812 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_35, "floatVal", 8);
813 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_36, "-NAN", 4);
814 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_37, "NAN", 3);
815 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_38, "-0.0", 4);
816 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_39, "0.0", 3);
817 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_40, "INF", 3);
818 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_41, "-INF", 4);
819 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_42, "strVal", 6);
820 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_43, "ident", 5);
821 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_44, "sons", 4);
822 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_45, "}", 1);
823 extern TNimType NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_;
824 extern TNimType NTItidpairseq__Mh9agqM29bm9aP5AUL1x7dZGA_;
825 extern TNimType NTItidnodepairseq__K8W16aeLg4OWxniQxtguMw_;
826 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5217;
N_INLINE(void,nimSetMem__systemZmemory_7)827 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
828 	void* T1_;
829 	T1_ = (void*)0;
830 	T1_ = memset(a, v, ((size_t) (size)));
831 }
N_INLINE(void,nimZeroMem)832 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
833 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
834 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)835 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
836 	NI result;
837 	result = (NI)0;
838 	result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
839 	return result;
840 }
N_NIMCALL(void,Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)841 static N_NIMCALL(void, Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)(void* p, NI op) {
842 	tySequence__9chP3SzkaldXzawWQCDsqqg* a;
843 	NI T1_;
844 	a = (tySequence__9chP3SzkaldXzawWQCDsqqg*)p;
845 	T1_ = (NI)0;
846 }
N_NIMCALL(void,initTable__astalgo_3033)847 N_LIB_PRIVATE N_NIMCALL(void, initTable__astalgo_3033)(NI initialSize, tyObject_Table__GpIQt2f0xrasZObyH6X8bg* Result) {
848 	NI correctSizeX60gensym137_;
849 	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
850 	(*Result).counter = 0;
851 	correctSizeX60gensym137_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
852 	(*Result).counter = ((NI) 0);
853 	unsureAsgnRef((void**) (&(*Result).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym137_))));
854 }
N_INLINE(void,nimCopyMem)855 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
856 	void* T1_;
857 	T1_ = (void*)0;
858 	T1_ = memcpy(dest, source, ((size_t) (size)));
859 }
N_INLINE(void,copyMem__system_1727)860 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
861 	nimCopyMem(dest, source, size);
862 }
N_INLINE(void,appendString)863 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
864 	{
865 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
866 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
867 		(*dest).Sup.len += (*src).Sup.len;
868 	}
869 	LA3_: ;
870 }
N_INLINE(NU64,hiXorLoFallback64__pureZhashes_35)871 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b) {
872 	NU64 result;
873 	NU64 aH;
874 	NU64 aL;
875 	NU64 bH;
876 	NU64 bL;
877 	NU64 rHH;
878 	NU64 rHL;
879 	NU64 rLH;
880 	NU64 rLL;
881 	NU64 t;
882 	NU64 c;
883 	NU64 lo;
884 	NU64 T6_;
885 	NU64 hi;
886 {	result = (NU64)0;
887 	aH = (NU64)((NU64)(a) >> (NU64)(((NI) 32)));
888 	aL = (NU64)(a & 4294967295ULL);
889 	bH = (NU64)((NU64)(b) >> (NU64)(((NI) 32)));
890 	bL = (NU64)(b & 4294967295ULL);
891 	rHH = (NU64)((NU64)(aH) * (NU64)(bH));
892 	rHL = (NU64)((NU64)(aH) * (NU64)(bL));
893 	rLH = (NU64)((NU64)(aL) * (NU64)(bH));
894 	rLL = (NU64)((NU64)(aL) * (NU64)(bL));
895 	t = (NU64)((NU64)(rLL) + (NU64)((NU64)((NU64)(rHL) << (NU64)(((NI) 32)))));
896 	{
897 		if (!((NU64)(t) < (NU64)(rLL))) goto LA3_;
898 		c = 1ULL;
899 	}
900 	goto LA1_;
901 	LA3_: ;
902 	{
903 		c = 0ULL;
904 	}
905 	LA1_: ;
906 	lo = (NU64)((NU64)(t) + (NU64)((NU64)((NU64)(rLH) << (NU64)(((NI) 32)))));
907 	T6_ = (NU64)0;
908 	{
909 		if (!((NU64)(lo) < (NU64)(t))) goto LA9_;
910 		T6_ = 1ULL;
911 	}
912 	goto LA7_;
913 	LA9_: ;
914 	{
915 		T6_ = 0ULL;
916 	}
917 	LA7_: ;
918 	c += T6_;
919 	hi = (NU64)((NU64)((NU64)((NU64)((NU64)((NU64)(rHH) + (NU64)((NU64)((NU64)(rHL) >> (NU64)(((NI) 32)))))) + (NU64)((NU64)((NU64)(rLH) >> (NU64)(((NI) 32)))))) + (NU64)(c));
920 	result = (NU64)(hi ^ lo);
921 	goto BeforeRet_;
922 	}BeforeRet_: ;
923 	return result;
924 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)925 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
926 	NU64 result;
927 	result = (NU64)0;
928 	result = hiXorLoFallback64__pureZhashes_35(a, b);
929 	return result;
930 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)931 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
932 	NI result;
933 	NU64 T1_;
934 	NU64 T2_;
935 	result = (NI)0;
936 	T1_ = (NU64)0;
937 	T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
938 	T2_ = (NU64)0;
939 	T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
940 	result = ((NI) (T2_));
941 	return result;
942 }
N_INLINE(NI,hash__pureZhashes_128)943 static N_INLINE(NI, hash__pureZhashes_128)(NI x) {
944 	NI result;
945 	result = (NI)0;
946 	result = hashWangYi1__pureZhashes_136(((NU64) (x)));
947 	return result;
948 }
N_INLINE(NI,hash__pureZhashes_124)949 static N_INLINE(NI, hash__pureZhashes_124)(void* x) {
950 	NI result;
951 	NI y;
952 	result = (NI)0;
953 	y = ((NI) (ptrdiff_t) (x));
954 	result = hash__pureZhashes_128(y);
955 	return result;
956 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)957 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
958 	NIM_BOOL result;
959 	result = (NIM_BOOL)0;
960 	result = !((hcode == ((NI) 0)));
961 	return result;
962 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)963 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
964 	NI result;
965 	result = (NI)0;
966 	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
967 	return result;
968 }
N_INLINE(NI,rawGet__astalgo_1188)969 static N_INLINE(NI, rawGet__astalgo_1188)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI* hc) {
970 	NI result;
971 	NI h;
972 	NI T10_;
973 {	result = (NI)0;
974 	(*hc) = hash__pureZhashes_124(key);
975 	{
976 		if (!((*hc) == ((NI) 0))) goto LA3_;
977 		(*hc) = ((NI) 314159265);
978 	}
979 	LA3_: ;
980 	{
981 		NI T7_;
982 		T7_ = (t.data ? t.data->Sup.len : 0);
983 		if (!(T7_ == ((NI) 0))) goto LA8_;
984 		result = ((NI) -1);
985 		goto BeforeRet_;
986 	}
987 	LA8_: ;
988 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
989 	h = (NI)((*hc) & T10_);
990 	{
991 		while (1) {
992 			NIM_BOOL T13_;
993 			NI T20_;
994 			T13_ = (NIM_BOOL)0;
995 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
996 			if (!T13_) goto LA12;
997 			{
998 				NIM_BOOL T16_;
999 				T16_ = (NIM_BOOL)0;
1000 				T16_ = (t.data->data[h].Field0 == (*hc));
1001 				if (!(T16_)) goto LA17_;
1002 				T16_ = (t.data->data[h].Field1 == key);
1003 				LA17_: ;
1004 				if (!T16_) goto LA18_;
1005 				result = h;
1006 				goto BeforeRet_;
1007 			}
1008 			LA18_: ;
1009 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
1010 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
1011 		} LA12: ;
1012 	}
1013 	result = (NI)(((NI) -1) - h);
1014 	}BeforeRet_: ;
1015 	return result;
1016 }
N_NIMCALL(NI,getOrDefault__astalgo_1178)1017 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__astalgo_1178)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI default_0) {
1018 	NI result;
1019 	NI hcX60gensym97_;
1020 	NI indexX60gensym97_;
1021 	result = (NI)0;
1022 	hcX60gensym97_ = (NI)0;
1023 	indexX60gensym97_ = rawGet__astalgo_1188(t, key, (&hcX60gensym97_));
1024 	{
1025 		if (!(((NI) 0) <= indexX60gensym97_)) goto LA3_;
1026 		result = t.data->data[indexX60gensym97_].Field2;
1027 	}
1028 	goto LA1_;
1029 	LA3_: ;
1030 	{
1031 		result = default_0;
1032 	}
1033 	LA1_: ;
1034 	return result;
1035 }
N_INLINE(NIM_BOOL,mustRehash__astalgo_1695)1036 static N_INLINE(NIM_BOOL, mustRehash__astalgo_1695)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t) {
1037 	NIM_BOOL result;
1038 	NIM_BOOL T1_;
1039 	NI T2_;
1040 	NI T4_;
1041 	result = (NIM_BOOL)0;
1042 	T1_ = (NIM_BOOL)0;
1043 	T2_ = (t.data ? t.data->Sup.len : 0);
1044 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
1045 	if (T1_) goto LA3_;
1046 	T4_ = (t.data ? t.data->Sup.len : 0);
1047 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
1048 	LA3_: ;
1049 	result = T1_;
1050 	return result;
1051 }
N_NIMCALL(void,rawInsert__astalgo_2152)1052 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__astalgo_2152)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, tySequence__9chP3SzkaldXzawWQCDsqqg** data, void* key, NI val, NI hc, NI h) {
1053 	(*data)->data[h].Field1 = key;
1054 	(*data)->data[h].Field2 = val;
1055 	(*data)->data[h].Field0 = hc;
1056 }
N_NIMCALL(void,enlarge__astalgo_1848)1057 N_LIB_PRIVATE N_NIMCALL(void, enlarge__astalgo_1848)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t) {
1058 	tySequence__9chP3SzkaldXzawWQCDsqqg* n;
1059 	NI T1_;
1060 	tySequence__9chP3SzkaldXzawWQCDsqqg* T2_;
1061 	n = NIM_NIL;
1062 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
1063 	n = (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) ((NI)(T1_ * ((NI) 2)))));
1064 	T2_ = NIM_NIL;
1065 	T2_ = (*t).data;
1066 	unsureAsgnRef((void**) (&(*t).data), n);
1067 	n = T2_;
1068 	{
1069 		NI i;
1070 		NI colontmp_;
1071 		NI T4_;
1072 		NI res;
1073 		i = (NI)0;
1074 		colontmp_ = (NI)0;
1075 		T4_ = ((n ? n->Sup.len : 0)-1);
1076 		colontmp_ = T4_;
1077 		res = ((NI) 0);
1078 		{
1079 			while (1) {
1080 				NI eh;
1081 				if (!(res <= colontmp_)) goto LA6;
1082 				i = res;
1083 				eh = n->data[i].Field0;
1084 				{
1085 					NIM_BOOL T9_;
1086 					NI j;
1087 					NI T12_;
1088 					void* T17_;
1089 					NI T18_;
1090 					T9_ = (NIM_BOOL)0;
1091 					T9_ = isFilled__pureZcollectionsZtables_31(eh);
1092 					if (!T9_) goto LA10_;
1093 					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1094 					j = (NI)(eh & T12_);
1095 					{
1096 						while (1) {
1097 							NIM_BOOL T15_;
1098 							NI T16_;
1099 							T15_ = (NIM_BOOL)0;
1100 							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
1101 							if (!T15_) goto LA14;
1102 							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1103 							j = nextTry__pureZcollectionsZtables_34(j, T16_);
1104 						} LA14: ;
1105 					}
1106 					T17_ = (void*)0;
1107 					T17_ = n->data[i].Field1;
1108 					n->data[i].Field1 = 0;
1109 					T18_ = (NI)0;
1110 					T18_ = n->data[i].Field2;
1111 					n->data[i].Field2 = 0;
1112 					rawInsert__astalgo_2152(t, (&(*t).data), T17_, T18_, eh, j);
1113 				}
1114 				LA10_: ;
1115 				res += ((NI) 1);
1116 			} LA6: ;
1117 		}
1118 	}
1119 }
N_INLINE(NI,rawGetKnownHC__astalgo_2321)1120 static N_INLINE(NI, rawGetKnownHC__astalgo_2321)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI hc) {
1121 	NI result;
1122 	NI h;
1123 	NI T6_;
1124 {	result = (NI)0;
1125 	{
1126 		NI T3_;
1127 		T3_ = (t.data ? t.data->Sup.len : 0);
1128 		if (!(T3_ == ((NI) 0))) goto LA4_;
1129 		result = ((NI) -1);
1130 		goto BeforeRet_;
1131 	}
1132 	LA4_: ;
1133 	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
1134 	h = (NI)(hc & T6_);
1135 	{
1136 		while (1) {
1137 			NIM_BOOL T9_;
1138 			NI T16_;
1139 			T9_ = (NIM_BOOL)0;
1140 			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1141 			if (!T9_) goto LA8;
1142 			{
1143 				NIM_BOOL T12_;
1144 				T12_ = (NIM_BOOL)0;
1145 				T12_ = (t.data->data[h].Field0 == hc);
1146 				if (!(T12_)) goto LA13_;
1147 				T12_ = (t.data->data[h].Field1 == key);
1148 				LA13_: ;
1149 				if (!T12_) goto LA14_;
1150 				result = h;
1151 				goto BeforeRet_;
1152 			}
1153 			LA14_: ;
1154 			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
1155 			h = nextTry__pureZcollectionsZtables_34(h, T16_);
1156 		} LA8: ;
1157 	}
1158 	result = (NI)(((NI) -1) - h);
1159 	}BeforeRet_: ;
1160 	return result;
1161 }
N_NIMCALL(void,X5BX5Deq___astalgo_1522)1162 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___astalgo_1522)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, void* key, NI val) {
1163 	NI hc;
1164 	NI index;
1165 	{
1166 		NI T3_;
1167 		NI correctSizeX60gensym102_;
1168 		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
1169 		if (!(T3_ == ((NI) 0))) goto LA4_;
1170 		correctSizeX60gensym102_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1171 		(*t).counter = ((NI) 0);
1172 		unsureAsgnRef((void**) (&(*t).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym102_))));
1173 	}
1174 	LA4_: ;
1175 	hc = (NI)0;
1176 	index = rawGet__astalgo_1188((*t), key, (&hc));
1177 	{
1178 		if (!(((NI) 0) <= index)) goto LA8_;
1179 		(*t).data->data[index].Field2 = val;
1180 	}
1181 	goto LA6_;
1182 	LA8_: ;
1183 	{
1184 		{
1185 			NI T13_;
1186 			NI correctSizeX60gensym105_;
1187 			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
1188 			if (!(T13_ == ((NI) 0))) goto LA14_;
1189 			correctSizeX60gensym105_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1190 			(*t).counter = ((NI) 0);
1191 			unsureAsgnRef((void**) (&(*t).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym105_))));
1192 		}
1193 		LA14_: ;
1194 		{
1195 			NIM_BOOL T18_;
1196 			T18_ = (NIM_BOOL)0;
1197 			T18_ = mustRehash__astalgo_1695((*t));
1198 			if (!T18_) goto LA19_;
1199 			enlarge__astalgo_1848(t);
1200 			index = rawGetKnownHC__astalgo_2321((*t), key, hc);
1201 		}
1202 		LA19_: ;
1203 		index = (NI)(((NI) -1) - index);
1204 		rawInsert__astalgo_2152(t, (&(*t).data), key, val, hc, index);
1205 		(*t).counter += ((NI) 1);
1206 	}
1207 	LA6_: ;
1208 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)1209 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
1210 	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
1211 }
N_NIMCALL(void,indentMore__astalgo_1039)1212 N_LIB_PRIVATE N_NIMCALL(void, indentMore__astalgo_1039)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1213 	(*this_0).indent += ((NI) 2);
1214 }
N_NIMCALL(void,openCurly__astalgo_1062)1215 N_LIB_PRIVATE N_NIMCALL(void, openCurly__astalgo_1062)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1216 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1217 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_8));
1218 	indentMore__astalgo_1039(this_0);
1219 	(*this_0).firstItem = NIM_TRUE;
1220 }
N_NIMCALL(void,newlineAndIndent__astalgo_1051)1221 N_LIB_PRIVATE N_NIMCALL(void, newlineAndIndent__astalgo_1051)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1222 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1223 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_10));
1224 	(*this_0).currentLine += ((NI) 1);
1225 	{
1226 		NI i;
1227 		NI i_2;
1228 		i = (NI)0;
1229 		i_2 = ((NI) 0);
1230 		{
1231 			while (1) {
1232 				if (!(i_2 < (*this_0).indent)) goto LA3;
1233 				i = i_2;
1234 				unsureAsgnRef((void**) (&(*this_0).res), addChar((*this_0).res, 32));
1235 				i_2 += ((NI) 1);
1236 			} LA3: ;
1237 		}
1238 	}
1239 }
N_NIMCALL(void,key__astalgo_1072)1240 N_LIB_PRIVATE N_NIMCALL(void, key__astalgo_1072)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* key) {
1241 	{
1242 		if (!!((*this_0).firstItem)) goto LA3_;
1243 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1244 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_9));
1245 	}
1246 	LA3_: ;
1247 	(*this_0).firstItem = NIM_FALSE;
1248 	newlineAndIndent__astalgo_1051(this_0);
1249 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1250 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1251 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (key ? key->Sup.len : 0) + 0));
1252 appendString((*this_0).res, key);
1253 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 3));
1254 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_12));
1255 }
N_NIMCALL(void,value__astalgo_2558)1256 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2558)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw value) {
1257 	{
1258 		if (!(*this_0).useColor) goto LA3_;
1259 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1260 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1261 	}
1262 	LA3_: ;
1263 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1264 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1265 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)) ? reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_))->Sup.len : 0) + 0));
1266 appendString((*this_0).res, reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)));
1267 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1268 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1269 	{
1270 		if (!(*this_0).useColor) goto LA7_;
1271 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1272 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1273 	}
1274 	LA7_: ;
1275 }
N_NIMCALL(void,value__astalgo_1075)1276 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1075)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* value) {
1277 	{
1278 		if (!(*this_0).useColor) goto LA3_;
1279 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1280 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_16));
1281 	}
1282 	LA3_: ;
1283 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1284 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1285 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (value ? value->Sup.len : 0) + 0));
1286 appendString((*this_0).res, value);
1287 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1288 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1289 	{
1290 		if (!(*this_0).useColor) goto LA7_;
1291 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1292 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1293 	}
1294 	LA7_: ;
1295 }
N_NIMCALL(void,value__astalgo_1078)1296 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1078)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NI64 value) {
1297 	{
1298 		if (!(*this_0).useColor) goto LA3_;
1299 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1300 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_18));
1301 	}
1302 	LA3_: ;
1303 	addInt__stdZprivateZdigitsutils_167((&(*this_0).res), value);
1304 	{
1305 		if (!(*this_0).useColor) goto LA7_;
1306 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1307 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1308 	}
1309 	LA7_: ;
1310 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_61)1311 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_61)(NU64 x) {
1312 	NI result;
1313 	int T1_;
1314 	result = (NI)0;
1315 	T1_ = (int)0;
1316 	T1_ = __builtin_popcountll(x);
1317 	result = ((NI) (T1_));
1318 	return result;
1319 }
N_INLINE(NI,countBits64)1320 static N_INLINE(NI, countBits64)(NU64 n) {
1321 	NI result;
1322 	result = (NI)0;
1323 	result = countSetBitsImpl__systemZcountbits95impl_61(n);
1324 	return result;
1325 }
N_NIMCALL(void,openBracket__astalgo_1068)1326 N_LIB_PRIVATE N_NIMCALL(void, openBracket__astalgo_1068)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1327 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1328 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_21));
1329 }
N_NIMCALL(void,value__astalgo_2591)1330 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2591)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value) {
1331 	{
1332 		if (!(*this_0).useColor) goto LA3_;
1333 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1334 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1335 	}
1336 	LA3_: ;
1337 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1338 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1339 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_)) ? reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_))->Sup.len : 0) + 0));
1340 appendString((*this_0).res, reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_)));
1341 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1342 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1343 	{
1344 		if (!(*this_0).useColor) goto LA7_;
1345 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1346 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1347 	}
1348 	LA7_: ;
1349 }
N_NIMCALL(void,comma__astalgo_1066)1350 N_LIB_PRIVATE N_NIMCALL(void, comma__astalgo_1066)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1351 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 2));
1352 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_22));
1353 }
N_NIMCALL(void,closeBracket__astalgo_1070)1354 N_LIB_PRIVATE N_NIMCALL(void, closeBracket__astalgo_1070)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1355 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1356 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_23));
1357 }
N_NIMCALL(void,value__astalgo_2578)1358 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2578)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value) {
1359 	NI high;
1360 	NI i;
1361 	openBracket__astalgo_1068(this_0);
1362 	high = (NI)(countBits64(value) - ((NI) 1));
1363 	i = ((NI) 0);
1364 	{
1365 		tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw v;
1366 		NI i_2;
1367 		v = (tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw)0;
1368 		i_2 = ((NI) 0);
1369 		{
1370 			while (1) {
1371 				if (!(i_2 <= ((NI) 47))) goto LA3;
1372 				{
1373 					if (!((value &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) (i_2)))&63U)))!=0)) goto LA6_;
1374 					v = ((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) (i_2));
1375 					value__astalgo_2591(this_0, v);
1376 					{
1377 						if (!!((i == high))) goto LA10_;
1378 						comma__astalgo_1066(this_0);
1379 					}
1380 					LA10_: ;
1381 					i += ((NI) 1);
1382 				}
1383 				LA6_: ;
1384 				i_2 += ((NI) 1);
1385 			} LA3: ;
1386 		}
1387 	}
1388 	closeBracket__astalgo_1070(this_0);
1389 }
N_NIMCALL(void,value__astalgo_2734)1390 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2734)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag value) {
1391 	{
1392 		if (!(*this_0).useColor) goto LA3_;
1393 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1394 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1395 	}
1396 	LA3_: ;
1397 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1398 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1399 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 0));
1400 appendString((*this_0).res, reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
1401 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1402 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1403 	{
1404 		if (!(*this_0).useColor) goto LA7_;
1405 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1406 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1407 	}
1408 	LA7_: ;
1409 }
N_NIMCALL(void,value__astalgo_2767)1410 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2767)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value) {
1411 	{
1412 		if (!(*this_0).useColor) goto LA3_;
1413 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1414 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1415 	}
1416 	LA3_: ;
1417 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1418 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1419 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_)) ? reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_))->Sup.len : 0) + 0));
1420 appendString((*this_0).res, reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_)));
1421 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1422 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1423 	{
1424 		if (!(*this_0).useColor) goto LA7_;
1425 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1426 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1427 	}
1428 	LA7_: ;
1429 }
N_NIMCALL(void,value__astalgo_2754)1430 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2754)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value) {
1431 	NI high;
1432 	NI i;
1433 	openBracket__astalgo_1068(this_0);
1434 	high = (NI)(countBits64(value) - ((NI) 1));
1435 	i = ((NI) 0);
1436 	{
1437 		tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw v;
1438 		NI i_2;
1439 		v = (tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw)0;
1440 		i_2 = ((NI) 0);
1441 		{
1442 			while (1) {
1443 				if (!(i_2 <= ((NI) 44))) goto LA3;
1444 				{
1445 					if (!((value &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) (i_2)))&63U)))!=0)) goto LA6_;
1446 					v = ((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) (i_2));
1447 					value__astalgo_2767(this_0, v);
1448 					{
1449 						if (!!((i == high))) goto LA10_;
1450 						comma__astalgo_1066(this_0);
1451 					}
1452 					LA10_: ;
1453 					i += ((NI) 1);
1454 				}
1455 				LA6_: ;
1456 				i_2 += ((NI) 1);
1457 			} LA3: ;
1458 		}
1459 	}
1460 	closeBracket__astalgo_1070(this_0);
1461 }
N_NIMCALL(void,value__astalgo_2933)1462 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2933)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw value) {
1463 	{
1464 		if (!(*this_0).useColor) goto LA3_;
1465 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1466 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1467 	}
1468 	LA3_: ;
1469 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1470 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1471 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 0));
1472 appendString((*this_0).res, reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
1473 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1474 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1475 	{
1476 		if (!(*this_0).useColor) goto LA7_;
1477 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1478 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1479 	}
1480 	LA7_: ;
1481 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___astalgo_353)1482 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___astalgo_353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
1483 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1484 	result = NIM_NIL;
1485 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_29), args, argsLen_0);
1486 	return result;
1487 }
N_INLINE(void,appendChar)1488 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1489 	(*dest).data[(*dest).Sup.len] = c;
1490 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1491 	(*dest).Sup.len += ((NI) 1);
1492 }
N_NIMCALL(NimStringDesc *,toYamlChar__astalgo_320)1493 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toYamlChar__astalgo_320)(NIM_CHAR c) {
1494 	NimStringDesc* result;
1495 	result = NIM_NIL;
1496 	switch (((NU8)(c))) {
1497 	case 0 ... 31:
1498 	case 127 ... 255:
1499 	{
1500 		NimStringDesc* T2_;
1501 		NimStringDesc* T3_;
1502 		T2_ = NIM_NIL;
1503 		T3_ = NIM_NIL;
1504 		T3_ = toHex__pureZstrutils_1792(((NU8)(c)), ((NI) 4));
1505 		T2_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 2);
1506 appendString(T2_, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_30));
1507 appendString(T2_, T3_);
1508 		result = T2_;
1509 	}
1510 	break;
1511 	case 39:
1512 	case 34:
1513 	case 92:
1514 	{
1515 		NimStringDesc* T5_;
1516 		T5_ = NIM_NIL;
1517 		T5_ = rawNewString(2);
1518 appendChar(T5_, 92);
1519 appendChar(T5_, c);
1520 		result = T5_;
1521 	}
1522 	break;
1523 	default:
1524 	{
1525 		result = nimCharToStr(c);
1526 	}
1527 	break;
1528 	}
1529 	return result;
1530 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,makeYamlString__astalgo_330)1531 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeYamlString__astalgo_330)(NimStringDesc* s) {
1532 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1533 	NimStringDesc* res;
1534 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
1535 	result = NIM_NIL;
1536 	result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
1537 	res = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1538 	{
1539 		NI i;
1540 		NI colontmp_;
1541 		NI i_2;
1542 		i = (NI)0;
1543 		colontmp_ = (NI)0;
1544 		colontmp_ = (s ? s->Sup.len : 0);
1545 		i_2 = ((NI) 0);
1546 		{
1547 			while (1) {
1548 				NimStringDesc* T9_;
1549 				if (!(i_2 < colontmp_)) goto LA3;
1550 				i = i_2;
1551 				{
1552 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
1553 					if (!((NI)((NI)(i + ((NI) 1)) % ((NI) 64)) == ((NI) 0))) goto LA6_;
1554 					res = addChar(res, 34);
1555 					res = resizeString(res, 1);
1556 appendString(res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_10));
1557 					T8_ = NIM_NIL;
1558 					T8_ = rope__ropes_109(res);
1559 					add__ropes_159(&result, T8_);
1560 					res = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1561 				}
1562 				LA6_: ;
1563 				T9_ = NIM_NIL;
1564 				T9_ = toYamlChar__astalgo_320(s->data[i]);
1565 				res = resizeString(res, (T9_ ? T9_->Sup.len : 0) + 0);
1566 appendString(res, T9_);
1567 				i_2 += ((NI) 1);
1568 			} LA3: ;
1569 		}
1570 	}
1571 	res = addChar(res, 34);
1572 	T10_ = NIM_NIL;
1573 	T10_ = rope__ropes_109(res);
1574 	add__ropes_159(&result, T10_);
1575 	return result;
1576 }
N_INLINE(NI,toLinenumber__msgs_609)1577 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1578 	NI result;
1579 	result = (NI)0;
1580 	result = ((NI) (info.line));
1581 	return result;
1582 }
N_INLINE(NI,toColumn__msgs_612)1583 static N_INLINE(NI, toColumn__msgs_612)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1584 	NI result;
1585 	result = (NI)0;
1586 	result = ((NI) (info.col));
1587 	return result;
1588 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,lineInfoToStr__astalgo_28)1589 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lineInfoToStr__astalgo_28)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1590 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1591 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T1_;
1592 	NimStringDesc* T2_;
1593 	NI T15_;
1594 	NI T16_;
1595 	result = NIM_NIL;
1596 	nimZeroMem((void*)T1_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
1597 	T2_ = NIM_NIL;
1598 	{
1599 		NIM_BOOL T5_;
1600 		T5_ = (NIM_BOOL)0;
1601 		T5_ = (info.fileIndex < ((NI32) 0));
1602 		if (T5_) goto LA6_;
1603 		T5_ = (conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL));
1604 		LA6_: ;
1605 		if (!T5_) goto LA7_;
1606 		{
1607 			if (!(info.fileIndex == ((NI32) -3))) goto LA11_;
1608 			T2_ = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_31));
1609 		}
1610 		goto LA9_;
1611 		LA11_: ;
1612 		{
1613 			T2_ = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_32));
1614 		}
1615 		LA9_: ;
1616 	}
1617 	goto LA3_;
1618 	LA7_: ;
1619 	{
1620 		T2_ = copyString((*conf).m.fileInfos->data[info.fileIndex].shortName);
1621 	}
1622 	LA3_: ;
1623 	T1_[0] = makeYamlString__astalgo_330(T2_);
1624 	T15_ = (NI)0;
1625 	T15_ = toLinenumber__msgs_609(info);
1626 	T1_[1] = rope__ropes_115(((NI64) (T15_)));
1627 	T16_ = (NI)0;
1628 	T16_ = toColumn__msgs_612(info);
1629 	T1_[2] = rope__ropes_115(((NI64) (T16_)));
1630 	result = percent___astalgo_353(T1_, 3);
1631 	return result;
1632 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_26)1633 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x) {
1634 	NI result;
1635 	int T1_;
1636 	result = (NI)0;
1637 	T1_ = (int)0;
1638 	T1_ = __builtin_popcount(x);
1639 	result = ((NI) (T1_));
1640 	return result;
1641 }
N_INLINE(NI,countBits32)1642 static N_INLINE(NI, countBits32)(NU32 n) {
1643 	NI result;
1644 	result = (NI)0;
1645 	result = countSetBitsImpl__systemZcountbits95impl_26(n);
1646 	return result;
1647 }
N_NIMCALL(void,value__astalgo_2988)1648 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2988)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value) {
1649 	{
1650 		if (!(*this_0).useColor) goto LA3_;
1651 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1652 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1653 	}
1654 	LA3_: ;
1655 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1656 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1657 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_)) ? reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_))->Sup.len : 0) + 0));
1658 appendString((*this_0).res, reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_)));
1659 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1660 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1661 	{
1662 		if (!(*this_0).useColor) goto LA7_;
1663 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1664 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1665 	}
1666 	LA7_: ;
1667 }
N_NIMCALL(void,value__astalgo_2948)1668 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2948)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value) {
1669 	NI high;
1670 	NI i;
1671 	openBracket__astalgo_1068(this_0);
1672 	high = (NI)(countBits32(value) - ((NI) 1));
1673 	i = ((NI) 0);
1674 	{
1675 		tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg v;
1676 		NI i_2;
1677 		v = (tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg)0;
1678 		i_2 = ((NI) 0);
1679 		{
1680 			while (1) {
1681 				if (!(i_2 <= ((NI) 23))) goto LA3;
1682 				{
1683 					if (!((value &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) (i_2)))&31U)))!=0)) goto LA6_;
1684 					v = ((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) (i_2));
1685 					value__astalgo_2988(this_0, v);
1686 					{
1687 						if (!!((i == high))) goto LA10_;
1688 						comma__astalgo_1066(this_0);
1689 					}
1690 					LA10_: ;
1691 					i += ((NI) 1);
1692 				}
1693 				LA6_: ;
1694 				i_2 += ((NI) 1);
1695 			} LA3: ;
1696 		}
1697 	}
1698 	closeBracket__astalgo_1070(this_0);
1699 }
N_INLINE(NIM_BOOL,signbit__astalgo_926)1700 static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x) {
1701 	NIM_BOOL result;
1702 	int T1_;
1703 	result = (NIM_BOOL)0;
1704 	T1_ = (int)0;
1705 	T1_ = signbit(x);
1706 	result = !((T1_ == ((NI32) 0)));
1707 	return result;
1708 }
N_NIMCALL(NimStringDesc *,toStrMaxPrecision__astalgo_920)1709 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__astalgo_920)(NF f) {
1710 	NimStringDesc* result;
1711 	tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA T1_;
1712 	result = NIM_NIL;
1713 	T1_ = (tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA)0;
1714 	T1_ = classify__pureZmath_147(f);
1715 	switch (T1_) {
1716 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 4):
1717 	{
1718 		{
1719 			NIM_BOOL T5_;
1720 			T5_ = (NIM_BOOL)0;
1721 			T5_ = signbit__astalgo_926(f);
1722 			if (!T5_) goto LA6_;
1723 			result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_36));
1724 		}
1725 		goto LA3_;
1726 		LA6_: ;
1727 		{
1728 			result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_37));
1729 		}
1730 		LA3_: ;
1731 	}
1732 	break;
1733 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 3):
1734 	{
1735 		result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_38));
1736 	}
1737 	break;
1738 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 2):
1739 	{
1740 		result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_39));
1741 	}
1742 	break;
1743 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 5):
1744 	{
1745 		result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_40));
1746 	}
1747 	break;
1748 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 6):
1749 	{
1750 		result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_41));
1751 	}
1752 	break;
1753 	default:
1754 	{
1755 		addFloatRoundtrip__system_3127((&result), f);
1756 		result = resizeString(result, 0);
1757 appendString(result, ((NimStringDesc*) NIM_NIL));
1758 	}
1759 	break;
1760 	}
1761 	return result;
1762 }
N_INLINE(NIM_BOOL,eqeq___idents_220)1763 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b) {
1764 	NIM_BOOL result;
1765 	result = (NIM_BOOL)0;
1766 	{
1767 		NIM_BOOL T3_;
1768 		T3_ = (NIM_BOOL)0;
1769 		T3_ = (a == 0);
1770 		if (T3_) goto LA4_;
1771 		T3_ = (b == 0);
1772 		LA4_: ;
1773 		if (!T3_) goto LA5_;
1774 		result = (a == b);
1775 	}
1776 	goto LA1_;
1777 	LA5_: ;
1778 	{
1779 		result = ((*a).id == (*b).id);
1780 	}
1781 	LA1_: ;
1782 	return result;
1783 }
N_INLINE(NI,len__ast_3198)1784 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1785 	NI result;
1786 	NI T1_;
1787 	result = (NI)0;
1788 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
1789 	result = T1_;
1790 	return result;
1791 }
N_NIMCALL(void,indentLess__astalgo_1045)1792 N_LIB_PRIVATE N_NIMCALL(void, indentLess__astalgo_1045)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1793 	(*this_0).indent -= ((NI) 2);
1794 }
N_NIMCALL(void,closeCurly__astalgo_1064)1795 N_LIB_PRIVATE N_NIMCALL(void, closeCurly__astalgo_1064)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1796 	indentLess__astalgo_1045(this_0);
1797 	newlineAndIndent__astalgo_1051(this_0);
1798 	unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1799 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_45));
1800 }
N_NIMCALL(void,value__astalgo_1100)1801 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1100)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
1802 	NI indexX60gensym127_;
1803 {	{
1804 		if (!(value == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
1805 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1806 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
1807 		goto BeforeRet_;
1808 	}
1809 	LA3_: ;
1810 	indexX60gensym127_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
1811 	{
1812 		if (!(indexX60gensym127_ < ((NI) 0))) goto LA7_;
1813 		X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
1814 	}
1815 	goto LA5_;
1816 	LA7_: ;
1817 	{
1818 		{
1819 			if (!(*this_0).useColor) goto LA12_;
1820 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1821 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
1822 		}
1823 		LA12_: ;
1824 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
1825 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
1826 		addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym127_));
1827 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
1828 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
1829 		{
1830 			if (!(*this_0).useColor) goto LA16_;
1831 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1832 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1833 		}
1834 		LA16_: ;
1835 		goto BeforeRet_;
1836 	}
1837 	LA5_: ;
1838 	openCurly__astalgo_1062(this_0);
1839 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
1840 	value__astalgo_2933(this_0, (*value).kind);
1841 	{
1842 		NimStringDesc* T20_;
1843 		NimStringDesc* T23_;
1844 		T20_ = NIM_NIL;
1845 		T20_ = comment__ast_993(value);
1846 		if (!(((NI) 0) < (T20_ ? T20_->Sup.len : 0))) goto LA21_;
1847 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_27));
1848 		T23_ = NIM_NIL;
1849 		T23_ = comment__ast_993(value);
1850 		value__astalgo_1075(this_0, T23_);
1851 	}
1852 	LA21_: ;
1853 	{
1854 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
1855 		NimStringDesc* T29_;
1856 		if (!!(((*this_0).conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL)))) goto LA26_;
1857 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_28));
1858 		T28_ = NIM_NIL;
1859 		T28_ = lineInfoToStr__astalgo_28((*this_0).conf, (*value).info);
1860 		T29_ = NIM_NIL;
1861 		T29_ = dollar___ropes_250(T28_);
1862 		value__astalgo_1075(this_0, T29_);
1863 	}
1864 	LA26_: ;
1865 	{
1866 		if (!!(((*value).flags == 0))) goto LA32_;
1867 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
1868 		value__astalgo_2948(this_0, (*value).flags);
1869 	}
1870 	LA32_: ;
1871 	{
1872 		if (!!(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA36_;
1873 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1874 		value__astalgo_2734(this_0, (*(*value).typ).kind);
1875 	}
1876 	goto LA34_;
1877 	LA36_: ;
1878 	{
1879 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1880 		value__astalgo_1075(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_33));
1881 	}
1882 	LA34_: ;
1883 	switch ((*value).kind) {
1884 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
1885 	{
1886 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_34));
1887 		value__astalgo_1078(this_0, (*value)._kind_1.intVal);
1888 	}
1889 	break;
1890 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16):
1891 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 17):
1892 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
1893 	{
1894 		NimStringDesc* T41_;
1895 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_35));
1896 		T41_ = NIM_NIL;
1897 		T41_ = toStrMaxPrecision__astalgo_920((*value)._kind_2.floatVal);
1898 		value__astalgo_1075(this_0, T41_);
1899 	}
1900 	break;
1901 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
1902 	{
1903 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_42));
1904 		value__astalgo_1075(this_0, (*value)._kind_3.strVal);
1905 	}
1906 	break;
1907 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1908 	{
1909 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_25));
1910 		value__astalgo_1103(this_0, (*value)._kind_4.sym);
1911 	}
1912 	break;
1913 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1914 	{
1915 		{
1916 			NIM_BOOL T47_;
1917 			T47_ = (NIM_BOOL)0;
1918 			T47_ = eqeq___idents_220((*value)._kind_5.ident, ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
1919 			if (!!(T47_)) goto LA48_;
1920 			key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_43));
1921 			value__astalgo_1075(this_0, (*(*value)._kind_5.ident).s);
1922 		}
1923 		LA48_: ;
1924 	}
1925 	break;
1926 	default:
1927 	{
1928 		{
1929 			NIM_BOOL T53_;
1930 			T53_ = (NIM_BOOL)0;
1931 			T53_ = (*this_0).renderSymType;
1932 			if (!(T53_)) goto LA54_;
1933 			T53_ = !(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
1934 			LA54_: ;
1935 			if (!T53_) goto LA55_;
1936 			key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1937 			value__astalgo_1097(this_0, (*value).typ);
1938 		}
1939 		LA55_: ;
1940 		{
1941 			NI T59_;
1942 			T59_ = (NI)0;
1943 			T59_ = len__ast_3198(value);
1944 			if (!(((NI) 0) < T59_)) goto LA60_;
1945 			key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_44));
1946 			openBracket__astalgo_1068(this_0);
1947 			{
1948 				NI i;
1949 				NI colontmp_;
1950 				NI i_2;
1951 				i = (NI)0;
1952 				colontmp_ = (NI)0;
1953 				colontmp_ = len__ast_3198(value);
1954 				i_2 = ((NI) 0);
1955 				{
1956 					while (1) {
1957 						if (!(i_2 < colontmp_)) goto LA64;
1958 						i = i_2;
1959 						value__astalgo_1100(this_0, (*value)._kind_6.sons->data[i]);
1960 						{
1961 							NI T67_;
1962 							T67_ = (NI)0;
1963 							T67_ = len__ast_3198(value);
1964 							if (!!((i == (NI)(T67_ - ((NI) 1))))) goto LA68_;
1965 							comma__astalgo_1066(this_0);
1966 						}
1967 						LA68_: ;
1968 						i_2 += ((NI) 1);
1969 					} LA64: ;
1970 				}
1971 			}
1972 			closeBracket__astalgo_1070(this_0);
1973 		}
1974 		LA60_: ;
1975 	}
1976 	break;
1977 	}
1978 	closeCurly__astalgo_1064(this_0);
1979 	}BeforeRet_: ;
1980 }
N_INLINE(NI,len__ast_4002)1981 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
1982 	NI result;
1983 	NI T1_;
1984 	result = (NI)0;
1985 	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
1986 	result = T1_;
1987 	return result;
1988 }
N_NIMCALL(void,value__astalgo_1097)1989 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1097)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TType__facALICuu8zUj0hjvbTLFg* value) {
1990 	NI indexX60gensym117_;
1991 	tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym118_;
1992 {	{
1993 		if (!(value == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
1994 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1995 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
1996 		goto BeforeRet_;
1997 	}
1998 	LA3_: ;
1999 	indexX60gensym117_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
2000 	{
2001 		if (!(indexX60gensym117_ < ((NI) 0))) goto LA7_;
2002 		X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
2003 	}
2004 	goto LA5_;
2005 	LA7_: ;
2006 	{
2007 		{
2008 			if (!(*this_0).useColor) goto LA12_;
2009 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
2010 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
2011 		}
2012 		LA12_: ;
2013 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
2014 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
2015 		addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym117_));
2016 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
2017 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
2018 		{
2019 			if (!(*this_0).useColor) goto LA16_;
2020 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
2021 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
2022 		}
2023 		LA16_: ;
2024 		goto BeforeRet_;
2025 	}
2026 	LA5_: ;
2027 	openCurly__astalgo_1062(this_0);
2028 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
2029 	value__astalgo_2734(this_0, (*value).kind);
2030 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_17));
2031 	xX60gensym118_ = value;
2032 	value__astalgo_1078(this_0, ((NI64) ((NI)((NI)((NU32)(((NI) ((*xX60gensym118_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym118_).Sup.itemId.item))))));
2033 	{
2034 		if (!!(((*value).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA20_;
2035 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_25));
2036 		value__astalgo_1103(this_0, (*value).sym);
2037 	}
2038 	LA20_: ;
2039 	{
2040 		if (!(((NI) 0) < countBits64((*value).flags))) goto LA24_;
2041 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
2042 		value__astalgo_2754(this_0, (*value).flags);
2043 	}
2044 	LA24_: ;
2045 	{
2046 		NIM_BOOL T28_;
2047 		T28_ = (NIM_BOOL)0;
2048 		T28_ = ((*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2) || (*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
2049 		if (!(T28_)) goto LA29_;
2050 		T28_ = !(((*value).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
2051 		LA29_: ;
2052 		if (!T28_) goto LA30_;
2053 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_26));
2054 		value__astalgo_1100(this_0, (*value).n);
2055 	}
2056 	LA30_: ;
2057 	{
2058 		NI T34_;
2059 		T34_ = (NI)0;
2060 		T34_ = len__ast_4002(value);
2061 		if (!(((NI) 0) < T34_)) goto LA35_;
2062 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_44));
2063 		openBracket__astalgo_1068(this_0);
2064 		{
2065 			NI i;
2066 			NI colontmp_;
2067 			NI i_2;
2068 			i = (NI)0;
2069 			colontmp_ = (NI)0;
2070 			colontmp_ = len__ast_4002(value);
2071 			i_2 = ((NI) 0);
2072 			{
2073 				while (1) {
2074 					if (!(i_2 < colontmp_)) goto LA39;
2075 					i = i_2;
2076 					value__astalgo_1097(this_0, (*value).sons->data[i]);
2077 					{
2078 						NI T42_;
2079 						T42_ = (NI)0;
2080 						T42_ = len__ast_4002(value);
2081 						if (!!((i == (NI)(T42_ - ((NI) 1))))) goto LA43_;
2082 						comma__astalgo_1066(this_0);
2083 					}
2084 					LA43_: ;
2085 					i_2 += ((NI) 1);
2086 				} LA39: ;
2087 			}
2088 		}
2089 		closeBracket__astalgo_1070(this_0);
2090 	}
2091 	LA35_: ;
2092 	{
2093 		if (!!(((*value).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA47_;
2094 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_26));
2095 		value__astalgo_1100(this_0, (*value).n);
2096 	}
2097 	LA47_: ;
2098 	closeCurly__astalgo_1064(this_0);
2099 	}BeforeRet_: ;
2100 }
N_NIMCALL(void,value__astalgo_1103)2101 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1103)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* value) {
2102 	NI indexX60gensym96_;
2103 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym113_;
2104 {	{
2105 		if (!(value == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA3_;
2106 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
2107 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
2108 		goto BeforeRet_;
2109 	}
2110 	LA3_: ;
2111 	indexX60gensym96_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
2112 	{
2113 		if (!(indexX60gensym96_ < ((NI) 0))) goto LA7_;
2114 		X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
2115 	}
2116 	goto LA5_;
2117 	LA7_: ;
2118 	{
2119 		{
2120 			if (!(*this_0).useColor) goto LA12_;
2121 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
2122 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
2123 		}
2124 		LA12_: ;
2125 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
2126 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
2127 		addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym96_));
2128 		unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
2129 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
2130 		{
2131 			if (!(*this_0).useColor) goto LA16_;
2132 			unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
2133 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
2134 		}
2135 		LA16_: ;
2136 		goto BeforeRet_;
2137 	}
2138 	LA5_: ;
2139 	openCurly__astalgo_1062(this_0);
2140 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
2141 	value__astalgo_2558(this_0, (*value).kind);
2142 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_15));
2143 	value__astalgo_1075(this_0, (*(*value).name).s);
2144 	key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_17));
2145 	xX60gensym113_ = value;
2146 	value__astalgo_1078(this_0, ((NI64) ((NI)((NI)((NU32)(((NI) ((*xX60gensym113_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym113_).Sup.itemId.item))))));
2147 	{
2148 		if (!((1572872 &((NU32)1<<((NU)((*value).kind)&31U)))!=0)) goto LA20_;
2149 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_19));
2150 		value__astalgo_1078(this_0, ((NI64) ((*value).position)));
2151 	}
2152 	LA20_: ;
2153 	{
2154 		if (!(((NI) 0) < countBits64((*value).flags))) goto LA24_;
2155 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
2156 		value__astalgo_2578(this_0, (*value).flags);
2157 	}
2158 	LA24_: ;
2159 	{
2160 		NIM_BOOL T28_;
2161 		T28_ = (NIM_BOOL)0;
2162 		T28_ = (*this_0).renderSymType;
2163 		if (!(T28_)) goto LA29_;
2164 		T28_ = !(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2165 		LA29_: ;
2166 		if (!T28_) goto LA30_;
2167 		key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
2168 		value__astalgo_1097(this_0, (*value).typ);
2169 	}
2170 	LA30_: ;
2171 	closeCurly__astalgo_1064(this_0);
2172 	}BeforeRet_: ;
2173 }
N_NIMCALL(void,debugSym)2174 N_LIB_PRIVATE N_NIMCALL(void, debugSym)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2175 	tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2176 	tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2177 	nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2178 	initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2179 	this_1.renderSymType = NIM_TRUE;
2180 	this_1.useColor = NIM_TRUE;
2181 	value__astalgo_1103((&this_1), n);
2182 	nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2183 	T1_[0] = copyString(this_1.res);
2184 	echoBinSafe(T1_, 1);
2185 }
N_NIMCALL(void,debugType)2186 N_LIB_PRIVATE N_NIMCALL(void, debugType)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2187 	tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2188 	tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2189 	nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2190 	initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2191 	this_1.renderSymType = NIM_TRUE;
2192 	this_1.useColor = NIM_TRUE;
2193 	value__astalgo_1097((&this_1), n);
2194 	nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2195 	T1_[0] = copyString(this_1.res);
2196 	echoBinSafe(T1_, 1);
2197 }
N_NIMCALL(void,debugNode)2198 N_LIB_PRIVATE N_NIMCALL(void, debugNode)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2199 	tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2200 	tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2201 	nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2202 	initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2203 	this_1.useColor = NIM_TRUE;
2204 	value__astalgo_1100((&this_1), n);
2205 	nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2206 	T1_[0] = copyString(this_1.res);
2207 	echoBinSafe(T1_, 1);
2208 }
N_INLINE(NI,nextTry__astalgo_90)2209 static N_INLINE(NI, nextTry__astalgo_90)(NI h, NI maxHash) {
2210 	NI result;
2211 	result = (NI)0;
2212 	result = (NI)((NI)((NI)(((NI) 5) * h) + ((NI) 1)) & maxHash);
2213 	return result;
2214 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,strTableGet__astalgo_3390)2215 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableGet__astalgo_3390)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA t, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name) {
2216 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2217 	NI h;
2218 	NI T1_;
2219 	result = NIM_NIL;
2220 	T1_ = ((t.data ? t.data->Sup.len : 0)-1);
2221 	h = (NI)((*name).h & T1_);
2222 	{
2223 		while (1) {
2224 			NI T12_;
2225 			result = t.data->data[h];
2226 			{
2227 				if (!(result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA6_;
2228 				goto LA2;
2229 			}
2230 			LA6_: ;
2231 			{
2232 				if (!((*(*result).name).id == (*name).id)) goto LA10_;
2233 				goto LA2;
2234 			}
2235 			LA10_: ;
2236 			T12_ = ((t.data ? t.data->Sup.len : 0)-1);
2237 			h = nextTry__astalgo_90(h, T12_);
2238 		}
2239 	} LA2: ;
2240 	return result;
2241 }
N_NIMCALL(NIM_BOOL,mustRehash__astalgo_87)2242 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, mustRehash__astalgo_87)(NI length, NI counter) {
2243 	NIM_BOOL result;
2244 	NIM_BOOL T1_;
2245 	result = (NIM_BOOL)0;
2246 	T1_ = (NIM_BOOL)0;
2247 	T1_ = ((NI)(length * ((NI) 2)) < (NI)(counter * ((NI) 3)));
2248 	if (T1_) goto LA2_;
2249 	T1_ = ((NI)(length - counter) < ((NI) 4));
2250 	LA2_: ;
2251 	result = T1_;
2252 	return result;
2253 }
N_INLINE(NI,pluspercent___system_696)2254 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2255 	NI result;
2256 	result = (NI)0;
2257 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
2258 	return result;
2259 }
N_INLINE(void,incRef__system_5308)2260 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2261 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2262 }
N_INLINE(NI,minuspercent___system_716)2263 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2264 	NI result;
2265 	result = (NI)0;
2266 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
2267 	return result;
2268 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5270)2269 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr) {
2270 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2271 	NI T1_;
2272 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2273 	T1_ = (NI)0;
2274 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
2275 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2276 	return result;
2277 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2278 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2279 	NIM_BOOL result;
2280 	result = (NIM_BOOL)0;
2281 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
2282 	return result;
2283 }
N_INLINE(void,rtlAddZCT__system_5313)2284 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2285 	addZCT__system_5264((&gch__system_5217.zct), c);
2286 }
N_INLINE(void,decRef__system_5315)2287 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2288 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2289 	{
2290 		NIM_BOOL T3_;
2291 		T3_ = (NIM_BOOL)0;
2292 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2293 		if (!T3_) goto LA4_;
2294 		rtlAddZCT__system_5313(c);
2295 	}
2296 	LA4_: ;
2297 }
N_INLINE(void,asgnRef)2298 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2299 	{
2300 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2301 		if (!!((src == NIM_NIL))) goto LA3_;
2302 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2303 		T5_ = usrToCell__system_5270(src);
2304 		incRef__system_5308(T5_);
2305 	}
2306 	LA3_: ;
2307 	{
2308 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2309 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
2310 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2311 		T10_ = usrToCell__system_5270((*dest));
2312 		decRef__system_5315(T10_);
2313 	}
2314 	LA8_: ;
2315 	(*dest) = src;
2316 }
N_NIMCALL(void,strTableRawInsert__astalgo_3252)2317 N_LIB_PRIVATE N_NIMCALL(void, strTableRawInsert__astalgo_3252)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
2318 	NI h;
2319 	NI T1_;
2320 {	T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
2321 	h = (NI)((*(*n).name).h & T1_);
2322 	{
2323 		while (1) {
2324 			NI T8_;
2325 			if (!!(((*data)->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
2326 			{
2327 				if (!((*data)->data[h] == n)) goto LA6_;
2328 				goto BeforeRet_;
2329 			}
2330 			LA6_: ;
2331 			T8_ = (((*data) ? (*data)->Sup.len : 0)-1);
2332 			h = nextTry__astalgo_90(h, T8_);
2333 		} LA3: ;
2334 	}
2335 	asgnRef((void**) (&(*data)->data[h]), n);
2336 	}BeforeRet_: ;
2337 }
N_NIMCALL(void,strTableEnlarge__astalgo_3306)2338 N_LIB_PRIVATE N_NIMCALL(void, strTableEnlarge__astalgo_3306)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t) {
2339 	tySequence__eHqUwlHGGaPw0TDPDeL79cQ* n;
2340 	NI T1_;
2341 	tySequence__eHqUwlHGGaPw0TDPDeL79cQ* T10_;
2342 	n = NIM_NIL;
2343 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
2344 	n = (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) newSeq((&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
2345 	{
2346 		NI i;
2347 		NI colontmp_;
2348 		NI T3_;
2349 		NI res;
2350 		i = (NI)0;
2351 		colontmp_ = (NI)0;
2352 		T3_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2353 		colontmp_ = T3_;
2354 		res = ((NI) 0);
2355 		{
2356 			while (1) {
2357 				if (!(res <= colontmp_)) goto LA5;
2358 				i = res;
2359 				{
2360 					if (!!(((*t).data->data[i] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA8_;
2361 					strTableRawInsert__astalgo_3252((&n), (*t).data->data[i]);
2362 				}
2363 				LA8_: ;
2364 				res += ((NI) 1);
2365 			} LA5: ;
2366 		}
2367 	}
2368 	T10_ = NIM_NIL;
2369 	T10_ = (*t).data;
2370 	unsureAsgnRef((void**) (&(*t).data), n);
2371 	n = T10_;
2372 }
N_NIMCALL(void,strTableAdd__astalgo_3332)2373 N_LIB_PRIVATE N_NIMCALL(void, strTableAdd__astalgo_3332)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
2374 	{
2375 		NI T3_;
2376 		NIM_BOOL T4_;
2377 		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
2378 		T4_ = (NIM_BOOL)0;
2379 		T4_ = mustRehash__astalgo_87(T3_, (*t).counter);
2380 		if (!T4_) goto LA5_;
2381 		strTableEnlarge__astalgo_3306(t);
2382 	}
2383 	LA5_: ;
2384 	strTableRawInsert__astalgo_3252((&(*t).data), n);
2385 	(*t).counter += ((NI) 1);
2386 }
N_INLINE(NI,nextTry__stdZpackedsets_41)2387 static N_INLINE(NI, nextTry__stdZpackedsets_41)(NI h, NI maxHash, NI* perturb) {
2388 	NI result;
2389 	NU perturb2;
2390 	result = (NI)0;
2391 	perturb2 = (NU)((NU32)(((NU) ((*perturb)))) >> (NU32)(((NI) 5)));
2392 	(*perturb) = ((NI) (perturb2));
2393 	result = (NI)((NI)((NI)((NI)(((NI) 5) * h) + ((NI) 1)) + (*perturb)) & maxHash);
2394 	return result;
2395 }
N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA *,packedSetGet__astalgo_433)2396 N_LIB_PRIVATE N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*, packedSetGet__astalgo_433)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* t, NI key) {
2397 	tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* result;
2398 	NI h;
2399 	NI perturb;
2400 {	result = NIM_NIL;
2401 	h = (NI)(key & (*t).max);
2402 	perturb = key;
2403 	{
2404 		while (1) {
2405 			if (!!(((*t).data->data[h] == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA2;
2406 			{
2407 				if (!((*(*t).data->data[h]).key == key)) goto LA5_;
2408 				result = (*t).data->data[h];
2409 				goto BeforeRet_;
2410 			}
2411 			LA5_: ;
2412 			h = nextTry__stdZpackedsets_41(h, (*t).max, (&perturb));
2413 		} LA2: ;
2414 	}
2415 	result = ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL);
2416 	}BeforeRet_: ;
2417 	return result;
2418 }
N_NIMCALL(NIM_BOOL,containsOrIncl__astalgo_402)2419 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
2420 	NIM_BOOL result;
2421 {	result = (NIM_BOOL)0;
2422 	{
2423 		if (!((*s).elems <= ((NI) 34))) goto LA3_;
2424 		{
2425 			NI i;
2426 			NI i_2;
2427 			i = (NI)0;
2428 			i_2 = ((NI) 0);
2429 			{
2430 				while (1) {
2431 					if (!(i_2 < (*s).elems)) goto LA7;
2432 					i = i_2;
2433 					{
2434 						if (!((*s).a[(i)- 0] == key)) goto LA10_;
2435 						result = NIM_TRUE;
2436 						goto BeforeRet_;
2437 					}
2438 					LA10_: ;
2439 					i_2 += ((NI) 1);
2440 				} LA7: ;
2441 			}
2442 		}
2443 		incl__pureZcollectionsZintsets_55(s, key);
2444 		result = NIM_FALSE;
2445 	}
2446 	goto LA1_;
2447 	LA3_: ;
2448 	{
2449 		tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* t;
2450 		t = packedSetGet__astalgo_433((&(*s)), (NI)((NI32)(key) >> (NU32)(((NI) 9))));
2451 		{
2452 			NI u;
2453 			if (!!((t == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA15_;
2454 			u = (NI)(key & ((NI) 511));
2455 			result = !(((NU)((*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] & (NU)((NU32)(((NU) 1)) << (NU32)((NI)(u & ((NI) 31))))) == ((NU) 0)));
2456 			{
2457 				if (!!(result)) goto LA19_;
2458 				(*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] = (NU)((*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] | (NU)((NU32)(((NU) 1)) << (NU32)((NI)(u & ((NI) 31)))));
2459 			}
2460 			LA19_: ;
2461 		}
2462 		goto LA13_;
2463 		LA15_: ;
2464 		{
2465 			incl__pureZcollectionsZintsets_55(s, key);
2466 			result = NIM_FALSE;
2467 		}
2468 		LA13_: ;
2469 	}
2470 	LA1_: ;
2471 	}BeforeRet_: ;
2472 	return result;
2473 }
N_NIMCALL(NIM_BOOL,contains__astalgo_3496)2474 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
2475 	NIM_BOOL result;
2476 {	result = (NIM_BOOL)0;
2477 	{
2478 		if (!((*s).elems <= ((NI) 34))) goto LA3_;
2479 		{
2480 			NI i;
2481 			NI i_2;
2482 			i = (NI)0;
2483 			i_2 = ((NI) 0);
2484 			{
2485 				while (1) {
2486 					if (!(i_2 < (*s).elems)) goto LA7;
2487 					i = i_2;
2488 					{
2489 						if (!((*s).a[(i)- 0] == key)) goto LA10_;
2490 						result = NIM_TRUE;
2491 						goto BeforeRet_;
2492 					}
2493 					LA10_: ;
2494 					i_2 += ((NI) 1);
2495 				} LA7: ;
2496 			}
2497 		}
2498 	}
2499 	goto LA1_;
2500 	LA3_: ;
2501 	{
2502 		tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* t;
2503 		t = packedSetGet__astalgo_433(s, (NI)((NI32)(key) >> (NU32)(((NI) 9))));
2504 		{
2505 			NI u;
2506 			if (!!((t == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA15_;
2507 			u = (NI)(key & ((NI) 511));
2508 			result = !(((NU)((*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] & (NU)((NU32)(((NU) 1)) << (NU32)((NI)(u & ((NI) 31))))) == ((NU) 0)));
2509 		}
2510 		goto LA13_;
2511 		LA15_: ;
2512 		{
2513 			result = NIM_FALSE;
2514 		}
2515 		LA13_: ;
2516 	}
2517 	LA1_: ;
2518 	}BeforeRet_: ;
2519 	return result;
2520 }
N_INLINE(int,nimCmpMem)2521 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2522 	int result;
2523 	result = (int)0;
2524 	result = memcmp(a, b, ((size_t) (size)));
2525 	return result;
2526 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2527 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2528 	NIM_BOOL result;
2529 	int T1_;
2530 	result = (NIM_BOOL)0;
2531 	T1_ = (int)0;
2532 	T1_ = nimCmpMem(a, b, size);
2533 	result = (T1_ == ((NI32) 0));
2534 	return result;
2535 }
N_INLINE(NIM_BOOL,eqStrings)2536 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2537 	NIM_BOOL result;
2538 	NI alen;
2539 	NI blen;
2540 {	result = (NIM_BOOL)0;
2541 	alen = (a ? a->Sup.len : 0);
2542 	blen = (b ? b->Sup.len : 0);
2543 	{
2544 		if (!(alen == blen)) goto LA3_;
2545 		{
2546 			if (!(alen == ((NI) 0))) goto LA7_;
2547 			result = NIM_TRUE;
2548 			goto BeforeRet_;
2549 		}
2550 		LA7_: ;
2551 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2552 		goto BeforeRet_;
2553 	}
2554 	LA3_: ;
2555 	}BeforeRet_: ;
2556 	return result;
2557 }
N_NIMCALL(NIM_BOOL,sameValue__astalgo_119)2558 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameValue__astalgo_119)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
2559 	NIM_BOOL result;
2560 	result = (NIM_BOOL)0;
2561 	result = NIM_FALSE;
2562 	switch ((*a).kind) {
2563 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
2564 	{
2565 		{
2566 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T6_;
2567 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T7_;
2568 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15))) goto LA4_;
2569 			T6_ = getInt__ast_4592(a);
2570 			T7_ = getInt__ast_4592(b);
2571 			result = eqeq___int495056_313(T6_, T7_);
2572 		}
2573 		LA4_: ;
2574 	}
2575 	break;
2576 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
2577 	{
2578 		{
2579 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18))) goto LA11_;
2580 			result = ((*a)._kind_2.floatVal == (*b)._kind_2.floatVal);
2581 		}
2582 		LA11_: ;
2583 	}
2584 	break;
2585 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
2586 	{
2587 		{
2588 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA16_;
2589 			result = eqStrings((*a)._kind_3.strVal, (*b)._kind_3.strVal);
2590 		}
2591 		LA16_: ;
2592 	}
2593 	break;
2594 	default:
2595 	{
2596 	}
2597 	break;
2598 	}
2599 	return result;
2600 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIter__astalgo_3762)2601 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIter__astalgo_3762)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2602 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2603 	result = NIM_NIL;
2604 	result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2605 	{
2606 		while (1) {
2607 			NI T3_;
2608 			T3_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2609 			if (!((*ti).h <= T3_)) goto LA2;
2610 			result = tab.data->data[(*ti).h];
2611 			(*ti).h += ((NI) 1);
2612 			{
2613 				if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA6_;
2614 				goto LA1;
2615 			}
2616 			LA6_: ;
2617 		} LA2: ;
2618 	} LA1: ;
2619 	return result;
2620 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,initTabIter__astalgo_3777)2621 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, initTabIter__astalgo_3777)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2622 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2623 	result = NIM_NIL;
2624 	(*ti).h = ((NI) 0);
2625 	{
2626 		if (!(tab.counter == ((NI) 0))) goto LA3_;
2627 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2628 	}
2629 	goto LA1_;
2630 	LA3_: ;
2631 	{
2632 		result = nextIter__astalgo_3762(ti, tab);
2633 	}
2634 	LA1_: ;
2635 	return result;
2636 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getModule__astalgo_216)2637 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getModule__astalgo_216)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
2638 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2639 	result = NIM_NIL;
2640 	result = s;
2641 	{
2642 		while (1) {
2643 			NIM_BOOL T3_;
2644 			T3_ = (NIM_BOOL)0;
2645 			T3_ = !((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
2646 			if (!(T3_)) goto LA4_;
2647 			T3_ = !(((*result).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6)));
2648 			LA4_: ;
2649 			if (!T3_) goto LA2;
2650 			result = (*result).owner;
2651 		} LA2: ;
2652 	}
2653 	return result;
2654 }
N_NIMCALL(NI,idTableRawGet__astalgo_3813)2655 N_LIB_PRIVATE N_NIMCALL(NI, idTableRawGet__astalgo_3813)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, NI key) {
2656 	NI result;
2657 	NI h;
2658 	NI T1_;
2659 {	result = (NI)0;
2660 	h = (NI)0;
2661 	T1_ = ((t.data ? t.data->Sup.len : 0)-1);
2662 	h = (NI)(key & T1_);
2663 	{
2664 		while (1) {
2665 			NI T8_;
2666 			if (!!((t.data->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
2667 			{
2668 				tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym174_;
2669 				xX60gensym174_ = t.data->data[h].key;
2670 				if (!((NI)((NI)((NU32)(((NI) ((*xX60gensym174_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym174_).itemId.item))) == key)) goto LA6_;
2671 				result = h;
2672 				goto BeforeRet_;
2673 			}
2674 			LA6_: ;
2675 			T8_ = ((t.data ? t.data->Sup.len : 0)-1);
2676 			h = nextTry__astalgo_90(h, T8_);
2677 		} LA3: ;
2678 	}
2679 	result = ((NI) -1);
2680 	}BeforeRet_: ;
2681 	return result;
2682 }
N_NIMCALL(void,idTableRawInsert__astalgo_3905)2683 N_LIB_PRIVATE N_NIMCALL(void, idTableRawInsert__astalgo_3905)(tySequence__Mh9agqM29bm9aP5AUL1x7dZGA** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val) {
2684 	NI h;
2685 	tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym182_;
2686 	NI T1_;
2687 	h = (NI)0;
2688 	xX60gensym182_ = key;
2689 	T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
2690 	h = (NI)((NI)((NI)((NU32)(((NI) ((*xX60gensym182_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym182_).itemId.item))) & T1_);
2691 	{
2692 		while (1) {
2693 			NI T4_;
2694 			if (!!(((*data)->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
2695 			T4_ = (((*data) ? (*data)->Sup.len : 0)-1);
2696 			h = nextTry__astalgo_90(h, T4_);
2697 		} LA3: ;
2698 	}
2699 	asgnRef((void**) (&(*data)->data[h].key), key);
2700 	asgnRef((void**) (&(*data)->data[h].val), val);
2701 }
N_NIMCALL(void,idTablePut__astalgo_70)2702 N_LIB_PRIVATE N_NIMCALL(void, idTablePut__astalgo_70)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val) {
2703 	NI index;
2704 	tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* n;
2705 	tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym191_;
2706 	index = (NI)0;
2707 	n = NIM_NIL;
2708 	xX60gensym191_ = key;
2709 	index = idTableRawGet__astalgo_3813((*t), (NI)((NI)((NU32)(((NI) ((*xX60gensym191_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym191_).itemId.item))));
2710 	{
2711 		if (!(((NI) 0) <= index)) goto LA3_;
2712 		asgnRef((void**) (&(*t).data->data[index].val), val);
2713 	}
2714 	goto LA1_;
2715 	LA3_: ;
2716 	{
2717 		{
2718 			NI T8_;
2719 			NIM_BOOL T9_;
2720 			NI T12_;
2721 			tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* T21_;
2722 			T8_ = ((*t).data ? (*t).data->Sup.len : 0);
2723 			T9_ = (NIM_BOOL)0;
2724 			T9_ = mustRehash__astalgo_87(T8_, (*t).counter);
2725 			if (!T9_) goto LA10_;
2726 			T12_ = ((*t).data ? (*t).data->Sup.len : 0);
2727 			n = (tySequence__Mh9agqM29bm9aP5AUL1x7dZGA*) newSeq((&NTItidpairseq__Mh9agqM29bm9aP5AUL1x7dZGA_), ((NI) ((NI)(T12_ * ((NI) 2)))));
2728 			{
2729 				NI i;
2730 				NI colontmp_;
2731 				NI T14_;
2732 				NI res;
2733 				i = (NI)0;
2734 				colontmp_ = (NI)0;
2735 				T14_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2736 				colontmp_ = T14_;
2737 				res = ((NI) 0);
2738 				{
2739 					while (1) {
2740 						if (!(res <= colontmp_)) goto LA16;
2741 						i = res;
2742 						{
2743 							if (!!(((*t).data->data[i].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA19_;
2744 							idTableRawInsert__astalgo_3905((&n), (*t).data->data[i].key, (*t).data->data[i].val);
2745 						}
2746 						LA19_: ;
2747 						res += ((NI) 1);
2748 					} LA16: ;
2749 				}
2750 			}
2751 			T21_ = NIM_NIL;
2752 			T21_ = (*t).data;
2753 			unsureAsgnRef((void**) (&(*t).data), n);
2754 			n = T21_;
2755 		}
2756 		LA10_: ;
2757 		idTableRawInsert__astalgo_3905((&(*t).data), key, val);
2758 		(*t).counter += ((NI) 1);
2759 	}
2760 	LA1_: ;
2761 }
N_NIMCALL(RootObj *,idTableGet__astalgo_64)2762 N_LIB_PRIVATE N_NIMCALL(RootObj*, idTableGet__astalgo_64)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
2763 	RootObj* result;
2764 	NI index;
2765 	tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym177_;
2766 	result = NIM_NIL;
2767 	xX60gensym177_ = key;
2768 	index = idTableRawGet__astalgo_3813(t, (NI)((NI)((NU32)(((NI) ((*xX60gensym177_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym177_).itemId.item))));
2769 	{
2770 		if (!(((NI) 0) <= index)) goto LA3_;
2771 		result = t.data->data[index].val;
2772 	}
2773 	goto LA1_;
2774 	LA3_: ;
2775 	{
2776 		result = ((RootObj*) NIM_NIL);
2777 	}
2778 	LA1_: ;
2779 	return result;
2780 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIdentIter__astalgo_3408)2781 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentIter__astalgo_3408)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2782 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2783 	NI h;
2784 	NI T1_;
2785 	NI start;
2786 	NI T13_;
2787 	result = NIM_NIL;
2788 	T1_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2789 	h = (NI)((*ti).h & T1_);
2790 	start = h;
2791 	result = tab.data->data[h];
2792 	{
2793 		while (1) {
2794 			NI T8_;
2795 			if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
2796 			{
2797 				if (!((*(*result).name).id == (*(*ti).name).id)) goto LA6_;
2798 				goto LA2;
2799 			}
2800 			LA6_: ;
2801 			T8_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2802 			h = nextTry__astalgo_90(h, T8_);
2803 			{
2804 				if (!(h == start)) goto LA11_;
2805 				result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2806 				goto LA2;
2807 			}
2808 			LA11_: ;
2809 			result = tab.data->data[h];
2810 		} LA3: ;
2811 	} LA2: ;
2812 	T13_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2813 	(*ti).h = nextTry__astalgo_90(h, T13_);
2814 	return result;
2815 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,initIdentIter__astalgo_3427)2816 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, initIdentIter__astalgo_3427)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* s) {
2817 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2818 	result = NIM_NIL;
2819 	(*ti).h = (*s).h;
2820 	unsureAsgnRef((void**) (&(*ti).name), s);
2821 	{
2822 		if (!(tab.counter == ((NI) 0))) goto LA3_;
2823 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2824 	}
2825 	goto LA1_;
2826 	LA3_: ;
2827 	{
2828 		result = nextIdentIter__astalgo_3408(ti, tab);
2829 	}
2830 	LA1_: ;
2831 	return result;
2832 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,strTableInclReportConflict__astalgo_3342)2833 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableInclReportConflict__astalgo_3342)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld) {
2834 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2835 	NI h;
2836 	NI T1_;
2837 	NI replaceSlot;
2838 {	result = NIM_NIL;
2839 	T1_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2840 	h = (NI)((*(*n).name).h & T1_);
2841 	replaceSlot = ((NI) -1);
2842 	{
2843 		while (1) {
2844 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* it;
2845 			NI T16_;
2846 			it = (*t).data->data[h];
2847 			{
2848 				if (!(it == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA6_;
2849 				goto LA2;
2850 			}
2851 			LA6_: ;
2852 			{
2853 				if (!((*(*it).name).id == (*(*n).name).id)) goto LA10_;
2854 				{
2855 					if (!(it == n)) goto LA14_;
2856 					result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2857 					goto BeforeRet_;
2858 				}
2859 				LA14_: ;
2860 				replaceSlot = h;
2861 			}
2862 			LA10_: ;
2863 			T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2864 			h = nextTry__astalgo_90(h, T16_);
2865 		}
2866 	} LA2: ;
2867 	{
2868 		if (!(((NI) 0) <= replaceSlot)) goto LA19_;
2869 		result = (*t).data->data[replaceSlot];
2870 		{
2871 			if (!!(onConflictKeepOld)) goto LA23_;
2872 			asgnRef((void**) (&(*t).data->data[replaceSlot]), n);
2873 		}
2874 		LA23_: ;
2875 		goto BeforeRet_;
2876 	}
2877 	goto LA17_;
2878 	LA19_: ;
2879 	{
2880 		NI T26_;
2881 		NIM_BOOL T27_;
2882 		T26_ = ((*t).data ? (*t).data->Sup.len : 0);
2883 		T27_ = (NIM_BOOL)0;
2884 		T27_ = mustRehash__astalgo_87(T26_, (*t).counter);
2885 		if (!T27_) goto LA28_;
2886 		strTableEnlarge__astalgo_3306(t);
2887 		strTableRawInsert__astalgo_3252((&(*t).data), n);
2888 	}
2889 	goto LA17_;
2890 	LA28_: ;
2891 	{
2892 		asgnRef((void**) (&(*t).data->data[h]), n);
2893 	}
2894 	LA17_: ;
2895 	(*t).counter += ((NI) 1);
2896 	result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2897 	}BeforeRet_: ;
2898 	return result;
2899 }
N_NIMCALL(NIM_BOOL,sameIgnoreBacktickGensymInfo__astalgo_264)2900 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameIgnoreBacktickGensymInfo__astalgo_264)(NimStringDesc* a, NimStringDesc* b) {
2901 	NIM_BOOL result;
2902 	NI alen;
2903 	NI i;
2904 	NI j;
2905 {	result = (NIM_BOOL)0;
2906 	{
2907 		if (!!(((NU8)(a->data[((NI) 0)]) == (NU8)(b->data[((NI) 0)])))) goto LA3_;
2908 		result = NIM_FALSE;
2909 		goto BeforeRet_;
2910 	}
2911 	LA3_: ;
2912 	alen = (NI)((a ? a->Sup.len : 0) - ((NI) 1));
2913 	{
2914 		while (1) {
2915 			NIM_BOOL T7_;
2916 			T7_ = (NIM_BOOL)0;
2917 			T7_ = (((NI) 0) < alen);
2918 			if (!(T7_)) goto LA8_;
2919 			T7_ = !(((NU8)(a->data[alen]) == (NU8)(96)));
2920 			LA8_: ;
2921 			if (!T7_) goto LA6;
2922 			alen -= ((NI) 1);
2923 		} LA6: ;
2924 	}
2925 	{
2926 		if (!(alen <= ((NI) 0))) goto LA11_;
2927 		alen = (a ? a->Sup.len : 0);
2928 	}
2929 	LA11_: ;
2930 	i = ((NI) 1);
2931 	j = ((NI) 1);
2932 	{
2933 		while (1) {
2934 			NIM_CHAR aa;
2935 			NIM_CHAR bb;
2936 			{
2937 				while (1) {
2938 					NIM_BOOL T17_;
2939 					T17_ = (NIM_BOOL)0;
2940 					T17_ = (i < alen);
2941 					if (!(T17_)) goto LA18_;
2942 					T17_ = ((NU8)(a->data[i]) == (NU8)(95));
2943 					LA18_: ;
2944 					if (!T17_) goto LA16;
2945 					i += ((NI) 1);
2946 				} LA16: ;
2947 			}
2948 			{
2949 				while (1) {
2950 					NIM_BOOL T21_;
2951 					T21_ = (NIM_BOOL)0;
2952 					T21_ = (j < (b ? b->Sup.len : 0));
2953 					if (!(T21_)) goto LA22_;
2954 					T21_ = ((NU8)(b->data[j]) == (NU8)(95));
2955 					LA22_: ;
2956 					if (!T21_) goto LA20;
2957 					j += ((NI) 1);
2958 				} LA20: ;
2959 			}
2960 			{
2961 				if (!(i < alen)) goto LA25_;
2962 				aa = nsuToLowerAsciiChar(a->data[i]);
2963 			}
2964 			goto LA23_;
2965 			LA25_: ;
2966 			{
2967 				aa = 0;
2968 			}
2969 			LA23_: ;
2970 			{
2971 				if (!(j < (b ? b->Sup.len : 0))) goto LA30_;
2972 				bb = nsuToLowerAsciiChar(b->data[j]);
2973 			}
2974 			goto LA28_;
2975 			LA30_: ;
2976 			{
2977 				bb = 0;
2978 			}
2979 			LA28_: ;
2980 			{
2981 				if (!!(((NU8)(aa) == (NU8)(bb)))) goto LA35_;
2982 				result = NIM_FALSE;
2983 				goto BeforeRet_;
2984 			}
2985 			LA35_: ;
2986 			{
2987 				if (!(alen <= i)) goto LA39_;
2988 				{
2989 					if (!((b ? b->Sup.len : 0) <= j)) goto LA43_;
2990 					result = NIM_TRUE;
2991 					goto BeforeRet_;
2992 				}
2993 				LA43_: ;
2994 				result = NIM_FALSE;
2995 				goto BeforeRet_;
2996 			}
2997 			goto LA37_;
2998 			LA39_: ;
2999 			{
3000 				if (!((b ? b->Sup.len : 0) <= j)) goto LA46_;
3001 				result = NIM_FALSE;
3002 				goto BeforeRet_;
3003 			}
3004 			goto LA37_;
3005 			LA46_: ;
3006 			LA37_: ;
3007 			i += ((NI) 1);
3008 			j += ((NI) 1);
3009 		}
3010 	}
3011 	}BeforeRet_: ;
3012 	return result;
3013 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getNamedParamFromList__astalgo_293)3014 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getNamedParamFromList__astalgo_293)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* list, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident) {
3015 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3016 {	result = NIM_NIL;
3017 	{
3018 		NI i;
3019 		NI colontmp_;
3020 		NI i_2;
3021 		i = (NI)0;
3022 		colontmp_ = (NI)0;
3023 		colontmp_ = len__ast_3198(list);
3024 		i_2 = ((NI) 1);
3025 		{
3026 			while (1) {
3027 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* it;
3028 				if (!(i_2 < colontmp_)) goto LA3;
3029 				i = i_2;
3030 				it = (*(*list)._kind_6.sons->data[i])._kind_4.sym;
3031 				{
3032 					NIM_BOOL T6_;
3033 					T6_ = (NIM_BOOL)0;
3034 					T6_ = ((*(*it).name).id == (*ident).id);
3035 					if (T6_) goto LA7_;
3036 					T6_ = sameIgnoreBacktickGensymInfo__astalgo_264((*(*it).name).s, (*ident).s);
3037 					LA7_: ;
3038 					if (!T6_) goto LA8_;
3039 					result = it;
3040 					goto BeforeRet_;
3041 				}
3042 				LA8_: ;
3043 				i_2 += ((NI) 1);
3044 			} LA3: ;
3045 		}
3046 	}
3047 	}BeforeRet_: ;
3048 	return result;
3049 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIdentExcluding__astalgo_3432)3050 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentExcluding__astalgo_3432)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding) {
3051 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3052 	NI h;
3053 	NI T1_;
3054 	NI start;
3055 	NI T16_;
3056 	result = NIM_NIL;
3057 	T1_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3058 	h = (NI)((*ti).h & T1_);
3059 	start = h;
3060 	result = tab.data->data[h];
3061 	{
3062 		while (1) {
3063 			NI T11_;
3064 			if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3065 			{
3066 				NIM_BOOL T6_;
3067 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym168_;
3068 				NIM_BOOL T8_;
3069 				T6_ = (NIM_BOOL)0;
3070 				T6_ = ((*(*result).name).id == (*(*ti).name).id);
3071 				if (!(T6_)) goto LA7_;
3072 				xX60gensym168_ = result;
3073 				T8_ = (NIM_BOOL)0;
3074 				T8_ = contains__astalgo_3496(excluding, (NI)((NI)((NU32)(((NI) ((*xX60gensym168_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym168_).Sup.itemId.item))));
3075 				T6_ = !(T8_);
3076 				LA7_: ;
3077 				if (!T6_) goto LA9_;
3078 				goto LA2;
3079 			}
3080 			LA9_: ;
3081 			T11_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3082 			h = nextTry__astalgo_90(h, T11_);
3083 			{
3084 				if (!(h == start)) goto LA14_;
3085 				result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3086 				goto LA2;
3087 			}
3088 			LA14_: ;
3089 			result = tab.data->data[h];
3090 		} LA3: ;
3091 	} LA2: ;
3092 	T16_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3093 	(*ti).h = nextTry__astalgo_90(h, T16_);
3094 	{
3095 		NIM_BOOL T19_;
3096 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym170_;
3097 		T19_ = (NIM_BOOL)0;
3098 		T19_ = !((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
3099 		if (!(T19_)) goto LA20_;
3100 		xX60gensym170_ = result;
3101 		T19_ = contains__astalgo_3496(excluding, (NI)((NI)((NU32)(((NI) ((*xX60gensym170_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym170_).Sup.itemId.item))));
3102 		LA20_: ;
3103 		if (!T19_) goto LA21_;
3104 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3105 	}
3106 	LA21_: ;
3107 	return result;
3108 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,firstIdentExcluding__astalgo_3754)3109 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, firstIdentExcluding__astalgo_3754)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding) {
3110 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3111 	result = NIM_NIL;
3112 	(*ti).h = (*s).h;
3113 	unsureAsgnRef((void**) (&(*ti).name), s);
3114 	{
3115 		if (!(tab.counter == ((NI) 0))) goto LA3_;
3116 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3117 	}
3118 	goto LA1_;
3119 	LA3_: ;
3120 	{
3121 		result = nextIdentExcluding__astalgo_3432(ti, tab, excluding);
3122 	}
3123 	LA1_: ;
3124 	return result;
3125 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,lookupInRecord__astalgo_84)3126 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field) {
3127 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3128 {	result = NIM_NIL;
3129 	result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3130 	switch ((*n).kind) {
3131 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
3132 	{
3133 		{
3134 			NI i;
3135 			NI colontmp_;
3136 			NI i_2;
3137 			i = (NI)0;
3138 			colontmp_ = (NI)0;
3139 			colontmp_ = len__ast_3198(n);
3140 			i_2 = ((NI) 0);
3141 			{
3142 				while (1) {
3143 					if (!(i_2 < colontmp_)) goto LA4;
3144 					i = i_2;
3145 					result = lookupInRecord__astalgo_84((*n)._kind_6.sons->data[i], field);
3146 					{
3147 						if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA7_;
3148 						goto BeforeRet_;
3149 					}
3150 					LA7_: ;
3151 					i_2 += ((NI) 1);
3152 				} LA4: ;
3153 			}
3154 		}
3155 	}
3156 	break;
3157 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
3158 	{
3159 		{
3160 			if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA12_;
3161 			result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3162 			goto BeforeRet_;
3163 		}
3164 		LA12_: ;
3165 		result = lookupInRecord__astalgo_84((*n)._kind_6.sons->data[((NI) 0)], field);
3166 		{
3167 			if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA16_;
3168 			goto BeforeRet_;
3169 		}
3170 		LA16_: ;
3171 		{
3172 			NI i_3;
3173 			NI colontmp__2;
3174 			NI i_4;
3175 			i_3 = (NI)0;
3176 			colontmp__2 = (NI)0;
3177 			colontmp__2 = len__ast_3198(n);
3178 			i_4 = ((NI) 1);
3179 			{
3180 				while (1) {
3181 					if (!(i_4 < colontmp__2)) goto LA20;
3182 					i_3 = i_4;
3183 					switch ((*(*n)._kind_6.sons->data[i_3]).kind) {
3184 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
3185 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
3186 					{
3187 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T22_;
3188 						T22_ = NIM_NIL;
3189 						T22_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
3190 						result = lookupInRecord__astalgo_84(T22_, field);
3191 						{
3192 							if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA25_;
3193 							goto BeforeRet_;
3194 						}
3195 						LA25_: ;
3196 					}
3197 					break;
3198 					default:
3199 					{
3200 						result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3201 						goto BeforeRet_;
3202 					}
3203 					break;
3204 					}
3205 					i_4 += ((NI) 1);
3206 				} LA20: ;
3207 			}
3208 		}
3209 	}
3210 	break;
3211 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3212 	{
3213 		{
3214 			if (!((*(*(*n)._kind_4.sym).name).id == (*field).id)) goto LA31_;
3215 			result = (*n)._kind_4.sym;
3216 		}
3217 		LA31_: ;
3218 	}
3219 	break;
3220 	default:
3221 	{
3222 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3223 		goto BeforeRet_;
3224 	}
3225 	break;
3226 	}
3227 	}BeforeRet_: ;
3228 	return result;
3229 }
N_NIMCALL(NI,idNodeTableRawGet__astalgo_4024)3230 N_LIB_PRIVATE N_NIMCALL(NI, idNodeTableRawGet__astalgo_4024)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
3231 	NI result;
3232 	NI h;
3233 	tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym199_;
3234 	NI T1_;
3235 {	result = (NI)0;
3236 	h = (NI)0;
3237 	xX60gensym199_ = key;
3238 	T1_ = ((t.data ? t.data->Sup.len : 0)-1);
3239 	h = (NI)((NI)((NI)((NU32)(((NI) ((*xX60gensym199_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym199_).itemId.item))) & T1_);
3240 	{
3241 		while (1) {
3242 			NI T8_;
3243 			if (!!((t.data->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
3244 			{
3245 				tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym201_;
3246 				tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym202_;
3247 				xX60gensym201_ = t.data->data[h].key;
3248 				xX60gensym202_ = key;
3249 				if (!((NI)((NI)((NU32)(((NI) ((*xX60gensym201_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym201_).itemId.item))) == (NI)((NI)((NU32)(((NI) ((*xX60gensym202_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym202_).itemId.item))))) goto LA6_;
3250 				result = h;
3251 				goto BeforeRet_;
3252 			}
3253 			LA6_: ;
3254 			T8_ = ((t.data ? t.data->Sup.len : 0)-1);
3255 			h = nextTry__astalgo_90(h, T8_);
3256 		} LA3: ;
3257 	}
3258 	result = ((NI) -1);
3259 	}BeforeRet_: ;
3260 	return result;
3261 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,idNodeTableGet__astalgo_77)3262 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, idNodeTableGet__astalgo_77)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
3263 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3264 	NI index;
3265 	result = NIM_NIL;
3266 	index = (NI)0;
3267 	index = idNodeTableRawGet__astalgo_4024(t, key);
3268 	{
3269 		if (!(((NI) 0) <= index)) goto LA3_;
3270 		result = t.data->data[index].val;
3271 	}
3272 	goto LA1_;
3273 	LA3_: ;
3274 	{
3275 		result = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
3276 	}
3277 	LA1_: ;
3278 	return result;
3279 }
N_NIMCALL(void,idNodeTableRawInsert__astalgo_4071)3280 N_LIB_PRIVATE N_NIMCALL(void, idNodeTableRawInsert__astalgo_4071)(tySequence__K8W16aeLg4OWxniQxtguMw** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val) {
3281 	NI h;
3282 	tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym204_;
3283 	NI T1_;
3284 	h = (NI)0;
3285 	xX60gensym204_ = key;
3286 	T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
3287 	h = (NI)((NI)((NI)((NU32)(((NI) ((*xX60gensym204_).itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym204_).itemId.item))) & T1_);
3288 	{
3289 		while (1) {
3290 			NI T4_;
3291 			if (!!(((*data)->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
3292 			T4_ = (((*data) ? (*data)->Sup.len : 0)-1);
3293 			h = nextTry__astalgo_90(h, T4_);
3294 		} LA3: ;
3295 	}
3296 	asgnRef((void**) (&(*data)->data[h].key), key);
3297 	asgnRef((void**) (&(*data)->data[h].val), val);
3298 }
N_NIMCALL(void,idNodeTablePut__astalgo_80)3299 N_LIB_PRIVATE N_NIMCALL(void, idNodeTablePut__astalgo_80)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val) {
3300 	NI index;
3301 	index = idNodeTableRawGet__astalgo_4024((*t), key);
3302 	{
3303 		if (!(((NI) 0) <= index)) goto LA3_;
3304 		asgnRef((void**) (&(*t).data->data[index].val), val);
3305 	}
3306 	goto LA1_;
3307 	LA3_: ;
3308 	{
3309 		{
3310 			NI T8_;
3311 			NIM_BOOL T9_;
3312 			tySequence__K8W16aeLg4OWxniQxtguMw* n;
3313 			NI T12_;
3314 			tySequence__K8W16aeLg4OWxniQxtguMw* T21_;
3315 			T8_ = ((*t).data ? (*t).data->Sup.len : 0);
3316 			T9_ = (NIM_BOOL)0;
3317 			T9_ = mustRehash__astalgo_87(T8_, (*t).counter);
3318 			if (!T9_) goto LA10_;
3319 			n = NIM_NIL;
3320 			T12_ = ((*t).data ? (*t).data->Sup.len : 0);
3321 			n = (tySequence__K8W16aeLg4OWxniQxtguMw*) newSeq((&NTItidnodepairseq__K8W16aeLg4OWxniQxtguMw_), ((NI) ((NI)(T12_ * ((NI) 2)))));
3322 			{
3323 				NI i;
3324 				NI colontmp_;
3325 				NI T14_;
3326 				NI res;
3327 				i = (NI)0;
3328 				colontmp_ = (NI)0;
3329 				T14_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
3330 				colontmp_ = T14_;
3331 				res = ((NI) 0);
3332 				{
3333 					while (1) {
3334 						if (!(res <= colontmp_)) goto LA16;
3335 						i = res;
3336 						{
3337 							if (!!(((*t).data->data[i].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA19_;
3338 							idNodeTableRawInsert__astalgo_4071((&n), (*t).data->data[i].key, (*t).data->data[i].val);
3339 						}
3340 						LA19_: ;
3341 						res += ((NI) 1);
3342 					} LA16: ;
3343 				}
3344 			}
3345 			T21_ = NIM_NIL;
3346 			T21_ = (*t).data;
3347 			unsureAsgnRef((void**) (&(*t).data), n);
3348 			n = T21_;
3349 		}
3350 		LA10_: ;
3351 		idNodeTableRawInsert__astalgo_4071((&(*t).data), key, val);
3352 		(*t).counter += ((NI) 1);
3353 	}
3354 	LA1_: ;
3355 }
N_INLINE(NI,cmpStrings)3356 static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b) {
3357 	NI result;
3358 	NI alen;
3359 	NI blen;
3360 	NI minlen;
3361 	result = (NI)0;
3362 	alen = (a ? a->Sup.len : 0);
3363 	blen = (b ? b->Sup.len : 0);
3364 	minlen = ((alen <= blen) ? alen : blen);
3365 	{
3366 		int T5_;
3367 		if (!(((NI) 0) < minlen)) goto LA3_;
3368 		T5_ = (int)0;
3369 		T5_ = memcmp(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((size_t) (minlen)));
3370 		result = ((NI) (T5_));
3371 		{
3372 			if (!(result == ((NI) 0))) goto LA8_;
3373 			result = (NI)(alen - blen);
3374 		}
3375 		LA8_: ;
3376 	}
3377 	goto LA1_;
3378 	LA3_: ;
3379 	{
3380 		result = (NI)(alen - blen);
3381 	}
3382 	LA1_: ;
3383 	return result;
3384 }
N_NIMCALL(NIM_BOOL,leValue__astalgo_135)3385 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValue__astalgo_135)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
3386 	NIM_BOOL result;
3387 	result = (NIM_BOOL)0;
3388 	result = NIM_FALSE;
3389 	switch ((*a).kind) {
3390 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
3391 	{
3392 		{
3393 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T6_;
3394 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T7_;
3395 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15))) goto LA4_;
3396 			T6_ = getInt__ast_4592(a);
3397 			T7_ = getInt__ast_4592(b);
3398 			result = lteq___int495056_309(T6_, T7_);
3399 		}
3400 		LA4_: ;
3401 	}
3402 	break;
3403 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
3404 	{
3405 		{
3406 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18))) goto LA11_;
3407 			result = ((*a)._kind_2.floatVal <= (*b)._kind_2.floatVal);
3408 		}
3409 		LA11_: ;
3410 	}
3411 	break;
3412 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
3413 	{
3414 		{
3415 			if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA16_;
3416 			result = (cmpStrings((*a)._kind_3.strVal, (*b)._kind_3.strVal) <= 0);
3417 		}
3418 		LA16_: ;
3419 	}
3420 	break;
3421 	default:
3422 	{
3423 	}
3424 	break;
3425 	}
3426 	return result;
3427 }
N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA,weakLeValue__astalgo_151)3428 N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA, weakLeValue__astalgo_151)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
3429 	tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA result;
3430 	result = (tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA)0;
3431 	{
3432 		NIM_BOOL T3_;
3433 		T3_ = (NIM_BOOL)0;
3434 		T3_ = !(((*a).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*a).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
3435 		if (T3_) goto LA4_;
3436 		T3_ = !(((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
3437 		LA4_: ;
3438 		if (!T3_) goto LA5_;
3439 		result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 0);
3440 	}
3441 	goto LA1_;
3442 	LA5_: ;
3443 	{
3444 		{
3445 			NIM_BOOL T10_;
3446 			T10_ = (NIM_BOOL)0;
3447 			T10_ = leValue__astalgo_135(a, b);
3448 			if (!T10_) goto LA11_;
3449 			result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 2);
3450 		}
3451 		goto LA8_;
3452 		LA11_: ;
3453 		{
3454 			result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 1);
3455 		}
3456 		LA8_: ;
3457 	}
3458 	LA1_: ;
3459 	return result;
3460 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getSymFromList__astalgo_245)3461 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getSymFromList__astalgo_245)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* list, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident, NI start) {
3462 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3463 {	result = NIM_NIL;
3464 	{
3465 		NI i;
3466 		NI colontmp_;
3467 		NI i_2;
3468 		i = (NI)0;
3469 		colontmp_ = (NI)0;
3470 		colontmp_ = len__ast_3198(list);
3471 		i_2 = start;
3472 		{
3473 			while (1) {
3474 				if (!(i_2 < colontmp_)) goto LA3;
3475 				i = i_2;
3476 				{
3477 					if (!((*(*list)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA6_;
3478 					result = (*(*list)._kind_6.sons->data[i])._kind_4.sym;
3479 					{
3480 						if (!((*(*result).name).id == (*ident).id)) goto LA10_;
3481 						goto BeforeRet_;
3482 					}
3483 					LA10_: ;
3484 				}
3485 				goto LA4_;
3486 				LA6_: ;
3487 				{
3488 					result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3489 					goto BeforeRet_;
3490 				}
3491 				LA4_: ;
3492 				i_2 += ((NI) 1);
3493 			} LA3: ;
3494 		}
3495 	}
3496 	result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3497 	}BeforeRet_: ;
3498 	return result;
3499 }
N_NIMCALL(NIM_BOOL,strTableIncl__astalgo_3381)3500 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, strTableIncl__astalgo_3381)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld) {
3501 	NIM_BOOL result;
3502 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T1_;
3503 	result = (NIM_BOOL)0;
3504 	T1_ = NIM_NIL;
3505 	T1_ = strTableInclReportConflict__astalgo_3342(t, n, onConflictKeepOld);
3506 	result = !((T1_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
3507 	return result;
3508 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipConvCastAndClosure__astalgo_114)3509 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipConvCastAndClosure__astalgo_114)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3510 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3511 	result = NIM_NIL;
3512 	result = n;
3513 	{
3514 		while (1) {
3515 			switch ((*result).kind) {
3516 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
3517 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
3518 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70):
3519 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68):
3520 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69):
3521 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
3522 			{
3523 				result = (*result)._kind_6.sons->data[((NI) 0)];
3524 			}
3525 			break;
3526 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
3527 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
3528 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
3529 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
3530 			{
3531 				result = (*result)._kind_6.sons->data[((NI) 1)];
3532 			}
3533 			break;
3534 			default:
3535 			{
3536 				goto LA1;
3537 			}
3538 			break;
3539 			}
3540 		}
3541 	} LA1: ;
3542 	return result;
3543 }
N_NIMCALL(NIM_BOOL,isAddrNode__astalgo_4297)3544 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAddrNode__astalgo_4297)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3545 	NIM_BOOL result;
3546 	result = (NIM_BOOL)0;
3547 	switch ((*n).kind) {
3548 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
3549 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
3550 	{
3551 		result = NIM_TRUE;
3552 	}
3553 	break;
3554 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
3555 	{
3556 		{
3557 			NIM_BOOL T5_;
3558 			T5_ = (NIM_BOOL)0;
3559 			T5_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3560 			if (!(T5_)) goto LA6_;
3561 			T5_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 16));
3562 			LA6_: ;
3563 			if (!T5_) goto LA7_;
3564 			result = NIM_TRUE;
3565 		}
3566 		goto LA3_;
3567 		LA7_: ;
3568 		{
3569 			result = NIM_FALSE;
3570 		}
3571 		LA3_: ;
3572 	}
3573 	break;
3574 	default:
3575 	{
3576 		result = NIM_FALSE;
3577 	}
3578 	break;
3579 	}
3580 	return result;
3581 }
N_NIMCALL(NimStringDesc *,listSymbolNames__astalgo_4310)3582 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, listSymbolNames__astalgo_4310)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ** symbols, NI symbolsLen_0) {
3583 	NimStringDesc* result;
3584 	result = NIM_NIL;
3585 	{
3586 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ** sym;
3587 		NI i;
3588 		sym = (tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ**)0;
3589 		i = ((NI) 0);
3590 		{
3591 			while (1) {
3592 				if (!(i < symbolsLen_0)) goto LA3;
3593 				sym = &symbols[i];
3594 				{
3595 					if (!(((NI) 0) < (result ? result->Sup.len : 0))) goto LA6_;
3596 					result = resizeString(result, 2);
3597 appendString(result, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_22));
3598 				}
3599 				LA6_: ;
3600 				result = resizeString(result, ((*(*(*sym)).name).s ? (*(*(*sym)).name).s->Sup.len : 0) + 0);
3601 appendString(result, (*(*(*sym)).name).s);
3602 				i += ((NI) 1);
3603 			} LA3: ;
3604 		}
3605 	}
3606 	return result;
3607 }
N_NIMCALL(void,symTabReplaceRaw__astalgo_3277)3608 N_LIB_PRIVATE N_NIMCALL(void, symTabReplaceRaw__astalgo_3277)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym) {
3609 	NI h;
3610 	NI T1_;
3611 {	T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
3612 	h = (NI)((*(*prevSym).name).h & T1_);
3613 	{
3614 		while (1) {
3615 			NI T8_;
3616 			if (!!(((*data)->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3617 			{
3618 				if (!((*data)->data[h] == prevSym)) goto LA6_;
3619 				asgnRef((void**) (&(*data)->data[h]), newSym);
3620 				goto BeforeRet_;
3621 			}
3622 			LA6_: ;
3623 			T8_ = (((*data) ? (*data)->Sup.len : 0)-1);
3624 			h = nextTry__astalgo_90(h, T8_);
3625 		} LA3: ;
3626 	}
3627 	}BeforeRet_: ;
3628 }
N_NIMCALL(void,symTabReplace__astalgo_3302)3629 N_LIB_PRIVATE N_NIMCALL(void, symTabReplace__astalgo_3302)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym) {
3630 	symTabReplaceRaw__astalgo_3277((&(*t).data), prevSym, newSym);
3631 }
N_NIMCALL(NIM_BOOL,isDiscriminantField__astalgo_4335)3632 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDiscriminantField__astalgo_4335)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3633 	NIM_BOOL result;
3634 	result = (NIM_BOOL)0;
3635 	{
3636 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46))) goto LA3_;
3637 		result = (((*(*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 20))&63U)))!=0);
3638 	}
3639 	goto LA1_;
3640 	LA3_: ;
3641 	{
3642 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45))) goto LA6_;
3643 		result = (((*(*(*n)._kind_6.sons->data[((NI) 1)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 20))&63U)))!=0);
3644 	}
3645 	goto LA1_;
3646 	LA6_: ;
3647 	{
3648 		result = NIM_FALSE;
3649 	}
3650 	LA1_: ;
3651 	return result;
3652 }
N_NIMCALL(NIM_BOOL,strTableContains__astalgo_3233)3653 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, strTableContains__astalgo_3233)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
3654 	NIM_BOOL result;
3655 	NI h;
3656 	NI T1_;
3657 {	result = (NIM_BOOL)0;
3658 	T1_ = ((t.data ? t.data->Sup.len : 0)-1);
3659 	h = (NI)((*(*n).name).h & T1_);
3660 	{
3661 		while (1) {
3662 			NI T8_;
3663 			if (!!((t.data->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3664 			{
3665 				if (!(t.data->data[h] == n)) goto LA6_;
3666 				result = NIM_TRUE;
3667 				goto BeforeRet_;
3668 			}
3669 			LA6_: ;
3670 			T8_ = ((t.data ? t.data->Sup.len : 0)-1);
3671 			h = nextTry__astalgo_90(h, T8_);
3672 		} LA3: ;
3673 	}
3674 	result = NIM_FALSE;
3675 	}BeforeRet_: ;
3676 	return result;
3677 }
N_NIMCALL(void,compiler_astalgoDatInit000)3678 N_LIB_PRIVATE N_NIMCALL(void, compiler_astalgoDatInit000)(void) {
3679 static TNimNode* TM__uRgrUHgaDgkYkoMPsaodqw_2_3[3];
3680 static TNimNode TM__uRgrUHgaDgkYkoMPsaodqw_0[4];
3681 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.size = sizeof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g);
3682 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.align = NIM_ALIGNOF(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g);
3683 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.kind = 18;
3684 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.base = 0;
3685 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.flags = 1;
3686 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[0] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[1];
3687 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].kind = 1;
3688 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field0);
3689 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
3690 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].name = "Field0";
3691 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[1] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[2];
3692 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].kind = 1;
3693 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field1);
3694 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_);
3695 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].name = "Field1";
3696 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[2] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[3];
3697 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].kind = 1;
3698 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field2);
3699 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
3700 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].name = "Field2";
3701 TM__uRgrUHgaDgkYkoMPsaodqw_0[0].len = 3; TM__uRgrUHgaDgkYkoMPsaodqw_0[0].kind = 2; TM__uRgrUHgaDgkYkoMPsaodqw_0[0].sons = &TM__uRgrUHgaDgkYkoMPsaodqw_2_3[0];
3702 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.node = &TM__uRgrUHgaDgkYkoMPsaodqw_0[0];
3703 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.size = sizeof(tySequence__9chP3SzkaldXzawWQCDsqqg*);
3704 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.align = NIM_ALIGNOF(tySequence__9chP3SzkaldXzawWQCDsqqg*);
3705 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.kind = 24;
3706 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.base = (&NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_);
3707 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.marker = Marker_tySequence__9chP3SzkaldXzawWQCDsqqg;
3708 }
3709 
3710