/* Generated by Nim Compiler v2.2.10 */
/* Compiled for: MacOSX, arm64, clang */
/* Command for C compiler:
   clang -c  -w -ferror-limit=3 -fno-strict-aliasing -pthread -isysroot /Applications/Xcode_16.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -target arm64-apple-darwin24.2.0 -O3   -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/lib -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/src -o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@mbasic@slockfiletypes.nim.c.o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@mbasic@slockfiletypes.nim.c */
#define NIM_INTBITS 64
#define NIM_EmulateOverflowChecks

#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_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg;
typedef struct tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA;
typedef struct tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA;
typedef struct tySequence__UM2HJI1wUigOaSPzL6VC3A tySequence__UM2HJI1wUigOaSPzL6VC3A;
typedef struct tySequence__UM2HJI1wUigOaSPzL6VC3A_Content tySequence__UM2HJI1wUigOaSPzL6VC3A_Content;
typedef struct tySequence__t6JKa4Kdxpc0RJiFEWRI9bw tySequence__t6JKa4Kdxpc0RJiFEWRI9bw;
typedef struct tySequence__t6JKa4Kdxpc0RJiFEWRI9bw_Content tySequence__t6JKa4Kdxpc0RJiFEWRI9bw_Content;
typedef struct tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA;
typedef struct tyObject_OrderedTable__4fqy8hm4AzG4KT0VyQHXkA tyObject_OrderedTable__4fqy8hm4AzG4KT0VyQHXkA;
typedef struct tySequence__xSWRAcOHDJ9atP6GSXu4rIg tySequence__xSWRAcOHDJ9atP6GSXu4rIg;
typedef struct tySequence__xSWRAcOHDJ9atP6GSXu4rIg_Content tySequence__xSWRAcOHDJ9atP6GSXu4rIg_Content;
typedef struct tyObject_Joptions__Bf62ivDFOdoKXzuMmXTKWw tyObject_Joptions__Bf62ivDFOdoKXzuMmXTKWw;
typedef struct tyTuple__otFEYh4BBZ0y3q0WDtkCOw tyTuple__otFEYh4BBZ0y3q0WDtkCOw;
typedef struct tyTuple__JR0Ke0jOQNp9c7GtCLA6l9bw tyTuple__JR0Ke0jOQNp9c7GtCLA6l9bw;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw {
	NimStringV2 dir;
	NimStringV2 url;
	NimStringV2 commit;
	NimStringV2 version;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
struct tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA {
	NimStringV2 filename;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ content;
};
typedef NU8 tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA;
struct tySequence__UM2HJI1wUigOaSPzL6VC3A {
  NI len; tySequence__UM2HJI1wUigOaSPzL6VC3A_Content* p;
};
struct tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA {
	tySequence__UM2HJI1wUigOaSPzL6VC3A data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__t6JKa4Kdxpc0RJiFEWRI9bw {
  NI len; tySequence__t6JKa4Kdxpc0RJiFEWRI9bw_Content* p;
};
struct tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA {
	NIM_BOOL isUnquoted;
	tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA kind;
union{
	struct {
	NimStringV2 str;
} _kind_1;
	struct {
	NI64 num;
} _kind_2;
	struct {
	NF fnum;
} _kind_3;
	struct {
	NIM_BOOL bval;
} _kind_4;
	struct {
	tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA fields;
} _kind_6;
	struct {
	tySequence__t6JKa4Kdxpc0RJiFEWRI9bw elems;
} _kind_7;
};
};
typedef NU8 tyEnum_EnumMode__SzEOeAZV29bxtRSEwT4jVCA;
typedef NU8 tyEnum_JsonNodeMode__IVcp7Bxa1lbzP5s9ahFgiLQ;
struct tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA {
	tyEnum_EnumMode__SzEOeAZV29bxtRSEwT4jVCA enumMode;
	tyEnum_JsonNodeMode__IVcp7Bxa1lbzP5s9ahFgiLQ jsonNodeMode;
};
struct tySequence__xSWRAcOHDJ9atP6GSXu4rIg {
  NI len; tySequence__xSWRAcOHDJ9atP6GSXu4rIg_Content* p;
};
struct tyObject_OrderedTable__4fqy8hm4AzG4KT0VyQHXkA {
	tySequence__xSWRAcOHDJ9atP6GSXu4rIg data;
	NI counter;
	NI first;
	NI last;
};
struct tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg {
	tyObject_OrderedTable__4fqy8hm4AzG4KT0VyQHXkA items;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimcfg;
	tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA nimbleFile;
	NimStringV2 hostOS;
	NimStringV2 hostCPU;
	NimStringV2 nimVersion;
	NimStringV2 gccVersion;
	NimStringV2 clangVersion;
};
typedef NimStringV2 tyArray__YgExxhfgKcesA5EOUj1MOA[1];
typedef NimStringV2 tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ[2];
struct tyObject_Joptions__Bf62ivDFOdoKXzuMmXTKWw {
	NIM_BOOL allowExtraKeys;
	NIM_BOOL allowMissingKeys;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
struct tyTuple__otFEYh4BBZ0y3q0WDtkCOw {
	NI Field0;
	NI Field1;
	NimStringV2 Field2;
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* Field3;
};
struct tySequence__UM2HJI1wUigOaSPzL6VC3A_Content { NI cap; tyTuple__otFEYh4BBZ0y3q0WDtkCOw data[SEQ_DECL_SIZE]; };
struct tySequence__t6JKa4Kdxpc0RJiFEWRI9bw_Content { NI cap; tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* data[SEQ_DECL_SIZE]; };
struct tyTuple__JR0Ke0jOQNp9c7GtCLA6l9bw {
	NI Field0;
	NI Field1;
	NimStringV2 Field2;
	tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw Field3;
};
struct tySequence__xSWRAcOHDJ9atP6GSXu4rIg_Content { NI cap; tyTuple__JR0Ke0jOQNp9c7GtCLA6l9bw data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2760)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NOCONV(void, deallocShared)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u5582)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__stdZsyncio_u539)(NimStringV2 filename_p0, NimStringV2 content_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, pretty__pureZjson_u4853)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* node_p0, NI indent_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, toJson__basicZlockfiletypes_u4625)(tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg* a_p0, tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA opt_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2754)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA, initToJsonOptions__stdZjsonutils_u33)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZjson_u321)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* dest_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZlockfiletypes_u1134)(tySequence__xSWRAcOHDJ9atP6GSXu4rIg dest_p0);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2188)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, readFile__stdZsyncio_u534)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, parseJson__pureZjson_u5632)(NimStringV2 buffer_p0, NIM_BOOL rawIntegers_p1, NIM_BOOL rawFloats_p2);
N_LIB_PRIVATE N_NIMCALL(void, convertKeyToArray__basicZlockfiletypes_u33)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** jsonTree_p0, NimStringV2* path_p1, NI path_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZjson_u324)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** dest_p0, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* src_p1);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__pureZjson_u3599)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* node_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___pureZjson_u330)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** dest_p0, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___pureZjson_u318)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** dest_p0);
static N_INLINE(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, X5BX5D___pureZjson_u3486)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* node_p0, NimStringV2 name_p1);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u95)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA**, X5BX5D___pureZjson_u3055)(tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA* t_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___pureZjson_u20)(tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA e_p0);
N_LIB_PRIVATE N_NOINLINE(void, raiseFieldErrorStr)(NimStringV2 f_p0, NimStringV2 discVal_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, newJArray__pureZjson_u503)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getStr__pureZjson_u551)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* n_p0, NimStringV2 default_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, substrEq__pureZstrutils_u256)(NimStringV2 s_p0, NI pos_p1, NimStringV2 substr_p2);
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_u9096)(NimStringV2 s_p0, NI first_p1, NI last_p2);
static N_INLINE(NIM_BOOL, nimSubInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__pureZjson_u659)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* father_p0, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* child_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, percent___pureZjson_u2161)(NimStringV2 s_p0);
static N_INLINE(void, X5BX5Deq___pureZjson_u2311)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* obj_p0, NimStringV2 key_p1, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* val_p2);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___pureZjson_u740)(tyObject_OrderedTable__RIgoItpMnyMLlEioBo9bQIA* t_p0, NimStringV2 key_p1, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* val_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, eqdup___pureZjson_u327)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* src_p0);
static N_INLINE(NimStringV2, X5BX5D___basicZgitops_u106)(NimStringV2* s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(void, jsonTo__basicZlockfiletypes_u57)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* b_p0, tyObject_Joptions__Bf62ivDFOdoKXzuMmXTKWw opt_p2, tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg* Result);
static const struct {
  NI cap; NIM_CHAR data[35+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_2 = { 35 | NIM_STRLIT_FLAG, "json.nim(521, 9) `not isNil(node)` " };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_3 = {35, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_2};
static const struct {
  NI cap; NIM_CHAR data[40+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_4 = { 40 | NIM_STRLIT_FLAG, "json.nim(522, 9) `node.kind == JObject` " };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_5 = {40, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_4};
static const struct {
  NI cap; NIM_CHAR data[70+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_6 = { 70 | NIM_STRLIT_FLAG, "field \'fields\' is not accessible for type \'JsonNodeObj\' using \'kind = " };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_7 = {70, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_6};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_8 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_9 = {0, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_8};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_10 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_11 = {1, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_10};
static const struct {
  NI cap; NIM_CHAR data[39+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_16 = { 39 | NIM_STRLIT_FLAG, "json.nim(396, 9) `obj.kind == JObject` " };
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_17 = {39, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_16};
static const NimStringV2 TM__OcL7nrM9aUEOxsGuPfxdwwQ_18 = {70, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_6};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_21 = { 6 | NIM_STRLIT_FLAG, "nimcfg" };
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_23 = { 10 | NIM_STRLIT_FLAG, "nimbleFile" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__OcL7nrM9aUEOxsGuPfxdwwQ_24 = { 7 | NIM_STRLIT_FLAG, "content" };
static NIM_CONST tyArray__YgExxhfgKcesA5EOUj1MOA TM__OcL7nrM9aUEOxsGuPfxdwwQ_20 = {{6, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_21}}
;
static NIM_CONST tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ TM__OcL7nrM9aUEOxsGuPfxdwwQ_22 = {{10, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_23},
{7, (NimStrPayload*)&TM__OcL7nrM9aUEOxsGuPfxdwwQ_24}}
;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4198;
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZlockfiletypes_u508)(tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* dest_p0, tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* src_p1) {
	eqsink___system_u2760((&(*dest_p0).dir), (*src_p1).dir);
	if ((*dest_p0).url.p != (*src_p1).url.p) {	if ((*dest_p0).url.p && !((*dest_p0).url.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.p);
}
	}
(*dest_p0).url.len = (*src_p1).url.len; (*dest_p0).url.p = (*src_p1).url.p;
	if ((*dest_p0).commit.p != (*src_p1).commit.p) {	if ((*dest_p0).commit.p && !((*dest_p0).commit.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).commit.p);
}
	}
(*dest_p0).commit.len = (*src_p1).commit.len; (*dest_p0).commit.p = (*src_p1).commit.p;
	if ((*dest_p0).version.p != (*src_p1).version.p) {	if ((*dest_p0).version.p && !((*dest_p0).version.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).version.p);
}
	}
(*dest_p0).version.len = (*src_p1).version.len; (*dest_p0).version.p = (*src_p1).version.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZlockfiletypes_u496)(tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* dest_p0) {
	(*dest_p0).dir.len = 0; (*dest_p0).dir.p = NIM_NIL;
	(*dest_p0).url.len = 0; (*dest_p0).url.p = NIM_NIL;
	(*dest_p0).commit.len = 0; (*dest_p0).commit.p = NIM_NIL;
	(*dest_p0).version.len = 0; (*dest_p0).version.p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___lockfiles_u6356)(tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA* dest_p0, tyObject_LockedNimbleFile__DOnRVGKM2QMHPTyFu6A1rA* src_p1) {
	eqsink___system_u2760((&(*dest_p0).filename), (*src_p1).filename);
	if ((*dest_p0).content.p != (*src_p1).content.p) {	eqdestroy___system_u5582((*dest_p0).content);
	}
(*dest_p0).content.len = (*src_p1).content.len; (*dest_p0).content.p = (*src_p1).content.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZlockfiletypes_u502)(tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* dest_p0, tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* src_p1) {
	eqcopy___system_u2754((&(*dest_p0).dir), (*src_p1).dir);
	eqcopy___system_u2754((&(*dest_p0).url), (*src_p1).url);
	eqcopy___system_u2754((&(*dest_p0).commit), (*src_p1).commit);
	eqcopy___system_u2754((&(*dest_p0).version), (*src_p1).version);
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZlockfiletypes_u499)(tyObject_LockFileEntry__3L1m2gTVW2cOTqVLqvNEkw* dest_p0) {
	if ((*dest_p0).version.p && !((*dest_p0).version.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).version.p);
}
	if ((*dest_p0).commit.p && !((*dest_p0).commit.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).commit.p);
}
	if ((*dest_p0).url.p && !((*dest_p0).url.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.p);
}
	if ((*dest_p0).dir.p && !((*dest_p0).dir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).dir.p);
}
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4198);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, write__basicZlockfiletypes_u4622)(tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg* lock_p0, NimStringV2 lockFilePath_p1) {
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* colontmpD_;
	NimStringV2 colontmpD__2;
	tyObject_ToJsonOptions__mRkT0c8Ugtl0BxbGElJ1oA T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	T2_ = initToJsonOptions__stdZjsonutils_u33();
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = toJson__basicZlockfiletypes_u4625(lock_p0, T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = pretty__pureZjson_u4853(colontmpD_, ((NI)2));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	writeFile__stdZsyncio_u539(lockFilePath_p1, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
		eqdestroy___pureZjson_u321(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZlockfiletypes_u4587)(tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg* dest_p0) {
	if ((*dest_p0).clangVersion.p && !((*dest_p0).clangVersion.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).clangVersion.p);
}
	if ((*dest_p0).gccVersion.p && !((*dest_p0).gccVersion.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).gccVersion.p);
}
	if ((*dest_p0).nimVersion.p && !((*dest_p0).nimVersion.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimVersion.p);
}
	if ((*dest_p0).hostCPU.p && !((*dest_p0).hostCPU.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).hostCPU.p);
}
	if ((*dest_p0).hostOS.p && !((*dest_p0).hostOS.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).hostOS.p);
}
	eqdestroy___system_u5582((*dest_p0).nimbleFile.content);
	if ((*dest_p0).nimbleFile.filename.p && !((*dest_p0).nimbleFile.filename.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimbleFile.filename.p);
}
	eqdestroy___system_u5582((*dest_p0).nimcfg);
	eqdestroy___basicZlockfiletypes_u1134((*dest_p0).items.data);
}
static N_INLINE(void, nimSetMem__system_u2188)(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_u2188(p_p0, ((int)0), size_p1);
}
static N_INLINE(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA*, X5BX5D___pureZjson_u3486)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* node_p0, NimStringV2 name_p1) {
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* result;
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** T9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!!(!((node_p0 == 0)))) goto LA3_;
		failedAssertImpl__stdZassertions_u95(TM__OcL7nrM9aUEOxsGuPfxdwwQ_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	{
		if (!!(((*node_p0).kind == ((tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA)5)))) goto LA7_;
		failedAssertImpl__stdZassertions_u95(TM__OcL7nrM9aUEOxsGuPfxdwwQ_5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA7_: ;
	if (!(((32 &((NU8)1<<((NU)(((*node_p0).kind))&7U)))!=0))) 	{ raiseFieldErrorStr(TM__OcL7nrM9aUEOxsGuPfxdwwQ_7, dollar___pureZjson_u20((*node_p0).kind)); goto BeforeRet_;
	}
	T9_ = (tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA**)0;
	T9_ = X5BX5D___pureZjson_u3055((&(*node_p0)._kind_6.fields), name_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___pureZjson_u324(&result, (*T9_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) + (NU64)(((NU) (b_p1))))));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (NI)(r_1 ^ a_p0));
		if (T3_) goto LA4_;
		T3_ = (((NI)0) <= (NI)(r_1 ^ b_p1));
LA4_: ;
		if (!T3_) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA1_;
LA5_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	return result;
}
static N_INLINE(NIM_BOOL, nimSubInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) - (NU64)(((NU) (b_p1))))));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (NI)(r_1 ^ a_p0));
		if (T3_) goto LA4_;
		T3_ = (((NI)0) <= (NI)(r_1 ^ (NI)((NU64) ~(b_p1))));
LA4_: ;
		if (!T3_) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA1_;
LA5_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	return result;
}
static N_INLINE(void, X5BX5Deq___pureZjson_u2311)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* obj_p0, NimStringV2 key_p1, tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* val_p2) {
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!!(((*obj_p0).kind == ((tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA)5)))) goto LA3_;
		failedAssertImpl__stdZassertions_u95(TM__OcL7nrM9aUEOxsGuPfxdwwQ_17);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	if (!(((32 &((NU8)1<<((NU)(((*obj_p0).kind))&7U)))!=0))) 	{ raiseFieldErrorStr(TM__OcL7nrM9aUEOxsGuPfxdwwQ_18, dollar___pureZjson_u20((*obj_p0).kind)); goto BeforeRet_;
	}
	colontmpD_ = eqdup___pureZjson_u327(val_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	X5BX5Deq___pureZjson_u740((&(*obj_p0)._kind_6.fields), key_p1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NimStringV2, X5BX5D___basicZgitops_u106)(NimStringV2* s_p0, NI s_p0Len_0, NI i_p1) {
	NimStringV2 result;
	NI TM__OcL7nrM9aUEOxsGuPfxdwwQ_19;
{	result.len = 0; result.p = NIM_NIL;
	if (nimSubInt(s_p0Len_0, i_p1, &TM__OcL7nrM9aUEOxsGuPfxdwwQ_19)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_19) < 0 || (NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_19) >= s_p0Len_0){ raiseIndexError2((NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_19),s_p0Len_0-1); goto BeforeRet_;
	}
	eqcopy___system_u2754((&result), s_p0[(NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_19)]);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, convertKeyToArray__basicZlockfiletypes_u33)(tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA** jsonTree_p0, NimStringV2* path_p1, NI path_p1Len_0) {
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* parent_1;
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* content_1;
NIM_BOOL oldNimErrFin21_;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	parent_1 = NIM_NIL;
	content_1 = NIM_NIL;
	eqcopy___pureZjson_u324(&content_1, (*jsonTree_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2* key_1;
		NI i_1;
		key_1 = (NimStringV2*)0;
		i_1 = ((NI)0);
		{
			while (1) {
				if (!(i_1 < path_p1Len_0)) goto LA4;
				if (i_1 < 0 || i_1 >= path_p1Len_0){ raiseIndexError2(i_1,path_p1Len_0-1); goto LA1_;
				}
				key_1 = (&path_p1[i_1]);
				{
					NIM_BOOL T7_;
					tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* T10_;
					T7_ = (NIM_BOOL)0;
					T7_ = hasKey__pureZjson_u3599(content_1, (*key_1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					if (!T7_) goto LA8_;
					eqsink___pureZjson_u330(&parent_1, content_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqwasMoved___pureZjson_u318(&content_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					T10_ = NIM_NIL;
					T10_ = X5BX5D___pureZjson_u3486(parent_1, (*key_1));
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___pureZjson_u321(T10_); goto LA1_;}
					eqsink___pureZjson_u330(&content_1, T10_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
				goto LA5_;
LA8_: ;
				{
					eqdestroy___pureZjson_u321(content_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___pureZjson_u321(parent_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA5_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	{
		tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* contents_1;
		NimStringV2 colontmpD_;
		if (!((*content_1).kind == ((tyEnum_JsonNodeKind__iWE9brhI8kBHUww4QuE4NFA)4))) goto LA14_;
		contents_1 = NIM_NIL;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		contents_1 = newJArray__pureZjson_u503();
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		{
			NimStringV2 line_1;
			NimStringV2 colontmp_;
			NI sepLen_1;
			NI lastX60gensym41__1;
			NI splitsX60gensym41__1;
			line_1.len = 0; line_1.p = NIM_NIL;
			colontmp_.len = 0; colontmp_.p = NIM_NIL;
			colontmp_ = getStr__pureZjson_u551(content_1, TM__OcL7nrM9aUEOxsGuPfxdwwQ_9);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			sepLen_1 = ((NI)1);
			lastX60gensym41__1 = ((NI)0);
			splitsX60gensym41__1 = ((NI)-1);
			{
				while (1) {
					tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* colontmpD__2;
					NI firstX60gensym41__1;
					NI TM__OcL7nrM9aUEOxsGuPfxdwwQ_13;
					NimStringV2 T31_;
					NI TM__OcL7nrM9aUEOxsGuPfxdwwQ_14;
					NI TM__OcL7nrM9aUEOxsGuPfxdwwQ_15;
					if (!(lastX60gensym41__1 <= colontmp_.len)) goto LA20;
					colontmpD__2 = NIM_NIL;
					firstX60gensym41__1 = lastX60gensym41__1;
					{
						while (1) {
							NIM_BOOL T24_;
							NIM_BOOL T26_;
							NI TM__OcL7nrM9aUEOxsGuPfxdwwQ_12;
							T24_ = (NIM_BOOL)0;
							T24_ = (lastX60gensym41__1 < colontmp_.len);
							if (!(T24_)) goto LA25_;
							T26_ = (NIM_BOOL)0;
							T26_ = substrEq__pureZstrutils_u256(colontmp_, lastX60gensym41__1, TM__OcL7nrM9aUEOxsGuPfxdwwQ_11);
							if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
							T24_ = !(T26_);
LA25_: ;
							if (!T24_) goto LA23;
							if (nimAddInt(lastX60gensym41__1, ((NI)1), &TM__OcL7nrM9aUEOxsGuPfxdwwQ_12)) { raiseOverflow(); goto LA21_;
							};
							lastX60gensym41__1 = (NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_12);
						} LA23: ;
					}
					{
						if (!(splitsX60gensym41__1 == ((NI)0))) goto LA29_;
						lastX60gensym41__1 = colontmp_.len;
					}
LA29_: ;
					if (nimSubInt(lastX60gensym41__1, ((NI)1), &TM__OcL7nrM9aUEOxsGuPfxdwwQ_13)) { raiseOverflow(); goto LA21_;
					};
					T31_.len = 0; T31_.p = NIM_NIL;
					T31_ = substr__system_u9096(colontmp_, firstX60gensym41__1, (NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_13));
					eqsink___system_u2760((&line_1), T31_);
					colontmpD__2 = percent___pureZjson_u2161(line_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
					add__pureZjson_u659(contents_1, colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
					{
						if (!(splitsX60gensym41__1 == ((NI)0))) goto LA34_;
						eqdestroy___pureZjson_u321(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
						goto LA19;
					}
LA34_: ;
					if (nimSubInt(splitsX60gensym41__1, ((NI)1), &TM__OcL7nrM9aUEOxsGuPfxdwwQ_14)) { raiseOverflow(); goto LA21_;
					};
					splitsX60gensym41__1 = (NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_14);
					if (nimAddInt(lastX60gensym41__1, sepLen_1, &TM__OcL7nrM9aUEOxsGuPfxdwwQ_15)) { raiseOverflow(); goto LA21_;
					};
					lastX60gensym41__1 = (NI)(TM__OcL7nrM9aUEOxsGuPfxdwwQ_15);
					{
						LA21_:;
					}
					{
						oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___pureZjson_u321(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
						*nimErr_ = oldNimErrFin21_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
				} LA20: ;
			} LA19: ;
			{
				LA18_:;
			}
			{
				if (colontmp_.p && !(colontmp_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmp_.p);
}
				if (line_1.p && !(line_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(line_1.p);
}
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		}
		colontmpD_ = X5BX5D___basicZgitops_u106(path_p1, path_p1Len_0, ((NI)1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		X5BX5Deq___pureZjson_u2311(parent_1, colontmpD_, contents_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		{
			LA16_:;
		}
		{
			oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
			if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
			eqdestroy___pureZjson_u321(contents_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin16_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA14_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___pureZjson_u321(content_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___pureZjson_u321(parent_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, readLockFile__basicZlockfiletypes_u52)(NimStringV2 filename_p0, tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg* Result) {
	NimStringV2 jsonAsStr_1;
	tyObject_JsonNodeObj__bQ2G262bsUg9ad9bFtUdEj9aA* jsonTree_1;
	tyObject_Joptions__Bf62ivDFOdoKXzuMmXTKWw T2_;
	tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg T3_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)Result, sizeof(tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg));
	jsonAsStr_1.len = 0; jsonAsStr_1.p = NIM_NIL;
	jsonTree_1 = NIM_NIL;
	jsonAsStr_1 = readFile__stdZsyncio_u534(filename_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	jsonTree_1 = parseJson__pureZjson_u5632(jsonAsStr_1, NIM_FALSE, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	convertKeyToArray__basicZlockfiletypes_u33(&jsonTree_1, TM__OcL7nrM9aUEOxsGuPfxdwwQ_20, 1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	convertKeyToArray__basicZlockfiletypes_u33(&jsonTree_1, TM__OcL7nrM9aUEOxsGuPfxdwwQ_22, 2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_.allowExtraKeys = NIM_TRUE;
	T2_.allowMissingKeys = NIM_TRUE;
	nimZeroMem((void*)(&T3_), sizeof(tyObject_LockFile__WA8vW9c9bJ5QV3WCCLL8vZZg));
	jsonTo__basicZlockfiletypes_u57(jsonTree_1, T2_, (&T3_));
	(*Result) = T3_;
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___pureZjson_u321(jsonTree_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (jsonAsStr_1.p && !(jsonAsStr_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(jsonAsStr_1.p);
}
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
