1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 #define NIM_EmulateOverflowChecks
4 
5 #include "nimbase.h"
6 #include <string.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_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
23 typedef struct NimStringDesc NimStringDesc;
24 typedef struct TGenericSeq TGenericSeq;
25 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
26 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
27 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
28 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
29 typedef struct tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg;
30 typedef struct tySequence__s12F9c4cKfaapm8VzG9a1flQ tySequence__s12F9c4cKfaapm8VzG9a1flQ;
31 typedef struct tyTuple__8jHm6IGDGecciKpp2bTNxA tyTuple__8jHm6IGDGecciKpp2bTNxA;
32 typedef struct TNimType TNimType;
33 typedef struct TNimNode TNimNode;
34 typedef struct tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ;
35 typedef struct tyObject_BaseLexer__MAw8rJZtJ279bVV3TWMtXSg tyObject_BaseLexer__MAw8rJZtJ279bVV3TWMtXSg;
36 typedef struct RootObj RootObj;
37 typedef struct tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ;
38 typedef struct tySequence__Ih0V9cYug0VPJyBBGvgEH7Q tySequence__Ih0V9cYug0VPJyBBGvgEH7Q;
39 typedef struct tyObject_StringStreamObj__Olau5FPRehZBBEB77FHnfw tyObject_StringStreamObj__Olau5FPRehZBBEB77FHnfw;
40 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
41 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
42 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
43 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
44 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
45 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
46 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
47 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
48 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
49 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
50 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
51 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
52 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
53 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
54 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
55 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
56 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
57 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
58 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
59 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
60 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
61 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
62 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
63 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
64 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
65 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
66 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
67 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
68 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
69 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
70 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
71 struct TGenericSeq {
72 NI len;
73 NI reserved;
74 };
75 struct NimStringDesc {
76   TGenericSeq Sup;
77 NIM_CHAR data[SEQ_DECL_SIZE];
78 };
79 struct tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg {
80 tySequence__s12F9c4cKfaapm8VzG9a1flQ* data;
81 NI counter;
82 };
83 struct tyTuple__8jHm6IGDGecciKpp2bTNxA {
84 NI Field0;
85 NI64 Field1;
86 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
87 };
88 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
89 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
90 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
91 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
92 struct TNimType {
93 NI size;
94 NI align;
95 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
96 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
97 TNimType* base;
98 TNimNode* node;
99 void* finalizer;
100 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
101 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
102 };
103 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
104 struct TNimNode {
105 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
106 NI offset;
107 TNimType* typ;
108 NCSTRING name;
109 NI len;
110 TNimNode** sons;
111 };
112 struct RootObj {
113 TNimType* m_type;
114 };
115 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
116 struct tyObject_BaseLexer__MAw8rJZtJ279bVV3TWMtXSg {
117   RootObj Sup;
118 NI bufpos;
119 NimStringDesc* buf;
120 tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* input;
121 NI lineNumber;
122 NI sentinel;
123 NI lineStart;
124 NI offsetBase;
125 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw refillChars;
126 };
127 typedef NU8 tyEnum_TokKind__Q9c4KaNqJU4PbXaGht0C7iw;
128 typedef NU8 tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA;
129 typedef NU8 tyEnum_JsonError__G9cw5MrJXJrcpID5JXaplew;
130 struct tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ {
131   tyObject_BaseLexer__MAw8rJZtJ279bVV3TWMtXSg Sup;
132 NimStringDesc* a;
133 tyEnum_TokKind__Q9c4KaNqJU4PbXaGht0C7iw tok;
134 tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA kind;
135 tyEnum_JsonError__G9cw5MrJXJrcpID5JXaplew err;
136 tySequence__Ih0V9cYug0VPJyBBGvgEH7Q* state;
137 NimStringDesc* filename;
138 NIM_BOOL rawStringLiterals;
139 };
140 typedef N_NIMCALL_PTR(void, tyProc__JQrsH08b4uPTH9cyFPlVOZg) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
141 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__9bmhFrLahRsL2hltfRDVtlQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
142 typedef N_NIMCALL_PTR(void, tyProc__3svSoGIUJIsHkaBL7q4DAQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NI pos);
143 typedef N_NIMCALL_PTR(NI, tyProc__xflqkf2D1uVClg70czEDHA) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
144 typedef N_NIMCALL_PTR(NI, tyProc__c9c0f59ak4YGQ6neEym8LPKw) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NimStringDesc** buffer, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA slice);
145 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__7jFfqMk9ajToCz6Hv9atCA4A) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NimStringDesc** line);
146 typedef N_NIMCALL_PTR(NI, tyProc__2VVzVL9bOnKhj1eZKkf9cEuA) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, void* buffer, NI bufLen);
147 typedef N_NIMCALL_PTR(void, tyProc__ki6p1QyfOkJLQJ9aw5NI0AQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, void* buffer, NI bufLen);
148 struct tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ {
149   RootObj Sup;
150 tyProc__JQrsH08b4uPTH9cyFPlVOZg closeImpl;
151 tyProc__9bmhFrLahRsL2hltfRDVtlQ atEndImpl;
152 tyProc__3svSoGIUJIsHkaBL7q4DAQ setPositionImpl;
153 tyProc__xflqkf2D1uVClg70czEDHA getPositionImpl;
154 tyProc__c9c0f59ak4YGQ6neEym8LPKw readDataStrImpl;
155 tyProc__7jFfqMk9ajToCz6Hv9atCA4A readLineImpl;
156 tyProc__2VVzVL9bOnKhj1eZKkf9cEuA readDataImpl;
157 tyProc__2VVzVL9bOnKhj1eZKkf9cEuA peekDataImpl;
158 tyProc__ki6p1QyfOkJLQJ9aw5NI0AQ writeDataImpl;
159 tyProc__JQrsH08b4uPTH9cyFPlVOZg flushImpl;
160 };
161 struct tyObject_StringStreamObj__Olau5FPRehZBBEB77FHnfw {
162   tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ Sup;
163 NimStringDesc* data;
164 NI pos;
165 };
166 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
167 NU16 line;
168 NI16 col;
169 NI32 fileIndex;
170 };
171 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
172 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
173 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
174 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
175 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
176 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
177 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
178 union{
179 struct {NI64 intVal;
180 } _kind_1;
181 struct {NF floatVal;
182 } _kind_2;
183 struct {NimStringDesc* strVal;
184 } _kind_3;
185 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
186 } _kind_4;
187 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
188 } _kind_5;
189 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
190 } _kind_6;
191 };
192 };
193 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
194 NI32 module;
195 NI32 item;
196 };
197 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
198   RootObj Sup;
199 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
200 };
201 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
202 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
203 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
204 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
205 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
206 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
207 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
208 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
209 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
210 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
211 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
212 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
213 };
214 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
215   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
216 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
217 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
218 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
219 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
220 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
221 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
222 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
223 NI64 size;
224 NI16 align;
225 NI16 paddingAtEnd;
226 NI16 lockLevel;
227 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
228 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
229 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
230 };
231 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
232 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
233 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
234 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
235 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
236   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
237 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
238 union{
239 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
240 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
241 } _kind_1;
242 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
243 NI bitsize;
244 NI alignment;
245 } _kind_2;
246 };
247 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
248 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
249 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
250 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
251 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
252 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
253 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
254 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
255 NI position;
256 NI offset;
257 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
258 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
259 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
260 };
261 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
262 NI id;
263 NimStringDesc* s;
264 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
265 NI h;
266 };
267 typedef NU8 tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw;
268 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
269 NI refcount;
270 TNimType* typ;
271 };
272 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
273 void* bottom;
274 };
275 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
276 NI len;
277 NI cap;
278 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
279 };
280 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
281 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
282 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
283 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
284 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
285 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
286 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
287 };
288 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
289 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
290 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
291 NI key;
292 NI upperBound;
293 NI level;
294 };
295 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
296 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
297 NI Field1;
298 };
299 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
300 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
301 NI len;
302 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
303 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
304 };
305 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
306 NI minLargeObj;
307 NI maxLargeObj;
308 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
309 NU32 flBitmap;
310 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
311 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
312 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
313 NI currMem;
314 NI maxMem;
315 NI freeMem;
316 NI occ;
317 NI lastSize;
318 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
319 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
320 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
321 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
322 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
323 NIM_BOOL locked;
324 NIM_BOOL blockChunkSizeIncrease;
325 NI nextChunkSize;
326 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
327 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
328 };
329 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
330 NI stackScans;
331 NI cycleCollections;
332 NI maxThreshold;
333 NI maxStackSize;
334 NI maxStackCells;
335 NI cycleTableSize;
336 NI64 maxPause;
337 };
338 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
339 NI counter;
340 NI max;
341 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
342 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
343 };
344 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
345 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
346 NI cycleThreshold;
347 NI zctThreshold;
348 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
349 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
350 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
351 NI recGcLock;
352 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
353 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
354 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
355 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
356 NI gcThreadId;
357 };
358 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
359 NI32 module;
360 NI32 symId;
361 NI32 typeId_0;
362 NIM_BOOL sealed;
363 };
364 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
365 NimStringDesc* Field0;
366 NI Field1;
367 NI Field2;
368 };
369 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
370 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
371 NI elems;
372 NI counter;
373 NI max;
374 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
375 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
376 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
377 };
378 typedef NU8 tyEnum_ParserState__Na0rM2Zdr3RpxeNeXbvLrQ;
379 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
380 NI a;
381 NI b;
382 };
383 struct tySequence__s12F9c4cKfaapm8VzG9a1flQ {
384   TGenericSeq Sup;
385   tyTuple__8jHm6IGDGecciKpp2bTNxA data[SEQ_DECL_SIZE];
386 };
387 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
388   TGenericSeq Sup;
389   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
390 };
391 struct tySequence__Ih0V9cYug0VPJyBBGvgEH7Q {
392   TGenericSeq Sup;
393   tyEnum_ParserState__Na0rM2Zdr3RpxeNeXbvLrQ data[SEQ_DECL_SIZE];
394 };
395 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
396   TGenericSeq Sup;
397   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
398 };
399 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
400   TGenericSeq Sup;
401   tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
402 };
403 static N_INLINE(void, nimZeroMem)(void* p, NI size);
404 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
405 N_LIB_PRIVATE N_NIMCALL(void, initTable__vmmarshal_1860)(NI initialSize, tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* Result);
406 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
407 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
408 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_176)(NI x);
409 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
410 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
411 static N_NIMCALL(void, Marker_tySequence__s12F9c4cKfaapm8VzG9a1flQ)(void* p, NI op);
412 N_LIB_PRIVATE N_NIMCALL(void, open__pureZparsejson_97)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my, tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* input, NimStringDesc* filename, NIM_BOOL rawStringLiterals);
413 N_LIB_PRIVATE N_NIMCALL(tyObject_StringStreamObj__Olau5FPRehZBBEB77FHnfw*, newStringStream__pureZstreams_676)(NimStringDesc* s);
414 N_LIB_PRIVATE N_NIMCALL(void, next__pureZparsejson_456)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
415 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadAny__vmmarshal_206)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* tab, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
416 static N_INLINE(tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA, kind__pureZparsejson_185)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
417 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntNode__ast_3723)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NI64 intVal);
418 N_LIB_PRIVATE N_NOINLINE(void, raiseParseErr__pureZparsejson_580)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* p, NimStringDesc* msg) __attribute__((noreturn));
419 static N_INLINE(NimStringDesc*, str__pureZparsejson_153)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
420 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
421 static N_INLINE(NI64, getInt__pureZparsejson_164)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
422 N_LIB_PRIVATE N_NIMCALL(NI64, nsuParseBiggestInt)(NimStringDesc* s);
423 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
424 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
425 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
426 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
427 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
428 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode__ast_3332)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind);
429 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
430 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, elemType__types_263)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
431 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
432 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
433 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
434 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
435 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__types_50)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer);
436 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
437 static N_INLINE(void, nimGCunrefRC1)(void* p);
438 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
439 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
440 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
441 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
442 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5285)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
443 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr);
444 N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len);
445 static N_INLINE(void, asgnRef)(void** dest, void* src);
446 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
447 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
448 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
449 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field);
450 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
451 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
452 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newSym__ast_3445)(tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw symKind, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options);
453 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
454 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lastSon__ast_3743)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
455 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getOrDefault__vmmarshal_446)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key);
456 static N_INLINE(NI, rawGet__vmmarshal_455)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key, NI* hc);
457 static N_INLINE(NI, hash__pureZjson_2955)(NI64 x);
458 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
459 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
460 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b);
461 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
462 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
463 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
464 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vmmarshal_802)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t, NI64 key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
465 static N_INLINE(NIM_BOOL, mustRehash__vmmarshal_975)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t);
466 N_LIB_PRIVATE N_NIMCALL(void, enlarge__vmmarshal_1128)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t);
467 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__vmmarshal_1432)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t, tySequence__s12F9c4cKfaapm8VzG9a1flQ** data, NI64 key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val, NI hc, NI h);
468 static N_INLINE(NI, rawGetKnownHC__vmmarshal_1601)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key, NI hc);
469 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStrNode__ast_3813)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NimStringDesc* strVal);
470 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newFloatNode__ast_3809)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NF floatVal);
471 static N_INLINE(NF, getFloat__pureZparsejson_175)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
472 N_LIB_PRIVATE N_NIMCALL(NF, nsuParseFloat)(NimStringDesc* s);
473 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
474 static N_INLINE(void, close__pureZparsejson_151)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my);
475 N_LIB_PRIVATE N_NIMCALL(void, close__pureZlexbase_14)(tyObject_BaseLexer__MAw8rJZtJ279bVV3TWMtXSg* L);
476 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
477 N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
478 N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_54)(NimStringDesc** s, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* stored, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
479 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimBoolToStr)(NIM_BOOL x);
480 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
481 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, escapeJson__pureZjson_4355)(NimStringDesc* s);
482 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
483 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
484 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipColon__ast_4948)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
485 N_LIB_PRIVATE N_NIMCALL(void, storeObj__vmmarshal_60)(NimStringDesc** s, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* stored, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
486 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getField__vmmarshal_15)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI position);
487 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
488 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__ast_4336)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
489 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
490 static N_INLINE(NI, ptrToInt__vmmarshal_12)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x);
491 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3118)(NF x);
492 N_LIB_PRIVATE TNimType NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_;
493 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
494 extern TNimType NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_;
495 extern TNimType NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_;
496 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_;
497 extern TNimType NTIjsonparser__KWIQnzXEOUqdWsnCUL9atyQ_;
498 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_3, "unknown file", 12);
499 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_4, "\'true\' or \'false\' expected for a bool", 37);
500 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_5, "string of length 1 expected for a char", 38);
501 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_6, "string expected for an enum", 27);
502 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_7, "\'[\' expected for an array", 25);
503 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_8, "\']\' end of array expected", 25);
504 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_9, "\'[\' expected for a seq", 22);
505 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_10, "\'{\' expected for an object", 26);
506 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_11, "string expected for a field name", 32);
507 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_12, "too many fields to tuple type ", 30);
508 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_13, "\'}\' end of object expected", 26);
509 extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
510 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_14, "unknown field for object of type ", 33);
511 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
512 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_15, "\'[\' expected for a set", 22);
513 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_16, "cannot load object with address ", 32);
514 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_17, "index for ref type expected", 27);
515 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_18, "\']\' end of ref-address pair expected", 36);
516 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_19, "int for pointer type expected", 29);
517 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_20, "string expected", 15);
518 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_21, "int expected", 12);
519 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_22, "float expected", 14);
520 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_23, "cannot marshal at compile-time ", 31);
521 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_25, "/home/runner/work/nightlies/nightlies/nim/compiler/vmmarshal.nim", 64);
522 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__eBu3XSE68i5yQmrMcuBiww_24 = {((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_25),
523 ((NI) 282),
524 ((NI) 18)}
525 ;
526 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_26, "null", 4);
527 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_27, "[", 1);
528 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_28, ", ", 2);
529 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_29, "]", 1);
530 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_30, "{", 1);
531 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_31, "\"Field", 6);
532 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_32, "\": ", 3);
533 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_33, "}", 1);
534 STRING_LITERAL(TM__eBu3XSE68i5yQmrMcuBiww_34, ": ", 2);
535 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__eBu3XSE68i5yQmrMcuBiww_35 = {((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_25),
536 ((NI) 131),
537 ((NI) 18)}
538 ;
539 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5238;
N_INLINE(void,nimSetMem__systemZmemory_7)540 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
541 	void* T1_;
542 	T1_ = (void*)0;
543 	T1_ = memset(a, v, ((size_t) (size)));
544 }
N_INLINE(void,nimZeroMem)545 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
546 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
547 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)548 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
549 	NI result;
550 	result = (NI)0;
551 	result = nextPowerOfTwo__pureZmath_176((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
552 	return result;
553 }
N_NIMCALL(void,Marker_tySequence__s12F9c4cKfaapm8VzG9a1flQ)554 static N_NIMCALL(void, Marker_tySequence__s12F9c4cKfaapm8VzG9a1flQ)(void* p, NI op) {
555 	tySequence__s12F9c4cKfaapm8VzG9a1flQ* a;
556 	NI T1_;
557 	a = (tySequence__s12F9c4cKfaapm8VzG9a1flQ*)p;
558 	T1_ = (NI)0;
559 	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
560 	nimGCvisit((void*)a->data[T1_].Field2, op);
561 	}
562 }
N_NIMCALL(void,initTable__vmmarshal_1860)563 N_LIB_PRIVATE N_NIMCALL(void, initTable__vmmarshal_1860)(NI initialSize, tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* Result) {
564 	NI correctSizeX60gensym72_;
565 	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
566 	(*Result).counter = 0;
567 	correctSizeX60gensym72_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
568 	(*Result).counter = ((NI) 0);
569 	unsureAsgnRef((void**) (&(*Result).data), (tySequence__s12F9c4cKfaapm8VzG9a1flQ*) newSeq((&NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_), ((NI) (correctSizeX60gensym72_))));
570 }
N_INLINE(tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA,kind__pureZparsejson_185)571 static N_INLINE(tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA, kind__pureZparsejson_185)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my) {
572 	tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA result;
573 {	result = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
574 	result = (*my).kind;
575 	goto BeforeRet_;
576 	}BeforeRet_: ;
577 	return result;
578 }
N_INLINE(NimStringDesc *,str__pureZparsejson_153)579 static N_INLINE(NimStringDesc*, str__pureZparsejson_153)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my) {
580 	NimStringDesc* result;
581 {	result = NIM_NIL;
582 	result = copyString((*my).a);
583 	goto BeforeRet_;
584 	}BeforeRet_: ;
585 	return result;
586 }
N_INLINE(NI64,getInt__pureZparsejson_164)587 static N_INLINE(NI64, getInt__pureZparsejson_164)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my) {
588 	NI64 result;
589 {	result = (NI64)0;
590 	result = nsuParseBiggestInt((*my).a);
591 	goto BeforeRet_;
592 	}BeforeRet_: ;
593 	return result;
594 }
N_INLINE(NI,len__ast_3198)595 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
596 	NI result;
597 	NI T1_;
598 	result = (NI)0;
599 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
600 	result = T1_;
601 	return result;
602 }
N_INLINE(NI,safeLen__ast_3191)603 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
604 	NI result;
605 	result = (NI)0;
606 	{
607 		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
608 		result = ((NI) 0);
609 	}
610 	goto LA1_;
611 	LA3_: ;
612 	{
613 		result = len__ast_3198(n);
614 	}
615 	LA1_: ;
616 	return result;
617 }
N_INLINE(int,nimCmpMem)618 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
619 	int result;
620 	result = (int)0;
621 	result = memcmp(a, b, ((size_t) (size)));
622 	return result;
623 }
N_INLINE(NIM_BOOL,equalMem__system_1735)624 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
625 	NIM_BOOL result;
626 	int T1_;
627 	result = (NIM_BOOL)0;
628 	T1_ = (int)0;
629 	T1_ = nimCmpMem(a, b, size);
630 	result = (T1_ == ((NI32) 0));
631 	return result;
632 }
N_INLINE(NIM_BOOL,eqStrings)633 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
634 	NIM_BOOL result;
635 	NI alen;
636 	NI blen;
637 {	result = (NIM_BOOL)0;
638 	alen = (a ? a->Sup.len : 0);
639 	blen = (b ? b->Sup.len : 0);
640 	{
641 		if (!(alen == blen)) goto LA3_;
642 		{
643 			if (!(alen == ((NI) 0))) goto LA7_;
644 			result = NIM_TRUE;
645 			goto BeforeRet_;
646 		}
647 		LA7_: ;
648 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
649 		goto BeforeRet_;
650 	}
651 	LA3_: ;
652 	}BeforeRet_: ;
653 	return result;
654 }
N_INLINE(NI,len__ast_4002)655 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
656 	NI result;
657 	NI T1_;
658 	result = (NI)0;
659 	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
660 	result = T1_;
661 	return result;
662 }
N_INLINE(void,nimCopyMem)663 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
664 	void* T1_;
665 	T1_ = (void*)0;
666 	T1_ = memcpy(dest, source, ((size_t) (size)));
667 }
N_INLINE(void,copyMem__system_1727)668 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
669 	nimCopyMem(dest, source, size);
670 }
N_INLINE(void,appendString)671 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
672 	{
673 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
674 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
675 		(*dest).Sup.len += (*src).Sup.len;
676 	}
677 	LA3_: ;
678 }
N_INLINE(NI,minuspercent___system_716)679 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
680 	NI result;
681 	result = (NI)0;
682 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
683 	return result;
684 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)685 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
686 	NIM_BOOL result;
687 	result = (NIM_BOOL)0;
688 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
689 	return result;
690 }
N_INLINE(void,rtlAddZCT__system_5334)691 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
692 	addZCT__system_5285((&gch__system_5238.zct), c);
693 }
N_INLINE(void,decRef__system_5336)694 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
695 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
696 	{
697 		NIM_BOOL T3_;
698 		T3_ = (NIM_BOOL)0;
699 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
700 		if (!T3_) goto LA4_;
701 		rtlAddZCT__system_5334(c);
702 	}
703 	LA4_: ;
704 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5291)705 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr) {
706 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
707 	NI T1_;
708 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
709 	T1_ = (NI)0;
710 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
711 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
712 	return result;
713 }
N_INLINE(void,nimGCunrefRC1)714 static N_INLINE(void, nimGCunrefRC1)(void* p) {
715 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
716 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
717 	T1_ = usrToCell__system_5291(p);
718 	decRef__system_5336(T1_);
719 }
N_INLINE(NI,pluspercent___system_696)720 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
721 	NI result;
722 	result = (NI)0;
723 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
724 	return result;
725 }
N_INLINE(void,incRef__system_5329)726 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
727 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
728 }
N_INLINE(void,asgnRef)729 static N_INLINE(void, asgnRef)(void** dest, void* src) {
730 	{
731 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
732 		if (!!((src == NIM_NIL))) goto LA3_;
733 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
734 		T5_ = usrToCell__system_5291(src);
735 		incRef__system_5329(T5_);
736 	}
737 	LA3_: ;
738 	{
739 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
740 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
741 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
742 		T10_ = usrToCell__system_5291((*dest));
743 		decRef__system_5336(T10_);
744 	}
745 	LA8_: ;
746 	(*dest) = src;
747 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextSymId__ast_3132)748 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
749 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
750 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
751 	(*x).symId += ((NI) 1);
752 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
753 	result.module = (*x).module;
754 	result.item = (*x).symId;
755 	return result;
756 }
N_INLINE(NU64,hiXorLoFallback64__pureZhashes_35)757 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b) {
758 	NU64 result;
759 	NU64 aH;
760 	NU64 aL;
761 	NU64 bH;
762 	NU64 bL;
763 	NU64 rHH;
764 	NU64 rHL;
765 	NU64 rLH;
766 	NU64 rLL;
767 	NU64 t;
768 	NU64 c;
769 	NU64 lo;
770 	NU64 T6_;
771 	NU64 hi;
772 {	result = (NU64)0;
773 	aH = (NU64)((NU64)(a) >> (NU64)(((NI) 32)));
774 	aL = (NU64)(a & 4294967295ULL);
775 	bH = (NU64)((NU64)(b) >> (NU64)(((NI) 32)));
776 	bL = (NU64)(b & 4294967295ULL);
777 	rHH = (NU64)((NU64)(aH) * (NU64)(bH));
778 	rHL = (NU64)((NU64)(aH) * (NU64)(bL));
779 	rLH = (NU64)((NU64)(aL) * (NU64)(bH));
780 	rLL = (NU64)((NU64)(aL) * (NU64)(bL));
781 	t = (NU64)((NU64)(rLL) + (NU64)((NU64)((NU64)(rHL) << (NU64)(((NI) 32)))));
782 	{
783 		if (!((NU64)(t) < (NU64)(rLL))) goto LA3_;
784 		c = 1ULL;
785 	}
786 	goto LA1_;
787 	LA3_: ;
788 	{
789 		c = 0ULL;
790 	}
791 	LA1_: ;
792 	lo = (NU64)((NU64)(t) + (NU64)((NU64)((NU64)(rLH) << (NU64)(((NI) 32)))));
793 	T6_ = (NU64)0;
794 	{
795 		if (!((NU64)(lo) < (NU64)(t))) goto LA9_;
796 		T6_ = 1ULL;
797 	}
798 	goto LA7_;
799 	LA9_: ;
800 	{
801 		T6_ = 0ULL;
802 	}
803 	LA7_: ;
804 	c += T6_;
805 	hi = (NU64)((NU64)((NU64)((NU64)((NU64)((NU64)(rHH) + (NU64)((NU64)((NU64)(rHL) >> (NU64)(((NI) 32)))))) + (NU64)((NU64)((NU64)(rLH) >> (NU64)(((NI) 32)))))) + (NU64)(c));
806 	result = (NU64)(hi ^ lo);
807 	goto BeforeRet_;
808 	}BeforeRet_: ;
809 	return result;
810 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)811 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
812 	NU64 result;
813 	result = (NU64)0;
814 	result = hiXorLoFallback64__pureZhashes_35(a, b);
815 	return result;
816 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)817 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
818 	NI result;
819 	NU64 T1_;
820 	NU64 T2_;
821 	result = (NI)0;
822 	T1_ = (NU64)0;
823 	T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
824 	T2_ = (NU64)0;
825 	T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
826 	result = ((NI) (T2_));
827 	return result;
828 }
N_INLINE(NI,hash__pureZjson_2955)829 static N_INLINE(NI, hash__pureZjson_2955)(NI64 x) {
830 	NI result;
831 	result = (NI)0;
832 	result = hashWangYi1__pureZhashes_136(((NU64) (x)));
833 	return result;
834 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)835 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
836 	NIM_BOOL result;
837 	result = (NIM_BOOL)0;
838 	result = !((hcode == ((NI) 0)));
839 	return result;
840 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)841 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
842 	NI result;
843 	result = (NI)0;
844 	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
845 	return result;
846 }
N_INLINE(NI,rawGet__vmmarshal_455)847 static N_INLINE(NI, rawGet__vmmarshal_455)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key, NI* hc) {
848 	NI result;
849 	NI h;
850 	NI T10_;
851 {	result = (NI)0;
852 	(*hc) = hash__pureZjson_2955(key);
853 	{
854 		if (!((*hc) == ((NI) 0))) goto LA3_;
855 		(*hc) = ((NI) 314159265);
856 	}
857 	LA3_: ;
858 	{
859 		NI T7_;
860 		T7_ = (t.data ? t.data->Sup.len : 0);
861 		if (!(T7_ == ((NI) 0))) goto LA8_;
862 		result = ((NI) -1);
863 		goto BeforeRet_;
864 	}
865 	LA8_: ;
866 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
867 	h = (NI)((*hc) & T10_);
868 	{
869 		while (1) {
870 			NIM_BOOL T13_;
871 			NI T20_;
872 			T13_ = (NIM_BOOL)0;
873 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
874 			if (!T13_) goto LA12;
875 			{
876 				NIM_BOOL T16_;
877 				T16_ = (NIM_BOOL)0;
878 				T16_ = (t.data->data[h].Field0 == (*hc));
879 				if (!(T16_)) goto LA17_;
880 				T16_ = (t.data->data[h].Field1 == key);
881 				LA17_: ;
882 				if (!T16_) goto LA18_;
883 				result = h;
884 				goto BeforeRet_;
885 			}
886 			LA18_: ;
887 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
888 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
889 		} LA12: ;
890 	}
891 	result = (NI)(((NI) -1) - h);
892 	}BeforeRet_: ;
893 	return result;
894 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,getOrDefault__vmmarshal_446)895 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getOrDefault__vmmarshal_446)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key) {
896 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
897 	NI hcX60gensym54_;
898 	NI indexX60gensym54_;
899 	result = NIM_NIL;
900 	hcX60gensym54_ = (NI)0;
901 	indexX60gensym54_ = rawGet__vmmarshal_455(t, key, (&hcX60gensym54_));
902 	{
903 		if (!(((NI) 0) <= indexX60gensym54_)) goto LA3_;
904 		result = t.data->data[indexX60gensym54_].Field2;
905 	}
906 	LA3_: ;
907 	return result;
908 }
N_INLINE(NIM_BOOL,mustRehash__vmmarshal_975)909 static N_INLINE(NIM_BOOL, mustRehash__vmmarshal_975)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t) {
910 	NIM_BOOL result;
911 	NIM_BOOL T1_;
912 	NI T2_;
913 	NI T4_;
914 	result = (NIM_BOOL)0;
915 	T1_ = (NIM_BOOL)0;
916 	T2_ = (t.data ? t.data->Sup.len : 0);
917 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
918 	if (T1_) goto LA3_;
919 	T4_ = (t.data ? t.data->Sup.len : 0);
920 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
921 	LA3_: ;
922 	result = T1_;
923 	return result;
924 }
N_NIMCALL(void,rawInsert__vmmarshal_1432)925 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__vmmarshal_1432)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t, tySequence__s12F9c4cKfaapm8VzG9a1flQ** data, NI64 key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val, NI hc, NI h) {
926 	(*data)->data[h].Field1 = key;
927 	asgnRef((void**) (&(*data)->data[h].Field2), val);
928 	(*data)->data[h].Field0 = hc;
929 }
N_NIMCALL(void,enlarge__vmmarshal_1128)930 N_LIB_PRIVATE N_NIMCALL(void, enlarge__vmmarshal_1128)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t) {
931 	tySequence__s12F9c4cKfaapm8VzG9a1flQ* n;
932 	NI T1_;
933 	tySequence__s12F9c4cKfaapm8VzG9a1flQ* T2_;
934 	n = NIM_NIL;
935 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
936 	n = (tySequence__s12F9c4cKfaapm8VzG9a1flQ*) newSeq((&NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
937 	T2_ = NIM_NIL;
938 	T2_ = (*t).data;
939 	unsureAsgnRef((void**) (&(*t).data), n);
940 	n = T2_;
941 	{
942 		NI i;
943 		NI colontmp_;
944 		NI T4_;
945 		NI res;
946 		i = (NI)0;
947 		colontmp_ = (NI)0;
948 		T4_ = ((n ? n->Sup.len : 0)-1);
949 		colontmp_ = T4_;
950 		res = ((NI) 0);
951 		{
952 			while (1) {
953 				NI eh;
954 				if (!(res <= colontmp_)) goto LA6;
955 				i = res;
956 				eh = n->data[i].Field0;
957 				{
958 					NIM_BOOL T9_;
959 					NI j;
960 					NI T12_;
961 					NI64 T17_;
962 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T18_;
963 					T9_ = (NIM_BOOL)0;
964 					T9_ = isFilled__pureZcollectionsZtables_31(eh);
965 					if (!T9_) goto LA10_;
966 					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
967 					j = (NI)(eh & T12_);
968 					{
969 						while (1) {
970 							NIM_BOOL T15_;
971 							NI T16_;
972 							T15_ = (NIM_BOOL)0;
973 							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
974 							if (!T15_) goto LA14;
975 							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
976 							j = nextTry__pureZcollectionsZtables_34(j, T16_);
977 						} LA14: ;
978 					}
979 					T17_ = (NI64)0;
980 					T17_ = n->data[i].Field1;
981 					n->data[i].Field1 = 0;
982 					T18_ = NIM_NIL;
983 					T18_ = n->data[i].Field2;
984 					asgnRef((void**) (&n->data[i].Field2), NIM_NIL);
985 					rawInsert__vmmarshal_1432(t, (&(*t).data), T17_, T18_, eh, j);
986 				}
987 				LA10_: ;
988 				res += ((NI) 1);
989 			} LA6: ;
990 		}
991 	}
992 }
N_INLINE(NI,rawGetKnownHC__vmmarshal_1601)993 static N_INLINE(NI, rawGetKnownHC__vmmarshal_1601)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg t, NI64 key, NI hc) {
994 	NI result;
995 	NI h;
996 	NI T6_;
997 {	result = (NI)0;
998 	{
999 		NI T3_;
1000 		T3_ = (t.data ? t.data->Sup.len : 0);
1001 		if (!(T3_ == ((NI) 0))) goto LA4_;
1002 		result = ((NI) -1);
1003 		goto BeforeRet_;
1004 	}
1005 	LA4_: ;
1006 	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
1007 	h = (NI)(hc & T6_);
1008 	{
1009 		while (1) {
1010 			NIM_BOOL T9_;
1011 			NI T16_;
1012 			T9_ = (NIM_BOOL)0;
1013 			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1014 			if (!T9_) goto LA8;
1015 			{
1016 				NIM_BOOL T12_;
1017 				T12_ = (NIM_BOOL)0;
1018 				T12_ = (t.data->data[h].Field0 == hc);
1019 				if (!(T12_)) goto LA13_;
1020 				T12_ = (t.data->data[h].Field1 == key);
1021 				LA13_: ;
1022 				if (!T12_) goto LA14_;
1023 				result = h;
1024 				goto BeforeRet_;
1025 			}
1026 			LA14_: ;
1027 			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
1028 			h = nextTry__pureZcollectionsZtables_34(h, T16_);
1029 		} LA8: ;
1030 	}
1031 	result = (NI)(((NI) -1) - h);
1032 	}BeforeRet_: ;
1033 	return result;
1034 }
N_NIMCALL(void,X5BX5Deq___vmmarshal_802)1035 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vmmarshal_802)(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* t, NI64 key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val) {
1036 	NI hc;
1037 	NI index;
1038 	{
1039 		NI T3_;
1040 		NI correctSizeX60gensym59_;
1041 		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
1042 		if (!(T3_ == ((NI) 0))) goto LA4_;
1043 		correctSizeX60gensym59_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1044 		(*t).counter = ((NI) 0);
1045 		unsureAsgnRef((void**) (&(*t).data), (tySequence__s12F9c4cKfaapm8VzG9a1flQ*) newSeq((&NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_), ((NI) (correctSizeX60gensym59_))));
1046 	}
1047 	LA4_: ;
1048 	hc = (NI)0;
1049 	index = rawGet__vmmarshal_455((*t), key, (&hc));
1050 	{
1051 		if (!(((NI) 0) <= index)) goto LA8_;
1052 		asgnRef((void**) (&(*t).data->data[index].Field2), val);
1053 	}
1054 	goto LA6_;
1055 	LA8_: ;
1056 	{
1057 		{
1058 			NI T13_;
1059 			NI correctSizeX60gensym62_;
1060 			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
1061 			if (!(T13_ == ((NI) 0))) goto LA14_;
1062 			correctSizeX60gensym62_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1063 			(*t).counter = ((NI) 0);
1064 			unsureAsgnRef((void**) (&(*t).data), (tySequence__s12F9c4cKfaapm8VzG9a1flQ*) newSeq((&NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_), ((NI) (correctSizeX60gensym62_))));
1065 		}
1066 		LA14_: ;
1067 		{
1068 			NIM_BOOL T18_;
1069 			T18_ = (NIM_BOOL)0;
1070 			T18_ = mustRehash__vmmarshal_975((*t));
1071 			if (!T18_) goto LA19_;
1072 			enlarge__vmmarshal_1128(t);
1073 			index = rawGetKnownHC__vmmarshal_1601((*t), key, hc);
1074 		}
1075 		LA19_: ;
1076 		index = (NI)(((NI) -1) - index);
1077 		rawInsert__vmmarshal_1432(t, (&(*t).data), key, val, hc, index);
1078 		(*t).counter += ((NI) 1);
1079 	}
1080 	LA6_: ;
1081 }
N_INLINE(NF,getFloat__pureZparsejson_175)1082 static N_INLINE(NF, getFloat__pureZparsejson_175)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my) {
1083 	NF result;
1084 {	result = (NF)0;
1085 	result = nsuParseFloat((*my).a);
1086 	goto BeforeRet_;
1087 	}BeforeRet_: ;
1088 	return result;
1089 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,loadAny__vmmarshal_206)1090 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadAny__vmmarshal_206)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg* tab, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
1091 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1092 {	result = NIM_NIL;
1093 	switch ((*t).kind) {
1094 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 0):
1095 	{
1096 	}
1097 	break;
1098 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
1099 	{
1100 		tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T3_;
1101 		T3_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1102 		T3_ = kind__pureZparsejson_185((&(*p)));
1103 		switch (T3_) {
1104 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 6):
1105 		{
1106 			result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), IL64(0));
1107 		}
1108 		break;
1109 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 5):
1110 		{
1111 			result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), IL64(1));
1112 		}
1113 		break;
1114 		default:
1115 		{
1116 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_4));
1117 		}
1118 		break;
1119 		}
1120 		next__pureZparsejson_456(p);
1121 	}
1122 	break;
1123 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
1124 	{
1125 		{
1126 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T10_;
1127 			NimStringDesc* x;
1128 			T10_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1129 			T10_ = kind__pureZparsejson_185((&(*p)));
1130 			if (!(T10_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 2))) goto LA11_;
1131 			x = str__pureZparsejson_153((&(*p)));
1132 			{
1133 				if (!((x ? x->Sup.len : 0) == ((NI) 1))) goto LA15_;
1134 				result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) (((NU8)(x->data[((NI) 0)])))));
1135 				next__pureZparsejson_456(p);
1136 				goto BeforeRet_;
1137 			}
1138 			LA15_: ;
1139 		}
1140 		goto LA8_;
1141 		LA11_: ;
1142 		{
1143 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T18_;
1144 			NI64 T21_;
1145 			T18_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1146 			T18_ = kind__pureZparsejson_185((&(*p)));
1147 			if (!(T18_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 3))) goto LA19_;
1148 			T21_ = (NI64)0;
1149 			T21_ = getInt__pureZparsejson_164((&(*p)));
1150 			result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), T21_);
1151 			next__pureZparsejson_456(p);
1152 			goto BeforeRet_;
1153 		}
1154 		goto LA8_;
1155 		LA19_: ;
1156 		LA8_: ;
1157 		raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_5));
1158 	}
1159 	break;
1160 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
1161 	{
1162 		{
1163 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T25_;
1164 			T25_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1165 			T25_ = kind__pureZparsejson_185((&(*p)));
1166 			if (!(T25_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 2))) goto LA26_;
1167 			{
1168 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e;
1169 				e = NIM_NIL;
1170 				{
1171 					NI i;
1172 					NI colontmp_;
1173 					NI i_2;
1174 					i = (NI)0;
1175 					colontmp_ = (NI)0;
1176 					colontmp_ = safeLen__ast_3191((*t).n);
1177 					i_2 = ((NI) 0);
1178 					{
1179 						while (1) {
1180 							if (!(i_2 < colontmp_)) goto LA31;
1181 							i = i_2;
1182 							e = (*(*t).n)._kind_6.sons->data[i];
1183 							{
1184 								NimStringDesc* T34_;
1185 								T34_ = NIM_NIL;
1186 								T34_ = str__pureZparsejson_153((&(*p)));
1187 								if (!eqStrings((*(*(*e)._kind_4.sym).name).s, T34_)) goto LA35_;
1188 								result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) ((*(*e)._kind_4.sym).position)));
1189 								next__pureZparsejson_456(p);
1190 								goto BeforeRet_;
1191 							}
1192 							LA35_: ;
1193 							i_2 += ((NI) 1);
1194 						} LA31: ;
1195 					}
1196 				}
1197 			}
1198 		}
1199 		LA26_: ;
1200 		raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_6));
1201 	}
1202 	break;
1203 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
1204 	{
1205 		{
1206 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T40_;
1207 			T40_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1208 			T40_ = kind__pureZparsejson_185((&(*p)));
1209 			if (!!((T40_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 10)))) goto LA41_;
1210 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_7));
1211 		}
1212 		LA41_: ;
1213 		next__pureZparsejson_456(p);
1214 		result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41));
1215 		{
1216 			while (1) {
1217 				NIM_BOOL T45_;
1218 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T46_;
1219 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T48_;
1220 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T49_;
1221 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T50_;
1222 				T45_ = (NIM_BOOL)0;
1223 				T46_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1224 				T46_ = kind__pureZparsejson_185((&(*p)));
1225 				T45_ = !((T46_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11)));
1226 				if (!(T45_)) goto LA47_;
1227 				T48_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1228 				T48_ = kind__pureZparsejson_185((&(*p)));
1229 				T45_ = !((T48_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 1)));
1230 				LA47_: ;
1231 				if (!T45_) goto LA44;
1232 				T49_ = NIM_NIL;
1233 				T49_ = elemType__types_263(t);
1234 				T50_ = NIM_NIL;
1235 				T50_ = loadAny__vmmarshal_206(p, T49_, tab, cache, conf, idgen);
1236 				add__ast_4797(result, T50_);
1237 			} LA44: ;
1238 		}
1239 		{
1240 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T53_;
1241 			T53_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1242 			T53_ = kind__pureZparsejson_185((&(*p)));
1243 			if (!(T53_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11))) goto LA54_;
1244 			next__pureZparsejson_456(p);
1245 		}
1246 		goto LA51_;
1247 		LA54_: ;
1248 		{
1249 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_8));
1250 		}
1251 		LA51_: ;
1252 	}
1253 	break;
1254 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
1255 	{
1256 		tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T58_;
1257 		T58_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1258 		T58_ = kind__pureZparsejson_185((&(*p)));
1259 		switch (T58_) {
1260 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 7):
1261 		{
1262 			result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
1263 			next__pureZparsejson_456(p);
1264 		}
1265 		break;
1266 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 10):
1267 		{
1268 			next__pureZparsejson_456(p);
1269 			result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41));
1270 			{
1271 				while (1) {
1272 					NIM_BOOL T63_;
1273 					tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T64_;
1274 					tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T66_;
1275 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T67_;
1276 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T68_;
1277 					T63_ = (NIM_BOOL)0;
1278 					T64_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1279 					T64_ = kind__pureZparsejson_185((&(*p)));
1280 					T63_ = !((T64_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11)));
1281 					if (!(T63_)) goto LA65_;
1282 					T66_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1283 					T66_ = kind__pureZparsejson_185((&(*p)));
1284 					T63_ = !((T66_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 1)));
1285 					LA65_: ;
1286 					if (!T63_) goto LA62;
1287 					T67_ = NIM_NIL;
1288 					T67_ = elemType__types_263(t);
1289 					T68_ = NIM_NIL;
1290 					T68_ = loadAny__vmmarshal_206(p, T67_, tab, cache, conf, idgen);
1291 					add__ast_4797(result, T68_);
1292 				} LA62: ;
1293 			}
1294 			{
1295 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T71_;
1296 				T71_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1297 				T71_ = kind__pureZparsejson_185((&(*p)));
1298 				if (!(T71_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11))) goto LA72_;
1299 				next__pureZparsejson_456(p);
1300 			}
1301 			goto LA69_;
1302 			LA72_: ;
1303 			{
1304 				raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) NIM_NIL));
1305 			}
1306 			LA69_: ;
1307 		}
1308 		break;
1309 		default:
1310 		{
1311 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_9));
1312 		}
1313 		break;
1314 		}
1315 	}
1316 	break;
1317 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
1318 	{
1319 		NI i_3;
1320 		{
1321 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T79_;
1322 			T79_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1323 			T79_ = kind__pureZparsejson_185((&(*p)));
1324 			if (!!((T79_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 8)))) goto LA80_;
1325 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_10));
1326 		}
1327 		LA80_: ;
1328 		next__pureZparsejson_456(p);
1329 		result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160));
1330 		i_3 = ((NI) 0);
1331 		{
1332 			while (1) {
1333 				NIM_BOOL T84_;
1334 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T85_;
1335 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T87_;
1336 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T100_;
1337 				T84_ = (NIM_BOOL)0;
1338 				T85_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1339 				T85_ = kind__pureZparsejson_185((&(*p)));
1340 				T84_ = !((T85_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 9)));
1341 				if (!(T84_)) goto LA86_;
1342 				T87_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1343 				T87_ = kind__pureZparsejson_185((&(*p)));
1344 				T84_ = !((T87_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 1)));
1345 				LA86_: ;
1346 				if (!T84_) goto LA83;
1347 				{
1348 					tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T90_;
1349 					T90_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1350 					T90_ = kind__pureZparsejson_185((&(*p)));
1351 					if (!!((T90_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 2)))) goto LA91_;
1352 					raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_11));
1353 				}
1354 				LA91_: ;
1355 				next__pureZparsejson_456(p);
1356 				{
1357 					NI T95_;
1358 					NimStringDesc* T98_;
1359 					NimStringDesc* T99_;
1360 					T95_ = (NI)0;
1361 					T95_ = len__ast_4002(t);
1362 					if (!(T95_ <= i_3)) goto LA96_;
1363 					T98_ = NIM_NIL;
1364 					T99_ = NIM_NIL;
1365 					T99_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
1366 					T98_ = rawNewString((T99_ ? T99_->Sup.len : 0) + 30);
1367 appendString(T98_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_12));
1368 appendString(T98_, T99_);
1369 					raiseParseErr__pureZparsejson_580((&(*p)), T98_);
1370 				}
1371 				LA96_: ;
1372 				T100_ = NIM_NIL;
1373 				T100_ = loadAny__vmmarshal_206(p, (*t).sons->data[i_3], tab, cache, conf, idgen);
1374 				add__ast_4797(result, T100_);
1375 				i_3 += ((NI) 1);
1376 			} LA83: ;
1377 		}
1378 		{
1379 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T103_;
1380 			T103_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1381 			T103_ = kind__pureZparsejson_185((&(*p)));
1382 			if (!(T103_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 9))) goto LA104_;
1383 			next__pureZparsejson_456(p);
1384 		}
1385 		goto LA101_;
1386 		LA104_: ;
1387 		{
1388 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_13));
1389 		}
1390 		LA101_: ;
1391 	}
1392 	break;
1393 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
1394 	{
1395 		{
1396 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T110_;
1397 			T110_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1398 			T110_ = kind__pureZparsejson_185((&(*p)));
1399 			if (!!((T110_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 8)))) goto LA111_;
1400 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_10));
1401 		}
1402 		LA111_: ;
1403 		next__pureZparsejson_456(p);
1404 		result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38));
1405 		if ((*result)._kind_6.sons) { nimGCunrefRC1((*result)._kind_6.sons); (*result)._kind_6.sons = NIM_NIL; }
1406 		(*result)._kind_6.sons = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), 1);
1407 		asgnRef((void**) (&(*result)._kind_6.sons->data[0]), newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)));
1408 		{
1409 			while (1) {
1410 				NIM_BOOL T115_;
1411 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T116_;
1412 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T118_;
1413 				tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
1414 				NimStringDesc* T124_;
1415 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
1416 				NI pos;
1417 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fieldNode;
1418 				tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T136_;
1419 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T137_;
1420 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T138_;
1421 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T139_;
1422 				T115_ = (NIM_BOOL)0;
1423 				T116_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1424 				T116_ = kind__pureZparsejson_185((&(*p)));
1425 				T115_ = !((T116_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 9)));
1426 				if (!(T115_)) goto LA117_;
1427 				T118_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1428 				T118_ = kind__pureZparsejson_185((&(*p)));
1429 				T115_ = !((T118_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 1)));
1430 				LA117_: ;
1431 				if (!T115_) goto LA114;
1432 				{
1433 					tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T121_;
1434 					T121_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1435 					T121_ = kind__pureZparsejson_185((&(*p)));
1436 					if (!!((T121_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 2)))) goto LA122_;
1437 					raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_11));
1438 				}
1439 				LA122_: ;
1440 				T124_ = NIM_NIL;
1441 				T124_ = str__pureZparsejson_153((&(*p)));
1442 				ident = getIdent__idents_143(cache, T124_);
1443 				field = lookupInRecord__astalgo_84((*t).n, ident);
1444 				{
1445 					NimStringDesc* T129_;
1446 					NimStringDesc* T130_;
1447 					if (!(field == 0)) goto LA127_;
1448 					T129_ = NIM_NIL;
1449 					T130_ = NIM_NIL;
1450 					T130_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
1451 					T129_ = rawNewString((T130_ ? T130_->Sup.len : 0) + 33);
1452 appendString(T129_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_14));
1453 appendString(T129_, T130_);
1454 					raiseParseErr__pureZparsejson_580((&(*p)), T129_);
1455 				}
1456 				LA127_: ;
1457 				next__pureZparsejson_456(p);
1458 				pos = (NI)((*field).position + ((NI) 1));
1459 				{
1460 					NI T133_;
1461 					T133_ = (NI)0;
1462 					T133_ = len__ast_3198(result);
1463 					if (!(T133_ <= pos)) goto LA134_;
1464 					asgnRef((void**) (&(*result)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*result)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((NI)(pos + ((NI) 1))))));
1465 				}
1466 				LA134_: ;
1467 				fieldNode = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34));
1468 				T136_ = nextSymId__ast_3132(idgen);
1469 				T137_ = NIM_NIL;
1470 				T137_ = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19), ident, T136_, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), unknownLineInfo__lineinfos_280, 0);
1471 				T138_ = NIM_NIL;
1472 				T138_ = newSymNode__ast_3716(T137_);
1473 				add__ast_4797(fieldNode, T138_);
1474 				T139_ = NIM_NIL;
1475 				T139_ = loadAny__vmmarshal_206(p, (*field).typ, tab, cache, conf, idgen);
1476 				add__ast_4797(fieldNode, T139_);
1477 				asgnRef((void**) (&(*result)._kind_6.sons->data[pos]), fieldNode);
1478 			} LA114: ;
1479 		}
1480 		{
1481 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T142_;
1482 			T142_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1483 			T142_ = kind__pureZparsejson_185((&(*p)));
1484 			if (!(T142_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 9))) goto LA143_;
1485 			next__pureZparsejson_456(p);
1486 		}
1487 		goto LA140_;
1488 		LA143_: ;
1489 		{
1490 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_13));
1491 		}
1492 		LA140_: ;
1493 	}
1494 	break;
1495 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
1496 	{
1497 		{
1498 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T149_;
1499 			T149_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1500 			T149_ = kind__pureZparsejson_185((&(*p)));
1501 			if (!!((T149_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 10)))) goto LA150_;
1502 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_15));
1503 		}
1504 		LA150_: ;
1505 		next__pureZparsejson_456(p);
1506 		result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39));
1507 		{
1508 			while (1) {
1509 				NIM_BOOL T154_;
1510 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T155_;
1511 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T157_;
1512 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T158_;
1513 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T159_;
1514 				T154_ = (NIM_BOOL)0;
1515 				T155_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1516 				T155_ = kind__pureZparsejson_185((&(*p)));
1517 				T154_ = !((T155_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11)));
1518 				if (!(T154_)) goto LA156_;
1519 				T157_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1520 				T157_ = kind__pureZparsejson_185((&(*p)));
1521 				T154_ = !((T157_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 1)));
1522 				LA156_: ;
1523 				if (!T154_) goto LA153;
1524 				T158_ = NIM_NIL;
1525 				T158_ = lastSon__ast_3743(t);
1526 				T159_ = NIM_NIL;
1527 				T159_ = loadAny__vmmarshal_206(p, T158_, tab, cache, conf, idgen);
1528 				add__ast_4797(result, T159_);
1529 			} LA153: ;
1530 		}
1531 		{
1532 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T162_;
1533 			T162_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1534 			T162_ = kind__pureZparsejson_185((&(*p)));
1535 			if (!(T162_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11))) goto LA163_;
1536 			next__pureZparsejson_456(p);
1537 		}
1538 		goto LA160_;
1539 		LA163_: ;
1540 		{
1541 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_8));
1542 		}
1543 		LA160_: ;
1544 	}
1545 	break;
1546 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
1547 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
1548 	{
1549 		tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T167_;
1550 		T167_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1551 		T167_ = kind__pureZparsejson_185((&(*p)));
1552 		switch (T167_) {
1553 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 7):
1554 		{
1555 			result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
1556 			next__pureZparsejson_456(p);
1557 		}
1558 		break;
1559 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 3):
1560 		{
1561 			NI64 T170_;
1562 			T170_ = (NI64)0;
1563 			T170_ = getInt__pureZparsejson_164((&(*p)));
1564 			result = getOrDefault__vmmarshal_446((*tab), T170_);
1565 			{
1566 				NimStringDesc* T175_;
1567 				NI64 T176_;
1568 				NimStringDesc* T177_;
1569 				if (!(result == 0)) goto LA173_;
1570 				T175_ = NIM_NIL;
1571 				T176_ = (NI64)0;
1572 				T176_ = getInt__pureZparsejson_164((&(*p)));
1573 				T177_ = NIM_NIL;
1574 				T177_ = dollar___systemZdollars_6(T176_);
1575 				T175_ = rawNewString((T177_ ? T177_->Sup.len : 0) + 32);
1576 appendString(T175_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_16));
1577 appendString(T175_, T177_);
1578 				raiseParseErr__pureZparsejson_580((&(*p)), T175_);
1579 			}
1580 			LA173_: ;
1581 			next__pureZparsejson_456(p);
1582 		}
1583 		break;
1584 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 10):
1585 		{
1586 			next__pureZparsejson_456(p);
1587 			{
1588 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T181_;
1589 				NI64 idx;
1590 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T184_;
1591 				T181_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1592 				T181_ = kind__pureZparsejson_185((&(*p)));
1593 				if (!(T181_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 3))) goto LA182_;
1594 				idx = getInt__pureZparsejson_164((&(*p)));
1595 				next__pureZparsejson_456(p);
1596 				T184_ = NIM_NIL;
1597 				T184_ = lastSon__ast_3743(t);
1598 				result = loadAny__vmmarshal_206(p, T184_, tab, cache, conf, idgen);
1599 				X5BX5Deq___vmmarshal_802(tab, idx, result);
1600 			}
1601 			goto LA179_;
1602 			LA182_: ;
1603 			{
1604 				raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_17));
1605 			}
1606 			LA179_: ;
1607 			{
1608 				tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T188_;
1609 				T188_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1610 				T188_ = kind__pureZparsejson_185((&(*p)));
1611 				if (!(T188_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 11))) goto LA189_;
1612 				next__pureZparsejson_456(p);
1613 			}
1614 			goto LA186_;
1615 			LA189_: ;
1616 			{
1617 				raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_18));
1618 			}
1619 			LA186_: ;
1620 		}
1621 		break;
1622 		default:
1623 		{
1624 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_19));
1625 		}
1626 		break;
1627 		}
1628 	}
1629 	break;
1630 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
1631 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
1632 	{
1633 		tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T194_;
1634 		T194_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1635 		T194_ = kind__pureZparsejson_185((&(*p)));
1636 		switch (T194_) {
1637 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 7):
1638 		{
1639 			result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
1640 			next__pureZparsejson_456(p);
1641 		}
1642 		break;
1643 		case ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 2):
1644 		{
1645 			NimStringDesc* T197_;
1646 			T197_ = NIM_NIL;
1647 			T197_ = str__pureZparsejson_153((&(*p)));
1648 			result = newStrNode__ast_3813(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), T197_);
1649 			next__pureZparsejson_456(p);
1650 		}
1651 		break;
1652 		default:
1653 		{
1654 			raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_20));
1655 		}
1656 		break;
1657 		}
1658 	}
1659 	break;
1660 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
1661 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
1662 	{
1663 		{
1664 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T202_;
1665 			NI64 T205_;
1666 			T202_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1667 			T202_ = kind__pureZparsejson_185((&(*p)));
1668 			if (!(T202_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 3))) goto LA203_;
1669 			T205_ = (NI64)0;
1670 			T205_ = getInt__pureZparsejson_164((&(*p)));
1671 			result = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), T205_);
1672 			next__pureZparsejson_456(p);
1673 			goto BeforeRet_;
1674 		}
1675 		LA203_: ;
1676 		raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_21));
1677 	}
1678 	break;
1679 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
1680 	{
1681 		{
1682 			tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA T209_;
1683 			NF T212_;
1684 			T209_ = (tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA)0;
1685 			T209_ = kind__pureZparsejson_185((&(*p)));
1686 			if (!(T209_ == ((tyEnum_JsonEventKind__0zjE9c54eTrq224F5wMcaFA) 4))) goto LA210_;
1687 			T212_ = (NF)0;
1688 			T212_ = getFloat__pureZparsejson_175((&(*p)));
1689 			result = newFloatNode__ast_3809(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16), T212_);
1690 			next__pureZparsejson_456(p);
1691 			goto BeforeRet_;
1692 		}
1693 		LA210_: ;
1694 		raiseParseErr__pureZparsejson_580((&(*p)), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_22));
1695 	}
1696 	break;
1697 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
1698 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
1699 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
1700 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
1701 	{
1702 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T214_;
1703 		T214_ = NIM_NIL;
1704 		T214_ = lastSon__ast_3743(t);
1705 		result = loadAny__vmmarshal_206(p, T214_, tab, cache, conf, idgen);
1706 	}
1707 	break;
1708 	default:
1709 	{
1710 		NimStringDesc* T216_;
1711 		NimStringDesc* T217_;
1712 		T216_ = NIM_NIL;
1713 		T217_ = NIM_NIL;
1714 		T217_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
1715 		T216_ = rawNewString((T217_ ? T217_->Sup.len : 0) + 31);
1716 appendString(T216_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_23));
1717 appendString(T216_, T217_);
1718 		internalErrorImpl__msgs_1431(conf, unknownLineInfo__lineinfos_280, T216_, TM__eBu3XSE68i5yQmrMcuBiww_24);
1719 	}
1720 	break;
1721 	}
1722 	}BeforeRet_: ;
1723 	return result;
1724 }
N_INLINE(void,close__pureZparsejson_151)1725 static N_INLINE(void, close__pureZparsejson_151)(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ* my) {
1726 	close__pureZlexbase_14(&my->Sup);
1727 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,loadAny__vmmarshal_1853)1728 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadAny__vmmarshal_1853)(NimStringDesc* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
1729 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1730 	tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg tab;
1731 	tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ p;
1732 	tyObject_StringStreamObj__Olau5FPRehZBBEB77FHnfw* T1_;
1733 	result = NIM_NIL;
1734 	nimZeroMem((void*)(&tab), sizeof(tyObject_Table__7O9bs4LORhqcR0JGh7d1MDg));
1735 	initTable__vmmarshal_1860(((NI) 32), (&tab));
1736 	nimZeroMem((void*)(&p), sizeof(tyObject_JsonParser__KWIQnzXEOUqdWsnCUL9atyQ));
1737 	p.Sup.Sup.m_type = (&NTIjsonparser__KWIQnzXEOUqdWsnCUL9atyQ_);
1738 	T1_ = NIM_NIL;
1739 	T1_ = newStringStream__pureZstreams_676(s);
1740 	open__pureZparsejson_97((&p), &T1_->Sup, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_3), NIM_FALSE);
1741 	next__pureZparsejson_456((&p));
1742 	result = loadAny__vmmarshal_206((&p), t, (&tab), cache, conf, idgen);
1743 	close__pureZparsejson_151((&p));
1744 	return result;
1745 }
N_INLINE(void,initIntSet__pureZcollectionsZintsets_238)1746 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
1747 	initPackedSet__pureZcollectionsZintsets_16(Result);
1748 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getField__vmmarshal_15)1749 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getField__vmmarshal_15)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI position) {
1750 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
1751 {	result = NIM_NIL;
1752 	switch ((*n).kind) {
1753 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
1754 	{
1755 		{
1756 			NI i;
1757 			NI colontmp_;
1758 			NI i_2;
1759 			i = (NI)0;
1760 			colontmp_ = (NI)0;
1761 			colontmp_ = len__ast_3198(n);
1762 			i_2 = ((NI) 0);
1763 			{
1764 				while (1) {
1765 					if (!(i_2 < colontmp_)) goto LA4;
1766 					i = i_2;
1767 					result = getField__vmmarshal_15((*n)._kind_6.sons->data[i], position);
1768 					{
1769 						if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA7_;
1770 						goto BeforeRet_;
1771 					}
1772 					LA7_: ;
1773 					i_2 += ((NI) 1);
1774 				} LA4: ;
1775 			}
1776 		}
1777 	}
1778 	break;
1779 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
1780 	{
1781 		result = getField__vmmarshal_15((*n)._kind_6.sons->data[((NI) 0)], position);
1782 		{
1783 			if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA12_;
1784 			goto BeforeRet_;
1785 		}
1786 		LA12_: ;
1787 		{
1788 			NI i_3;
1789 			NI colontmp__2;
1790 			NI i_4;
1791 			i_3 = (NI)0;
1792 			colontmp__2 = (NI)0;
1793 			colontmp__2 = len__ast_3198(n);
1794 			i_4 = ((NI) 1);
1795 			{
1796 				while (1) {
1797 					if (!(i_4 < colontmp__2)) goto LA16;
1798 					i_3 = i_4;
1799 					switch ((*(*n)._kind_6.sons->data[i_3]).kind) {
1800 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
1801 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
1802 					{
1803 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T18_;
1804 						T18_ = NIM_NIL;
1805 						T18_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
1806 						result = getField__vmmarshal_15(T18_, position);
1807 						{
1808 							if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA21_;
1809 							goto BeforeRet_;
1810 						}
1811 						LA21_: ;
1812 					}
1813 					break;
1814 					default:
1815 					{
1816 					}
1817 					break;
1818 					}
1819 					i_4 += ((NI) 1);
1820 				} LA16: ;
1821 			}
1822 		}
1823 	}
1824 	break;
1825 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1826 	{
1827 		{
1828 			if (!((*(*n)._kind_4.sym).position == position)) goto LA27_;
1829 			result = (*n)._kind_4.sym;
1830 		}
1831 		LA27_: ;
1832 	}
1833 	break;
1834 	default:
1835 	{
1836 	}
1837 	break;
1838 	}
1839 	}BeforeRet_: ;
1840 	return result;
1841 }
N_NIMCALL(void,storeObj__vmmarshal_60)1842 N_LIB_PRIVATE N_NIMCALL(void, storeObj__vmmarshal_60)(NimStringDesc** s, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* stored, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1843 	NI start;
1844 	start = ((NI) 1);
1845 	{
1846 		NI i;
1847 		NI colontmp_;
1848 		NI i_2;
1849 		i = (NI)0;
1850 		colontmp_ = (NI)0;
1851 		colontmp_ = len__ast_3198(x);
1852 		i_2 = start;
1853 		{
1854 			while (1) {
1855 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
1856 				if (!(i_2 < colontmp_)) goto LA3;
1857 				i = i_2;
1858 				{
1859 					if (!(start < i)) goto LA6_;
1860 					unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
1861 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
1862 				}
1863 				LA6_: ;
1864 				it = (*x)._kind_6.sons->data[i];
1865 				{
1866 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA10_;
1867 					{
1868 						tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
1869 						NimStringDesc* T16_;
1870 						if (!((*(*it)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA14_;
1871 						field = (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
1872 						T16_ = NIM_NIL;
1873 						T16_ = escapeJson__pureZjson_4355((*(*field).name).s);
1874 						unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T16_ ? T16_->Sup.len : 0) + 0));
1875 appendString((*s), T16_);
1876 						unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
1877 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_34));
1878 						storeAny__vmmarshal_54(s, (*field).typ, (*it)._kind_6.sons->data[((NI) 1)], stored, conf);
1879 					}
1880 					LA14_: ;
1881 				}
1882 				goto LA8_;
1883 				LA10_: ;
1884 				{
1885 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field_2;
1886 					NimStringDesc* T20_;
1887 					if (!!(((*typ).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA18_;
1888 					field_2 = getField__vmmarshal_15((*typ).n, i);
1889 					T20_ = NIM_NIL;
1890 					T20_ = escapeJson__pureZjson_4355((*(*field_2).name).s);
1891 					unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T20_ ? T20_->Sup.len : 0) + 0));
1892 appendString((*s), T20_);
1893 					unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
1894 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_34));
1895 					storeAny__vmmarshal_54(s, (*field_2).typ, it, stored, conf);
1896 				}
1897 				goto LA8_;
1898 				LA18_: ;
1899 				LA8_: ;
1900 				i_2 += ((NI) 1);
1901 			} LA3: ;
1902 		}
1903 	}
1904 }
N_INLINE(NI,ptrToInt__vmmarshal_12)1905 static N_INLINE(NI, ptrToInt__vmmarshal_12)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x) {
1906 	NI result;
1907 	result = (NI)0;
1908 	result = ((NI) (x));
1909 	return result;
1910 }
N_NIMCALL(void,storeAny__vmmarshal_54)1911 N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_54)(NimStringDesc** s, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* stored, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1912 	switch ((*t).kind) {
1913 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 0):
1914 	{
1915 	}
1916 	break;
1917 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
1918 	{
1919 		NimStringDesc* T3_;
1920 		T3_ = NIM_NIL;
1921 		T3_ = nimBoolToStr(!(((*a)._kind_1.intVal == IL64(0))));
1922 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T3_ ? T3_->Sup.len : 0) + 0));
1923 appendString((*s), T3_);
1924 	}
1925 	break;
1926 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
1927 	{
1928 		NIM_CHAR ch;
1929 		ch = ((NIM_CHAR) ((*a)._kind_1.intVal));
1930 		{
1931 			NimStringDesc* T9_;
1932 			NimStringDesc* T10_;
1933 			if (!((NU8)(ch) < (NU8)(128))) goto LA7_;
1934 			T9_ = NIM_NIL;
1935 			T9_ = nimCharToStr(ch);
1936 			T10_ = NIM_NIL;
1937 			T10_ = escapeJson__pureZjson_4355(T9_);
1938 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T10_ ? T10_->Sup.len : 0) + 0));
1939 appendString((*s), T10_);
1940 		}
1941 		goto LA5_;
1942 		LA7_: ;
1943 		{
1944 			NimStringDesc* T12_;
1945 			T12_ = NIM_NIL;
1946 			T12_ = dollar___systemZdollars_3(((NI) (((NU8)(ch)))));
1947 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T12_ ? T12_->Sup.len : 0) + 0));
1948 appendString((*s), T12_);
1949 		}
1950 		LA5_: ;
1951 	}
1952 	break;
1953 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
1954 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
1955 	{
1956 		{
1957 			NIM_BOOL T16_;
1958 			T16_ = (NIM_BOOL)0;
1959 			T16_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24));
1960 			if (!(T16_)) goto LA17_;
1961 			T16_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
1962 			LA17_: ;
1963 			if (!T16_) goto LA18_;
1964 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 4));
1965 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_26));
1966 		}
1967 		goto LA14_;
1968 		LA18_: ;
1969 		{
1970 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
1971 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_27));
1972 			{
1973 				NI i;
1974 				NI colontmp_;
1975 				NI i_2;
1976 				i = (NI)0;
1977 				colontmp_ = (NI)0;
1978 				colontmp_ = len__ast_3198(a);
1979 				i_2 = ((NI) 0);
1980 				{
1981 					while (1) {
1982 						tyObject_TType__facALICuu8zUj0hjvbTLFg* T28_;
1983 						if (!(i_2 < colontmp_)) goto LA23;
1984 						i = i_2;
1985 						{
1986 							if (!(((NI) 0) < i)) goto LA26_;
1987 							unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
1988 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
1989 						}
1990 						LA26_: ;
1991 						T28_ = NIM_NIL;
1992 						T28_ = elemType__types_263(t);
1993 						storeAny__vmmarshal_54(s, T28_, (*a)._kind_6.sons->data[i], stored, conf);
1994 						i_2 += ((NI) 1);
1995 					} LA23: ;
1996 				}
1997 			}
1998 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
1999 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_29));
2000 		}
2001 		LA14_: ;
2002 	}
2003 	break;
2004 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
2005 	{
2006 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2007 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_30));
2008 		{
2009 			NI i_3;
2010 			NI colontmp__2;
2011 			NI i_4;
2012 			i_3 = (NI)0;
2013 			colontmp__2 = (NI)0;
2014 			colontmp__2 = len__ast_4002(t);
2015 			i_4 = ((NI) 0);
2016 			{
2017 				while (1) {
2018 					NimStringDesc* T37_;
2019 					NimStringDesc* T38_;
2020 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T39_;
2021 					if (!(i_4 < colontmp__2)) goto LA32;
2022 					i_3 = i_4;
2023 					{
2024 						if (!(((NI) 0) < i_3)) goto LA35_;
2025 						unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
2026 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
2027 					}
2028 					LA35_: ;
2029 					T37_ = NIM_NIL;
2030 					T38_ = NIM_NIL;
2031 					T38_ = dollar___systemZdollars_3(i_3);
2032 					T37_ = rawNewString((T38_ ? T38_->Sup.len : 0) + 6);
2033 appendString(T37_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_31));
2034 appendString(T37_, T38_);
2035 					unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T37_ ? T37_->Sup.len : 0) + 0));
2036 appendString((*s), T37_);
2037 					unsureAsgnRef((void**) (&(*s)), resizeString((*s), 3));
2038 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_32));
2039 					T39_ = NIM_NIL;
2040 					T39_ = skipColon__ast_4948((*a)._kind_6.sons->data[i_3]);
2041 					storeAny__vmmarshal_54(s, (*t).sons->data[i_3], T39_, stored, conf);
2042 					i_4 += ((NI) 1);
2043 				} LA32: ;
2044 			}
2045 		}
2046 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2047 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_33));
2048 	}
2049 	break;
2050 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
2051 	{
2052 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2053 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_30));
2054 		storeObj__vmmarshal_60(s, t, a, stored, conf);
2055 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2056 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_33));
2057 	}
2058 	break;
2059 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
2060 	{
2061 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2062 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_27));
2063 		{
2064 			NI i_5;
2065 			NI colontmp__3;
2066 			NI i_6;
2067 			i_5 = (NI)0;
2068 			colontmp__3 = (NI)0;
2069 			colontmp__3 = len__ast_3198(a);
2070 			i_6 = ((NI) 0);
2071 			{
2072 				while (1) {
2073 					if (!(i_6 < colontmp__3)) goto LA44;
2074 					i_5 = i_6;
2075 					{
2076 						if (!(((NI) 0) < i_5)) goto LA47_;
2077 						unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
2078 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
2079 					}
2080 					LA47_: ;
2081 					{
2082 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
2083 						tyObject_TType__facALICuu8zUj0hjvbTLFg* T53_;
2084 						if (!((*(*a)._kind_6.sons->data[i_5]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA51_;
2085 						x = copyNode__ast_4336((*(*a)._kind_6.sons->data[i_5])._kind_6.sons->data[((NI) 0)]);
2086 						T53_ = NIM_NIL;
2087 						T53_ = lastSon__ast_3743(t);
2088 						storeAny__vmmarshal_54(s, T53_, x, stored, conf);
2089 						(*x)._kind_1.intVal += ((NI) 1);
2090 						{
2091 							while (1) {
2092 								tyObject_TType__facALICuu8zUj0hjvbTLFg* T56_;
2093 								if (!((*x)._kind_1.intVal <= (*(*(*a)._kind_6.sons->data[i_5])._kind_6.sons->data[((NI) 1)])._kind_1.intVal)) goto LA55;
2094 								unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
2095 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
2096 								T56_ = NIM_NIL;
2097 								T56_ = lastSon__ast_3743(t);
2098 								storeAny__vmmarshal_54(s, T56_, x, stored, conf);
2099 								(*x)._kind_1.intVal += ((NI) 1);
2100 							} LA55: ;
2101 						}
2102 					}
2103 					goto LA49_;
2104 					LA51_: ;
2105 					{
2106 						tyObject_TType__facALICuu8zUj0hjvbTLFg* T58_;
2107 						T58_ = NIM_NIL;
2108 						T58_ = lastSon__ast_3743(t);
2109 						storeAny__vmmarshal_54(s, T58_, (*a)._kind_6.sons->data[i_5], stored, conf);
2110 					}
2111 					LA49_: ;
2112 					i_6 += ((NI) 1);
2113 				} LA44: ;
2114 			}
2115 		}
2116 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2117 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_29));
2118 	}
2119 	break;
2120 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
2121 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
2122 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
2123 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
2124 	{
2125 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T60_;
2126 		T60_ = NIM_NIL;
2127 		T60_ = lastSon__ast_3743(t);
2128 		storeAny__vmmarshal_54(s, T60_, a, stored, conf);
2129 	}
2130 	break;
2131 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
2132 	{
2133 		{
2134 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e;
2135 			e = NIM_NIL;
2136 			{
2137 				NI i_7;
2138 				NI colontmp__4;
2139 				NI i_8;
2140 				i_7 = (NI)0;
2141 				colontmp__4 = (NI)0;
2142 				colontmp__4 = safeLen__ast_3191((*t).n);
2143 				i_8 = ((NI) 0);
2144 				{
2145 					while (1) {
2146 						if (!(i_8 < colontmp__4)) goto LA65;
2147 						i_7 = i_8;
2148 						e = (*(*t).n)._kind_6.sons->data[i_7];
2149 						{
2150 							NimStringDesc* T70_;
2151 							if (!(((NI64) ((*(*e)._kind_4.sym).position)) == (*a)._kind_1.intVal)) goto LA68_;
2152 							T70_ = NIM_NIL;
2153 							T70_ = escapeJson__pureZjson_4355((*(*(*e)._kind_4.sym).name).s);
2154 							unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T70_ ? T70_->Sup.len : 0) + 0));
2155 appendString((*s), T70_);
2156 							goto LA62;
2157 						}
2158 						LA68_: ;
2159 						i_8 += ((NI) 1);
2160 					} LA65: ;
2161 				}
2162 			}
2163 		} LA62: ;
2164 	}
2165 	break;
2166 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
2167 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
2168 	{
2169 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x_2;
2170 		x_2 = a;
2171 		{
2172 			NIM_BOOL T74_;
2173 			T74_ = (NIM_BOOL)0;
2174 			T74_ = (x_2 == 0);
2175 			if (T74_) goto LA75_;
2176 			T74_ = ((*x_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
2177 			LA75_: ;
2178 			if (!T74_) goto LA76_;
2179 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 4));
2180 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_26));
2181 		}
2182 		goto LA72_;
2183 		LA76_: ;
2184 		{
2185 			NI T79_;
2186 			NIM_BOOL T80_;
2187 			NI T83_;
2188 			NimStringDesc* T84_;
2189 			T79_ = (NI)0;
2190 			T79_ = ptrToInt__vmmarshal_12(x_2);
2191 			T80_ = (NIM_BOOL)0;
2192 			T80_ = containsOrIncl__astalgo_402(stored, T79_);
2193 			if (!T80_) goto LA81_;
2194 			T83_ = (NI)0;
2195 			T83_ = ptrToInt__vmmarshal_12(x_2);
2196 			T84_ = NIM_NIL;
2197 			T84_ = dollar___systemZdollars_3(T83_);
2198 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T84_ ? T84_->Sup.len : 0) + 0));
2199 appendString((*s), T84_);
2200 		}
2201 		goto LA72_;
2202 		LA81_: ;
2203 		{
2204 			NI T86_;
2205 			NimStringDesc* T87_;
2206 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T88_;
2207 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2208 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_27));
2209 			T86_ = (NI)0;
2210 			T86_ = ptrToInt__vmmarshal_12(x_2);
2211 			T87_ = NIM_NIL;
2212 			T87_ = dollar___systemZdollars_3(T86_);
2213 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T87_ ? T87_->Sup.len : 0) + 0));
2214 appendString((*s), T87_);
2215 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
2216 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_28));
2217 			T88_ = NIM_NIL;
2218 			T88_ = lastSon__ast_3743(t);
2219 			storeAny__vmmarshal_54(s, T88_, a, stored, conf);
2220 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 1));
2221 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_29));
2222 		}
2223 		LA72_: ;
2224 	}
2225 	break;
2226 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
2227 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
2228 	{
2229 		{
2230 			if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA92_;
2231 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), 4));
2232 appendString((*s), ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_26));
2233 		}
2234 		goto LA90_;
2235 		LA92_: ;
2236 		{
2237 			NimStringDesc* T95_;
2238 			T95_ = NIM_NIL;
2239 			T95_ = escapeJson__pureZjson_4355((*a)._kind_3.strVal);
2240 			unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T95_ ? T95_->Sup.len : 0) + 0));
2241 appendString((*s), T95_);
2242 		}
2243 		LA90_: ;
2244 	}
2245 	break;
2246 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
2247 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
2248 	{
2249 		NimStringDesc* T97_;
2250 		T97_ = NIM_NIL;
2251 		T97_ = dollar___systemZdollars_6((*a)._kind_1.intVal);
2252 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T97_ ? T97_->Sup.len : 0) + 0));
2253 appendString((*s), T97_);
2254 	}
2255 	break;
2256 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
2257 	{
2258 		NimStringDesc* T99_;
2259 		T99_ = NIM_NIL;
2260 		T99_ = dollar___system_3118((*a)._kind_2.floatVal);
2261 		unsureAsgnRef((void**) (&(*s)), resizeString((*s), (T99_ ? T99_->Sup.len : 0) + 0));
2262 appendString((*s), T99_);
2263 	}
2264 	break;
2265 	default:
2266 	{
2267 		NimStringDesc* T101_;
2268 		NimStringDesc* T102_;
2269 		T101_ = NIM_NIL;
2270 		T102_ = NIM_NIL;
2271 		T102_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
2272 		T101_ = rawNewString((T102_ ? T102_->Sup.len : 0) + 31);
2273 appendString(T101_, ((NimStringDesc*) &TM__eBu3XSE68i5yQmrMcuBiww_23));
2274 appendString(T101_, T102_);
2275 		internalErrorImpl__msgs_1431(conf, (*a).info, T101_, TM__eBu3XSE68i5yQmrMcuBiww_35);
2276 	}
2277 	break;
2278 	}
2279 }
N_NIMCALL(void,storeAny__vmmarshal_200)2280 N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_200)(NimStringDesc** s, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2281 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA stored;
2282 	nimZeroMem((void*)(&stored), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2283 	initIntSet__pureZcollectionsZintsets_238((&stored));
2284 	storeAny__vmmarshal_54(s, t, a, (&stored), conf);
2285 }
N_NIMCALL(void,compiler_vmmarshalDatInit000)2286 N_LIB_PRIVATE N_NIMCALL(void, compiler_vmmarshalDatInit000)(void) {
2287 static TNimNode* TM__eBu3XSE68i5yQmrMcuBiww_2_3[3];
2288 static TNimNode TM__eBu3XSE68i5yQmrMcuBiww_0[4];
2289 NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_.size = sizeof(tyTuple__8jHm6IGDGecciKpp2bTNxA);
2290 NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_.align = NIM_ALIGNOF(tyTuple__8jHm6IGDGecciKpp2bTNxA);
2291 NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_.kind = 18;
2292 NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_.base = 0;
2293 TM__eBu3XSE68i5yQmrMcuBiww_2_3[0] = &TM__eBu3XSE68i5yQmrMcuBiww_0[1];
2294 TM__eBu3XSE68i5yQmrMcuBiww_0[1].kind = 1;
2295 TM__eBu3XSE68i5yQmrMcuBiww_0[1].offset = offsetof(tyTuple__8jHm6IGDGecciKpp2bTNxA, Field0);
2296 TM__eBu3XSE68i5yQmrMcuBiww_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
2297 TM__eBu3XSE68i5yQmrMcuBiww_0[1].name = "Field0";
2298 TM__eBu3XSE68i5yQmrMcuBiww_2_3[1] = &TM__eBu3XSE68i5yQmrMcuBiww_0[2];
2299 TM__eBu3XSE68i5yQmrMcuBiww_0[2].kind = 1;
2300 TM__eBu3XSE68i5yQmrMcuBiww_0[2].offset = offsetof(tyTuple__8jHm6IGDGecciKpp2bTNxA, Field1);
2301 TM__eBu3XSE68i5yQmrMcuBiww_0[2].typ = (&NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_);
2302 TM__eBu3XSE68i5yQmrMcuBiww_0[2].name = "Field1";
2303 TM__eBu3XSE68i5yQmrMcuBiww_2_3[2] = &TM__eBu3XSE68i5yQmrMcuBiww_0[3];
2304 TM__eBu3XSE68i5yQmrMcuBiww_0[3].kind = 1;
2305 TM__eBu3XSE68i5yQmrMcuBiww_0[3].offset = offsetof(tyTuple__8jHm6IGDGecciKpp2bTNxA, Field2);
2306 TM__eBu3XSE68i5yQmrMcuBiww_0[3].typ = (&NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_);
2307 TM__eBu3XSE68i5yQmrMcuBiww_0[3].name = "Field2";
2308 TM__eBu3XSE68i5yQmrMcuBiww_0[0].len = 3; TM__eBu3XSE68i5yQmrMcuBiww_0[0].kind = 2; TM__eBu3XSE68i5yQmrMcuBiww_0[0].sons = &TM__eBu3XSE68i5yQmrMcuBiww_2_3[0];
2309 NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_.node = &TM__eBu3XSE68i5yQmrMcuBiww_0[0];
2310 NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_.size = sizeof(tySequence__s12F9c4cKfaapm8VzG9a1flQ*);
2311 NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_.align = NIM_ALIGNOF(tySequence__s12F9c4cKfaapm8VzG9a1flQ*);
2312 NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_.kind = 24;
2313 NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_.base = (&NTIkeyvaluepair__8jHm6IGDGecciKpp2bTNxA_);
2314 NTIkeyvaluepairseq__s12F9c4cKfaapm8VzG9a1flQ_.marker = Marker_tySequence__s12F9c4cKfaapm8VzG9a1flQ;
2315 }
2316 
2317