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

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
typedef struct tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA;
typedef struct tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg;
typedef struct tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA tySequence__E0kio2ZnplNTuln9bsnljSA;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content tySequence__E0kio2ZnplNTuln9bsnljSA_Content;
typedef struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__hTEiKNj3evQAjIXUI21elA tySequence__hTEiKNj3evQAjIXUI21elA;
typedef struct tySequence__hTEiKNj3evQAjIXUI21elA_Content tySequence__hTEiKNj3evQAjIXUI21elA_Content;
typedef struct tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw;
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__xOJ2kx2lq9bBfIm3IXnde3Q tySequence__xOJ2kx2lq9bBfIm3IXnde3Q;
typedef struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content;
typedef struct tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA;
typedef struct tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ tySequence__S89cE01OvNjsN9c71FKsSrqQ;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg;
typedef struct tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
typedef NU8 tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw;
typedef NU8 tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw;
typedef NU8 tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw;
struct tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA {
	tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw targetCPU;
	tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw hostCPU;
	tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw targetOS;
	tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw hostOS;
	NI intSize;
	NI floatSize;
	NI ptrSize;
	NimStringV2 tnl;
};
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
typedef NU64 tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw;
struct tySequence__E0kio2ZnplNTuln9bsnljSA {
  NI len; tySequence__E0kio2ZnplNTuln9bsnljSA_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
struct tySequence__hTEiKNj3evQAjIXUI21elA {
  NI len; tySequence__hTEiKNj3evQAjIXUI21elA_Content* p;
};
struct tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA trackPos;
	NIM_BOOL trackPosAttached;
	tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw errorOutputs;
	tySequence__E0kio2ZnplNTuln9bsnljSA msgContext;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA lastError;
	tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A filenameToIndexTbl;
	tySequence__hTEiKNj3evQAjIXUI21elA fileInfos;
	NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__o3jmnnVs6HdBg5KcNAzYiQ;
typedef NU8 tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ;
typedef NU8 tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg;
typedef NU8 tyEnum_ExceptionSystem__dJ6sXW7k8NDYNNBUjVZmnw;
typedef NU8 tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw {
	tySequence__4eRCaZmrYLLw2k30GPTiMw data;
	NI counter;
};
typedef NU32 tySet_tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ;
typedef NU8 tySet_tyEnum_LegacyFeature__yvNVqOQTgcxHpvo1MvfBfA;
typedef NU8 tyEnum_IdeCmd__mZiSMTDWSAKKDbZfXDQwng;
typedef NU8 tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA;
typedef NU8 tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw[13];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tySet_tyEnum_StdOrrKind__so1PI9cHP1cN622ePtqa0yw;
struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q {
  NI len; tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA* result_p0, void* ClE_0);
void* ClE_0;
} tyProc__QQyR5yGA47tr5TwLxcC4Gw;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output_p0, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__mHEDvws7FmOtnFhcQsM8UA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 msg_p2, tyEnum_Severity__mHEDvws7FmOtnFhcQsM8UA severity_p3, void* ClE_0);
void* ClE_0;
} tyProc__DA9aR62IikoxFqfC5rIT9cuw;
struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg {
	tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw backend;
	tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA target;
	NI linesCompiled;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A globalOptions;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* macrosToExpand;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* arcToExpand;
	tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw m;
	tyEnum_FilenameOption__o3jmnnVs6HdBg5KcNAzYiQ filenameOption;
	NimStringV2 unitSep;
	NI evalTemplateCounter;
	NI evalMacroCounter;
	NI8 exitcode;
	tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ cmd;
	NimStringV2 cmdInput;
	NIM_BOOL projectIsCmd;
	NIM_BOOL implicitCmd;
	tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg selectedGC;
	tyEnum_ExceptionSystem__dJ6sXW7k8NDYNNBUjVZmnw exc;
	NIM_BOOL hintProcessingDots;
	NI verbosity;
	NI numberOfProcessors;
	NF lastCmdTime;
	tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA symbolFiles;
	NI spellSuggestMax;
	tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw cppDefines;
	NimStringV2 headerFile;
	NimStringV2 nimbasePattern;
	tySet_tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ features;
	tySet_tyEnum_LegacyFeature__yvNVqOQTgcxHpvo1MvfBfA legacyFeatures;
	NimStringV2 arguments;
	tyEnum_IdeCmd__mZiSMTDWSAKKDbZfXDQwng ideCmd;
	tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA cCompiler;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw modifiedyNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw cmdlineNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw foreignPackageNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw notes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw warningAsErrors;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw mainPackageNotes;
	NI mainPackageId;
	NI errorCounter;
	NI hintCounter;
	NI warnCounter;
	NI errorMax;
	NI maxLoopIterationsVM;
	NI maxCallDepthVM;
	NIM_BOOL isVmTrace;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* configVars;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* symbols;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* packageCache;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
	NimStringV2 outFile;
	NimStringV2 outDir;
	NimStringV2 jsonBuildFile;
	NimStringV2 prefixDir;
	NimStringV2 libpath;
	NimStringV2 nimcacheDir;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* dllOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* moduleOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* cfileSpecificOptions;
	NimStringV2 projectName;
	NimStringV2 projectPath;
	NimStringV2 projectFull;
	NIM_BOOL projectIsStdin;
	NimStringV2 stdinFile;
	tySet_tyEnum_StdOrrKind__so1PI9cHP1cN622ePtqa0yw 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__xOJ2kx2lq9bBfIm3IXnde3Q toCompile;
	tyProc__QQyR5yGA47tr5TwLxcC4Gw suggestionResultHook;
	NI suggestVersion;
	NI suggestMaxResults;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA lastLineInfo;
	tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
	tyProc__DA9aR62IikoxFqfC5rIT9cuw structuredErrorHook;
	NimStringV2 cppCustomNamespace;
	NimStringV2 nimMainPrefix;
	tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ* vmProfileData;
	NIM_BOOL expandProgress;
	NI expandLevels;
	NimStringV2 expandNodeResult;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA expandPosition;
	NimStringV2 currentConfigDir;
	NI clientProcessId;
};
typedef NU8 tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw;
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
	NimStringV2 Field0;
	NimStringV2 Field1;
};
typedef tyTuple__UV3llMMYFckfui8YMBuUZA tyArray__F7dByLAX1wXrllnAxnLQBA[5];
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typField;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw flags;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident;
} _kind_5;
	struct {
	tySequence__9ahcSjIErJohSBBFLwuF56Q sons;
} _kind_6;
};
};
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
	NimStringV2 Field0;
	NimStringV2 Field1;
	NimStringV2 Field2;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {
	TNimTypeV2* m_type;
};
struct tySequence__S89cE01OvNjsN9c71FKsSrqQ {
  NI len; tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content* p;
};
struct Exception {
	RootObj Sup;
	Exception* parent;
	NCSTRING name;
	NimStringV2 message;
	tySequence__S89cE01OvNjsN9c71FKsSrqQ trace;
	Exception* up;
};
typedef NU8 tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA;
typedef NU8 tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA {
	NI32 module;
	NI32 item;
};
typedef NU8 tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q;
typedef NU16 tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg;
typedef NU64 tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw {
	tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ k;
	tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg storage;
	tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* lode;
	NimStringV2 snippet;
};
struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
union{
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* gcUnsafetyReason;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* transformedBody;
} _kind_1;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* guard;
	NI bitsize;
	NI alignment;
} _kind_2;
};
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ast;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig* annex;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constraint;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* instantiatedFrom;
};
typedef NU16 tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg;
typedef tyTuple__UV3llMMYFckfui8YMBuUZA tyArray__iZfEKF6xKx0nEP9aX3qAxfg[7];
struct tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA Field0;
	NimStringV2 Field1;
};
struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content { NI cap; tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ 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__xPdjmgevOVG8T0Aq8BK7jw {
	NimStringV2 fullPath;
	NimStringV2 projPath;
	NimStringV2 shortName;
	NimStringV2 quotedName;
	NimStringV2 quotedFullName;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
	NimStringV2 dirtyFile;
	NimStringV2 hash;
	NIM_BOOL dirty;
};
struct tySequence__hTEiKNj3evQAjIXUI21elA_Content { NI cap; tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw 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]; };
typedef NU8 tySet_tyEnum_CfileFlag__qhMBL5cBz484papsb5WgFQ;
struct tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg {
	NimStringV2 nimname;
	NimStringV2 cname;
	NimStringV2 obj;
	tySet_tyEnum_CfileFlag__qhMBL5cBz484papsb5WgFQ flags;
	NimStringV2 customArgs;
};
struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content { NI cap; tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg data[SEQ_DECL_SIZE]; };
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA {
	NCSTRING procname;
	NI line;
	NCSTRING filename;
};
struct tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content { NI cap; tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(NimStringV2, relativeTo__pathutils_u196)(NimStringV2 fullPath_p0, NimStringV2 baseFilename_p1, NIM_CHAR sep_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2700)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___system_u2688)(NimStringV2* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, multiReplace__pureZstrutils_u1885)(NimStringV2 s_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* replacements_p1, NI replacements_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getModuleName__modulepaths_u10)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, pathSubs__options_u3759)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 p_p1, NimStringV2 config_p2);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg, nossplitFile)(NimStringV2 path_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toFullPath__msgs_u624)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NI32 fileIdx_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZos_u200)(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_u1227)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2694)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, popCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u3661)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3255)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
static N_INLINE(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getPIdent__ast_u2825)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___idents_u158)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA** dest_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_u155)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* dest_p0);
static N_INLINE(NIM_BOOL, eqeq___idents_u366)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* a_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* b_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuReplaceStr)(NimStringV2 s_p0, NimStringV2 sub_p1, NimStringV2 by_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, renderTree__renderer_u59)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg renderFlags_p1);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3252)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr_p0, NimStringV2 a_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, findModule__options_u4101)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 modulename_p1, NimStringV2 currentModule_p2);
static N_INLINE(NIM_BOOL, isEmpty__options_u4086)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_u2166)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_u404)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 filename_p1);
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_2 = { 2 | NIM_STRLIT_FLAG, "@m" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_3 = {2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_2};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_4 = { 2 | NIM_STRLIT_FLAG, "@p" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_5 = {2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_4};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_6 = { 2 | NIM_STRLIT_FLAG, "@n" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_7 = {2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_6};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_9 = { 1 | NIM_STRLIT_FLAG, "/" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_10 = { 2 | NIM_STRLIT_FLAG, "@s" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_11 = { 1 | NIM_STRLIT_FLAG, "#" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_12 = { 2 | NIM_STRLIT_FLAG, "@h" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_13 = { 1 | NIM_STRLIT_FLAG, "@" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_14 = { 2 | NIM_STRLIT_FLAG, "@@" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_15 = { 1 | NIM_STRLIT_FLAG, ":" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__GM5IT6miOywfWPAzqo7pmA_16 = { 2 | NIM_STRLIT_FLAG, "@c" };
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__GM5IT6miOywfWPAzqo7pmA_17 = { 14 | NIM_STRLIT_FLAG, "invalid path: " };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_18 = {14, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_17};
static const struct {
  NI cap; NIM_CHAR data[66+1];
} TM__GM5IT6miOywfWPAzqo7pmA_20 = { 66 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/modulepaths.nim" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_21 = { 1 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_22 = {1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_21};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__GM5IT6miOywfWPAzqo7pmA_23 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_24 = {0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_25 = {0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_26 = {0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_27 = {1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_21};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_28 = {0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23};
static const struct {
  NI cap; NIM_CHAR data[54+1];
} TM__GM5IT6miOywfWPAzqo7pmA_29 = { 54 | NIM_STRLIT_FLAG, "using \'.\' instead of \'/\' in import paths is deprecated" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_30 = {54, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_29};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__GM5IT6miOywfWPAzqo7pmA_32 = { 1 | NIM_STRLIT_FLAG, "." };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_33 = {1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_32};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_34 = {1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_9};
static const struct {
  NI cap; NIM_CHAR data[25+1];
} TM__GM5IT6miOywfWPAzqo7pmA_35 = { 25 | NIM_STRLIT_FLAG, "invalid module name: \'$1\'" };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_36 = {25, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_35};
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_38 = {0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23};
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__GM5IT6miOywfWPAzqo7pmA_39 = { 18 | NIM_STRLIT_FLAG, "cannot open file: " };
static const NimStringV2 TM__GM5IT6miOywfWPAzqo7pmA_40 = {18, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_39};
static NIM_CONST tyArray__F7dByLAX1wXrllnAxnLQBA TM__GM5IT6miOywfWPAzqo7pmA_8 = {{{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_9},
{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_10}}
,
{{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_9},
{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_10}}
,
{{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_11},
{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_12}}
,
{{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_13},
{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_14}}
,
{{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_15},
{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_16}}
}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GM5IT6miOywfWPAzqo7pmA_19 = {{66, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_20},
((NI)24),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GM5IT6miOywfWPAzqo7pmA_31 = {{66, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_20},
((NI)62),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GM5IT6miOywfWPAzqo7pmA_37 = {{66, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_20},
((NI)67),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GM5IT6miOywfWPAzqo7pmA_41 = {{66, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_20},
((NI)77),
((NI)16)}
;
static NIM_CONST tyArray__iZfEKF6xKx0nEP9aX3qAxfg TM__GM5IT6miOywfWPAzqo7pmA_42 = {{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_14},
{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_13}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_12},
{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_11}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_10},
{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_9}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_2},
{0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_4},
{0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_6},
{0, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_23}}
,
{{2, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_16},
{1, (NimStrPayload*)&TM__GM5IT6miOywfWPAzqo7pmA_15}}
}
;
extern NIM_BOOL nimInErrorMode__system_u4143;
extern Exception* currException__system_u3628;
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4143);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, mangleModuleName__modulepaths_u40)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 path_p1) {
	NimStringV2 result;
	NimStringV2 best_1;
	NimStringV2 prefix_1;
	NimStringV2 colontmpD_;
	tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw selectedBase_1;
	NimStringV2 T24_;
	NimStringV2 T28_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	best_1.len = 0; best_1.p = NIM_NIL;
	prefix_1.len = 0; prefix_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	best_1 = relativeTo__pathutils_u196(path_p1, (*conf_p0).projectPath, 47);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	selectedBase_1 = ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)0);
	{
		NimStringV2* x_1;
		NI i_1;
		NI L_1;
		NI T3_;
		x_1 = (NimStringV2*)0;
		i_1 = ((NI)0);
		T3_ = (*conf_p0).searchPaths.len;
		L_1 = T3_;
		{
			while (1) {
				NimStringV2 other_1;
				if (!(i_1 < L_1)) goto LA5;
				other_1.len = 0; other_1.p = NIM_NIL;
				x_1 = (&(*conf_p0).searchPaths.p->data[i_1]);
				other_1 = relativeTo__pathutils_u196(path_p1, (*x_1), 47);
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				{
					if (!(other_1.len < best_1.len)) goto LA9_;
					eqsink___system_u2700((&best_1), other_1);
					eqwasMoved___system_u2688((&other_1));
					selectedBase_1 = ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)1);
				}
LA9_: ;
				i_1 += ((NI)1);
				{
					LA6_:;
				}
				{
					eqdestroy___system_u2691(other_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA5: ;
		}
	}
	{
		NimStringV2* x_2;
		NI i_2;
		NI L_2;
		NI T14_;
		x_2 = (NimStringV2*)0;
		i_2 = ((NI)0);
		T14_ = (*conf_p0).nimblePaths.len;
		L_2 = T14_;
		{
			while (1) {
				NimStringV2 other_2;
				if (!(i_2 < L_2)) goto LA16;
				other_2.len = 0; other_2.p = NIM_NIL;
				x_2 = (&(*conf_p0).nimblePaths.p->data[i_2]);
				other_2 = relativeTo__pathutils_u196(path_p1, (*x_2), 47);
				if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				{
					if (!(other_2.len < best_1.len)) goto LA20_;
					eqsink___system_u2700((&best_1), other_2);
					eqwasMoved___system_u2688((&other_2));
					selectedBase_1 = ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)2);
				}
LA20_: ;
				i_2 += ((NI)1);
				{
					LA17_:;
				}
				{
					eqdestroy___system_u2691(other_2);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA16: ;
		}
	}
	T24_.len = 0; T24_.p = NIM_NIL;
	switch (selectedBase_1) {
	case ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)0):
	{
		prefix_1 = TM__GM5IT6miOywfWPAzqo7pmA_3;
	}
	break;
	case ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)1):
	{
		prefix_1 = TM__GM5IT6miOywfWPAzqo7pmA_5;
	}
	break;
	case ((tyEnum_SelectedBase__XZWzQdLuPoko2I9cigzaGcw)2):
	{
		prefix_1 = TM__GM5IT6miOywfWPAzqo7pmA_7;
	}
	break;
	default: __builtin_unreachable();
	}
	T28_.len = 0; T28_.p = NIM_NIL;
	colontmpD_ = multiReplace__pureZstrutils_u1885(best_1, TM__GM5IT6miOywfWPAzqo7pmA_8, 5);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T28_ = rawNewString(prefix_1.len + colontmpD_.len + 0);
appendString((&T28_), prefix_1);
appendString((&T28_), colontmpD_);
	result = T28_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(best_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2172(p_p0, ((int)0), size_p1);
}
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (targetDepth_p1 <= (*source_p0).depth);
	if (!(T1_)) goto LA2_;
	T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);
LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
	Exception* result;
	result = currException__system_u3628;
	return result;
}
static N_INLINE(void, popCurrentException)(void) {
	eqcopy___system_u3661(&currException__system_u3628, (*currException__system_u3628).up, NIM_FALSE);
}
static N_INLINE(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getPIdent__ast_u2825)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0) {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* result;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	switch ((*a_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		eqcopy___idents_u158(&result, (*(*a_p0)._kind_4.sym).name);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
	{
		eqcopy___idents_u158(&result, (*a_p0)._kind_5.ident);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)57):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)56):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)165):
	{
		eqcopy___idents_u158(&result, (*(*(*a_p0)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		result = ((tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*) NIM_NIL);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, eqeq___idents_u366)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* a_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* b_p1) {
	NIM_BOOL result;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (a_p0 == 0);
		if (T3_) goto LA4_;
		T3_ = (b_p1 == 0);
LA4_: ;
		if (!T3_) goto LA5_;
		result = (a_p0 == b_p1);
	}
	goto LA1_;
LA5_: ;
	{
		result = ((*a_p0).id == (*b_p1).id);
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getModuleName__modulepaths_u10)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NimStringV2 result;
NIM_BOOL oldNimErrFin24_;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	switch ((*n_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)20):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)21):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)22):
	{
		NimStringV2 colontmpD_;
		tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__2;
		NimStringV2 T4_;
		tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T5_;
		NimStringV2 T6_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		nimZeroMem((void*)(&colontmpD__2), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
		T4_.len = 0; T4_.p = NIM_NIL;
		T4_ = toFullPath__msgs_u624(conf_p0, (*n_p1).info.fileIndex);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T4_); goto LA3_;}
		colontmpD_ = T4_;
		nimZeroMem((void*)(&T5_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
		T5_ = nossplitFile(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___pureZos_u200(T5_); goto LA3_;}
		colontmpD__2 = T5_;
		T6_.len = 0; T6_.p = NIM_NIL;
		T6_ = pathSubs__options_u3759(conf_p0, (*n_p1)._kind_3.strVal, colontmpD__2.Field0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T6_); goto LA3_;}
		result = T6_;
		{
			LA3_:;
		}
		{
			eqdestroy___pureZos_u200(colontmpD__2);
			eqdestroy___system_u2691(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		if (NIM_UNLIKELY(*nimErr_)) {
			LA2_:;
			if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
				NimStringV2 colontmpD__3;
				NimStringV2 T13_;
				*nimErr_ = NIM_FALSE;
				colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
				T13_.len = 0; T13_.p = NIM_NIL;
				T13_ = rawNewString((*n_p1)._kind_3.strVal.len + 14);
appendString((&T13_), TM__GM5IT6miOywfWPAzqo7pmA_18);
appendString((&T13_), (*n_p1)._kind_3.strVal);
				colontmpD__3 = T13_;
				liMessage__msgs_u1227(conf_p0, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__3, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__GM5IT6miOywfWPAzqo7pmA_19, NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
				eqcopy___system_u2694((&result), (*n_p1)._kind_3.strVal);
				{
					LA12_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__3);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
				popCurrentException();
				LA10_:;
			}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
	{
		eqcopy___system_u2694((&result), (*(*n_p1)._kind_5.ident).s);
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		eqcopy___system_u2694((&result), (*(*(*n_p1)._kind_4.sym).name).s);
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)29):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n0_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n1_1;
		n0_1 = NIM_NIL;
		n1_1 = NIM_NIL;
		eqcopy___ast_u3255(&n0_1, (*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		eqcopy___ast_u3255(&n1_1, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		{
			tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident_1;
			tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* T25_;
			if (!((*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2) || (*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3) || (*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)53) || (*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)57) || (*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)56) || (*n0_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)165))) goto LA22_;
			ident_1 = NIM_NIL;
			T25_ = NIM_NIL;
			T25_ = getPIdent__ast_u2825(n0_1);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___idents_u155(T25_); goto LA24_;}
			ident_1 = T25_;
			{
				NIM_BOOL T28_;
				NIM_BOOL T29_;
				NimStringV2 modname_1;
				NimStringV2 colontmpD__4;
				NimStringV2 colontmpD__5;
				NimStringV2 T34_;
				NimStringV2 T35_;
				NimStringV2 T36_;
				NimStringV2 T37_;
				T28_ = (NIM_BOOL)0;
				T29_ = (NIM_BOOL)0;
				T29_ = eqeq___idents_u366(ident_1, ((tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*) NIM_NIL));
				if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
				T28_ = !(T29_);
				if (!(T28_)) goto LA30_;
				T28_ = ((NU8)((*ident_1).s.p->data[((NI)0)]) == (NU8)(47));
LA30_: ;
				if (!T28_) goto LA31_;
				modname_1.len = 0; modname_1.p = NIM_NIL;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
				T34_.len = 0; T34_.p = NIM_NIL;
				T34_ = getModuleName__modulepaths_u10(conf_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)]);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T34_); goto LA33_;}
				modname_1 = T34_;
				T35_.len = 0; T35_.p = NIM_NIL;
				T35_ = getModuleName__modulepaths_u10(conf_p0, n1_1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T35_); goto LA33_;}
				result = T35_;
				T36_.len = 0; T36_.p = NIM_NIL;
				T36_ = renderTree__renderer_u59(n0_1, 4);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T36_); goto LA33_;}
				colontmpD__4 = T36_;
				T37_.len = 0; T37_.p = NIM_NIL;
				T37_ = nsuReplaceStr(colontmpD__4, TM__GM5IT6miOywfWPAzqo7pmA_22, TM__GM5IT6miOywfWPAzqo7pmA_24);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T37_); goto LA33_;}
				colontmpD__5 = T37_;
				prepareAdd((&result), colontmpD__5.len + 0);
appendString((&result), colontmpD__5);
				prepareAdd((&result), modname_1.len + 0);
appendString((&result), modname_1);
				{
					LA33_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__5);
					eqdestroy___system_u2691(colontmpD__4);
					eqdestroy___system_u2691(modname_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
			}
			goto LA26_;
LA31_: ;
			{
				result = TM__GM5IT6miOywfWPAzqo7pmA_25;
			}
LA26_: ;
			{
				LA24_:;
			}
			{
				oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___idents_u155(ident_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
				*nimErr_ = oldNimErrFin24_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		}
		goto LA20_;
LA22_: ;
		{
			result = TM__GM5IT6miOywfWPAzqo7pmA_26;
		}
LA20_: ;
		{
			LA19_:;
		}
		{
			oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(n1_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3252(n0_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin19_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)30):
	{
		NimStringV2 colontmpD__6;
		NimStringV2 T48_;
		NimStringV2 T49_;
		colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
		T48_.len = 0; T48_.p = NIM_NIL;
		T48_ = renderTree__renderer_u59(n_p1, 4);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T48_); goto LA47_;}
		colontmpD__6 = T48_;
		T49_.len = 0; T49_.p = NIM_NIL;
		T49_ = nsuReplaceStr(colontmpD__6, TM__GM5IT6miOywfWPAzqo7pmA_27, TM__GM5IT6miOywfWPAzqo7pmA_28);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T49_); goto LA47_;}
		result = T49_;
		{
			LA47_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__6);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45):
	{
		NimStringV2 colontmpD__7;
		NimStringV2 T54_;
		NimStringV2 T55_;
		colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
		liMessage__msgs_u1227(conf_p0, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)24), TM__GM5IT6miOywfWPAzqo7pmA_30, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__GM5IT6miOywfWPAzqo7pmA_31, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
		T54_.len = 0; T54_.p = NIM_NIL;
		T54_ = renderTree__renderer_u59(n_p1, 4);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T54_); goto LA53_;}
		colontmpD__7 = T54_;
		T55_.len = 0; T55_.p = NIM_NIL;
		T55_ = nsuReplaceStr(colontmpD__7, TM__GM5IT6miOywfWPAzqo7pmA_33, TM__GM5IT6miOywfWPAzqo7pmA_34);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T55_); goto LA53_;}
		result = T55_;
		{
			LA53_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__7);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)78):
	{
		NimStringV2 T59_;
		T59_.len = 0; T59_.p = NIM_NIL;
		T59_ = getModuleName__modulepaths_u10(conf_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T59_); goto BeforeRet_;}
		result = T59_;
	}
	break;
	default:
	{
		NimStringV2 colontmpD__8;
		NimStringV2 colontmpD__9;
		tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T62_;
		NimStringV2 T63_;
		NimStringV2 T64_;
		colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
		colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
		T62_ = 0;
		T63_.len = 0; T63_.p = NIM_NIL;
		T63_ = renderTree__renderer_u59(n_p1, T62_);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T63_); goto LA61_;}
		colontmpD__8 = T63_;
		T64_.len = 0; T64_.p = NIM_NIL;
		T64_ = nsuFormatSingleElem(TM__GM5IT6miOywfWPAzqo7pmA_36, colontmpD__8);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T64_); goto LA61_;}
		colontmpD__9 = T64_;
		liMessage__msgs_u1227(conf_p0, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__9, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__GM5IT6miOywfWPAzqo7pmA_37, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
		result = TM__GM5IT6miOywfWPAzqo7pmA_38;
		{
			LA61_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__9);
			eqdestroy___system_u2691(colontmpD__8);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, isEmpty__options_u4086)(NimStringV2 x_p0) {
	NIM_BOOL result;
	result = (x_p0.len == ((NI)0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI32, checkModuleName__modulepaths_u22)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NIM_BOOL doLocalError_p2) {
	NI32 result;
	NimStringV2 modulename_1;
	NimStringV2 fullPath_1;
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI32)0;
	modulename_1.len = 0; modulename_1.p = NIM_NIL;
	fullPath_1.len = 0; fullPath_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	modulename_1 = getModuleName__modulepaths_u10(conf_p0, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = toFullPath__msgs_u624(conf_p0, (*n_p1).info.fileIndex);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	fullPath_1 = findModule__options_u4101(conf_p0, modulename_1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isEmpty__options_u4086(fullPath_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T4_) goto LA5_;
		{
			NimStringV2 m_1;
			NimStringV2 colontmpD__2;
			NimStringV2 T12_;
			NimStringV2 T18_;
			if (!doLocalError_p2) goto LA9_;
			m_1.len = 0; m_1.p = NIM_NIL;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			T12_.len = 0; T12_.p = NIM_NIL;
			{
				if (!(((NI)0) < modulename_1.len)) goto LA15_;
				m_1 = modulename_1;
				eqwasMoved___system_u2688((&modulename_1));
			}
			goto LA13_;
LA15_: ;
			{
				m_1 = dollar___renderer_u2166(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			}
LA13_: ;
			T18_.len = 0; T18_.p = NIM_NIL;
			T18_ = rawNewString(m_1.len + 18);
appendString((&T18_), TM__GM5IT6miOywfWPAzqo7pmA_40);
appendString((&T18_), m_1);
			colontmpD__2 = T18_;
			liMessage__msgs_u1227(conf_p0, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__2, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__GM5IT6miOywfWPAzqo7pmA_41, NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			{
				LA11_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___system_u2691(m_1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA9_: ;
		result = ((NI32)-1);
	}
	goto LA2_;
LA5_: ;
	{
		result = fileInfoIdx__msgs_u404(conf_p0, fullPath_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(fullPath_1);
		eqdestroy___system_u2691(modulename_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, demangleModuleName__modulepaths_u136)(NimStringV2 path_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = multiReplace__pureZstrutils_u1885(path_p0, TM__GM5IT6miOywfWPAzqo7pmA_42, 7);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
