/* 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/@pcompiler@soptions.nim.c.o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@pcompiler@soptions.nim.c */
#define NIM_INTBITS 64
#define NIM_EmulateOverflowChecks

#include "nimbase.h"
#include <string.h>
#include <stdio.h>
#include <glob.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_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw;
typedef struct tyObject_Target__VLKMdRc7ECOjQ9ciK2Kt9bMA tyObject_Target__VLKMdRc7ECOjQ9ciK2Kt9bMA;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg;
typedef struct tyObject_MsgConfig__9cs55zdH9bHnV6V9chBQFd5kw tyObject_MsgConfig__9cs55zdH9bHnV6V9chBQFd5kw;
typedef struct tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA;
typedef struct tySequence__JPKFgJSOQCieXDyG0VaX6A tySequence__JPKFgJSOQCieXDyG0VaX6A;
typedef struct tySequence__JPKFgJSOQCieXDyG0VaX6A_Content tySequence__JPKFgJSOQCieXDyG0VaX6A_Content;
typedef struct tyObject_Table__OgDKCHvLil9aobSCDOOb9c2g tyObject_Table__OgDKCHvLil9aobSCDOOb9c2g;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__82a9cBsTuMsIGy3wIt0j2GA tySequence__82a9cBsTuMsIGy3wIt0j2GA;
typedef struct tySequence__82a9cBsTuMsIGy3wIt0j2GA_Content tySequence__82a9cBsTuMsIGy3wIt0j2GA_Content;
typedef struct tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tySequence__qQfLCgyHOp6hJAe9b61dSlg tySequence__qQfLCgyHOp6hJAe9b61dSlg;
typedef struct tySequence__qQfLCgyHOp6hJAe9b61dSlg_Content tySequence__qQfLCgyHOp6hJAe9b61dSlg_Content;
typedef struct tyObject_SuggestcolonObjectType___G8O5Dsbt9bF1vvzUUj5EkrQ tyObject_SuggestcolonObjectType___G8O5Dsbt9bF1vvzUUj5EkrQ;
typedef struct tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA;
typedef struct tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA;
typedef struct tyObject_Table__j8Do07MDUq9bc57cwK8P5OA tyObject_Table__j8Do07MDUq9bc57cwK8P5OA;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct tyTuple__mpXC9astQf55G3YaAixkIrg tyTuple__mpXC9astQf55G3YaAixkIrg;
typedef struct tyTuple__nsjPxkx9aV3gZU5RTObKRvQ tyTuple__nsjPxkx9aV3gZU5RTObKRvQ;
typedef struct tyTuple__QV1TF4CGWRyoNF80eigmtg tyTuple__QV1TF4CGWRyoNF80eigmtg;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__scR0dtIY0SPGs9bCTB2YP9aA tyObject_TFileInfo__scR0dtIY0SPGs9bCTB2YP9aA;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef NU8 tyEnum_TBackend__Xu30yu1pJJNl5dArQPqGow;
typedef NU8 tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw;
typedef NU8 tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyObject_Target__VLKMdRc7ECOjQ9ciK2Kt9bMA {
	tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw targetCPU;
	tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw hostCPU;
	tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw targetOS;
	tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw hostOS;
	NI intSize;
	NI floatSize;
	NI ptrSize;
	NimStringV2 tnl;
};
typedef NU32 tySet_tyEnum_TOption__e9bb9ciMfT2jonTaHtdSs34Q;
typedef NU64 tySet_tyEnum_TGlobalOption__EmqdljhsMjyPLrsxWOhMOg;
struct tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__Y589cyWcRH9a1nQaCCTpHXBg;
struct tySequence__JPKFgJSOQCieXDyG0VaX6A {
  NI len; tySequence__JPKFgJSOQCieXDyG0VaX6A_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__OgDKCHvLil9aobSCDOOb9c2g {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
struct tySequence__82a9cBsTuMsIGy3wIt0j2GA {
  NI len; tySequence__82a9cBsTuMsIGy3wIt0j2GA_Content* p;
};
struct tyObject_MsgConfig__9cs55zdH9bHnV6V9chBQFd5kw {
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA trackPos;
	NIM_BOOL trackPosAttached;
	tySet_tyEnum_TErrorOutput__Y589cyWcRH9a1nQaCCTpHXBg errorOutputs;
	tySequence__JPKFgJSOQCieXDyG0VaX6A msgContext;
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA lastError;
	tyObject_Table__OgDKCHvLil9aobSCDOOb9c2g filenameToIndexTbl;
	tySequence__82a9cBsTuMsIGy3wIt0j2GA fileInfos;
	NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__Yih1XSIjpvq4ziRvx1GV8w;
typedef NU8 tyEnum_Command__oJGNCFo1I4tiN2MrL3TY9bA;
typedef NU8 tyEnum_TGCMode__pRk7Y2G9bpIo9bLxbZlHNngg;
typedef NU8 tyEnum_ExceptionSystem__IYbEksEAKSIlWJbOfBD09cg;
typedef NU8 tyEnum_SymbolFilesOption__8PMCSpTPQgWdVNloobF5ww;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q {
	tySequence__4eRCaZmrYLLw2k30GPTiMw data;
	NI counter;
};
typedef NU32 tySet_tyEnum_Feature__E4xi5r0p9cLn3DNy3T5qUng;
typedef NU8 tySet_tyEnum_LegacyFeature__kQ72lke4a216EagCYqVkVQ;
typedef NU8 tyEnum_IdeCmd__Sly2EmHrYz8ngoSQFPHnpA;
typedef NU8 tyEnum_TSystemCC__x9cDM4gkFLLvOAjtG1vDBbw;
typedef NU8 tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ[13];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tySet_tyEnum_StdOrrKind__uLkrPliKqI9aojZh8rkjB9bA;
struct tySequence__qQfLCgyHOp6hJAe9b61dSlg {
  NI len; tySequence__qQfLCgyHOp6hJAe9b61dSlg_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___G8O5Dsbt9bF1vvzUUj5EkrQ* result_p0, void* ClE_0);
void* ClE_0;
} tyProc__ZKxN2vtYtpm0ZAjNb4J8aw;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output_p0, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__tWehdV8Lrs2KkHjSTQdreg;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p0, tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA info_p1, NimStringV2 msg_p2, tyEnum_Severity__tWehdV8Lrs2KkHjSTQdreg severity_p3, void* ClE_0);
void* ClE_0;
} tyProc__JiHYsLjIe9cOjP539bvP3aaA;
struct tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw {
	tyEnum_TBackend__Xu30yu1pJJNl5dArQPqGow backend;
	tyObject_Target__VLKMdRc7ECOjQ9ciK2Kt9bMA target;
	NI linesCompiled;
	tySet_tyEnum_TOption__e9bb9ciMfT2jonTaHtdSs34Q options;
	tySet_tyEnum_TGlobalOption__EmqdljhsMjyPLrsxWOhMOg globalOptions;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* macrosToExpand;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* arcToExpand;
	tyObject_MsgConfig__9cs55zdH9bHnV6V9chBQFd5kw m;
	tyEnum_FilenameOption__Yih1XSIjpvq4ziRvx1GV8w filenameOption;
	NimStringV2 unitSep;
	NI evalTemplateCounter;
	NI evalMacroCounter;
	NI8 exitcode;
	tyEnum_Command__oJGNCFo1I4tiN2MrL3TY9bA cmd;
	NimStringV2 cmdInput;
	NIM_BOOL projectIsCmd;
	NIM_BOOL implicitCmd;
	tyEnum_TGCMode__pRk7Y2G9bpIo9bLxbZlHNngg selectedGC;
	tyEnum_ExceptionSystem__IYbEksEAKSIlWJbOfBD09cg exc;
	NIM_BOOL hintProcessingDots;
	NI verbosity;
	NI numberOfProcessors;
	NF lastCmdTime;
	tyEnum_SymbolFilesOption__8PMCSpTPQgWdVNloobF5ww symbolFiles;
	NI spellSuggestMax;
	tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q cppDefines;
	NimStringV2 headerFile;
	NimStringV2 nimbasePattern;
	tySet_tyEnum_Feature__E4xi5r0p9cLn3DNy3T5qUng features;
	tySet_tyEnum_LegacyFeature__kQ72lke4a216EagCYqVkVQ legacyFeatures;
	NimStringV2 arguments;
	tyEnum_IdeCmd__Sly2EmHrYz8ngoSQFPHnpA ideCmd;
	tyEnum_TSystemCC__x9cDM4gkFLLvOAjtG1vDBbw cCompiler;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ modifiedyNotes;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ cmdlineNotes;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ foreignPackageNotes;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ notes;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ warningAsErrors;
	tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ mainPackageNotes;
	NI mainPackageId;
	NI errorCounter;
	NI hintCounter;
	NI warnCounter;
	NI errorMax;
	NI maxLoopIterationsVM;
	NI maxCallDepthVM;
	NIM_BOOL isVmTrace;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* configVars;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* symbols;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* packageCache;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
	NimStringV2 outFile;
	NimStringV2 outDir;
	NimStringV2 jsonBuildFile;
	NimStringV2 prefixDir;
	NimStringV2 libpath;
	NimStringV2 nimcacheDir;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* dllOverrides;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* moduleOverrides;
	tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* cfileSpecificOptions;
	NimStringV2 projectName;
	NimStringV2 projectPath;
	NimStringV2 projectFull;
	NIM_BOOL projectIsStdin;
	NimStringV2 stdinFile;
	tySet_tyEnum_StdOrrKind__uLkrPliKqI9aojZh8rkjB9bA lastMsgWasDot;
	NI32 projectMainIdx;
	NI32 projectMainIdx2;
	NimStringV2 command;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
	NimStringV2 commandLine;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
	NimStringV2 docSeeSrcUrl;
	NimStringV2 docRoot;
	NimStringV2 docCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
	NimStringV2 linkOptionsCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
	NimStringV2 linkOptions;
	NimStringV2 compileOptions;
	NimStringV2 cCompilerPath;
	tySequence__qQfLCgyHOp6hJAe9b61dSlg toCompile;
	tyProc__ZKxN2vtYtpm0ZAjNb4J8aw suggestionResultHook;
	NI suggestVersion;
	NI suggestMaxResults;
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA lastLineInfo;
	tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
	tyProc__JiHYsLjIe9cOjP539bvP3aaA structuredErrorHook;
	NimStringV2 cppCustomNamespace;
	NimStringV2 nimMainPrefix;
	tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA* vmProfileData;
	NIM_BOOL expandProgress;
	NI expandLevels;
	NimStringV2 expandNodeResult;
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA expandPosition;
	NimStringV2 currentConfigDir;
	NI clientProcessId;
};
struct tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA {
	NI rc;
	NI rootIdx;
};
struct tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA {
	tyObject_Table__j8Do07MDUq9bc57cwK8P5OA* data;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
typedef NU8 tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw;
typedef NU8 tySet_tyEnum_CfileFlag__EkRY1EIMbklfJaNFiHJKAQ;
struct tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA {
	NimStringV2 nimname;
	NimStringV2 cname;
	NimStringV2 obj;
	tySet_tyEnum_CfileFlag__EkRY1EIMbklfJaNFiHJKAQ flags;
	NimStringV2 customArgs;
};
typedef tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ tyArray__QyIUYMXLP9cj9ctF9aOs4MvCg[4];
typedef NU8 tyEnum_TGlobalOption__EmqdljhsMjyPLrsxWOhMOg;
typedef NimStringV2 tyArray__vYAGu69beqgbaFYLoxcYiEw[13];
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
	NimStringV2 Field0;
	NimStringV2 Field1;
	NimStringV2 Field2;
};
typedef NCSTRING tyUncheckedArray__nvS6J9clHMUMHfoZd8Ad2zg[1];
typedef NU8 tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ;
typedef NU8 tyEnum_TOption__e9bb9ciMfT2jonTaHtdSs34Q;
typedef NU8 tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g;
typedef NU8 tyEnum_Endianness__189czH9birS9aA4NtsoBxvzLQ;
struct tyTuple__mpXC9astQf55G3YaAixkIrg {
	NimStringV2 Field0;
	NI Field1;
	tyEnum_Endianness__189czH9birS9aA4NtsoBxvzLQ Field2;
	NI Field3;
	NI Field4;
};
typedef tyTuple__mpXC9astQf55G3YaAixkIrg tyArray__b45fY3ALKqM0pGNRKIbHKQ[29];
typedef NU8 tySet_tyEnum_TInfoOSProp__1g53Rzvi0L09autFJPVfO8A;
struct tyTuple__nsjPxkx9aV3gZU5RTObKRvQ {
	NimStringV2 Field0;
	NimStringV2 Field1;
	NimStringV2 Field2;
	NimStringV2 Field3;
	NimStringV2 Field4;
	NimStringV2 Field5;
	NimStringV2 Field6;
	NimStringV2 Field7;
	NimStringV2 Field8;
	NimStringV2 Field9;
	NimStringV2 Field10;
	NimStringV2 Field11;
	tySet_tyEnum_TInfoOSProp__1g53Rzvi0L09autFJPVfO8A Field12;
};
typedef tyTuple__nsjPxkx9aV3gZU5RTObKRvQ tyArray__9bLMi3DGBm9afhtHyANzcIBw[34];
typedef NU8 tyEnum_TInfoOSProp__1g53Rzvi0L09autFJPVfO8A;
struct tyTuple__QV1TF4CGWRyoNF80eigmtg {
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA Field0;
	NimStringV2 Field1;
};
struct tySequence__JPKFgJSOQCieXDyG0VaX6A_Content { NI cap; tyTuple__QV1TF4CGWRyoNF80eigmtg 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 tyObject_TFileInfo__scR0dtIY0SPGs9bCTB2YP9aA {
	NimStringV2 fullPath;
	NimStringV2 projPath;
	NimStringV2 shortName;
	NimStringV2 quotedName;
	NimStringV2 quotedFullName;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
	NimStringV2 dirtyFile;
	NimStringV2 hash;
	NIM_BOOL dirty;
};
struct tySequence__82a9cBsTuMsIGy3wIt0j2GA_Content { NI cap; tyObject_TFileInfo__scR0dtIY0SPGs9bCTB2YP9aA data[SEQ_DECL_SIZE]; };
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
	NI Field0;
	NimStringV2 Field1;
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE]; };
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
struct tySequence__qQfLCgyHOp6hJAe9b61dSlg_Content { NI cap; tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NOCONV(void, deallocShared)(void* p_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___OOZOOZOOZcompilerZoptions_u905)(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u796)(tyObject_Table__j8Do07MDUq9bc57cwK8P5OA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p_p0);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_u3555)(NIM_BOOL isDestroyAction_p0, tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA* s_p1, TNimTypeV2* desc_p2);
N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1370)(tySequence__qQfLCgyHOp6hJAe9b61dSlg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u5582)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1187)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1682)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p_p0, NI align_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___basicZversions_u1310)(tySequence__4eRCaZmrYLLw2k30GPTiMw dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZlineinfos_u2053)(tySequence__82a9cBsTuMsIGy3wIt0j2GA dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZlineinfos_u566)(tySequence__7lEisrXlQEzwtUKW5pzRCw dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZlineinfos_u1842)(tySequence__JPKFgJSOQCieXDyG0VaX6A dest_p0);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg*, nstnewStringTable)(tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw mode_p0);
N_LIB_PRIVATE N_NIMCALL(void, initMsgConfig__OOZOOZOOZcompilerZlineinfos_u392)(tyObject_MsgConfig__9cs55zdH9bHnV6V9chBQFd5kw* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_HashSet__v3AgR4bnzCtqFMiyBA9al4Q, initHashSet__OOZOOZOOZcompilerZoptions_u1045)(NI initialSize_p0);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA*, newProfileData__OOZOOZOOZcompilerZoptions_u654)(void);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObjUninit)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_Table__j8Do07MDUq9bc57cwK8P5OA*, newTable__OOZOOZOOZcompilerZoptions_u672)(NI initialSize_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, initConfigRefCommon__OOZOOZOOZcompilerZoptions_u956)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, setTargetFromSystem__OOZOOZOOZcompilerZplatform_u945)(tyObject_Target__VLKMdRc7ECOjQ9ciK2Kt9bMA* t_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isatty__pureZterminal_u635)(FILE* f_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosexpandFilename)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getRelativePathFromConfigPath__OOZOOZOOZcompilerZoptions_u2447)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 f_p1, NIM_BOOL isTitle_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___OOZOOZOOZcompilerZoptions_u2452)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2754)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(NimStringV2, slash___stdZprivateZospaths2_u88)(NimStringV2 head_p0, NimStringV2 tail_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosjoinPath)(NimStringV2 head_p0, NimStringV2 tail_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, noslastPathPart)(NimStringV2 path_p0);
N_LIB_PRIVATE N_NIMCALL(NI, noscmpPaths)(NimStringV2 pathA_p0, NimStringV2 pathB_p1);
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);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1755)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, nossplitFile)(NimStringV2 path_p0, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZos_u217)(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* dest_p0);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___OOZOOZOOZcompilerZoptions_u2542)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isRelativeTo__stdZprivateZospaths2_u156)(NimStringV2 path_p0, NimStringV2 base_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosrelativePath)(NimStringV2 path_p0, NimStringV2 base_p1, NIM_CHAR sep_p2);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u95)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosparentDir)(NimStringV2 path_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getNimbleFile__OOZOOZOOZcompilerZoptions_u2221)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 path_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2760)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, eqdestroy___system_u281)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsthasKey)(tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* t_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2*, nstTake)(tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* t_p0, NimStringV2 key_p1);
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s_p0);
static N_INLINE(NIM_BOOL, nimSubInt)(NI a_p0, NI b_p1, NI* res_p2);
static N_INLINE(NIM_BOOL, eqeq___system_u9048)(NCSTRING x_p0, NCSTRING y_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, cstrToNimstr)(NCSTRING str_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___system_u2751)(NimStringV2* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nstPut)(tyObject_StringTableObj__aB8otkyeeuZW5rawDMqajg* t_p0, NimStringV2 key_p1, NimStringV2 val_p2);
static N_INLINE(NIM_BOOL, isEmpty__OOZOOZOOZcompilerZpathutils_u136)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, relativeTo__OOZOOZOOZcompilerZpathutils_u197)(NimStringV2 fullPath_p0, NimStringV2 baseFilename_p1, NIM_CHAR sep_p2);
static N_INLINE(NIM_BOOL, isEmpty__OOZOOZOOZcompilerZoptions_u2143)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a_p0, NimStringV2 b_p1);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError3)(NI i_p0, NI a_p1, NI b_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuNormalize)(NimStringV2 s_p0);
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(NI, hashString)(NimStringV2 s_p0);
static N_INLINE(void, nimIncRef)(void* p_p0);
static N_INLINE(NI, pluspercent___system_u793)(NI x_p0, NI y_p1);
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, unregisterCycle__system_u3185)(tyObject_RefHeader__BVEqx9abcuAhztUEHxbqQJA* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1565)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* dest_p0);
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_2 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_3 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_4 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_5 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_4};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_6 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_7 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_6};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_8 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_6};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_9 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_6};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_10 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_6};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_11 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_12 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_6};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_13 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_14 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_13};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_15 = { 9 | NIM_STRLIT_FLAG, "stdinfile" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_16 = {9, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_15};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_17 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_18 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_19 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_20 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_21 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_22 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_23 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_24 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_25 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static NIM_CONST tySet_tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ TM__zQHipMPUXFgsDrLbMR9atnA_26 = {
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x02, 0xc0, 0x00, 0x02, 0x04}
;
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_27 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_28 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_27};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_29 = { 4 | NIM_STRLIT_FLAG, "pure" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_30 = { 4 | NIM_STRLIT_FLAG, "core" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_31 = { 4 | NIM_STRLIT_FLAG, "arch" };
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_32 = { 16 | NIM_STRLIT_FLAG, "pure/collections" };
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_33 = { 16 | NIM_STRLIT_FLAG, "pure/concurrency" };
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_34 = { 14 | NIM_STRLIT_FLAG, "pure/unidecode" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_35 = { 6 | NIM_STRLIT_FLAG, "impure" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_36 = { 8 | NIM_STRLIT_FLAG, "wrappers" };
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_37 = { 18 | NIM_STRLIT_FLAG, "wrappers/linenoise" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_38 = { 7 | NIM_STRLIT_FLAG, "windows" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_39 = { 5 | NIM_STRLIT_FLAG, "posix" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_40 = { 2 | NIM_STRLIT_FLAG, "js" };
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_41 = { 15 | NIM_STRLIT_FLAG, "deprecated/pure" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_42 = { 4 | NIM_STRLIT_FLAG, "std/" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_43 = {4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_42};
static const struct {
  NI cap; NIM_CHAR data[90+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_44 = { 90 | NIM_STRLIT_FLAG, "iterators.nim(254, 11) `len(a) == L` the length of the seq changed while iterating over it" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_45 = {90, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_44};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_46 = {90, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_44};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_47 = {0, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_2};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_49 = { 8 | NIM_STRLIT_FLAG, "*.nimble" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_50 = {8, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_49};
static const struct {
  NI cap; NIM_CHAR data[58+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_52 = { 58 | NIM_STRLIT_FLAG, "osdirs.nim(92, 15) `f`gensym5.gl_pathv[i`gensym5] != nil` " };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_53 = {58, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_52};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_56 = { 3 | NIM_STRLIT_FLAG, "x86" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_57 = {3, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_56};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_58 = { 7 | NIM_STRLIT_FLAG, "itanium" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_59 = {7, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_58};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_60 = { 5 | NIM_STRLIT_FLAG, "x8664" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_61 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_60};
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_62 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_39};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_63 = { 4 | NIM_STRLIT_FLAG, "unix" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_64 = {4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_63};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_65 = { 5 | NIM_STRLIT_FLAG, "linux" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_66 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_65};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_67 = { 3 | NIM_STRLIT_FLAG, "bsd" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_68 = {3, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_67};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_69 = { 7 | NIM_STRLIT_FLAG, "freebsd" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_70 = {7, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_69};
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_71 = { 18 | NIM_STRLIT_FLAG, "emulatedthreadvars" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_72 = {18, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_71};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_73 = { 5 | NIM_STRLIT_FLAG, "msdos" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_74 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_73};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_75 = { 9 | NIM_STRLIT_FLAG, "mswindows" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_76 = {9, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_75};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_77 = { 5 | NIM_STRLIT_FLAG, "win32" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_78 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_77};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_79 = { 9 | NIM_STRLIT_FLAG, "macintosh" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_80 = {9, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_79};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_81 = { 3 | NIM_STRLIT_FLAG, "osx" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_82 = {3, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_81};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_83 = { 6 | NIM_STRLIT_FLAG, "macosx" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_84 = {6, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_83};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_85 = { 5 | NIM_STRLIT_FLAG, "sunos" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_86 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_85};
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_87 = { 14 | NIM_STRLIT_FLAG, "nintendoswitch" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_88 = {14, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_87};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_89 = { 8 | NIM_STRLIT_FLAG, "freertos" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_90 = {8, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_89};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_91 = { 4 | NIM_STRLIT_FLAG, "lwip" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_92 = {4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_91};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_93 = { 6 | NIM_STRLIT_FLAG, "zephyr" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_94 = {6, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_93};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_95 = { 5 | NIM_STRLIT_FLAG, "nuttx" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_96 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_95};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_97 = { 12 | NIM_STRLIT_FLAG, "littleendian" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_98 = {12, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_97};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_99 = { 9 | NIM_STRLIT_FLAG, "bigendian" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_100 = {9, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_99};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_101 = { 4 | NIM_STRLIT_FLAG, "cpu8" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_102 = {4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_101};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_103 = { 5 | NIM_STRLIT_FLAG, "cpu16" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_104 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_103};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_105 = { 5 | NIM_STRLIT_FLAG, "cpu32" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_106 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_105};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_107 = { 5 | NIM_STRLIT_FLAG, "cpu64" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_108 = {5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_107};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__zQHipMPUXFgsDrLbMR9atnA_109 = { 12 | NIM_STRLIT_FLAG, "nimrawsetjmp" };
static const NimStringV2 TM__zQHipMPUXFgsDrLbMR9atnA_110 = {12, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_109};
extern NIM_CONST tyArray__QyIUYMXLP9cj9ctF9aOs4MvCg NotesVerbosity__OOZOOZOOZcompilerZlineinfos_u228;
N_LIB_PRIVATE NIM_CONST tyArray__vYAGu69beqgbaFYLoxcYiEw stdlibDirs__OOZOOZOOZcompilerZoptions_u2444 = {{4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_29},
{4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_30},
{4, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_31},
{16, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_32},
{16, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_33},
{14, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_34},
{6, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_35},
{8, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_36},
{18, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_37},
{7, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_38},
{5, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_39},
{2, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_40},
{15, (NimStrPayload*)&TM__zQHipMPUXFgsDrLbMR9atnA_41}}
;
extern NIM_CONST tyArray__b45fY3ALKqM0pGNRKIbHKQ CPU__OOZOOZOOZcompilerZplatform_u739;
extern NIM_CONST tyArray__9bLMi3DGBm9afhtHyANzcIBw OS__OOZOOZOOZcompilerZplatform_u533;
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___OOZOOZOOZcompilerZoptions_u905)(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0).data);
		if (!T3_) goto LA4_;
		eqdestroy___OOZOOZOOZcompilerZoptions_u796((*dest_p0).data);
		nimRawDispose((*dest_p0).data, ((NI)8));
	}
LA4_: ;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(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)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u813((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		rememberCycle__system_u3555(result, cell_1, (*((TNimTypeV2**) (p_p0))));
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1682)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ 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_].p && !(dest_p0.p->data[colontmp_].p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dest_p0.p->data[colontmp_].p);
}
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(NimStringV2));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1565)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* dest_p0) {
	if ((*dest_p0).currentConfigDir.p && !((*dest_p0).currentConfigDir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).currentConfigDir.p);
}
	if ((*dest_p0).expandNodeResult.p && !((*dest_p0).expandNodeResult.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).expandNodeResult.p);
}
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLast((*dest_p0).vmProfileData);
		if (!T3_) goto LA4_;
		eqdestroy___OOZOOZOOZcompilerZoptions_u905((&(*(*dest_p0).vmProfileData)));
		nimRawDispose((*dest_p0).vmProfileData, ((NI)8));
	}
LA4_: ;
	if ((*dest_p0).nimMainPrefix.p && !((*dest_p0).nimMainPrefix.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimMainPrefix.p);
}
	if ((*dest_p0).cppCustomNamespace.p && !((*dest_p0).cppCustomNamespace.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).cppCustomNamespace.p);
}
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastCyclicDyn((*dest_p0).structuredErrorHook.ClE_0);
		if (!T8_) goto LA9_;
		nimDestroyAndDispose((*dest_p0).structuredErrorHook.ClE_0);
	}
LA9_: ;
	{
		NIM_BOOL T13_;
		T13_ = (NIM_BOOL)0;
		T13_ = nimDecRefIsLastCyclicDyn((*dest_p0).writelnHook.ClE_0);
		if (!T13_) goto LA14_;
		nimDestroyAndDispose((*dest_p0).writelnHook.ClE_0);
	}
LA14_: ;
	{
		NIM_BOOL T18_;
		T18_ = (NIM_BOOL)0;
		T18_ = nimDecRefIsLastCyclicDyn((*dest_p0).suggestionResultHook.ClE_0);
		if (!T18_) goto LA19_;
		nimDestroyAndDispose((*dest_p0).suggestionResultHook.ClE_0);
	}
LA19_: ;
	eqdestroy___OOZOOZOOZcompilerZoptions_u1370((*dest_p0).toCompile);
	if ((*dest_p0).cCompilerPath.p && !((*dest_p0).cCompilerPath.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).cCompilerPath.p);
}
	if ((*dest_p0).compileOptions.p && !((*dest_p0).compileOptions.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).compileOptions.p);
}
	if ((*dest_p0).linkOptions.p && !((*dest_p0).linkOptions.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).linkOptions.p);
}
	eqdestroy___system_u5582((*dest_p0).compileOptionsCmd);
	if ((*dest_p0).linkOptionsCmd.p && !((*dest_p0).linkOptionsCmd.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).linkOptionsCmd.p);
}
	eqdestroy___system_u5582((*dest_p0).externalToLink);
	eqdestroy___system_u5582((*dest_p0).cLinkedLibs);
	eqdestroy___OOZOOZOOZcompilerZoptions_u1187((*dest_p0).cLibs);
	eqdestroy___OOZOOZOOZcompilerZoptions_u1187((*dest_p0).cIncludes);
	eqdestroy___OOZOOZOOZcompilerZoptions_u1682((*dest_p0).configFiles);
	if ((*dest_p0).docCmd.p && !((*dest_p0).docCmd.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).docCmd.p);
}
	if ((*dest_p0).docRoot.p && !((*dest_p0).docRoot.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).docRoot.p);
}
	if ((*dest_p0).docSeeSrcUrl.p && !((*dest_p0).docSeeSrcUrl.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).docSeeSrcUrl.p);
}
	eqdestroy___system_u5582((*dest_p0).implicitIncludes);
	eqdestroy___system_u5582((*dest_p0).implicitImports);
	eqdestroy___system_u5582((*dest_p0).extraCmds);
	if ((*dest_p0).commandLine.p && !((*dest_p0).commandLine.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).commandLine.p);
}
	eqdestroy___system_u5582((*dest_p0).commandArgs);
	if ((*dest_p0).command.p && !((*dest_p0).command.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).command.p);
}
	if ((*dest_p0).stdinFile.p && !((*dest_p0).stdinFile.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).stdinFile.p);
}
	if ((*dest_p0).projectFull.p && !((*dest_p0).projectFull.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).projectFull.p);
}
	if ((*dest_p0).projectPath.p && !((*dest_p0).projectPath.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).projectPath.p);
}
	if ((*dest_p0).projectName.p && !((*dest_p0).projectName.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).projectName.p);
}
	{
		NIM_BOOL T23_;
		T23_ = (NIM_BOOL)0;
		T23_ = nimDecRefIsLastCyclicDyn((*dest_p0).cfileSpecificOptions);
		if (!T23_) goto LA24_;
		nimDestroyAndDispose((*dest_p0).cfileSpecificOptions);
	}
LA24_: ;
	{
		NIM_BOOL T28_;
		T28_ = (NIM_BOOL)0;
		T28_ = nimDecRefIsLastCyclicDyn((*dest_p0).moduleOverrides);
		if (!T28_) goto LA29_;
		nimDestroyAndDispose((*dest_p0).moduleOverrides);
	}
LA29_: ;
	{
		NIM_BOOL T33_;
		T33_ = (NIM_BOOL)0;
		T33_ = nimDecRefIsLastCyclicDyn((*dest_p0).dllOverrides);
		if (!T33_) goto LA34_;
		nimDestroyAndDispose((*dest_p0).dllOverrides);
	}
LA34_: ;
	if ((*dest_p0).nimcacheDir.p && !((*dest_p0).nimcacheDir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimcacheDir.p);
}
	if ((*dest_p0).libpath.p && !((*dest_p0).libpath.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).libpath.p);
}
	if ((*dest_p0).prefixDir.p && !((*dest_p0).prefixDir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).prefixDir.p);
}
	if ((*dest_p0).jsonBuildFile.p && !((*dest_p0).jsonBuildFile.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).jsonBuildFile.p);
}
	if ((*dest_p0).outDir.p && !((*dest_p0).outDir.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).outDir.p);
}
	if ((*dest_p0).outFile.p && !((*dest_p0).outFile.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).outFile.p);
}
	eqdestroy___OOZOOZOOZcompilerZoptions_u1187((*dest_p0).lazyPaths);
	eqdestroy___OOZOOZOOZcompilerZoptions_u1187((*dest_p0).searchPaths);
	eqdestroy___OOZOOZOOZcompilerZoptions_u1187((*dest_p0).nimblePaths);
	{
		NIM_BOOL T38_;
		T38_ = (NIM_BOOL)0;
		T38_ = nimDecRefIsLastCyclicDyn((*dest_p0).packageCache);
		if (!T38_) goto LA39_;
		nimDestroyAndDispose((*dest_p0).packageCache);
	}
LA39_: ;
	{
		NIM_BOOL T43_;
		T43_ = (NIM_BOOL)0;
		T43_ = nimDecRefIsLastCyclicDyn((*dest_p0).symbols);
		if (!T43_) goto LA44_;
		nimDestroyAndDispose((*dest_p0).symbols);
	}
LA44_: ;
	{
		NIM_BOOL T48_;
		T48_ = (NIM_BOOL)0;
		T48_ = nimDecRefIsLastCyclicDyn((*dest_p0).configVars);
		if (!T48_) goto LA49_;
		nimDestroyAndDispose((*dest_p0).configVars);
	}
LA49_: ;
	if ((*dest_p0).arguments.p && !((*dest_p0).arguments.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).arguments.p);
}
	if ((*dest_p0).nimbasePattern.p && !((*dest_p0).nimbasePattern.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).nimbasePattern.p);
}
	if ((*dest_p0).headerFile.p && !((*dest_p0).headerFile.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).headerFile.p);
}
	eqdestroy___basicZversions_u1310((*dest_p0).cppDefines.data);
	if ((*dest_p0).cmdInput.p && !((*dest_p0).cmdInput.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).cmdInput.p);
}
	if ((*dest_p0).unitSep.p && !((*dest_p0).unitSep.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).unitSep.p);
}
	eqdestroy___OOZOOZOOZcompilerZlineinfos_u2053((*dest_p0).m.fileInfos);
	eqdestroy___OOZOOZOOZcompilerZlineinfos_u566((*dest_p0).m.filenameToIndexTbl.data);
	eqdestroy___OOZOOZOOZcompilerZlineinfos_u1842((*dest_p0).m.msgContext);
	{
		NIM_BOOL T53_;
		T53_ = (NIM_BOOL)0;
		T53_ = nimDecRefIsLastCyclicDyn((*dest_p0).arcToExpand);
		if (!T53_) goto LA54_;
		nimDestroyAndDispose((*dest_p0).arcToExpand);
	}
LA54_: ;
	{
		NIM_BOOL T58_;
		T58_ = (NIM_BOOL)0;
		T58_ = nimDecRefIsLastCyclicDyn((*dest_p0).macrosToExpand);
		if (!T58_) goto LA59_;
		nimDestroyAndDispose((*dest_p0).macrosToExpand);
	}
LA59_: ;
	if ((*dest_p0).target.tnl.p && !((*dest_p0).target.tnl.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared((*dest_p0).target.tnl.p);
}
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4198);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA*, newProfileData__OOZOOZOOZcompilerZoptions_u654)(void) {
	tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA* result;
	tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	T1_ = (tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA*) nimNewObjUninit(sizeof(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA), NIM_ALIGNOF(tyObject_ProfileDatacolonObjectType___1I2ILcVsRjxoPir6qzEMbA));
	(*T1_).data = newTable__OOZOOZOOZcompilerZoptions_u672(((NI)32));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
N_LIB_PRIVATE N_NIMCALL(void, initConfigRefCommon__OOZOOZOOZcompilerZoptions_u956)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0) {
	(*conf_p0).selectedGC = ((tyEnum_TGCMode__pRk7Y2G9bpIo9bLxbZlHNngg)0);
	(*conf_p0).verbosity = ((NI)1);
	(*conf_p0).hintProcessingDots = NIM_TRUE;
	(*conf_p0).options = 76180606;
	(*conf_p0).globalOptions = IL64(360288039043334144);
	(*conf_p0).filenameOption = ((tyEnum_FilenameOption__Yih1XSIjpvq4ziRvx1GV8w)0);
	nimCopyMem((void*)(*conf_p0).foreignPackageNotes, (NIM_CONST void*)TM__zQHipMPUXFgsDrLbMR9atnA_26, 13);
	nimCopyMem((void*)(*conf_p0).notes, (NIM_CONST void*)NotesVerbosity__OOZOOZOOZcompilerZlineinfos_u228[(((NI)1))- 0], 13);
	nimCopyMem((void*)(*conf_p0).mainPackageNotes, (NIM_CONST void*)NotesVerbosity__OOZOOZOOZcompilerZlineinfos_u228[(((NI)1))- 0], 13);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*, newConfigRef__OOZOOZOOZcompilerZoptions_u1034)(void) {
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* result;
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	T1_ = (tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*) nimNewObj(sizeof(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw), NIM_ALIGNOF(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw));
	(*T1_).cCompiler = ((tyEnum_TSystemCC__x9cDM4gkFLLvOAjtG1vDBbw)1);
	(*T1_).macrosToExpand = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).arcToExpand = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	initMsgConfig__OOZOOZOOZcompilerZlineinfos_u392((&(*T1_).m));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).cppDefines = initHashSet__OOZOOZOOZcompilerZoptions_u1045(((NI)64));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).headerFile = TM__zQHipMPUXFgsDrLbMR9atnA_3;
	(*T1_).features = 0;
	(*T1_).legacyFeatures = 0;
	(*T1_).configVars = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).symbols = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).packageCache = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).searchPaths.len = 0; (*T1_).searchPaths.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).lazyPaths.len = 0; (*T1_).lazyPaths.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).outFile = TM__zQHipMPUXFgsDrLbMR9atnA_5;
	(*T1_).outDir = TM__zQHipMPUXFgsDrLbMR9atnA_7;
	(*T1_).prefixDir = TM__zQHipMPUXFgsDrLbMR9atnA_8;
	(*T1_).libpath = TM__zQHipMPUXFgsDrLbMR9atnA_9;
	(*T1_).nimcacheDir = TM__zQHipMPUXFgsDrLbMR9atnA_10;
	(*T1_).dllOverrides = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).moduleOverrides = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).cfileSpecificOptions = nstnewStringTable(((tyEnum_StringTableMode__6ub39bO039a0E9aDYDUuazVSw)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).projectName = TM__zQHipMPUXFgsDrLbMR9atnA_11;
	(*T1_).projectPath = TM__zQHipMPUXFgsDrLbMR9atnA_12;
	(*T1_).projectFull = TM__zQHipMPUXFgsDrLbMR9atnA_14;
	(*T1_).projectIsStdin = NIM_FALSE;
	(*T1_).stdinFile = TM__zQHipMPUXFgsDrLbMR9atnA_16;
	(*T1_).projectMainIdx = ((NI32)0);
	(*T1_).command = TM__zQHipMPUXFgsDrLbMR9atnA_17;
	(*T1_).commandArgs.len = 0; (*T1_).commandArgs.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).commandLine = TM__zQHipMPUXFgsDrLbMR9atnA_18;
	(*T1_).implicitImports.len = 0; (*T1_).implicitImports.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).implicitIncludes.len = 0; (*T1_).implicitIncludes.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).docSeeSrcUrl = TM__zQHipMPUXFgsDrLbMR9atnA_19;
	(*T1_).cIncludes.len = 0; (*T1_).cIncludes.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).cLibs.len = 0; (*T1_).cLibs.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).cLinkedLibs.len = 0; (*T1_).cLinkedLibs.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).backend = ((tyEnum_TBackend__Xu30yu1pJJNl5dArQPqGow)0);
	(*T1_).externalToLink.len = 0; (*T1_).externalToLink.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).linkOptionsCmd = TM__zQHipMPUXFgsDrLbMR9atnA_20;
	(*T1_).compileOptionsCmd.len = 0; (*T1_).compileOptionsCmd.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
	(*T1_).linkOptions = TM__zQHipMPUXFgsDrLbMR9atnA_21;
	(*T1_).compileOptions = TM__zQHipMPUXFgsDrLbMR9atnA_22;
	(*T1_).cCompilerPath = TM__zQHipMPUXFgsDrLbMR9atnA_23;
	(*T1_).toCompile.len = 0; (*T1_).toCompile.p = (tySequence__qQfLCgyHOp6hJAe9b61dSlg_Content*) newSeqPayload(0, sizeof(tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA), NIM_ALIGNOF(tyObject_Cfile__hzdg7S9apBtiaeRrhpGEgXA));
	(*T1_).arguments = TM__zQHipMPUXFgsDrLbMR9atnA_24;
	(*T1_).suggestMaxResults = ((NI)10000);
	(*T1_).maxLoopIterationsVM = ((NI)10000000);
	(*T1_).maxCallDepthVM = ((NI)2000);
	(*T1_).vmProfileData = newProfileData__OOZOOZOOZcompilerZoptions_u654();
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).spellSuggestMax = ((NI)-1);
	(*T1_).currentConfigDir = TM__zQHipMPUXFgsDrLbMR9atnA_25;
	result = T1_;
	initConfigRefCommon__OOZOOZOOZcompilerZoptions_u956(result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	setTargetFromSystem__OOZOOZOOZcompilerZplatform_u945((&(*result).target));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isatty__pureZterminal_u635(__stderrp);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T4_) goto LA5_;
		(*result).globalOptions |= ((NU64)1)<<(((((tyEnum_TGlobalOption__EmqdljhsMjyPLrsxWOhMOg)24))) & 63);
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, canonicalizePath__OOZOOZOOZcompilerZoptions_u2179)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 path_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = nosexpandFilename(path_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NimStringV2, slash___stdZprivateZospaths2_u88)(NimStringV2 head_p0, NimStringV2 tail_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = nosjoinPath(head_p0, tail_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
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(void, copyMem__system_u1755)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1755(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getRelativePathFromConfigPath__OOZOOZOOZcompilerZoptions_u2447)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 f_p1, NIM_BOOL isTitle_p2) {
	NimStringV2 result;
	NimStringV2 f_2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	f_2.len = 0; f_2.p = NIM_NIL;
	result = TM__zQHipMPUXFgsDrLbMR9atnA_28;
	f_2 = dollar___OOZOOZOOZcompilerZoptions_u2452(f_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!isTitle_p2) goto LA4_;
		{
			NimStringV2 dir_1;
			NI i_1;
			dir_1.len = 0; dir_1.p = NIM_NIL;
			i_1 = ((NI)0);
			{
				while (1) {
					NimStringV2 path_1;
					NimStringV2 colontmpD_;
					NimStringV2 colontmpD__2;
					path_1.len = 0; path_1.p = NIM_NIL;
					colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
					colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
					eqcopy___system_u2754((&dir_1), stdlibDirs__OOZOOZOOZcompilerZoptions_u2444[(i_1)- 0]);
					colontmpD_ = slash___stdZprivateZospaths2_u88((*conf_p0).libpath, dir_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					colontmpD__2 = noslastPathPart(f_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					path_1 = slash___stdZprivateZospaths2_u88(colontmpD_, colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					{
						NI T13_;
						tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__3;
						NimStringV2 T17_;
						T13_ = (NI)0;
						T13_ = noscmpPaths(path_1, f_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						if (!(T13_ == ((NI)0))) goto LA14_;
						nimZeroMem((void*)(&colontmpD__3), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
						T17_.len = 0; T17_.p = NIM_NIL;
						nossplitFile(f_2, (&colontmpD__3));
						if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
						T17_ = rawNewString(colontmpD__3.Field1.len + 4);
appendString((&T17_), TM__zQHipMPUXFgsDrLbMR9atnA_43);
appendString((&T17_), colontmpD__3.Field1);
						result = T17_;
						eqdestroy___pureZos_u217((&colontmpD__3));
						if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
						if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
						if (path_1.p && !(path_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(path_1.p);
}
						if (dir_1.p && !(dir_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dir_1.p);
}
						if (f_2.p && !(f_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(f_2.p);
}
						goto BeforeRet_;
						{
							LA16_:;
						}
						{
							eqdestroy___pureZos_u217((&colontmpD__3));
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					}
LA14_: ;
					{
						if (!(((NI)12) <= i_1)) goto LA22_;
						if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
						if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
						if (path_1.p && !(path_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(path_1.p);
}
						goto LA8;
					}
LA22_: ;
					i_1 += ((NI)1);
					{
						LA10_:;
					}
					{
						if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
						if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
						if (path_1.p && !(path_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(path_1.p);
}
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				}
			} LA8: ;
			{
				LA7_:;
			}
			{
				if (dir_1.p && !(dir_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dir_1.p);
}
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	}
LA4_: ;
	{
		NimStringV2* itX60gensym41__1;
		NI i_2;
		NI L_1;
		NI T29_;
		itX60gensym41__1 = (NimStringV2*)0;
		i_2 = ((NI)0);
		T29_ = (*conf_p0).searchPaths.len;
		L_1 = T29_;
		{
			while (1) {
				NimStringV2 itX60gensym41__2;
				if (!(i_2 < L_1)) goto LA31;
				itX60gensym41__2.len = 0; itX60gensym41__2.p = NIM_NIL;
				if (i_2 < 0 || i_2 >= (*conf_p0).searchPaths.len){ raiseIndexError2(i_2,(*conf_p0).searchPaths.len-1); goto LA32_;
				}
				itX60gensym41__1 = (&(*conf_p0).searchPaths.p->data[i_2]);
				itX60gensym41__2 = dollar___OOZOOZOOZcompilerZoptions_u2542((*itX60gensym41__1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
				{
					NIM_BOOL T35_;
					T35_ = (NIM_BOOL)0;
					T35_ = isRelativeTo__stdZprivateZospaths2_u156(f_2, itX60gensym41__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
					if (!T35_) goto LA36_;
					result = nosrelativePath(f_2, itX60gensym41__2, 47);
					if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
					if (itX60gensym41__2.p && !(itX60gensym41__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(itX60gensym41__2.p);
}
					if (f_2.p && !(f_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(f_2.p);
}
					goto BeforeRet_;
				}
LA36_: ;
				i_2 += ((NI)1);
				{
					NI T40_;
					T40_ = (*conf_p0).searchPaths.len;
					if (!!((T40_ == L_1))) goto LA41_;
					failedAssertImpl__stdZassertions_u95(TM__zQHipMPUXFgsDrLbMR9atnA_45);
					if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
				}
LA41_: ;
				{
					LA32_:;
				}
				{
					if (itX60gensym41__2.p && !(itX60gensym41__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(itX60gensym41__2.p);
}
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA31: ;
		}
	}
	{
		NimStringV2* itX60gensym42__1;
		NI i_3;
		NI L_2;
		NI T46_;
		itX60gensym42__1 = (NimStringV2*)0;
		i_3 = ((NI)0);
		T46_ = (*conf_p0).lazyPaths.len;
		L_2 = T46_;
		{
			while (1) {
				NimStringV2 itX60gensym42__2;
				if (!(i_3 < L_2)) goto LA48;
				itX60gensym42__2.len = 0; itX60gensym42__2.p = NIM_NIL;
				if (i_3 < 0 || i_3 >= (*conf_p0).lazyPaths.len){ raiseIndexError2(i_3,(*conf_p0).lazyPaths.len-1); goto LA49_;
				}
				itX60gensym42__1 = (&(*conf_p0).lazyPaths.p->data[i_3]);
				itX60gensym42__2 = dollar___OOZOOZOOZcompilerZoptions_u2542((*itX60gensym42__1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
				{
					NIM_BOOL T52_;
					T52_ = (NIM_BOOL)0;
					T52_ = isRelativeTo__stdZprivateZospaths2_u156(f_2, itX60gensym42__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
					if (!T52_) goto LA53_;
					result = nosrelativePath(f_2, itX60gensym42__2, 47);
					if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
					if (itX60gensym42__2.p && !(itX60gensym42__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(itX60gensym42__2.p);
}
					if (f_2.p && !(f_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(f_2.p);
}
					goto BeforeRet_;
				}
LA53_: ;
				i_3 += ((NI)1);
				{
					NI T57_;
					T57_ = (*conf_p0).lazyPaths.len;
					if (!!((T57_ == L_2))) goto LA58_;
					failedAssertImpl__stdZassertions_u95(TM__zQHipMPUXFgsDrLbMR9atnA_46);
					if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
				}
LA58_: ;
				{
					LA49_:;
				}
				{
					if (itX60gensym42__2.p && !(itX60gensym42__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(itX60gensym42__2.p);
}
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA48: ;
		}
	}
	{
		LA1_:;
	}
	{
		if (f_2.p && !(f_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(f_2.p);
}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, eqdestroy___system_u281)(NimStringV2 x_p0) {
}
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(NCSTRING, nimToCStringConv)(NimStringV2 s_p0) {
	NCSTRING result;
	{
		if (!(s_p0.len == ((NI)0))) goto LA3_;
		result = "";
	}
	goto LA1_;
LA3_: ;
	{
		result = ((NCSTRING) ((*s_p0.p).data));
	}
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(NIM_BOOL, eqeq___system_u9048)(NCSTRING x_p0, NCSTRING y_p1) {
	NIM_BOOL result;
	{
		if (!(((void*) (x_p0)) == ((void*) (y_p1)))) goto LA3_;
		result = NIM_TRUE;
	}
	goto LA1_;
LA3_: ;
	{
		NIM_BOOL T6_;
		T6_ = (NIM_BOOL)0;
		T6_ = (((void*) (x_p0)) == NIM_NIL);
		if (T6_) goto LA7_;
		T6_ = (((void*) (y_p1)) == NIM_NIL);
LA7_: ;
		if (!T6_) goto LA8_;
		result = NIM_FALSE;
	}
	goto LA1_;
LA8_: ;
	{
		int T11_;
		T11_ = (int)0;
		T11_ = strcmp(x_p0, y_p1);
		result = (T11_ == ((NI32)0));
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getNimbleFile__OOZOOZOOZcompilerZoptions_u2221)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 path_p1) {
	NimStringV2 result;
	NI parents_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = TM__zQHipMPUXFgsDrLbMR9atnA_47;
	parents_1 = ((NI)0);
	{
		{
			NimStringV2 d_1;
			NimStringV2 current_1;
			d_1.len = 0; d_1.p = NIM_NIL;
			current_1.len = 0; current_1.p = NIM_NIL;
			eqcopy___system_u2754((&current_1), path_p1);
			{
				while (1) {
					NimStringV2 T6_;
					NI TM__zQHipMPUXFgsDrLbMR9atnA_48;
					T6_.len = 0; T6_.p = NIM_NIL;
					T6_ = nosparentDir(current_1);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u281(T6_); goto LA3_;}
					eqsink___system_u2760((&current_1), T6_);
					{
						if (!(current_1.len == ((NI)0))) goto LA9_;
						goto LA4;
					}
LA9_: ;
					d_1 = current_1;
					{
						NIM_BOOL T13_;
						NimStringV2* T16_;
						T13_ = (NIM_BOOL)0;
						T13_ = nsthasKey((*conf_p0).packageCache, d_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						if (!T13_) goto LA14_;
						T16_ = (NimStringV2*)0;
						T16_ = nstTake((*conf_p0).packageCache, d_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						eqcopy___system_u2754((&result), (*T16_));
						if (current_1.p && !(current_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(current_1.p);
}
						goto BeforeRet_;
					}
LA14_: ;
					if (nimAddInt(parents_1, ((NI)1), &TM__zQHipMPUXFgsDrLbMR9atnA_48)) { raiseOverflow(); goto LA3_;
					};
					parents_1 = (NI)(TM__zQHipMPUXFgsDrLbMR9atnA_48);
					{
						NimStringV2 file_1;
						NimStringV2 colontmp_;
						glob_t fX60gensym5__1;
						NI resX60gensym5__1;
						int T19_;
						file_1.len = 0; file_1.p = NIM_NIL;
						colontmp_.len = 0; colontmp_.p = NIM_NIL;
						file_1.len = 0; file_1.p = NIM_NIL;
						colontmp_.len = 0; colontmp_.p = NIM_NIL;
						colontmp_ = slash___stdZprivateZospaths2_u88(d_1, TM__zQHipMPUXFgsDrLbMR9atnA_50);
						if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
						nimZeroMem((void*)(&fX60gensym5__1), sizeof(glob_t));
						resX60gensym5__1 = (NI)0;
						fX60gensym5__1.gl_offs = ((NI)0);
						fX60gensym5__1.gl_pathc = ((NI)0);
						fX60gensym5__1.gl_pathv = ((NCSTRING*) NIM_NIL);
						T19_ = (int)0;
						T19_ = glob(nimToCStringConv(colontmp_), ((int)0), NIM_NIL, (&fX60gensym5__1));
						resX60gensym5__1 = ((NI) (T19_));
						{
							if (!(resX60gensym5__1 == ((NI)0))) goto LA23_;
							{
								NI iX60gensym5__1;
								NI colontmp__2;
								NI TM__zQHipMPUXFgsDrLbMR9atnA_51;
								NI res_1;
								iX60gensym5__1 = (NI)0;
								colontmp__2 = (NI)0;
								if (nimSubInt(fX60gensym5__1.gl_pathc, ((NI)1), &TM__zQHipMPUXFgsDrLbMR9atnA_51)) { raiseOverflow(); goto LA20_;
								};
								colontmp__2 = (NI)(TM__zQHipMPUXFgsDrLbMR9atnA_51);
								res_1 = ((NI)0);
								{
									while (1) {
										NimStringV2 pathX60gensym5__1;
										NI TM__zQHipMPUXFgsDrLbMR9atnA_54;
										if (!(res_1 <= colontmp__2)) goto LA27;
										pathX60gensym5__1.len = 0; pathX60gensym5__1.p = NIM_NIL;
										iX60gensym5__1 = ((NI) (res_1));
										{
											NIM_BOOL T31_;
											T31_ = (NIM_BOOL)0;
											T31_ = eqeq___system_u9048(fX60gensym5__1.gl_pathv[iX60gensym5__1], ((NCSTRING) NIM_NIL));
											if (!!(!(T31_))) goto LA32_;
											failedAssertImpl__stdZassertions_u95(TM__zQHipMPUXFgsDrLbMR9atnA_53);
											if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
										}
LA32_: ;
										pathX60gensym5__1 = cstrToNimstr(fX60gensym5__1.gl_pathv[iX60gensym5__1]);
										{
											NIM_BOOL T36_;
											T36_ = (NIM_BOOL)0;
											T36_ = nosfileExists(pathX60gensym5__1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
											if (!T36_) goto LA37_;
											eqsink___system_u2760((&file_1), pathX60gensym5__1);
											eqwasMoved___system_u2751((&pathX60gensym5__1));
											eqsink___system_u2760((&result), file_1);
											eqwasMoved___system_u2751((&file_1));
											if (pathX60gensym5__1.p && !(pathX60gensym5__1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(pathX60gensym5__1.p);
}
											globfree((&fX60gensym5__1));
											if (colontmp_.p && !(colontmp_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmp_.p);
}
											if (file_1.p && !(file_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(file_1.p);
}
											if (current_1.p && !(current_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(current_1.p);
}
											goto LA1;
										}
LA37_: ;
										if (nimAddInt(res_1, ((NI)1), &TM__zQHipMPUXFgsDrLbMR9atnA_54)) { raiseOverflow(); goto LA28_;
										};
										res_1 = (NI)(TM__zQHipMPUXFgsDrLbMR9atnA_54);
										{
											LA28_:;
										}
										{
											if (pathX60gensym5__1.p && !(pathX60gensym5__1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(pathX60gensym5__1.p);
}
										}
										if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
									} LA27: ;
								}
							}
						}
LA23_: ;
						{
							LA20_:;
						}
						{
							globfree((&fX60gensym5__1));
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
						{
							LA18_:;
						}
						{
							if (colontmp_.p && !(colontmp_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmp_.p);
}
							if (file_1.p && !(file_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(file_1.p);
}
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
					}
				}
			} LA4: ;
			{
				LA3_:;
			}
			{
				if (current_1.p && !(current_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(current_1.p);
}
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	} LA1: ;
	{
		NimStringV2 d_2;
		NimStringV2 current_2;
		d_2.len = 0; d_2.p = NIM_NIL;
		current_2.len = 0; current_2.p = NIM_NIL;
		eqcopy___system_u2754((&current_2), path_p1);
		{
			while (1) {
				NimStringV2 T51_;
				NI TM__zQHipMPUXFgsDrLbMR9atnA_55;
				T51_.len = 0; T51_.p = NIM_NIL;
				T51_ = nosparentDir(current_2);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u281(T51_); goto LA48_;}
				eqsink___system_u2760((&current_2), T51_);
				{
					if (!(current_2.len == ((NI)0))) goto LA54_;
					goto LA49;
				}
LA54_: ;
				d_2 = current_2;
				nstPut((*conf_p0).packageCache, d_2, result);
				if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
				if (nimSubInt(parents_1, ((NI)1), &TM__zQHipMPUXFgsDrLbMR9atnA_55)) { raiseOverflow(); goto LA48_;
				};
				parents_1 = (NI)(TM__zQHipMPUXFgsDrLbMR9atnA_55);
				{
					if (!(parents_1 <= ((NI)0))) goto LA58_;
					if (current_2.p && !(current_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(current_2.p);
}
					goto LA47;
				}
LA58_: ;
			}
		} LA49: ;
		{
			LA48_:;
		}
		{
			if (current_2.p && !(current_2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(current_2.p);
}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	} LA47: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, isEmpty__OOZOOZOOZcompilerZpathutils_u136)(NimStringV2 x_p0) {
	NIM_BOOL result;
	result = (x_p0.len == ((NI)0));
	return result;
}
static N_INLINE(NIM_BOOL, isEmpty__OOZOOZOOZcompilerZoptions_u2143)(NimStringV2 x_p0) {
	NIM_BOOL result;
	result = (x_p0.len == ((NI)0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, canonicalImportAux__OOZOOZOOZcompilerZoptions_u2746)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 file_p1) {
	NimStringV2 result;
	NimStringV2 ret_1;
	NimStringV2 dir_1;
	NimStringV2 colontmpD_;
	NimStringV2 colontmpD__2;
	NimStringV2 blitTmp_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	ret_1.len = 0; ret_1.p = NIM_NIL;
	dir_1.len = 0; dir_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	ret_1 = getRelativePathFromConfigPath__OOZOOZOOZcompilerZoptions_u2447(conf_p0, file_p1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = dollar___OOZOOZOOZcompilerZoptions_u2452(file_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = getNimbleFile__OOZOOZOOZcompilerZoptions_u2221(conf_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	dir_1 = nosparentDir(colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NimStringV2 relPath_1;
		T4_ = (NIM_BOOL)0;
		T4_ = isEmpty__OOZOOZOOZcompilerZpathutils_u136(dir_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T4_)) goto LA5_;
		relPath_1.len = 0; relPath_1.p = NIM_NIL;
		relPath_1 = relativeTo__OOZOOZOOZcompilerZpathutils_u197(file_p1, dir_1, 47);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		{
			NIM_BOOL T10_;
			NIM_BOOL T11_;
			NIM_BOOL T13_;
			T10_ = (NIM_BOOL)0;
			T11_ = (NIM_BOOL)0;
			T11_ = isEmpty__OOZOOZOOZcompilerZoptions_u2143(relPath_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			T10_ = !(T11_);
			if (!(T10_)) goto LA12_;
			T13_ = (NIM_BOOL)0;
			T13_ = isEmpty__OOZOOZOOZcompilerZoptions_u2143(ret_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			if (T13_) goto LA14_;
			T13_ = (relPath_1.len < ret_1.len);
LA14_: ;
			T10_ = T13_;
LA12_: ;
			if (!T10_) goto LA15_;
			eqsink___system_u2760((&ret_1), relPath_1);
			eqwasMoved___system_u2751((&relPath_1));
		}
LA15_: ;
		{
			LA7_:;
		}
		{
			if (relPath_1.p && !(relPath_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(relPath_1.p);
}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA5_: ;
	{
		NIM_BOOL T21_;
		NimStringV2 T24_;
		T21_ = (NIM_BOOL)0;
		T21_ = isEmpty__OOZOOZOOZcompilerZoptions_u2143(ret_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T21_) goto LA22_;
		T24_.len = 0; T24_.p = NIM_NIL;
		T24_ = relativeTo__OOZOOZOOZcompilerZpathutils_u197(file_p1, (*conf_p0).projectPath, 47);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u281(T24_); goto LA1_;}
		eqsink___system_u2760((&ret_1), T24_);
	}
LA22_: ;
	blitTmp_1 = ret_1;
	eqwasMoved___system_u2751((&ret_1));
	result = blitTmp_1;
	{
		LA1_:;
	}
	{
		if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
		if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
		if (dir_1.p && !(dir_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(dir_1.p);
}
		if (ret_1.p && !(ret_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(ret_1.p);
}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__OOZOOZOOZcompilerZoptions_u551)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ note_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	{
		if (!!((((*conf_p0).options &((NU32)1<<((NU)((((tyEnum_TOption__e9bb9ciMfT2jonTaHtdSs34Q)14)))&31U)))!=0))) goto LA4_;
		result = NIM_FALSE;
	}
	goto LA2_;
LA4_: ;
	{
		if (!(note_p1 == ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)103) || note_p1 == ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)99))) goto LA7_;
		result = (((*conf_p0).mainPackageNotes[(NU)((note_p1 - 20))>>3] &(1U<<((NU)((note_p1 - 20))&7U)))!=0);
	}
	goto LA2_;
LA7_: ;
	{
		result = (((*conf_p0).notes[(NU)((note_p1 - 20))>>3] &(1U<<((NU)((note_p1 - 20))&7U)))!=0);
	}
LA2_: ;
	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, isDefined__OOZOOZOOZcompilerZoptions_u953)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 symbol_p1) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nsthasKey((*conf_p0).symbols, symbol_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		result = NIM_TRUE;
	}
	goto LA1_;
LA4_: ;
	{
		NI T7_;
		if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
		}
		T7_ = (NI)0;
		T7_ = nsuCmpIgnoreStyle(symbol_p1, CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T7_ == ((NI)0))) goto LA8_;
		result = NIM_TRUE;
	}
	goto LA1_;
LA8_: ;
	{
		NI T11_;
		if ((*conf_p0).target.targetOS < 1 || (*conf_p0).target.targetOS > 34){ raiseIndexError3((*conf_p0).target.targetOS, 1, 34); goto BeforeRet_;
		}
		T11_ = (NI)0;
		T11_ = nsuCmpIgnoreStyle(symbol_p1, OS__OOZOOZOOZcompilerZplatform_u533[((*conf_p0).target.targetOS)- 1].Field0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T11_ == ((NI)0))) goto LA12_;
		result = NIM_TRUE;
	}
	goto LA1_;
LA12_: ;
	{
		NimStringV2 colontmpD_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD_ = nsuNormalize(symbol_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		switch (hashString(colontmpD_) & 31) {
		case 0: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_78)) goto LA24_;
break;
		case 1: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_76)) goto LA24_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_110)) goto LA38_;
break;
		case 2: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_106)) goto LA36_;
break;
		case 3: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_74)) goto LA23_;
break;
		case 6: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_68)) goto LA20_;
break;
		case 7: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_94)) goto LA30_;
break;
		case 13: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_86)) goto LA27_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_90)) goto LA29_;
break;
		case 15: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_57)) goto LA15_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_59)) goto LA16_;
break;
		case 19: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_64)) goto LA18_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_72)) goto LA22_;
break;
		case 20: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_100)) goto LA33_;
break;
		case 21: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_92)) goto LA29_;
break;
		case 22: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_96)) goto LA31_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_102)) goto LA34_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_104)) goto LA35_;
break;
		case 23: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_61)) goto LA17_;
break;
		case 24: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_82)) goto LA26_;
break;
		case 25: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_88)) goto LA28_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_108)) goto LA37_;
break;
		case 26: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_84)) goto LA26_;
break;
		case 27: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_98)) goto LA32_;
break;
		case 30: 
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_62)) goto LA18_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_66)) goto LA19_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_70)) goto LA21_;
if (eqStrings(colontmpD_, TM__zQHipMPUXFgsDrLbMR9atnA_80)) goto LA25_;
break;
		}
		goto LA39_;
		LA15_: ;
		{
			result = ((*conf_p0).target.targetCPU == ((tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw)1));
		}
		goto LA40_;
		LA16_: ;
		{
			result = ((*conf_p0).target.targetCPU == ((tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw)10));
		}
		goto LA40_;
		LA17_: ;
		{
			result = ((*conf_p0).target.targetCPU == ((tyEnum_TSystemCPU__J9bZO9b8hJ1WLdz06MAdDwNw)11));
		}
		goto LA40_;
		LA18_: ;
		{
			result = ((IL64(16171532272) &((NU64)1<<((NU)(((*conf_p0).target.targetOS))&63U)))!=0);
		}
		goto LA40_;
		LA19_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)4) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)24));
		}
		goto LA40_;
		LA20_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)9) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)10) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)11) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)12) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)13));
		}
		goto LA40_;
		LA21_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)10) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)13));
		}
		goto LA40_;
		LA22_: ;
		{
			if ((*conf_p0).target.targetOS < 1 || (*conf_p0).target.targetOS > 34){ raiseIndexError3((*conf_p0).target.targetOS, 1, 34); goto BeforeRet_;
			}
			result = ((OS__OOZOOZOOZcompilerZplatform_u533[((*conf_p0).target.targetOS)- 1].Field12 &((NU8)1<<((NU)((((tyEnum_TInfoOSProp__1g53Rzvi0L09autFJPVfO8A)3)))&7U)))!=0);
		}
		goto LA40_;
		LA23_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)1));
		}
		goto LA40_;
		LA24_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)2));
		}
		goto LA40_;
		LA25_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)20) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)21) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)22));
		}
		goto LA40_;
		LA26_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)21) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)22));
		}
		goto LA40_;
		LA27_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)7));
		}
		goto LA40_;
		LA28_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)30));
		}
		goto LA40_;
		LA29_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)31));
		}
		goto LA40_;
		LA30_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)32));
		}
		goto LA40_;
		LA31_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)33));
		}
		goto LA40_;
		LA32_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field2 == ((tyEnum_Endianness__189czH9birS9aA4NtsoBxvzLQ)0));
		}
		goto LA40_;
		LA33_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field2 == ((tyEnum_Endianness__189czH9birS9aA4NtsoBxvzLQ)1));
		}
		goto LA40_;
		LA34_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field4 == ((NI)8));
		}
		goto LA40_;
		LA35_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field4 == ((NI)16));
		}
		goto LA40_;
		LA36_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field4 == ((NI)32));
		}
		goto LA40_;
		LA37_: ;
		{
			if ((*conf_p0).target.targetCPU < 1 || (*conf_p0).target.targetCPU > 29){ raiseIndexError3((*conf_p0).target.targetCPU, 1, 29); goto BeforeRet_;
			}
			result = (CPU__OOZOOZOOZcompilerZplatform_u739[((*conf_p0).target.targetCPU)- 1].Field4 == ((NI)64));
		}
		goto LA40_;
		LA38_: ;
		{
			result = ((*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)7) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)9) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)10) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)11) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)12) || (*conf_p0).target.targetOS == ((tyEnum_TSystemOS__VsfE4TAWvW7J5J9ah0k9bhQw)21));
		}
		goto LA40_;
		LA39_: ;
		{
			result = NIM_FALSE;
		}
LA40_: ;
		if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
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));
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(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)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u813((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		{
			if (!result) goto LA13_;
			{
				if (!(((NI)0) < (*cell_1).rootIdx)) goto LA17_;
				unregisterCycle__system_u3185(cell_1);
			}
LA17_: ;
		}
LA13_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___OOZOOZOOZcompilerZoptions_u1943)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw** dest_p0, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* src_p1) {
	{
		if (!src_p1) goto LA3_;
		nimIncRef(src_p1);
	}
LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastDyn((*dest_p0));
		if (!T7_) goto LA8_;
		eqdestroy___OOZOOZOOZcompilerZoptions_u1565((&(*(*dest_p0))));
		nimRawDispose((*dest_p0), ((NI)8));
	}
LA8_: ;
	(*dest_p0) = src_p1;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZoptions_u1940)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn(dest_p0);
		if (!T3_) goto LA4_;
		eqdestroy___OOZOOZOOZcompilerZoptions_u1565((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*, eqdup___OOZOOZOOZcompilerZoptions_u1946)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* src_p0) {
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* result;
	result = src_p0;
	{
		if (!src_p0) goto LA3_;
		nimIncRef(src_p0);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*, newPartialConfigRef__OOZOOZOOZcompilerZoptions_u1962)(void) {
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* result;
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = NIM_NIL;
	T1_ = (tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*) nimNewObj(sizeof(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw), NIM_ALIGNOF(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw));
	result = T1_;
	initConfigRefCommon__OOZOOZOOZcompilerZoptions_u956(result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___basicZparse95requires_u4700)(tyProc__JiHYsLjIe9cOjP539bvP3aaA* dest_p0, tyProc__JiHYsLjIe9cOjP539bvP3aaA src_p1) {
	void* colontmp_;
	colontmp_ = (*dest_p0).ClE_0;
	(*dest_p0).ClE_0 = src_p1.ClE_0;
	(*dest_p0).ClP_0 = src_p1.ClP_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicDyn(colontmp_);
		if (!T3_) goto LA4_;
		nimDestroyAndDispose(colontmp_);
	}
LA4_: ;
}
