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