/* 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@sdeptypes.nim.c.o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@mbasic@sdeptypes.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_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA;
typedef struct tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_Uri__MX62yCLGQmnfVYEE3Hjm9cA tyObject_Uri__MX62yCLGQmnfVYEE3Hjm9cA;
typedef struct tyObject_OrderedTable__6LH0iEO9c9cdi0YrUiH7Mtdg tyObject_OrderedTable__6LH0iEO9c9cdi0YrUiH7Mtdg;
typedef struct tySequence__jlOSbs9c7TpYbYckLycDaQg tySequence__jlOSbs9c7TpYbYckLycDaQg;
typedef struct tySequence__jlOSbs9c7TpYbYckLycDaQg_Content tySequence__jlOSbs9c7TpYbYckLycDaQg_Content;
typedef struct tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA;
typedef struct tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA;
typedef struct tyObject_VersionTag__io9bcihbopiwucKorobyKdg tyObject_VersionTag__io9bcihbopiwucKorobyKdg;
typedef struct tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__Cv9czsNzurrmCo02svI9bGaw tySequence__Cv9czsNzurrmCo02svI9bGaw;
typedef struct tySequence__Cv9czsNzurrmCo02svI9bGaw_Content tySequence__Cv9czsNzurrmCo02svI9bGaw_Content;
typedef struct tyObject_Table__chgX4ZRn9aA0cwNzdIgL9a3w tyObject_Table__chgX4ZRn9aA0cwNzdIgL9a3w;
typedef struct tySequence__5tFKfHpt6l4YRslMO5BC9aA tySequence__5tFKfHpt6l4YRslMO5BC9aA;
typedef struct tySequence__5tFKfHpt6l4YRslMO5BC9aA_Content tySequence__5tFKfHpt6l4YRslMO5BC9aA_Content;
typedef struct tyObject_Table__RkXBcORzX4aZm9bJbtHRiMA tyObject_Table__RkXBcORzX4aZm9bJbtHRiMA;
typedef struct tySequence__eDvmA6YdVXqDawROf8i9aCg tySequence__eDvmA6YdVXqDawROf8i9aCg;
typedef struct tySequence__eDvmA6YdVXqDawROf8i9aCg_Content tySequence__eDvmA6YdVXqDawROf8i9aCg_Content;
typedef struct tyObject_Table__k9b9b9a4QBdl9cae9coIuQmAotQ tyObject_Table__k9b9b9a4QBdl9cae9coIuQmAotQ;
typedef struct tyTuple__XXBtNszxg1rbD9cnycyLK7A tyTuple__XXBtNszxg1rbD9cnycyLK7A;
typedef struct tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA;
typedef struct tyObject_VersionReq__eFOT6plIfXH54d8sBkqpng tyObject_VersionReq__eFOT6plIfXH54d8sBkqpng;
typedef struct tyObject_NimRawSeq__8ODFhI7GYUKt9cpVXMRXb9bQ tyObject_NimRawSeq__8ODFhI7GYUKt9cpVXMRXb9bQ;
typedef struct tyTuple__J4qYjN1oh0iSNXduwGtAfg tyTuple__J4qYjN1oh0iSNXduwGtAfg;
typedef struct tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw;
typedef struct tyObject_OrderedTable__NAaHKPe5f6Y5G54ThvHCdw tyObject_OrderedTable__NAaHKPe5f6Y5G54ThvHCdw;
typedef struct tySequence__oMQEWXk5BpYjO5RbdjG9a1Q tySequence__oMQEWXk5BpYjO5RbdjG9a1Q;
typedef struct tySequence__oMQEWXk5BpYjO5RbdjG9a1Q_Content tySequence__oMQEWXk5BpYjO5RbdjG9a1Q_Content;
typedef struct tyTuple__GSIE033wnKaKWLU68PPv9cA tyTuple__GSIE033wnKaKWLU68PPv9cA;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__SgjupenGH7y9bVV9aV67zqsw tyTuple__SgjupenGH7y9bVV9aV67zqsw;
typedef struct tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tyTuple__DuXgJ7FhP2gM03hW7KEKAA tyTuple__DuXgJ7FhP2gM03hW7KEKAA;
typedef struct tyTuple__P9b03d79atTGoSs9bM2vK9bPRA tyTuple__P9b03d79atTGoSs9bM2vK9bPRA;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
	NimStringV2 Field0;
	NimStringV2 Field1;
	NimStringV2 Field2;
};
struct tyObject_Uri__MX62yCLGQmnfVYEE3Hjm9cA {
	NimStringV2 scheme;
	NimStringV2 username;
	NimStringV2 password;
	NimStringV2 hostname;
	NimStringV2 port;
	NimStringV2 path;
	NimStringV2 query;
	NimStringV2 anchor;
	NIM_BOOL opaque;
	NIM_BOOL isIpv6;
};
struct tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw {
	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg qualifiedName;
	NIM_BOOL hasShortName;
	tyObject_Uri__MX62yCLGQmnfVYEE3Hjm9cA u;
};
typedef NU8 tyEnum_PackageState__INzfBajphYPGcwu72ccy8w;
struct tySequence__jlOSbs9c7TpYbYckLycDaQg {
  NI len; tySequence__jlOSbs9c7TpYbYckLycDaQg_Content* p;
};
struct tyObject_OrderedTable__6LH0iEO9c9cdi0YrUiH7Mtdg {
	tySequence__jlOSbs9c7TpYbYckLycDaQg data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tyEnum_CommitOrigin__tDM8mWEQT3dZtKoOj7Mgww;
struct tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA {
	NimStringV2 h;
	tyEnum_CommitOrigin__tDM8mWEQT3dZtKoOj7Mgww orig;
};
struct tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA {
	tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw url;
	tyEnum_PackageState__INzfBajphYPGcwu72ccy8w state;
	tyObject_OrderedTable__6LH0iEO9c9cdi0YrUiH7Mtdg versions;
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* activeVersion;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ activeFeatures;
	NimStringV2 module;
	NimStringV2 ondisk;
	NimStringV2 nimbleFile;
	NIM_BOOL active;
	NIM_BOOL isAtlasProject;
	NIM_BOOL isFork;
	NIM_BOOL isRoot;
	NIM_BOOL isLocalOnly;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ errors;
	tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA originHead;
};
struct tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA {
	NI rc;
	NI rootIdx;
};
struct tyObject_VersionTag__io9bcihbopiwucKorobyKdg {
	tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA c;
	NimStringV2 v;
	NIM_BOOL isTip;
};
struct tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg {
	tyObject_VersionTag__io9bcihbopiwucKorobyKdg vtag;
	NI32 vid;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
typedef NU8 tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg;
struct tySequence__Cv9czsNzurrmCo02svI9bGaw {
  NI len; tySequence__Cv9czsNzurrmCo02svI9bGaw_Content* p;
};
struct tySequence__5tFKfHpt6l4YRslMO5BC9aA {
  NI len; tySequence__5tFKfHpt6l4YRslMO5BC9aA_Content* p;
};
struct tyObject_Table__chgX4ZRn9aA0cwNzdIgL9a3w {
	tySequence__5tFKfHpt6l4YRslMO5BC9aA data;
	NI counter;
};
struct tySequence__eDvmA6YdVXqDawROf8i9aCg {
  NI len; tySequence__eDvmA6YdVXqDawROf8i9aCg_Content* p;
};
struct tyObject_Table__RkXBcORzX4aZm9bJbtHRiMA {
	tySequence__eDvmA6YdVXqDawROf8i9aCg data;
	NI counter;
};
struct tyObject_Table__k9b9b9a4QBdl9cae9coIuQmAotQ {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
struct tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw {
	NimStringV2 version;
	NimStringV2 nimVersion;
	tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg status;
	tySequence__Cv9czsNzurrmCo02svI9bGaw requirements;
	tyObject_Table__chgX4ZRn9aA0cwNzdIgL9a3w reqsByFeatures;
	NIM_BOOL hasInstallHooks;
	NimStringV2 srcDir;
	NimStringV2 err;
	tyObject_Table__RkXBcORzX4aZm9bJbtHRiMA features;
	tyObject_Table__k9b9b9a4QBdl9cae9coIuQmAotQ featureVars;
};
typedef NU8 tyEnum_VersionRelation__4XquEtylWSi3MRH9c7xlRFw;
struct tyObject_VersionReq__eFOT6plIfXH54d8sBkqpng {
	tyEnum_VersionRelation__4XquEtylWSi3MRH9c7xlRFw r;
	NimStringV2 v;
};
struct tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA {
	tyObject_VersionReq__eFOT6plIfXH54d8sBkqpng a;
	tyObject_VersionReq__eFOT6plIfXH54d8sBkqpng b;
	NIM_BOOL isInterval;
};
struct tyTuple__XXBtNszxg1rbD9cnycyLK7A {
	tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw Field0;
	tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA Field1;
};
struct tyObject_NimRawSeq__8ODFhI7GYUKt9cpVXMRXb9bQ {
	NI len;
	void* p;
};
struct tyTuple__J4qYjN1oh0iSNXduwGtAfg {
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* Field0;
	tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* Field1;
};
typedef NU8 tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw;
struct tySequence__oMQEWXk5BpYjO5RbdjG9a1Q {
  NI len; tySequence__oMQEWXk5BpYjO5RbdjG9a1Q_Content* p;
};
struct tyObject_OrderedTable__NAaHKPe5f6Y5G54ThvHCdw {
	tySequence__oMQEWXk5BpYjO5RbdjG9a1Q data;
	NI counter;
	NI first;
	NI last;
};
struct tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw {
	tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw mode;
	tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* root;
	tyObject_OrderedTable__NAaHKPe5f6Y5G54ThvHCdw pkgs;
};
struct tyTuple__GSIE033wnKaKWLU68PPv9cA {
	NI Field0;
	NI Field1;
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* Field2;
	tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* Field3;
};
struct tySequence__jlOSbs9c7TpYbYckLycDaQg_Content { NI cap; tyTuple__GSIE033wnKaKWLU68PPv9cA data[SEQ_DECL_SIZE]; };
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
	NI Field0;
	NimStringV2 Field1;
	NI32 Field2;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; };
struct tySequence__Cv9czsNzurrmCo02svI9bGaw_Content { NI cap; tyTuple__XXBtNszxg1rbD9cnycyLK7A data[SEQ_DECL_SIZE]; };
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q {
	tySequence__4eRCaZmrYLLw2k30GPTiMw data;
	NI counter;
};
struct tyTuple__SgjupenGH7y9bVV9aV67zqsw {
	NI Field0;
	tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw Field1;
	tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q Field2;
};
struct tySequence__5tFKfHpt6l4YRslMO5BC9aA_Content { NI cap; tyTuple__SgjupenGH7y9bVV9aV67zqsw data[SEQ_DECL_SIZE]; };
struct tyTuple__DuXgJ7FhP2gM03hW7KEKAA {
	NI Field0;
	NimStringV2 Field1;
	tySequence__Cv9czsNzurrmCo02svI9bGaw Field2;
};
struct tySequence__eDvmA6YdVXqDawROf8i9aCg_Content { NI cap; tyTuple__DuXgJ7FhP2gM03hW7KEKAA data[SEQ_DECL_SIZE]; };
struct tyTuple__P9b03d79atTGoSs9bM2vK9bPRA {
	NI Field0;
	NI Field1;
	tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw Field2;
	tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* Field3;
};
struct tySequence__oMQEWXk5BpYjO5RbdjG9a1Q_Content { NI cap; tyTuple__P9b03d79atTGoSs9bM2vK9bPRA data[SEQ_DECL_SIZE]; };
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
	NI Field0;
	NimStringV2 Field1;
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NOCONV(void, deallocShared)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u5582)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p_p0);
static N_INLINE(NI, minuspercent___system_u813)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u124)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u880)(tySequence__jlOSbs9c7TpYbYckLycDaQg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u1255)(tySequence__7lEisrXlQEzwtUKW5pzRCw dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u1103)(tySequence__eDvmA6YdVXqDawROf8i9aCg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p_p0, NI align_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u924)(tySequence__5tFKfHpt6l4YRslMO5BC9aA dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u284)(tySequence__Cv9czsNzurrmCo02svI9bGaw dest_p0);
static N_INLINE(void, nimIncRef)(void* p_p0);
static N_INLINE(NI, pluspercent___system_u793)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZnimblecontext_u3603)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, projectName__basicZpkgurls_u35)(tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw* u_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, fullName__basicZpkgurls_u29)(tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw* u_p0);
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZversions_u5268)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* v_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___basicZversions_u5272)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* a_p0, tyObject_VersionTag__io9bcihbopiwucKorobyKdg* b_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u902)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObjUninit)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___basicZversions_u3515)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* src_p0, tyObject_VersionTag__io9bcihbopiwucKorobyKdg* Result);
N_LIB_PRIVATE N_NIMCALL(void, setLen__basicZdeptypes_u305)(tySequence__Cv9czsNzurrmCo02svI9bGaw* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, eqdup___system_u2757)(NimStringV2 src_p0);
static N_INLINE(NIM_BOOL, sameSeqPayload)(void* x_p0, void* y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2754)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(NI, emarkamp___pureZhashes_u4)(NI h_p0, NI val_p1);
N_LIB_PRIVATE N_NIMCALL(NI, hash__pureZhashes_u586)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZdeptypes_u209)(tyTuple__XXBtNszxg1rbD9cnycyLK7A* x_p0, NI x_p0Len_0);
static N_INLINE(NI, hash__basicZversions_u440)(NIM_BOOL x_p0);
static N_INLINE(NI, hashWangYi1__pureZhashes_u139)(NU64 x_p0);
static N_INLINE(NU64, hiXorLo__pureZhashes_u80)(NU64 a_p0, NU64 b_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u31)(tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg e_p0);
static N_INLINE(NI, emarkdollar___pureZhashes_u19)(NI h_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___basicZversions_u359)(NimStringV2 a_p0, NimStringV2 b_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___basicZdeptypes_u460)(tySequence__Cv9czsNzurrmCo02svI9bGaw x_p0, tySequence__Cv9czsNzurrmCo02svI9bGaw y_p1);
static N_INLINE(NIM_BOOL, eqeq___stdZpaths_u59)(NimStringV2 x_p0, NimStringV2 y_p1);
N_LIB_PRIVATE N_NIMCALL(NI, noscmpPaths)(NimStringV2 pathA_p0, NimStringV2 pathB_p1);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1763)(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(NimStringV2, dollar___basicZversions_u187)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* vt_p0);
N_LIB_PRIVATE N_NIMCALL(NI, sortVersionsDesc__basicZversions_u367)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* a_p0, tyObject_VersionTag__io9bcihbopiwucKorobyKdg* b_p1);
N_LIB_PRIVATE N_NIMCALL(NI, sortVersionsAsc__basicZversions_u363)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* a_p0, tyObject_VersionTag__io9bcihbopiwucKorobyKdg* b_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matches__basicZversions_u5187)(tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA* pattern_p0, tyObject_VersionTag__io9bcihbopiwucKorobyKdg* x_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, version__basicZversions_u196)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* vt_p0);
static N_INLINE(NI, hash__basicZpkgurls_u50)(tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw* a_p0);
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZpkgurls_u53)(tyObject_Uri__MX62yCLGQmnfVYEE3Hjm9cA* x_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZnimblecontext_u3582)(tySequence__oMQEWXk5BpYjO5RbdjG9a1Q 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(tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA, commit__basicZversions_u193)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* vt_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZnimblecontext_u3585)(tySequence__oMQEWXk5BpYjO5RbdjG9a1Q* dest_p0, tySequence__oMQEWXk5BpYjO5RbdjG9a1Q src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u151)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg** dest_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u1635)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw** dest_p0, tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw**, X5BX5D___basicZdeptypes_u621)(tyObject_OrderedTable__6LH0iEO9c9cdi0YrUiH7Mtdg* t_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* key_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u148)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* dest_p0);
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_2 = { 3 | NIM_STRLIT_FLAG, "nil" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_3 = {3, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_2};
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_4 = { 14 | NIM_STRLIT_FLAG, "NotInitialized" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_5 = {14, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_4};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_6 = { 12 | NIM_STRLIT_FLAG, "LazyDeferred" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_7 = {12, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_6};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_8 = { 6 | NIM_STRLIT_FLAG, "DoLoad" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_9 = {6, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_8};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_10 = { 5 | NIM_STRLIT_FLAG, "Found" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_11 = {5, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_10};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_12 = { 9 | NIM_STRLIT_FLAG, "Processed" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_13 = {9, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_12};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_14 = { 5 | NIM_STRLIT_FLAG, "Error" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_15 = {5, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_14};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_16 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_17 = {0, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_16};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_18 = { 6 | NIM_STRLIT_FLAG, "Normal" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_19 = {6, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_18};
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_20 = { 13 | NIM_STRLIT_FLAG, "HasBrokenRepo" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_21 = {13, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_20};
static const struct {
  NI cap; NIM_CHAR data[19+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_22 = { 19 | NIM_STRLIT_FLAG, "HasBrokenNimbleFile" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_23 = {19, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_22};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_24 = { 16 | NIM_STRLIT_FLAG, "HasBrokenRelease" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_25 = {16, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_24};
static const struct {
  NI cap; NIM_CHAR data[20+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_26 = { 20 | NIM_STRLIT_FLAG, "HasUnknownNimbleFile" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_27 = {20, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_26};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_28 = { 12 | NIM_STRLIT_FLAG, "HasBrokenDep" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_29 = {12, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_28};
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_30 = {0, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_16};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_31 = { 11 | NIM_STRLIT_FLAG, "AllReleases" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_32 = {11, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_31};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_33 = { 16 | NIM_STRLIT_FLAG, "ExplicitVersions" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_34 = {16, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_33};
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__REOfvZ4AYNSjcZjSlQe6SQ_35 = { 13 | NIM_STRLIT_FLAG, "CurrentCommit" };
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_36 = {13, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_35};
static const NimStringV2 TM__REOfvZ4AYNSjcZjSlQe6SQ_37 = {0, (NimStrPayload*)&TM__REOfvZ4AYNSjcZjSlQe6SQ_16};
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4198;
static N_INLINE(NI, minuspercent___system_u813)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU64)(((NU) (x_p0))) - (NU64)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p_p0) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u813(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA*) (T5_));
		{
			if (!((NI)((NI64)((*cell_1).rc) >> (NU64)(((NI)4) & (64 - 1))) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u813((*cell_1).rc, ((NI)16));
		}
LA6_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u124)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* dest_p0) {
	if ((*dest_p0).vtag.v.p && !((*dest_p0).vtag.v.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).vtag.v.p);
}
	if ((*dest_p0).vtag.c.h.p && !((*dest_p0).vtag.c.h.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).vtag.c.h.p);
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u284)(tySequence__Cv9czsNzurrmCo02svI9bGaw dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			if (dest_p0.p->data[colontmp_].Field0.u.anchor.p && !(dest_p0.p->data[colontmp_].Field0.u.anchor.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.anchor.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.query.p && !(dest_p0.p->data[colontmp_].Field0.u.query.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.query.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.path.p && !(dest_p0.p->data[colontmp_].Field0.u.path.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.path.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.port.p && !(dest_p0.p->data[colontmp_].Field0.u.port.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.port.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.hostname.p && !(dest_p0.p->data[colontmp_].Field0.u.hostname.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.hostname.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.password.p && !(dest_p0.p->data[colontmp_].Field0.u.password.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.password.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.username.p && !(dest_p0.p->data[colontmp_].Field0.u.username.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.username.p);
}
			if (dest_p0.p->data[colontmp_].Field0.u.scheme.p && !(dest_p0.p->data[colontmp_].Field0.u.scheme.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.u.scheme.p);
}
			if (dest_p0.p->data[colontmp_].Field0.qualifiedName.Field0.p && !(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field0.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field0.p);
}
			if (dest_p0.p->data[colontmp_].Field0.qualifiedName.Field1.p && !(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field1.p);
}
			if (dest_p0.p->data[colontmp_].Field0.qualifiedName.Field2.p && !(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field0.qualifiedName.Field2.p);
}
			if (dest_p0.p->data[colontmp_].Field1.b.v.p && !(dest_p0.p->data[colontmp_].Field1.b.v.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field1.b.v.p);
}
			if (dest_p0.p->data[colontmp_].Field1.a.v.p && !(dest_p0.p->data[colontmp_].Field1.a.v.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].Field1.a.v.p);
}
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyTuple__XXBtNszxg1rbD9cnycyLK7A));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u902)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* dest_p0) {
	eqdestroy___basicZdeptypes_u1255((*dest_p0).featureVars.data);
	eqdestroy___basicZdeptypes_u1103((*dest_p0).features.data);
	if ((*dest_p0).err.p && !((*dest_p0).err.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).err.p);
}
	if ((*dest_p0).srcDir.p && !((*dest_p0).srcDir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).srcDir.p);
}
	eqdestroy___basicZdeptypes_u924((*dest_p0).reqsByFeatures.data);
	eqdestroy___basicZdeptypes_u284((*dest_p0).requirements);
	if ((*dest_p0).nimVersion.p && !((*dest_p0).nimVersion.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimVersion.p);
}
	if ((*dest_p0).version.p && !((*dest_p0).version.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).version.p);
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZnimblecontext_u3603)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* dest_p0) {
	if ((*dest_p0).originHead.h.p && !((*dest_p0).originHead.h.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).originHead.h.p);
}
	eqdestroy___system_u5582((*dest_p0).errors);
	if ((*dest_p0).nimbleFile.p && !((*dest_p0).nimbleFile.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimbleFile.p);
}
	if ((*dest_p0).ondisk.p && !((*dest_p0).ondisk.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).ondisk.p);
}
	if ((*dest_p0).module.p && !((*dest_p0).module.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).module.p);
}
	eqdestroy___system_u5582((*dest_p0).activeFeatures);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0).activeVersion);
		if (!T3_) goto LA4_;
		eqdestroy___basicZdeptypes_u124((&(*(*dest_p0).activeVersion)));
		nimRawDispose((*dest_p0).activeVersion, ((NI)8));
	}
LA4_: ;
	eqdestroy___basicZdeptypes_u880((*dest_p0).versions.data);
	if ((*dest_p0).url.u.anchor.p && !((*dest_p0).url.u.anchor.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.anchor.p);
}
	if ((*dest_p0).url.u.query.p && !((*dest_p0).url.u.query.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.query.p);
}
	if ((*dest_p0).url.u.path.p && !((*dest_p0).url.u.path.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.path.p);
}
	if ((*dest_p0).url.u.port.p && !((*dest_p0).url.u.port.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.port.p);
}
	if ((*dest_p0).url.u.hostname.p && !((*dest_p0).url.u.hostname.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.hostname.p);
}
	if ((*dest_p0).url.u.password.p && !((*dest_p0).url.u.password.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.password.p);
}
	if ((*dest_p0).url.u.username.p && !((*dest_p0).url.u.username.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.username.p);
}
	if ((*dest_p0).url.u.scheme.p && !((*dest_p0).url.u.scheme.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.u.scheme.p);
}
	if ((*dest_p0).url.qualifiedName.Field0.p && !((*dest_p0).url.qualifiedName.Field0.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.qualifiedName.Field0.p);
}
	if ((*dest_p0).url.qualifiedName.Field1.p && !((*dest_p0).url.qualifiedName.Field1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.qualifiedName.Field1.p);
}
	if ((*dest_p0).url.qualifiedName.Field2.p && !((*dest_p0).url.qualifiedName.Field2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).url.qualifiedName.Field2.p);
}
}
static N_INLINE(NI, pluspercent___system_u793)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU64)(((NU) (x_p0))) + (NU64)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(void, nimIncRef)(void* p_p0) {
	NI T1_;
	NI T2_;
	T1_ = (NI)0;
	T1_ = minuspercent___system_u813(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
	T2_ = (NI)0;
	T2_ = minuspercent___system_u813(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
	(*((tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA*) (T1_))).rc = pluspercent___system_u793((*((tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA*) (T2_))).rc, ((NI)16));
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA*, eqdup___basicZdepgraphtypes_u564)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* src_p0) {
	tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* result;
	result = src_p0;
	{
		if (!src_p0) goto LA3_;
		nimIncRef(src_p0);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZdepgraphtypes_u567)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA** dest_p0, tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* src_p1) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0));
		if (!T3_) goto LA4_;
		eqdestroy___basicZnimblecontext_u3603((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA4_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZdepgraphtypes_u555)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA** dest_p0) {
	(*dest_p0) = 0;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4198);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, projectName__basicZdeptypes_u195)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* d_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = projectName__basicZpkgurls_u35((&(*d_p0).url));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdepgraphtypes_u561)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA** dest_p0, tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* src_p1) {
	{
		if (!src_p1) goto LA3_;
		nimIncRef(src_p1);
	}
LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLast((*dest_p0));
		if (!T7_) goto LA8_;
		eqdestroy___basicZnimblecontext_u3603((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA8_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdepgraphtypes_u558)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast(dest_p0);
		if (!T3_) goto LA4_;
		eqdestroy___basicZnimblecontext_u3603((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toReporterName__basicZdeptypes_u1654)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* pkg_p0) {
	NimStringV2 result;
	NimStringV2 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	{
		if (!(pkg_p0 == 0)) goto LA4_;
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_3;
	}
	goto LA2_;
LA4_: ;
	{
		result = fullName__basicZpkgurls_u29((&(*pkg_p0).url));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA2_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u22)(tyEnum_PackageState__INzfBajphYPGcwu72ccy8w e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)0):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_5;
	}
	break;
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)1):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_7;
	}
	break;
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)2):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_9;
	}
	break;
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)3):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_11;
	}
	break;
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)4):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_13;
	}
	break;
	case ((tyEnum_PackageState__INzfBajphYPGcwu72ccy8w)5):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_15;
	}
	break;
	default:
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_17;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u31)(tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)0):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_19;
	}
	break;
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)1):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_21;
	}
	break;
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)2):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_23;
	}
	break;
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)3):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_25;
	}
	break;
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)4):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_27;
	}
	break;
	case ((tyEnum_ReleaseStatus__WQoraXO80GBXtge9ad8aCBg)5):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_29;
	}
	break;
	default:
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_30;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZdeptypes_u554)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* r_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = hash__basicZversions_u5268((&(*r_p0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___basicZdeptypes_u557)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* a_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* b_p1) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	result = eqeq___basicZversions_u5272((&(*a_p0).vtag), (&(*b_p1).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZdeptypes_u1641)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw** dest_p0, tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* src_p1) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0));
		if (!T3_) goto LA4_;
		eqdestroy___basicZdeptypes_u902((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA4_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u151)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg** dest_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* src_p1) {
	{
		if (!src_p1) goto LA3_;
		nimIncRef(src_p1);
	}
LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLast((*dest_p0));
		if (!T7_) goto LA8_;
		eqdestroy___basicZdeptypes_u124((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA8_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZdeptypes_u145)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg** dest_p0) {
	(*dest_p0) = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZdeptypes_u1629)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw** dest_p0) {
	(*dest_p0) = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u148)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast(dest_p0);
		if (!T3_) goto LA4_;
		eqdestroy___basicZdeptypes_u124((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg*, toPkgVer__basicZdeptypes_u118)(tyObject_VersionTag__io9bcihbopiwucKorobyKdg* vtag_p0) {
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* result;
	tyObject_VersionTag__io9bcihbopiwucKorobyKdg colontmpD_;
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* T1_;
	T1_ = NIM_NIL;
	T1_ = (tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg*) nimNewObjUninit(sizeof(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg), NIM_ALIGNOF(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg));
	eqdup___basicZversions_u3515(vtag_p0, (&colontmpD_));
	(*T1_).vtag = colontmpD_;
	(*T1_).vid = ((NI32)-1);
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u192)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* d_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = projectName__basicZpkgurls_u35((&(*d_p0).url));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZdeptypes_u293)(tySequence__Cv9czsNzurrmCo02svI9bGaw* dest_p0, tySequence__Cv9czsNzurrmCo02svI9bGaw src_p1) {
	if ((*dest_p0).p != src_p1.p) {	eqdestroy___basicZdeptypes_u284((*dest_p0));
	}
(*dest_p0).len = src_p1.len; (*dest_p0).p = src_p1.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZdeptypes_u281)(tySequence__Cv9czsNzurrmCo02svI9bGaw* dest_p0) {
	(*dest_p0).len = 0; (*dest_p0).p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u350)(tyTuple__XXBtNszxg1rbD9cnycyLK7A* dest_p0) {
	if ((*dest_p0).Field0.u.anchor.p && !((*dest_p0).Field0.u.anchor.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.anchor.p);
}
	if ((*dest_p0).Field0.u.query.p && !((*dest_p0).Field0.u.query.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.query.p);
}
	if ((*dest_p0).Field0.u.path.p && !((*dest_p0).Field0.u.path.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.path.p);
}
	if ((*dest_p0).Field0.u.port.p && !((*dest_p0).Field0.u.port.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.port.p);
}
	if ((*dest_p0).Field0.u.hostname.p && !((*dest_p0).Field0.u.hostname.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.hostname.p);
}
	if ((*dest_p0).Field0.u.password.p && !((*dest_p0).Field0.u.password.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.password.p);
}
	if ((*dest_p0).Field0.u.username.p && !((*dest_p0).Field0.u.username.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.username.p);
}
	if ((*dest_p0).Field0.u.scheme.p && !((*dest_p0).Field0.u.scheme.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.u.scheme.p);
}
	if ((*dest_p0).Field0.qualifiedName.Field0.p && !((*dest_p0).Field0.qualifiedName.Field0.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.qualifiedName.Field0.p);
}
	if ((*dest_p0).Field0.qualifiedName.Field1.p && !((*dest_p0).Field0.qualifiedName.Field1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.qualifiedName.Field1.p);
}
	if ((*dest_p0).Field0.qualifiedName.Field2.p && !((*dest_p0).Field0.qualifiedName.Field2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field0.qualifiedName.Field2.p);
}
	if ((*dest_p0).Field1.b.v.p && !((*dest_p0).Field1.b.v.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field1.b.v.p);
}
	if ((*dest_p0).Field1.a.v.p && !((*dest_p0).Field1.a.v.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).Field1.a.v.p);
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___basicZdeptypes_u347)(tyTuple__XXBtNszxg1rbD9cnycyLK7A* dest_p0) {
	(*dest_p0).Field0.qualifiedName.Field0.len = 0; (*dest_p0).Field0.qualifiedName.Field0.p = NIM_NIL;
	(*dest_p0).Field0.qualifiedName.Field1.len = 0; (*dest_p0).Field0.qualifiedName.Field1.p = NIM_NIL;
	(*dest_p0).Field0.qualifiedName.Field2.len = 0; (*dest_p0).Field0.qualifiedName.Field2.p = NIM_NIL;
	(*dest_p0).Field0.hasShortName = 0;
	(*dest_p0).Field0.u.scheme.len = 0; (*dest_p0).Field0.u.scheme.p = NIM_NIL;
	(*dest_p0).Field0.u.username.len = 0; (*dest_p0).Field0.u.username.p = NIM_NIL;
	(*dest_p0).Field0.u.password.len = 0; (*dest_p0).Field0.u.password.p = NIM_NIL;
	(*dest_p0).Field0.u.hostname.len = 0; (*dest_p0).Field0.u.hostname.p = NIM_NIL;
	(*dest_p0).Field0.u.port.len = 0; (*dest_p0).Field0.u.port.p = NIM_NIL;
	(*dest_p0).Field0.u.path.len = 0; (*dest_p0).Field0.u.path.p = NIM_NIL;
	(*dest_p0).Field0.u.query.len = 0; (*dest_p0).Field0.u.query.p = NIM_NIL;
	(*dest_p0).Field0.u.anchor.len = 0; (*dest_p0).Field0.u.anchor.p = NIM_NIL;
	(*dest_p0).Field0.u.opaque = 0;
	(*dest_p0).Field0.u.isIpv6 = 0;
	(*dest_p0).Field1.a.r = 0;
	(*dest_p0).Field1.a.v.len = 0; (*dest_p0).Field1.a.v.p = NIM_NIL;
	(*dest_p0).Field1.b.r = 0;
	(*dest_p0).Field1.b.v.len = 0; (*dest_p0).Field1.b.v.p = NIM_NIL;
	(*dest_p0).Field1.isInterval = 0;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__Cv9czsNzurrmCo02svI9bGaw, eqdup___basicZdeptypes_u290)(tySequence__Cv9czsNzurrmCo02svI9bGaw src_p0) {
	tySequence__Cv9czsNzurrmCo02svI9bGaw result;
	NI T1_;
	NI colontmp_;
	result.len = 0; result.p = NIM_NIL;
	T1_ = src_p0.len;
	setLen__basicZdeptypes_u305((&result), T1_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T4_;
			T4_ = result.len;
			if (!(colontmp_ < T4_)) goto LA3;
			result.p->data[colontmp_].Field0.qualifiedName.Field0 = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.qualifiedName.Field0);
			result.p->data[colontmp_].Field0.qualifiedName.Field1 = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.qualifiedName.Field1);
			result.p->data[colontmp_].Field0.qualifiedName.Field2 = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.qualifiedName.Field2);
			result.p->data[colontmp_].Field0.hasShortName = src_p0.p->data[colontmp_].Field0.hasShortName;
			result.p->data[colontmp_].Field0.u.scheme = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.scheme);
			result.p->data[colontmp_].Field0.u.username = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.username);
			result.p->data[colontmp_].Field0.u.password = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.password);
			result.p->data[colontmp_].Field0.u.hostname = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.hostname);
			result.p->data[colontmp_].Field0.u.port = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.port);
			result.p->data[colontmp_].Field0.u.path = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.path);
			result.p->data[colontmp_].Field0.u.query = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.query);
			result.p->data[colontmp_].Field0.u.anchor = eqdup___system_u2757(src_p0.p->data[colontmp_].Field0.u.anchor);
			result.p->data[colontmp_].Field0.u.opaque = src_p0.p->data[colontmp_].Field0.u.opaque;
			result.p->data[colontmp_].Field0.u.isIpv6 = src_p0.p->data[colontmp_].Field0.u.isIpv6;
			result.p->data[colontmp_].Field1.a.r = src_p0.p->data[colontmp_].Field1.a.r;
			result.p->data[colontmp_].Field1.a.v = eqdup___system_u2757(src_p0.p->data[colontmp_].Field1.a.v);
			result.p->data[colontmp_].Field1.b.r = src_p0.p->data[colontmp_].Field1.b.r;
			result.p->data[colontmp_].Field1.b.v = eqdup___system_u2757(src_p0.p->data[colontmp_].Field1.b.v);
			result.p->data[colontmp_].Field1.isInterval = src_p0.p->data[colontmp_].Field1.isInterval;
			colontmp_ += ((NI)1);
		} LA3: ;
	}
	return result;
}
static N_INLINE(NIM_BOOL, sameSeqPayload)(void* x_p0, void* y_p1) {
	NIM_BOOL result;
	result = ((*((tyObject_NimRawSeq__8ODFhI7GYUKt9cpVXMRXb9bQ*) (x_p0))).p == (*((tyObject_NimRawSeq__8ODFhI7GYUKt9cpVXMRXb9bQ*) (y_p1))).p);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u287)(tySequence__Cv9czsNzurrmCo02svI9bGaw* dest_p0, tySequence__Cv9czsNzurrmCo02svI9bGaw src_p1) {
	NI T6_;
	NI colontmp_;
{	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = sameSeqPayload(dest_p0, (&src_p1));
		if (!T3_) goto LA4_;
		goto BeforeRet_;
	}
LA4_: ;
	T6_ = src_p1.len;
	setLen__basicZdeptypes_u305((&(*dest_p0)), T6_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T9_;
			T9_ = (*dest_p0).len;
			if (!(colontmp_ < T9_)) goto LA8;
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.qualifiedName.Field0), src_p1.p->data[colontmp_].Field0.qualifiedName.Field0);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.qualifiedName.Field1), src_p1.p->data[colontmp_].Field0.qualifiedName.Field1);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.qualifiedName.Field2), src_p1.p->data[colontmp_].Field0.qualifiedName.Field2);
			(*dest_p0).p->data[colontmp_].Field0.hasShortName = src_p1.p->data[colontmp_].Field0.hasShortName;
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.scheme), src_p1.p->data[colontmp_].Field0.u.scheme);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.username), src_p1.p->data[colontmp_].Field0.u.username);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.password), src_p1.p->data[colontmp_].Field0.u.password);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.hostname), src_p1.p->data[colontmp_].Field0.u.hostname);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.port), src_p1.p->data[colontmp_].Field0.u.port);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.path), src_p1.p->data[colontmp_].Field0.u.path);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.query), src_p1.p->data[colontmp_].Field0.u.query);
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field0.u.anchor), src_p1.p->data[colontmp_].Field0.u.anchor);
			(*dest_p0).p->data[colontmp_].Field0.u.opaque = src_p1.p->data[colontmp_].Field0.u.opaque;
			(*dest_p0).p->data[colontmp_].Field0.u.isIpv6 = src_p1.p->data[colontmp_].Field0.u.isIpv6;
			(*dest_p0).p->data[colontmp_].Field1.a.r = src_p1.p->data[colontmp_].Field1.a.r;
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field1.a.v), src_p1.p->data[colontmp_].Field1.a.v);
			(*dest_p0).p->data[colontmp_].Field1.b.r = src_p1.p->data[colontmp_].Field1.b.r;
			eqcopy___system_u2754((&(*dest_p0).p->data[colontmp_].Field1.b.v), src_p1.p->data[colontmp_].Field1.b.v);
			(*dest_p0).p->data[colontmp_].Field1.isInterval = src_p1.p->data[colontmp_].Field1.isInterval;
			colontmp_ += ((NI)1);
		} LA8: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdeptypes_u1632)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast(dest_p0);
		if (!T3_) goto LA4_;
		eqdestroy___basicZdeptypes_u902((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
static N_INLINE(NI, emarkamp___pureZhashes_u4)(NI h_p0, NI val_p1) {
	NI result;
	NU h_2;
	NU val_2;
	NU res_1;
	h_2 = ((NU) (h_p0));
	val_2 = ((NU) (val_p1));
	res_1 = (NU)((NU64)(h_2) + (NU64)(val_2));
	res_1 = (NU)((NU64)(res_1) + (NU64)((NU)((NU64)(res_1) << (NU64)(((NI)10) & (64 - 1)))));
	res_1 = (NU)(res_1 ^ (NU)((NU64)(res_1) >> (NU64)(((NI)6) & (64 - 1))));
	result = ((NI) (res_1));
	return result;
}
static N_INLINE(NU64, hiXorLo__pureZhashes_u80)(NU64 a_p0, NU64 b_p1) {
	NU64 result;
	result = (NU64)0;
	result = 0ULL;
	__uint128_t r = a_p0; r *= b_p1; result = (r >> 64) ^ r;
	return result;
}
static N_INLINE(NI, hashWangYi1__pureZhashes_u139)(NU64 x_p0) {
	NI result;
	NU64 T1_;
	NU64 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	T1_ = (NU64)0;
	T1_ = hiXorLo__pureZhashes_u80(11562461410679940143ULL, (NU64)(x_p0 ^ 16646288086500911323ULL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = (NU64)0;
	T2_ = hiXorLo__pureZhashes_u80(T1_, 16952864883938283885ULL);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = ((NI) (T2_));
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, hash__basicZversions_u440)(NIM_BOOL x_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = hashWangYi1__pureZhashes_u139(((NU64) (x_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, emarkdollar___pureZhashes_u19)(NI h_p0) {
	NI result;
	NU h_2;
	NU res_1;
	h_2 = ((NU) (h_p0));
	res_1 = (NU)((NU64)(h_2) + (NU64)((NU)((NU64)(h_2) << (NU64)(((NI)3) & (64 - 1)))));
	res_1 = (NU)(res_1 ^ (NU)((NU64)(res_1) >> (NU64)(((NI)11) & (64 - 1))));
	res_1 = (NU)((NU64)(res_1) + (NU64)((NU)((NU64)(res_1) << (NU64)(((NI)15) & (64 - 1)))));
	result = ((NI) (res_1));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZdeptypes_u205)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* r_p0) {
	NI result;
	NimStringV2 colontmpD_;
	NI h_1;
	NI T1_;
	NI T2_;
	NI T3_;
	NI T4_;
	NI T5_;
	NI T6_;
	NI T7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	h_1 = ((NI)0);
	T1_ = (NI)0;
	T1_ = hash__pureZhashes_u586((*r_p0).version);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = (NI)0;
	T2_ = hash__basicZdeptypes_u209((((*r_p0).requirements).p) ? ((*r_p0).requirements.p->data) : NIM_NIL, (*r_p0).requirements.len);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T3_ = (NI)0;
	T3_ = hash__pureZhashes_u586((*r_p0).nimVersion);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T4_ = (NI)0;
	T4_ = hash__basicZversions_u440((*r_p0).hasInstallHooks);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T4_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T5_ = (NI)0;
	T5_ = hash__pureZhashes_u586((*r_p0).srcDir);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T5_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T6_ = (NI)0;
	T6_ = hash__pureZhashes_u586((*r_p0).err);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T6_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD_ = dollar___basicZdeptypes_u31((*r_p0).status);
	T7_ = (NI)0;
	T7_ = hash__pureZhashes_u586(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T7_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = emarkdollar___pureZhashes_u19(h_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, eqeq___stdZpaths_u59)(NimStringV2 x_p0, NimStringV2 y_p1) {
	NIM_BOOL result;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NI)0;
	T1_ = noscmpPaths(x_p0, y_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = (T1_ == ((NI)0));
	}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_u1763)(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_u1763(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___basicZdeptypes_u456)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* a_p0, tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* b_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	NIM_BOOL T5_;
	NIM_BOOL T7_;
	NIM_BOOL T9_;
	NIM_BOOL T11_;
	NIM_BOOL T13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_TRUE;
	T1_ = (NIM_BOOL)0;
	T1_ = result;
	if (!(T1_)) goto LA2_;
	T1_ = eqeq___basicZversions_u359((*a_p0).version, (*b_p1).version);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA2_: ;
	result = T1_;
	T3_ = (NIM_BOOL)0;
	T3_ = result;
	if (!(T3_)) goto LA4_;
	T3_ = eqeq___basicZdeptypes_u460((*a_p0).requirements, (*b_p1).requirements);
LA4_: ;
	result = T3_;
	T5_ = (NIM_BOOL)0;
	T5_ = result;
	if (!(T5_)) goto LA6_;
	T5_ = eqeq___basicZversions_u359((*a_p0).nimVersion, (*b_p1).nimVersion);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA6_: ;
	result = T5_;
	T7_ = (NIM_BOOL)0;
	T7_ = result;
	if (!(T7_)) goto LA8_;
	T7_ = ((*a_p0).hasInstallHooks == (*b_p1).hasInstallHooks);
LA8_: ;
	result = T7_;
	T9_ = (NIM_BOOL)0;
	T9_ = result;
	if (!(T9_)) goto LA10_;
	T9_ = eqeq___stdZpaths_u59((*a_p0).srcDir, (*b_p1).srcDir);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA10_: ;
	result = T9_;
	T11_ = (NIM_BOOL)0;
	T11_ = result;
	if (!(T11_)) goto LA12_;
	T11_ = eqStrings((*a_p0).err, (*b_p1).err);
LA12_: ;
	result = T11_;
	T13_ = (NIM_BOOL)0;
	T13_ = result;
	if (!(T13_)) goto LA14_;
	T13_ = ((*a_p0).status == (*b_p1).status);
LA14_: ;
	result = T13_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u1635)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw** dest_p0, tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* src_p1) {
	{
		if (!src_p1) goto LA3_;
		nimIncRef(src_p1);
	}
LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLast((*dest_p0));
		if (!T7_) goto LA8_;
		eqdestroy___basicZdeptypes_u902((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA8_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw*, eqdup___basicZdeptypes_u1638)(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* src_p0) {
	tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* result;
	result = src_p0;
	{
		if (!src_p0) goto LA3_;
		nimIncRef(src_p0);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u551)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* r_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = dollar___basicZversions_u187((&(*r_p0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg*, eqdup___basicZdeptypes_u154)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* src_p0) {
	tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* result;
	result = src_p0;
	{
		if (!src_p0) goto LA3_;
		nimIncRef(src_p0);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, sortVersionsDesc__basicZdeptypes_u180)(tyTuple__J4qYjN1oh0iSNXduwGtAfg a_p0, tyTuple__J4qYjN1oh0iSNXduwGtAfg b_p1) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = sortVersionsDesc__basicZversions_u367((&(*a_p0.Field0).vtag), (&(*b_p1.Field0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, sortVersionsAsc__basicZdeptypes_u188)(tyTuple__J4qYjN1oh0iSNXduwGtAfg a_p0, tyTuple__J4qYjN1oh0iSNXduwGtAfg b_p1) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = sortVersionsAsc__basicZversions_u363((&(*a_p0.Field0).vtag), (&(*b_p1.Field0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZdeptypes_u157)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg** dest_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* src_p1) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0));
		if (!T3_) goto LA4_;
		eqdestroy___basicZdeptypes_u124((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA4_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matches__basicZdeptypes_u2056)(tyObject_VersionInterval__Fo18dECYIXwkOygWPnb8YA* v_p0, tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* pkgVer_p1) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	result = matches__basicZversions_u5187(v_p0, (&(*pkgVer_p1).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, version__basicZdeptypes_u170)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* pv_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = version__basicZversions_u196((&(*pv_p0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___basicZdeptypes_u112)(tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw)0):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_32;
	}
	break;
	case ((tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw)1):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_34;
	}
	break;
	case ((tyEnum_TraversalMode__7oigiLe2XsEgCBvsMzDCZw)2):
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_36;
	}
	break;
	default:
	{
		result = TM__REOfvZ4AYNSjcZjSlQe6SQ_37;
	}
	break;
	}
	return result;
}
static N_INLINE(NI, hash__basicZpkgurls_u50)(tyObject_PkgUrl__xtGEmbK9cVcp0WbjakP0xVw* a_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = hash__basicZpkgurls_u53((&(*a_p0).u));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, hash__basicZdeptypes_u201)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* r_p0) {
	NI result;
	NI h_1;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	h_1 = ((NI)0);
	T1_ = (NI)0;
	T1_ = hash__basicZpkgurls_u50((&(*r_p0).url));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	h_1 = emarkamp___pureZhashes_u4(h_1, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = emarkdollar___pureZhashes_u19(h_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZdepgraphtypes_u3185)(tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw* dest_p0, tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw* src_p1) {
	(*dest_p0).mode = (*src_p1).mode;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0).root);
		if (!T3_) goto LA4_;
		eqdestroy___basicZnimblecontext_u3603((&(*(*dest_p0).root)));
		nimRawDispose((*dest_p0).root, ((NI)8));
	}
LA4_: ;
	(*dest_p0).root = (*src_p1).root;
	if ((*dest_p0).pkgs.data.p != (*src_p1).pkgs.data.p) {	eqdestroy___basicZnimblecontext_u3582((*dest_p0).pkgs.data);
	}
(*dest_p0).pkgs.data.len = (*src_p1).pkgs.data.len; (*dest_p0).pkgs.data.p = (*src_p1).pkgs.data.p;
	(*dest_p0).pkgs.counter = (*src_p1).pkgs.counter;
	(*dest_p0).pkgs.first = (*src_p1).pkgs.first;
	(*dest_p0).pkgs.last = (*src_p1).pkgs.last;
}
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);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA, commit__basicZdeptypes_u173)(tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* pv_p0) {
	tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyObject_CommitHash__ENSoVMeDKmDIP8obk69cDaA));
	result = commit__basicZversions_u193((&(*pv_p0).vtag));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdepgraphtypes_u3179)(tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw* dest_p0, tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw* src_p1) {
	(*dest_p0).mode = (*src_p1).mode;
	{
		if (!(*src_p1).root) goto LA3_;
		nimIncRef((*src_p1).root);
	}
LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLast((*dest_p0).root);
		if (!T7_) goto LA8_;
		eqdestroy___basicZnimblecontext_u3603((&(*(*dest_p0).root)));
		nimRawDispose((*dest_p0).root, ((NI)8));
	}
LA8_: ;
	(*dest_p0).root = (*src_p1).root;
	eqcopy___basicZnimblecontext_u3585((&(*dest_p0).pkgs.data), (*src_p1).pkgs.data);
	(*dest_p0).pkgs.counter = (*src_p1).pkgs.counter;
	(*dest_p0).pkgs.first = (*src_p1).pkgs.first;
	(*dest_p0).pkgs.last = (*src_p1).pkgs.last;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw*, activeNimbleRelease__basicZdeptypes_u561)(tyObject_PackagecolonObjectType___oq9cbJmLUyLo2l9clmDFeVSA* pkg_p0) {
	tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!((*pkg_p0).activeVersion == 0)) goto LA3_;
		result = ((tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw*) NIM_NIL);
	}
	goto LA1_;
LA3_: ;
	{
		tyObject_PackageVersioncolonObjectType___nkWxN1qoImjRSFLA34DlGg* av_1;
		tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw** T7_;
		av_1 = NIM_NIL;
		eqcopy___basicZdeptypes_u151(&av_1, (*pkg_p0).activeVersion);
		T7_ = (tyObject_NimbleReleasecolonObjectType___Cd1woUEuIWSParVQIsOkuw**)0;
		T7_ = X5BX5D___basicZdeptypes_u621((&(*pkg_p0).versions), av_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		eqcopy___basicZdeptypes_u1635(&result, (*T7_));
		{
			LA6_:;
		}
		{
			eqdestroy___basicZdeptypes_u148(av_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___basicZdeptypes_u353)(tyTuple__XXBtNszxg1rbD9cnycyLK7A* dest_p0, tyTuple__XXBtNszxg1rbD9cnycyLK7A* src_p1) {
	eqcopy___system_u2754((&(*dest_p0).Field0.qualifiedName.Field0), (*src_p1).Field0.qualifiedName.Field0);
	eqcopy___system_u2754((&(*dest_p0).Field0.qualifiedName.Field1), (*src_p1).Field0.qualifiedName.Field1);
	eqcopy___system_u2754((&(*dest_p0).Field0.qualifiedName.Field2), (*src_p1).Field0.qualifiedName.Field2);
	(*dest_p0).Field0.hasShortName = (*src_p1).Field0.hasShortName;
	eqcopy___system_u2754((&(*dest_p0).Field0.u.scheme), (*src_p1).Field0.u.scheme);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.username), (*src_p1).Field0.u.username);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.password), (*src_p1).Field0.u.password);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.hostname), (*src_p1).Field0.u.hostname);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.port), (*src_p1).Field0.u.port);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.path), (*src_p1).Field0.u.path);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.query), (*src_p1).Field0.u.query);
	eqcopy___system_u2754((&(*dest_p0).Field0.u.anchor), (*src_p1).Field0.u.anchor);
	(*dest_p0).Field0.u.opaque = (*src_p1).Field0.u.opaque;
	(*dest_p0).Field0.u.isIpv6 = (*src_p1).Field0.u.isIpv6;
	(*dest_p0).Field1.a.r = (*src_p1).Field1.a.r;
	eqcopy___system_u2754((&(*dest_p0).Field1.a.v), (*src_p1).Field1.a.v);
	(*dest_p0).Field1.b.r = (*src_p1).Field1.b.r;
	eqcopy___system_u2754((&(*dest_p0).Field1.b.v), (*src_p1).Field1.b.v);
	(*dest_p0).Field1.isInterval = (*src_p1).Field1.isInterval;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZdepgraphtypes_u3176)(tyObject_DepGraph__i1RlFs3c9aTk9bK2vN5Pa2yw* dest_p0) {
	eqdestroy___basicZnimblecontext_u3582((*dest_p0).pkgs.data);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0).root);
		if (!T3_) goto LA4_;
		eqdestroy___basicZnimblecontext_u3603((&(*(*dest_p0).root)));
		nimRawDispose((*dest_p0).root, ((NI)8));
	}
LA4_: ;
}
