/* Generated by Nim Compiler v2.2.10 */
#define NIM_INTBITS 32

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
typedef struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug;
typedef struct tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ;
typedef struct tySequence__e9ciFfeAg1p88UzCBnAPeVQ tySequence__e9ciFfeAg1p88UzCBnAPeVQ;
typedef struct tySequence__e9ciFfeAg1p88UzCBnAPeVQ_Content tySequence__e9ciFfeAg1p88UzCBnAPeVQ_Content;
typedef struct tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg;
typedef struct tyObject_BaseLexer__ZspOFmN5MjfhmGOKIrGMRg tyObject_BaseLexer__ZspOFmN5MjfhmGOKIrGMRg;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w;
typedef struct tySequence__GyTgETkn69b26Etj2zBgjMw tySequence__GyTgETkn69b26Etj2zBgjMw;
typedef struct tySequence__GyTgETkn69b26Etj2zBgjMw_Content tySequence__GyTgETkn69b26Etj2zBgjMw_Content;
typedef struct tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ;
typedef struct tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg tySequence__d8ZV4IMgHt9biik9cS9a0hrmg;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA;
typedef struct tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA;
typedef struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA tySequence__ZeWVlH6DqG79b1pTDhrrUYA;
typedef struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content;
typedef struct tyTuple__3QzLy4wl9aTGQ4yaz9bbETxg tyTuple__3QzLy4wl9aTGQ4yaz9bbETxg;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tySequence__e9ciFfeAg1p88UzCBnAPeVQ {
  NI len; tySequence__e9ciFfeAg1p88UzCBnAPeVQ_Content* p;
};
struct tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ {
	tySequence__e9ciFfeAg1p88UzCBnAPeVQ data;
	NI counter;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {
	TNimTypeV2* m_type;
};
typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
struct tyObject_BaseLexer__ZspOFmN5MjfhmGOKIrGMRg {
	RootObj Sup;
	NI bufpos;
	NimStringV2 buf;
	tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* input;
	NI lineNumber;
	NI sentinel;
	NI lineStart;
	NI offsetBase;
	tySet_tyChar__nmiMWKVIe46vacnhAFrQvw refillChars;
};
typedef NU8 tyEnum_TokKind__fY817iOTRu9c9btMadTqhgkw;
typedef NU8 tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA;
typedef NU8 tyEnum_JsonError__xIIO5nJTV4O1P02ldc1GWg;
struct tySequence__GyTgETkn69b26Etj2zBgjMw {
  NI len; tySequence__GyTgETkn69b26Etj2zBgjMw_Content* p;
};
struct tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg {
	tyObject_BaseLexer__ZspOFmN5MjfhmGOKIrGMRg Sup;
	NimStringV2 a;
	tyEnum_TokKind__fY817iOTRu9c9btMadTqhgkw tok;
	tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA kind;
	tyEnum_JsonError__xIIO5nJTV4O1P02ldc1GWg err;
	tySequence__GyTgETkn69b26Etj2zBgjMw state;
	NimStringV2 filename;
	NIM_BOOL rawStringLiterals;
};
typedef N_NIMCALL_PTR(void, tyProc__DXGqmuActUm0S3MKNsreGw) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__Fono1uAye9aDS77o2sqPoIg) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0);
typedef N_NIMCALL_PTR(void, tyProc__zdMZVwOrDkH4aQdAWbmhfA) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0, NI pos_p1);
typedef N_NIMCALL_PTR(NI, tyProc__hJ4RdVQy2jQRw0zV2TsXng) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0);
typedef N_NIMCALL_PTR(NI, tyProc__e59bWp0wEul4j9a5QwZc9bB9cQ) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0, NimStringV2* buffer_p1, tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA slice_p2);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__7tjyszhbbb180aOkghqCyw) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0, NimStringV2* line_p1);
typedef N_NIMCALL_PTR(NI, tyProc__a9cZWdPu9bXGVJA7dJZ9aX8bQ) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0, void* buffer_p1, NI bufLen_p2);
typedef N_NIMCALL_PTR(void, tyProc__BwfRbL9cjs7RFNMDfL4200g) (tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* s_p0, void* buffer_p1, NI bufLen_p2);
struct tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w {
	RootObj Sup;
	tyProc__DXGqmuActUm0S3MKNsreGw closeImpl;
	tyProc__Fono1uAye9aDS77o2sqPoIg atEndImpl;
	tyProc__zdMZVwOrDkH4aQdAWbmhfA setPositionImpl;
	tyProc__hJ4RdVQy2jQRw0zV2TsXng getPositionImpl;
	tyProc__e59bWp0wEul4j9a5QwZc9bB9cQ readDataStrImpl;
	tyProc__7tjyszhbbb180aOkghqCyw readLineImpl;
	tyProc__a9cZWdPu9bXGVJA7dJZ9aX8bQ readDataImpl;
	tyProc__a9cZWdPu9bXGVJA7dJZ9aX8bQ peekDataImpl;
	tyProc__BwfRbL9cjs7RFNMDfL4200g writeDataImpl;
	tyProc__DXGqmuActUm0S3MKNsreGw flushImpl;
};
struct tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ {
	tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w Sup;
	NimStringV2 data;
	NI pos;
};
struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typField;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw flags;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident;
} _kind_5;
	struct {
	tySequence__9ahcSjIErJohSBBFLwuF56Q sons;
} _kind_6;
};
};
struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA {
	NI32 module;
	NI32 item;
};
typedef NU8 tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg;
typedef NU8 tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ;
typedef NU64 tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg {
  NI len; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content* p;
};
typedef NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw {
	tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ k;
	tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg storage;
	tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* lode;
	NimStringV2 snippet;
};
struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind;
	tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ callConv;
	tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A flags;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg sons;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
	NI64 size;
	NI16 align;
	NI16 paddingAtEnd;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typeInst;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA uniqueId;
};
typedef NU8 tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q;
typedef NU16 tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg;
typedef NU64 tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
union{
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* gcUnsafetyReason;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* transformedBody;
} _kind_1;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* guard;
	NI bitsize;
	NI alignment;
} _kind_2;
};
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ast;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig* annex;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constraint;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* instantiatedFrom;
};
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
typedef NU8 tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA {
  NI len; tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content* p;
};
typedef NI tyArray__k7D0lwfLmYccbQxUd49bbcQ[34];
struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA {
	NI elems;
	NI counter;
	NI max;
	tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* head;
	tySequence__ZeWVlH6DqG79b1pTDhrrUYA data;
	tyArray__k7D0lwfLmYccbQxUd49bbcQ a;
};
struct tyTuple__3QzLy4wl9aTGQ4yaz9bbETxg {
	NI Field0;
	NI64 Field1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field2;
};
struct tySequence__e9ciFfeAg1p88UzCBnAPeVQ_Content { NI cap; tyTuple__3QzLy4wl9aTGQ4yaz9bbETxg data[SEQ_DECL_SIZE]; };
typedef NU8 tyEnum_ParserState__0xxCjL29aD8tzUEg49aPYfOw;
struct tySequence__GyTgETkn69b26Etj2zBgjMw_Content { NI cap; tyEnum_ParserState__0xxCjL29aD8tzUEg49aPYfOw data[SEQ_DECL_SIZE]; };
struct tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA {
	NI a;
	NI b;
};
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* data[SEQ_DECL_SIZE]; };
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content { NI cap; tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* data[SEQ_DECL_SIZE]; };
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content { NI cap; tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* data[SEQ_DECL_SIZE]; };
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ, initTable__vmmarshal_u1919)(NI initialSize_p0);
N_LIB_PRIVATE N_NIMCALL(void, open__pureZparsejson_u80)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0, tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w* input_p1, NimStringV2 filename_p2, NIM_BOOL rawStringLiterals_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ*, newStringStream__pureZstreams_u829)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, eqdup___system_u2697)(NimStringV2 src_p0);
N_LIB_PRIVATE N_NIMCALL(void, next__pureZparsejson_u664)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, loadAny__vmmarshal_u160)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* p_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ* tab_p2, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p5);
static N_INLINE(tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA, kind__pureZparsejson_u345)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newIntNode__ast_u5200)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, NI64 intVal_p1);
N_LIB_PRIVATE N_NOINLINE(void, raiseParseErr__pureZparsejson_u820)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* p_p0, NimStringV2 msg_p1);
static N_INLINE(NimStringV2, str__pureZparsejson_u313)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2694)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3261)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3252)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
static N_INLINE(NI64, getInt__pureZparsejson_u324)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(NI64, nsuParseBiggestInt)(NimStringV2 s_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3255)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2);
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNode__ast_u4069)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_u3215)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* father_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* son_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elemType__types_u254)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3378)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p0);
static N_INLINE(NI, kidsLen__ast_u5648)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, typeToString__types_u54)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p0, tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q prefer_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3705)(tySequence__9ahcSjIErJohSBBFLwuF56Q* dest_p0, tySequence__9ahcSjIErJohSBBFLwuF56Q src_p1);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getIdent__idents_u206)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* ic_p0, NimStringV2 identifier_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, lookupInRecord__astalgo_u30)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* field_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__ast_u3718)(tySequence__9ahcSjIErJohSBBFLwuF56Q* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newSymNode__ast_u5168)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, newSym__ast_u4205)(tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q symKind_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p3, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p4, tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options_p5);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___ast_u3249)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u4574)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_u155)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* dest_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elementType__ast_u5331)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3381)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p1);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5281)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, getOrDefault__vmmarshal_u367)(tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ t_p0, NI64 key_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u29)(NI64 xX60gensym4__p0);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vmmarshal_u873)(tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ* t_p0, NI64 key_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* val_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, eqdup___ast_u3258)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newStrNode__ast_u5422)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, NimStringV2 strVal_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newFloatNode__ast_u5418)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, NF floatVal_p1);
static N_INLINE(NF, getFloat__pureZparsejson_u335)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(NF, nsuParseFloat)(NimStringV2 s_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, skipModifier__ast_u5338)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_u1598)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 errMsg_p2, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p3);
static N_INLINE(void, close__pureZparsejson_u311)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0);
N_LIB_PRIVATE N_NIMCALL(void, close__pureZlexbase_u15)(tyObject_BaseLexer__ZspOFmN5MjfhmGOKIrGMRg* L_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZstreams_u612)(tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZparsejson_u128)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmmarshal_u1940)(tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ dest_p0);
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_u598)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_u37)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_u43)(NimStringV2* s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* stored_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nimBoolToStr)(NIM_BOOL x_p0);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, escapeJson__pureZjson_u4724)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nimCharToStr)(NIM_CHAR x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u9)(NI xX60gensym0__p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, skipColon__ast_u7347)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, storeObj__vmmarshal_u49)(NimStringV2* s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* stored_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u4577)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getField__vmmarshal_u17)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, NI position_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u4583)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lastSon__ast_u5208)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**, X5BX5D___ast_u5211)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, copyNode__ast_u6736)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astyaml_u223)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
static N_INLINE(NI, ptrToInt__vmmarshal_u14)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___system_u4730)(NF x_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u230)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* dest_p0);
extern TNimTypeV2 NTIv2__izA0qNVok9bbh6yzMr1imlg_;
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__eBu3XSE68i5yQmrMcuBiww_2 = { 12 | NIM_STRLIT_FLAG, "unknown file" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_3 = {12, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_2};
static const struct {
  NI cap; NIM_CHAR data[37+1];
} TM__eBu3XSE68i5yQmrMcuBiww_4 = { 37 | NIM_STRLIT_FLAG, "\'true\' or \'false\' expected for a bool" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_5 = {37, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_4};
static const struct {
  NI cap; NIM_CHAR data[38+1];
} TM__eBu3XSE68i5yQmrMcuBiww_6 = { 38 | NIM_STRLIT_FLAG, "string of length 1 expected for a char" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_7 = {38, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_6};
static const struct {
  NI cap; NIM_CHAR data[27+1];
} TM__eBu3XSE68i5yQmrMcuBiww_8 = { 27 | NIM_STRLIT_FLAG, "string expected for an enum" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_9 = {27, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_8};
static const struct {
  NI cap; NIM_CHAR data[25+1];
} TM__eBu3XSE68i5yQmrMcuBiww_10 = { 25 | NIM_STRLIT_FLAG, "\'[\' expected for an array" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_11 = {25, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_10};
static const struct {
  NI cap; NIM_CHAR data[25+1];
} TM__eBu3XSE68i5yQmrMcuBiww_12 = { 25 | NIM_STRLIT_FLAG, "\']\' end of array expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_13 = {25, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_12};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__eBu3XSE68i5yQmrMcuBiww_14 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_15 = {0, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_14};
static const struct {
  NI cap; NIM_CHAR data[22+1];
} TM__eBu3XSE68i5yQmrMcuBiww_16 = { 22 | NIM_STRLIT_FLAG, "\'[\' expected for a seq" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_17 = {22, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_16};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__eBu3XSE68i5yQmrMcuBiww_18 = { 26 | NIM_STRLIT_FLAG, "\'{\' expected for an object" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_19 = {26, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_18};
static const struct {
  NI cap; NIM_CHAR data[32+1];
} TM__eBu3XSE68i5yQmrMcuBiww_20 = { 32 | NIM_STRLIT_FLAG, "string expected for a field name" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_21 = {32, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_20};
static const struct {
  NI cap; NIM_CHAR data[30+1];
} TM__eBu3XSE68i5yQmrMcuBiww_22 = { 30 | NIM_STRLIT_FLAG, "too many fields to tuple type " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_23 = {30, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_22};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__eBu3XSE68i5yQmrMcuBiww_24 = { 26 | NIM_STRLIT_FLAG, "\'}\' end of object expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_25 = {26, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_24};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_26 = {26, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_18};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_27 = {32, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_20};
static const struct {
  NI cap; NIM_CHAR data[33+1];
} TM__eBu3XSE68i5yQmrMcuBiww_28 = { 33 | NIM_STRLIT_FLAG, "unknown field for object of type " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_29 = {33, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_28};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_30 = {26, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_24};
static const struct {
  NI cap; NIM_CHAR data[22+1];
} TM__eBu3XSE68i5yQmrMcuBiww_31 = { 22 | NIM_STRLIT_FLAG, "\'[\' expected for a set" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_32 = {22, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_31};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_33 = {25, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_12};
static const struct {
  NI cap; NIM_CHAR data[32+1];
} TM__eBu3XSE68i5yQmrMcuBiww_34 = { 32 | NIM_STRLIT_FLAG, "cannot load object with address " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_35 = {32, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_34};
static const struct {
  NI cap; NIM_CHAR data[27+1];
} TM__eBu3XSE68i5yQmrMcuBiww_36 = { 27 | NIM_STRLIT_FLAG, "index for ref type expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_37 = {27, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_36};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__eBu3XSE68i5yQmrMcuBiww_38 = { 36 | NIM_STRLIT_FLAG, "\']\' end of ref-address pair expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_39 = {36, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_38};
static const struct {
  NI cap; NIM_CHAR data[29+1];
} TM__eBu3XSE68i5yQmrMcuBiww_40 = { 29 | NIM_STRLIT_FLAG, "int for pointer type expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_41 = {29, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_40};
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__eBu3XSE68i5yQmrMcuBiww_42 = { 15 | NIM_STRLIT_FLAG, "string expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_43 = {15, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_42};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__eBu3XSE68i5yQmrMcuBiww_44 = { 12 | NIM_STRLIT_FLAG, "int expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_45 = {12, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_44};
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__eBu3XSE68i5yQmrMcuBiww_46 = { 14 | NIM_STRLIT_FLAG, "float expected" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_47 = {14, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_46};
static const struct {
  NI cap; NIM_CHAR data[31+1];
} TM__eBu3XSE68i5yQmrMcuBiww_48 = { 31 | NIM_STRLIT_FLAG, "cannot marshal at compile-time " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_49 = {31, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_48};
static const struct {
  NI cap; NIM_CHAR data[64+1];
} TM__eBu3XSE68i5yQmrMcuBiww_51 = { 64 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/vmmarshal.nim" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__eBu3XSE68i5yQmrMcuBiww_52 = { 4 | NIM_STRLIT_FLAG, "null" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_53 = {4, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_52};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__eBu3XSE68i5yQmrMcuBiww_54 = { 1 | NIM_STRLIT_FLAG, "[" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_55 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_54};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__eBu3XSE68i5yQmrMcuBiww_56 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_57 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__eBu3XSE68i5yQmrMcuBiww_58 = { 1 | NIM_STRLIT_FLAG, "]" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_59 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_58};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__eBu3XSE68i5yQmrMcuBiww_60 = { 1 | NIM_STRLIT_FLAG, "{" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_61 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_60};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_62 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__eBu3XSE68i5yQmrMcuBiww_63 = { 6 | NIM_STRLIT_FLAG, "\"Field" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_64 = {6, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_63};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__eBu3XSE68i5yQmrMcuBiww_65 = { 3 | NIM_STRLIT_FLAG, "\": " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_66 = {3, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_65};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__eBu3XSE68i5yQmrMcuBiww_67 = { 1 | NIM_STRLIT_FLAG, "}" };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_68 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_67};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_69 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_60};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_70 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__eBu3XSE68i5yQmrMcuBiww_71 = { 2 | NIM_STRLIT_FLAG, ": " };
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_72 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_71};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_73 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_71};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_74 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_67};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_75 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_54};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_76 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_77 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_78 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_58};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_79 = {4, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_52};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_80 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_54};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_81 = {2, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_56};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_82 = {1, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_58};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_83 = {4, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_52};
static const NimStringV2 TM__eBu3XSE68i5yQmrMcuBiww_84 = {31, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_48};
extern NIM_CONST tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA unknownLineInfo__lineinfos_u364;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__eBu3XSE68i5yQmrMcuBiww_50 = {{64, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_51},
((NI)307),
((NI)4)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__eBu3XSE68i5yQmrMcuBiww_85 = {{64, (NimStrPayload*)&TM__eBu3XSE68i5yQmrMcuBiww_51},
((NI)138),
((NI)4)}
;
extern NIM_BOOL nimInErrorMode__system_u4143;
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2172(p_p0, ((int)0), size_p1);
}
static N_INLINE(tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA, kind__pureZparsejson_u345)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0) {
	tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA result;
{	result = (*my_p0).kind;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NimStringV2, str__pureZparsejson_u313)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0) {
	NimStringV2 result;
{	result.len = 0; result.p = NIM_NIL;
	eqcopy___system_u2694((&result), (*my_p0).a);
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4143);
	return result;
}
static N_INLINE(NI64, getInt__pureZparsejson_u324)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0) {
	NI64 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI64)0;
	result = nsuParseBiggestInt((*my_p0).a);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
	NI T1_;
	T1_ = (*n_p0)._kind_6.sons.len;
	result = T1_;
	return result;
}
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		if (!((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)0) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23))) goto LA3_;
		result = ((NI)0);
	}
	goto LA1_;
LA3_: ;
	{
		result = len__ast_u3190(n_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2) {
	int result;
	result = memcmp(a_p0, b_p1, ((size_t) (size_p2)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2) {
	NIM_BOOL result;
	int T1_;
	T1_ = (int)0;
	T1_ = nimCmpMem(a_p0, b_p1, size_p2);
	result = (T1_ == ((NI32)0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1) {
	NIM_BOOL result;
	NI alen_1;
	NI blen_1;
{	result = NIM_FALSE;
	alen_1 = a_p0.len;
	blen_1 = b_p1.len;
	{
		if (!(alen_1 == blen_1)) goto LA3_;
		{
			if (!(alen_1 == ((NI)0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
LA7_: ;
		result = equalMem__system_u1750(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, kidsLen__ast_u5648)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NI result;
	NI T1_;
	T1_ = (*t_p0).sons.len;
	result = T1_;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5281)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** s_p0, NI s_p0Len_0, NI i_p1) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** result;
	result = &s_p0[(NI)(s_p0Len_0 - i_p1)];
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elementType__ast_u5331)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = (tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**)0;
	T1_ = X5BX5D___ast_u5281((((*n_p0).sons).p) ? ((*n_p0).sons.p->data) : NIM_NIL, (*n_p0).sons.len, ((NI)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___ast_u3381(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NF, getFloat__pureZparsejson_u335)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0) {
	NF result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NF)0;
	result = nsuParseFloat((*my_p0).a);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, skipModifier__ast_u5338)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = (tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**)0;
	T1_ = X5BX5D___ast_u5281((((*n_p0).sons).p) ? ((*n_p0).sons.p->data) : NIM_NIL, (*n_p0).sons.len, ((NI)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___ast_u3381(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, loadAny__vmmarshal_u160)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* p_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ* tab_p2, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p5) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL oldNimErrFin34_;
NIM_BOOL oldNimErrFin60_;
NIM_BOOL oldNimErrFin79_;
NIM_BOOL oldNimErrFin101_;
NIM_BOOL oldNimErrFin137_;
NIM_BOOL oldNimErrFin177_;
NIM_BOOL oldNimErrFin206_;
NIM_BOOL oldNimErrFin243_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	switch ((*t_p1).kind) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)0):
	{
		result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1):
	{
		tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T3_;
		T3_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
		T3_ = kind__pureZparsejson_u345((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		switch (T3_) {
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)6):
		{
			result = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), IL64(0));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)5):
		{
			result = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), IL64(1));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		default:
		{
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_5);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		}
		next__pureZparsejson_u664(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2):
	{
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T10_;
			NimStringV2 x_1;
			T10_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T10_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T10_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)2))) goto LA11_;
			x_1.len = 0; x_1.p = NIM_NIL;
			x_1 = str__pureZparsejson_u313((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
			{
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T18_;
				if (!(x_1.len == ((NI)1))) goto LA16_;
				T18_ = NIM_NIL;
				T18_ = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), ((NI64) (((NU8)(x_1.p->data[((NI)0)])))));
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T18_); goto LA13_;}
				eqsink___ast_u3261(&result, T18_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
				eqdestroy___system_u2691(x_1);
				goto BeforeRet_;
			}
LA16_: ;
			{
				LA13_:;
			}
			{
				eqdestroy___system_u2691(x_1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA8_;
LA11_: ;
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T22_;
			NI64 T25_;
			T22_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T22_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T22_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)3))) goto LA23_;
			T25_ = (NI64)0;
			T25_ = getInt__pureZparsejson_u324((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			result = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), T25_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
		}
		goto LA8_;
LA23_: ;
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
		}
LA8_: ;
		raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_7);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14):
	{
		result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T30_;
			T30_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T30_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T30_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)2))) goto LA31_;
			{
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* e_1;
				e_1 = NIM_NIL;
				{
					NI i_1;
					NI colontmp_;
					NI i_2;
					i_1 = (NI)0;
					colontmp_ = (NI)0;
					colontmp_ = safeLen__ast_u3197((*t_p1).n);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					i_2 = ((NI)0);
					{
						while (1) {
							NimStringV2 colontmpD_;
							if (!(i_2 < colontmp_)) goto LA37;
							colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
							i_1 = i_2;
							eqcopy___ast_u3255(&e_1, (*(*t_p1).n)._kind_6.sons.p->data[i_1]);
							if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
							{
								tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T43_;
								colontmpD_ = str__pureZparsejson_u313((&(*p_p0)));
								if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
								if (!eqStrings((*(*(*e_1)._kind_4.sym).name).s, colontmpD_)) goto LA41_;
								T43_ = NIM_NIL;
								T43_ = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), ((NI64) ((*(*e_1)._kind_4.sym).position)));
								if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T43_); goto LA38_;}
								eqsink___ast_u3261(&result, T43_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
								next__pureZparsejson_u664(p_p0);
								if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
								eqdestroy___system_u2691(colontmpD_);
								eqdestroy___ast_u3252(e_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								goto BeforeRet_;
							}
LA41_: ;
							i_2 += ((NI)1);
							{
								LA38_:;
							}
							{
								eqdestroy___system_u2691(colontmpD_);
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
						} LA37: ;
					}
				}
				{
					LA34_:;
				}
				{
					oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(e_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin34_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
		}
LA31_: ;
		raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_9);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)16):
	{
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T51_;
			T51_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T51_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!((T51_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)10)))) goto LA52_;
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_11);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA52_: ;
		next__pureZparsejson_u664(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				NIM_BOOL T56_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T57_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T59_;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
				T56_ = (NIM_BOOL)0;
				T57_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T57_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T56_ = !((T57_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11)));
				if (!(T56_)) goto LA58_;
				T59_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T59_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T56_ = !((T59_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)1)));
LA58_: ;
				if (!T56_) goto LA55;
				colontmpD__2 = NIM_NIL;
				colontmpD__3 = NIM_NIL;
				colontmpD__2 = elemType__types_u254(t_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
				colontmpD__3 = loadAny__vmmarshal_u160(p_p0, colontmpD__2, tab_p2, cache_p3, conf_p4, idgen_p5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
				add__ast_u3215(result, colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
				{
					LA60_:;
				}
				{
					oldNimErrFin60_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3378(colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin60_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA55: ;
		}
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T65_;
			T65_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T65_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T65_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11))) goto LA66_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA63_;
LA66_: ;
		{
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_13);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA63_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24):
	{
		tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T70_;
		T70_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
		T70_ = kind__pureZparsejson_u345((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		switch (T70_) {
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)7):
		{
			result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)10):
		{
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				while (1) {
					NIM_BOOL T75_;
					tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T76_;
					tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T78_;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__4;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
					T75_ = (NIM_BOOL)0;
					T76_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
					T76_ = kind__pureZparsejson_u345((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T75_ = !((T76_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11)));
					if (!(T75_)) goto LA77_;
					T78_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
					T78_ = kind__pureZparsejson_u345((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T75_ = !((T78_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)1)));
LA77_: ;
					if (!T75_) goto LA74;
					colontmpD__4 = NIM_NIL;
					colontmpD__5 = NIM_NIL;
					colontmpD__4 = elemType__types_u254(t_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
					colontmpD__5 = loadAny__vmmarshal_u160(p_p0, colontmpD__4, tab_p2, cache_p3, conf_p4, idgen_p5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
					add__ast_u3215(result, colontmpD__5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
					{
						LA79_:;
					}
					{
						oldNimErrFin79_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___ast_u3378(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						*nimErr_ = oldNimErrFin79_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				} LA74: ;
			}
			{
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T84_;
				T84_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T84_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!(T84_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11))) goto LA85_;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			goto LA82_;
LA85_: ;
			{
				raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_15);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA82_: ;
		}
		break;
		default:
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_17);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		}
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
	{
		NI i_3;
		NI tupleLen_1;
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T92_;
			T92_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T92_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!((T92_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)8)))) goto LA93_;
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_19);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA93_: ;
		next__pureZparsejson_u664(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)160));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_3 = ((NI)0);
		tupleLen_1 = kidsLen__ast_u5648(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				NIM_BOOL T97_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T98_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T100_;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__6;
				T97_ = (NIM_BOOL)0;
				T98_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T98_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T97_ = !((T98_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)9)));
				if (!(T97_)) goto LA99_;
				T100_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T100_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T97_ = !((T100_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)1)));
LA99_: ;
				if (!T97_) goto LA96;
				colontmpD__6 = NIM_NIL;
				{
					tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T104_;
					T104_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
					T104_ = kind__pureZparsejson_u345((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
					if (!!((T104_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)2)))) goto LA105_;
					raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_21);
					if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
				}
LA105_: ;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
				{
					NimStringV2 colontmpD__7;
					NimStringV2 colontmpD__8;
					NimStringV2 T112_;
					if (!(tupleLen_1 <= i_3)) goto LA109_;
					colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
					colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
					T112_.len = 0; T112_.p = NIM_NIL;
					colontmpD__7 = typeToString__types_u54(t_p1, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
					T112_ = rawNewString(colontmpD__7.len + 30);
appendString((&T112_), TM__eBu3XSE68i5yQmrMcuBiww_23);
appendString((&T112_), colontmpD__7);
					colontmpD__8 = T112_;
					raiseParseErr__pureZparsejson_u820((&(*p_p0)), colontmpD__8);
					if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
					{
						LA111_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__8);
						eqdestroy___system_u2691(colontmpD__7);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
				}
LA109_: ;
				colontmpD__6 = loadAny__vmmarshal_u160(p_p0, (*t_p1).sons.p->data[i_3], tab_p2, cache_p3, conf_p4, idgen_p5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
				add__ast_u3215(result, colontmpD__6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
				i_3 += ((NI)1);
				{
					LA101_:;
				}
				{
					oldNimErrFin101_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__6);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin101_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA96: ;
		}
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T119_;
			T119_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T119_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T119_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)9))) goto LA120_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA117_;
LA120_: ;
		{
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_25);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA117_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17):
	{
		tySequence__9ahcSjIErJohSBBFLwuF56Q T129_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T130_;
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T126_;
			T126_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T126_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!((T126_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)8)))) goto LA127_;
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_26);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA127_: ;
		next__pureZparsejson_u664(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)38));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T129_.len = 0; T129_.p = NIM_NIL;
		T129_.len = 1; T129_.p = (tySequence__9ahcSjIErJohSBBFLwuF56Q_Content*) newSeqPayload(1, sizeof(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*), NIM_ALIGNOF(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*));
		T130_ = NIM_NIL;
		T130_ = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T130_); goto BeforeRet_;}
		T129_.p->data[0] = T130_;
		eqsink___ast_u3705((&(*result)._kind_6.sons), T129_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				NIM_BOOL T133_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T134_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T136_;
				tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident_1;
				NimStringV2 colontmpD__9;
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_1;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fieldNode_1;
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__10;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__11;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__12;
				NI pos_1;
				tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ T156_;
				T133_ = (NIM_BOOL)0;
				T134_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T134_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T133_ = !((T134_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)9)));
				if (!(T133_)) goto LA135_;
				T136_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T136_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T133_ = !((T136_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)1)));
LA135_: ;
				if (!T133_) goto LA132;
				ident_1 = NIM_NIL;
				colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
				field_1 = NIM_NIL;
				fieldNode_1 = NIM_NIL;
				colontmpD__10 = NIM_NIL;
				colontmpD__11 = NIM_NIL;
				colontmpD__12 = NIM_NIL;
				{
					tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T140_;
					T140_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
					T140_ = kind__pureZparsejson_u345((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
					if (!!((T140_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)2)))) goto LA141_;
					raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_27);
					if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				}
LA141_: ;
				colontmpD__9 = str__pureZparsejson_u313((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				ident_1 = getIdent__idents_u206(cache_p3, colontmpD__9);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				field_1 = lookupInRecord__astalgo_u30((*t_p1).n, ident_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				{
					NimStringV2 colontmpD__13;
					NimStringV2 colontmpD__14;
					NimStringV2 T148_;
					if (!(field_1 == 0)) goto LA145_;
					colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
					colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
					T148_.len = 0; T148_.p = NIM_NIL;
					colontmpD__13 = typeToString__types_u54(t_p1, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA147_;
					T148_ = rawNewString(colontmpD__13.len + 33);
appendString((&T148_), TM__eBu3XSE68i5yQmrMcuBiww_29);
appendString((&T148_), colontmpD__13);
					colontmpD__14 = T148_;
					raiseParseErr__pureZparsejson_u820((&(*p_p0)), colontmpD__14);
					if (NIM_UNLIKELY(*nimErr_)) goto LA147_;
					{
						LA147_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__14);
						eqdestroy___system_u2691(colontmpD__13);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				}
LA145_: ;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				pos_1 = (NI)((*field_1).position + ((NI)1));
				{
					NI T153_;
					T153_ = (NI)0;
					T153_ = len__ast_u3190(result);
					if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
					if (!(T153_ <= pos_1)) goto LA154_;
					setLen__ast_u3718((&(*result)._kind_6.sons), ((NI)(pos_1 + ((NI)1))));
				}
LA154_: ;
				fieldNode_1 = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34));
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				T156_ = 0;
				colontmpD__10 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), ident_1, idgen_p5, ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL), unknownLineInfo__lineinfos_u364, T156_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				colontmpD__11 = newSymNode__ast_u5168(colontmpD__10);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				add__ast_u3215(fieldNode_1, colontmpD__11);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				colontmpD__12 = loadAny__vmmarshal_u160(p_p0, (*field_1).typ, tab_p2, cache_p3, conf_p4, idgen_p5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				add__ast_u3215(fieldNode_1, colontmpD__12);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				eqsink___ast_u3261(&(*result)._kind_6.sons.p->data[pos_1], fieldNode_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				eqwasMoved___ast_u3249(&fieldNode_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA137_;
				{
					LA137_:;
				}
				{
					oldNimErrFin137_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__12);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3252(colontmpD__11);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4574(colontmpD__10);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3252(fieldNode_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4574(field_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___system_u2691(colontmpD__9);
					eqdestroy___idents_u155(ident_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin137_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA132: ;
		}
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T161_;
			T161_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T161_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T161_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)9))) goto LA162_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA159_;
LA162_: ;
		{
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_30);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA159_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)19):
	{
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T168_;
			T168_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T168_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!((T168_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)10)))) goto LA169_;
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_32);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA169_: ;
		next__pureZparsejson_u664(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)39));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				NIM_BOOL T173_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T174_;
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T176_;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__15;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__16;
				T173_ = (NIM_BOOL)0;
				T174_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T174_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T173_ = !((T174_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11)));
				if (!(T173_)) goto LA175_;
				T176_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T176_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T173_ = !((T176_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)1)));
LA175_: ;
				if (!T173_) goto LA172;
				colontmpD__15 = NIM_NIL;
				colontmpD__16 = NIM_NIL;
				colontmpD__15 = elementType__ast_u5331(t_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA177_;
				colontmpD__16 = loadAny__vmmarshal_u160(p_p0, colontmpD__15, tab_p2, cache_p3, conf_p4, idgen_p5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA177_;
				add__ast_u3215(result, colontmpD__16);
				if (NIM_UNLIKELY(*nimErr_)) goto LA177_;
				{
					LA177_:;
				}
				{
					oldNimErrFin177_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__16);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3378(colontmpD__15);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin177_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA172: ;
		}
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T182_;
			T182_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T182_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T182_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11))) goto LA183_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA180_;
LA183_: ;
		{
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_33);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA180_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22):
	{
		tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T187_;
		T187_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
		T187_ = kind__pureZparsejson_u345((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		switch (T187_) {
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)7):
		{
			result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)3):
		{
			NI64 T190_;
			T190_ = (NI64)0;
			T190_ = getInt__pureZparsejson_u324((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			result = getOrDefault__vmmarshal_u367((*tab_p2), T190_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				NimStringV2 colontmpD__17;
				NimStringV2 colontmpD__18;
				NimStringV2 T196_;
				NI64 T197_;
				if (!(result == 0)) goto LA193_;
				colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
				colontmpD__18.len = 0; colontmpD__18.p = NIM_NIL;
				T196_.len = 0; T196_.p = NIM_NIL;
				T197_ = (NI64)0;
				T197_ = getInt__pureZparsejson_u324((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA195_;
				colontmpD__17 = dollar___systemZdollars_u29(T197_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA195_;
				T196_ = rawNewString(colontmpD__17.len + 32);
appendString((&T196_), TM__eBu3XSE68i5yQmrMcuBiww_35);
appendString((&T196_), colontmpD__17);
				colontmpD__18 = T196_;
				raiseParseErr__pureZparsejson_u820((&(*p_p0)), colontmpD__18);
				if (NIM_UNLIKELY(*nimErr_)) goto LA195_;
				{
					LA195_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__18);
					eqdestroy___system_u2691(colontmpD__17);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA193_: ;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)10):
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T203_;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__19;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__20;
				NI64 idx_1;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T207_;
				T203_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T203_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!(T203_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)3))) goto LA204_;
				colontmpD__19 = NIM_NIL;
				idx_1 = getInt__pureZparsejson_u324((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				colontmpD__19 = elementType__ast_u5331(t_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				T207_ = NIM_NIL;
				T207_ = loadAny__vmmarshal_u160(p_p0, colontmpD__19, tab_p2, cache_p3, conf_p4, idgen_p5);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T207_); goto LA206_;}
				eqsink___ast_u3261(&result, T207_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				colontmpD__20 = eqdup___ast_u3258(result);
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				X5BX5Deq___vmmarshal_u873(tab_p2, idx_1, colontmpD__20);
				if (NIM_UNLIKELY(*nimErr_)) goto LA206_;
				{
					LA206_:;
				}
				{
					oldNimErrFin206_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3378(colontmpD__19);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin206_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			goto LA201_;
LA204_: ;
			{
				raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_37);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA201_: ;
			{
				tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T213_;
				T213_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
				T213_ = kind__pureZparsejson_u345((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!(T213_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)11))) goto LA214_;
				next__pureZparsejson_u664(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			goto LA211_;
LA214_: ;
			{
				raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_39);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA211_: ;
		}
		break;
		default:
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_41);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		}
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
	{
		tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T219_;
		T219_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
		T219_ = kind__pureZparsejson_u345((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		switch (T219_) {
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)7):
		{
			result = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		case ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)2):
		{
			NimStringV2 colontmpD__21;
			colontmpD__21.len = 0; colontmpD__21.p = NIM_NIL;
			colontmpD__21 = str__pureZparsejson_u313((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA222_;
			result = newStrNode__ast_u5422(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)20), colontmpD__21);
			if (NIM_UNLIKELY(*nimErr_)) goto LA222_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA222_;
			{
				LA222_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__21);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		default:
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
			raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_43);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		break;
		}
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44):
	{
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T229_;
			NI64 T232_;
			T229_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T229_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T229_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)3))) goto LA230_;
			T232_ = (NI64)0;
			T232_ = getInt__pureZparsejson_u324((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			result = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), T232_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
		}
		goto LA227_;
LA230_: ;
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
		}
LA227_: ;
		raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_45);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)39):
	{
		{
			tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA T237_;
			NF T240_;
			T237_ = (tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)0;
			T237_ = kind__pureZparsejson_u345((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T237_ == ((tyEnum_JsonEventKind__vmhy79b8cI3QhdCUo55hPOA)4))) goto LA238_;
			T240_ = (NF)0;
			T240_ = getFloat__pureZparsejson_u335((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			result = newFloatNode__ast_u5418(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)16), T240_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			next__pureZparsejson_u664(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
		}
		goto LA235_;
LA238_: ;
		{
			result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
		}
LA235_: ;
		raiseParseErr__pureZparsejson_u820((&(*p_p0)), TM__eBu3XSE68i5yQmrMcuBiww_47);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)20):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)11):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)4):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)46):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__22;
		colontmpD__22 = NIM_NIL;
		colontmpD__22 = skipModifier__ast_u5338(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA243_;
		result = loadAny__vmmarshal_u160(p_p0, colontmpD__22, tab_p2, cache_p3, conf_p4, idgen_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA243_;
		{
			LA243_:;
		}
		{
			oldNimErrFin243_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__22);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin243_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		NimStringV2 colontmpD__23;
		NimStringV2 colontmpD__24;
		NimStringV2 T248_;
		colontmpD__23.len = 0; colontmpD__23.p = NIM_NIL;
		colontmpD__24.len = 0; colontmpD__24.p = NIM_NIL;
		result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
		T248_.len = 0; T248_.p = NIM_NIL;
		colontmpD__23 = typeToString__types_u54(t_p1, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA247_;
		T248_ = rawNewString(colontmpD__23.len + 31);
appendString((&T248_), TM__eBu3XSE68i5yQmrMcuBiww_49);
appendString((&T248_), colontmpD__23);
		colontmpD__24 = T248_;
		internalErrorImpl__msgs_u1598(conf_p4, unknownLineInfo__lineinfos_u364, colontmpD__24, TM__eBu3XSE68i5yQmrMcuBiww_50);
		if (NIM_UNLIKELY(*nimErr_)) goto LA247_;
		{
			LA247_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__24);
			eqdestroy___system_u2691(colontmpD__23);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, close__pureZparsejson_u311)(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg* my_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	close__pureZlexbase_u15(&my_p0->Sup);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, loadAny__vmmarshal_u1900)(NimStringV2 s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p4) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ tab_1;
	tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg p_1;
	NimStringV2 colontmpD_;
	tyObject_StringStreamObj__OvoQd4jSzPo0Qf5Vj9aPcAQ* colontmpD__2;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&tab_1), sizeof(tyObject_Table__wQe729aj2t9bQfHvWdVt17AQ));
	nimZeroMem((void*)(&p_1), sizeof(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg));
	p_1.Sup.Sup.m_type = (&NTIv2__izA0qNVok9bbh6yzMr1imlg_);
	colontmpD__2 = NIM_NIL;
	tab_1 = initTable__vmmarshal_u1919(((NI)32));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	nimZeroMem((void*)(&p_1), sizeof(tyObject_JsonParser__izA0qNVok9bbh6yzMr1imlg));
	p_1.Sup.Sup.m_type = (&NTIv2__izA0qNVok9bbh6yzMr1imlg_);
	colontmpD_ = eqdup___system_u2697(s_p0);
	colontmpD__2 = newStringStream__pureZstreams_u829(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	open__pureZparsejson_u80((&p_1), (*((tyObject_StreamObj__nX3kZRlh8Dq3gQ2cC6DE8w**) (&(colontmpD__2)))), TM__eBu3XSE68i5yQmrMcuBiww_3, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	next__pureZparsejson_u664((&p_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = loadAny__vmmarshal_u160((&p_1), t_p1, (&tab_1), cache_p2, conf_p3, idgen_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	close__pureZparsejson_u311((&p_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___pureZstreams_u612(colontmpD__2);
		eqdestroy___pureZparsejson_u128((&p_1));
		eqdestroy___vmmarshal_u1940(tab_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_u598)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)Result, sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
	initPackedSet__pureZcollectionsZintsets_u37(Result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**, X5BX5D___ast_u5211)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** s_p0, NI s_p0Len_0, NI i_p1) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** result;
	result = &s_p0[(NI)(s_p0Len_0 - i_p1)];
	return result;
}
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lastSon__ast_u5208)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = (tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**)0;
	T1_ = X5BX5D___ast_u5211((((*n_p0)._kind_6.sons).p) ? ((*n_p0)._kind_6.sons.p->data) : NIM_NIL, (*n_p0)._kind_6.sons.len, ((NI)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___ast_u3255(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getField__vmmarshal_u17)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, NI position_p1) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)138):
	{
		result = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_u3190(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T5_;
					if (!(i_2 < colontmp_)) goto LA4;
					i_1 = i_2;
					T5_ = NIM_NIL;
					T5_ = getField__vmmarshal_u17((*n_p0)._kind_6.sons.p->data[i_1], position_p1);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T5_); goto BeforeRet_;}
					eqsink___ast_u4583(&result, T5_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					{
						if (!!((result == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA8_;
						goto BeforeRet_;
					}
LA8_: ;
					i_2 += ((NI)1);
				} LA4: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)139):
	{
		result = getField__vmmarshal_u17((*n_p0)._kind_6.sons.p->data[((NI)0)], position_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			if (!!((result == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA13_;
			goto BeforeRet_;
		}
LA13_: ;
		{
			NI i_3;
			NI colontmp__2;
			NI i_4;
			i_3 = (NI)0;
			colontmp__2 = (NI)0;
			colontmp__2 = len__ast_u3190(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_4 = ((NI)1);
			{
				while (1) {
					if (!(i_4 < colontmp__2)) goto LA17;
					i_3 = i_4;
					switch ((*(*n_p0)._kind_6.sons.p->data[i_3]).kind) {
					case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)85):
					case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
					{
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T20_;
						colontmpD_ = NIM_NIL;
						colontmpD_ = lastSon__ast_u5208((*n_p0)._kind_6.sons.p->data[i_3]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
						T20_ = NIM_NIL;
						T20_ = getField__vmmarshal_u17(colontmpD_, position_p1);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T20_); goto LA19_;}
						eqsink___ast_u4583(&result, T20_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
						{
							if (!!((result == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA23_;
							eqdestroy___ast_u3252(colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA23_: ;
						{
							LA19_:;
						}
						{
							oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin19_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					break;
					default:
					{
					}
					break;
					}
					i_4 += ((NI)1);
				} LA17: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		{
			if (!((*(*n_p0)._kind_4.sym).position == position_p1)) goto LA31_;
			eqcopy___ast_u4577(&result, (*n_p0)._kind_4.sym);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA29_;
LA31_: ;
		{
			result = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
		}
LA29_: ;
	}
	break;
	default:
	{
		result = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, storeObj__vmmarshal_u49)(NimStringV2* s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* stored_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4) {
	NI start_1;
NIM_BOOL oldNimErrFin17_;
NIM_BOOL oldNimErrFin23_;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	start_1 = ((NI)1);
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(x_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = start_1;
		{
			while (1) {
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
				if (!(i_2 < colontmp_)) goto LA3;
				it_1 = NIM_NIL;
				i_1 = i_2;
				{
					if (!(start_1 < i_1)) goto LA7_;
					prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_70);
				}
LA7_: ;
				eqcopy___ast_u3255(&it_1, (*x_p2)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				{
					if (!((*it_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34))) goto LA11_;
					{
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_1;
						NimStringV2 colontmpD_;
						if (!((*(*it_1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA15_;
						field_1 = NIM_NIL;
						colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
						eqcopy___ast_u4577(&field_1, (*(*it_1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						colontmpD_ = escapeJson__pureZjson_u4724((*(*field_1).name).s);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						prepareAdd((&(*s_p0)), colontmpD_.len + 0);
appendString((&(*s_p0)), colontmpD_);
						prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_72);
						storeAny__vmmarshal_u43(s_p0, (*field_1).typ, (*it_1)._kind_6.sons.p->data[((NI)1)], stored_p3, conf_p4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						{
							LA17_:;
						}
						{
							oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___system_u2691(colontmpD_);
							eqdestroy___ast_u4574(field_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
							*nimErr_ = oldNimErrFin17_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
					}
LA15_: ;
				}
				goto LA9_;
LA11_: ;
				{
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_2;
					NimStringV2 colontmpD__2;
					if (!!(((*typ_p1).n == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA21_;
					field_2 = NIM_NIL;
					colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
					field_2 = getField__vmmarshal_u17((*typ_p1).n, i_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					colontmpD__2 = escapeJson__pureZjson_u4724((*(*field_2).name).s);
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					prepareAdd((&(*s_p0)), colontmpD__2.len + 0);
appendString((&(*s_p0)), colontmpD__2);
					prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_73);
					storeAny__vmmarshal_u43(s_p0, (*field_2).typ, it_1, stored_p3, conf_p4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					{
						LA23_:;
					}
					{
						oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___system_u2691(colontmpD__2);
						eqdestroy___ast_u4574(field_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
						*nimErr_ = oldNimErrFin23_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				}
				goto LA9_;
LA21_: ;
LA9_: ;
				i_2 += ((NI)1);
				{
					LA4_:;
				}
				{
					oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin4_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA3: ;
		}
	}
	}BeforeRet_: ;
}
static N_INLINE(NI, ptrToInt__vmmarshal_u14)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_p0) {
	NI result;
	result = ((NI) (x_p0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_u43)(NimStringV2* s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* stored_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4) {
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin34_;
NIM_BOOL oldNimErrFin29_;
NIM_BOOL oldNimErrFin60_;
NIM_BOOL oldNimErrFin57_;
NIM_BOOL oldNimErrFin66_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL oldNimErrFin75_;
NIM_BOOL oldNimErrFin103_;
NIM_BOOL oldNimErrFin89_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*t_p1).kind) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)0):
	{
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1):
	{
		NimStringV2 colontmpD_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD_ = nimBoolToStr(!(((*a_p2)._kind_1.intVal == IL64(0))));
		prepareAdd((&(*s_p0)), colontmpD_.len + 0);
appendString((&(*s_p0)), colontmpD_);
		eqdestroy___system_u2691(colontmpD_);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2):
	{
		NIM_CHAR ch_1;
		ch_1 = ((NIM_CHAR) ((*a_p2)._kind_1.intVal));
		{
			NimStringV2 colontmpD__2;
			NimStringV2 colontmpD__3;
			if (!((NU8)(ch_1) < (NU8)(128))) goto LA6_;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			colontmpD__2 = nimCharToStr(ch_1);
			colontmpD__3 = escapeJson__pureZjson_u4724(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			prepareAdd((&(*s_p0)), colontmpD__3.len + 0);
appendString((&(*s_p0)), colontmpD__3);
			eqdestroy___system_u2691(colontmpD__3);
			eqdestroy___system_u2691(colontmpD__2);
		}
		goto LA4_;
LA6_: ;
		{
			NimStringV2 colontmpD__4;
			colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
			colontmpD__4 = dollar___systemZdollars_u9(((NI) (((NU8)(ch_1)))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			prepareAdd((&(*s_p0)), colontmpD__4.len + 0);
appendString((&(*s_p0)), colontmpD__4);
			eqdestroy___system_u2691(colontmpD__4);
		}
LA4_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)16):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24):
	{
		{
			NIM_BOOL T12_;
			T12_ = (NIM_BOOL)0;
			T12_ = ((*t_p1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24));
			if (!(T12_)) goto LA13_;
			T12_ = ((*a_p2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23));
LA13_: ;
			if (!T12_) goto LA14_;
			prepareAdd((&(*s_p0)), 4);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_53);
		}
		goto LA10_;
LA14_: ;
		{
			prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_55);
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = len__ast_u3190(a_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_2 = ((NI)0);
				{
					while (1) {
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__5;
						if (!(i_2 < colontmp_)) goto LA19;
						colontmpD__5 = NIM_NIL;
						i_1 = i_2;
						{
							if (!(((NI)0) < i_1)) goto LA23_;
							prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_57);
						}
LA23_: ;
						colontmpD__5 = elemType__types_u254(t_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						storeAny__vmmarshal_u43(s_p0, colontmpD__5, (*a_p2)._kind_6.sons.p->data[i_1], stored_p3, conf_p4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						i_2 += ((NI)1);
						{
							LA20_:;
						}
						{
							oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3378(colontmpD__5);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin20_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					} LA19: ;
				}
			}
			prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_59);
		}
LA10_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
	{
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_61);
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* ti_1;
			NI i_3;
			ti_1 = NIM_NIL;
			i_3 = (NI)0;
			{
				NI i_4;
				NI colontmp__2;
				NI T31_;
				NI i_5;
				i_4 = (NI)0;
				colontmp__2 = (NI)0;
				T31_ = (*t_p1).sons.len;
				colontmp__2 = T31_;
				i_5 = ((NI)0);
				{
					while (1) {
						NimStringV2 colontmpD__6;
						NimStringV2 colontmpD__7;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__8;
						NimStringV2 T39_;
						if (!(i_5 < colontmp__2)) goto LA33;
						colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
						colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
						colontmpD__8 = NIM_NIL;
						i_4 = i_5;
						i_3 = i_4;
						eqcopy___ast_u3381(&ti_1, (*t_p1).sons.p->data[i_4]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
						{
							if (!(((NI)0) < i_3)) goto LA37_;
							prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_62);
						}
LA37_: ;
						T39_.len = 0; T39_.p = NIM_NIL;
						colontmpD__6 = dollar___systemZdollars_u9(i_3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
						T39_ = rawNewString(colontmpD__6.len + 6);
appendString((&T39_), TM__eBu3XSE68i5yQmrMcuBiww_64);
appendString((&T39_), colontmpD__6);
						colontmpD__7 = T39_;
						prepareAdd((&(*s_p0)), colontmpD__7.len + 0);
appendString((&(*s_p0)), colontmpD__7);
						prepareAdd((&(*s_p0)), 3);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_66);
						colontmpD__8 = skipColon__ast_u7347((*a_p2)._kind_6.sons.p->data[i_3]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
						storeAny__vmmarshal_u43(s_p0, ti_1, colontmpD__8, stored_p3, conf_p4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
						i_5 += ((NI)1);
						{
							LA34_:;
						}
						{
							oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD__8);
							if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
							eqdestroy___system_u2691(colontmpD__7);
							eqdestroy___system_u2691(colontmpD__6);
							*nimErr_ = oldNimErrFin34_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					} LA33: ;
				}
			}
			{
				LA29_:;
			}
			{
				oldNimErrFin29_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(ti_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin29_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_68);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17):
	{
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_69);
		storeObj__vmmarshal_u49(s_p0, t_p1, a_p2, stored_p3, conf_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_74);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)19):
	{
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_75);
		{
			NI i_6;
			NI colontmp__3;
			NI i_7;
			i_6 = (NI)0;
			colontmp__3 = (NI)0;
			colontmp__3 = len__ast_u3190(a_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_7 = ((NI)0);
			{
				while (1) {
					if (!(i_7 < colontmp__3)) goto LA48;
					i_6 = i_7;
					{
						if (!(((NI)0) < i_6)) goto LA51_;
						prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_76);
					}
LA51_: ;
					{
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_1;
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__9;
						if (!((*(*a_p2)._kind_6.sons.p->data[i_6]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)44))) goto LA55_;
						x_1 = NIM_NIL;
						colontmpD__9 = NIM_NIL;
						x_1 = copyNode__ast_u6736((*(*a_p2)._kind_6.sons.p->data[i_6])._kind_6.sons.p->data[((NI)0)]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
						colontmpD__9 = elementType__ast_u5331(t_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
						storeAny__vmmarshal_u43(s_p0, colontmpD__9, x_1, stored_p3, conf_p4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
						(*x_1)._kind_1.intVal += ((NI)1);
						{
							while (1) {
								tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__10;
								if (!((*x_1)._kind_1.intVal <= (*(*(*a_p2)._kind_6.sons.p->data[i_6])._kind_6.sons.p->data[((NI)1)])._kind_1.intVal)) goto LA59;
								colontmpD__10 = NIM_NIL;
								prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_77);
								colontmpD__10 = elementType__ast_u5331(t_p1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
								storeAny__vmmarshal_u43(s_p0, colontmpD__10, x_1, stored_p3, conf_p4);
								if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
								(*x_1)._kind_1.intVal += ((NI)1);
								{
									LA60_:;
								}
								{
									oldNimErrFin60_ = *nimErr_; *nimErr_ = NIM_FALSE;
									eqdestroy___ast_u3378(colontmpD__10);
									if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
									*nimErr_ = oldNimErrFin60_;
								}
								if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
							} LA59: ;
						}
						{
							LA57_:;
						}
						{
							oldNimErrFin57_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3378(colontmpD__9);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							eqdestroy___ast_u3252(x_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin57_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					goto LA53_;
LA55_: ;
					{
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__11;
						colontmpD__11 = NIM_NIL;
						colontmpD__11 = elementType__ast_u5331(t_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
						storeAny__vmmarshal_u43(s_p0, colontmpD__11, (*a_p2)._kind_6.sons.p->data[i_6], stored_p3, conf_p4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
						{
							LA66_:;
						}
						{
							oldNimErrFin66_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3378(colontmpD__11);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin66_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
LA53_: ;
					i_7 += ((NI)1);
				} LA48: ;
			}
		}
		prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_78);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)20):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)11):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)4):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)46):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__12;
		colontmpD__12 = NIM_NIL;
		colontmpD__12 = skipModifier__ast_u5338(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
		storeAny__vmmarshal_u43(s_p0, colontmpD__12, a_p2, stored_p3, conf_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
		{
			LA70_:;
		}
		{
			oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__12);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin70_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14):
	{
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* e_1;
			e_1 = NIM_NIL;
			{
				NI i_8;
				NI colontmp__4;
				NI i_9;
				i_8 = (NI)0;
				colontmp__4 = (NI)0;
				colontmp__4 = safeLen__ast_u3197((*t_p1).n);
				if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
				i_9 = ((NI)0);
				{
					while (1) {
						if (!(i_9 < colontmp__4)) goto LA78;
						i_8 = i_9;
						eqcopy___ast_u3255(&e_1, (*(*t_p1).n)._kind_6.sons.p->data[i_8]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
						{
							NimStringV2 colontmpD__13;
							if (!(((NI64) ((*(*e_1)._kind_4.sym).position)) == (*a_p2)._kind_1.intVal)) goto LA81_;
							colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
							colontmpD__13 = escapeJson__pureZjson_u4724((*(*(*e_1)._kind_4.sym).name).s);
							if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
							prepareAdd((&(*s_p0)), colontmpD__13.len + 0);
appendString((&(*s_p0)), colontmpD__13);
							eqdestroy___system_u2691(colontmpD__13);
							eqdestroy___ast_u3252(e_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto LA74;
							{
								LA83_:;
							}
							{
								eqdestroy___system_u2691(colontmpD__13);
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
						}
LA81_: ;
						i_9 += ((NI)1);
					} LA78: ;
				}
			}
			{
				LA75_:;
			}
			{
				oldNimErrFin75_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(e_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin75_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		} LA74: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_2;
		x_2 = NIM_NIL;
		eqcopy___ast_u3255(&x_2, a_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
		{
			NIM_BOOL T92_;
			T92_ = (NIM_BOOL)0;
			T92_ = (x_2 == 0);
			if (T92_) goto LA93_;
			T92_ = ((*x_2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23));
LA93_: ;
			if (!T92_) goto LA94_;
			prepareAdd((&(*s_p0)), 4);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_79);
		}
		goto LA90_;
LA94_: ;
		{
			NI T97_;
			NIM_BOOL T98_;
			NimStringV2 colontmpD__14;
			NI T101_;
			T97_ = (NI)0;
			T97_ = ptrToInt__vmmarshal_u14(x_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
			T98_ = (NIM_BOOL)0;
			T98_ = containsOrIncl__astyaml_u223(stored_p3, T97_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
			if (!T98_) goto LA99_;
			colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
			T101_ = (NI)0;
			T101_ = ptrToInt__vmmarshal_u14(x_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
			colontmpD__14 = dollar___systemZdollars_u9(T101_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
			prepareAdd((&(*s_p0)), colontmpD__14.len + 0);
appendString((&(*s_p0)), colontmpD__14);
			eqdestroy___system_u2691(colontmpD__14);
		}
		goto LA90_;
LA99_: ;
		{
			NimStringV2 colontmpD__15;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__16;
			NI T104_;
			colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
			colontmpD__16 = NIM_NIL;
			prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_80);
			T104_ = (NI)0;
			T104_ = ptrToInt__vmmarshal_u14(x_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA103_;
			colontmpD__15 = dollar___systemZdollars_u9(T104_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA103_;
			prepareAdd((&(*s_p0)), colontmpD__15.len + 0);
appendString((&(*s_p0)), colontmpD__15);
			prepareAdd((&(*s_p0)), 2);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_81);
			colontmpD__16 = elementType__ast_u5331(t_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA103_;
			storeAny__vmmarshal_u43(s_p0, colontmpD__16, a_p2, stored_p3, conf_p4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA103_;
			prepareAdd((&(*s_p0)), 1);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_82);
			{
				LA103_:;
			}
			{
				oldNimErrFin103_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(colontmpD__16);
				if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
				eqdestroy___system_u2691(colontmpD__15);
				*nimErr_ = oldNimErrFin103_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA89_;
		}
LA90_: ;
		{
			LA89_:;
		}
		{
			oldNimErrFin89_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(x_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin89_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
	{
		{
			if (!((*a_p2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23))) goto LA112_;
			prepareAdd((&(*s_p0)), 4);
appendString((&(*s_p0)), TM__eBu3XSE68i5yQmrMcuBiww_83);
		}
		goto LA110_;
LA112_: ;
		{
			NimStringV2 colontmpD__17;
			colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
			colontmpD__17 = escapeJson__pureZjson_u4724((*a_p2)._kind_3.strVal);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			prepareAdd((&(*s_p0)), colontmpD__17.len + 0);
appendString((&(*s_p0)), colontmpD__17);
			eqdestroy___system_u2691(colontmpD__17);
		}
LA110_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44):
	{
		NimStringV2 colontmpD__18;
		colontmpD__18.len = 0; colontmpD__18.p = NIM_NIL;
		colontmpD__18 = dollar___systemZdollars_u29((*a_p2)._kind_1.intVal);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		prepareAdd((&(*s_p0)), colontmpD__18.len + 0);
appendString((&(*s_p0)), colontmpD__18);
		eqdestroy___system_u2691(colontmpD__18);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)39):
	{
		NimStringV2 colontmpD__19;
		colontmpD__19.len = 0; colontmpD__19.p = NIM_NIL;
		colontmpD__19 = dollar___system_u4730((*a_p2)._kind_2.floatVal);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		prepareAdd((&(*s_p0)), colontmpD__19.len + 0);
appendString((&(*s_p0)), colontmpD__19);
		eqdestroy___system_u2691(colontmpD__19);
	}
	break;
	default:
	{
		NimStringV2 colontmpD__20;
		NimStringV2 colontmpD__21;
		NimStringV2 T119_;
		colontmpD__20.len = 0; colontmpD__20.p = NIM_NIL;
		colontmpD__21.len = 0; colontmpD__21.p = NIM_NIL;
		T119_.len = 0; T119_.p = NIM_NIL;
		colontmpD__20 = typeToString__types_u54(t_p1, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA118_;
		T119_ = rawNewString(colontmpD__20.len + 31);
appendString((&T119_), TM__eBu3XSE68i5yQmrMcuBiww_84);
appendString((&T119_), colontmpD__20);
		colontmpD__21 = T119_;
		internalErrorImpl__msgs_u1598(conf_p4, (*a_p2).info, colontmpD__21, TM__eBu3XSE68i5yQmrMcuBiww_85);
		if (NIM_UNLIKELY(*nimErr_)) goto LA118_;
		{
			LA118_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__21);
			eqdestroy___system_u2691(colontmpD__20);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_u154)(NimStringV2* s_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3) {
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA stored_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&stored_1), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
	initIntSet__pureZcollectionsZintsets_u598((&stored_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	storeAny__vmmarshal_u43(s_p0, t_p1, a_p2, (&stored_1), conf_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___pureZcollectionsZintsets_u230((&stored_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
