/* Generated by Nim Compiler v1.3.5 */
/*   (c) 2020 Andreas Rumpf */
/* The generated code is subject to the original license. */
#define NIM_INTBITS 64

/* section: NIM_merge_HEADERS */

#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

/* section: NIM_merge_FRAME_DEFINES */
#define nimfr_(x, y)
#define nimln_(x, y)

/* section: NIM_merge_FORWARD_TYPES */
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;

/* section: NIM_merge_TYPES */
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU8 tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
NI align;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
typedef NimStringDesc* tyArray__cEaD9bd8PACJ01axFsVWpog[40];
typedef NimStringDesc* tyArray__XaTKZcbaVb0ylpTdg2U9cjA[31];

/* section: NIM_merge_PROC_HEADERS */
N_LIB_PRIVATE N_NIMCALL(void, defineSymbol__znuJizGq3isbcihOOtUY0A)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringDesc* symbol, NimStringDesc* value);
N_LIB_PRIVATE N_NIMCALL(void, nstPut)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* val);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(void, del__EUHa9bsfDUl6q3GrReV9cQaw)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key);

/* section: NIM_merge_DATA */
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_2, "nimhygiene", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_3, "true", 4);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_4, "niminheritable", 14);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_5, "nimmixin", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_6, "nimeffects", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_7, "nimbabel", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_8, "nimcomputedgoto", 15);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_9, "nimunion", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_10, "nimnewshared", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_11, "nimNewTypedesc", 14);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_12, "nimrequiresnimframe", 19);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_13, "nimparsebiggestfloatmagic", 25);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_14, "nimalias", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_15, "nimlocks", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_16, "nimnode", 7);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_17, "nimvarargstyped", 15);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_18, "nimtypedescfixed", 16);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_19, "nimKnowsNimvm", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_20, "nimArrIdx", 9);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_21, "nimHasalignOf", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_22, "nimDistros", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_23, "nimHasCppDefine", 15);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_24, "nimGenericInOutFlags", 20);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_25, "nimNoArrayToCstringConversion", 29);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_26, "nimNewRoof", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_27, "nimHasRunnableExamples", 22);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_28, "nimNewDot", 9);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_29, "nimHasNilChecks", 15);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_30, "nimSymKind", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_31, "nimVmEqIdent", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_32, "nimNoNil", 8);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_33, "nimNoZeroTerminator", 19);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_34, "nimNotNil", 9);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_35, "nimVmExportFixed", 16);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_36, "nimHasSymOwnerInMacro", 21);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_37, "nimNewRuntime", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_38, "nimIncrSeqV3", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_39, "nimAshr", 7);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_40, "nimNoNilSeqs", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_41, "nimNoNilSeqs2", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_42, "nimHasUserErrors", 16);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_43, "nimUncheckedArrayTyp", 20);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_44, "nimHasTypeof", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_45, "nimErrorProcCanHaveBody", 23);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_46, "nimHasInstantiationOfInMacro", 28);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_47, "nimHasHotCodeReloading", 22);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_48, "nimHasNilSeqs", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_49, "nimHasSignatureHashInMacro", 26);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_50, "nimHasDefault", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_51, "nimMacrosSizealignof", 20);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_52, "nimNoZeroExtendMagic", 20);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_53, "nimMacrosGetNodeId", 18);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_54, "nimHas", 6);
extern TNimType NTI__01UoAKYz1MxZiuG1X2VhNQ_;
extern NIM_CONST tyArray__cEaD9bd8PACJ01axFsVWpog WarningsToStr__YMpLgyi9aCfNf9a1BIs9aRGXQ;
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_55, "nimHasWarning", 13);
extern NIM_CONST tyArray__XaTKZcbaVb0ylpTdg2U9cjA HintsToStr__Ztwykhn01OkbTo5TdXFJUw;
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_56, "nimHasHint", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_57, "nimFixedOwned", 13);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_58, "nimHasStyleChecks", 17);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_59, "nimToOpenArrayCString", 21);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_60, "nimHasUsed", 10);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_61, "nimFixedForwardGeneric", 22);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_62, "nimnomagic64", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_63, "nimNewShiftOps", 14);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_64, "nimHasCursor", 12);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_65, "nimAlignPragma", 14);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_66, "nimHasExceptionsQuery", 21);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_67, "nimHasIsNamedTuple", 18);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_68, "nimHashOrdinalFixed", 19);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_69, "nimHasSinkInference", 19);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_70, "nimNewIntegerOps", 16);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_71, "nimHasInvariant", 15);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_72, "nimHasStacktraceMsgs", 20);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_73, "nimDoesntTrackDefects", 21);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_74, "nimHasLentIterators", 19);
STRING_LITERAL(TM__UpH3CWy69aOHB2xkQBDirlg_75, "nimHasDeclaredMagic", 19);

/* section: NIM_merge_VARS */
extern NIM_BOOL nimInErrorMode__759bT87luu8XGcbkw13FUjA;

/* section: NIM_merge_PROCS */
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (NIM_BOOL*)0;
	result = (&nimInErrorMode__759bT87luu8XGcbkw13FUjA);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, defineSymbol__znuJizGq3isbcihOOtUY0A)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringDesc* symbol, NimStringDesc* value) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nstPut(symbols, symbol, value);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		void* T5_;
		void* T6_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (void*)0;
		T5_ = ((void*) ((&(*dest).data[(*dest).Sup.len])));
		T6_ = (void*)0;
		T6_ = ((void*) ((*src).data));
		copyMem__i80o3k0SgEI5gTRCzYdyWAsystem(T5_, T6_, ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initDefines__hODM2As3BZvC4AAFuVvWwQ)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_2), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_4), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_5), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_6), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_7), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_8), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_9), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_10), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_11), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_12), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_13), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_14), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_15), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_16), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_17), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_18), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_19), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_20), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_21), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_22), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_23), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_24), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_25), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_26), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_27), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_28), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_29), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_30), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_31), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_32), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_33), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_34), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_35), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_36), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_37), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_38), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_39), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_40), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_41), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_42), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_43), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_44), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_45), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_46), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_47), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_48), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_49), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_50), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_51), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_52), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_53), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ f;
		f = (tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ)0;
		{
			tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ v;
			NI res;
			v = (tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ)0;
			res = ((NI) 0);
			{
				while (1) {
					NimStringDesc* T5_;
					if (!(res <= ((NI) 12))) goto LA4;
					v = ((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) (res));
					f = v;
					T5_ = (NimStringDesc*)0;
					T5_ = rawNewString((reprEnum((NI)f, (&NTI__01UoAKYz1MxZiuG1X2VhNQ_)) ? reprEnum((NI)f, (&NTI__01UoAKYz1MxZiuG1X2VhNQ_))->Sup.len : 0) + 6);
appendString(T5_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_54));
appendString(T5_, reprEnum((NI)f, (&NTI__01UoAKYz1MxZiuG1X2VhNQ_)));
					defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, T5_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					res += ((NI) 1);
				} LA4: ;
			}
		}
	}
	{
		NimStringDesc* s;
		NI i;
		s = (NimStringDesc*)0;
		i = ((NI) 0);
		{
			if (!(((NI) (i)) <= ((NI) 39))) goto LA9_;
			{
				while (1) {
					NimStringDesc* T13_;
					s = copyString(WarningsToStr__YMpLgyi9aCfNf9a1BIs9aRGXQ[(i)- 0]);
					T13_ = (NimStringDesc*)0;
					T13_ = rawNewString((s ? s->Sup.len : 0) + 13);
appendString(T13_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_55));
appendString(T13_, s);
					defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, T13_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					{
						if (!(((NI) 39) <= ((NI) (i)))) goto LA16_;
						goto LA11;
					}
					LA16_: ;
					i += ((NI) 1);
				}
			} LA11: ;
		}
		LA9_: ;
	}
	{
		NimStringDesc* s_2;
		NI i_2;
		s_2 = (NimStringDesc*)0;
		i_2 = ((NI) 0);
		{
			if (!(((NI) (i_2)) <= ((NI) 30))) goto LA21_;
			{
				while (1) {
					NimStringDesc* T25_;
					s_2 = copyString(HintsToStr__Ztwykhn01OkbTo5TdXFJUw[(i_2)- 0]);
					T25_ = (NimStringDesc*)0;
					T25_ = rawNewString((s_2 ? s_2->Sup.len : 0) + 10);
appendString(T25_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_56));
appendString(T25_, s_2);
					defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, T25_, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					{
						if (!(((NI) 30) <= ((NI) (i_2)))) goto LA28_;
						goto LA23;
					}
					LA28_: ;
					i_2 += ((NI) 1);
				}
			} LA23: ;
		}
		LA21_: ;
	}
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_57), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_58), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_59), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_60), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_61), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_62), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_63), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_64), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_65), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_66), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_67), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_68), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_69), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_70), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_71), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_72), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_73), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_74), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	defineSymbol__znuJizGq3isbcihOOtUY0A(symbols, ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_75), ((NimStringDesc*) &TM__UpH3CWy69aOHB2xkQBDirlg_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, undefSymbol__7r39cyzHGkKGsFt9bPVES2hQ)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringDesc* symbol) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	del__EUHa9bsfDUl6q3GrReV9cQaw(symbols, symbol);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
