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

/* section: NIM_merge_HEADERS */

#include "nimbase.h"
#include <string.h>
#include <math.h>
#include <dirent.h>
#include <setjmp.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <time.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_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
typedef struct tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w;
typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
typedef struct tySequence__DfgJFJEYoj4YBAHLZPl5lQ tySequence__DfgJFJEYoj4YBAHLZPl5lQ;
typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
typedef struct tyObject_IntSet__PQrmFm4BXFkFSVOUl1ojSg tyObject_IntSet__PQrmFm4BXFkFSVOUl1ojSg;
typedef struct tyObject_Trunk__ul49aWfv9aes8cutmeltT3gQ tyObject_Trunk__ul49aWfv9aes8cutmeltT3gQ;
typedef struct tySequence__9brg1xNurxcus33lU4IE1Dw tySequence__9brg1xNurxcus33lU4IE1Dw;
typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct RootObj RootObj;
typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
typedef struct tySequence__bWZXqEvLFwhLvAqSRoFNgQ tySequence__bWZXqEvLFwhLvAqSRoFNgQ;
typedef struct tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ;
typedef struct tyObject_IncrementalCtx__sdH7TnbKACuAzE7DBabnCA tyObject_IncrementalCtx__sdH7TnbKACuAzE7DBabnCA;
typedef struct tyObject_Table__IioUJGdqPI6xC7S7QF8MBw tyObject_Table__IioUJGdqPI6xC7S7QF8MBw;
typedef struct tySequence__Qr6E8eH7btq79cFKGaJfGLw tySequence__Qr6E8eH7btq79cFKGaJfGLw;
typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
typedef struct tySequence__PzqTLBFNawCGiqTk0UORYw tySequence__PzqTLBFNawCGiqTk0UORYw;
typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
typedef struct tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA;
typedef struct tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tySequence__Ef05srmQTDulnBdXR4Ja6Q tySequence__Ef05srmQTDulnBdXR4Ja6Q;
typedef struct tySequence__MvZmat48bhe9b6x9aUD58D5Q tySequence__MvZmat48bhe9b6x9aUD58D5Q;
typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tySequence__DXS6mEo7PVUFJkirsQ9bNQA tySequence__DXS6mEo7PVUFJkirsQ9bNQA;
typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
typedef struct tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw;
typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
typedef struct tySequence__YdLNCDKYeipzJx3I8Xw82Q tySequence__YdLNCDKYeipzJx3I8Xw82Q;
typedef struct tySequence__PJMRIt5QxCm6bRaVyQ5CGA tySequence__PJMRIt5QxCm6bRaVyQ5CGA;
typedef struct tyObject_PProccolonObjectType___VFEBuxrDHC6kHPzc1TWaRQ tyObject_PProccolonObjectType___VFEBuxrDHC6kHPzc1TWaRQ;
typedef struct tySequence__YWbgnI9b9a4j9aDYnupShIg3A tySequence__YWbgnI9b9a4j9aDYnupShIg3A;
typedef struct tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg;
typedef struct tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ;
typedef struct tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g;
typedef struct tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA;
typedef struct tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA;
typedef struct Exception Exception;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct TSafePoint TSafePoint;
typedef struct tyTuple__LCURwohbLBusrL8hdCnvng tyTuple__LCURwohbLBusrL8hdCnvng;
typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
typedef struct tySequence__jlXqfsdfoRhiIfoVNWV0Vw tySequence__jlXqfsdfoRhiIfoVNWV0Vw;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
typedef struct tySequence__JokFGfUW6i9b6aeU7xu6xBw tySequence__JokFGfUW6i9b6aeU7xu6xBw;
typedef struct tyTuple__SlmU1Ju0WFHUWkihyHMVYg tyTuple__SlmU1Ju0WFHUWkihyHMVYg;
typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
typedef struct tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q;
typedef struct tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw;
typedef struct tyTuple__nlLlqVveYUlcdyx2e2bPTw tyTuple__nlLlqVveYUlcdyx2e2bPTw;
typedef struct tyTuple__9cqHuynYNPU9avbszh3XtBAg tyTuple__9cqHuynYNPU9avbszh3XtBAg;
typedef struct tyTuple__C1iPjdrPjiQaUrcFhIp9aGw tyTuple__C1iPjdrPjiQaUrcFhIp9aGw;
typedef struct tyTuple__DcoP8zLFnBpow03kFN9cGhg tyTuple__DcoP8zLFnBpow03kFN9cGhg;
typedef struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA tyObject_Int128__9a9axPfb75jdWY25AamJewkA;
typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
typedef struct tyTuple__9aIi6GdTSD27YtPkWxMqNxA tyTuple__9aIi6GdTSD27YtPkWxMqNxA;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__quA39a2QdEQU9cSEIUSibApQ tyTuple__quA39a2QdEQU9cSEIUSibApQ;
typedef struct tyTuple__EkGTYRWQ6y9cppXTlT8Xm5g tyTuple__EkGTYRWQ6y9cppXTlT8Xm5g;
typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
typedef struct tyTuple__euPCXX9bc3XzndEhYlqNS7g tyTuple__euPCXX9bc3XzndEhYlqNS7g;
typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
typedef struct tyTuple__zwpS6d6iewrdlBSTNFoyVA tyTuple__zwpS6d6iewrdlBSTNFoyVA;
typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
typedef struct tyObject_TBlock__2tJGcW69ahqq39a9bVJC1sqGQ tyObject_TBlock__2tJGcW69ahqq39a9bVJC1sqGQ;

/* section: NIM_merge_TYPES */
struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
NI counter;
tySequence__DfgJFJEYoj4YBAHLZPl5lQ* data;
};
typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_IntSet__PQrmFm4BXFkFSVOUl1ojSg {
NI elems;
NI counter;
NI max;
tyObject_Trunk__ul49aWfv9aes8cutmeltT3gQ* head;
tySequence__9brg1xNurxcus33lU4IE1Dw* data;
tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
NI counter;
};
struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
tySequence__kxu4GK0onha2t9bo86mdVAg* data;
NI counter;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
typedef tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* tyArray__OLX364rHC66WkzRbMp49aQg[64];
typedef tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* tyArray__6GDJmNRiFxkWAAdMgUie8g[70];
struct tyObject_IncrementalCtx__sdH7TnbKACuAzE7DBabnCA {
char dummy;
};
struct tyObject_Table__IioUJGdqPI6xC7S7QF8MBw {
tySequence__Qr6E8eH7btq79cFKGaJfGLw* data;
NI counter;
};
struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w*, tyProc__c6vdo1yHyj19b9bS17tijS2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* m, NI32 fileIdx);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__d5yEkT9aXkAtHvVerr7IeCQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* m, NI32 fileIdx);
typedef N_NIMCALL_PTR(void, tyProc__sP1I7TbCn358eLy9bX4IphA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
tySequence__23SMqauuRsbDANhthj9bWlA* data;
NI counter;
};
struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
NI counter;
};
struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
NI counter;
};
typedef N_NIMCALL_PTR(void, tyProc__R9aa9aO9cNhvWgTGK9bAAvuSRA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__3TeLOx1euAsRk3YCaQCuPg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* formal, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* actual);
struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
tySequence__DfgJFJEYoj4YBAHLZPl5lQ* modules;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
tyObject_IntSet__PQrmFm4BXFkFSVOUl1ojSg deps;
tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
NIM_BOOL suggestMode;
NIM_BOOL invalidTransitiveClosure;
tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
RootObj* backend;
tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
RootObj* vm;
tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* usageSym;
tySequence__DfgJFJEYoj4YBAHLZPl5lQ* owners;
tySequence__bWZXqEvLFwhLvAqSRoFNgQ* methods;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* systemModule;
tyArray__OLX364rHC66WkzRbMp49aQg sysTypes;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
tyArray__6GDJmNRiFxkWAAdMgUie8g intTypeCache;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* opContains;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* opNot;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
tyObject_IncrementalCtx__sdH7TnbKACuAzE7DBabnCA incr;
tyObject_Table__IioUJGdqPI6xC7S7QF8MBw canonTypes;
tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
tyProc__c6vdo1yHyj19b9bS17tijS2w importModuleCallback;
tyProc__d5yEkT9aXkAtHvVerr7IeCQ includeFileCallback;
tyProc__sP1I7TbCn358eLy9bX4IphA recordStmt;
tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
tySequence__PzqTLBFNawCGiqTk0UORYw* passes;
tyProc__R9aa9aO9cNhvWgTGK9bAAvuSRA onDefinition;
tyProc__R9aa9aO9cNhvWgTGK9bAAvuSRA onDefinitionResolveForward;
tyProc__R9aa9aO9cNhvWgTGK9bAAvuSRA onUsage;
tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
tyProc__sP1I7TbCn358eLy9bX4IphA strongSemCheck;
tyProc__3TeLOx1euAsRk3YCaQCuPg compatibleProps;
};
typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringDesc* tnl;
};
typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw;
typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
NI counter;
};
typedef NU16 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
typedef NU8 tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg[9];
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
void* ClE_0;
} tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
void* ClE_0;
} tyProc__oL9coyIA2VDTGdUcur9aL9bew;
struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
NI linesCompiled;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw cmd;
tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
NI verbosity;
NI numberOfProcessors;
NimStringDesc* evalExpr;
NF lastCmdTime;
tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
NimStringDesc* headerFile;
tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
NimStringDesc* arguments;
tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg modifiedyNotes;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg cmdlineNotes;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg foreignPackageNotes;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg notes;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg warningAsErrors;
tySet_tyEnum_TMsgKind__6kx5ul0BSa9aHxHPGwkvVHg mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
NimStringDesc* outFile;
NimStringDesc* outDir;
NimStringDesc* jsonBuildFile;
NimStringDesc* prefixDir;
NimStringDesc* libpath;
NimStringDesc* nimcacheDir;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
NimStringDesc* projectName;
NimStringDesc* projectPath;
NimStringDesc* projectFull;
NIM_BOOL projectIsStdin;
NIM_BOOL lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringDesc* command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
NimStringDesc* commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
NimStringDesc* docSeeSrcUrl;
NimStringDesc* docRoot;
NimStringDesc* docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
NimStringDesc* linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
NimStringDesc* linkOptions;
NimStringDesc* compileOptions;
NimStringDesc* cCompilerPath;
tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
NimStringDesc* cppCustomNamespace;
tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
};
typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
union{
struct {NI64 intVal;
} _kind_1;
struct {NF floatVal;
} _kind_2;
struct {NimStringDesc* strVal;
} _kind_3;
struct {tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym;
} _kind_4;
struct {tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* ident;
} _kind_5;
struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
} _kind_6;
};
NimStringDesc* comment;
};
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;
};
struct RootObj {
TNimType* m_type;
};
struct tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA {
  RootObj Sup;
NI id;
};
typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
typedef tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* tyArray__PsPyPA45AAjHu4uDGHNjTg[6];
typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
};
struct tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ {
  tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA Sup;
tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
tySequence__Ef05srmQTDulnBdXR4Ja6Q* sons;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym;
tyArray__PsPyPA45AAjHu4uDGHNjTg attachedOps;
tySequence__MvZmat48bhe9b6x9aUD58D5Q* methods;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
NI16 lockLevel;
tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typeInst;
NI uniqueId;
};
struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
void* bottom;
};
struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
NI len;
NI cap;
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
};
typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
};
typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
tyArray__0aOLqZchNi8nWtMTi8ND8w link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
NI Field1;
};
typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
NI len;
tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
};
struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
NI minLargeObj;
NI maxLargeObj;
tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
};
struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
NI counter;
NI max;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
};
struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
NI recGcLock;
tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
NI gcThreadId;
};
typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringDesc* Field0;
NI Field1;
NI Field2;
};
typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
struct tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w {
  tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA Sup;
tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
union{
struct {tySequence__Ef05srmQTDulnBdXR4Ja6Q* typeInstCache;
} _kind_1;
struct {tySequence__DXS6mEo7PVUFJkirsQ9bNQA* procInstCache;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* gcUnsafetyReason;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
} _kind_2;
struct {tySequence__DXS6mEo7PVUFJkirsQ9bNQA* usedGenerics;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab;
} _kind_3;
struct {tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* guard;
NI bitsize;
NI alignment;
} _kind_4;
};
tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ;
tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* name;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner;
tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
NI position;
NI offset;
tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
};
typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
typedef NU16 tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw;
struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w {
  RootObj Sup;
};
typedef NU8 tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ;
typedef NU8 tySet_tyEnum_TSandboxFlag__JyPEhkAmDAldmLHNNrLR0A;
struct tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg {
NF tEnter;
tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos;
};
struct tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw {
  tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w Sup;
tySequence__YdLNCDKYeipzJx3I8Xw82Q* code;
tySequence__PJMRIt5QxCm6bRaVyQ5CGA* debug;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* globals;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constants;
tySequence__Ef05srmQTDulnBdXR4Ja6Q* types;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* currentExceptionA;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* currentExceptionB;
NI exceptionInstr;
tyObject_PProccolonObjectType___VFEBuxrDHC6kHPzc1TWaRQ* prc;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* callsite;
tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ mode;
tySet_tyEnum_TSandboxFlag__JyPEhkAmDAldmLHNNrLR0A features;
NIM_BOOL traceActive;
NI loopIterations;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q comesFromHeuristic;
tySequence__YWbgnI9b9a4j9aDYnupShIg3A* callbacks;
NimStringDesc* errorFlag;
tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph;
NI oldErrorCount;
tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg profiler;
NI* templInstCounter;
};
struct tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g {
  RootObj Sup;
NI colonstate_;
tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c1;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
void* ClE_0;
} tyProc__5QC9cKfPJmKuW0XbCTd8ylA;
typedef NU8 tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ;
struct tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA {
tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ kind;
union{
NI64 intVal;
NF floatVal;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node;
tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* regAddr;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** nodeAddr;
};
};
struct tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA {
NI ra;
NI rb;
NI rc;
tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* slots;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* currentException;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q currentLineInfo;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_11) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_13) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_15) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_17) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_19) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_21) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_23) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_25) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_27) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_29) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_31) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_33) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_35) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_37) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_39) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_41) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_43) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_45) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_47) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_49) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_51) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_55) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_57) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_59) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_61) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_63) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_65) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_67) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_69) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_70) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_72) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_75) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_77) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_79) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg;
struct Exception {
  RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringDesc* message;
tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
Exception* up;
};
struct TSafePoint {
TSafePoint* prev;
NI status;
jmp_buf context;
};
typedef NIM_CHAR tyArray__dTlC27m9c9aWd5dvuePYanug[256];
struct tyTuple__LCURwohbLBusrL8hdCnvng {
tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg Field0;
NimStringDesc* Field1;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_84) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA;
typedef NU8 tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew;
struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
NimStringDesc* Field0;
NI Field1;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_90) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tySet_tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ;
struct tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ {
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc;
tySequence__jlXqfsdfoRhiIfoVNWV0Vw* slots;
tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* next;
NI comesFrom;
tySequence__qwqHTkRvwhrRyENtudHQ7g* safePoints;
};
typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
NimStringDesc* fullPath;
NimStringDesc* projPath;
NimStringDesc* shortName;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
NimStringDesc* dirtyFile;
NimStringDesc* hash;
NIM_BOOL dirty;
};
struct tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA {
  tyObject_TIdObj__iIXPrEsiKHiioLj0HSkQhA Sup;
NimStringDesc* s;
tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* next;
NI h;
};
typedef NU8 tyEnum_TSlotKind__QOyrDzzey9cf6gDtSRPuZMQ;
struct tyTuple__SlmU1Ju0WFHUWkihyHMVYg {
NIM_BOOL Field0;
tyEnum_TSlotKind__QOyrDzzey9cf6gDtSRPuZMQ Field1;
};
typedef tyTuple__SlmU1Ju0WFHUWkihyHMVYg tyArray__EYsuRBqqo81SUrCUzYSAKA[65536];
struct tyObject_PProccolonObjectType___VFEBuxrDHC6kHPzc1TWaRQ {
tySequence__JokFGfUW6i9b6aeU7xu6xBw* blocks;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym;
tyArray__EYsuRBqqo81SUrCUzYSAKA slots;
NI maxSlots;
};
typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_109) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_110) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_112) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA;
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_114) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
struct tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q {
NI64 seconds;
NI nanosecond;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_116) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU64 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_120) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_122) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args, void* ClE_0);
typedef NU8 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
struct tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw {
  RootObj Sup;
NI colonstate_;
NimStringDesc* error1;
NimStringDesc* error2;
};
typedef NU8 tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ;
struct tyTuple__nlLlqVveYUlcdyx2e2bPTw {
NimStringDesc* Field0;
tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw Field1;
NimStringDesc* Field2;
NimStringDesc* Field3;
NimStringDesc* Field4;
NI Field5;
};
typedef NU8 tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw;
struct tyTuple__9cqHuynYNPU9avbszh3XtBAg {
NimStringDesc* Field0;
tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag Field1;
};
typedef NU8 tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw;
typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
struct tyTuple__C1iPjdrPjiQaUrcFhIp9aGw {
NimStringDesc* Field0;
tyProc__5QC9cKfPJmKuW0XbCTd8ylA Field1;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_151) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args);
typedef NU8 tyEnum_TSandboxFlag__JyPEhkAmDAldmLHNNrLR0A;
typedef NU8 tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA;
struct tyTuple__DcoP8zLFnBpow03kFN9cGhg {
tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA Field0;
NI Field1;
};
typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA {
tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
};
typedef N_CLOSURE_PTR(void, TM__pyAIA9cUF0h9c4j2HfNQPfYw_167) (tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* args);
typedef NU8 tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0);
void* ClE_0;
} tyProc__pIuD7iLYdwrBMntVRm61ZA;
typedef tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* tyArray__o8KQyTFgNQGvsJZYtdEsgA[8192];
struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw {
tyArray__o8KQyTFgNQGvsJZYtdEsgA buckets;
NI wordCounter;
tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* idAnon;
tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* idDelegator;
tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* emptyIdent;
};
typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__jlWPjgtbdjE069arIWHC9c9bg[1];
struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
NI entries;
};
struct tyTuple__9aIi6GdTSD27YtPkWxMqNxA {
NimStringDesc* Field0;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field1;
NI Field2;
};
typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__T6RKPw8xfAeNaoei9aZGzXg[3];
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
NI Field0;
NI32 Field1;
tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
};
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
NI Field0;
NI32 Field1;
NI32 Field2;
};
struct tyTuple__quA39a2QdEQU9cSEIUSibApQ {
tySequence__DfgJFJEYoj4YBAHLZPl5lQ* Field0;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* Field1;
};
struct tyTuple__EkGTYRWQ6y9cppXTlT8Xm5g {
NI Field0;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* Field2;
};
struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
NI Field0;
NI Field1;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
};
struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
NI Field0;
NimStringDesc* Field1;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
};
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
NI Field0;
NimStringDesc* Field1;
NI64 Field2;
};
struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
NI Field0;
NimStringDesc* Field1;
tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
};
typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__8ooe5vdoqmvpHnfXV29bP3w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
struct tyTuple__euPCXX9bc3XzndEhYlqNS7g {
tyProc__8ooe5vdoqmvpHnfXV29bP3w Field0;
tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
NIM_BOOL Field3;
};
struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
NimStringDesc* Field1;
};
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringDesc* Field1;
};
typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
NimStringDesc* nimname;
NimStringDesc* cname;
NimStringDesc* obj;
tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
NimStringDesc* customArgs;
};
struct tyTuple__zwpS6d6iewrdlBSTNFoyVA {
NI Field0;
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* Field1;
};
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tyObject_TBlock__2tJGcW69ahqq39a9bVJC1sqGQ {
tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* label;
tySequence__qwqHTkRvwhrRyENtudHQ7g* fixups;
};

/* section: NIM_merge_SEQ_TYPES */
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
  TGenericSeq Sup;
  NU8 data[SEQ_DECL_SIZE];
};
struct tySequence__jlXqfsdfoRhiIfoVNWV0Vw {
  TGenericSeq Sup;
  tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA data[SEQ_DECL_SIZE];
};
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
  TGenericSeq Sup;
  NI data[SEQ_DECL_SIZE];
};
struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
  TGenericSeq Sup;
  tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
};
struct tySequence__DfgJFJEYoj4YBAHLZPl5lQ {
  TGenericSeq Sup;
  tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* data[SEQ_DECL_SIZE];
};
struct tySequence__9brg1xNurxcus33lU4IE1Dw {
  TGenericSeq Sup;
  tyObject_Trunk__ul49aWfv9aes8cutmeltT3gQ* data[SEQ_DECL_SIZE];
};
struct tySequence__48JTohSgTy339bRxHzUD8KA {
  TGenericSeq Sup;
  NI32 data[SEQ_DECL_SIZE];
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
  TGenericSeq Sup;
  tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
  TGenericSeq Sup;
  tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
};
struct tySequence__bWZXqEvLFwhLvAqSRoFNgQ {
  TGenericSeq Sup;
  tyTuple__quA39a2QdEQU9cSEIUSibApQ data[SEQ_DECL_SIZE];
};
struct tySequence__Qr6E8eH7btq79cFKGaJfGLw {
  TGenericSeq Sup;
  tyTuple__EkGTYRWQ6y9cppXTlT8Xm5g data[SEQ_DECL_SIZE];
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
  TGenericSeq Sup;
  tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
};
struct tySequence__23SMqauuRsbDANhthj9bWlA {
  TGenericSeq Sup;
  tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
  TGenericSeq Sup;
  tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
};
struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
  TGenericSeq Sup;
  tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
};
struct tySequence__PzqTLBFNawCGiqTk0UORYw {
  TGenericSeq Sup;
  tyTuple__euPCXX9bc3XzndEhYlqNS7g data[SEQ_DECL_SIZE];
};
struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
  TGenericSeq Sup;
  tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
  TGenericSeq Sup;
  tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  TGenericSeq Sup;
  tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
};
struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
  TGenericSeq Sup;
  tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
};
struct tySequence__Ef05srmQTDulnBdXR4Ja6Q {
  TGenericSeq Sup;
  tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* data[SEQ_DECL_SIZE];
};
struct tySequence__MvZmat48bhe9b6x9aUD58D5Q {
  TGenericSeq Sup;
  tyTuple__zwpS6d6iewrdlBSTNFoyVA data[SEQ_DECL_SIZE];
};
struct tySequence__DXS6mEo7PVUFJkirsQ9bNQA {
  TGenericSeq Sup;
  tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* data[SEQ_DECL_SIZE];
};
struct tySequence__YdLNCDKYeipzJx3I8Xw82Q {
  TGenericSeq Sup;
  NU64 data[SEQ_DECL_SIZE];
};
struct tySequence__PJMRIt5QxCm6bRaVyQ5CGA {
  TGenericSeq Sup;
  tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q data[SEQ_DECL_SIZE];
};
struct tySequence__YWbgnI9b9a4j9aDYnupShIg3A {
  TGenericSeq Sup;
  tyTuple__C1iPjdrPjiQaUrcFhIp9aGw data[SEQ_DECL_SIZE];
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
  TGenericSeq Sup;
  tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
};
struct tySequence__JokFGfUW6i9b6aeU7xu6xBw {
  TGenericSeq Sup;
  tyObject_TBlock__2tJGcW69ahqq39a9bVJC1sqGQ data[SEQ_DECL_SIZE];
};

/* section: NIM_merge_PROC_HEADERS */
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, errorNode__9cqF4KDIxxYX55FGMDoxR4Q)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__vokyXY9cZDshCSxFKChhG9bg)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*, newType__SNqpa06pdVCLFFBR28119aQ)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef__AT1eRuflKWyTTBdLjEDZbg_3system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem)(NI x, NI y);
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem)(void* usr);
static N_INLINE(NI, minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system)(NI x, NI y);
static N_INLINE(void, decRef__AT1eRuflKWyTTBdLjEDZbgsystem)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NIM_BOOL, ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__Y66tOYFjgwJ0k4aLz4bc0Q)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__Q6JNH4uRwLyZrj0dJakHew)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
static N_INLINE(NI, safeLen__P89cqdlERShb9alU3iC0yj8w_2ast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(NI, len__P89cqdlERShb9alU3iC0yj8wast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(NI, len__5mJADrRYkP3r9auuiuDZN9cQast)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__ppjdh9aQ5L0SGPF8yz1gZ9cA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw renderFlags);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimIntToStr)(NI x);
N_LIB_PRIVATE N_NIMCALL(void, setupGlobalCtx__41qwP9bj6cfy3VehAu9aAFvw)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph);
N_LIB_PRIVATE N_NIMCALL(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw*, newCtx__SnMRNFK9aeDXTXGWpZkzETw)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g);
N_LIB_PRIVATE N_NIMCALL(void, registerAdditionalOps__YCoJV0XHfn0P9cfljlakO1g)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c);
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tyRef__8Qi2Yy1dXWyP64byz4WwVw)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void*, newObj)(TNimType* typ, NI size);
N_LIB_PRIVATE N_NIMCALL(NI, registerCallback__KnNoqgKj9bmG2p3f4SLNFqA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, NimStringDesc* name, tyProc__5QC9cKfPJmKuW0XbCTd8ylA callback);
N_LIB_PRIVATE N_NIMCALL(void, sqrtWrapper__YYz4trFdtBrqWRYoIzUH9aA)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__PlA9cyXmUSmFKkhh8sQETRg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NF v);
N_LIB_PRIVATE N_NIMCALL(void, ensureKind__hLEAmC34r1Yd9aCCcNP1pLA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* n, tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ kind);
N_LIB_PRIVATE N_NIMCALL(void, genericShallowAssign)(void* dest, void* src, TNimType* mt);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NF, getFloat__Gb7N45iPByJjVcCcp9aU6eg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A)(NimStringDesc* msg);
N_LIB_PRIVATE N_NIMCALL(void, lnWrapper__YYz4trFdtBrqWRYoIzUH9aA_2)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, log10Wrapper__YYz4trFdtBrqWRYoIzUH9aA_3)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, log2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_4)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, expWrapper__YYz4trFdtBrqWRYoIzUH9aA_5)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, roundWrapper__YYz4trFdtBrqWRYoIzUH9aA_6)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, arccosWrapper__YYz4trFdtBrqWRYoIzUH9aA_7)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, arcsinWrapper__YYz4trFdtBrqWRYoIzUH9aA_8)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, arctanWrapper__YYz4trFdtBrqWRYoIzUH9aA_9)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, arctan2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_10)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, cosWrapper__YYz4trFdtBrqWRYoIzUH9aA_11)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, coshWrapper__YYz4trFdtBrqWRYoIzUH9aA_12)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, hypotWrapper__YYz4trFdtBrqWRYoIzUH9aA_13)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, sinhWrapper__YYz4trFdtBrqWRYoIzUH9aA_14)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, sinWrapper__YYz4trFdtBrqWRYoIzUH9aA_15)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, tanWrapper__YYz4trFdtBrqWRYoIzUH9aA_16)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, tanhWrapper__YYz4trFdtBrqWRYoIzUH9aA_17)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, powWrapper__YYz4trFdtBrqWRYoIzUH9aA_18)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, truncWrapper__YYz4trFdtBrqWRYoIzUH9aA_19)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, floorWrapper__YYz4trFdtBrqWRYoIzUH9aA_20)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, ceilWrapper__YYz4trFdtBrqWRYoIzUH9aA_21)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, getMD5Wrapper__YYz4trFdtBrqWRYoIzUH9aA_22)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__g9crT9ba9c0OxETalTxR9cv1Sw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NimStringDesc* v);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode__PMZ27S9ai4FB3gXOMDXvwsQ)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind);
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
static N_INLINE(void, nimGCunrefNoCycle)(void* p);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getMD5__kEzF9cC2zt4kZNszZVUnKEA)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getString__fqypzXhNY5rpF89ak7Q0GlQ)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(void, modWrapper__YYz4trFdtBrqWRYoIzUH9aA_23)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, getEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_24)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getEnv__hhED57tMl0Iaa5bOg9cJaig)(NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NIMCALL(void, existsEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_25)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__X7b1uTvNjENZoIKwHxPn9aA)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NIM_BOOL v);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsEnv__HhiDHRQxJ349a6FFxO51gqQ)(NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, putEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_26)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, putEnv__YVZCqlK3fKyVR367JpYgKA)(NimStringDesc* key, NimStringDesc* val);
N_LIB_PRIVATE N_NIMCALL(void, dirExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_27)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosdirExists)(NimStringDesc* dir);
N_LIB_PRIVATE N_NIMCALL(void, fileExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_28)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_29)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_30)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__D6Pj9c29aCLEJP9beOWa08HYA)(NimStringDesc* filename, NimStringDesc* content);
N_LIB_PRIVATE N_NIMCALL(void, readFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_31)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, readFile__4PGnM9bWmsH0Nu7dnr3XzgA)(NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(void, readLinesWrapper__YYz4trFdtBrqWRYoIzUH9aA_32)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__nH0psxYZ8gVURA1upHNltw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* v);
N_LIB_PRIVATE N_NIMCALL(void, add__P8dDSotTW25BkfbyspojGg)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStrNode__zLcHGdlEbBYFtoCoan9agkg)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NimStringDesc* strVal);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, readLines__SgtYKLMb9cNidg5iRn9aNDJA)(NimStringDesc* filename, NI n);
N_LIB_PRIVATE N_NIMCALL(NI64, getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionMsgWrapper__YYz4trFdtBrqWRYoIzUH9aA_33)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipColon__UPSW0jLTX5qJL51YMUAHgw_3)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionWrapper__YYz4trFdtBrqWRYoIzUH9aA_34)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__Adyk89aSgmLp9bDuSV0Va03A)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_35)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, staticWalkDirImpl__LMpMzadlvEqBMJiq3ClvHw)(NimStringDesc* path, NIM_BOOL relative);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
N_LIB_PRIVATE N_NOINLINE(void, raiseOSError__CWyPYlyH9a6rAuZckFyVxPA)(NI32 errorCode, NimStringDesc* additionalInfo);
N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__9bUWNxbcGnToMWA9b79aTXLIw)(void);
static N_INLINE(void, pushSafePoint)(TSafePoint* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
static N_INLINE(NIM_BOOL, equalMem__9bGgqEk7RXXl6eqM9c1HdELAsystem)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, slash___gEyhbzZ1UcxyenWRLJRXNQ)(NimStringDesc* head, NimStringDesc* tail);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toLit__EiNc3CjWjUuz7a9aOLdGMhw)(tyTuple__LCURwohbLBusrL8hdCnvng a);
N_LIB_PRIVATE N_NIMCALL(tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg, getSymlinkFileKind__wTnLPNAWjgwVnuiJ9ax0ZGQ)(NimStringDesc* path);
static N_INLINE(void, popSafePoint)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void);
N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, getBool__EhqFCFCIHmFhBfWH28wGww)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, querySettingImpl__srQdL5iB3k6bPvYBcewFbg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI64 switch_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getNimcacheDir__oltK69akg0xLqkR2ITKbomg_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_2)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, querySettingSeqImpl__cyp2fnhz9brEKqcbTIK2sQw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI64 switch_0);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
N_LIB_PRIVATE N_CLOSURE(void, gorgeExWrapper__g33BhuFeOn85oub1SuUkWg_3)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, opGorge__PHM9cEmzUJYj3PsIVbIPnxQ)(NimStringDesc* cmd, NimStringDesc* input, NimStringDesc* cache, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyTuple__XOVT24GHXwqiEj5GCsEGCA* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toLit__KipqGaFAV5q2V57HtRKVog)(tyTuple__XOVT24GHXwqiEj5GCsEGCA a);
N_LIB_PRIVATE N_CLOSURE(void, getProjectPathWrapper__g33BhuFeOn85oub1SuUkWg_4)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_36)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetAppFilename)(void);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_5)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getNode__DuJnnnM0aSaXeDv118rkUw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i);
N_LIB_PRIVATE N_NOINLINE(void, stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos, NI pc, NimStringDesc* msg, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lineInfo, tyTuple__kN8up2W6YKc5YA9avn5mV5w infoOrigin);
N_LIB_PRIVATE N_NIMCALL(void, msgWriteln__PO49anyWCbe63GYNOs9cVuvg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s, tySet_tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ flags);
N_LIB_PRIVATE N_NIMCALL(void, stackTraceAux__mtjZlZD2xSyaebZUBpGCHA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* x, NI pc, NI recursionLimit);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath__VW1RaR1l9c9bPnJxr1KuvIrg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
static N_INLINE(NI, toLinenumber__6D4Rmpw7LpcRI1j7CMqEsAmsgs)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
static N_INLINE(NI, toColumn__6D4Rmpw7LpcRI1j7CMqEsA_2msgs)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___59bygf5b7AsTVb9a1lVM66oA)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___qX5C9b0n9bOP7jk69amC8dA7A)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___0A9bslyIJ49bWrftLGh13rvg)(tyArray__qtqsWM5aXmcpMIVmvq3kAA u);
N_LIB_PRIVATE N_NIMCALL(void, symBodyDigest__CuOAIgIy9afVyEqS9a6M9bEMA)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_6)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_CLOSURE(void, hashVmImpl__g33BhuFeOn85oub1SuUkWg_7)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NI, hash__2f0mDKnzcXGyxkdkc7DbDw)(NimStringDesc* sBuf, NI sPos, NI ePos);
N_LIB_PRIVATE N_NIMCALL(void, setResult__TT9cdDQkh09c214lMSxKXTTg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI64 v);
N_LIB_PRIVATE N_CLOSURE(void, hashVmImplByte__g33BhuFeOn85oub1SuUkWg_8)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*, newSeq__DpCWN7DIBuAjgoeQ9c29blYQ)(NI len);
N_LIB_PRIVATE N_NIMCALL(NI, hash__GXEvKkoaUont1gpaAJabXg)(NU8* aBuf, NI aBufLen_0, NI sPos, NI ePos);
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_37)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__9aodCrWXscOGeNVh2cpuZkw)(void);
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_38)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__LlE3fKEVuGggl04AA4Ifyw)(void);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_39)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetCurrentDir)(void);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_40)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA, fromLit__e9bUTNbnzAFOnIlmlr8pdHQ)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toLit__DMaoEIGAr8AMJz2e1gXYjA)(tyTuple__XOVT24GHXwqiEj5GCsEGCA a);
N_LIB_PRIVATE N_NIMCALL(void, execCmdEx__130zQ9a9cS3YNDwoh0G9at3bw)(NimStringDesc* command, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options, tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* env, NimStringDesc* workingDir, NimStringDesc* input, tyTuple__XOVT24GHXwqiEj5GCsEGCA* Result);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_41)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toLit__LV9bmSfqNNIbUGH8kJv4pMw)(tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q a);
N_LIB_PRIVATE N_NIMCALL(tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q, getTime__h20mpqrwsumk6J9bRdCm6IQ)(void);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_9)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, getEffectList__O9c5vD9cBJNLQza4akZMRnQw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI effectIndex);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, opMapTypeInstToAst__B7DYLotR9aw6o9cHZhrLIPGg)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*, skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_10)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_42)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_43)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a);
N_LIB_PRIVATE N_NIMCALL(void, refresh__VN2MrcCIq6xPNBFBZXkK1Q)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module);
N_LIB_PRIVATE N_NIMCALL(NI, genProc__82SK3f7Ee6e9aktSfHKYXUw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len);
N_LIB_PRIVATE N_NIMCALL(void, setupMacroParam__hXIlM54SMpXNBDQ04umODg)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* Result);
N_LIB_PRIVATE N_NIMCALL(void, putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__Dsjo9bte8vGxzhtcSrsTyiQ_2)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, canonValue__yXNCtNX5XyYFmGvoC2Ryfw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA x);
N_LIB_PRIVATE N_NIMCALL(void, rawExecute__OUDseXSU2midLA4bLXt3gg)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, NI start, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* Result);
static N_NIMCALL(void, Marker_tyRef__i0OKJxPqBBZH5nTqNgi3yQ)(void* p, NI op);
static N_INLINE(void, enter__VlRy4bqjG2Oq4bi2NBW9b0wvmprofiler)(tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg* prof, tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos);
N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
N_LIB_PRIVATE N_NIMCALL(NI, cleanUpOnReturn__UQh0Utfmv2ZQyI277pEV7w)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f);
static N_INLINE(NI*, X5BX5D___Dsh9aMasGTu9cMWGRPlBctPgsystem)(NI* s, NI sLen_0, NI i);
static N_INLINE(NI, pop__OC36rCceCM1GklRaGE2Ipwsystem)(tySequence__qwqHTkRvwhrRyENtudHQ7g** s);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeIT__2kgyckjaq2XB9bxBo5ZeIbg)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ);
N_LIB_PRIVATE N_NIMCALL(void, asgnComplex__luZK66SNRzBExkuHaelzZA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyValue__UyDLGuBe1bDjMXME9b0kt3Q)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
N_LIB_PRIVATE N_NIMCALL(void, fastAsgnComplex__luZK66SNRzBExkuHaelzZA_2)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y);
N_LIB_PRIVATE N_NIMCALL(void, moveConst__luZK66SNRzBExkuHaelzZA_3)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimInt64ToStr)(NI64 x);
N_LIB_PRIVATE N_NIMCALL(void, writeField__GuWkkIoU9ccBLjbIJoyJPzw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** n, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___HBZb4pgGTJ0NuRxlEYFytw)(tyTuple__nlLlqVveYUlcdyx2e2bPTw* x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__QlvraUan7WbHowhAbvDvdA)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, derefPtrToReg__rneu4wkryXcUJeguyyc5lw)(NI64 address, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* r, NIM_BOOL isAssign);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___XSFzZuEhhtAqOvJ5uRr9cuA)(tyTuple__9cqHuynYNPU9avbszh3XtBAg x);
static N_INLINE(NI64, pluspercent___diI9aRPc9bjx9bT39cDuabKh5Asystem)(NI64 x, NI64 y);
static N_INLINE(NI64, minuspercent___diI9aRPc9bjx9bT39cDuabKh5A_2system)(NI64 x, NI64 y);
static N_INLINE(NI, safeArrLen__P89cqdlERShb9alU3iC0yj8w_3ast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inSet__b4nxsJCvqXRlyalSWskgNA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elem);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyTree__Dsjo9bte8vGxzhtcSrsTyiQ)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, diffSets__DJXyM0ZYUUgI9bAP6orixDA_3)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(void, discardSons__CndA7u9cT5evGd9a583WPNqQ)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father);
N_LIB_PRIVATE N_NIMCALL(NI64, cardSet__rIy8FkZfgdui9cmJlRrbtNA)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
static N_INLINE(NI64, starpercent___diI9aRPc9bjx9bT39cDuabKh5A_3system)(NI64 x, NI64 y);
static N_INLINE(NF, toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem)(NI64 i);
static N_INLINE(NF, abs__BRaAqinz6OWTHkALb4oj6Qsystem)(NF x);
static N_INLINE(NI64, slashpercent___diI9aRPc9bjx9bT39cDuabKh5A_4system)(NI64 x, NI64 y);
static N_INLINE(NI64, percentpercent___diI9aRPc9bjx9bT39cDuabKh5A_5system)(NI64 x, NI64 y);
static N_INLINE(NIM_BOOL, lteqpercent___m9aFrKvWqPsM3WKrwczIr9bA_2system)(NI64 x, NI64 y);
static N_INLINE(NIM_BOOL, ltpercent___m9aFrKvWqPsM3WKrwczIr9bAsystem)(NI64 x, NI64 y);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ptrEquality__U2MMUdMR4785sgEWgMubXw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** n1, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, exprStructuralEquivalent__E1mnSzj2NONtG7h9cR3AuFA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, NIM_BOOL strictSymEquality);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameTypeOrNil__3isNyHKb0U1OCnClmflXSg_2)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* a, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* b, tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw flags);
static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsSets__Jr5d2PbcnAZ0pFa4Ny88lg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, equalSets__Jr5d2PbcnAZ0pFa4Ny88lg_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, intersectSets__DJXyM0ZYUUgI9bAP6orixDA)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, unionSets__DJXyM0ZYUUgI9bAP6orixDA_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, shallowCopy__Dsjo9bte8vGxzhtcSrsTyiQ_3)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBody__ocxOgPRHWfivNZELIhOv7w)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc, NIM_BOOL cache);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__I2DV2TmmOysY1ZEGW19b9bRg)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w*, skipGenericOwner__lIu8wX6Beq6dBJgESOFFjg_3)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__2yh9cer0ymNRHlOOg8P7IuA)(NimStringDesc* s, NI first, NI last);
N_NIMCALL(NI, nimParseBiggestFloat)(NimStringDesc* s, NF* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValueConv__hutrgrWnBjOoG19cbpgmANA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
static N_INLINE(NIM_BOOL, importcCond__FdCkMWi1o9ccnUFjzZDi9aUg_2vmgen)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s);
N_LIB_PRIVATE N_NIMCALL(NI, compile__wk4OXe22qII4FFHuYMKF5Q)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
static N_INLINE(NIM_BOOL, isEmptyType__nPImuPGZIdcrAfCNyf4oxA_2ast)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getNullValue__MirnaGAtIj7Yo4Gl5MzUxA)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalTemplate__MnrgLhOl4U6sn3rRD19cz9bA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* tmpl, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* genSymOwner, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NI* instID, NIM_BOOL fromHlo);
N_LIB_PRIVATE N_NIMCALL(void, recSetFlagIsRef__m4MZYLogGqol1qN5L4LLzA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, overlap__tlIBRycg3YyKwtO2aPbGGg)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
N_LIB_PRIVATE N_NIMCALL(void, pushSafePoint__p3zYfzQBzfCT3SxRCaHf5w)(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f, NI pc);
N_LIB_PRIVATE N_NIMCALL(void, popSafePoint__xa6C5GGXE739bwyLex9aXRMQ)(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f);
N_LIB_PRIVATE N_NIMCALL(tyTuple__DcoP8zLFnBpow03kFN9cGhg, findExceptionHandler__7B4YrjB9bwLzkHvmgkXfnUQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exc);
N_LIB_PRIVATE N_NIMCALL(NI, inheritanceDiff__1dM2iQB5qStJfnn3684ijQ_2)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* a, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* b);
N_LIB_PRIVATE N_NIMCALL(void, bailOut__s9cFy5TGKFXao9bSR9bgK0vTw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos);
N_NIMCALL(NimStringDesc*, mnewString)(NI len);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fitsRegister__NRltpJT49cakdDyz9a9cNr4Kw)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t);
N_LIB_PRIVATE N_NIMCALL(void, reset__PQ29bzVEjUtJukXgkwDQPoQ)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* obj);
N_LIB_PRIVATE N_NIMCALL(void, msgQuit__PlZXt6qHCDDk29c9ac4IuLGA)(NI8 x);
N_LIB_PRIVATE N_NIMCALL(NI, toInt__TIX0sFuRf3uBpOBltYp7bw)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getOrdValue__GvVg8kpCh7QA2PDTJnFJlQ)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_Int128__9a9axPfb75jdWY25AamJewkA onError);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, toInt128__161i7kexvUAISxPtGBRWYw)(NI arg);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__3isNyHKb0U1OCnClmflXSg)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* a, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* b, tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw flags);
N_LIB_PRIVATE N_NIMCALL(void, setLenSeq__KXA4RY1gNwE3eOYKOBnMZw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, NI newLen, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
static N_INLINE(NIM_BOOL, lteqpercent___hPljn3JCDQ00ua1R07X9bxQ_2system)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, opMapTypeToAst__B7DYLotR9aw6o9cHZhrLIPGg_2)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, opMapTypeImplToAst__B7DYLotR9aw6o9cHZhrLIPGg_3)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(NI64, getSize__vCG1GF2Iu043oALVyuJfOw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ);
N_LIB_PRIVATE N_NIMCALL(NI64, getAlign__vCG1GF2Iu043oALVyuJfOw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ);
N_LIB_PRIVATE N_NIMCALL(void, sigHash__mSn9a9aX0NBzWqerwPW0qRww_2)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, opSlurp__BZteCpC7yurCSeB8YcFcgg)(NimStringDesc* file, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, parseString__60l3XWY7pBPSQ4Pi9ao9bZPg)(NimStringDesc* s, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, NimStringDesc* filename, NI line, tyProc__pIuD7iLYdwrBMntVRm61ZA errorHandler);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___B9aBcRRVoRSIq0b6yX080jw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, formatMsg__1JLtPXtBEOA0aYSS8UEJDw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___B9aBcRRVoRSIq0b6yX080jw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntNode__zcNs9blLGYB6i9aGKob9bpzRw)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NI64 intVal);
static N_INLINE(NimStringDesc*, toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
N_LIB_PRIVATE N_NIMCALL(void, addInt__mftMOxbyu0h4yByfs3sqjA)(NimStringDesc** result, NI64 x);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
static N_INLINE(NIM_BOOL, eqeq___aqip9cmQIuefPKdd25wuEEwsystem)(NCSTRING x, NCSTRING y);
N_LIB_PRIVATE N_NIMCALL(NI, cmpIgnoreStyle__Jbw1CiaNJLYIkwEiKlU3qg_2)(NCSTRING a, NCSTRING b, NI blen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA*, getIdent__9coBOmdXN09be4rJvXK6fQGQ)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, opConv__Fsv5V3BiOZ6CCSNA7nIsSg)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* dest, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA src, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* desttyp, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* srctyp);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___RkX9btpg5sQIaP8yYXB6tbA)(NU64 x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimFloatToStr)(NF f);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___7c5Zw7H31uJfWmmhZe9aEqw_3)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, toInt128__ZBiVpGjOydV7ZjeElrE9cFQ)(NI64 arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, firstOrd__hjogdnp59cMX1rwmjikBhqw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, lastOrd__hjogdnp59cMX1rwmjikBhqw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t);
N_LIB_PRIVATE N_NIMCALL(void, delSon__oU9bKATaboy8iUhv0r9bMBPw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, NI idx);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w*, newSym__IXbidcxhXTQGZY9abN63Cxg)(tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw symKind, tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* name, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options);
N_LIB_PRIVATE N_NIMCALL(NI64, getOrDefault__z8A9cwbmxkLXNxRJ9arkRPMQ)(tyObject_Table__NttoEzoiq5CiphZe81oadg t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___fM9b60sY7h9aUB763UQb3oXA)(tyObject_Table__NttoEzoiq5CiphZe81oadg* t, NimStringDesc* key, NI64 val);
N_LIB_PRIVATE N_NIMCALL(void, recordInc__6C9a0PyLab6htjYoNOWYndA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* key, NI64 by);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__tNDb8HX4Pcd05E6w80ngeA)(tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___sShzjuQoVJkvjz3oILuGOQ)(tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA* t, NimStringDesc* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTree__FpOm4fidh9bWdkMa1BMRJkQ)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** children, NI childrenLen_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**, X5BX5D___MfHxsDwfhxJEwdTZBgdTmg)(tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA* t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, recordAdd__bEOBCPqrt0LjPdnkWVuoXA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
N_LIB_PRIVATE N_NIMCALL(void, recordIncl__bEOBCPqrt0LjPdnkWVuoXA_2)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__HJN1GCNkXuSaKainyv8E2w)(tyObject_Table__nagDFX4QHx0s6Fvma9blmSg t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___L2EahbjJPAlDipW4Omiq5g)(tyObject_Table__nagDFX4QHx0s6Fvma9blmSg* t, NimStringDesc* key, tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg val);
N_LIB_PRIVATE N_NIMCALL(void, initBTree__k5whnwDpZp6YeM19cX9ajL9aQ)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* Result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__R2s6PEbDP9biCUJnpsKoeYw)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*, X5BX5D___SsXWfuQKn5htR3WBdyM0mA)(tyObject_Table__nagDFX4QHx0s6Fvma9blmSg* t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, add__oXWfa5DZ9ar9aQWG8k6z5P6Q)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* b, NimStringDesc* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
N_LIB_PRIVATE N_NIMCALL(void, recordPut__A0qATj50qXyqSMH9aW9b3gzQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* key, NimStringDesc* k, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
static N_INLINE(NI, len__8UGkwK9cZDAmWMyHxdOt9bsAbtrees)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getOrDefault__N7mBvvE4jWcEmzBA3UoB0A)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasNext__4Wt9aVmAb9agcjxA5gGDTJQw)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b, NI index);
N_LIB_PRIVATE N_NIMCALL(void, next__CqTK9bD6dhLiHbJZ5GMdxDQ)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b, NI index, tyTuple__9aIi6GdTSD27YtPkWxMqNxA* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStrNode__C1MQfgDmfXqO1v69aAZbuYA)(NimStringDesc* strVal, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadAny__Sr5ibxUUgGhmgltd4r9cYpg)(NimStringDesc* s, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(void, createStrKeepNode__LpB9aVgxJQWwIAx62EyhZoA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, NIM_BOOL keepNode);
N_LIB_PRIVATE N_NIMCALL(void, storeAny__OIEM18oCrQXxJj2UzbHuPA)(NimStringDesc** s, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
static N_INLINE(void, leave__QoTzttW5qhAM568TC1hifgvmprofiler)(tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg* prof, tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c);
N_LIB_PRIVATE N_NOINLINE(void, leaveImpl__TxiQHZPVPcs8U49bRKzRtxw)(tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg* prof, tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, cyclicTree__9cP6JNeOKqczaXCI4Zo4SBQ_3)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ mode);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformExpr__o9bTtoSsaDmuiyVzV15dOyg)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NI, genExpr__iSa9ao3PEkzo8fCmeMa1Kvg)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL requiresValue);
N_LIB_PRIVATE N_NIMCALL(void, evalStmt__3adyU8iOjrejcUotYJRmVQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NI, genStmt__PEuKCZcy9a56kIfBOLoHU5Q_3)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, execute__xH4DZUl51vOZwpwgQRlgnA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, NI start);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, myProcess__Owg2e1qJ9cqcKRBQZVvmIWg)(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);

/* section: NIM_merge_DATA */
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_2, "macro instantiation too nested", 30);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_4, "/home/runner/work/nightlies/nightlies/nim/compiler/vm.nim", 57);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_3 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 2242),
((NI) 15)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_5, "in call \'$#\' got $#, but expected $# argument(s)", 48);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_6 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 2247),
((NI) 15)}
;
extern TNimType NTI__ytyiCJqK439aF9cIibuRVpAg_;
N_LIB_PRIVATE TNimType NTI__m9bElogmdcDLEy9czU5AZr6g_;
extern TNimType NTI__xHTZrq9aYs6boc9bCba0JbpQ_;
extern TNimType NTI__FD9cVFUpCDGxUmwW7TEZIFQ_;
N_LIB_PRIVATE TNimType NTI__8Qi2Yy1dXWyP64byz4WwVw_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_8, "stdlib.math.sqrt", 16);
extern TNimType NTI__GJRDbRqzZnSsmt2gZMzKBA_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_9, "vmhooks.nim(40, 12) `i < a.rc - 1` ", 35);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_10, "vmhooks.nim(41, 12) `a.slots[i + a.rb + 1].kind == rkFloat` ", 60);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_12, "stdlib.math.ln", 14);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_14, "stdlib.math.log10", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_16, "stdlib.math.log2", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_18, "stdlib.math.exp", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_20, "stdlib.math.round", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_22, "stdlib.math.arccos", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_24, "stdlib.math.arcsin", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_26, "stdlib.math.arctan", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_28, "stdlib.math.arctan2", 19);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_30, "stdlib.math.cos", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_32, "stdlib.math.cosh", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_34, "stdlib.math.hypot", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_36, "stdlib.math.sinh", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_38, "stdlib.math.sin", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_40, "stdlib.math.tan", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_42, "stdlib.math.tanh", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_44, "stdlib.math.pow", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_46, "stdlib.math.trunc", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_48, "stdlib.math.floor", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_50, "stdlib.math.ceil", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_52, "stdlib.md5.getMD5", 17);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_53, "vmhooks.nim(48, 12) `i < a.rc - 1` ", 35);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_54, "vmhooks.nim(49, 12) `a.slots[i + a.rb + 1].kind == rkNode` ", 59);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_56, "stdlib.math.mod", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_58, "stdlib.os.getEnv", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_60, "stdlib.os.existsEnv", 19);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_62, "stdlib.os.putEnv", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_64, "stdlib.os.dirExists", 19);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_66, "stdlib.os.fileExists", 20);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_68, "stdlib.io.writeFile", 19);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_71, "stdlib.io.readFile", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_73, "stdlib.io.readLines", 19);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_74, "vmhooks.nim(41, 12) `a.slots[i + a.rb + 1].kind == rkInt` ", 58);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_76, "stdlib.system.getCurrentExceptionMsg", 36);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_78, "stdlib.system.getCurrentException", 33);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_80, "stdlib.*.staticWalkDir", 22);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_82, ".", 1);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_83, "..", 2);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_85, "stdlib.compilesettings.querySetting", 35);
extern TNimType NTI__4OBsgZ9cscH2JLUE5Wcz01g_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_86, "stdlib.compilesettings.querySettingSeq", 38);
extern TNimType NTI__sM4lkSb7zS6F7OVMvW9cffQ_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_87, "stdlib.system.gorgeEx", 21);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_88, "stdlib.macros.getProjectPath", 28);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_89, "stdlib.os.getCurrentCompilerExe", 31);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_91, "stdlib.macros.symBodyHash", 25);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_92, "vmhooks.nim(53, 12) `i < a.rc - 1` ", 35);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_93, "vmhooks.nim(54, 12) `a.slots[i + a.rb + 1].kind == rkNode` ", 59);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_94, "stack trace: (most recent call last)", 36);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_95, " calls omitted\012", 15);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_96, "command line", 12);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_97, "\?\?\?", 3);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_98, ", ", 2);
extern TNimType NTI__tIxM6OLoE2pUc9bMTjYhjPg_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_99, "symBodyHash() requires a symbol. \'", 34);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_100, "\' is of kind \'", 14);
extern TNimType NTI__G4E4Gxe7oI2Cm03rkiOzQw_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_101, "\'", 1);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_102 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_97),
((NI) 0),
((NI) -1)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_103, "stdlib.macros.isExported", 24);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_104, "isExported() requires a symbol. \'", 33);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_105, "stdlib.hashes.hashVmImpl", 24);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_106, "stdlib.hashes.hashVmImplByte", 28);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_107, "stdlib.hashes.hashVmImplChar", 28);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_108, "stdlib.times.cpuTime", 20);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_111, "stdlib.os.getCurrentDir", 23);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_113, "stdlib.osproc.execCmdEx", 23);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_115, "stdlib.times.getTime", 20);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_117, "stdlib.effecttraits.getRaisesListImpl", 37);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_118, "stdlib.effecttraits.getTagsListImpl", 35);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_119, "stdlib.effecttraits.isGcSafeImpl", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_121, "stdlib.effecttraits.hasNoSideEffectsImpl", 40);
extern TNimType NTI__jlXqfsdfoRhiIfoVNWV0Vw_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_123, "expected ", 9);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_124, " generic parameter(s)", 21);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_125 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 2284),
((NI) 16)}
;
N_LIB_PRIVATE TNimType NTI__jd629aT6A2Mu9ci3rTLr9bzFw_;
extern TNimType NTI__77mFvmsOLKik79ci2hXkHEg_;
N_LIB_PRIVATE TNimType NTI__i0OKJxPqBBZH5nTqNgi3yQ_;
extern TNimType NTI__qwqHTkRvwhrRyENtudHQ7g_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_127, "opcCastPtrToInt: got ", 21);
extern TNimType NTI__BUH8cfx9botv2xAfmC8mnAQ_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_128, "opcCastIntToPtr: regs[rb].node.typ: ", 36);
extern TNimType NTI__9a3YiReNVD0IJHWFKgXRe9ag_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_129, "opcCastIntToPtr: regs[rb].kind: ", 32);
extern TNimType NTI__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_130, "index out of bounds, the container is empty", 43);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_131, "index ", 6);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_132, " not in 0 .. 9223372036854775807", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_133, " not in 0 .. ", 13);
extern TNimType NTI__bROa11lyF5vxEN9aYNbHmhw_;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_134, "attempt to access a nil address ", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_135, "kind", 4);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_136, "typ", 3);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_137, "rc", 2);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_138, "attempt to access a nil address", 31);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_139, "limited VM support for \'addr\'", 29);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_140 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 767),
((NI) 31)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_141, "deref unsupported ptr type: ", 28);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_142, "attempt to access a nil address kind: ", 38);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_143 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 792),
((NI) 29)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_144, "over- or underflow", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_145, "division by zero", 16);
extern NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag abstractInst__dLigiD0wrfdW59cejPpTktA;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_146, "node is not a symbol", 20);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_147, "node is not a proc symbol", 25);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_148, "illegal conversion from \'$1\' to \'$2\'", 36);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_149, "[", 1);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_150, "]", 1);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_152, "VM not allowed to do FFI, see `compiletimeFFI`", 46);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_153 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1185),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_154, "VM not built with FFI support", 29);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_155 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1205),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_156, "interpretation requires too many iterations; if you are sure th"
"is is not a bug in your code, compile with `--maxLoopIterationsV"
"M:number` (current value: $1)", 156);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_157 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 474),
((NI) 17)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_158, "vm.nim(1282, 15) `false` ", 25);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_159, "vm.nim(1287, 15) `savedPC < 0` ", 31);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_160, "unhandled exception: ", 21);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_161, " [", 2);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_162, "vm.nim(1404, 16) `node.kind == nkIntLit` ", 41);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_163, "opcLdDeref unsupported type: ", 29);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_164 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1433),
((NI) 15)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_165, "node lacks field: ", 18);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_166, "unhandled exception: value out of range", 39);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_168, "cannot get child of node kind: n", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_169, "typechecked nodes may not be modified", 37);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_170, "cannot set child of node kind: n", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_171, "cannot add to node kind: n", 26);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_172, "node lacks field: intVal", 24);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_173, "node lacks field: floatVal", 26);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_174, "node lacks field: symbol", 24);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_175, "node lacks field: ident", 23);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_176, "node has no type", 16);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_177, "symbol is not a field (nskField)", 32);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_178, "node lacks field: strVal", 24);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_179 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1706),
((NI) 15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_180 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1708),
((NI) 15)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_181, "expected expression, but got multiple statements", 48);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_182, "node lacks field: callsite", 26);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_183, "(", 1);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_184, ")", 1);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_185 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1756),
((NI) 23)}
;
extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_186, "opConv for enum", 15);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_187 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 386),
((NI) 46)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_188, " ", 1);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_189, "false", 5);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_190, "true", 4);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_191, "cannot convert to string ", 25);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_192 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 416),
((NI) 19)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_193, "invalid object-to-object conversion", 35);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_194 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 456),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_195, "cannot evaluate cast", 20);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_196 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1853),
((NI) 19)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_197, "`intVal` cannot be changed for an enum symbol.", 46);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_198 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1889),
((NI) 21)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_199 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1890),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_200, "request to create a NimNode of invalid kind", 43);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_201 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1906),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_202, ":tmp", 4);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_203, "request to create symbol of invalid kind", 40);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_204 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 1940),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_205, "key already exists: ", 20);
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_206, "key does not exist: ", 20);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_207 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 2052),
((NI) 21)}
;
STRING_LITERAL(TM__pyAIA9cUF0h9c4j2HfNQPfYw_208, "macro produced a cyclic tree", 28);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pyAIA9cUF0h9c4j2HfNQPfYw_209 = {((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_4),
((NI) 2290),
((NI) 36)}
;

/* section: NIM_merge_VARS */
extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__IcYaEuuWivYAS86vFMTS3Q;
extern TSafePoint* excHandler__rqLlY5bs9atDw2OXYqJEn5g;
extern TSafePoint* excHandler__rqLlY5bs9atDw2OXYqJEn5g;
extern TSafePoint* excHandler__rqLlY5bs9atDw2OXYqJEn5g;
extern TSafePoint* excHandler__rqLlY5bs9atDw2OXYqJEn5g;

/* section: NIM_merge_PROCS */
static N_INLINE(NI, pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
	return result;
}
static N_INLINE(void, incRef__AT1eRuflKWyTTBdLjEDZbg_3system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	(*c).refcount = pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem((*c).refcount, ((NI) 8));
}
static N_INLINE(NI, minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
	return result;
}
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem)(void* usr) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
	NI T1_;
	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = (NI)0;
	T1_ = minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system(((NI) (ptrdiff_t) (usr)), ((NI) 16));
	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
	return result;
}
static N_INLINE(NIM_BOOL, ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem)(NI x, NI y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
	return result;
}
static N_INLINE(void, rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	addZCT__Y66tOYFjgwJ0k4aLz4bc0Q((&gch__IcYaEuuWivYAS86vFMTS3Q.zct), c);
}
static N_INLINE(void, decRef__AT1eRuflKWyTTBdLjEDZbgsystem)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	(*c).refcount = minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system((*c).refcount, ((NI) 8));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem((*c).refcount, ((NI) 8));
		if (!T3_) goto LA4_;
		rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system(c);
	}
	LA4_: ;
}
static N_INLINE(void, asgnRef)(void** dest, void* src) {
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T5_ = usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem(src);
		incRef__AT1eRuflKWyTTBdLjEDZbg_3system(T5_);
	}
	LA3_: ;
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
		if (!!(((*dest) == NIM_NIL))) goto LA8_;
		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T10_ = usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem((*dest));
		decRef__AT1eRuflKWyTTBdLjEDZbgsystem(T10_);
	}
	LA8_: ;
	(*dest) = src;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, errorNode__9cqF4KDIxxYX55FGMDoxR4Q)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*n).info);
	asgnRef((void**) (&(*result).typ), newType__SNqpa06pdVCLFFBR28119aQ(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 50), owner));
	(*(*result).typ).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 38)) & 63);
	return result;
}
static N_INLINE(NI, len__P89cqdlERShb9alU3iC0yj8wast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NI result;
	NI T1_;
	result = (NI)0;
	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
	result = T1_;
	return result;
}
static N_INLINE(NI, safeLen__P89cqdlERShb9alU3iC0yj8w_2ast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA3_: ;
	{
		result = len__P89cqdlERShb9alU3iC0yj8wast(n);
	}
	LA1_: ;
	return result;
}
static N_INLINE(NI, len__5mJADrRYkP3r9auuiuDZN9cQast)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* n) {
	NI result;
	NI T1_;
	result = (NI)0;
	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
	result = T1_;
	return result;
}
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
	nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory(p, ((int) 0), size);
}
static N_NIMCALL(void, Marker_tyRef__8Qi2Yy1dXWyP64byz4WwVw)(void* p, NI op) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* a;
	a = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*)p;
	nimGCvisit((void*)(*a).c1, op);
}
N_LIB_PRIVATE N_NIMCALL(void, ensureKind__hLEAmC34r1Yd9aCCcNP1pLA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* n, tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ kind) {
	{
		tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T5_;
		if (!!(((*n).kind == kind))) goto LA3_;
		nimZeroMem((void*)(&T5_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		nimZeroMem((void*)(&T5_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		T5_.kind = kind;
		genericShallowAssign((void*)(&(*n)), (void*)(&T5_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__PlA9cyXmUSmFKkhh8sQETRg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NF v) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
	(*a).slots[(*a).ra].floatVal = v;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest, source, ((size_t) (size)));
}
N_LIB_PRIVATE N_NIMCALL(NF, getFloat__Gb7N45iPByJjVcCcp9aU6eg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i) {
	NF result;
	result = (NF)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_9));
	}
	LA3_: ;
	{
		if (!!(((*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3)))) goto LA7_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_10));
	}
	LA7_: ;
	result = (*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].floatVal;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, sqrtWrapper__YYz4trFdtBrqWRYoIzUH9aA)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = sqrt(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, lnWrapper__YYz4trFdtBrqWRYoIzUH9aA_2)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = log(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, log10Wrapper__YYz4trFdtBrqWRYoIzUH9aA_3)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = log10(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, log2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_4)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = log2(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, expWrapper__YYz4trFdtBrqWRYoIzUH9aA_5)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = exp(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, roundWrapper__YYz4trFdtBrqWRYoIzUH9aA_6)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = round(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, arccosWrapper__YYz4trFdtBrqWRYoIzUH9aA_7)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = acos(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, arcsinWrapper__YYz4trFdtBrqWRYoIzUH9aA_8)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = asin(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, arctanWrapper__YYz4trFdtBrqWRYoIzUH9aA_9)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = atan(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, arctan2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_10)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	NF T4_;
	NF T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = T2_;
	T4_ = (NF)0;
	T4_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 1));
	T5_ = (NF)0;
	T5_ = atan2(T3_, T4_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, cosWrapper__YYz4trFdtBrqWRYoIzUH9aA_11)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = cos(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, coshWrapper__YYz4trFdtBrqWRYoIzUH9aA_12)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = cosh(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, hypotWrapper__YYz4trFdtBrqWRYoIzUH9aA_13)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	NF T4_;
	NF T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = T2_;
	T4_ = (NF)0;
	T4_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 1));
	T5_ = (NF)0;
	T5_ = hypot(T3_, T4_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, sinhWrapper__YYz4trFdtBrqWRYoIzUH9aA_14)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = sinh(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, sinWrapper__YYz4trFdtBrqWRYoIzUH9aA_15)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = sin(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, tanWrapper__YYz4trFdtBrqWRYoIzUH9aA_16)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = tan(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, tanhWrapper__YYz4trFdtBrqWRYoIzUH9aA_17)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = tanh(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, powWrapper__YYz4trFdtBrqWRYoIzUH9aA_18)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	NF T4_;
	NF T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = T2_;
	T4_ = (NF)0;
	T4_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 1));
	T5_ = (NF)0;
	T5_ = pow(T3_, T4_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, truncWrapper__YYz4trFdtBrqWRYoIzUH9aA_19)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = trunc(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, floorWrapper__YYz4trFdtBrqWRYoIzUH9aA_20)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = floor(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, ceilWrapper__YYz4trFdtBrqWRYoIzUH9aA_21)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = ceil(T2_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T3_);
}
static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem(p);
	decRef__AT1eRuflKWyTTBdLjEDZbgsystem(T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__g9crT9ba9c0OxETalTxR9cv1Sw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NimStringDesc* v) {
	NimStringDesc* T1_;
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
	T1_ = (NimStringDesc*)0;
	T1_ = (*(*a).slots[(*a).ra].node)._kind_3.strVal; (*(*a).slots[(*a).ra].node)._kind_3.strVal = copyStringRC1(v);
	if (T1_) nimGCunrefNoCycle(T1_);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getString__fqypzXhNY5rpF89ak7Q0GlQ)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i) {
	NimStringDesc* result;
	result = (NimStringDesc*)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_53));
	}
	LA3_: ;
	{
		if (!!(((*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1)))) goto LA7_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_54));
	}
	LA7_: ;
	result = copyString((*(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].node)._kind_3.strVal);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getMD5Wrapper__YYz4trFdtBrqWRYoIzUH9aA_22)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = getMD5__kEzF9cC2zt4kZNszZVUnKEA(T2_);
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, modWrapper__YYz4trFdtBrqWRYoIzUH9aA_23)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NF T2_;
	NF T3_;
	NF T4_;
	NF T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NF)0;
	T2_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 0));
	T3_ = (NF)0;
	T3_ = T2_;
	T4_ = (NF)0;
	T4_ = getFloat__Gb7N45iPByJjVcCcp9aU6eg(a, ((NI) 1));
	T5_ = (NF)0;
	T5_ = fmod(T3_, T4_);
	setResult__PlA9cyXmUSmFKkhh8sQETRg((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, getEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_24)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	NimStringDesc* T4_;
	NimStringDesc* T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = T2_;
	T4_ = (NimStringDesc*)0;
	T4_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 1));
	T5_ = (NimStringDesc*)0;
	T5_ = getEnv__hhED57tMl0Iaa5bOg9cJaig(T3_, T4_);
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__X7b1uTvNjENZoIKwHxPn9aA)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NIM_BOOL v) {
	NI v_2;
	v_2 = v;
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
	(*a).slots[(*a).ra].intVal = ((NI64) (v_2));
}
N_LIB_PRIVATE N_NIMCALL(void, existsEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_25)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NIM_BOOL T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NIM_BOOL)0;
	T3_ = existsEnv__HhiDHRQxJ349a6FFxO51gqQ(T2_);
	setResult__X7b1uTvNjENZoIKwHxPn9aA((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, putEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_26)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	T1_ = (NimStringDesc*)0;
	T1_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T2_ = (NimStringDesc*)0;
	T2_ = T1_;
	T3_ = (NimStringDesc*)0;
	T3_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 1));
	putEnv__YVZCqlK3fKyVR367JpYgKA(T2_, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, dirExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_27)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NIM_BOOL T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NIM_BOOL)0;
	T3_ = nosdirExists(T2_);
	setResult__X7b1uTvNjENZoIKwHxPn9aA((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, fileExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_28)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NIM_BOOL T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NIM_BOOL)0;
	T3_ = nosfileExists(T2_);
	setResult__X7b1uTvNjENZoIKwHxPn9aA((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_29)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
}
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_30)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	T1_ = (NimStringDesc*)0;
	T1_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T2_ = (NimStringDesc*)0;
	T2_ = T1_;
	T3_ = (NimStringDesc*)0;
	T3_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 1));
	writeFile__D6Pj9c29aCLEJP9beOWa08HYA(T2_, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, readFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_31)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = readFile__4PGnM9bWmsH0Nu7dnr3XzgA(T2_);
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__nH0psxYZ8gVURA1upHNltw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* v) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
	n = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41));
	{
		NimStringDesc** x;
		NI i;
		NI L;
		NI T2_;
		x = (NimStringDesc**)0;
		i = ((NI) 0);
		T2_ = (v ? v->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
				if (!(i < L)) goto LA4;
				x = (&v->data[i]);
				T5_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T5_ = newStrNode__zLcHGdlEbBYFtoCoan9agkg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), (*x));
				add__P8dDSotTW25BkfbyspojGg(n, T5_);
				i += ((NI) 1);
			} LA4: ;
		}
	}
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), n);
}
N_LIB_PRIVATE N_NIMCALL(NI64, getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i) {
	NI64 result;
	result = (NI64)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_9));
	}
	LA3_: ;
	{
		if (!!(((*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2)))) goto LA7_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_74));
	}
	LA7_: ;
	result = (*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].intVal;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, readLinesWrapper__YYz4trFdtBrqWRYoIzUH9aA_32)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	NI64 T4_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = T2_;
	T4_ = (NI64)0;
	T4_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 1));
	T5_ = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*)0;
	T5_ = readLines__SgtYKLMb9cNidg5iRn9aNDJA(T3_, ((NI) (T4_)));
	setResult__nH0psxYZ8gVURA1upHNltw((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionMsgWrapper__YYz4trFdtBrqWRYoIzUH9aA_33)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	{
		if (!((*a).currentException == 0)) goto LA5_;
		T2_ = ((NimStringDesc*) NIM_NIL);
	}
	goto LA3_;
	LA5_: ;
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
		T8_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		T8_ = skipColon__UPSW0jLTX5qJL51YMUAHgw_3((*(*a).currentException)._kind_6.sons->data[((NI) 3)]);
		T2_ = copyString((*T8_)._kind_3.strVal);
	}
	LA3_: ;
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw((&T1_), T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__Adyk89aSgmLp9bDuSV0Va03A)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), n);
}
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionWrapper__YYz4trFdtBrqWRYoIzUH9aA_34)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	setResult__Adyk89aSgmLp9bDuSV0Va03A(a, (*a).currentException);
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
	NCSTRING result;
	result = (NCSTRING)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (s == NIM_NIL);
		if (T3_) goto LA4_;
		T3_ = ((*s).Sup.len == ((NI) 0));
		LA4_: ;
		if (!T3_) goto LA5_;
		result = "";
	}
	goto LA1_;
	LA5_: ;
	{
		result = ((NCSTRING) ((*s).data));
	}
	LA1_: ;
	return result;
}
static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
	(*s).prev = excHandler__rqLlY5bs9atDw2OXYqJEn5g;
	excHandler__rqLlY5bs9atDw2OXYqJEn5g = s;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
	int result;
	result = (int)0;
	result = memcmp(a, b, ((size_t) (size)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__9bGgqEk7RXXl6eqM9c1HdELAsystem)(void* a, void* b, NI size) {
	NIM_BOOL result;
	int T1_;
	result = (NIM_BOOL)0;
	T1_ = (int)0;
	T1_ = nimCmpMem(a, b, size);
	result = (T1_ == ((NI32) 0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
	NIM_BOOL result;
	NI alen;
	NI blen;
{	result = (NIM_BOOL)0;
	alen = (a ? a->Sup.len : 0);
	blen = (b ? b->Sup.len : 0);
	{
		if (!(alen == blen)) goto LA3_;
		{
			if (!(alen == ((NI) 0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
		LA7_: ;
		result = equalMem__9bGgqEk7RXXl6eqM9c1HdELAsystem(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, popSafePoint)(void) {
	excHandler__rqLlY5bs9atDw2OXYqJEn5g = (*excHandler__rqLlY5bs9atDw2OXYqJEn5g).prev;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, staticWalkDirImpl__LMpMzadlvEqBMJiq3ClvHw)(NimStringDesc* path, NIM_BOOL relative) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41));
	{
		tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg k;
		NimStringDesc* f;
		DIR* d;
		k = (tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg)0;
		f = (NimStringDesc*)0;
		d = opendir(nimToCStringConv(path));
		{
			if (!(d == NIM_NIL)) goto LA4_;
			{
				NI32 T10_;
				if (!NIM_FALSE) goto LA8_;
				T10_ = (NI32)0;
				T10_ = osLastError__9bUWNxbcGnToMWA9b79aTXLIw();
				raiseOSError__CWyPYlyH9a6rAuZckFyVxPA(T10_, path);
			}
			LA8_: ;
		}
		goto LA2_;
		LA4_: ;
		{
			TSafePoint TM__pyAIA9cUF0h9c4j2HfNQPfYw_81;
			pushSafePoint(&TM__pyAIA9cUF0h9c4j2HfNQPfYw_81);
			TM__pyAIA9cUF0h9c4j2HfNQPfYw_81.status = setjmp(TM__pyAIA9cUF0h9c4j2HfNQPfYw_81.context);
			if (TM__pyAIA9cUF0h9c4j2HfNQPfYw_81.status == 0) {
			{
				while (1) {
					{
						struct dirent* x;
						NimStringDesc* y;
						x = readdir(d);
						{
							if (!(x == NIM_NIL)) goto LA17_;
							goto LA12;
						}
						LA17_: ;
						y = cstrToNimstr(((NCSTRING) ((*x).d_name)));
						{
							NIM_BOOL T21_;
							struct stat s;
							NimStringDesc* path_2;
							tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg k_2;
							tyTuple__LCURwohbLBusrL8hdCnvng T63_;
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T64_;
							T21_ = (NIM_BOOL)0;
							T21_ = !(eqStrings(y, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_82)));
							if (!(T21_)) goto LA22_;
							T21_ = !(eqStrings(y, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_83)));
							LA22_: ;
							if (!T21_) goto LA23_;
							nimZeroMem((void*)(&s), sizeof(struct stat));
							path_2 = slash___gEyhbzZ1UcxyenWRLJRXNQ(path, y);
							{
								if (!!(relative)) goto LA27_;
								y = copyString(path_2);
							}
							LA27_: ;
							k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 0);
							{
								tyTuple__LCURwohbLBusrL8hdCnvng T47_;
								tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T48_;
								if (!!(((*x).d_type == ((NI8) 0)))) goto LA31_;
								{
									if (!((*x).d_type == ((NI8) 4))) goto LA35_;
									k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 2);
								}
								LA35_: ;
								{
									if (!((*x).d_type == ((NI8) 10))) goto LA39_;
									{
										NIM_BOOL T43_;
										T43_ = (NIM_BOOL)0;
										T43_ = nosdirExists(path_2);
										if (!T43_) goto LA44_;
										k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 3);
									}
									goto LA41_;
									LA44_: ;
									{
										k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 1);
									}
									LA41_: ;
								}
								LA39_: ;
								k = k_2;
								f = y;
								nimZeroMem((void*)(&T47_), sizeof(tyTuple__LCURwohbLBusrL8hdCnvng));
								T47_.Field0 = k;
								T47_.Field1 = copyString(f);
								T48_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
								T48_ = toLit__EiNc3CjWjUuz7a9aOLdGMhw(T47_);
								add__P8dDSotTW25BkfbyspojGg(result, T48_);
								goto LA14;
							}
							LA31_: ;
							{
								int T51_;
								T51_ = (int)0;
								T51_ = lstat(nimToCStringConv(path_2), (&s));
								if (!(T51_ < ((NI32) 0))) goto LA52_;
								goto LA12;
							}
							LA52_: ;
							{
								NIM_BOOL T56_;
								T56_ = (NIM_BOOL)0;
								T56_ = S_ISDIR(s.st_mode);
								if (!T56_) goto LA57_;
								k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 2);
							}
							goto LA54_;
							LA57_: ;
							{
								NIM_BOOL T60_;
								T60_ = (NIM_BOOL)0;
								T60_ = S_ISLNK(s.st_mode);
								if (!T60_) goto LA61_;
								k_2 = getSymlinkFileKind__wTnLPNAWjgwVnuiJ9ax0ZGQ(path_2);
							}
							goto LA54_;
							LA61_: ;
							LA54_: ;
							k = k_2;
							f = y;
							nimZeroMem((void*)(&T63_), sizeof(tyTuple__LCURwohbLBusrL8hdCnvng));
							T63_.Field0 = k;
							T63_.Field1 = copyString(f);
							T64_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							T64_ = toLit__EiNc3CjWjUuz7a9aOLdGMhw(T63_);
							add__P8dDSotTW25BkfbyspojGg(result, T64_);
						}
						LA23_: ;
					} LA14: ;
				}
			} LA12: ;
			popSafePoint();
			}
			else {
				popSafePoint();
			}
			{
				int T67_;
				T67_ = (int)0;
				T67_ = closedir(d);
				(void)(T67_);
				if (TM__pyAIA9cUF0h9c4j2HfNQPfYw_81.status != 0) nimLeaveFinally();
			}
			if (TM__pyAIA9cUF0h9c4j2HfNQPfYw_81.status != 0) reraiseException();
		}
		LA2_: ;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, getBool__EhqFCFCIHmFhBfWH28wGww)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i) {
	NIM_BOOL result;
	NI64 T1_;
	result = (NIM_BOOL)0;
	T1_ = (NI64)0;
	T1_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, i);
	result = !((T1_ == IL64(0)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_35)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	NIM_BOOL T4_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NimStringDesc*)0;
	T2_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = T2_;
	T4_ = (NIM_BOOL)0;
	T4_ = getBool__EhqFCFCIHmFhBfWH28wGww(a, ((NI) 1));
	T5_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T5_ = staticWalkDirImpl__LMpMzadlvEqBMJiq3ClvHw(T3_, T4_);
	setResult__Adyk89aSgmLp9bDuSV0Va03A((&T1_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, querySettingImpl__srQdL5iB3k6bPvYBcewFbg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI64 switch_0) {
	NimStringDesc* result;
	result = (NimStringDesc*)0;
	switch (((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) (switch_0))) {
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 0):
	{
		result = copyString((*conf).arguments);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 1):
	{
		result = copyString((*conf).outFile);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 2):
	{
		result = copyString((*conf).outDir);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 3):
	{
		result = getNimcacheDir__oltK69akg0xLqkR2ITKbomg_2(conf);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 4):
	{
		result = copyString((*conf).projectName);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 5):
	{
		result = copyString((*conf).projectPath);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 6):
	{
		result = copyString((*conf).projectFull);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 7):
	{
		result = copyString((*conf).command);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 8):
	{
		result = copyString((*conf).commandLine);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 9):
	{
		result = copyString((*conf).linkOptions);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 10):
	{
		result = copyString((*conf).compileOptions);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 11):
	{
		result = copyString((*conf).cCompilerPath);
	}
	break;
	case ((tyEnum_SingleValueSetting__Igy03f37WeVmNeG9bUdBWjA) 12):
	{
		result = reprEnum((NI)(*conf).backend, (&NTI__4OBsgZ9cscH2JLUE5Wcz01g_));
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NI64 T2_;
	NimStringDesc* T3_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NI64)0;
	T2_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 0));
	T3_ = (NimStringDesc*)0;
	T3_ = querySettingImpl__srQdL5iB3k6bPvYBcewFbg((*(*colonenvP_).c1).config, T2_);
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw((&T1_), T3_);
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, querySettingSeqImpl__cyp2fnhz9brEKqcbTIK2sQw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI64 switch_0) {
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
	result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*)0;
	switch (((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) (switch_0))) {
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 0):
	{
		{
			NimStringDesc** iX60gensym1089_;
			NI i;
			NI L;
			NI T3_;
			iX60gensym1089_ = (NimStringDesc**)0;
			i = ((NI) 0);
			T3_ = ((*conf).nimblePaths ? (*conf).nimblePaths->Sup.len : 0);
			L = T3_;
			{
				while (1) {
					NI T6_;
					NimStringDesc* T7_;
					if (!(i < L)) goto LA5;
					iX60gensym1089_ = (&(*conf).nimblePaths->data[i]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
					T6_ = result->Sup.len++;
					T7_ = (NimStringDesc*)0;
					T7_ = result->data[T6_]; result->data[T6_] = copyStringRC1((*iX60gensym1089_));
					if (T7_) nimGCunrefNoCycle(T7_);
					i += ((NI) 1);
				} LA5: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 1):
	{
		{
			NimStringDesc** iX60gensym1090_;
			NI i_2;
			NI L_2;
			NI T10_;
			iX60gensym1090_ = (NimStringDesc**)0;
			i_2 = ((NI) 0);
			T10_ = ((*conf).searchPaths ? (*conf).searchPaths->Sup.len : 0);
			L_2 = T10_;
			{
				while (1) {
					NI T13_;
					NimStringDesc* T14_;
					if (!(i_2 < L_2)) goto LA12;
					iX60gensym1090_ = (&(*conf).searchPaths->data[i_2]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
					T13_ = result->Sup.len++;
					T14_ = (NimStringDesc*)0;
					T14_ = result->data[T13_]; result->data[T13_] = copyStringRC1((*iX60gensym1090_));
					if (T14_) nimGCunrefNoCycle(T14_);
					i_2 += ((NI) 1);
				} LA12: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 2):
	{
		{
			NimStringDesc** iX60gensym1091_;
			NI i_3;
			NI L_3;
			NI T17_;
			iX60gensym1091_ = (NimStringDesc**)0;
			i_3 = ((NI) 0);
			T17_ = ((*conf).lazyPaths ? (*conf).lazyPaths->Sup.len : 0);
			L_3 = T17_;
			{
				while (1) {
					NI T20_;
					NimStringDesc* T21_;
					if (!(i_3 < L_3)) goto LA19;
					iX60gensym1091_ = (&(*conf).lazyPaths->data[i_3]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
					T20_ = result->Sup.len++;
					T21_ = (NimStringDesc*)0;
					T21_ = result->data[T20_]; result->data[T20_] = copyStringRC1((*iX60gensym1091_));
					if (T21_) nimGCunrefNoCycle(T21_);
					i_3 += ((NI) 1);
				} LA19: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 3):
	{
		genericSeqAssign((&result), (*conf).commandArgs, (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
	}
	break;
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 4):
	{
		{
			NimStringDesc** iX60gensym1092_;
			NI i_4;
			NI L_4;
			NI T25_;
			iX60gensym1092_ = (NimStringDesc**)0;
			i_4 = ((NI) 0);
			T25_ = ((*conf).cIncludes ? (*conf).cIncludes->Sup.len : 0);
			L_4 = T25_;
			{
				while (1) {
					NI T28_;
					NimStringDesc* T29_;
					if (!(i_4 < L_4)) goto LA27;
					iX60gensym1092_ = (&(*conf).cIncludes->data[i_4]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
					T28_ = result->Sup.len++;
					T29_ = (NimStringDesc*)0;
					T29_ = result->data[T28_]; result->data[T28_] = copyStringRC1((*iX60gensym1092_));
					if (T29_) nimGCunrefNoCycle(T29_);
					i_4 += ((NI) 1);
				} LA27: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__VWhGRvtekA8sZB8MCm56ew) 5):
	{
		{
			NimStringDesc** iX60gensym1093_;
			NI i_5;
			NI L_5;
			NI T32_;
			iX60gensym1093_ = (NimStringDesc**)0;
			i_5 = ((NI) 0);
			T32_ = ((*conf).cLibs ? (*conf).cLibs->Sup.len : 0);
			L_5 = T32_;
			{
				while (1) {
					NI T35_;
					NimStringDesc* T36_;
					if (!(i_5 < L_5)) goto LA34;
					iX60gensym1093_ = (&(*conf).cLibs->data[i_5]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTI__sM4lkSb7zS6F7OVMvW9cffQ_));
					T35_ = result->Sup.len++;
					T36_ = (NimStringDesc*)0;
					T36_ = result->data[T35_]; result->data[T35_] = copyStringRC1((*iX60gensym1093_));
					if (T36_) nimGCunrefNoCycle(T36_);
					i_5 += ((NI) 1);
				} LA34: ;
			}
		}
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_2)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T1_;
	NI64 T2_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T3_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T1_), (NIM_CONST void*)a, sizeof(T1_));
	T2_ = (NI64)0;
	T2_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 0));
	T3_ = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*)0;
	T3_ = querySettingSeqImpl__cyp2fnhz9brEKqcbTIK2sQw((*(*colonenvP_).c1).config, T2_);
	setResult__nH0psxYZ8gVURA1upHNltw((&T1_), T3_);
}
N_LIB_PRIVATE N_CLOSURE(void, gorgeExWrapper__g33BhuFeOn85oub1SuUkWg_3)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	tyTuple__XOVT24GHXwqiEj5GCsEGCA ret;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	NimStringDesc* T4_;
	NimStringDesc* T5_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	nimZeroMem((void*)(&ret), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
	T1_ = (NimStringDesc*)0;
	T1_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T2_ = (NimStringDesc*)0;
	T2_ = T1_;
	T3_ = (NimStringDesc*)0;
	T3_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 1));
	T4_ = (NimStringDesc*)0;
	T4_ = T3_;
	T5_ = (NimStringDesc*)0;
	T5_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 2));
	opGorge__PHM9cEmzUJYj3PsIVbIPnxQ(T2_, T4_, T5_, (*a).currentLineInfo, (*(*colonenvP_).c1).config, (&ret));
	T6_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T6_ = toLit__KipqGaFAV5q2V57HtRKVog(ret);
	setResult__Adyk89aSgmLp9bDuSV0Va03A(a, T6_);
}
N_LIB_PRIVATE N_CLOSURE(void, getProjectPathWrapper__g33BhuFeOn85oub1SuUkWg_4)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw(a, (*(*(*colonenvP_).c1).config).projectPath);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_36)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NimStringDesc* T1_;
	T1_ = (NimStringDesc*)0;
	T1_ = nosgetAppFilename();
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getNode__DuJnnnM0aSaXeDv118rkUw)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI i) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_92));
	}
	LA3_: ;
	{
		if (!!(((*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1)))) goto LA7_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_93));
	}
	LA7_: ;
	result = (*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))].node;
	return result;
}
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_: ;
}
static N_INLINE(NI, toLinenumber__6D4Rmpw7LpcRI1j7CMqEsAmsgs)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
	NI result;
	result = (NI)0;
	result = ((NI) (info.line));
	return result;
}
static N_INLINE(NI, toColumn__6D4Rmpw7LpcRI1j7CMqEsA_2msgs)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
	NI result;
	result = (NI)0;
	result = ((NI) (info.col));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, stackTraceAux__mtjZlZD2xSyaebZUBpGCHA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* x, NI pc, NI recursionLimit) {
{	{
		tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
		NimStringDesc* s;
		NI line;
		NI col;
		if (!!((x == NIM_NIL))) goto LA3_;
		{
			NI calls;
			tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* x_2;
			NimStringDesc* T11_;
			NimStringDesc* T12_;
			if (!(recursionLimit == ((NI) 0))) goto LA7_;
			calls = ((NI) 0);
			x_2 = x;
			{
				while (1) {
					if (!!((x_2 == NIM_NIL))) goto LA10;
					calls += ((NI) 1);
					x_2 = (*x_2).next;
				} LA10: ;
			}
			T11_ = (NimStringDesc*)0;
			T12_ = (NimStringDesc*)0;
			T12_ = nimIntToStr(calls);
			T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + 15);
appendString(T11_, T12_);
appendString(T11_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_95));
			msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, T11_, 0);
			goto BeforeRet_;
		}
		LA7_: ;
		stackTraceAux__mtjZlZD2xSyaebZUBpGCHA(c, (*x).next, (*x).comesFrom, (NI)(recursionLimit - ((NI) 1)));
		info = (*c).debug->data[pc];
		s = ((NimStringDesc*) NIM_NIL);
		{
			if (!(((*(*c).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 31))&63U)))!=0)) goto LA15_;
			s = toFullPath__VW1RaR1l9c9bPnJxr1KuvIrg((*c).config, info.fileIndex);
		}
		goto LA13_;
		LA15_: ;
		{
			{
				NIM_BOOL T20_;
				T20_ = (NIM_BOOL)0;
				T20_ = (info.fileIndex < ((NI32) 0));
				if (T20_) goto LA21_;
				T20_ = ((*c).config == NIM_NIL);
				LA21_: ;
				if (!T20_) goto LA22_;
				{
					if (!(info.fileIndex == ((NI32) -3))) goto LA26_;
					s = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_96));
				}
				goto LA24_;
				LA26_: ;
				{
					s = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_97));
				}
				LA24_: ;
			}
			goto LA18_;
			LA22_: ;
			{
				s = copyString((*(*c).config).m.fileInfos->data[info.fileIndex].shortName);
			}
			LA18_: ;
		}
		LA13_: ;
		line = toLinenumber__6D4Rmpw7LpcRI1j7CMqEsAmsgs(info);
		col = toColumn__6D4Rmpw7LpcRI1j7CMqEsA_2msgs(info);
		{
			NimStringDesc* T34_;
			NimStringDesc* T35_;
			if (!(((NI) 0) < line)) goto LA32_;
			s = addChar(s, 40);
			T34_ = (NimStringDesc*)0;
			T34_ = nimIntToStr(line);
			s = resizeString(s, (T34_ ? T34_->Sup.len : 0) + 0);
appendString(s, T34_);
			s = resizeString(s, 2);
appendString(s, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_98));
			T35_ = (NimStringDesc*)0;
			T35_ = nimIntToStr((NI)(col + ((NI) 1)));
			s = resizeString(s, (T35_ ? T35_->Sup.len : 0) + 0);
appendString(s, T35_);
			s = addChar(s, 41);
		}
		LA32_: ;
		{
			if (!!(((*x).prc == NIM_NIL))) goto LA38_;
			{
				NI k;
				NI colontmp_;
				NI res;
				k = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = ((((NI) 1) >= (NI)(((NI) 25) - (s ? s->Sup.len : 0))) ? ((NI) 1) : (NI)(((NI) 25) - (s ? s->Sup.len : 0)));
				res = ((NI) 1);
				{
					while (1) {
						if (!(res <= colontmp_)) goto LA42;
						k = res;
						s = addChar(s, 32);
						res += ((NI) 1);
					} LA42: ;
				}
			}
			s = resizeString(s, ((*(*(*x).prc).name).s ? (*(*(*x).prc).name).s->Sup.len : 0) + 0);
appendString(s, (*(*(*x).prc).name).s);
		}
		LA38_: ;
		msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, s, 0);
	}
	LA3_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NOINLINE(void, stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos, NI pc, NimStringDesc* msg, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lineInfo, tyTuple__kN8up2W6YKc5YA9avn5mV5w infoOrigin) {
	tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw action;
	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lineInfo_2;
	msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_94), 0);
	stackTraceAux__mtjZlZD2xSyaebZUBpGCHA(c, tos, pc, ((NI) 100));
	{
		if (!((*c).mode == ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 0))) goto LA3_;
		action = ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2);
	}
	goto LA1_;
	LA3_: ;
	{
		action = ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0);
	}
	LA1_: ;
	{
		tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T8_;
		NIM_BOOL T9_;
		nimZeroMem((void*)(&T8_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
		T9_ = (NIM_BOOL)0;
		T9_ = eqeq___59bygf5b7AsTVb9a1lVM66oA(lineInfo, T8_);
		if (!T9_) goto LA10_;
		lineInfo_2 = (*c).debug->data[pc];
	}
	goto LA6_;
	LA10_: ;
	{
		lineInfo_2 = lineInfo;
	}
	LA6_: ;
	liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, lineInfo_2, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), msg, action, infoOrigin, NIM_FALSE);
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_5)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
	tyArray__qtqsWM5aXmcpMIVmvq3kAA T8_;
	NimStringDesc* T9_;
{	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	n = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	{
		tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T5_;
		NimStringDesc* T6_;
		NimStringDesc* T7_;
		if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_;
		T5_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
		T5_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
		asgnRef((void**) (&(*T5_).prc), (*(*(*colonenvP_).c1).prc).sym);
		(*T5_).comesFrom = ((NI) 0);
		asgnRef((void**) (&(*T5_).next), NIM_NIL);
		T6_ = (NimStringDesc*)0;
		T7_ = (NimStringDesc*)0;
		T7_ = dollar___qX5C9b0n9bOP7jk69amC8dA7A(n);
		T6_ = rawNewString((T7_ ? T7_->Sup.len : 0) + (reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 49);
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_99));
appendString(T6_, T7_);
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_100));
appendString(T6_, reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_101));
		stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ((*colonenvP_).c1, T5_, (*(*colonenvP_).c1).exceptionInstr, T6_, (*n).info, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
		goto BeforeRet_;
	}
	LA3_: ;
	nimZeroMem((void*)T8_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
	symBodyDigest__CuOAIgIy9afVyEqS9a6M9bEMA((*(*colonenvP_).c1).graph, (*n)._kind_4.sym, T8_);
	T9_ = (NimStringDesc*)0;
	T9_ = dollar___0A9bslyIJ49bWrftLGh13rvg(T8_);
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw(a, T9_);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_6)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
{	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	n = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	{
		tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T5_;
		NimStringDesc* T6_;
		NimStringDesc* T7_;
		if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_;
		T5_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
		T5_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
		asgnRef((void**) (&(*T5_).prc), (*(*(*colonenvP_).c1).prc).sym);
		(*T5_).comesFrom = ((NI) 0);
		asgnRef((void**) (&(*T5_).next), NIM_NIL);
		T6_ = (NimStringDesc*)0;
		T7_ = (NimStringDesc*)0;
		T7_ = dollar___qX5C9b0n9bOP7jk69amC8dA7A(n);
		T6_ = rawNewString((T7_ ? T7_->Sup.len : 0) + (reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 48);
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_104));
appendString(T6_, T7_);
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_100));
appendString(T6_, reprEnum((NI)(*n).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
appendString(T6_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_101));
		stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ((*colonenvP_).c1, T5_, (*(*colonenvP_).c1).exceptionInstr, T6_, (*n).info, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
		goto BeforeRet_;
	}
	LA3_: ;
	setResult__X7b1uTvNjENZoIKwHxPn9aA(a, (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 1))&63U)))!=0));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__TT9cdDQkh09c214lMSxKXTTg)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI64 v) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
	(*a).slots[(*a).ra].intVal = v;
}
N_LIB_PRIVATE N_CLOSURE(void, hashVmImpl__g33BhuFeOn85oub1SuUkWg_7)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	NI res;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NI64 T3_;
	NI T4_;
	NI64 T5_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	T1_ = (NimStringDesc*)0;
	T1_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	T2_ = (NimStringDesc*)0;
	T2_ = T1_;
	T3_ = (NI64)0;
	T3_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 1));
	T4_ = (NI)0;
	T4_ = ((NI) (T3_));
	T5_ = (NI64)0;
	T5_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 2));
	res = hash__2f0mDKnzcXGyxkdkc7DbDw(T2_, T4_, ((NI) (T5_)));
	{
		if (!((*(*(*colonenvP_).c1).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3))) goto LA8_;
		res = ((NI) (((NI32) (res))));
	}
	LA8_: ;
	setResult__TT9cdDQkh09c214lMSxKXTTg(a, ((NI64) (res)));
}
N_LIB_PRIVATE N_CLOSURE(void, hashVmImplByte__g33BhuFeOn85oub1SuUkWg_8)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	NI sPos;
	NI64 T1_;
	NI ePos;
	NI64 T2_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arr;
	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* bytes;
	NI T3_;
	NI res;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	T1_ = (NI64)0;
	T1_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 1));
	sPos = ((NI) (T1_));
	T2_ = (NI64)0;
	T2_ = getInt__VJ5Unk9bDoOAoLiZLdhb9b1Q(a, ((NI) 2));
	ePos = ((NI) (T2_));
	arr = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	T3_ = (NI)0;
	T3_ = len__P89cqdlERShb9alU3iC0yj8wast(arr);
	bytes = newSeq__DpCWN7DIBuAjgoeQ9c29blYQ(((NI) (T3_)));
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__P89cqdlERShb9alU3iC0yj8wast(arr);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA6;
				i = i_2;
				bytes->data[i] = ((NU8) ((NI64)((*(*arr)._kind_6.sons->data[i])._kind_1.intVal & IL64(255))));
				i_2 += ((NI) 1);
			} LA6: ;
		}
	}
	res = hash__GXEvKkoaUont1gpaAJabXg(bytes->data, (bytes ? bytes->Sup.len : 0), sPos, ePos);
	{
		if (!((*(*(*colonenvP_).c1).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3))) goto LA9_;
		res = ((NI) (((NI32) (res))));
	}
	LA9_: ;
	setResult__TT9cdDQkh09c214lMSxKXTTg(a, ((NI64) (res)));
}
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_37)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NF T1_;
	T1_ = (NF)0;
	T1_ = cpuTime__9aodCrWXscOGeNVh2cpuZkw();
	setResult__PlA9cyXmUSmFKkhh8sQETRg(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__LlE3fKEVuGggl04AA4Ifyw)(void) {
	NF result;
	result = (NF)0;
	result = 5.3912450000000005e-44;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_38)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NF T1_;
	T1_ = (NF)0;
	T1_ = cpuTime__LlE3fKEVuGggl04AA4Ifyw();
	setResult__PlA9cyXmUSmFKkhh8sQETRg(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_39)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	NimStringDesc* T1_;
	T1_ = (NimStringDesc*)0;
	T1_ = nosgetCurrentDir();
	setResult__g9crT9ba9c0OxETalTxR9cv1Sw(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_40)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
	tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T2_;
	NimStringDesc* T3_;
	tyTuple__XOVT24GHXwqiEj5GCsEGCA T4_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
	T1_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T1_ = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 1));
	options = fromLit__e9bUTNbnzAFOnIlmlr8pdHQ(T1_);
	nimZeroMem((void*)(&T2_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
	nimCopyMem((void*)(&T2_), (NIM_CONST void*)a, sizeof(T2_));
	T3_ = (NimStringDesc*)0;
	T3_ = getString__fqypzXhNY5rpF89ak7Q0GlQ(a, ((NI) 0));
	nimZeroMem((void*)(&T4_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
	execCmdEx__130zQ9a9cS3YNDwoh0G9at3bw(T3_, options, NIM_NIL, ((NimStringDesc*) NIM_NIL), ((NimStringDesc*) NIM_NIL), (&T4_));
	T5_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T5_ = toLit__DMaoEIGAr8AMJz2e1gXYjA(T4_);
	setResult__Adyk89aSgmLp9bDuSV0Va03A((&T2_), T5_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_41)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_Time__3y2ZpqsTJLqdZvpC9a0rU2Q T1_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T2_;
	T1_ = getTime__h20mpqrwsumk6J9bRdCm6IQ();
	T2_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T2_ = toLit__LV9bmSfqNNIbUGH8kJv4pMw(T1_);
	setResult__Adyk89aSgmLp9bDuSV0Va03A(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, getEffectList__O9c5vD9cBJNLQza4akZMRnQw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, NI effectIndex) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn;
	fn = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NI T8_;
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* list;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T5_ = !(((*fn).typ == NIM_NIL));
		if (!(T5_)) goto LA6_;
		T5_ = !(((*(*fn).typ).n == NIM_NIL));
		LA6_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA7_;
		T8_ = (NI)0;
		T8_ = len__P89cqdlERShb9alU3iC0yj8wast((*(*(*fn).typ).n)._kind_6.sons->data[((NI) 0)]);
		T4_ = (((NI) 5) <= T8_);
		LA7_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA9_;
		T3_ = !(((*(*(*(*fn).typ).n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[effectIndex] == NIM_NIL));
		LA9_: ;
		if (!T3_) goto LA10_;
		list = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41), (*fn).info);
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e;
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* colontmp_;
			e = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			colontmp_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			colontmp_ = (*(*(*(*fn).typ).n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[effectIndex];
			{
				NI i;
				NI colontmp__2;
				NI i_2;
				i = (NI)0;
				colontmp__2 = (NI)0;
				colontmp__2 = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(colontmp_);
				i_2 = ((NI) 0);
				{
					while (1) {
						tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T16_;
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T17_;
						if (!(i_2 < colontmp__2)) goto LA15;
						i = i_2;
						e = (*colontmp_)._kind_6.sons->data[i];
						T16_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
						T16_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*e).typ, 4194304);
						T17_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
						T17_ = opMapTypeInstToAst__B7DYLotR9aw6o9cHZhrLIPGg((*c).cache, T16_, (*e).info);
						add__P8dDSotTW25BkfbyspojGg(list, T17_);
						i_2 += ((NI) 1);
					} LA15: ;
				}
			}
		}
		setResult__Adyk89aSgmLp9bDuSV0Va03A(a, list);
	}
	LA10_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_9)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	getEffectList__O9c5vD9cBJNLQza4akZMRnQw((*colonenvP_).c1, a, ((NI) 0));
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___g33BhuFeOn85oub1SuUkWg_10)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) ClE_0;
	getEffectList__O9c5vD9cBJNLQza4akZMRnQw((*colonenvP_).c1, a, ((NI) 3));
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_42)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn;
	NIM_BOOL T1_;
	fn = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	T1_ = (NIM_BOOL)0;
	T1_ = !(((*fn).typ == NIM_NIL));
	if (!(T1_)) goto LA2_;
	T1_ = (((*(*fn).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 7))&63U)))!=0);
	LA2_: ;
	setResult__X7b1uTvNjENZoIKwHxPn9aA(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_43)(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA* a) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T5_;
	fn = getNode__DuJnnnM0aSaXeDv118rkUw(a, ((NI) 0));
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = !(((*fn).typ == NIM_NIL));
	if (!(T2_)) goto LA3_;
	T2_ = (((*(*fn).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0);
	LA3_: ;
	T1_ = T2_;
	if (T1_) goto LA4_;
	T5_ = (NIM_BOOL)0;
	T5_ = ((*fn).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
	if (!(T5_)) goto LA6_;
	T5_ = ((*(*fn)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 13));
	LA6_: ;
	T1_ = T5_;
	LA4_: ;
	setResult__X7b1uTvNjENZoIKwHxPn9aA(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, registerAdditionalOps__YCoJV0XHfn0P9cfljlakO1g)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g* colonenv_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T1_;
	NI T2_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T3_;
	NI T4_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T5_;
	NI T6_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T7_;
	NI T8_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T9_;
	NI T10_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T11_;
	NI T12_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T13_;
	NI T14_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T15_;
	NI T16_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T17_;
	NI T18_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T19_;
	NI T20_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T21_;
	NI T22_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T23_;
	NI T24_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T25_;
	NI T26_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T27_;
	NI T28_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T29_;
	NI T30_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T31_;
	NI T32_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T33_;
	NI T34_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T35_;
	NI T36_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T37_;
	NI T38_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T39_;
	NI T40_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T41_;
	NI T42_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T43_;
	NI T44_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T45_;
	NI T46_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T47_;
	NI T48_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T49_;
	NI T50_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T51_;
	NI T52_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T53_;
	NI T54_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T55_;
	NI T56_;
	NI T57_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T69_;
	NI T70_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T71_;
	NI T72_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T73_;
	NI T74_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T75_;
	NI T76_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T77_;
	NI T78_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T79_;
	NI T80_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T81_;
	NI T82_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T92_;
	NI T93_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T94_;
	NI T95_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T96_;
	NI T97_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T98_;
	NI T99_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T100_;
	NI T101_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T102_;
	NI T103_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T104_;
	NI T105_;
	NI T106_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T126_;
	NI T127_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T128_;
	NI T129_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T130_;
	NI T131_;
	tyProc__5QC9cKfPJmKuW0XbCTd8ylA T132_;
	NI T133_;
	colonenv_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*)0;
	colonenv_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*) newObj((&NTI__8Qi2Yy1dXWyP64byz4WwVw_), sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g));
	(*colonenv_).Sup.m_type = (&NTI__m9bElogmdcDLEy9czU5AZr6g_);
	asgnRef((void**) (&(*colonenv_).c1), c);
	nimZeroMem((void*)(&T1_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T1_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_11) (sqrtWrapper__YYz4trFdtBrqWRYoIzUH9aA)); T1_.ClE_0 = NIM_NIL;
	T2_ = (NI)0;
	T2_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_8), T1_);
	nimZeroMem((void*)(&T3_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T3_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_13) (lnWrapper__YYz4trFdtBrqWRYoIzUH9aA_2)); T3_.ClE_0 = NIM_NIL;
	T4_ = (NI)0;
	T4_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_12), T3_);
	nimZeroMem((void*)(&T5_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T5_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_15) (log10Wrapper__YYz4trFdtBrqWRYoIzUH9aA_3)); T5_.ClE_0 = NIM_NIL;
	T6_ = (NI)0;
	T6_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_14), T5_);
	nimZeroMem((void*)(&T7_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T7_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_17) (log2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_4)); T7_.ClE_0 = NIM_NIL;
	T8_ = (NI)0;
	T8_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_16), T7_);
	nimZeroMem((void*)(&T9_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T9_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_19) (expWrapper__YYz4trFdtBrqWRYoIzUH9aA_5)); T9_.ClE_0 = NIM_NIL;
	T10_ = (NI)0;
	T10_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_18), T9_);
	nimZeroMem((void*)(&T11_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T11_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_21) (roundWrapper__YYz4trFdtBrqWRYoIzUH9aA_6)); T11_.ClE_0 = NIM_NIL;
	T12_ = (NI)0;
	T12_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_20), T11_);
	nimZeroMem((void*)(&T13_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T13_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_23) (arccosWrapper__YYz4trFdtBrqWRYoIzUH9aA_7)); T13_.ClE_0 = NIM_NIL;
	T14_ = (NI)0;
	T14_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_22), T13_);
	nimZeroMem((void*)(&T15_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T15_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_25) (arcsinWrapper__YYz4trFdtBrqWRYoIzUH9aA_8)); T15_.ClE_0 = NIM_NIL;
	T16_ = (NI)0;
	T16_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_24), T15_);
	nimZeroMem((void*)(&T17_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T17_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_27) (arctanWrapper__YYz4trFdtBrqWRYoIzUH9aA_9)); T17_.ClE_0 = NIM_NIL;
	T18_ = (NI)0;
	T18_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_26), T17_);
	nimZeroMem((void*)(&T19_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T19_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_29) (arctan2Wrapper__YYz4trFdtBrqWRYoIzUH9aA_10)); T19_.ClE_0 = NIM_NIL;
	T20_ = (NI)0;
	T20_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_28), T19_);
	nimZeroMem((void*)(&T21_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T21_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_31) (cosWrapper__YYz4trFdtBrqWRYoIzUH9aA_11)); T21_.ClE_0 = NIM_NIL;
	T22_ = (NI)0;
	T22_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_30), T21_);
	nimZeroMem((void*)(&T23_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T23_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_33) (coshWrapper__YYz4trFdtBrqWRYoIzUH9aA_12)); T23_.ClE_0 = NIM_NIL;
	T24_ = (NI)0;
	T24_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_32), T23_);
	nimZeroMem((void*)(&T25_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T25_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_35) (hypotWrapper__YYz4trFdtBrqWRYoIzUH9aA_13)); T25_.ClE_0 = NIM_NIL;
	T26_ = (NI)0;
	T26_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_34), T25_);
	nimZeroMem((void*)(&T27_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T27_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_37) (sinhWrapper__YYz4trFdtBrqWRYoIzUH9aA_14)); T27_.ClE_0 = NIM_NIL;
	T28_ = (NI)0;
	T28_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_36), T27_);
	nimZeroMem((void*)(&T29_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T29_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_39) (sinWrapper__YYz4trFdtBrqWRYoIzUH9aA_15)); T29_.ClE_0 = NIM_NIL;
	T30_ = (NI)0;
	T30_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_38), T29_);
	nimZeroMem((void*)(&T31_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T31_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_41) (tanWrapper__YYz4trFdtBrqWRYoIzUH9aA_16)); T31_.ClE_0 = NIM_NIL;
	T32_ = (NI)0;
	T32_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_40), T31_);
	nimZeroMem((void*)(&T33_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T33_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_43) (tanhWrapper__YYz4trFdtBrqWRYoIzUH9aA_17)); T33_.ClE_0 = NIM_NIL;
	T34_ = (NI)0;
	T34_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_42), T33_);
	nimZeroMem((void*)(&T35_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T35_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_45) (powWrapper__YYz4trFdtBrqWRYoIzUH9aA_18)); T35_.ClE_0 = NIM_NIL;
	T36_ = (NI)0;
	T36_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_44), T35_);
	nimZeroMem((void*)(&T37_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T37_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_47) (truncWrapper__YYz4trFdtBrqWRYoIzUH9aA_19)); T37_.ClE_0 = NIM_NIL;
	T38_ = (NI)0;
	T38_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_46), T37_);
	nimZeroMem((void*)(&T39_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T39_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_49) (floorWrapper__YYz4trFdtBrqWRYoIzUH9aA_20)); T39_.ClE_0 = NIM_NIL;
	T40_ = (NI)0;
	T40_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_48), T39_);
	nimZeroMem((void*)(&T41_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T41_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_51) (ceilWrapper__YYz4trFdtBrqWRYoIzUH9aA_21)); T41_.ClE_0 = NIM_NIL;
	T42_ = (NI)0;
	T42_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_50), T41_);
	nimZeroMem((void*)(&T43_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T43_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_55) (getMD5Wrapper__YYz4trFdtBrqWRYoIzUH9aA_22)); T43_.ClE_0 = NIM_NIL;
	T44_ = (NI)0;
	T44_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_52), T43_);
	nimZeroMem((void*)(&T45_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T45_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_57) (modWrapper__YYz4trFdtBrqWRYoIzUH9aA_23)); T45_.ClE_0 = NIM_NIL;
	T46_ = (NI)0;
	T46_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_56), T45_);
	nimZeroMem((void*)(&T47_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T47_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_59) (getEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_24)); T47_.ClE_0 = NIM_NIL;
	T48_ = (NI)0;
	T48_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_58), T47_);
	nimZeroMem((void*)(&T49_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T49_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_61) (existsEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_25)); T49_.ClE_0 = NIM_NIL;
	T50_ = (NI)0;
	T50_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_60), T49_);
	nimZeroMem((void*)(&T51_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T51_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_63) (putEnvWrapper__YYz4trFdtBrqWRYoIzUH9aA_26)); T51_.ClE_0 = NIM_NIL;
	T52_ = (NI)0;
	T52_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_62), T51_);
	nimZeroMem((void*)(&T53_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T53_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_65) (dirExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_27)); T53_.ClE_0 = NIM_NIL;
	T54_ = (NI)0;
	T54_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_64), T53_);
	nimZeroMem((void*)(&T55_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T55_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_67) (fileExistsWrapper__YYz4trFdtBrqWRYoIzUH9aA_28)); T55_.ClE_0 = NIM_NIL;
	T56_ = (NI)0;
	T56_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_66), T55_);
	T57_ = (NI)0;
	{
		NIM_BOOL T60_;
		NIM_BOOL T62_;
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T66_;
		T60_ = (NIM_BOOL)0;
		T60_ = !((((*(*(*colonenv_).c1).config).features &((NU16)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 11))&15U)))!=0));
		if (!(T60_)) goto LA61_;
		T62_ = (NIM_BOOL)0;
		T62_ = NIM_FALSE;
		if (T62_) goto LA63_;
		T62_ = ((*(*(*colonenv_).c1).config).cmd == ((tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw) 11));
		LA63_: ;
		T60_ = T62_;
		LA61_: ;
		if (!T60_) goto LA64_;
		nimZeroMem((void*)(&T66_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T66_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_69) (writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_29)); T66_.ClE_0 = NIM_NIL;
		T57_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_68), T66_);
	}
	goto LA58_;
	LA64_: ;
	{
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T68_;
		nimZeroMem((void*)(&T68_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T68_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_70) (writeFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_30)); T68_.ClE_0 = NIM_NIL;
		T57_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_68), T68_);
	}
	LA58_: ;
	nimZeroMem((void*)(&T69_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T69_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_72) (readFileWrapper__YYz4trFdtBrqWRYoIzUH9aA_31)); T69_.ClE_0 = NIM_NIL;
	T70_ = (NI)0;
	T70_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_71), T69_);
	nimZeroMem((void*)(&T71_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T71_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_75) (readLinesWrapper__YYz4trFdtBrqWRYoIzUH9aA_32)); T71_.ClE_0 = NIM_NIL;
	T72_ = (NI)0;
	T72_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_73), T71_);
	nimZeroMem((void*)(&T73_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T73_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_77) (getCurrentExceptionMsgWrapper__YYz4trFdtBrqWRYoIzUH9aA_33)); T73_.ClE_0 = NIM_NIL;
	T74_ = (NI)0;
	T74_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_76), T73_);
	nimZeroMem((void*)(&T75_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T75_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_79) (getCurrentExceptionWrapper__YYz4trFdtBrqWRYoIzUH9aA_34)); T75_.ClE_0 = NIM_NIL;
	T76_ = (NI)0;
	T76_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_78), T75_);
	nimZeroMem((void*)(&T77_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T77_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_84) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_35)); T77_.ClE_0 = NIM_NIL;
	T78_ = (NI)0;
	T78_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_80), T77_);
	nimZeroMem((void*)(&T79_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T79_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg; T79_.ClE_0 = colonenv_;
	T80_ = (NI)0;
	T80_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_85), T79_);
	nimZeroMem((void*)(&T81_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T81_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg_2; T81_.ClE_0 = colonenv_;
	T82_ = (NI)0;
	T82_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_86), T81_);
	{
		NIM_BOOL T85_;
		T85_ = (NIM_BOOL)0;
		T85_ = NIM_FALSE;
		if (T85_) goto LA86_;
		T85_ = ((*(*(*colonenv_).c1).config).cmd == ((tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw) 11));
		LA86_: ;
		if (!T85_) goto LA87_;
	}
	goto LA83_;
	LA87_: ;
	{
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T90_;
		NI T91_;
		nimZeroMem((void*)(&T90_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T90_.ClP_0 = gorgeExWrapper__g33BhuFeOn85oub1SuUkWg_3; T90_.ClE_0 = colonenv_;
		T91_ = (NI)0;
		T91_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_87), T90_);
	}
	LA83_: ;
	nimZeroMem((void*)(&T92_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T92_.ClP_0 = getProjectPathWrapper__g33BhuFeOn85oub1SuUkWg_4; T92_.ClE_0 = colonenv_;
	T93_ = (NI)0;
	T93_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_88), T92_);
	nimZeroMem((void*)(&T94_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T94_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_90) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_36)); T94_.ClE_0 = NIM_NIL;
	T95_ = (NI)0;
	T95_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_89), T94_);
	nimZeroMem((void*)(&T96_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T96_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg_5; T96_.ClE_0 = colonenv_;
	T97_ = (NI)0;
	T97_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_91), T96_);
	nimZeroMem((void*)(&T98_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T98_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg_6; T98_.ClE_0 = colonenv_;
	T99_ = (NI)0;
	T99_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_103), T98_);
	nimZeroMem((void*)(&T100_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T100_.ClP_0 = hashVmImpl__g33BhuFeOn85oub1SuUkWg_7; T100_.ClE_0 = colonenv_;
	T101_ = (NI)0;
	T101_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_105), T100_);
	nimZeroMem((void*)(&T102_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T102_.ClP_0 = hashVmImplByte__g33BhuFeOn85oub1SuUkWg_8; T102_.ClE_0 = colonenv_;
	T103_ = (NI)0;
	T103_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_106), T102_);
	nimZeroMem((void*)(&T104_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T104_.ClP_0 = hashVmImplByte__g33BhuFeOn85oub1SuUkWg_8; T104_.ClE_0 = colonenv_;
	T105_ = (NI)0;
	T105_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_107), T104_);
	T106_ = (NI)0;
	{
		NIM_BOOL T109_;
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T113_;
		T109_ = (NIM_BOOL)0;
		T109_ = (((*(*(*colonenv_).c1).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 44))&63U)))!=0);
		if (T109_) goto LA110_;
		T109_ = (((*(*(*colonenv_).c1).config).features &((NU16)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 11))&15U)))!=0);
		LA110_: ;
		if (!T109_) goto LA111_;
		nimZeroMem((void*)(&T113_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T113_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_109) (cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_37)); T113_.ClE_0 = NIM_NIL;
		T106_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_108), T113_);
	}
	goto LA107_;
	LA111_: ;
	{
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T115_;
		nimZeroMem((void*)(&T115_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T115_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_110) (cpuTimeWrapper__YYz4trFdtBrqWRYoIzUH9aA_38)); T115_.ClE_0 = NIM_NIL;
		T106_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_108), T115_);
	}
	LA107_: ;
	{
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T120_;
		NI T121_;
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T122_;
		NI T123_;
		tyProc__5QC9cKfPJmKuW0XbCTd8ylA T124_;
		NI T125_;
		if (!(((*(*(*colonenv_).c1).config).features &((NU16)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 11))&15U)))!=0)) goto LA118_;
		nimZeroMem((void*)(&T120_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T120_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_112) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_39)); T120_.ClE_0 = NIM_NIL;
		T121_ = (NI)0;
		T121_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_111), T120_);
		nimZeroMem((void*)(&T122_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T122_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_114) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_40)); T122_.ClE_0 = NIM_NIL;
		T123_ = (NI)0;
		T123_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_113), T122_);
		nimZeroMem((void*)(&T124_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
		T124_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_116) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_41)); T124_.ClE_0 = NIM_NIL;
		T125_ = (NI)0;
		T125_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_115), T124_);
	}
	LA118_: ;
	nimZeroMem((void*)(&T126_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T126_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg_9; T126_.ClE_0 = colonenv_;
	T127_ = (NI)0;
	T127_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_117), T126_);
	nimZeroMem((void*)(&T128_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T128_.ClP_0 = colonanonymous___g33BhuFeOn85oub1SuUkWg_10; T128_.ClE_0 = colonenv_;
	T129_ = (NI)0;
	T129_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_118), T128_);
	nimZeroMem((void*)(&T130_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T130_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_120) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_42)); T130_.ClE_0 = NIM_NIL;
	T131_ = (NI)0;
	T131_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_119), T130_);
	nimZeroMem((void*)(&T132_), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
	T132_.ClP_0 = ((TM__pyAIA9cUF0h9c4j2HfNQPfYw_122) (colonanonymous___YYz4trFdtBrqWRYoIzUH9aA_43)); T132_.ClE_0 = NIM_NIL;
	T133_ = (NI)0;
	T133_ = registerCallback__KnNoqgKj9bmG2p3f4SLNFqA((*colonenv_).c1, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_121), T132_);
}
N_LIB_PRIVATE N_NIMCALL(void, setupGlobalCtx__41qwP9bj6cfy3VehAu9aAFvw)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph) {
	{
		tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* T5_;
		if (!((*graph).vm == 0)) goto LA3_;
		T5_ = (tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw*)0;
		T5_ = newCtx__SnMRNFK9aeDXTXGWpZkzETw(module, (*graph).cache, graph);
		asgnRef((void**) (&(*graph).vm), &T5_->Sup.Sup);
		registerAdditionalOps__YCoJV0XHfn0P9cfljlakO1g((*((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw**) (&((*graph).vm)))));
	}
	goto LA1_;
	LA3_: ;
	{
		refresh__VN2MrcCIq6xPNBFBZXkK1Q((*((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw**) (&((*graph).vm)))), module);
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
	{
		tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T2_;
		nimZeroMem((void*)(&T2_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		nimZeroMem((void*)(&T2_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		T2_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
		T2_.node = newStrNode__zLcHGdlEbBYFtoCoan9agkg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), (*n)._kind_3.strVal);
		genericShallowAssign((void*)(&(*dest)), (void*)(&T2_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6):
	{
		{
			if (!((*dest).kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA6_;
			unsureAsgnRef((void**) (&(*dest).node), n);
		}
		goto LA4_;
		LA6_: ;
		{
			NIM_BOOL T9_;
			tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T13_;
			T9_ = (NIM_BOOL)0;
			T9_ = !(((*n).typ == NIM_NIL));
			if (!(T9_)) goto LA10_;
			T9_ = ((69206016 &((NU64)1<<((NU)((*(*n).typ).kind)&63U)))!=0);
			LA10_: ;
			if (!T9_) goto LA11_;
			nimZeroMem((void*)(&T13_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
			nimZeroMem((void*)(&T13_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
			T13_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
			T13_.node = n;
			genericShallowAssign((void*)(&(*dest)), (void*)(&T13_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
		}
		goto LA4_;
		LA11_: ;
		{
			tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T15_;
			nimZeroMem((void*)(&T15_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
			nimZeroMem((void*)(&T15_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
			T15_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2);
			T15_.intVal = (*n)._kind_1.intVal;
			genericShallowAssign((void*)(&(*dest)), (void*)(&T15_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
		}
		LA4_: ;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 7) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
	{
		tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T17_;
		nimZeroMem((void*)(&T17_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		nimZeroMem((void*)(&T17_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		T17_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2);
		T17_.intVal = (*n)._kind_1.intVal;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T17_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 19):
	{
		tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T19_;
		nimZeroMem((void*)(&T19_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		nimZeroMem((void*)(&T19_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		T19_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3);
		T19_.floatVal = (*n)._kind_2.floatVal;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T19_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	}
	break;
	default:
	{
		tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T21_;
		nimZeroMem((void*)(&T21_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		nimZeroMem((void*)(&T21_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
		T21_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
		T21_.node = n;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T21_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		if (!((*arg).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*arg).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA3_;
		result = arg;
		goto BeforeRet_;
	}
	LA3_: ;
	result = copyNode__Dsjo9bte8vGxzhtcSrsTyiQ_2(arg);
	{
		if (!((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160))) goto LA7_;
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
			child = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(arg);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA12;
						i = i_2;
						child = (*arg)._kind_6.sons->data[i];
						{
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T17_;
							if (!((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA15_;
							T17_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							T17_ = prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA((*child)._kind_6.sons->data[((NI) 1)]);
							add__P8dDSotTW25BkfbyspojGg(result, T17_);
						}
						goto LA13_;
						LA15_: ;
						{
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T19_;
							T19_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							T19_ = prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA(child);
							add__P8dDSotTW25BkfbyspojGg(result, T19_);
						}
						LA13_: ;
						i_2 += ((NI) 1);
					} LA12: ;
				}
			}
		}
	}
	goto LA5_;
	LA7_: ;
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_2;
			child_2 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i_3;
				NI colontmp__2;
				NI i_4;
				i_3 = (NI)0;
				colontmp__2 = (NI)0;
				colontmp__2 = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(arg);
				i_4 = ((NI) 0);
				{
					while (1) {
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T25_;
						if (!(i_4 < colontmp__2)) goto LA24;
						i_3 = i_4;
						child_2 = (*arg)._kind_6.sons->data[i_3];
						T25_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
						T25_ = prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA(child_2);
						add__P8dDSotTW25BkfbyspojGg(result, T25_);
						i_4 += ((NI) 1);
					} LA24: ;
				}
			}
		}
	}
	LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setupMacroParam__hXIlM54SMpXNBDQ04umODg)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* Result) {
	switch ((*Result).kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	(*Result).intVal = 0;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	(*Result).floatVal = 0;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	(*Result).regAddr = NIM_NIL;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	(*Result).nodeAddr = NIM_NIL;
	break;
	} 
	(*Result).kind = 0;
	switch ((*typ).kind) {
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T2_;
		T2_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		T2_ = prepareVMValue__0HuvClm0JuBZCAKVXN9aVBA(x);
		putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ(Result, T2_);
	}
	break;
	default:
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
		n = x;
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58))) goto LA6_;
			n = (*n)._kind_6.sons->data[((NI) 1)];
		}
		LA6_: ;
		n = canonValue__yXNCtNX5XyYFmGvoC2Ryfw(n);
		(*n).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
		asgnRef((void**) (&(*n).typ), (*x).typ);
		switch ((*Result).kind) {
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
		break;
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
		(*Result).intVal = 0;
		break;
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
		(*Result).floatVal = 0;
		break;
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
		unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
		break;
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
		(*Result).regAddr = NIM_NIL;
		break;
		case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
		(*Result).nodeAddr = NIM_NIL;
		break;
		} 
		(*Result).kind = 0;
		(*Result).kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
		unsureAsgnRef((void**) (&(*Result).node), n);
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA x) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	switch (x.kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	{
		result = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	{
		result = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6));
		(*result)._kind_1.intVal = x.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	{
		result = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16));
		(*result)._kind_2.floatVal = x.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	{
		result = x.node;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	{
		result = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA((*x.regAddr));
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	{
		result = (*x.nodeAddr);
	}
	break;
	}
	return result;
}
static N_NIMCALL(void, Marker_tyRef__i0OKJxPqBBZH5nTqNgi3yQ)(void* p, NI op) {
	tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw* a;
	a = (tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*)p;
	nimGCvisit((void*)(*a).error1, op);
	nimGCvisit((void*)(*a).error2, op);
}
static N_INLINE(void, enter__VlRy4bqjG2Oq4bi2NBW9b0wvmprofiler)(tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg* prof, tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos) {
	{
		if (!(((*(*c).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 50))&63U)))!=0)) goto LA3_;
		(*prof).tEnter = cpuTime__9aodCrWXscOGeNVh2cpuZkw();
		unsureAsgnRef((void**) (&(*prof).tos), tos);
	}
	LA3_: ;
}
static N_INLINE(NI*, X5BX5D___Dsh9aMasGTu9cMWGRPlBctPgsystem)(NI* s, NI sLen_0, NI i) {
	NI* result;
	result = (NI*)0;
	result = (&s[(NI)(sLen_0 - i)]);
	return result;
}
static N_INLINE(NI, pop__OC36rCceCM1GklRaGE2Ipwsystem)(tySequence__qwqHTkRvwhrRyENtudHQ7g** s) {
	NI result;
	NI L;
	NI T1_;
	result = (NI)0;
	T1_ = ((*s) ? (*s)->Sup.len : 0);
	L = (NI)(T1_ - ((NI) 1));
	result = (*s)->data[L];
	unsureAsgnRef((void**) (&(*s)), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*s))->Sup, (&NTI__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (L))));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, cleanUpOnReturn__UQh0Utfmv2ZQyI277pEV7w)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f) {
	NI result;
{	result = (NI)0;
	result = ((NI) -1);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = ((*f).safePoints ? (*f).safePoints->Sup.len : 0);
		colontmp_ = T2_;
		res = ((NI) 1);
		{
			while (1) {
				NI pc;
				NI* T5_;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				T5_ = (NI*)0;
				T5_ = X5BX5D___Dsh9aMasGTu9cMWGRPlBctPgsystem((*f).safePoints->data, ((*f).safePoints ? (*f).safePoints->Sup.len : 0), i);
				pc = (*T5_);
				{
					while (1) {
						if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 165))) goto LA7;
						pc += (NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
					} LA7: ;
				}
				{
					NI T12_;
					if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 166))) goto LA10_;
					T12_ = (NI)0;
					T12_ = pop__OC36rCceCM1GklRaGE2Ipwsystem((&(*f).safePoints));
					(void)(T12_);
					result = (NI)(pc + ((NI) 1));
					goto BeforeRet_;
				}
				LA10_: ;
				res += ((NI) 1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyValue__UyDLGuBe1bDjMXME9b0kt3Q)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	NimStringDesc* T7_;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (src == NIM_NIL);
		if (T3_) goto LA4_;
		T3_ = (((*src).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13))&31U)))!=0);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = src;
		goto BeforeRet_;
	}
	LA5_: ;
	result = newNode__PMZ27S9ai4FB3gXOMDXvwsQ((*src).kind);
	(*result).info = (*src).info;
	asgnRef((void**) (&(*result).typ), (*src).typ);
	(*result).flags = ((*src).flags & 1763086);
	T7_ = (NimStringDesc*)0;
	T7_ = (*result).comment; (*result).comment = copyStringRC1((*src).comment);
	if (T7_) nimGCunrefNoCycle(T7_);
	switch ((*src).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
	{
		(*result)._kind_1.intVal = (*src)._kind_1.intVal;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 19):
	{
		(*result)._kind_2.floatVal = (*src)._kind_2.floatVal;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		asgnRef((void**) (&(*result)._kind_4.sym), (*src)._kind_4.sym);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		asgnRef((void**) (&(*result)._kind_5.ident), (*src)._kind_5.ident);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
	{
		NimStringDesc* T13_;
		T13_ = (NimStringDesc*)0;
		T13_ = (*result)._kind_3.strVal; (*result)._kind_3.strVal = copyStringRC1((*src)._kind_3.strVal);
		if (T13_) nimGCunrefNoCycle(T13_);
	}
	break;
	default:
	{
		NI T15_;
		T15_ = (NI)0;
		T15_ = len__P89cqdlERShb9alU3iC0yj8wast(src);
		if ((*result)._kind_6.sons) { nimGCunrefNoCycle((*result)._kind_6.sons); (*result)._kind_6.sons = NIM_NIL; }
		(*result)._kind_6.sons = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTI__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (T15_)));
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__P89cqdlERShb9alU3iC0yj8wast(src);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA18;
					i = i_2;
					asgnRef((void**) (&(*result)._kind_6.sons->data[i]), copyValue__UyDLGuBe1bDjMXME9b0kt3Q((*src)._kind_6.sons->data[i]));
					i_2 += ((NI) 1);
				} LA18: ;
			}
		}
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, asgnComplex__luZK66SNRzBExkuHaelzZA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), copyValue__UyDLGuBe1bDjMXME9b0kt3Q(y.node));
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, fastAsgnComplex__luZK66SNRzBExkuHaelzZA_2)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), y.node);
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, moveConst__luZK66SNRzBExkuHaelzZA_3)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA y) {
	ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), y.node);
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, writeField__GuWkkIoU9ccBLjbIJoyJPzw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** n, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA x) {
	switch (x.kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw T7_;
			if (!((*(*n)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA5_;
			nimZeroMem((void*)(&T7_), sizeof(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw));
			nimZeroMem((void*)(&T7_), sizeof(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw));
			T7_.kind = ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6);
			genericShallowAssign((void*)(&(*(*n))), (void*)(&T7_), (&NTI__bROa11lyF5vxEN9aYNbHmhw_));
		}
		LA5_: ;
		(*(*n))._kind_1.intVal = x.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	{
		(*(*n))._kind_2.floatVal = x.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	{
		unsureAsgnRef((void**) (&(*n)), copyValue__UyDLGuBe1bDjMXME9b0kt3Q(x.node));
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	{
		writeField__GuWkkIoU9ccBLjbIJoyJPzw(n, (*x.regAddr));
	}
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	{
		unsureAsgnRef((void**) (&(*n)), (*x.nodeAddr));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, derefPtrToReg__rneu4wkryXcUJeguyyc5lw)(NI64 address, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* r, NIM_BOOL isAssign) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*typ).kind) {
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31):
	{
		{
			if (!isAssign) goto LA4_;
			(*((NI*) (address))) = ((NI) ((*r).intVal));
		}
		goto LA2_;
		LA4_: ;
		{
			NI valX60gensym12_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym12_ = (*((NI*) (address)));
			(*r).intVal = ((NI64) (valX60gensym12_));
		}
		LA2_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 32):
	{
		{
			if (!isAssign) goto LA10_;
			(*((NI8*) (address))) = ((NI8) ((*r).intVal));
		}
		goto LA8_;
		LA10_: ;
		{
			NI8 valX60gensym13_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym13_ = (*((NI8*) (address)));
			(*r).intVal = ((NI64) (valX60gensym13_));
		}
		LA8_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 33):
	{
		{
			if (!isAssign) goto LA16_;
			(*((NI16*) (address))) = ((NI16) ((*r).intVal));
		}
		goto LA14_;
		LA16_: ;
		{
			NI16 valX60gensym14_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym14_ = (*((NI16*) (address)));
			(*r).intVal = ((NI64) (valX60gensym14_));
		}
		LA14_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 34):
	{
		{
			if (!isAssign) goto LA22_;
			(*((NI32*) (address))) = ((NI32) ((*r).intVal));
		}
		goto LA20_;
		LA22_: ;
		{
			NI32 valX60gensym15_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym15_ = (*((NI32*) (address)));
			(*r).intVal = ((NI64) (valX60gensym15_));
		}
		LA20_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
	{
		{
			if (!isAssign) goto LA28_;
			(*((NI64*) (address))) = (*r).intVal;
		}
		goto LA26_;
		LA28_: ;
		{
			NI64 valX60gensym16_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym16_ = (*((NI64*) (address)));
			(*r).intVal = valX60gensym16_;
		}
		LA26_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40):
	{
		{
			if (!isAssign) goto LA34_;
			(*((NU*) (address))) = ((NU) ((*r).intVal));
		}
		goto LA32_;
		LA34_: ;
		{
			NU valX60gensym17_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym17_ = (*((NU*) (address)));
			(*r).intVal = ((NI64) (valX60gensym17_));
		}
		LA32_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 41):
	{
		{
			if (!isAssign) goto LA40_;
			(*((NU8*) (address))) = ((NU8) ((*r).intVal));
		}
		goto LA38_;
		LA40_: ;
		{
			NU8 valX60gensym18_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym18_ = (*((NU8*) (address)));
			(*r).intVal = ((NI64) (valX60gensym18_));
		}
		LA38_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 42):
	{
		{
			if (!isAssign) goto LA46_;
			(*((NU16*) (address))) = ((NU16) ((*r).intVal));
		}
		goto LA44_;
		LA46_: ;
		{
			NU16 valX60gensym19_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym19_ = (*((NU16*) (address)));
			(*r).intVal = ((NI64) (valX60gensym19_));
		}
		LA44_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 43):
	{
		{
			if (!isAssign) goto LA52_;
			(*((NU32*) (address))) = ((NU32) ((*r).intVal));
		}
		goto LA50_;
		LA52_: ;
		{
			NU32 valX60gensym20_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym20_ = (*((NU32*) (address)));
			(*r).intVal = ((NI64) (valX60gensym20_));
		}
		LA50_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
	{
		{
			if (!isAssign) goto LA58_;
			(*((NU64*) (address))) = ((NU64) ((*r).intVal));
		}
		goto LA56_;
		LA58_: ;
		{
			NU64 valX60gensym21_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			valX60gensym21_ = (*((NU64*) (address)));
			(*r).intVal = ((NI64) (valX60gensym21_));
		}
		LA56_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36):
	{
		{
			if (!isAssign) goto LA64_;
			(*((NF*) (address))) = (*r).floatVal;
		}
		goto LA62_;
		LA64_: ;
		{
			NF valX60gensym22_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
			valX60gensym22_ = (*((NF*) (address)));
			(*r).floatVal = valX60gensym22_;
		}
		LA62_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 37):
	{
		{
			if (!isAssign) goto LA70_;
			(*((NF32*) (address))) = ((NF32) ((*r).floatVal));
		}
		goto LA68_;
		LA70_: ;
		{
			NF32 valX60gensym23_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
			valX60gensym23_ = (*((NF32*) (address)));
			(*r).floatVal = ((NF) (valX60gensym23_));
		}
		LA68_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 38):
	{
		{
			if (!isAssign) goto LA76_;
			(*((NF*) (address))) = (*r).floatVal;
		}
		goto LA74_;
		LA76_: ;
		{
			NF valX60gensym24_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(r, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
			valX60gensym24_ = (*((NF*) (address)));
			(*r).floatVal = valX60gensym24_;
		}
		LA74_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	default:
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI64, pluspercent___diI9aRPc9bjx9bT39cDuabKh5Asystem)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) + (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NI64, minuspercent___diI9aRPc9bjx9bT39cDuabKh5A_2system)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) - (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NI, safeArrLen__P89cqdlERShb9alU3iC0yj8w_3ast)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA3_;
		result = ((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0);
	}
	goto LA1_;
	LA3_: ;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 19))) goto LA6_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA6_: ;
	{
		result = len__P89cqdlERShb9alU3iC0yj8wast(n);
	}
	LA1_: ;
	return result;
}
static N_INLINE(NI64, starpercent___diI9aRPc9bjx9bT39cDuabKh5A_3system)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) * (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NF, toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem)(NI64 i) {
	NF result;
	result = (NF)0;
	result = ((NF) (i));
	return result;
}
static N_INLINE(NF, abs__BRaAqinz6OWTHkALb4oj6Qsystem)(NF x) {
	NF result;
	result = (NF)0;
	{
		if (!(x < 0.0)) goto LA3_;
		result = -(x);
	}
	goto LA1_;
	LA3_: ;
	{
		result = x;
	}
	LA1_: ;
	return result;
}
static N_INLINE(NI64, slashpercent___diI9aRPc9bjx9bT39cDuabKh5A_4system)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) / (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NI64, percentpercent___diI9aRPc9bjx9bT39cDuabKh5A_5system)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) % (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NIM_BOOL, lteqpercent___m9aFrKvWqPsM3WKrwczIr9bA_2system)(NI64 x, NI64 y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU64)(((NU64) (x))) <= (NU64)(((NU64) (y))));
	return result;
}
static N_INLINE(NIM_BOOL, ltpercent___m9aFrKvWqPsM3WKrwczIr9bAsystem)(NI64 x, NI64 y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU64)(((NU64) (x))) < (NU64)(((NU64) (y))));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ptrEquality__U2MMUdMR4785sgEWgMubXw)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** n1, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n2) {
	NIM_BOOL result;
	NI p1;
{	result = (NIM_BOOL)0;
	p1 = ((NI) (ptrdiff_t) (n1));
	switch ((*n2).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
	{
		result = (p1 == ((NI) 0));
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6):
	{
		tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t2;
		NIM_BOOL T3_;
		t2 = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*n2).typ, abstractInst__dLigiD0wrfdW59cejPpTktA);
		T3_ = (NIM_BOOL)0;
		T3_ = ((69206016 &((NU64)1<<((NU)((*t2).kind)&63U)))!=0);
		if (!(T3_)) goto LA4_;
		T3_ = ((*n2)._kind_1.intVal == ((NI64) (p1)));
		LA4_: ;
		result = T3_;
		goto BeforeRet_;
	}
	break;
	default:
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b) {
	NI result;
	NI alen;
	NI blen;
	NI minlen;
	result = (NI)0;
	alen = (a ? a->Sup.len : 0);
	blen = (b ? b->Sup.len : 0);
	minlen = ((alen <= blen) ? alen : blen);
	{
		int T5_;
		if (!(((NI) 0) < minlen)) goto LA3_;
		T5_ = (int)0;
		T5_ = memcmp(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((size_t) (minlen)));
		result = ((NI) (T5_));
		{
			if (!(result == ((NI) 0))) goto LA8_;
			result = (NI)(alen - blen);
		}
		LA8_: ;
	}
	goto LA1_;
	LA3_: ;
	{
		result = (NI)(alen - blen);
	}
	LA1_: ;
	return result;
}
static N_INLINE(NIM_BOOL, importcCond__FdCkMWi1o9ccnUFjzZDi9aUg_2vmgen)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0)) goto LA3_;
		{
			if (!((520192 &((NU32)1<<((NU)((*s).kind)&31U)))!=0)) goto LA7_;
			result = ((*(*(*s).ast)._kind_6.sons->data[((NI) 6)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
			goto BeforeRet_;
		}
		LA7_: ;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, compile__wk4OXe22qII4FFHuYMKF5Q)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* s) {
	NI result;
	result = (NI)0;
	result = genProc__82SK3f7Ee6e9aktSfHKYXUw(c, s);
	return result;
}
static N_INLINE(NIM_BOOL, isEmptyType__nPImuPGZIdcrAfCNyf4oxA_2ast)(tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = (t == NIM_NIL);
	if (T1_) goto LA2_;
	T1_ = ((IL64(-9223372036854775680) &((NU64)1<<((NU)((*t).kind)&63U)))!=0);
	LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, recSetFlagIsRef__m4MZYLogGqol1qN5L4LLzA)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg) {
	{
		if (!!(((*arg).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*arg).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)))) goto LA3_;
		(*arg).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
	}
	LA3_: ;
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(arg);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA7;
				i = i_2;
				recSetFlagIsRef__m4MZYLogGqol1qN5L4LLzA((*arg)._kind_6.sons->data[i]);
				i_2 += ((NI) 1);
			} LA7: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, pushSafePoint__p3zYfzQBzfCT3SxRCaHf5w)(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f, NI pc) {
	NI T1_;
	asgnRef((void**) (&(*f).safePoints), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*f).safePoints), (&NTI__qwqHTkRvwhrRyENtudHQ7g_)));
	T1_ = (*f).safePoints->Sup.len++;
	(*f).safePoints->data[T1_] = pc;
}
N_LIB_PRIVATE N_NIMCALL(void, popSafePoint__xa6C5GGXE739bwyLex9aXRMQ)(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f) {
	NI T1_;
	T1_ = (NI)0;
	T1_ = pop__OC36rCceCM1GklRaGE2Ipwsystem((&(*f).safePoints));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__DcoP8zLFnBpow03kFN9cGhg, findExceptionHandler__7B4YrjB9bwLzkHvmgkXfnUQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* f, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exc) {
	tyTuple__DcoP8zLFnBpow03kFN9cGhg result;
	tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* raisedType;
	tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA colontmp__5;
	NI colontmp__6;
{	nimZeroMem((void*)(&result), sizeof(tyTuple__DcoP8zLFnBpow03kFN9cGhg));
	raisedType = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*exc).typ, IL64(36275087638309136));
	{
		while (1) {
			NI T3_;
			NI pc;
			NIM_BOOL matched;
			NI pcEndExcept;
			NI pcBody;
			T3_ = ((*f).safePoints ? (*f).safePoints->Sup.len : 0);
			if (!(((NI) 0) < T3_)) goto LA2;
			pc = pop__OC36rCceCM1GklRaGE2Ipwsystem((&(*f).safePoints));
			matched = NIM_FALSE;
			pcEndExcept = pc;
			{
				while (1) {
					if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 165))) goto LA5;
					pcEndExcept = (NI)((NI)(pc + ((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL)))) - ((NI) 8388608));
					pc += ((NI) 1);
					{
						while (1) {
							NI excIndex;
							tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* exceptType;
							if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 165))) goto LA7;
							excIndex = (NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
							{
								if (!(((NI) 0) < excIndex)) goto LA10_;
								exceptType = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*c).types->data[excIndex], IL64(36275087638309136));
							}
							goto LA8_;
							LA10_: ;
							{
								exceptType = NIM_NIL;
							}
							LA8_: ;
							{
								NIM_BOOL T15_;
								NI T17_;
								T15_ = (NIM_BOOL)0;
								T15_ = (exceptType == 0);
								if (T15_) goto LA16_;
								T17_ = (NI)0;
								T17_ = inheritanceDiff__1dM2iQB5qStJfnn3684ijQ_2(raisedType, exceptType);
								T15_ = (T17_ <= ((NI) 0));
								LA16_: ;
								if (!T15_) goto LA18_;
								matched = NIM_TRUE;
								goto LA6;
							}
							LA18_: ;
							pc += ((NI) 1);
						} LA7: ;
					} LA6: ;
					{
						while (1) {
							if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 165))) goto LA21;
							pc += ((NI) 1);
						} LA21: ;
					}
					{
						if (!matched) goto LA24_;
						goto LA4;
					}
					LA24_: ;
					pc = pcEndExcept;
				} LA5: ;
			} LA4: ;
			pcBody = pc;
			{
				tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA colontmp_;
				NI colontmp__2;
				if (!matched) goto LA28_;
				colontmp_ = ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 0);
				colontmp__2 = pcBody;
				result.Field0 = colontmp_;
				result.Field1 = colontmp__2;
				goto BeforeRet_;
			}
			goto LA26_;
			LA28_: ;
			{
				tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA colontmp__3;
				NI colontmp__4;
				if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 166))) goto LA31_;
				colontmp__3 = ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 1);
				colontmp__4 = (NI)(pc + ((NI) 1));
				result.Field0 = colontmp__3;
				result.Field1 = colontmp__4;
				goto BeforeRet_;
			}
			goto LA26_;
			LA31_: ;
			LA26_: ;
		} LA2: ;
	}
	colontmp__5 = ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 2);
	colontmp__6 = ((NI) 0);
	result.Field0 = colontmp__5;
	result.Field1 = colontmp__6;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, bailOut__s9cFy5TGKFXao9bSR9bgK0vTw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos) {
	tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* T1_;
	NI T2_;
	NimStringDesc* T3_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T4_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T6_;
{	T1_ = (tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw*)0;
	T1_ = c;
	T2_ = (NI)0;
	T2_ = (*c).exceptionInstr;
	T3_ = (NimStringDesc*)0;
	T4_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T4_ = skipColon__UPSW0jLTX5qJL51YMUAHgw_3((*(*c).currentExceptionA)._kind_6.sons->data[((NI) 3)]);
	T5_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T5_ = skipColon__UPSW0jLTX5qJL51YMUAHgw_3((*(*c).currentExceptionA)._kind_6.sons->data[((NI) 2)]);
	T3_ = rawNewString(((*T4_)._kind_3.strVal ? (*T4_)._kind_3.strVal->Sup.len : 0) + ((*T5_)._kind_3.strVal ? (*T5_)._kind_3.strVal->Sup.len : 0) + 24);
appendString(T3_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_160));
appendString(T3_, (*T4_)._kind_3.strVal);
appendString(T3_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_161));
appendString(T3_, (*T5_)._kind_3.strVal);
appendString(T3_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_150));
	nimZeroMem((void*)(&T6_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
	stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(T1_, tos, T2_, T3_, T6_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
	goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setLenSeq__KXA4RY1gNwE3eOYKOBnMZw)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, NI newLen, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
	tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ;
	NI oldLen;
	typ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*node).typ, IL64(36134350136322064));
	oldLen = len__P89cqdlERShb9alU3iC0yj8wast(node);
	asgnRef((void**) (&(*node)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*node)._kind_6.sons)->Sup, (&NTI__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (newLen))));
	{
		if (!(oldLen < newLen)) goto LA3_;
		{
			NI i;
			NI i_2;
			i = (NI)0;
			i_2 = oldLen;
			{
				while (1) {
					if (!(i_2 < newLen)) goto LA7;
					i = i_2;
					asgnRef((void**) (&(*node)._kind_6.sons->data[i]), getNullValue__MirnaGAtIj7Yo4Gl5MzUxA((*typ).sons->data[((NI) 0)], info, (*c).config));
					i_2 += ((NI) 1);
				} LA7: ;
			}
		}
	}
	LA3_: ;
}
static N_INLINE(NIM_BOOL, lteqpercent___hPljn3JCDQ00ua1R07X9bxQ_2system)(NI x, NI y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU64)(((NU) (x))) <= (NU64)(((NU) (y))));
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___B9aBcRRVoRSIq0b6yX080jw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0) {
	tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw* colonenvP_;
	colonenvP_ = (tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*) ClE_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((*colonenvP_).error1 ? (*colonenvP_).error1->Sup.len : 0) == ((NI) 0));
		if (!(T3_)) goto LA4_;
		T3_ = (msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 11));
		LA4_: ;
		if (!T3_) goto LA5_;
		asgnRef((void**) (&(*colonenvP_).error1), formatMsg__1JLtPXtBEOA0aYSS8UEJDw(conf, info, msg, arg));
	}
	LA5_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___B9aBcRRVoRSIq0b6yX080jw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0) {
	tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw* colonenvP_;
	colonenvP_ = (tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*) ClE_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((*colonenvP_).error2 ? (*colonenvP_).error2->Sup.len : 0) == ((NI) 0));
		if (!(T3_)) goto LA4_;
		T3_ = (msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 11));
		LA4_: ;
		if (!T3_) goto LA5_;
		asgnRef((void**) (&(*colonenvP_).error2), formatMsg__1JLtPXtBEOA0aYSS8UEJDw(conf, info, msg, arg));
	}
	LA5_: ;
}
static N_INLINE(NimStringDesc*, toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
	NimStringDesc* result;
	result = (NimStringDesc*)0;
	result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0);
appendString(result, info.Field0);
	{
		if (!(((NI) 0) < info.Field1)) goto LA3_;
		result = resizeString(result, 1);
appendString(result, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_183));
		addInt__mftMOxbyu0h4yByfs3sqjA((&result), ((NI64) (info.Field1)));
		{
			if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
			result = resizeString(result, 2);
appendString(result, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_98));
			addInt__mftMOxbyu0h4yByfs3sqjA((&result), ((NI64) ((NI)(info.Field2 + ((NI) 1)))));
		}
		LA7_: ;
		result = resizeString(result, 1);
appendString(result, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_184));
	}
	LA3_: ;
	return result;
}
static N_INLINE(NIM_BOOL, eqeq___aqip9cmQIuefPKdd25wuEEwsystem)(NCSTRING x, NCSTRING y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		if (!(((void*) (x)) == ((void*) (y)))) goto LA3_;
		result = NIM_TRUE;
	}
	goto LA1_;
	LA3_: ;
	{
		NIM_BOOL T6_;
		T6_ = (NIM_BOOL)0;
		T6_ = (x == 0);
		if (T6_) goto LA7_;
		T6_ = (y == 0);
		LA7_: ;
		if (!T6_) goto LA8_;
		result = NIM_FALSE;
	}
	goto LA1_;
	LA8_: ;
	{
		int T11_;
		T11_ = (int)0;
		T11_ = strcmp(x, y);
		result = (T11_ == ((NI32) 0));
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, opConv__Fsv5V3BiOZ6CCSNA7nIsSg)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* dest, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA src, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* desttyp, tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* srctyp) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* styp;
		if (!((*desttyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28))) goto LA3_;
		ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(dest, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
		unsureAsgnRef((void**) (&(*dest).node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
		styp = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350136322320));
		switch ((*styp).kind) {
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
			NI x;
			n = (*styp).n;
			x = ((NI) (src.intVal));
			{
				NIM_BOOL T8_;
				NI T9_;
				tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* f;
				T8_ = (NIM_BOOL)0;
				T9_ = (NI)0;
				T9_ = len__P89cqdlERShb9alU3iC0yj8wast(n);
				T8_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(x, T9_);
				if (!(T8_)) goto LA10_;
				f = (*(*n)._kind_6.sons->data[x])._kind_4.sym;
				T8_ = ((*f).position == x);
				LA10_: ;
				if (!T8_) goto LA11_;
				{
					NimStringDesc* T17_;
					if (!((*f).ast == 0)) goto LA15_;
					T17_ = (NimStringDesc*)0;
					T17_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*(*f).name).s);
					if (T17_) nimGCunrefNoCycle(T17_);
				}
				goto LA13_;
				LA15_: ;
				{
					NimStringDesc* T19_;
					T19_ = (NimStringDesc*)0;
					T19_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*(*f).ast)._kind_3.strVal);
					if (T19_) nimGCunrefNoCycle(T19_);
				}
				LA13_: ;
			}
			goto LA6_;
			LA11_: ;
			{
				NimStringDesc* T39_;
				NimStringDesc* T40_;
				{
					NI i;
					NI colontmp_;
					NI i_2;
					i = (NI)0;
					colontmp_ = (NI)0;
					colontmp_ = len__P89cqdlERShb9alU3iC0yj8wast(n);
					i_2 = ((NI) 0);
					{
						while (1) {
							tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* f_2;
							if (!(i_2 < colontmp_)) goto LA23;
							i = i_2;
							{
								if (!!(((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA26_;
								internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_186), TM__pyAIA9cUF0h9c4j2HfNQPfYw_187);
							}
							LA26_: ;
							f_2 = (*(*n)._kind_6.sons->data[i])._kind_4.sym;
							{
								if (!((*f_2).position == x)) goto LA30_;
								{
									NimStringDesc* T36_;
									if (!((*f_2).ast == 0)) goto LA34_;
									T36_ = (NimStringDesc*)0;
									T36_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*(*f_2).name).s);
									if (T36_) nimGCunrefNoCycle(T36_);
								}
								goto LA32_;
								LA34_: ;
								{
									NimStringDesc* T38_;
									T38_ = (NimStringDesc*)0;
									T38_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*(*f_2).ast)._kind_3.strVal);
									if (T38_) nimGCunrefNoCycle(T38_);
								}
								LA32_: ;
								goto BeforeRet_;
							}
							LA30_: ;
							i_2 += ((NI) 1);
						} LA23: ;
					}
				}
				T39_ = (NimStringDesc*)0;
				T40_ = (NimStringDesc*)0;
				T40_ = nimIntToStr(x);
				T39_ = rawNewString(((*(*(*styp).sym).name).s ? (*(*(*styp).sym).name).s->Sup.len : 0) + (T40_ ? T40_->Sup.len : 0) + 1);
appendString(T39_, (*(*(*styp).sym).name).s);
appendString(T39_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_188));
appendString(T39_, T40_);
				asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), T39_);
			}
			LA6_: ;
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), nimInt64ToStr(src.intVal));
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), dollar___RkX9btpg5sQIaP8yYXB6tbA(((NU64) (src.intVal))));
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
		{
			{
				NimStringDesc* T48_;
				if (!(src.intVal == IL64(0))) goto LA46_;
				T48_ = (NimStringDesc*)0;
				T48_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_189));
				if (T48_) nimGCunrefNoCycle(T48_);
			}
			goto LA44_;
			LA46_: ;
			{
				NimStringDesc* T50_;
				T50_ = (NimStringDesc*)0;
				T50_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_190));
				if (T50_) nimGCunrefNoCycle(T50_);
			}
			LA44_: ;
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), nimFloatToStr(src.floatVal));
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
		{
			NimStringDesc* T53_;
			T53_ = (NimStringDesc*)0;
			T53_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*src.node)._kind_3.strVal);
			if (T53_) nimGCunrefNoCycle(T53_);
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
		{
			{
				NimStringDesc* strVal;
				NimStringDesc* T67_;
				if (!((*src.node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA57_;
				strVal = ((NimStringDesc*) NIM_NIL);
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** son;
					tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp__2;
					NI i_3;
					NI L;
					NI T60_;
					son = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					colontmp__2 = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*)0;
					colontmp__2 = (*src.node)._kind_6.sons;
					i_3 = ((NI) 0);
					T60_ = (colontmp__2 ? colontmp__2->Sup.len : 0);
					L = T60_;
					{
						while (1) {
							NIM_CHAR c_2;
							if (!(i_3 < L)) goto LA62;
							son = &colontmp__2->data[i_3];
							c_2 = ((NIM_CHAR) ((*(*son))._kind_1.intVal));
							{
								if (!((NU8)(c_2) == (NU8)(0))) goto LA65_;
								goto LA59;
							}
							LA65_: ;
							strVal = addChar(strVal, c_2);
							i_3 += ((NI) 1);
						} LA62: ;
					}
				} LA59: ;
				T67_ = (NimStringDesc*)0;
				T67_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(strVal);
				if (T67_) nimGCunrefNoCycle(T67_);
			}
			goto LA55_;
			LA57_: ;
			{
				NimStringDesc* T69_;
				T69_ = (NimStringDesc*)0;
				T69_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1((*src.node)._kind_3.strVal);
				if (T69_) nimGCunrefNoCycle(T69_);
			}
			LA55_: ;
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), nimCharToStr(((NIM_CHAR) (((NI) (src.intVal))))));
		}
		break;
		default:
		{
			NimStringDesc* T72_;
			NimStringDesc* T73_;
			T72_ = (NimStringDesc*)0;
			T73_ = (NimStringDesc*)0;
			T73_ = typeToString__QlvraUan7WbHowhAbvDvdA(desttyp, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
			T72_ = rawNewString((T73_ ? T73_->Sup.len : 0) + 25);
appendString(T72_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_191));
appendString(T72_, T73_);
			internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, T72_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_192);
		}
		break;
		}
	}
	goto LA1_;
	LA3_: ;
	{
		tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T75_;
		T75_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
		T75_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(desttyp, IL64(36134350144710928));
		switch ((*T75_).kind) {
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
		{
			tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T77_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(dest, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			T77_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
			T77_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350136322320));
			switch ((*T77_).kind) {
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 38):
			{
				(*dest).intVal = ((NI64) (((NI) (src.floatVal))));
			}
			break;
			default:
			{
				(*dest).intVal = src.intVal;
			}
			break;
			}
			{
				NIM_BOOL T82_;
				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T83_;
				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T84_;
				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T86_;
				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T87_;
				T82_ = (NIM_BOOL)0;
				T83_ = toInt128__ZBiVpGjOydV7ZjeElrE9cFQ((*dest).intVal);
				T84_ = firstOrd__hjogdnp59cMX1rwmjikBhqw((*c).config, desttyp);
				T82_ = lt___7c5Zw7H31uJfWmmhZe9aEqw_3(T83_, T84_);
				if (T82_) goto LA85_;
				T86_ = lastOrd__hjogdnp59cMX1rwmjikBhqw_2((*c).config, desttyp);
				T87_ = toInt128__ZBiVpGjOydV7ZjeElrE9cFQ((*dest).intVal);
				T82_ = lt___7c5Zw7H31uJfWmmhZe9aEqw_3(T86_, T87_);
				LA85_: ;
				if (!T82_) goto LA88_;
				result = NIM_TRUE;
				goto BeforeRet_;
			}
			LA88_: ;
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
		{
			tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T91_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(dest, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			T91_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
			T91_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350136322320));
			switch ((*T91_).kind) {
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 38):
			{
				(*dest).intVal = ((NI64) (((NI) (src.floatVal))));
			}
			break;
			default:
			{
				NI64 srcDist;
				NI64 destDist;
				NU64 value;
				srcDist = (NI64)((NI64)(IL64(8) - (*srctyp).size) * IL64(8));
				destDist = (NI64)((NI64)(IL64(8) - (*desttyp).size) * IL64(8));
				value = ((NU64) (src.intVal));
				value = (NU64)((NU64)((NU64)((NU64)(value) << (NU64)(srcDist))) >> (NU64)(srcDist));
				value = (NU64)((NU64)((NU64)((NU64)(value) << (NU64)(destDist))) >> (NU64)(destDist));
				(*dest).intVal = ((NI64) (value));
			}
			break;
			}
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
		{
			NI T95_;
			tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T96_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(dest, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
			T95_ = (NI)0;
			T96_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
			T96_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350136322320));
			switch ((*T96_).kind) {
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 38):
			{
				T95_ = ((NI) (!((src.floatVal == 0.0))));
			}
			break;
			default:
			{
				T95_ = ((NI) (!((src.intVal == IL64(0)))));
			}
			break;
			}
			(*dest).intVal = ((NI64) (T95_));
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 38):
		{
			tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T100_;
			ensureKind__hLEAmC34r1Yd9aCCcNP1pLA(dest, ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
			T100_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
			T100_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350136322320));
			switch ((*T100_).kind) {
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
			{
				(*dest).floatVal = toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem(src.intVal);
			}
			break;
			default:
			{
				(*dest).floatVal = src.floatVal;
			}
			break;
			}
		}
		break;
		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
		{
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T106_;
				T106_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
				T106_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(srctyp, IL64(36134350144710928));
				if (!!(((*T106_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17)))) goto LA107_;
				internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_193), TM__pyAIA9cUF0h9c4j2HfNQPfYw_194);
			}
			LA107_: ;
			moveConst__luZK66SNRzBExkuHaelzZA_3(dest, src);
		}
		break;
		default:
		{
			asgnComplex__luZK66SNRzBExkuHaelzZA(dest, src);
		}
		break;
		}
	}
	LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, len__8UGkwK9cZDAmWMyHxdOt9bsAbtrees)(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg b) {
	NI result;
	result = (NI)0;
	result = b.entries;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, createStrKeepNode__LpB9aVgxJQWwIAx62EyhZoA)(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* x, NIM_BOOL keepNode) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ((*x).node == 0);
		if (T3_) goto LA4_;
		T3_ = !(keepNode);
		LA4_: ;
		if (!T3_) goto LA5_;
		unsureAsgnRef((void**) (&(*x).node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
	}
	goto LA1_;
	LA5_: ;
	{
		NIM_BOOL T8_;
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw T12_;
		T8_ = (NIM_BOOL)0;
		T8_ = ((*(*x).node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
		if (!(T8_)) goto LA9_;
		T8_ = keepNode;
		LA9_: ;
		if (!T8_) goto LA10_;
		nimZeroMem((void*)(&T12_), sizeof(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw));
		nimZeroMem((void*)(&T12_), sizeof(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw));
		T12_.kind = ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20);
		genericShallowAssign((void*)(&(*(*x).node)), (void*)(&T12_), (&NTI__bROa11lyF5vxEN9aYNbHmhw_));
	}
	goto LA1_;
	LA10_: ;
	{
		NIM_BOOL T14_;
		T14_ = (NIM_BOOL)0;
		T14_ = !(((*(*x).node).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*(*x).node).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
		if (T14_) goto LA15_;
		T14_ = (((*(*x).node).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 4))&31U)))!=0);
		LA15_: ;
		if (!T14_) goto LA16_;
		unsureAsgnRef((void**) (&(*x).node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
	}
	goto LA1_;
	LA16_: ;
	LA1_: ;
}
static N_INLINE(void, leave__QoTzttW5qhAM568TC1hifgvmprofiler)(tyObject_Profiler__X5SfC6PDEhDFna4qLF0vtg* prof, tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c) {
	{
		if (!(((*(*c).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 50))&63U)))!=0)) goto LA3_;
		leaveImpl__TxiQHZPVPcs8U49bRKzRtxw(prof, c);
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rawExecute__OUDseXSU2midLA4bLXt3gg)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, NI start, tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos, tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* Result) {
	tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw* colonenv_;
	NI pc;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos_2;
	NI savedPC;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* savedFrame;
	tySequence__jlXqfsdfoRhiIfoVNWV0Vw* regs;
{	switch ((*Result).kind) {
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
	(*Result).intVal = 0;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
	(*Result).floatVal = 0;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
	unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
	(*Result).regAddr = NIM_NIL;
	break;
	case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
	(*Result).nodeAddr = NIM_NIL;
	break;
	} 
	(*Result).kind = 0;
	colonenv_ = (tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*)0;
	colonenv_ = (tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*) newObj((&NTI__i0OKJxPqBBZH5nTqNgi3yQ_), sizeof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw));
	(*colonenv_).Sup.m_type = (&NTI__jd629aT6A2Mu9ci3rTLr9bzFw_);
	pc = start;
	tos_2 = tos;
	savedPC = ((NI) -1);
	savedFrame = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
	regs = (tySequence__jlXqfsdfoRhiIfoVNWV0Vw*)0;
	regs = (*tos_2).slots;
	{
		while (1) {
			NU64 instr;
			NI ra;
			instr = (*c).code->data[pc];
			ra = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
			enter__VlRy4bqjG2Oq4bi2NBW9b0wvmprofiler((&(*c).profiler), c, tos_2);
			switch (((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL)))) {
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 0):
			{
				genericAssign((void*)Result, (void*)(&regs->data[ra]), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
				goto BeforeRet_;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 1):
			{
				NI newPc;
				newPc = cleanUpOnReturn__UQh0Utfmv2ZQyI277pEV7w(c, tos_2);
				{
					tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA retVal;
					if (!(newPc < ((NI) 0))) goto LA7_;
					pc = (*tos_2).comesFrom;
					tos_2 = (*tos_2).next;
					nimZeroMem((void*)(&retVal), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
					nimCopyMem((void*)(&retVal), (NIM_CONST void*)(&regs->data[((NI) 0)]), sizeof(retVal));
					{
						if (!(tos_2 == 0)) goto LA11_;
						genericAssign((void*)Result, (void*)(&retVal), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
						goto BeforeRet_;
					}
					LA11_: ;
					regs = (*tos_2).slots;
					{
						if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 153))) goto LA15_;
						genericAssign((void*)(&regs->data[(NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(8ULL)) & 65535ULL)]), (void*)(&retVal), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
					}
					LA15_: ;
				}
				goto LA5_;
				LA7_: ;
				{
					savedPC = pc;
					savedFrame = tos_2;
					pc = (NI)(newPc - ((NI) 1));
				}
				LA5_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 2):
			{
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 3):
			{
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 4):
			{
				NI rb;
				rb = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = regs->data[rb].intVal;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 5):
			{
				NI rb_2;
				rb_2 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = regs->data[rb_2].floatVal;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 10):
			{
				NI rb_3;
				union { NF32 source; NI32 dest; } LOC23;
				rb_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				LOC23.source = ((NF32) (regs->data[rb_3].floatVal));
				regs->data[ra].intVal = ((NI64) (LOC23.dest));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 11):
			{
				NI rb_4;
				union { NF source; NI64 dest; } LOC25;
				rb_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				LOC25.source = regs->data[rb_4].floatVal;
				regs->data[ra].intVal = LOC25.dest;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 8):
			{
				NI rb_5;
				union { NI64 source; NF32 dest; } LOC27;
				rb_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				LOC27.source = regs->data[rb_5].intVal;
				regs->data[ra].floatVal = ((NF) (LOC27.dest));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 9):
			{
				NI rb_6;
				union { NI64 source; NF dest; } LOC29;
				rb_6 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				LOC29.source = regs->data[rb_6].intVal;
				regs->data[ra].floatVal = LOC29.dest;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 12):
			{
				NI rb_7;
				NI imm;
				rb_7 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				switch (imm) {
				case ((NI) 1):
				{
					switch (regs->data[rb_7].kind) {
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
					{
						regs->data[ra].intVal = ((NI64) (((NI) ((*regs->data[rb_7].node)._kind_1.intVal))));
					}
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
					{
						regs->data[ra].intVal = ((NI64) (((NI) (ptrdiff_t) (regs->data[rb_7].nodeAddr))));
					}
					break;
					default:
					{
						NimStringDesc* T35_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T36_;
						T35_ = (NimStringDesc*)0;
						T35_ = rawNewString((reprEnum((NI)regs->data[rb_7].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)) ? reprEnum((NI)regs->data[rb_7].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_))->Sup.len : 0) + 21);
appendString(T35_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_127));
appendString(T35_, reprEnum((NI)regs->data[rb_7].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)));
						nimZeroMem((void*)(&T36_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T35_, T36_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					break;
					}
				}
				break;
				case ((NI) 2):
				{
					regs->data[ra].intVal = ((NI64) (((NI) (regs->data[rb_7].node))));
				}
				break;
				default:
				{
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 13):
			{
				NI rb_8;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node2;
				rb_8 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				typ = (*regs->data[ra].node).typ;
				node2 = newNodeIT__2kgyckjaq2XB9bxBo5ZeIbg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), (*c).debug->data[pc], typ);
				switch (regs->data[rb_8].kind) {
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
				{
					(*node2)._kind_1.intVal = regs->data[rb_8].intVal;
				}
				break;
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
				{
					{
						NimStringDesc* T46_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T47_;
						if (!!(((69206016 &((NU64)1<<((NU)((*(*regs->data[rb_8].node).typ).kind)&63U)))!=0))) goto LA44_;
						T46_ = (NimStringDesc*)0;
						T46_ = rawNewString((reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTI__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTI__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 36);
appendString(T46_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_128));
appendString(T46_, reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTI__9a3YiReNVD0IJHWFKgXRe9ag_)));
						nimZeroMem((void*)(&T47_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T46_, T47_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA44_: ;
					(*node2)._kind_1.intVal = (*regs->data[rb_8].node)._kind_1.intVal;
				}
				break;
				default:
				{
					NimStringDesc* T49_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T50_;
					T49_ = (NimStringDesc*)0;
					T49_ = rawNewString((reprEnum((NI)regs->data[rb_8].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)) ? reprEnum((NI)regs->data[rb_8].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_))->Sup.len : 0) + 32);
appendString(T49_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_129));
appendString(T49_, reprEnum((NI)regs->data[rb_8].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)));
					nimZeroMem((void*)(&T50_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T49_, T50_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				}
				asgnRef((void**) (&regs->data[ra].node), node2);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 7):
			{
				asgnComplex__luZK66SNRzBExkuHaelzZA((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 14):
			{
				fastAsgnComplex__luZK66SNRzBExkuHaelzZA_2((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 6):
			{
				moveConst__luZK66SNRzBExkuHaelzZA_3((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 15):
			{
				NI ra_2;
				NI rb_9;
				ra_2 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rb_9 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				{
					if (!!((regs->data[rb_9].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1)))) goto LA57_;
					genericAssign((void*)(&regs->data[ra_2]), (void*)(&regs->data[rb_9]), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
				}
				goto LA55_;
				LA57_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nb;
					nb = regs->data[rb_9].node;
					switch ((*nb).kind) {
					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
					{
						ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_2]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
						regs->data[ra_2].intVal = (*nb)._kind_1.intVal;
					}
					break;
					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
					{
						ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_2]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
						regs->data[ra_2].floatVal = (*nb)._kind_2.floatVal;
					}
					break;
					default:
					{
						ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_2]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						asgnRef((void**) (&regs->data[ra_2].node), nb);
					}
					break;
					}
				}
				LA55_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 16):
			{
				NI rb_10;
				NI rc;
				NI idx;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src;
				rb_10 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				{
					NimStringDesc* T68_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T76_;
					if (!(IL64(9223372036854775807) < regs->data[rc].intVal)) goto LA66_;
					T68_ = (NimStringDesc*)0;
					{
						if (!NIM_FALSE) goto LA71_;
						T68_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA69_;
					LA71_: ;
					{
						NimStringDesc* T74_;
						NimStringDesc* T75_;
						T74_ = (NimStringDesc*)0;
						T75_ = (NimStringDesc*)0;
						T75_ = nimInt64ToStr(regs->data[rc].intVal);
						T74_ = rawNewString((T75_ ? T75_->Sup.len : 0) + 38);
appendString(T74_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T74_, T75_);
appendString(T74_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_132));
						T68_ = T74_;
					}
					LA69_: ;
					nimZeroMem((void*)(&T76_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T68_, T76_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA66_: ;
				idx = ((NI) (regs->data[rc].intVal));
				src = regs->data[rb_10].node;
				{
					if (!((*src).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*src).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA79_;
					{
						NIM_BOOL T83_;
						T83_ = (NIM_BOOL)0;
						T83_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx, ((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0));
						if (!T83_) goto LA84_;
						asgnRef((void**) (&regs->data[ra].node), newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5), (*c).debug->data[pc]));
						(*regs->data[ra].node)._kind_1.intVal = ((NI64) (((NU8)((*src)._kind_3.strVal->data[idx]))));
					}
					goto LA81_;
					LA84_: ;
					{
						NimStringDesc* T87_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T96_;
						T87_ = (NimStringDesc*)0;
						{
							if (!((NI)(((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA90_;
							T87_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
						}
						goto LA88_;
						LA90_: ;
						{
							NimStringDesc* T93_;
							NimStringDesc* T94_;
							NimStringDesc* T95_;
							T93_ = (NimStringDesc*)0;
							T94_ = (NimStringDesc*)0;
							T94_ = nimIntToStr(idx);
							T95_ = (NimStringDesc*)0;
							T95_ = nimIntToStr((NI)(((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
							T93_ = rawNewString((T94_ ? T94_->Sup.len : 0) + (T95_ ? T95_->Sup.len : 0) + 19);
appendString(T93_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T93_, T94_);
appendString(T93_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T93_, T95_);
							T87_ = T93_;
						}
						LA88_: ;
						nimZeroMem((void*)(&T96_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T87_, T96_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA81_: ;
				}
				goto LA77_;
				LA79_: ;
				{
					NIM_BOOL T98_;
					NI T100_;
					T98_ = (NIM_BOOL)0;
					T98_ = !(((*src).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*src).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 19)));
					if (!(T98_)) goto LA99_;
					T100_ = (NI)0;
					T100_ = len__P89cqdlERShb9alU3iC0yj8wast(src);
					T98_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx, T100_);
					LA99_: ;
					if (!T98_) goto LA101_;
					asgnRef((void**) (&regs->data[ra].node), (*src)._kind_6.sons->data[idx]);
				}
				goto LA77_;
				LA101_: ;
				{
					NimStringDesc* T104_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T115_;
					T104_ = (NimStringDesc*)0;
					{
						NI T107_;
						T107_ = (NI)0;
						T107_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(src);
						if (!((NI)(T107_ - ((NI) 1)) < ((NI) 0))) goto LA108_;
						T104_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA105_;
					LA108_: ;
					{
						NimStringDesc* T111_;
						NimStringDesc* T112_;
						NI T113_;
						NimStringDesc* T114_;
						T111_ = (NimStringDesc*)0;
						T112_ = (NimStringDesc*)0;
						T112_ = nimIntToStr(idx);
						T113_ = (NI)0;
						T113_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(src);
						T114_ = (NimStringDesc*)0;
						T114_ = nimIntToStr((NI)(T113_ - ((NI) 1)));
						T111_ = rawNewString((T112_ ? T112_->Sup.len : 0) + (T114_ ? T114_->Sup.len : 0) + 19);
appendString(T111_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T111_, T112_);
appendString(T111_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T111_, T114_);
						T104_ = T111_;
					}
					LA105_: ;
					nimZeroMem((void*)(&T115_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T104_, T115_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA77_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 17):
			{
				NI rb_11;
				NI rc_2;
				NI idx_2;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src_2;
				rb_11 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_2 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5));
				{
					NimStringDesc* T121_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T129_;
					if (!(IL64(9223372036854775807) < regs->data[rc_2].intVal)) goto LA119_;
					T121_ = (NimStringDesc*)0;
					{
						if (!NIM_FALSE) goto LA124_;
						T121_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA122_;
					LA124_: ;
					{
						NimStringDesc* T127_;
						NimStringDesc* T128_;
						T127_ = (NimStringDesc*)0;
						T128_ = (NimStringDesc*)0;
						T128_ = nimInt64ToStr(regs->data[rc_2].intVal);
						T127_ = rawNewString((T128_ ? T128_->Sup.len : 0) + 38);
appendString(T127_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T127_, T128_);
appendString(T127_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_132));
						T121_ = T127_;
					}
					LA122_: ;
					nimZeroMem((void*)(&T129_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T121_, T129_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA119_: ;
				idx_2 = ((NI) (regs->data[rc_2].intVal));
				{
					if (!(regs->data[rb_11].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA132_;
					src_2 = regs->data[rb_11].node;
				}
				goto LA130_;
				LA132_: ;
				{
					src_2 = (*regs->data[rb_11].nodeAddr);
				}
				LA130_: ;
				{
					NIM_BOOL T137_;
					NI T139_;
					T137_ = (NIM_BOOL)0;
					T137_ = !(((*src_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*src_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
					if (!(T137_)) goto LA138_;
					T139_ = (NI)0;
					T139_ = len__P89cqdlERShb9alU3iC0yj8wast(src_2);
					T137_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx_2, T139_);
					LA138_: ;
					if (!T137_) goto LA140_;
					regs->data[ra].nodeAddr = &(*src_2)._kind_6.sons->data[idx_2];
				}
				goto LA135_;
				LA140_: ;
				{
					NimStringDesc* T143_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T154_;
					T143_ = (NimStringDesc*)0;
					{
						NI T146_;
						T146_ = (NI)0;
						T146_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(src_2);
						if (!((NI)(T146_ - ((NI) 1)) < ((NI) 0))) goto LA147_;
						T143_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA144_;
					LA147_: ;
					{
						NimStringDesc* T150_;
						NimStringDesc* T151_;
						NI T152_;
						NimStringDesc* T153_;
						T150_ = (NimStringDesc*)0;
						T151_ = (NimStringDesc*)0;
						T151_ = nimIntToStr(idx_2);
						T152_ = (NI)0;
						T152_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(src_2);
						T153_ = (NimStringDesc*)0;
						T153_ = nimIntToStr((NI)(T152_ - ((NI) 1)));
						T150_ = rawNewString((T151_ ? T151_->Sup.len : 0) + (T153_ ? T153_->Sup.len : 0) + 19);
appendString(T150_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T150_, T151_);
appendString(T150_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T150_, T153_);
						T143_ = T150_;
					}
					LA144_: ;
					nimZeroMem((void*)(&T154_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T143_, T154_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA135_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 27):
			{
				NI rb_12;
				NI rc_3;
				NI idx_3;
				NimStringDesc* s;
				rb_12 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				idx_3 = ((NI) (regs->data[rc_3].intVal));
				s = (*regs->data[rb_12].node)._kind_3.strVal;
				{
					NIM_BOOL T158_;
					T158_ = (NIM_BOOL)0;
					T158_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx_3, (s ? s->Sup.len : 0));
					if (!T158_) goto LA159_;
					regs->data[ra].intVal = ((NI64) (((NU8)(s->data[idx_3]))));
				}
				goto LA156_;
				LA159_: ;
				{
					NimStringDesc* T162_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T171_;
					T162_ = (NimStringDesc*)0;
					{
						if (!((NI)((s ? s->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA165_;
						T162_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA163_;
					LA165_: ;
					{
						NimStringDesc* T168_;
						NimStringDesc* T169_;
						NimStringDesc* T170_;
						T168_ = (NimStringDesc*)0;
						T169_ = (NimStringDesc*)0;
						T169_ = nimIntToStr(idx_3);
						T170_ = (NimStringDesc*)0;
						T170_ = nimIntToStr((NI)((s ? s->Sup.len : 0) - ((NI) 1)));
						T168_ = rawNewString((T169_ ? T169_->Sup.len : 0) + (T170_ ? T170_->Sup.len : 0) + 19);
appendString(T168_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T168_, T169_);
appendString(T168_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T168_, T170_);
						T162_ = T168_;
					}
					LA163_: ;
					nimZeroMem((void*)(&T171_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T162_, T171_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA156_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 18):
			{
				NI rb_13;
				NI rc_4;
				NI idx_4;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arr;
				rb_13 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				idx_4 = ((NI) (regs->data[rb_13].intVal));
				arr = regs->data[ra].node;
				{
					if (!((*arr).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*arr).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA175_;
					{
						NIM_BOOL T179_;
						T179_ = (NIM_BOOL)0;
						T179_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx_4, ((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0));
						if (!T179_) goto LA180_;
						(*arr)._kind_3.strVal->data[idx_4] = ((NIM_CHAR) (((NI) (regs->data[rc_4].intVal))));
					}
					goto LA177_;
					LA180_: ;
					{
						NimStringDesc* T183_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T192_;
						T183_ = (NimStringDesc*)0;
						{
							if (!((NI)(((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA186_;
							T183_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
						}
						goto LA184_;
						LA186_: ;
						{
							NimStringDesc* T189_;
							NimStringDesc* T190_;
							NimStringDesc* T191_;
							T189_ = (NimStringDesc*)0;
							T190_ = (NimStringDesc*)0;
							T190_ = nimIntToStr(idx_4);
							T191_ = (NimStringDesc*)0;
							T191_ = nimIntToStr((NI)(((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
							T189_ = rawNewString((T190_ ? T190_->Sup.len : 0) + (T191_ ? T191_->Sup.len : 0) + 19);
appendString(T189_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T189_, T190_);
appendString(T189_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T189_, T191_);
							T183_ = T189_;
						}
						LA184_: ;
						nimZeroMem((void*)(&T192_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T183_, T192_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA177_: ;
				}
				goto LA173_;
				LA175_: ;
				{
					NI T194_;
					NIM_BOOL T195_;
					T194_ = (NI)0;
					T194_ = len__P89cqdlERShb9alU3iC0yj8wast(arr);
					T195_ = (NIM_BOOL)0;
					T195_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx_4, T194_);
					if (!T195_) goto LA196_;
					writeField__GuWkkIoU9ccBLjbIJoyJPzw(&(*arr)._kind_6.sons->data[idx_4], regs->data[rc_4]);
				}
				goto LA173_;
				LA196_: ;
				{
					NimStringDesc* T199_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T210_;
					T199_ = (NimStringDesc*)0;
					{
						NI T202_;
						T202_ = (NI)0;
						T202_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(arr);
						if (!((NI)(T202_ - ((NI) 1)) < ((NI) 0))) goto LA203_;
						T199_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA200_;
					LA203_: ;
					{
						NimStringDesc* T206_;
						NimStringDesc* T207_;
						NI T208_;
						NimStringDesc* T209_;
						T206_ = (NimStringDesc*)0;
						T207_ = (NimStringDesc*)0;
						T207_ = nimIntToStr(idx_4);
						T208_ = (NI)0;
						T208_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(arr);
						T209_ = (NimStringDesc*)0;
						T209_ = nimIntToStr((NI)(T208_ - ((NI) 1)));
						T206_ = rawNewString((T207_ ? T207_->Sup.len : 0) + (T209_ ? T209_->Sup.len : 0) + 19);
appendString(T206_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T206_, T207_);
appendString(T206_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T206_, T209_);
						T199_ = T206_;
					}
					LA200_: ;
					nimZeroMem((void*)(&T210_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T199_, T210_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA173_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 19):
			{
				NI rb_14;
				NI rc_5;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src_3;
				rb_14 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				src_3 = regs->data[rb_14].node;
				switch ((*src_3).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
				{
					NimStringDesc* T213_;
					tyTuple__nlLlqVveYUlcdyx2e2bPTw T214_;
					NimStringDesc* T215_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T216_;
					T213_ = (NimStringDesc*)0;
					nimZeroMem((void*)(&T214_), sizeof(tyTuple__nlLlqVveYUlcdyx2e2bPTw));
					T214_.Field0 = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_135));
					T214_.Field1 = (*src_3).kind;
					T214_.Field2 = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_136));
					T214_.Field3 = typeToString__QlvraUan7WbHowhAbvDvdA((*src_3).typ, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
					T214_.Field4 = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_137));
					T214_.Field5 = rc_5;
					T215_ = (NimStringDesc*)0;
					T215_ = dollar___HBZb4pgGTJ0NuRxlEYFytw((&T214_));
					T213_ = rawNewString((T215_ ? T215_->Sup.len : 0) + 32);
appendString(T213_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_134));
appendString(T213_, T215_);
					nimZeroMem((void*)(&T216_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T213_, T216_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
					n = skipColon__UPSW0jLTX5qJL51YMUAHgw_3((*src_3)._kind_6.sons->data[(NI)(((NI) (rc_5)) + ((NI) 1))]);
					asgnRef((void**) (&regs->data[ra].node), n);
				}
				break;
				default:
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
					n_2 = (*src_3)._kind_6.sons->data[rc_5];
					asgnRef((void**) (&regs->data[ra].node), n_2);
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 20):
			{
				NI rb_15;
				NI rc_6;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src_4;
				rb_15 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_6 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5));
				{
					if (!(regs->data[rb_15].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA222_;
					src_4 = regs->data[rb_15].node;
				}
				goto LA220_;
				LA222_: ;
				{
					src_4 = (*regs->data[rb_15].nodeAddr);
				}
				LA220_: ;
				switch ((*src_4).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T226_;
					nimZeroMem((void*)(&T226_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T226_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_3;
					n_3 = (*src_4)._kind_6.sons->data[(NI)(((NI) (rc_6)) + ((NI) 1))];
					{
						if (!((*n_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA230_;
						regs->data[ra].nodeAddr = &(*n_3)._kind_6.sons->data[((NI) 1)];
					}
					goto LA228_;
					LA230_: ;
					{
						regs->data[ra].nodeAddr = &(*src_4)._kind_6.sons->data[(NI)(((NI) (rc_6)) + ((NI) 1))];
					}
					LA228_: ;
				}
				break;
				default:
				{
					regs->data[ra].nodeAddr = &(*src_4)._kind_6.sons->data[rc_6];
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 21):
			{
				NI rb_16;
				NI rc_7;
				NI shiftedRb;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest;
				rb_16 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_7 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				shiftedRb = (NI)(((NI) (rb_16)) + ((*regs->data[ra].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38)));
				dest = regs->data[ra].node;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T239_;
					if (!((*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA237_;
					nimZeroMem((void*)(&T239_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T239_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA235_;
				LA237_: ;
				{
					if (!((*(*dest)._kind_6.sons->data[shiftedRb]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA241_;
					writeField__GuWkkIoU9ccBLjbIJoyJPzw(&(*(*dest)._kind_6.sons->data[shiftedRb])._kind_6.sons->data[((NI) 1)], regs->data[rc_7]);
				}
				goto LA235_;
				LA241_: ;
				{
					writeField__GuWkkIoU9ccBLjbIJoyJPzw(&(*dest)._kind_6.sons->data[shiftedRb], regs->data[rc_7]);
				}
				LA235_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 26):
			{
				NI rb_17;
				NI rc_8;
				NI idx_5;
				rb_17 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_8 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				idx_5 = ((NI) (regs->data[rb_17].intVal));
				{
					NIM_BOOL T247_;
					T247_ = (NIM_BOOL)0;
					T247_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem(idx_5, ((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0));
					if (!T247_) goto LA248_;
					(*regs->data[ra].node)._kind_3.strVal->data[idx_5] = ((NIM_CHAR) (((NI) (regs->data[rc_8].intVal))));
				}
				goto LA245_;
				LA248_: ;
				{
					NimStringDesc* T251_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T260_;
					T251_ = (NimStringDesc*)0;
					{
						if (!((NI)(((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA254_;
						T251_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA252_;
					LA254_: ;
					{
						NimStringDesc* T257_;
						NimStringDesc* T258_;
						NimStringDesc* T259_;
						T257_ = (NimStringDesc*)0;
						T258_ = (NimStringDesc*)0;
						T258_ = nimIntToStr(idx_5);
						T259_ = (NimStringDesc*)0;
						T259_ = nimIntToStr((NI)(((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
						T257_ = rawNewString((T258_ ? T258_->Sup.len : 0) + (T259_ ? T259_->Sup.len : 0) + 19);
appendString(T257_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T257_, T258_);
appendString(T257_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T257_, T259_);
						T251_ = T257_;
					}
					LA252_: ;
					nimZeroMem((void*)(&T260_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T251_, T260_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA245_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 22):
			{
				NI rb_18;
				rb_18 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4));
				regs->data[ra].regAddr = (&regs->data[rb_18]);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 23):
			{
				NI rb_19;
				rb_19 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5));
				{
					if (!(regs->data[rb_19].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA265_;
					regs->data[ra].nodeAddr = &regs->data[rb_19].node;
				}
				goto LA263_;
				LA265_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T268_;
					nimZeroMem((void*)(&T268_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_139), T268_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA263_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 24):
			{
				NI ra_3;
				NI rb_20;
				ra_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rb_20 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				switch (regs->data[rb_20].kind) {
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_3]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					asgnRef((void**) (&regs->data[ra_3].node), (*regs->data[rb_20].nodeAddr));
				}
				break;
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_3]), (*regs->data[rb_20].regAddr).kind);
					genericAssign((void*)(&regs->data[ra_3]), (void*)(&(*regs->data[rb_20].regAddr)), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
				}
				break;
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
				{
					{
						if (!((*regs->data[rb_20].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 141))) goto LA275_;
						asgnRef((void**) (&regs->data[ra_3].node), (*regs->data[rb_20].node)._kind_6.sons->data[((NI) 0)]);
					}
					goto LA273_;
					LA275_: ;
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nodeX60gensym226_;
						tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typX60gensym226_;
						NIM_BOOL T283_;
						nodeX60gensym226_ = regs->data[rb_20].node;
						{
							tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T282_;
							if (!((*nodeX60gensym226_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA280_;
							nimZeroMem((void*)(&T282_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
							stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T282_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_140);
							goto BeforeRet_;
						}
						LA280_: ;
						typX60gensym226_ = (*nodeX60gensym226_).typ;
						T283_ = (NIM_BOOL)0;
						{
							NIM_BOOL T286_;
							NIM_BOOL T288_;
							tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ2X60gensym226_;
							T286_ = (NIM_BOOL)0;
							T286_ = (((*nodeX60gensym226_).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 14))&31U)))!=0);
							if (T286_) goto LA287_;
							T288_ = (NIM_BOOL)0;
							T288_ = !((typX60gensym226_ == NIM_NIL));
							if (!(T288_)) goto LA289_;
							T288_ = ((*typX60gensym226_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
							LA289_: ;
							T286_ = T288_;
							LA287_: ;
							if (!T286_) goto LA290_;
							{
								if (!((*typX60gensym226_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA294_;
								typ2X60gensym226_ = (*typX60gensym226_).sons->data[((NI) 0)];
							}
							goto LA292_;
							LA294_: ;
							{
								typ2X60gensym226_ = typX60gensym226_;
							}
							LA292_: ;
							{
								NIM_BOOL T299_;
								NimStringDesc* T302_;
								tyTuple__9cqHuynYNPU9avbszh3XtBAg T303_;
								NimStringDesc* T304_;
								tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T305_;
								T299_ = (NIM_BOOL)0;
								T299_ = derefPtrToReg__rneu4wkryXcUJeguyyc5lw((*nodeX60gensym226_)._kind_1.intVal, typ2X60gensym226_, (&regs->data[ra_3]), NIM_FALSE);
								if (!!(T299_)) goto LA300_;
								T302_ = (NimStringDesc*)0;
								nimZeroMem((void*)(&T303_), sizeof(tyTuple__9cqHuynYNPU9avbszh3XtBAg));
								T303_.Field0 = typeToString__QlvraUan7WbHowhAbvDvdA(typX60gensym226_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
								T303_.Field1 = (*typX60gensym226_).kind;
								T304_ = (NimStringDesc*)0;
								T304_ = dollar___XSFzZuEhhtAqOvJ5uRr9cuA(T303_);
								T302_ = rawNewString((T304_ ? T304_->Sup.len : 0) + 28);
appendString(T302_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_141));
appendString(T302_, T304_);
								nimZeroMem((void*)(&T305_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
								stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T302_, T305_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_140);
								goto BeforeRet_;
							}
							LA300_: ;
							T283_ = NIM_TRUE;
						}
						goto LA284_;
						LA290_: ;
						{
							T283_ = NIM_FALSE;
						}
						LA284_: ;
						if (!!(T283_)) goto LA307_;
						ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra_3]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						asgnRef((void**) (&regs->data[ra_3].node), regs->data[rb_20].node);
					}
					goto LA273_;
					LA307_: ;
					LA273_: ;
				}
				break;
				default:
				{
					NimStringDesc* T310_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T311_;
					T310_ = (NimStringDesc*)0;
					T310_ = rawNewString((reprEnum((NI)regs->data[rb_20].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)) ? reprEnum((NI)regs->data[rb_20].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_))->Sup.len : 0) + 38);
appendString(T310_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_142));
appendString(T310_, reprEnum((NI)regs->data[rb_20].kind, (&NTI__BUH8cfx9botv2xAfmC8mnAQ_)));
					nimZeroMem((void*)(&T311_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T310_, T311_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 25):
			{
				NI ra_4;
				NI rc_9;
				ra_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rc_9 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				switch (regs->data[ra_4].kind) {
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_4;
					n_4 = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_9]);
					{
						NIM_BOOL T316_;
						T316_ = (NIM_BOOL)0;
						T316_ = !((((*(*regs->data[ra_4].nodeAddr)).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13))&31U)))!=0));
						if (!(T316_)) goto LA317_;
						T316_ = !((((*n_4).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13))&31U)))!=0));
						LA317_: ;
						if (!T316_) goto LA318_;
						genericAssign((void*)(&(*(*regs->data[ra_4].nodeAddr))), (void*)(&(*n_4)), (&NTI__bROa11lyF5vxEN9aYNbHmhw_));
					}
					goto LA314_;
					LA318_: ;
					{
						unsureAsgnRef((void**) (&(*regs->data[ra_4].nodeAddr)), n_4);
					}
					LA314_: ;
				}
				break;
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
				{
					genericAssign((void*)(&(*regs->data[ra_4].regAddr)), (void*)(&regs->data[rc_9]), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
				}
				break;
				case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
				{
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nodeX60gensym243_;
						tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typX60gensym243_;
						NIM_BOOL T330_;
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T356_;
						nodeX60gensym243_ = regs->data[ra_4].node;
						{
							tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T329_;
							if (!((*nodeX60gensym243_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA327_;
							nimZeroMem((void*)(&T329_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
							stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T329_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_143);
							goto BeforeRet_;
						}
						LA327_: ;
						typX60gensym243_ = (*nodeX60gensym243_).typ;
						T330_ = (NIM_BOOL)0;
						{
							NIM_BOOL T333_;
							NIM_BOOL T335_;
							tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ2X60gensym243_;
							T333_ = (NIM_BOOL)0;
							T333_ = (((*nodeX60gensym243_).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 14))&31U)))!=0);
							if (T333_) goto LA334_;
							T335_ = (NIM_BOOL)0;
							T335_ = !((typX60gensym243_ == NIM_NIL));
							if (!(T335_)) goto LA336_;
							T335_ = ((*typX60gensym243_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
							LA336_: ;
							T333_ = T335_;
							LA334_: ;
							if (!T333_) goto LA337_;
							{
								if (!((*typX60gensym243_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA341_;
								typ2X60gensym243_ = (*typX60gensym243_).sons->data[((NI) 0)];
							}
							goto LA339_;
							LA341_: ;
							{
								typ2X60gensym243_ = typX60gensym243_;
							}
							LA339_: ;
							{
								NIM_BOOL T346_;
								NimStringDesc* T349_;
								tyTuple__9cqHuynYNPU9avbszh3XtBAg T350_;
								NimStringDesc* T351_;
								tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T352_;
								T346_ = (NIM_BOOL)0;
								T346_ = derefPtrToReg__rneu4wkryXcUJeguyyc5lw((*nodeX60gensym243_)._kind_1.intVal, typ2X60gensym243_, (&regs->data[rc_9]), NIM_TRUE);
								if (!!(T346_)) goto LA347_;
								T349_ = (NimStringDesc*)0;
								nimZeroMem((void*)(&T350_), sizeof(tyTuple__9cqHuynYNPU9avbszh3XtBAg));
								T350_.Field0 = typeToString__QlvraUan7WbHowhAbvDvdA(typX60gensym243_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
								T350_.Field1 = (*typX60gensym243_).kind;
								T351_ = (NimStringDesc*)0;
								T351_ = dollar___XSFzZuEhhtAqOvJ5uRr9cuA(T350_);
								T349_ = rawNewString((T351_ ? T351_->Sup.len : 0) + 28);
appendString(T349_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_141));
appendString(T349_, T351_);
								nimZeroMem((void*)(&T352_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
								stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T349_, T352_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_143);
								goto BeforeRet_;
							}
							LA347_: ;
							T330_ = NIM_TRUE;
						}
						goto LA331_;
						LA337_: ;
						{
							T330_ = NIM_FALSE;
						}
						LA331_: ;
						if (!!(T330_)) goto LA354_;
						T356_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
						T356_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_9]);
						genericAssign((void*)(&(*regs->data[ra_4].node)), (void*)(&(*T356_)), (&NTI__bROa11lyF5vxEN9aYNbHmhw_));
						(*regs->data[ra_4].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
					}
					LA354_: ;
				}
				break;
				default:
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T358_;
					nimZeroMem((void*)(&T358_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T358_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 28):
			{
				NI rb_21;
				NI rc_10;
				NI64 bVal;
				NI64 cVal;
				NI64 sum;
				rb_21 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_10 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				bVal = regs->data[rb_21].intVal;
				cVal = regs->data[rc_10].intVal;
				sum = pluspercent___diI9aRPc9bjx9bT39cDuabKh5Asystem(bVal, cVal);
				{
					NIM_BOOL T362_;
					T362_ = (NIM_BOOL)0;
					T362_ = (IL64(0) <= (NI64)(sum ^ bVal));
					if (T362_) goto LA363_;
					T362_ = (IL64(0) <= (NI64)(sum ^ cVal));
					LA363_: ;
					if (!T362_) goto LA364_;
					regs->data[ra].intVal = sum;
				}
				goto LA360_;
				LA364_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T367_;
					nimZeroMem((void*)(&T367_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T367_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA360_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 29):
			{
				NI rb_22;
				NI imm_2;
				NI64 bVal_2;
				NI cVal_2;
				NI64 sum_2;
				rb_22 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_2 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				bVal_2 = regs->data[rb_22].intVal;
				cVal_2 = imm_2;
				sum_2 = pluspercent___diI9aRPc9bjx9bT39cDuabKh5Asystem(bVal_2, ((NI64) (cVal_2)));
				{
					NIM_BOOL T371_;
					T371_ = (NIM_BOOL)0;
					T371_ = (IL64(0) <= (NI64)(sum_2 ^ bVal_2));
					if (T371_) goto LA372_;
					T371_ = (IL64(0) <= (NI64)(sum_2 ^ ((NI64) (cVal_2))));
					LA372_: ;
					if (!T371_) goto LA373_;
					regs->data[ra].intVal = sum_2;
				}
				goto LA369_;
				LA373_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T376_;
					nimZeroMem((void*)(&T376_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T376_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA369_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 30):
			{
				NI rb_23;
				NI rc_11;
				NI64 bVal_3;
				NI64 cVal_3;
				NI64 diff;
				rb_23 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_11 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				bVal_3 = regs->data[rb_23].intVal;
				cVal_3 = regs->data[rc_11].intVal;
				diff = minuspercent___diI9aRPc9bjx9bT39cDuabKh5A_2system(bVal_3, cVal_3);
				{
					NIM_BOOL T380_;
					T380_ = (NIM_BOOL)0;
					T380_ = (IL64(0) <= (NI64)(diff ^ bVal_3));
					if (T380_) goto LA381_;
					T380_ = (IL64(0) <= (NI64)(diff ^ (NI64)((NU64) ~(cVal_3))));
					LA381_: ;
					if (!T380_) goto LA382_;
					regs->data[ra].intVal = diff;
				}
				goto LA378_;
				LA382_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T385_;
					nimZeroMem((void*)(&T385_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T385_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA378_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 31):
			{
				NI rb_24;
				NI imm_3;
				NI64 bVal_4;
				NI cVal_4;
				NI64 diff_2;
				rb_24 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_3 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				bVal_4 = regs->data[rb_24].intVal;
				cVal_4 = imm_3;
				diff_2 = minuspercent___diI9aRPc9bjx9bT39cDuabKh5A_2system(bVal_4, ((NI64) (cVal_4)));
				{
					NIM_BOOL T389_;
					T389_ = (NIM_BOOL)0;
					T389_ = (IL64(0) <= (NI64)(diff_2 ^ bVal_4));
					if (T389_) goto LA390_;
					T389_ = (IL64(0) <= (NI64)(diff_2 ^ ((NI64) ((NI)((NU64) ~(cVal_4))))));
					LA390_: ;
					if (!T389_) goto LA391_;
					regs->data[ra].intVal = diff_2;
				}
				goto LA387_;
				LA391_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T394_;
					nimZeroMem((void*)(&T394_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T394_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA387_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 32):
			{
				NI rb_25;
				NI imm_4;
				NI high;
				rb_25 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_4 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				high = (NI)(imm_4 & ((NI) 1));
				{
					NI T400_;
					if (!!(((NI)(imm_4 & ((NI) 16)) == ((NI) 0)))) goto LA398_;
					T400_ = (NI)0;
					T400_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(regs->data[rb_25].node);
					regs->data[ra].intVal = ((NI64) ((NI)(T400_ - high)));
				}
				goto LA396_;
				LA398_: ;
				{
					NI T402_;
					T402_ = (NI)0;
					T402_ = safeArrLen__P89cqdlERShb9alU3iC0yj8w_3ast(regs->data[rb_25].node);
					regs->data[ra].intVal = ((NI64) ((NI)(T402_ - high)));
				}
				LA396_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 33):
			{
				NI rb_26;
				NI imm_5;
				rb_26 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_5 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((NI)(((*regs->data[rb_26].node)._kind_3.strVal ? (*regs->data[rb_26].node)._kind_3.strVal->Sup.len : 0) - imm_5)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 34):
			{
				NI rb_27;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
				rb_27 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				b = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_27]);
				{
					NIM_BOOL T407_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T410_;
					T407_ = (NIM_BOOL)0;
					T407_ = inSet__b4nxsJCvqXRlyalSWskgNA(regs->data[ra].node, b);
					if (!!(T407_)) goto LA408_;
					T410_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T410_ = copyTree__Dsjo9bte8vGxzhtcSrsTyiQ(b);
					add__P8dDSotTW25BkfbyspojGg(regs->data[ra].node, T410_);
				}
				LA408_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 35):
			{
				NI rb_28;
				NI rc_12;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T412_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T413_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T414_;
				rb_28 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_12 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				r = newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44));
				T412_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T412_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_28]);
				add__P8dDSotTW25BkfbyspojGg(r, T412_);
				T413_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T413_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_12]);
				add__P8dDSotTW25BkfbyspojGg(r, T413_);
				T414_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T414_ = copyTree__Dsjo9bte8vGxzhtcSrsTyiQ(r);
				add__P8dDSotTW25BkfbyspojGg(regs->data[ra].node, T414_);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 36):
			{
				NI rb_29;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_2;
				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T416_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T417_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r_2;
				rb_29 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				T416_ = (*regs->data[ra].node).info;
				b_2 = newNodeIT__2kgyckjaq2XB9bxBo5ZeIbg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39), T416_, (*regs->data[ra].node).typ);
				T417_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T417_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_29]);
				add__P8dDSotTW25BkfbyspojGg(b_2, T417_);
				r_2 = diffSets__DJXyM0ZYUUgI9bAP6orixDA_3((*c).config, regs->data[ra].node, b_2);
				discardSons__CndA7u9cT5evGd9a583WPNqQ(regs->data[ra].node);
				{
					NI i;
					NI colontmp_;
					NI i_2;
					i = (NI)0;
					colontmp_ = (NI)0;
					colontmp_ = len__P89cqdlERShb9alU3iC0yj8wast(r_2);
					i_2 = ((NI) 0);
					{
						while (1) {
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T421_;
							if (!(i_2 < colontmp_)) goto LA420;
							i = i_2;
							T421_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							T421_ = regs->data[ra].node;
							add__P8dDSotTW25BkfbyspojGg(T421_, (*r_2)._kind_6.sons->data[i]);
							i_2 += ((NI) 1);
						} LA420: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 37):
			{
				NI rb_30;
				rb_30 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = cardSet__rIy8FkZfgdui9cmJlRrbtNA((*c).config, regs->data[rb_30].node);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 38):
			{
				NI rb_31;
				NI rc_13;
				NI64 bVal_5;
				NI64 cVal_5;
				NI64 product;
				NF floatProd;
				NF T424_;
				NF T425_;
				NF resAsFloat;
				rb_31 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_13 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				bVal_5 = regs->data[rb_31].intVal;
				cVal_5 = regs->data[rc_13].intVal;
				product = starpercent___diI9aRPc9bjx9bT39cDuabKh5A_3system(bVal_5, cVal_5);
				T424_ = (NF)0;
				T424_ = toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem(bVal_5);
				T425_ = (NF)0;
				T425_ = toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem(cVal_5);
				floatProd = ((NF)(T424_) * (NF)(T425_));
				resAsFloat = toBiggestFloat__hTpm9cXKgh17pxyZUsNnUyQsystem(product);
				{
					if (!(resAsFloat == floatProd)) goto LA428_;
					regs->data[ra].intVal = product;
				}
				goto LA426_;
				LA428_: ;
				{
					NF T431_;
					NF T432_;
					T431_ = (NF)0;
					T431_ = abs__BRaAqinz6OWTHkALb4oj6Qsystem(((NF)(resAsFloat) - (NF)(floatProd)));
					T432_ = (NF)0;
					T432_ = abs__BRaAqinz6OWTHkALb4oj6Qsystem(floatProd);
					if (!(((NF)(3.2000000000000000e+01) * (NF)(T431_)) <= T432_)) goto LA433_;
					regs->data[ra].intVal = product;
				}
				goto LA426_;
				LA433_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T436_;
					nimZeroMem((void*)(&T436_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T436_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA426_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 39):
			{
				NI rb_32;
				NI rc_14;
				rb_32 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_14 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T442_;
					if (!(regs->data[rc_14].intVal == IL64(0))) goto LA440_;
					nimZeroMem((void*)(&T442_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_145), T442_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA438_;
				LA440_: ;
				{
					regs->data[ra].intVal = (NI64)(regs->data[rb_32].intVal / regs->data[rc_14].intVal);
				}
				LA438_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 40):
			{
				NI rb_33;
				NI rc_15;
				rb_33 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_15 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T449_;
					if (!(regs->data[rc_15].intVal == IL64(0))) goto LA447_;
					nimZeroMem((void*)(&T449_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_145), T449_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA445_;
				LA447_: ;
				{
					regs->data[ra].intVal = (NI64)(regs->data[rb_33].intVal % regs->data[rc_15].intVal);
				}
				LA445_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 41):
			{
				NI rb_34;
				NI rc_16;
				rb_34 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_16 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_34].floatVal) + (NF)(regs->data[rc_16].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 42):
			{
				NI rb_35;
				NI rc_17;
				rb_35 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_17 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_35].floatVal) - (NF)(regs->data[rc_17].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 43):
			{
				NI rb_36;
				NI rc_18;
				rb_36 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_18 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_36].floatVal) * (NF)(regs->data[rc_18].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 44):
			{
				NI rb_37;
				NI rc_19;
				rb_37 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_19 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_37].floatVal) / (NF)(regs->data[rc_19].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 45):
			{
				NI rb_38;
				NI rc_20;
				NU64 b_3;
				NU64 c_2;
				NI64 a;
				rb_38 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_20 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				b_3 = ((NU64) (regs->data[rb_38].intVal));
				c_2 = ((NU64) (regs->data[rc_20].intVal));
				a = ((NI64) ((NU64)((NU64)(b_3) >> (NU64)(c_2))));
				regs->data[ra].intVal = a;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 46):
			{
				NI rb_39;
				NI rc_21;
				rb_39 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_21 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)((NU64)(regs->data[rb_39].intVal) << (NU64)(regs->data[rc_21].intVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 47):
			{
				NI rb_40;
				NI rc_22;
				rb_40 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_22 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)((NI64)(regs->data[rb_40].intVal) >> (NU64)(regs->data[rc_22].intVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 48):
			{
				NI rb_41;
				NI rc_23;
				rb_41 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_23 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_41].intVal & regs->data[rc_23].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 49):
			{
				NI rb_42;
				NI rc_24;
				rb_42 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_24 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_42].intVal | regs->data[rc_24].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 50):
			{
				NI rb_43;
				NI rc_25;
				rb_43 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_25 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_43].intVal ^ regs->data[rc_25].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 51):
			{
				NI rb_44;
				NI rc_26;
				NI64 T462_;
				rb_44 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_26 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T462_ = (NI64)0;
				T462_ = regs->data[rb_44].intVal;
				regs->data[ra].intVal = pluspercent___diI9aRPc9bjx9bT39cDuabKh5Asystem(T462_, regs->data[rc_26].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 52):
			{
				NI rb_45;
				NI rc_27;
				NI64 T464_;
				rb_45 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_27 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T464_ = (NI64)0;
				T464_ = regs->data[rb_45].intVal;
				regs->data[ra].intVal = minuspercent___diI9aRPc9bjx9bT39cDuabKh5A_2system(T464_, regs->data[rc_27].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 53):
			{
				NI rb_46;
				NI rc_28;
				NI64 T466_;
				rb_46 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_28 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T466_ = (NI64)0;
				T466_ = regs->data[rb_46].intVal;
				regs->data[ra].intVal = starpercent___diI9aRPc9bjx9bT39cDuabKh5A_3system(T466_, regs->data[rc_28].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 54):
			{
				NI rb_47;
				NI rc_29;
				NI64 T468_;
				rb_47 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_29 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T468_ = (NI64)0;
				T468_ = regs->data[rb_47].intVal;
				regs->data[ra].intVal = slashpercent___diI9aRPc9bjx9bT39cDuabKh5A_4system(T468_, regs->data[rc_29].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 55):
			{
				NI rb_48;
				NI rc_30;
				NI64 T470_;
				rb_48 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_30 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T470_ = (NI64)0;
				T470_ = regs->data[rb_48].intVal;
				regs->data[ra].intVal = percentpercent___diI9aRPc9bjx9bT39cDuabKh5A_5system(T470_, regs->data[rc_30].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 56):
			{
				NI rb_49;
				NI rc_31;
				rb_49 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_31 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_49].intVal == regs->data[rc_31].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 57):
			{
				NI rb_50;
				NI rc_32;
				rb_50 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_32 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_50].intVal <= regs->data[rc_32].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 58):
			{
				NI rb_51;
				NI rc_33;
				rb_51 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_33 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_51].intVal < regs->data[rc_33].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 59):
			{
				NI rb_52;
				NI rc_34;
				rb_52 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_34 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_52].floatVal == regs->data[rc_34].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 60):
			{
				NI rb_53;
				NI rc_35;
				rb_53 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_35 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_53].floatVal <= regs->data[rc_35].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 61):
			{
				NI rb_54;
				NI rc_36;
				rb_54 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_36 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_54].floatVal < regs->data[rc_36].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 62):
			{
				NI rb_55;
				NI rc_37;
				NI64 T478_;
				NIM_BOOL T479_;
				rb_55 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_37 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T478_ = (NI64)0;
				T478_ = regs->data[rb_55].intVal;
				T479_ = (NIM_BOOL)0;
				T479_ = lteqpercent___m9aFrKvWqPsM3WKrwczIr9bA_2system(T478_, regs->data[rc_37].intVal);
				regs->data[ra].intVal = ((NI64) (T479_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 63):
			{
				NI rb_56;
				NI rc_38;
				NI64 T481_;
				NIM_BOOL T482_;
				rb_56 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_38 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T481_ = (NI64)0;
				T481_ = regs->data[rb_56].intVal;
				T482_ = (NIM_BOOL)0;
				T482_ = ltpercent___m9aFrKvWqPsM3WKrwczIr9bAsystem(T481_, regs->data[rc_38].intVal);
				regs->data[ra].intVal = ((NI64) (T482_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 64):
			{
				NIM_BOOL ret;
				NI rb_57;
				NI rc_39;
				ret = NIM_FALSE;
				rb_57 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_39 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				{
					if (!(regs->data[rb_57].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5))) goto LA486_;
					{
						if (!(regs->data[rc_39].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5))) goto LA490_;
						ret = (regs->data[rb_57].nodeAddr == regs->data[rc_39].nodeAddr);
					}
					goto LA488_;
					LA490_: ;
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T493_;
						T493_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
						T493_ = regs->data[rb_57].nodeAddr;
						ret = ptrEquality__U2MMUdMR4785sgEWgMubXw(T493_, regs->data[rc_39].node);
					}
					LA488_: ;
				}
				goto LA484_;
				LA486_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T497_;
					if (!(regs->data[rc_39].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5))) goto LA495_;
					T497_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					T497_ = regs->data[rc_39].nodeAddr;
					ret = ptrEquality__U2MMUdMR4785sgEWgMubXw(T497_, regs->data[rb_57].node);
				}
				goto LA484_;
				LA495_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nb_2;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nc;
					nb_2 = regs->data[rb_57].node;
					nc = regs->data[rc_39].node;
					{
						if (!!(((*nb_2).kind == (*nc).kind))) goto LA501_;
					}
					goto LA499_;
					LA501_: ;
					{
						NIM_BOOL T504_;
						T504_ = (NIM_BOOL)0;
						T504_ = (nb_2 == nc);
						if (T504_) goto LA505_;
						T504_ = ((*nb_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
						LA505_: ;
						if (!T504_) goto LA506_;
						ret = NIM_TRUE;
					}
					goto LA499_;
					LA506_: ;
					{
						NIM_BOOL T509_;
						tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* tb;
						tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* tc;
						NIM_BOOL T513_;
						T509_ = (NIM_BOOL)0;
						T509_ = ((*nb_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6));
						if (!(T509_)) goto LA510_;
						T509_ = ((*nb_2)._kind_1.intVal == (*nc)._kind_1.intVal);
						LA510_: ;
						if (!T509_) goto LA511_;
						tb = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*nb_2).typ, abstractInst__dLigiD0wrfdW59cejPpTktA);
						tc = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*nc).typ, abstractInst__dLigiD0wrfdW59cejPpTktA);
						T513_ = (NIM_BOOL)0;
						T513_ = ((69206016 &((NU64)1<<((NU)((*tb).kind)&63U)))!=0);
						if (!(T513_)) goto LA514_;
						T513_ = ((*tc).kind == (*tb).kind);
						LA514_: ;
						ret = T513_;
					}
					goto LA499_;
					LA511_: ;
					LA499_: ;
				}
				LA484_: ;
				regs->data[ra].intVal = ((NI64) (ret));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 65):
			{
				NI rb_58;
				NI rc_40;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T516_;
				NIM_BOOL T517_;
				rb_58 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_40 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T516_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T516_ = regs->data[rb_58].node;
				T517_ = (NIM_BOOL)0;
				T517_ = exprStructuralEquivalent__E1mnSzj2NONtG7h9cR3AuFA(T516_, regs->data[rc_40].node, NIM_TRUE);
				regs->data[ra].intVal = ((NI64) (T517_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 66):
			{
				NI rb_59;
				NI rc_41;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T519_;
				NIM_BOOL T520_;
				rb_59 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_41 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T519_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
				T519_ = (*regs->data[rb_59].node).typ;
				T520_ = (NIM_BOOL)0;
				T520_ = sameTypeOrNil__3isNyHKb0U1OCnClmflXSg_2(T519_, (*regs->data[rc_41].node).typ, 0);
				regs->data[ra].intVal = ((NI64) (T520_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 67):
			{
				NI rb_60;
				NI rc_42;
				rb_60 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_42 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) (!((regs->data[rb_60].intVal == regs->data[rc_42].intVal))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 68):
			{
				NI rb_61;
				rb_61 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)(IL64(1) - regs->data[rb_61].intVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 69):
			{
				NI rb_62;
				NI64 val;
				rb_62 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				val = regs->data[rb_62].intVal;
				{
					if (!!((val == (IL64(-9223372036854775807) - IL64(1))))) goto LA526_;
					regs->data[ra].intVal = -(val);
				}
				goto LA524_;
				LA526_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T529_;
					nimZeroMem((void*)(&T529_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_144), T529_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA524_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 70):
			{
				NI rb_63;
				rb_63 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				regs->data[ra].floatVal = -(regs->data[rb_63].floatVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 71):
			{
				NI rb_64;
				rb_64 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)((NU64) ~(regs->data[rb_64].intVal));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 72):
			{
				NI rb_65;
				NI rc_43;
				rb_65 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_43 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) (eqStrings((*regs->data[rb_65].node)._kind_3.strVal, (*regs->data[rc_43].node)._kind_3.strVal)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 73):
			{
				NI rb_66;
				NI rc_44;
				rb_66 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_44 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((cmpStrings((*regs->data[rb_66].node)._kind_3.strVal, (*regs->data[rc_44].node)._kind_3.strVal) <= 0)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 74):
			{
				NI rb_67;
				NI rc_45;
				rb_67 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_45 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((cmpStrings((*regs->data[rb_67].node)._kind_3.strVal, (*regs->data[rc_45].node)._kind_3.strVal) < 0)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 76):
			{
				NI rb_68;
				NI rc_46;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T536_;
				NIM_BOOL T537_;
				rb_68 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_46 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T536_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T536_ = regs->data[rb_68].node;
				T537_ = (NIM_BOOL)0;
				T537_ = containsSets__Jr5d2PbcnAZ0pFa4Ny88lg((*c).config, T536_, regs->data[rc_46].node);
				regs->data[ra].intVal = ((NI64) (T537_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 75):
			{
				NI rb_69;
				NI rc_47;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T539_;
				NIM_BOOL T540_;
				rb_69 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_47 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T539_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T539_ = regs->data[rb_69].node;
				T540_ = (NIM_BOOL)0;
				T540_ = equalSets__Jr5d2PbcnAZ0pFa4Ny88lg_2((*c).config, T539_, regs->data[rc_47].node);
				regs->data[ra].intVal = ((NI64) (T540_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 77):
			{
				NI rb_70;
				NI rc_48;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_2;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_4;
				NIM_BOOL T542_;
				NIM_BOOL T544_;
				rb_70 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_48 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				a_2 = regs->data[rb_70].node;
				b_4 = regs->data[rc_48].node;
				T542_ = (NIM_BOOL)0;
				T542_ = containsSets__Jr5d2PbcnAZ0pFa4Ny88lg((*c).config, a_2, b_4);
				if (!(T542_)) goto LA543_;
				T544_ = (NIM_BOOL)0;
				T544_ = equalSets__Jr5d2PbcnAZ0pFa4Ny88lg_2((*c).config, a_2, b_4);
				T542_ = !(T544_);
				LA543_: ;
				regs->data[ra].intVal = ((NI64) (T542_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 78):
			{
				NI rb_71;
				NI rc_49;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T546_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T547_;
				rb_71 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_49 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39)));
				T546_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T546_ = regs->data[rb_71].node;
				T547_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T547_ = intersectSets__DJXyM0ZYUUgI9bAP6orixDA((*c).config, T546_, regs->data[rc_49].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T547_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 79):
			{
				NI rb_72;
				NI rc_50;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T549_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T550_;
				rb_72 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_50 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39)));
				T549_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T549_ = regs->data[rb_72].node;
				T550_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T550_ = unionSets__DJXyM0ZYUUgI9bAP6orixDA_2((*c).config, T549_, regs->data[rc_50].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T550_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 80):
			{
				NI rb_73;
				NI rc_51;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T552_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T553_;
				rb_73 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_51 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39)));
				T552_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T552_ = regs->data[rb_73].node;
				T553_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T553_ = diffSets__DJXyM0ZYUUgI9bAP6orixDA_3((*c).config, T552_, regs->data[rc_51].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T553_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 81):
			{
				NI rb_74;
				NI rc_52;
				rb_74 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_52 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				{
					NimStringDesc* T559_;
					if (!(regs->data[rb_74].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA557_;
					T559_ = (NimStringDesc*)0;
					T559_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*regs->data[rb_74].node)._kind_3.strVal);
					if (T559_) nimGCunrefNoCycle(T559_);
				}
				goto LA555_;
				LA557_: ;
				{
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), nimCharToStr(((NIM_CHAR) (((NI) (((NI) (regs->data[rb_74].intVal))))))));
				}
				LA555_: ;
				{
					NI i_3;
					NI colontmp__2;
					NI colontmp__3;
					NI res;
					i_3 = (NI)0;
					colontmp__2 = (NI)0;
					colontmp__3 = (NI)0;
					colontmp__2 = (NI)(((NI) (rb_74)) + ((NI) 1));
					colontmp__3 = (NI)((NI)(((NI) (rb_74)) + ((NI) (rc_52))) - ((NI) 1));
					res = colontmp__2;
					{
						while (1) {
							NimStringDesc* T564_;
							if (!(res <= colontmp__3)) goto LA563;
							i_3 = res;
							T564_ = (NimStringDesc*)0;
							{
								if (!(regs->data[i_3].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1))) goto LA567_;
								T564_ = copyString((*regs->data[i_3].node)._kind_3.strVal);
							}
							goto LA565_;
							LA567_: ;
							{
								T564_ = nimCharToStr(((NIM_CHAR) (((NI) (((NI) (regs->data[i_3].intVal)))))));
							}
							LA565_: ;
							asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), resizeString((*regs->data[ra].node)._kind_3.strVal, (T564_ ? T564_->Sup.len : 0) + 0));
appendString((*regs->data[ra].node)._kind_3.strVal, T564_);
							res += ((NI) 1);
						} LA563: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 98):
			{
				NI rb_75;
				rb_75 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), addChar((*regs->data[ra].node)._kind_3.strVal, ((NIM_CHAR) (((NI) (regs->data[rb_75].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 99):
			{
				NI rb_76;
				rb_76 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), resizeString((*regs->data[ra].node)._kind_3.strVal, ((*regs->data[rb_76].node)._kind_3.strVal ? (*regs->data[rb_76].node)._kind_3.strVal->Sup.len : 0) + 0));
appendString((*regs->data[ra].node)._kind_3.strVal, (*regs->data[rb_76].node)._kind_3.strVal);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 100):
			{
				NI rb_77;
				rb_77 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T577_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T578_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T579_;
					if (!((*regs->data[ra].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA575_;
					T577_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T577_ = regs->data[ra].node;
					T578_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T578_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_77]);
					T579_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T579_ = copyValue__UyDLGuBe1bDjMXME9b0kt3Q(T578_);
					add__P8dDSotTW25BkfbyspojGg(T577_, T579_);
				}
				goto LA573_;
				LA575_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T581_;
					nimZeroMem((void*)(&T581_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T581_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA573_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 149):
			{
				NI rb_78;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_3;
				rb_78 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_3 = regs->data[rb_78].node;
				{
					if (!((*a_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 143))) goto LA585_;
					a_3 = (*a_3)._kind_6.sons->data[((NI) 0)];
				}
				LA585_: ;
				{
					if (!((*a_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA589_;
					{
						if (!((*(*a_3)._kind_4.sym).ast == 0)) goto LA593_;
						asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23)));
					}
					goto LA591_;
					LA593_: ;
					{
						asgnRef((void**) (&regs->data[ra].node), copyTree__Dsjo9bte8vGxzhtcSrsTyiQ((*(*a_3)._kind_4.sym).ast));
					}
					LA591_: ;
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
				}
				goto LA587_;
				LA589_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T597_;
					nimZeroMem((void*)(&T597_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_146), T597_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA587_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 150):
			{
				NI rb_79;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_4;
				rb_79 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_4 = regs->data[rb_79].node;
				{
					if (!((*a_4).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA601_;
					{
						if (!((*(*a_4)._kind_4.sym).ast == 0)) goto LA605_;
						asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23)));
					}
					goto LA603_;
					LA605_: ;
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
						ast = shallowCopy__Dsjo9bte8vGxzhtcSrsTyiQ_3((*(*a_4)._kind_4.sym).ast);
						{
							NI i_4;
							NI colontmp__4;
							NI i_5;
							i_4 = (NI)0;
							colontmp__4 = (NI)0;
							colontmp__4 = len__P89cqdlERShb9alU3iC0yj8wast((*(*a_4)._kind_4.sym).ast);
							i_5 = ((NI) 0);
							{
								while (1) {
									if (!(i_5 < colontmp__4)) goto LA610;
									i_4 = i_5;
									asgnRef((void**) (&(*ast)._kind_6.sons->data[i_4]), (*(*(*a_4)._kind_4.sym).ast)._kind_6.sons->data[i_4]);
									i_5 += ((NI) 1);
								} LA610: ;
							}
						}
						asgnRef((void**) (&(*ast)._kind_6.sons->data[((NI) 6)]), transformBody__ocxOgPRHWfivNZELIhOv7w((*c).graph, (*a_4)._kind_4.sym, NIM_TRUE));
						asgnRef((void**) (&regs->data[ra].node), copyTree__Dsjo9bte8vGxzhtcSrsTyiQ(ast));
					}
					LA603_: ;
				}
				LA601_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 185):
			{
				NI rb_80;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_5;
				rb_80 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_5 = regs->data[rb_80].node;
				{
					if (!((*a_5).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA614_;
					{
						if (!((*(*a_5)._kind_4.sym).owner == 0)) goto LA618_;
						asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23)));
					}
					goto LA616_;
					LA618_: ;
					{
						tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* T621_;
						T621_ = (tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w*)0;
						T621_ = skipGenericOwner__lIu8wX6Beq6dBJgESOFFjg_3((*a_5)._kind_4.sym);
						asgnRef((void**) (&regs->data[ra].node), newSymNode__I2DV2TmmOysY1ZEGW19b9bRg(T621_));
					}
					LA616_: ;
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
				}
				goto LA612_;
				LA614_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T623_;
					nimZeroMem((void*)(&T623_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_146), T623_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA612_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 186):
			{
				NI rb_81;
				NI rc_53;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_6;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_5;
				rb_81 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_53 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				a_6 = regs->data[rb_81].node;
				b_5 = regs->data[rc_53].node;
				{
					NIM_BOOL T627_;
					NIM_BOOL T628_;
					NIM_BOOL T629_;
					NI T635_;
					T627_ = (NIM_BOOL)0;
					T628_ = (NIM_BOOL)0;
					T629_ = (NIM_BOOL)0;
					T629_ = ((*a_6).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					if (!(T629_)) goto LA630_;
					T629_ = ((520192 &((NU32)1<<((NU)((*(*a_6)._kind_4.sym).kind)&31U)))!=0);
					LA630_: ;
					T628_ = T629_;
					if (!(T628_)) goto LA631_;
					T628_ = ((*b_5).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					LA631_: ;
					T627_ = T628_;
					if (!(T627_)) goto LA632_;
					T627_ = ((520192 &((NU32)1<<((NU)((*(*b_5)._kind_4.sym).kind)&31U)))!=0);
					LA632_: ;
					if (!T627_) goto LA633_;
					T635_ = (NI)0;
					{
						NIM_BOOL T638_;
						T638_ = (NIM_BOOL)0;
						T638_ = (((*(*a_6)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 2))&63U)))!=0);
						if (!(T638_)) goto LA639_;
						T638_ = ((*(*a_6)._kind_4.sym).owner == (*b_5)._kind_4.sym);
						LA639_: ;
						if (!T638_) goto LA640_;
						T635_ = ((NI) 1);
					}
					goto LA636_;
					LA640_: ;
					{
						T635_ = ((NI) 0);
					}
					LA636_: ;
					regs->data[ra].intVal = ((NI64) (T635_));
				}
				goto LA625_;
				LA633_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T644_;
					nimZeroMem((void*)(&T644_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_147), T644_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA625_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 151):
			{
				NI rb_82;
				rb_82 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				{
					if (!(((NI) (rb_82)) == ((NI) 1))) goto LA648_;
					msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, (*regs->data[ra].node)._kind_3.strVal, 1);
				}
				goto LA646_;
				LA648_: ;
				{
					NimStringDesc* outp;
					outp = ((NimStringDesc*) NIM_NIL);
					{
						NI i_6;
						NI colontmp__5;
						NI res_2;
						i_6 = (NI)0;
						colontmp__5 = (NI)0;
						colontmp__5 = ((NI) ((NI)((NI)(((NI) (ra)) + ((NI) (rb_82))) - ((NI) 1))));
						res_2 = ((NI) (ra));
						{
							while (1) {
								if (!(res_2 <= ((NI) (colontmp__5)))) goto LA653;
								i_6 = ((NI) (res_2));
								outp = resizeString(outp, ((*regs->data[i_6].node)._kind_3.strVal ? (*regs->data[i_6].node)._kind_3.strVal->Sup.len : 0) + 0);
appendString(outp, (*regs->data[i_6].node)._kind_3.strVal);
								res_2 += ((NI) 1);
							} LA653: ;
						}
					}
					msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, outp, 1);
				}
				LA646_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 82):
			{
				NI rb_83;
				NI rc_54;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T655_;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T656_;
				NIM_BOOL T657_;
				rb_83 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_54 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				T655_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T655_ = regs->data[rb_83].node;
				T656_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T656_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_54]);
				T657_ = (NIM_BOOL)0;
				T657_ = inSet__b4nxsJCvqXRlyalSWskgNA(T655_, T656_);
				regs->data[ra].intVal = ((NI64) (T657_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 89):
			{
				NI rb_84;
				NI rc_55;
				NI rd;
				NimStringDesc* T659_;
				NI T660_;
				rb_84 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_55 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				pc += ((NI) 1);
				rd = ((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(8ULL)) & 65535ULL)));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				T659_ = (NimStringDesc*)0;
				T659_ = (*regs->data[rb_84].node)._kind_3.strVal;
				T660_ = (NI)0;
				T660_ = ((NI) (regs->data[rc_55].intVal));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), substr__2yh9cer0ymNRHlOOg8P7IuA(T659_, T660_, ((NI) (regs->data[rd].intVal))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 90):
			{
				NI rb_85;
				NI rc_56;
				NI rd_2;
				tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA* rcAddr;
				NimStringDesc* T670_;
				NI T671_;
				rb_85 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_56 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				pc += ((NI) 1);
				rd_2 = ((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(8ULL)) & 65535ULL)));
				rcAddr = (&regs->data[rc_56]);
				{
					if (!((*rcAddr).kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4))) goto LA664_;
					rcAddr = (*rcAddr).regAddr;
				}
				goto LA662_;
				LA664_: ;
				{
					tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T669_;
					if (!!((regs->data[rc_56].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3)))) goto LA667_;
					nimZeroMem((void*)(&T669_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
					nimZeroMem((void*)(&T669_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
					T669_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3);
					genericShallowAssign((void*)(&regs->data[rc_56]), (void*)(&T669_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
				}
				goto LA662_;
				LA667_: ;
				LA662_: ;
				T670_ = (NimStringDesc*)0;
				T670_ = (*regs->data[rb_85].node)._kind_3.strVal;
				T671_ = (NI)0;
				T671_ = nimParseBiggestFloat(T670_, (&(*rcAddr).floatVal), ((NI) (regs->data[rd_2].intVal)));
				regs->data[ra].intVal = ((NI64) (T671_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 101):
			{
				NI rb_86;
				NI rc_57;
				rb_86 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_57 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				{
					NIM_BOOL T675_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T676_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T677_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T678_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T680_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T681_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T682_;
					tyArray__Re75IspeoxXy2oCZHwcRrA T685_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T686_;
					NimStringDesc* T687_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T688_;
					NimStringDesc* T689_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T690_;
					NimStringDesc* T691_;
					NimStringDesc* T692_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T693_;
					T675_ = (NIM_BOOL)0;
					T676_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T676_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_86]);
					T677_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T677_ = T676_;
					T678_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T678_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
					T675_ = leValueConv__hutrgrWnBjOoG19cbpgmANA(T677_, T678_);
					if (!(T675_)) goto LA679_;
					T680_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T680_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
					T681_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T681_ = T680_;
					T682_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T682_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_57]);
					T675_ = leValueConv__hutrgrWnBjOoG19cbpgmANA(T681_, T682_);
					LA679_: ;
					if (!!(T675_)) goto LA683_;
					nimZeroMem((void*)T685_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
					T686_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T686_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
					T685_[0] = dollar___qX5C9b0n9bOP7jk69amC8dA7A(T686_);
					T687_ = (NimStringDesc*)0;
					T688_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T688_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_86]);
					T689_ = (NimStringDesc*)0;
					T689_ = dollar___qX5C9b0n9bOP7jk69amC8dA7A(T688_);
					T690_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T690_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rc_57]);
					T691_ = (NimStringDesc*)0;
					T691_ = dollar___qX5C9b0n9bOP7jk69amC8dA7A(T690_);
					T687_ = rawNewString((T689_ ? T689_->Sup.len : 0) + (T691_ ? T691_->Sup.len : 0) + 4);
appendString(T687_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_149));
appendString(T687_, T689_);
appendString(T687_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_83));
appendString(T687_, T691_);
appendString(T687_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_150));
					T685_[1] = T687_;
					T692_ = (NimStringDesc*)0;
					T692_ = nsuFormatOpenArray(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_148), T685_, 2);
					nimZeroMem((void*)(&T693_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T692_, T693_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA683_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 152):
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 153):
			{
				NI rb_87;
				NI rc_58;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* bb;
				NIM_BOOL isClosure;
				tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc;
				rb_87 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_58 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				bb = regs->data[rb_87].node;
				isClosure = ((*bb).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160));
				{
					if (!!(isClosure)) goto LA697_;
					prc = (*bb)._kind_4.sym;
				}
				goto LA695_;
				LA697_: ;
				{
					prc = (*(*bb)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
				}
				LA695_: ;
				{
					tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA T704_;
					if (!((*prc).offset < ((NI) -1))) goto LA702_;
					nimZeroMem((void*)(&T704_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
					nimZeroMem((void*)(&T704_), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
					T704_.ra = ((NI) (ra));
					T704_.rb = ((NI) (rb_87));
					T704_.rc = ((NI) (rc_58));
					T704_.slots = ((tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA*) ((&regs->data[((NI) 0)])));
					T704_.currentException = (*c).currentExceptionA;
					T704_.currentLineInfo = (*c).debug->data[pc];
					(*c).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClE_0? (*c).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClP_0((&T704_), (*c).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClE_0):((TM__pyAIA9cUF0h9c4j2HfNQPfYw_151)((*c).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClP_0))((&T704_));
				}
				goto LA700_;
				LA702_: ;
				{
					NIM_BOOL T706_;
					T706_ = (NIM_BOOL)0;
					T706_ = importcCond__FdCkMWi1o9ccnUFjzZDi9aUg_2vmgen(prc);
					if (!T706_) goto LA707_;
					{
						if (!!((((*(*c).config).features &((NU16)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 10))&15U)))!=0))) goto LA711_;
						liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*c).debug->data[pc], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_152), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_153, NIM_FALSE);
					}
					LA711_: ;
					liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*c).debug->data[pc], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_154), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_155, NIM_FALSE);
				}
				goto LA700_;
				LA707_: ;
				{
					NI newPc_2;
					tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* newFrame;
					tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T733_;
					if (!!(((*prc).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 18)))) goto LA714_;
					newPc_2 = compile__wk4OXe22qII4FFHuYMKF5Q(c, prc);
					{
						if (!(newPc_2 < pc)) goto LA718_;
						{
							if (!((*c).loopIterations <= ((NI) 0))) goto LA722_;
							{
								if (!(((*c).features &((NU8)1<<((NU)(((tyEnum_TSandboxFlag__JyPEhkAmDAldmLHNNrLR0A) 1))&7U)))!=0)) goto LA726_;
								(*c).loopIterations = (*(*c).config).maxLoopIterationsVM;
							}
							goto LA724_;
							LA726_: ;
							{
								tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T729_;
								tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T730_;
								NimStringDesc* T731_;
								NimStringDesc* T732_;
								msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_94), 0);
								stackTraceAux__mtjZlZD2xSyaebZUBpGCHA(c, tos_2, pc, ((NI) 100));
								T729_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
								T729_ = (*c).config;
								T730_ = (*c).debug->data[pc];
								T731_ = (NimStringDesc*)0;
								T731_ = nimIntToStr((*(*c).config).maxLoopIterationsVM);
								T732_ = (NimStringDesc*)0;
								T732_ = nsuFormatSingleElem(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_156), T731_);
								liMessage__Q6JNH4uRwLyZrj0dJakHew(T729_, T730_, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), T732_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_157, NIM_FALSE);
							}
							LA724_: ;
						}
						LA722_: ;
						(*c).loopIterations -= ((NI) 1);
					}
					LA718_: ;
					T733_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
					T733_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
					asgnRef((void**) (&(*T733_).prc), prc);
					(*T733_).comesFrom = pc;
					asgnRef((void**) (&(*T733_).next), tos_2);
					newFrame = T733_;
					if ((*newFrame).slots) { nimGCunrefNoCycle((*newFrame).slots); (*newFrame).slots = NIM_NIL; }
					(*newFrame).slots = (tySequence__jlXqfsdfoRhiIfoVNWV0Vw*) newSeqRC1((&NTI__jlXqfsdfoRhiIfoVNWV0Vw_), ((NI) ((NI)((*prc).offset + isClosure))));
					{
						NIM_BOOL T736_;
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T739_;
						T736_ = (NIM_BOOL)0;
						T736_ = isEmptyType__nPImuPGZIdcrAfCNyf4oxA_2ast((*(*prc).typ).sons->data[((NI) 0)]);
						if (!!(T736_)) goto LA737_;
						T739_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
						T739_ = getNullValue__MirnaGAtIj7Yo4Gl5MzUxA((*(*prc).typ).sons->data[((NI) 0)], (*prc).info, (*c).config);
						putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ((&(*newFrame).slots->data[((NI) 0)]), T739_);
					}
					LA737_: ;
					{
						NI i_7;
						NI colontmp__6;
						NI res_3;
						i_7 = (NI)0;
						colontmp__6 = (NI)0;
						colontmp__6 = (NI)(((NI) (rc_58)) - ((NI) 1));
						res_3 = ((NI) 1);
						{
							while (1) {
								if (!(res_3 <= colontmp__6)) goto LA742;
								i_7 = res_3;
								genericAssign((void*)(&(*newFrame).slots->data[i_7]), (void*)(&regs->data[(NI)(((NI) (rb_87)) + i_7)]), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
								res_3 += ((NI) 1);
							} LA742: ;
						}
					}
					{
						tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T747_;
						if (!isClosure) goto LA745_;
						nimZeroMem((void*)(&T747_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
						nimZeroMem((void*)(&T747_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
						T747_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
						T747_.node = (*regs->data[rb_87].node)._kind_6.sons->data[((NI) 1)];
						genericShallowAssign((void*)(&(*newFrame).slots->data[rc_58]), (void*)(&T747_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
					}
					LA745_: ;
					tos_2 = newFrame;
					regs = (*newFrame).slots;
					pc = (NI)(newPc_2 - ((NI) 1));
				}
				goto LA700_;
				LA714_: ;
				{
					tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* genSymOwner;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* macroCall;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T756_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_7;
					{
						NIM_BOOL T751_;
						T751_ = (NIM_BOOL)0;
						T751_ = !(((*tos_2).next == NIM_NIL));
						if (!(T751_)) goto LA752_;
						T751_ = !(((*(*tos_2).next).prc == NIM_NIL));
						LA752_: ;
						if (!T751_) goto LA753_;
						genSymOwner = (*(*tos_2).next).prc;
					}
					goto LA749_;
					LA753_: ;
					{
						genSymOwner = (*c).module;
					}
					LA749_: ;
					macroCall = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), (*c).debug->data[pc]);
					T756_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T756_ = newSymNode__I2DV2TmmOysY1ZEGW19b9bRg(prc);
					add__P8dDSotTW25BkfbyspojGg(macroCall, T756_);
					{
						NI i_8;
						NI colontmp__7;
						NI res_4;
						i_8 = (NI)0;
						colontmp__7 = (NI)0;
						colontmp__7 = (NI)(((NI) (rc_58)) - ((NI) 1));
						res_4 = ((NI) 1);
						{
							while (1) {
								tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node;
								if (!(res_4 <= colontmp__7)) goto LA759;
								i_8 = res_4;
								node = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[(NI)(((NI) (rb_87)) + i_8)]);
								(*node).info = (*c).debug->data[pc];
								add__P8dDSotTW25BkfbyspojGg(macroCall, node);
								res_4 += ((NI) 1);
							} LA759: ;
						}
					}
					a_7 = evalTemplate__MnrgLhOl4U6sn3rRD19cz9bA(macroCall, prc, genSymOwner, (*c).config, (*c).cache, (*c).templInstCounter, NIM_FALSE);
					{
						NIM_BOOL T762_;
						NI T764_;
						T762_ = (NIM_BOOL)0;
						T762_ = ((*a_7).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115));
						if (!(T762_)) goto LA763_;
						T764_ = (NI)0;
						T764_ = len__P89cqdlERShb9alU3iC0yj8wast(a_7);
						T762_ = (T764_ == ((NI) 1));
						LA763_: ;
						if (!T762_) goto LA765_;
						a_7 = (*a_7)._kind_6.sons->data[((NI) 0)];
					}
					LA765_: ;
					recSetFlagIsRef__m4MZYLogGqol1qN5L4LLzA(a_7);
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					asgnRef((void**) (&regs->data[ra].node), a_7);
				}
				LA700_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 159):
			{
				NI rbx;
				rbx = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				{
					if (!!((regs->data[ra].intVal == IL64(0)))) goto LA770_;
					pc += rbx;
				}
				LA770_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 160):
			{
				NI rbx_2;
				rbx_2 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				{
					if (!(regs->data[ra].intVal == IL64(0))) goto LA775_;
					pc += rbx_2;
				}
				LA775_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 161):
			{
				NI rbx_3;
				rbx_3 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				pc += rbx_3;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 162):
			{
				NI rbx_4;
				rbx_4 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				pc += rbx_4;
				{
					if (!((*c).loopIterations <= ((NI) 0))) goto LA781_;
					{
						if (!(((*c).features &((NU8)1<<((NU)(((tyEnum_TSandboxFlag__JyPEhkAmDAldmLHNNrLR0A) 1))&7U)))!=0)) goto LA785_;
						(*c).loopIterations = (*(*c).config).maxLoopIterationsVM;
					}
					goto LA783_;
					LA785_: ;
					{
						tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T788_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T789_;
						NimStringDesc* T790_;
						NimStringDesc* T791_;
						msgWriteln__PO49anyWCbe63GYNOs9cVuvg((*c).config, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_94), 0);
						stackTraceAux__mtjZlZD2xSyaebZUBpGCHA(c, tos_2, pc, ((NI) 100));
						T788_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
						T788_ = (*c).config;
						T789_ = (*c).debug->data[pc];
						T790_ = (NimStringDesc*)0;
						T790_ = nimIntToStr((*(*c).config).maxLoopIterationsVM);
						T791_ = (NimStringDesc*)0;
						T791_ = nsuFormatSingleElem(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_156), T790_);
						liMessage__Q6JNH4uRwLyZrj0dJakHew(T788_, T789_, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), T791_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_157, NIM_FALSE);
					}
					LA783_: ;
				}
				LA781_: ;
				(*c).loopIterations -= ((NI) 1);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 163):
			{
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
				NIM_BOOL cond;
				branch = (*(*c).constants)._kind_6.sons->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				cond = NIM_FALSE;
				{
					NI j;
					NI colontmp__8;
					NI T794_;
					NI i_9;
					j = (NI)0;
					colontmp__8 = (NI)0;
					T794_ = (NI)0;
					T794_ = len__P89cqdlERShb9alU3iC0yj8wast(branch);
					colontmp__8 = (NI)(T794_ - ((NI) 1));
					i_9 = ((NI) 0);
					{
						while (1) {
							if (!(i_9 < colontmp__8)) goto LA796;
							j = i_9;
							{
								tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T799_;
								NIM_BOOL T800_;
								T799_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
								T799_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
								T800_ = (NIM_BOOL)0;
								T800_ = overlap__tlIBRycg3YyKwtO2aPbGGg(T799_, (*branch)._kind_6.sons->data[j]);
								if (!T800_) goto LA801_;
								cond = NIM_TRUE;
								goto LA793;
							}
							LA801_: ;
							i_9 += ((NI) 1);
						} LA796: ;
					}
				} LA793: ;
				pc += ((NI) 1);
				{
					NU64 instr2;
					NI rbx_5;
					if (!!(cond)) goto LA805_;
					instr2 = (*c).code->data[pc];
					rbx_5 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr2) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
					pc += rbx_5;
				}
				LA805_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 164):
			{
				NI rbx_6;
				rbx_6 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				pushSafePoint__p3zYfzQBzfCT3SxRCaHf5w(tos_2, (NI)(pc + rbx_6));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 165):
			{
				{
					if (!NIM_TRUE) goto LA811_;
					failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_158));
				}
				LA811_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 166):
			{
				{
					if (!!((savedPC < ((NI) 0)))) goto LA816_;
					failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_159));
				}
				LA816_: ;
				popSafePoint__xa6C5GGXE739bwyLex9aXRMQ(tos_2);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 167):
			{
				{
					if (!(((NI) 0) <= savedPC)) goto LA821_;
					pc = (NI)(savedPC - ((NI) 1));
					savedPC = ((NI) -1);
					{
						if (!!((tos_2 == savedFrame))) goto LA825_;
						tos_2 = savedFrame;
						regs = (*tos_2).slots;
					}
					LA825_: ;
				}
				LA821_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 154):
			{
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raised;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T833_;
				NimStringDesc* T834_;
				tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* frame;
				tyTuple__DcoP8zLFnBpow03kFN9cGhg jumpTo;
				{
					if (!(regs->data[ra].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0))) goto LA830_;
					raised = (*c).currentExceptionA;
				}
				goto LA828_;
				LA830_: ;
				{
					raised = regs->data[ra].node;
				}
				LA828_: ;
				asgnRef((void**) (&(*c).currentExceptionA), raised);
				T833_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T833_ = skipColon__UPSW0jLTX5qJL51YMUAHgw_3((*(*c).currentExceptionA)._kind_6.sons->data[((NI) 2)]);
				T834_ = (NimStringDesc*)0;
				T834_ = (*T833_)._kind_3.strVal; (*T833_)._kind_3.strVal = copyStringRC1((*(*(*(*(*c).currentExceptionA).typ).sym).name).s);
				if (T834_) nimGCunrefNoCycle(T834_);
				(*c).exceptionInstr = pc;
				frame = tos_2;
				jumpTo = findExceptionHandler__7B4YrjB9bwLzkHvmgkXfnUQ(c, frame, raised);
				{
					while (1) {
						NIM_BOOL T837_;
						T837_ = (NIM_BOOL)0;
						T837_ = (jumpTo.Field0 == ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 2));
						if (!(T837_)) goto LA838_;
						T837_ = !(((*frame).next == 0));
						LA838_: ;
						if (!T837_) goto LA836;
						frame = (*frame).next;
						jumpTo = findExceptionHandler__7B4YrjB9bwLzkHvmgkXfnUQ(c, frame, raised);
					} LA836: ;
				}
				switch (jumpTo.Field0) {
				case ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 0):
				{
					savedPC = ((NI) -1);
					pc = (NI)(jumpTo.Field1 - ((NI) 1));
					{
						if (!!((tos_2 == frame))) goto LA842_;
						tos_2 = frame;
						regs = (*tos_2).slots;
					}
					LA842_: ;
				}
				break;
				case ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 1):
				{
					savedPC = pc;
					savedFrame = tos_2;
					pc = (NI)(jumpTo.Field1 - ((NI) 1));
					{
						if (!!((tos_2 == frame))) goto LA847_;
						tos_2 = frame;
						regs = (*tos_2).slots;
					}
					LA847_: ;
				}
				break;
				case ((tyEnum_ExceptionGoto__fKsIcZFuoCVzaDYGV8ctbA) 2):
				{
					bailOut__s9cFy5TGKFXao9bSR9bgK0vTw(c, tos_2);
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 168):
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_2;
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				typ_2 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				asgnRef((void**) (&regs->data[ra].node), getNullValue__MirnaGAtIj7Yo4Gl5MzUxA(typ_2, (*c).debug->data[pc], (*c).config));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 169):
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_3;
				NU64 instr2_2;
				NI count;
				typ_3 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				pc += ((NI) 1);
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				instr2_2 = (*c).code->data[pc];
				count = ((NI) (regs->data[(NU64)((NU64)((NU64)(instr2_2) >> (NU64)(8ULL)) & 65535ULL)].intVal));
				asgnRef((void**) (&regs->data[ra].node), newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41), (*c).debug->data[pc]));
				asgnRef((void**) (&(*regs->data[ra].node).typ), typ_3);
				if ((*regs->data[ra].node)._kind_6.sons) { nimGCunrefNoCycle((*regs->data[ra].node)._kind_6.sons); (*regs->data[ra].node)._kind_6.sons = NIM_NIL; }
				(*regs->data[ra].node)._kind_6.sons = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTI__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (count)));
				{
					NI i_10;
					NI i_11;
					i_10 = (NI)0;
					i_11 = ((NI) 0);
					{
						while (1) {
							if (!(i_11 < count)) goto LA854;
							i_10 = i_11;
							asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons->data[i_10]), getNullValue__MirnaGAtIj7Yo4Gl5MzUxA((*typ_3).sons->data[((NI) 0)], (*c).debug->data[pc], (*c).config));
							i_11 += ((NI) 1);
						} LA854: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 158):
			{
				NI rb_88;
				rb_88 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), (*c).debug->data[pc]));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), mnewString(((NI) (((NI) (regs->data[rb_88].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 178):
			{
				NI rbx_7;
				rbx_7 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) (rbx_7));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 170):
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_4;
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				typ_4 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				asgnRef((void**) (&regs->data[ra].node), getNullValue__MirnaGAtIj7Yo4Gl5MzUxA(typ_4, (*c).debug->data[pc], (*c).config));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 171):
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_5;
				typ_5 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* T861_;
					T861_ = (tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ*)0;
					T861_ = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg(typ_5, IL64(36134350136322064));
					if (!((IL64(1030792151040) &((NU64)1<<((NU)((*T861_).kind)&63U)))!=0)) goto LA862_;
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
					regs->data[ra].floatVal = 0.0;
				}
				goto LA859_;
				LA862_: ;
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
					regs->data[ra].intVal = IL64(0);
				}
				LA859_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 172):
			{
				NI rb_89;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cnst;
				rb_89 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				cnst = (*(*c).constants)._kind_6.sons->data[rb_89];
				{
					NIM_BOOL T868_;
					T868_ = (NIM_BOOL)0;
					T868_ = fitsRegister__NRltpJT49cakdDyz9a9cNr4Kw((*cnst).typ);
					if (!T868_) goto LA869_;
					reset__PQ29bzVEjUtJukXgkwDQPoQ((&regs->data[ra]));
					putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ((&regs->data[ra]), cnst);
				}
				goto LA866_;
				LA869_: ;
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					asgnRef((void**) (&regs->data[ra].node), cnst);
				}
				LA866_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 173):
			{
				NI rb_90;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cnst_2;
				rb_90 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				cnst_2 = (*(*c).constants)._kind_6.sons->data[rb_90];
				{
					NIM_BOOL T875_;
					T875_ = (NIM_BOOL)0;
					T875_ = fitsRegister__NRltpJT49cakdDyz9a9cNr4Kw((*cnst_2).typ);
					if (!T875_) goto LA876_;
					putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ((&regs->data[ra]), cnst_2);
				}
				goto LA873_;
				LA876_: ;
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					asgnRef((void**) (&regs->data[ra].node), copyTree__Dsjo9bte8vGxzhtcSrsTyiQ(cnst_2));
				}
				LA873_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 174):
			{
				NI rb_91;
				rb_91 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), (*(*c).globals)._kind_6.sons->data[rb_91]);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 176):
			{
				NI rb_92;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node_2;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_6;
				rb_92 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				node_2 = (*(*c).globals)._kind_6.sons->data[rb_92];
				typ_6 = (*node_2).typ;
				{
					NimStringDesc* T885_;
					if (!!(((*node_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6)))) goto LA883_;
					T885_ = (NimStringDesc*)0;
					T885_ = rawNewString((reprEnum((NI)(*node_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*node_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 41);
appendString(T885_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_162));
appendString(T885_, reprEnum((NI)(*node_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
					failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(T885_);
				}
				LA883_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node2_2;
					if (!((*typ_6).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA888_;
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					node2_2 = newNodeIT__2kgyckjaq2XB9bxBo5ZeIbg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), (*c).debug->data[pc], typ_6);
					(*node2_2)._kind_1.intVal = ((NI64) ((*((NI*) ((*node_2)._kind_1.intVal)))));
					(*node2_2).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 14)) & 31);
					asgnRef((void**) (&regs->data[ra].node), node2_2);
				}
				goto LA886_;
				LA888_: ;
				{
					NIM_BOOL T891_;
					NimStringDesc* T894_;
					tyTuple__9cqHuynYNPU9avbszh3XtBAg T895_;
					NimStringDesc* T896_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T897_;
					T891_ = (NIM_BOOL)0;
					T891_ = derefPtrToReg__rneu4wkryXcUJeguyyc5lw((*node_2)._kind_1.intVal, typ_6, (&regs->data[ra]), NIM_FALSE);
					if (!!(T891_)) goto LA892_;
					T894_ = (NimStringDesc*)0;
					nimZeroMem((void*)(&T895_), sizeof(tyTuple__9cqHuynYNPU9avbszh3XtBAg));
					T895_.Field0 = typeToString__QlvraUan7WbHowhAbvDvdA(typ_6, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
					T895_.Field1 = (*(*typ_6).sons->data[((NI) 0)]).kind;
					T896_ = (NimStringDesc*)0;
					T896_ = dollar___XSFzZuEhhtAqOvJ5uRr9cuA(T895_);
					T894_ = rawNewString((T896_ ? T896_->Sup.len : 0) + 29);
appendString(T894_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_163));
appendString(T894_, T896_);
					nimZeroMem((void*)(&T897_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T894_, T897_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA886_;
				LA892_: ;
				LA886_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 177):
			{
				NI rb_93;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node_3;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_7;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node2_3;
				rb_93 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				node_3 = (*(*c).globals)._kind_6.sons->data[rb_93];
				typ_7 = (*node_3).typ;
				node2_3 = newNodeIT__2kgyckjaq2XB9bxBo5ZeIbg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), (*node_3).info, typ_7);
				(*node2_3)._kind_1.intVal = (*node_3)._kind_1.intVal;
				(*node2_3).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 14)) & 31);
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), node2_3);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 175):
			{
				NI rb_94;
				rb_94 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5));
				regs->data[ra].nodeAddr = &(*(*c).globals)._kind_6.sons->data[rb_94];
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 83):
			{
				NI rb_95;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T901_;
				rb_95 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				T901_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T901_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_95]);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), renderTree__ppjdh9aQ5L0SGPF8yz1gZ9cA(T901_, 12));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 93):
			{
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T907_;
					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T908_;
					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T909_;
					NI T910_;
					if (!((25 &((NU8)1<<((NU)((*c).mode)&7U)))!=0)) goto LA905_;
					liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*c).debug->data[pc], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 61), ((NimStringDesc*) NIM_NIL), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__pyAIA9cUF0h9c4j2HfNQPfYw_164, NIM_FALSE);
					T907_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T907_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
					T908_ = toInt128__161i7kexvUAISxPtGBRWYw(((NI) 1));
					T909_ = getOrdValue__GvVg8kpCh7QA2PDTJnFJlQ(T907_, T908_);
					T910_ = (NI)0;
					T910_ = toInt__TIX0sFuRf3uBpOBltYp7bw(T909_);
					msgQuit__PlZXt6qHCDDk29c9ac4IuLGA(((NI8) (T910_)));
				}
				goto LA903_;
				LA905_: ;
				{
					switch ((*Result).kind) {
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0):
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2):
					(*Result).intVal = 0;
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3):
					(*Result).floatVal = 0;
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1):
					unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 4):
					(*Result).regAddr = NIM_NIL;
					break;
					case ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 5):
					(*Result).nodeAddr = NIM_NIL;
					break;
					} 
					(*Result).kind = 0;
					(*Result).kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 0);
					goto BeforeRet_;
				}
				LA903_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 94):
			{
				NimStringDesc* T913_;
				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T914_;
				T913_ = (NimStringDesc*)0;
				T913_ = rawNewString(((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0) + 18);
appendString(T913_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_165));
appendString(T913_, (*regs->data[ra].node)._kind_3.strVal);
				nimZeroMem((void*)(&T914_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
				stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T913_, T914_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
				goto BeforeRet_;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 84):
			{
				NI rb_96;
				rb_96 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), setLengthStr((*regs->data[ra].node)._kind_3.strVal, ((NI) (((NI) (regs->data[rb_96].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 87):
			{
				NI rb_97;
				NI rc_59;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_8;
				NI T917_;
				rb_97 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_59 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				typ_8 = (*c).types->data[regs->data[rc_59].intVal];
				T917_ = (NI)0;
				T917_ = inheritanceDiff__1dM2iQB5qStJfnn3684ijQ_2((*regs->data[rb_97].node).typ, typ_8);
				regs->data[ra].intVal = ((NI64) ((T917_ <= ((NI) 0))));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 88):
			{
				NI rb_98;
				NI rc_60;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t1;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* t2;
				NIM_BOOL match;
				rb_98 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_60 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				t1 = skipTypes__zsqmUNR5OZrTUna0Y9bdu9bg((*regs->data[rb_98].node).typ, 256);
				t2 = (*c).types->data[regs->data[rc_60].intVal];
				{
					if (!((*t2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52))) goto LA921_;
					match = NIM_TRUE;
				}
				goto LA919_;
				LA921_: ;
				{
					match = sameType__3isNyHKb0U1OCnClmflXSg(t1, t2, 0);
				}
				LA919_: ;
				regs->data[ra].intVal = ((NI64) (match));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 85):
			{
				NI rb_99;
				NI newLen;
				rb_99 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				newLen = ((NI) (regs->data[rb_99].intVal));
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T929_;
					if (!(regs->data[ra].node == 0)) goto LA927_;
					nimZeroMem((void*)(&T929_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_138), T929_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA925_;
				LA927_: ;
				{
					setLenSeq__KXA4RY1gNwE3eOYKOBnMZw(c, regs->data[ra].node, newLen, (*c).debug->data[pc]);
				}
				LA925_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 95):
			{
				NI rb_100;
				NI64 min;
				NI64 max;
				rb_100 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				min = -((NI64)((NU64)(IL64(1)) << (NU64)((NI)(((NI) (rb_100)) - ((NI) 1)))));
				max = (NI64)((NI64)((NU64)(IL64(1)) << (NU64)((NI)(((NI) (rb_100)) - ((NI) 1)))) - IL64(1));
				{
					NIM_BOOL T934_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T938_;
					T934_ = (NIM_BOOL)0;
					T934_ = (regs->data[ra].intVal < min);
					if (T934_) goto LA935_;
					T934_ = (max < regs->data[ra].intVal);
					LA935_: ;
					if (!T934_) goto LA936_;
					nimZeroMem((void*)(&T938_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_166), T938_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA936_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 96):
			{
				NI rb_101;
				rb_101 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = (NI64)(regs->data[ra].intVal & (NI64)((NI64)((NU64)(IL64(1)) << (NU64)(((NI) (rb_101)))) - IL64(1)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 97):
			{
				NI rb_102;
				NI imm_6;
				rb_102 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				imm_6 = (NI)(((NI) 64) - ((NI) (rb_102)));
				regs->data[ra].intVal = (NI64)((NI64)((NI64)((NU64)(regs->data[ra].intVal) << (NU64)(imm_6))) >> (NU64)(imm_6));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 86):
			{
				NI rb_103;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node_4;
				NIM_BOOL T942_;
				NIM_BOOL T943_;
				NIM_BOOL T946_;
				NIM_BOOL T947_;
				NIM_BOOL T948_;
				NIM_BOOL T949_;
				rb_103 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				node_4 = regs->data[rb_103].node;
				T942_ = (NIM_BOOL)0;
				T943_ = (NIM_BOOL)0;
				T943_ = ((*node_4).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
				if (!(T943_)) goto LA944_;
				T943_ = !((((*node_4).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13))&31U)))!=0));
				LA944_: ;
				T942_ = T943_;
				if (T942_) goto LA945_;
				T946_ = (NIM_BOOL)0;
				T947_ = (NIM_BOOL)0;
				T948_ = (NIM_BOOL)0;
				T949_ = (NIM_BOOL)0;
				T949_ = !(((*node_4).typ == 0));
				if (!(T949_)) goto LA950_;
				T949_ = ((*(*node_4).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
				LA950_: ;
				T948_ = T949_;
				if (!(T948_)) goto LA951_;
				T948_ = ((*(*node_4).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
				LA951_: ;
				T947_ = T948_;
				if (!(T947_)) goto LA952_;
				T947_ = ((*(*node_4)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
				LA952_: ;
				T946_ = T947_;
				if (!(T946_)) goto LA953_;
				T946_ = ((*(*node_4)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
				LA953_: ;
				T942_ = T946_;
				LA945_: ;
				regs->data[ra].intVal = ((NI64) (T942_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 179):
			{
				NI rbx_8;
				rbx_8 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), copyTree__Dsjo9bte8vGxzhtcSrsTyiQ((*(*c).constants)._kind_6.sons->data[rbx_8]));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 180):
			{
				NI rb_104;
				NI rc_61;
				NI idx_6;
				tyProc__5QC9cKfPJmKuW0XbCTd8ylA callback;
				tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA args;
				rb_104 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_61 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				idx_6 = ((NI) (regs->data[(NI)((NI)(((NI) (rb_104)) + ((NI) (rc_61))) - ((NI) 1))].intVal));
				nimZeroMem((void*)(&callback), sizeof(tyProc__5QC9cKfPJmKuW0XbCTd8ylA));
				callback.ClE_0 = (*c).callbacks->data[idx_6].Field1.ClE_0;
				callback.ClP_0 = (*c).callbacks->data[idx_6].Field1.ClP_0;
				nimZeroMem((void*)(&args), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
				nimZeroMem((void*)(&args), sizeof(tyObject_VmArgs__0UUl6e5CNNQfMon2xW2bVA));
				args.ra = ((NI) (ra));
				args.rb = ((NI) (rb_104));
				args.rc = ((NI) (rc_61));
				args.slots = ((tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA*) ((&regs->data[((NI) 0)])));
				args.currentException = (*c).currentExceptionA;
				args.currentLineInfo = (*c).debug->data[pc];
				callback.ClE_0? callback.ClP_0((&args), callback.ClE_0):((TM__pyAIA9cUF0h9c4j2HfNQPfYw_167)(callback.ClP_0))((&args));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 155):
			{
				NI rb_105;
				NI rc_62;
				NI idx_7;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src_5;
				rb_105 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_62 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				idx_7 = ((NI) (regs->data[rc_62].intVal));
				src_5 = regs->data[rb_105].node;
				{
					NimStringDesc* T961_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T962_;
					if (!((*src_5).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*src_5).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA959_;
					T961_ = (NimStringDesc*)0;
					T961_ = rawNewString((reprEnum((NI)(*src_5).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*src_5).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 32);
appendString(T961_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_168));
appendString(T961_, reprEnum((NI)(*src_5).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
					nimZeroMem((void*)(&T962_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T961_, T962_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA957_;
				LA959_: ;
				{
					NI T964_;
					NIM_BOOL T965_;
					NimStringDesc* T968_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T979_;
					T964_ = (NI)0;
					T964_ = len__P89cqdlERShb9alU3iC0yj8wast(src_5);
					T965_ = (NIM_BOOL)0;
					T965_ = lteqpercent___hPljn3JCDQ00ua1R07X9bxQ_2system(T964_, idx_7);
					if (!T965_) goto LA966_;
					T968_ = (NimStringDesc*)0;
					{
						NI T971_;
						T971_ = (NI)0;
						T971_ = len__P89cqdlERShb9alU3iC0yj8wast(src_5);
						if (!((NI)(T971_ - ((NI) 1)) < ((NI) 0))) goto LA972_;
						T968_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA969_;
					LA972_: ;
					{
						NimStringDesc* T975_;
						NimStringDesc* T976_;
						NI T977_;
						NimStringDesc* T978_;
						T975_ = (NimStringDesc*)0;
						T976_ = (NimStringDesc*)0;
						T976_ = nimIntToStr(idx_7);
						T977_ = (NI)0;
						T977_ = len__P89cqdlERShb9alU3iC0yj8wast(src_5);
						T978_ = (NimStringDesc*)0;
						T978_ = nimIntToStr((NI)(T977_ - ((NI) 1)));
						T975_ = rawNewString((T976_ ? T976_->Sup.len : 0) + (T978_ ? T978_->Sup.len : 0) + 19);
appendString(T975_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T975_, T976_);
appendString(T975_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T975_, T978_);
						T968_ = T975_;
					}
					LA969_: ;
					nimZeroMem((void*)(&T979_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T968_, T979_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA957_;
				LA966_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), (*src_5)._kind_6.sons->data[idx_7]);
				}
				LA957_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 156):
			{
				NI rb_106;
				NI rc_63;
				NI idx_8;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_2;
				rb_106 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_63 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				idx_8 = ((NI) (regs->data[rb_106].intVal));
				dest_2 = regs->data[ra].node;
				{
					NIM_BOOL T984_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T988_;
					T984_ = (NIM_BOOL)0;
					T984_ = (((*dest_2).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 7))&31U)))!=0);
					if (!(T984_)) goto LA985_;
					T984_ = !((((*(*c).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA) 0))&7U)))!=0));
					LA985_: ;
					if (!T984_) goto LA986_;
					nimZeroMem((void*)(&T988_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_169), T988_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA982_;
				LA986_: ;
				{
					NimStringDesc* T992_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T993_;
					if (!((*dest_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*dest_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA990_;
					T992_ = (NimStringDesc*)0;
					T992_ = rawNewString((reprEnum((NI)(*dest_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*dest_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 32);
appendString(T992_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_170));
appendString(T992_, reprEnum((NI)(*dest_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
					nimZeroMem((void*)(&T993_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T992_, T993_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA982_;
				LA990_: ;
				{
					NI T995_;
					NIM_BOOL T996_;
					NimStringDesc* T999_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1010_;
					T995_ = (NI)0;
					T995_ = len__P89cqdlERShb9alU3iC0yj8wast(dest_2);
					T996_ = (NIM_BOOL)0;
					T996_ = lteqpercent___hPljn3JCDQ00ua1R07X9bxQ_2system(T995_, idx_8);
					if (!T996_) goto LA997_;
					T999_ = (NimStringDesc*)0;
					{
						NI T1002_;
						T1002_ = (NI)0;
						T1002_ = len__P89cqdlERShb9alU3iC0yj8wast(dest_2);
						if (!((NI)(T1002_ - ((NI) 1)) < ((NI) 0))) goto LA1003_;
						T999_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA1000_;
					LA1003_: ;
					{
						NimStringDesc* T1006_;
						NimStringDesc* T1007_;
						NI T1008_;
						NimStringDesc* T1009_;
						T1006_ = (NimStringDesc*)0;
						T1007_ = (NimStringDesc*)0;
						T1007_ = nimIntToStr(idx_8);
						T1008_ = (NI)0;
						T1008_ = len__P89cqdlERShb9alU3iC0yj8wast(dest_2);
						T1009_ = (NimStringDesc*)0;
						T1009_ = nimIntToStr((NI)(T1008_ - ((NI) 1)));
						T1006_ = rawNewString((T1007_ ? T1007_->Sup.len : 0) + (T1009_ ? T1009_->Sup.len : 0) + 19);
appendString(T1006_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T1006_, T1007_);
appendString(T1006_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T1006_, T1009_);
						T999_ = T1006_;
					}
					LA1000_: ;
					nimZeroMem((void*)(&T1010_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T999_, T1010_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA982_;
				LA997_: ;
				{
					asgnRef((void**) (&(*dest_2)._kind_6.sons->data[idx_8]), regs->data[rc_63].node);
				}
				LA982_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 102):
			{
				NI rb_107;
				NI rc_64;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* u;
				rb_107 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_64 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				u = regs->data[rb_107].node;
				{
					NIM_BOOL T1015_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1019_;
					T1015_ = (NIM_BOOL)0;
					T1015_ = (((*u).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 7))&31U)))!=0);
					if (!(T1015_)) goto LA1016_;
					T1015_ = !((((*(*c).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA) 0))&7U)))!=0));
					LA1016_: ;
					if (!T1015_) goto LA1017_;
					nimZeroMem((void*)(&T1019_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_169), T1019_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1013_;
				LA1017_: ;
				{
					NimStringDesc* T1023_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1024_;
					if (!((*u).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*u).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA1021_;
					T1023_ = (NimStringDesc*)0;
					T1023_ = rawNewString((reprEnum((NI)(*u).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*u).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 26);
appendString(T1023_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_171));
appendString(T1023_, reprEnum((NI)(*u).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
					nimZeroMem((void*)(&T1024_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1023_, T1024_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1013_;
				LA1021_: ;
				{
					add__P8dDSotTW25BkfbyspojGg(u, regs->data[rc_64].node);
				}
				LA1013_: ;
				asgnRef((void**) (&regs->data[ra].node), u);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 103):
			{
				NI rb_108;
				NI rc_65;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* u_2;
				rb_108 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_65 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				x = regs->data[rc_65].node;
				u_2 = regs->data[rb_108].node;
				{
					NIM_BOOL T1029_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1033_;
					T1029_ = (NIM_BOOL)0;
					T1029_ = (((*u_2).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 7))&31U)))!=0);
					if (!(T1029_)) goto LA1030_;
					T1029_ = !((((*(*c).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA) 0))&7U)))!=0));
					LA1030_: ;
					if (!T1029_) goto LA1031_;
					nimZeroMem((void*)(&T1033_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_169), T1033_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1027_;
				LA1031_: ;
				{
					NimStringDesc* T1037_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1038_;
					if (!((*u_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*u_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA1035_;
					T1037_ = (NimStringDesc*)0;
					T1037_ = rawNewString((reprEnum((NI)(*u_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*u_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 26);
appendString(T1037_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_171));
appendString(T1037_, reprEnum((NI)(*u_2).kind, (&NTI__G4E4Gxe7oI2Cm03rkiOzQw_)));
					nimZeroMem((void*)(&T1038_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1037_, T1038_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1027_;
				LA1035_: ;
				{
					{
						NI i_12;
						NI colontmp__9;
						NI i_13;
						i_12 = (NI)0;
						colontmp__9 = (NI)0;
						colontmp__9 = len__P89cqdlERShb9alU3iC0yj8wast(x);
						i_13 = ((NI) 0);
						{
							while (1) {
								if (!(i_13 < colontmp__9)) goto LA1042;
								i_12 = i_13;
								add__P8dDSotTW25BkfbyspojGg(u_2, (*x)._kind_6.sons->data[i_12]);
								i_13 += ((NI) 1);
							} LA1042: ;
						}
					}
				}
				LA1027_: ;
				asgnRef((void**) (&regs->data[ra].node), u_2);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 104):
			{
				NI rb_109;
				rb_109 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = ((NI64) ((*regs->data[rb_109].node).kind));
				(*c).comesFromHeuristic = (*regs->data[rb_109].node).info;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 105):
			{
				NI rb_110;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_8;
				rb_110 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				a_8 = regs->data[rb_110].node;
				{
					if (!((*a_8).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA1047_;
					regs->data[ra].intVal = ((NI64) ((*(*a_8)._kind_4.sym).kind));
				}
				goto LA1045_;
				LA1047_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1050_;
					nimZeroMem((void*)(&T1050_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_146), T1050_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1045_: ;
				(*c).comesFromHeuristic = (*regs->data[rb_110].node).info;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 106):
			{
				NI rb_111;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_9;
				rb_111 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				a_9 = regs->data[rb_111].node;
				{
					if (!((*a_9).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*a_9).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15))) goto LA1054_;
					regs->data[ra].intVal = (*a_9)._kind_1.intVal;
				}
				goto LA1052_;
				LA1054_: ;
				{
					NIM_BOOL T1057_;
					T1057_ = (NIM_BOOL)0;
					T1057_ = ((*a_9).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					if (!(T1057_)) goto LA1058_;
					T1057_ = ((*(*a_9)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 20));
					LA1058_: ;
					if (!T1057_) goto LA1059_;
					regs->data[ra].intVal = ((NI64) ((*(*a_9)._kind_4.sym).position));
				}
				goto LA1052_;
				LA1059_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1062_;
					nimZeroMem((void*)(&T1062_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_172), T1062_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1052_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 107):
			{
				NI rb_112;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_10;
				rb_112 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 3));
				a_10 = regs->data[rb_112].node;
				switch ((*a_10).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
				{
					regs->data[ra].floatVal = (*a_10)._kind_2.floatVal;
				}
				break;
				default:
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1066_;
					nimZeroMem((void*)(&T1066_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_173), T1066_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 108):
			{
				NI rb_113;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_11;
				rb_113 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_11 = regs->data[rb_113].node;
				{
					if (!((*a_11).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA1070_;
					asgnRef((void**) (&regs->data[ra].node), copyNode__Dsjo9bte8vGxzhtcSrsTyiQ_2(a_11));
				}
				goto LA1068_;
				LA1070_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1073_;
					nimZeroMem((void*)(&T1073_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_174), T1073_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1068_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 109):
			{
				NI rb_114;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_12;
				rb_114 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_12 = regs->data[rb_114].node;
				{
					if (!((*a_12).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2))) goto LA1077_;
					asgnRef((void**) (&regs->data[ra].node), copyNode__Dsjo9bte8vGxzhtcSrsTyiQ_2(a_12));
				}
				goto LA1075_;
				LA1077_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1080_;
					nimZeroMem((void*)(&T1080_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_175), T1080_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1075_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 136):
			{
				NI rb_115;
				rb_115 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				regs->data[ra].intVal = IL64(-1);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 110):
			{
				NI rb_116;
				NI rc_66;
				rb_116 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_66 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				switch (rc_66) {
				case ((NI) 0):
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					{
						NIM_BOOL T1086_;
						T1086_ = (NIM_BOOL)0;
						T1086_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1086_)) goto LA1087_;
						T1086_ = !(((*regs->data[rb_116].node).typ == NIM_NIL));
						LA1087_: ;
						if (!T1086_) goto LA1088_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeToAst__B7DYLotR9aw6o9cHZhrLIPGg_2((*c).cache, (*regs->data[rb_116].node).typ, (*c).debug->data[pc]));
					}
					goto LA1084_;
					LA1088_: ;
					{
						NIM_BOOL T1091_;
						NIM_BOOL T1092_;
						T1091_ = (NIM_BOOL)0;
						T1092_ = (NIM_BOOL)0;
						T1092_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1092_)) goto LA1093_;
						T1092_ = ((*regs->data[rb_116].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
						LA1093_: ;
						T1091_ = T1092_;
						if (!(T1091_)) goto LA1094_;
						T1091_ = !(((*(*regs->data[rb_116].node)._kind_4.sym).typ == NIM_NIL));
						LA1094_: ;
						if (!T1091_) goto LA1095_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeToAst__B7DYLotR9aw6o9cHZhrLIPGg_2((*c).cache, (*(*regs->data[rb_116].node)._kind_4.sym).typ, (*c).debug->data[pc]));
					}
					goto LA1084_;
					LA1095_: ;
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1098_;
						nimZeroMem((void*)(&T1098_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_176), T1098_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA1084_: ;
				}
				break;
				case ((NI) 1):
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
					{
						NIM_BOOL T1102_;
						T1102_ = (NIM_BOOL)0;
						T1102_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1102_)) goto LA1103_;
						T1102_ = !(((*regs->data[rb_116].node).typ == NIM_NIL));
						LA1103_: ;
						if (!T1102_) goto LA1104_;
						regs->data[ra].intVal = ((NI64) ((*(*regs->data[rb_116].node).typ).kind));
					}
					goto LA1100_;
					LA1104_: ;
					{
						NIM_BOOL T1107_;
						NIM_BOOL T1108_;
						T1107_ = (NIM_BOOL)0;
						T1108_ = (NIM_BOOL)0;
						T1108_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1108_)) goto LA1109_;
						T1108_ = ((*regs->data[rb_116].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
						LA1109_: ;
						T1107_ = T1108_;
						if (!(T1107_)) goto LA1110_;
						T1107_ = !(((*(*regs->data[rb_116].node)._kind_4.sym).typ == NIM_NIL));
						LA1110_: ;
						if (!T1107_) goto LA1111_;
						regs->data[ra].intVal = ((NI64) ((*(*(*regs->data[rb_116].node)._kind_4.sym).typ).kind));
					}
					goto LA1100_;
					LA1111_: ;
					LA1100_: ;
				}
				break;
				case ((NI) 2):
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					{
						NIM_BOOL T1116_;
						T1116_ = (NIM_BOOL)0;
						T1116_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1116_)) goto LA1117_;
						T1116_ = !(((*regs->data[rb_116].node).typ == NIM_NIL));
						LA1117_: ;
						if (!T1116_) goto LA1118_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeInstToAst__B7DYLotR9aw6o9cHZhrLIPGg((*c).cache, (*regs->data[rb_116].node).typ, (*c).debug->data[pc]));
					}
					goto LA1114_;
					LA1118_: ;
					{
						NIM_BOOL T1121_;
						NIM_BOOL T1122_;
						T1121_ = (NIM_BOOL)0;
						T1122_ = (NIM_BOOL)0;
						T1122_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1122_)) goto LA1123_;
						T1122_ = ((*regs->data[rb_116].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
						LA1123_: ;
						T1121_ = T1122_;
						if (!(T1121_)) goto LA1124_;
						T1121_ = !(((*(*regs->data[rb_116].node)._kind_4.sym).typ == NIM_NIL));
						LA1124_: ;
						if (!T1121_) goto LA1125_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeInstToAst__B7DYLotR9aw6o9cHZhrLIPGg((*c).cache, (*(*regs->data[rb_116].node)._kind_4.sym).typ, (*c).debug->data[pc]));
					}
					goto LA1114_;
					LA1125_: ;
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1128_;
						nimZeroMem((void*)(&T1128_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_176), T1128_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA1114_: ;
				}
				break;
				default:
				{
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					{
						NIM_BOOL T1132_;
						T1132_ = (NIM_BOOL)0;
						T1132_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1132_)) goto LA1133_;
						T1132_ = !(((*regs->data[rb_116].node).typ == NIM_NIL));
						LA1133_: ;
						if (!T1132_) goto LA1134_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeImplToAst__B7DYLotR9aw6o9cHZhrLIPGg_3((*c).cache, (*regs->data[rb_116].node).typ, (*c).debug->data[pc]));
					}
					goto LA1130_;
					LA1134_: ;
					{
						NIM_BOOL T1137_;
						NIM_BOOL T1138_;
						T1137_ = (NIM_BOOL)0;
						T1138_ = (NIM_BOOL)0;
						T1138_ = (regs->data[rb_116].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
						if (!(T1138_)) goto LA1139_;
						T1138_ = ((*regs->data[rb_116].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
						LA1139_: ;
						T1137_ = T1138_;
						if (!(T1137_)) goto LA1140_;
						T1137_ = !(((*(*regs->data[rb_116].node)._kind_4.sym).typ == NIM_NIL));
						LA1140_: ;
						if (!T1137_) goto LA1141_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeImplToAst__B7DYLotR9aw6o9cHZhrLIPGg_3((*c).cache, (*(*regs->data[rb_116].node)._kind_4.sym).typ, (*c).debug->data[pc]));
					}
					goto LA1130_;
					LA1141_: ;
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1144_;
						nimZeroMem((void*)(&T1144_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_176), T1144_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA1130_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 113):
			{
				NI rb_117;
				NI imm_7;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_5;
				rb_117 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_7 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				n_5 = regs->data[rb_117].node;
				switch (imm_7) {
				case ((NI) 0):
				{
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1151_;
						if (!((*n_5).typ == NIM_NIL)) goto LA1149_;
						nimZeroMem((void*)(&T1151_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_176), T1151_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					goto LA1147_;
					LA1149_: ;
					{
						regs->data[ra].intVal = getSize__vCG1GF2Iu043oALVyuJfOw((*c).config, (*n_5).typ);
					}
					LA1147_: ;
				}
				break;
				case ((NI) 1):
				{
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1158_;
						if (!((*n_5).typ == NIM_NIL)) goto LA1156_;
						nimZeroMem((void*)(&T1158_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_176), T1158_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					goto LA1154_;
					LA1156_: ;
					{
						regs->data[ra].intVal = getAlign__vCG1GF2Iu043oALVyuJfOw_2((*c).config, (*n_5).typ);
					}
					LA1154_: ;
				}
				break;
				default:
				{
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1165_;
						if (!!(((*n_5).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA1163_;
						nimZeroMem((void*)(&T1165_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_146), T1165_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					goto LA1161_;
					LA1163_: ;
					{
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1169_;
						if (!!(((*(*n_5)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19)))) goto LA1167_;
						nimZeroMem((void*)(&T1169_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_177), T1169_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					goto LA1161_;
					LA1167_: ;
					{
						regs->data[ra].intVal = ((NI64) ((*(*n_5)._kind_4.sym).offset));
					}
					LA1161_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 111):
			{
				NI rb_118;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_13;
				rb_118 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				a_13 = regs->data[rb_118].node;
				switch ((*a_13).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
				{
					NimStringDesc* T1173_;
					T1173_ = (NimStringDesc*)0;
					T1173_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*a_13)._kind_3.strVal);
					if (T1173_) nimGCunrefNoCycle(T1173_);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
				{
					NimStringDesc* T1175_;
					T1175_ = (NimStringDesc*)0;
					T1175_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*a_13).comment);
					if (T1175_) nimGCunrefNoCycle(T1175_);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
				{
					NimStringDesc* T1177_;
					T1177_ = (NimStringDesc*)0;
					T1177_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*(*a_13)._kind_5.ident).s);
					if (T1177_) nimGCunrefNoCycle(T1177_);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
				{
					NimStringDesc* T1179_;
					T1179_ = (NimStringDesc*)0;
					T1179_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*(*(*a_13)._kind_4.sym).name).s);
					if (T1179_) nimGCunrefNoCycle(T1179_);
				}
				break;
				default:
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1181_;
					nimZeroMem((void*)(&T1181_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_178), T1181_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 112):
			{
				NI rb_119;
				rb_119 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1187_;
					if (!!(((*regs->data[rb_119].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA1185_;
					nimZeroMem((void*)(&T1187_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_146), T1187_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1183_;
				LA1185_: ;
				{
					tyArray__qtqsWM5aXmcpMIVmvq3kAA T1189_;
					nimZeroMem((void*)T1189_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
					sigHash__mSn9a9aX0NBzWqerwPW0qRww_2((*regs->data[rb_119].node)._kind_4.sym, T1189_);
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), dollar___0A9bslyIJ49bWrftLGh13rvg(T1189_));
				}
				LA1183_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 137):
			{
				NI rb_120;
				rb_120 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), opSlurp__BZteCpC7yurCSeB8YcFcgg((*regs->data[rb_120].node)._kind_3.strVal, (*c).debug->data[pc], (*c).module, (*c).config));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 138):
			{
				NI rb_121;
				NI rc_67;
				NI rd_3;
				rb_121 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_67 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				pc += ((NI) 1);
				rd_3 = ((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(8ULL)) & 65535ULL)));
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				{
					NIM_BOOL T1194_;
					T1194_ = (NIM_BOOL)0;
					T1194_ = NIM_FALSE;
					if (T1194_) goto LA1195_;
					T1194_ = ((*(*c).config).cmd == ((tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw) 11));
					LA1195_: ;
					if (!T1194_) goto LA1196_;
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), ((NimStringDesc*) NIM_NIL));
				}
				goto LA1192_;
				LA1196_: ;
				{
					NimStringDesc* T1199_;
					NimStringDesc* T1200_;
					tyTuple__XOVT24GHXwqiEj5GCsEGCA T1201_;
					NimStringDesc* T1202_;
					T1199_ = (NimStringDesc*)0;
					T1199_ = (*regs->data[rb_121].node)._kind_3.strVal;
					T1200_ = (NimStringDesc*)0;
					T1200_ = (*regs->data[rc_67].node)._kind_3.strVal;
					nimZeroMem((void*)(&T1201_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
					opGorge__PHM9cEmzUJYj3PsIVbIPnxQ(T1199_, T1200_, (*regs->data[rd_3].node)._kind_3.strVal, (*c).debug->data[pc], (*c).config, (&T1201_));
					T1202_ = (NimStringDesc*)0;
					T1202_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1(T1201_.Field0);
					if (T1202_) nimGCunrefNoCycle(T1202_);
				}
				LA1192_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 142):
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 143):
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 144):
			{
				NI rb_122;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_14;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_6;
				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
				rb_122 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				a_14 = regs->data[ra].node;
				b_6 = regs->data[rb_122].node;
				{
					if (!((*b_6).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA1206_;
					info = (*c).debug->data[pc];
				}
				goto LA1204_;
				LA1206_: ;
				{
					info = (*b_6).info;
				}
				LA1204_: ;
				{
					if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 142))) goto LA1211_;
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, (*a_14)._kind_3.strVal, info, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1209_;
				LA1211_: ;
				{
					if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 143))) goto LA1214_;
					liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 51), (*a_14)._kind_3.strVal, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__pyAIA9cUF0h9c4j2HfNQPfYw_179, NIM_FALSE);
				}
				goto LA1209_;
				LA1214_: ;
				{
					if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 144))) goto LA1217_;
					liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 80), (*a_14)._kind_3.strVal, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__pyAIA9cUF0h9c4j2HfNQPfYw_180, NIM_FALSE);
				}
				goto LA1209_;
				LA1217_: ;
				LA1209_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 139):
			{
				NI rb_123;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast_2;
				tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* T1220_;
				tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T1221_;
				NimStringDesc* T1222_;
				tyProc__pIuD7iLYdwrBMntVRm61ZA T1223_;
				rb_123 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				(*colonenv_).error1 = (NimStringDesc*)0;
				T1220_ = (tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw*)0;
				T1220_ = (*c).cache;
				T1221_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
				T1221_ = (*c).config;
				T1222_ = (NimStringDesc*)0;
				T1222_ = toFullPath__VW1RaR1l9c9bPnJxr1KuvIrg((*c).config, (*c).debug->data[pc].fileIndex);
				nimZeroMem((void*)(&T1223_), sizeof(tyProc__pIuD7iLYdwrBMntVRm61ZA));
				T1223_.ClP_0 = colonanonymous___B9aBcRRVoRSIq0b6yX080jw; T1223_.ClE_0 = colonenv_;
				ast_2 = parseString__60l3XWY7pBPSQ4Pi9ao9bZPg((*regs->data[rb_123].node)._kind_3.strVal, T1220_, T1221_, T1222_, ((NI) ((*c).debug->data[pc].line)), T1223_);
				{
					NimStringDesc* T1228_;
					if (!(((NI) 0) < ((*colonenv_).error1 ? (*colonenv_).error1->Sup.len : 0))) goto LA1226_;
					T1228_ = (NimStringDesc*)0;
					T1228_ = (*c).errorFlag; (*c).errorFlag = copyStringRC1((*colonenv_).error1);
					if (T1228_) nimGCunrefNoCycle(T1228_);
				}
				goto LA1224_;
				LA1226_: ;
				{
					NI T1230_;
					T1230_ = (NI)0;
					T1230_ = len__P89cqdlERShb9alU3iC0yj8wast(ast_2);
					if (!!((T1230_ == ((NI) 1)))) goto LA1231_;
					asgnRef((void**) (&(*c).errorFlag), formatMsg__1JLtPXtBEOA0aYSS8UEJDw((*c).config, (*c).debug->data[pc], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_181)));
				}
				goto LA1224_;
				LA1231_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), (*ast_2)._kind_6.sons->data[((NI) 0)]);
				}
				LA1224_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 140):
			{
				NI rb_124;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast_3;
				tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* T1235_;
				tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T1236_;
				NimStringDesc* T1237_;
				tyProc__pIuD7iLYdwrBMntVRm61ZA T1238_;
				rb_124 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				(*colonenv_).error2 = (NimStringDesc*)0;
				T1235_ = (tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw*)0;
				T1235_ = (*c).cache;
				T1236_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
				T1236_ = (*c).config;
				T1237_ = (NimStringDesc*)0;
				T1237_ = toFullPath__VW1RaR1l9c9bPnJxr1KuvIrg((*c).config, (*c).debug->data[pc].fileIndex);
				nimZeroMem((void*)(&T1238_), sizeof(tyProc__pIuD7iLYdwrBMntVRm61ZA));
				T1238_.ClP_0 = colonanonymous___B9aBcRRVoRSIq0b6yX080jw_2; T1238_.ClE_0 = colonenv_;
				ast_3 = parseString__60l3XWY7pBPSQ4Pi9ao9bZPg((*regs->data[rb_124].node)._kind_3.strVal, T1235_, T1236_, T1237_, ((NI) ((*c).debug->data[pc].line)), T1238_);
				{
					NimStringDesc* T1243_;
					if (!(((NI) 0) < ((*colonenv_).error2 ? (*colonenv_).error2->Sup.len : 0))) goto LA1241_;
					T1243_ = (NimStringDesc*)0;
					T1243_ = (*c).errorFlag; (*c).errorFlag = copyStringRC1((*colonenv_).error2);
					if (T1243_) nimGCunrefNoCycle(T1243_);
				}
				goto LA1239_;
				LA1241_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), ast_3);
				}
				LA1239_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 141):
			{
				NimStringDesc* T1246_;
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				T1246_ = (NimStringDesc*)0;
				T1246_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*c).errorFlag);
				if (T1246_) nimGCunrefNoCycle(T1246_);
				asgnRef((void**) (&(*c).errorFlag), setLengthStr((*c).errorFlag, ((NI) 0)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 157):
			{
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				{
					if (!!(((*c).callsite == NIM_NIL))) goto LA1250_;
					asgnRef((void**) (&regs->data[ra].node), (*c).callsite);
				}
				goto LA1248_;
				LA1250_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1253_;
					nimZeroMem((void*)(&T1253_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_182), T1253_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1248_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 145):
			{
				NI rb_125;
				NI imm_8;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_6;
				rb_125 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_8 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				n_6 = regs->data[rb_125].node;
				switch (imm_8) {
				case ((NI) 0):
				{
					NimStringDesc* T1256_;
					T1256_ = (NimStringDesc*)0;
					T1256_ = toFullPath__VW1RaR1l9c9bPnJxr1KuvIrg((*c).config, (*n_6).info.fileIndex);
					asgnRef((void**) (&regs->data[ra].node), newStrNode__zLcHGdlEbBYFtoCoan9agkg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), T1256_));
				}
				break;
				case ((NI) 1):
				{
					asgnRef((void**) (&regs->data[ra].node), newIntNode__zcNs9blLGYB6i9aGKob9bpzRw(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) (((NI) ((*n_6).info.line))))));
				}
				break;
				case ((NI) 2):
				{
					asgnRef((void**) (&regs->data[ra].node), newIntNode__zcNs9blLGYB6i9aGKob9bpzRw(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) ((*n_6).info.col))));
				}
				break;
				default:
				{
					{
						NimStringDesc* argX60gensym860_;
						if (!NIM_TRUE) goto LA1262_;
						argX60gensym860_ = toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs(TM__pyAIA9cUF0h9c4j2HfNQPfYw_185);
						internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, argX60gensym860_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_185);
					}
					LA1262_: ;
				}
				break;
				}
				(*regs->data[ra].node).info = (*n_6).info;
				asgnRef((void**) (&(*regs->data[ra].node).typ), (*n_6).typ);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 146):
			{
				NI rb_126;
				rb_126 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				(*regs->data[ra].node).info = (*regs->data[rb_126].node).info;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 147):
			{
				NI rb_127;
				NI rc_68;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* aNode;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* bNode;
				NCSTRING aStrVal;
				NCSTRING bStrVal;
				NI T1292_;
				rb_127 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_68 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				aNode = regs->data[rb_127].node;
				bNode = regs->data[rc_68].node;
				{
					if (!((*aNode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31))) goto LA1268_;
					aNode = (*aNode)._kind_6.sons->data[((NI) 1)];
				}
				LA1268_: ;
				{
					if (!((*aNode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 53))) goto LA1272_;
					aNode = (*aNode)._kind_6.sons->data[((NI) 0)];
				}
				LA1272_: ;
				{
					if (!((*bNode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31))) goto LA1276_;
					bNode = (*bNode)._kind_6.sons->data[((NI) 1)];
				}
				LA1276_: ;
				{
					if (!((*bNode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 53))) goto LA1280_;
					bNode = (*bNode)._kind_6.sons->data[((NI) 0)];
				}
				LA1280_: ;
				aStrVal = NIM_NIL;
				bStrVal = NIM_NIL;
				switch ((*aNode).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
				{
					aStrVal = nimToCStringConv((*aNode)._kind_3.strVal);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
				{
					aStrVal = nimToCStringConv((*(*aNode)._kind_5.ident).s);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
				{
					aStrVal = nimToCStringConv((*(*(*aNode)._kind_4.sym).name).s);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 57):
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 56):
				{
					aStrVal = nimToCStringConv((*(*(*(*aNode)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
				}
				break;
				default:
				{
				}
				break;
				}
				switch ((*bNode).kind) {
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
				{
					bStrVal = nimToCStringConv((*bNode)._kind_3.strVal);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
				{
					bStrVal = nimToCStringConv((*(*bNode)._kind_5.ident).s);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
				{
					bStrVal = nimToCStringConv((*(*(*bNode)._kind_4.sym).name).s);
				}
				break;
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 57):
				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 56):
				{
					bStrVal = nimToCStringConv((*(*(*(*bNode)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
				}
				break;
				default:
				{
				}
				break;
				}
				T1292_ = (NI)0;
				{
					NIM_BOOL T1295_;
					NIM_BOOL T1296_;
					NIM_BOOL T1298_;
					NI T1301_;
					T1295_ = (NIM_BOOL)0;
					T1296_ = (NIM_BOOL)0;
					T1296_ = eqeq___aqip9cmQIuefPKdd25wuEEwsystem(aStrVal, NIM_NIL);
					T1295_ = !(T1296_);
					if (!(T1295_)) goto LA1297_;
					T1298_ = (NIM_BOOL)0;
					T1298_ = eqeq___aqip9cmQIuefPKdd25wuEEwsystem(bStrVal, NIM_NIL);
					T1295_ = !(T1298_);
					LA1297_: ;
					if (!T1295_) goto LA1299_;
					T1301_ = (NI)0;
					T1301_ = cmpIgnoreStyle__Jbw1CiaNJLYIkwEiKlU3qg_2(aStrVal, bStrVal, ((NI) IL64(9223372036854775807)));
					T1292_ = (T1301_ == ((NI) 0));
				}
				goto LA1293_;
				LA1299_: ;
				{
					T1292_ = ((NI) 0);
				}
				LA1293_: ;
				regs->data[ra].intVal = ((NI64) (T1292_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 148):
			{
				NI rb_128;
				rb_128 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1308_;
					if (!!(((*regs->data[rb_128].node).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*regs->data[rb_128].node).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)))) goto LA1306_;
					nimZeroMem((void*)(&T1308_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_178), T1308_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1304_;
				LA1306_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2), (*c).debug->data[pc]));
					asgnRef((void**) (&(*regs->data[ra].node)._kind_5.ident), getIdent__9coBOmdXN09be4rJvXK6fQGQ((*c).cache, (*regs->data[rb_128].node)._kind_3.strVal));
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
				}
				LA1304_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 181):
			{
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_9;
				typ_9 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* temp;
					if (!!((regs->data[ra].kind == ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1)))) goto LA1313_;
					temp = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[ra]);
					ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
					asgnRef((void**) (&regs->data[ra].node), temp);
					(*regs->data[ra].node).info = (*c).debug->data[pc];
				}
				LA1313_: ;
				asgnRef((void**) (&(*regs->data[ra].node).typ), typ_9);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 91):
			{
				NI rb_129;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* desttyp;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* srctyp;
				rb_129 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				pc += ((NI) 1);
				desttyp = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				pc += ((NI) 1);
				srctyp = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					NIM_BOOL T1318_;
					tyArray__Re75IspeoxXy2oCZHwcRrA T1321_;
					NimStringDesc* T1322_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1323_;
					T1318_ = (NIM_BOOL)0;
					T1318_ = opConv__Fsv5V3BiOZ6CCSNA7nIsSg(c, (&regs->data[ra]), regs->data[rb_129], desttyp, srctyp);
					if (!T1318_) goto LA1319_;
					nimZeroMem((void*)T1321_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
					T1321_[0] = typeToString__QlvraUan7WbHowhAbvDvdA(srctyp, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
					T1321_[1] = typeToString__QlvraUan7WbHowhAbvDvdA(desttyp, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
					T1322_ = (NimStringDesc*)0;
					T1322_ = nsuFormatOpenArray(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_148), T1321_, 2);
					nimZeroMem((void*)(&T1323_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1322_, T1323_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1319_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 92):
			{
				NI rb_130;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* desttyp_2;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* srctyp_2;
				rb_130 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				pc += ((NI) 1);
				desttyp_2 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				pc += ((NI) 1);
				srctyp_2 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*c).debug->data[pc], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_195), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_196, NIM_FALSE);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 114):
			{
				NI rb_131;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_3;
				rb_131 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				dest_3 = regs->data[ra].node;
				{
					NIM_BOOL T1328_;
					T1328_ = (NIM_BOOL)0;
					T1328_ = ((*dest_3).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*dest_3).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15));
					if (!(T1328_)) goto LA1329_;
					T1328_ = ((4 &((NU8)1<<((NU)(regs->data[rb_131].kind)&7U)))!=0);
					LA1329_: ;
					if (!T1328_) goto LA1330_;
					(*dest_3)._kind_1.intVal = regs->data[rb_131].intVal;
				}
				goto LA1326_;
				LA1330_: ;
				{
					NIM_BOOL T1333_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1337_;
					T1333_ = (NIM_BOOL)0;
					T1333_ = ((*dest_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					if (!(T1333_)) goto LA1334_;
					T1333_ = ((*(*dest_3)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 20));
					LA1334_: ;
					if (!T1333_) goto LA1335_;
					nimZeroMem((void*)(&T1337_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_197), T1337_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				goto LA1326_;
				LA1335_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1339_;
					nimZeroMem((void*)(&T1339_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_172), T1339_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1326_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 115):
			{
				NI rb_132;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_4;
				rb_132 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				dest_4 = regs->data[ra].node;
				{
					NIM_BOOL T1343_;
					T1343_ = (NIM_BOOL)0;
					T1343_ = ((*dest_4).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) && (*dest_4).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18));
					if (!(T1343_)) goto LA1344_;
					T1343_ = ((8 &((NU8)1<<((NU)(regs->data[rb_132].kind)&7U)))!=0);
					LA1344_: ;
					if (!T1343_) goto LA1345_;
					(*dest_4)._kind_2.floatVal = regs->data[rb_132].floatVal;
				}
				goto LA1341_;
				LA1345_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1348_;
					nimZeroMem((void*)(&T1348_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_173), T1348_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1341_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 116):
			{
				NI rb_133;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_5;
				rb_133 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				dest_5 = regs->data[ra].node;
				{
					NIM_BOOL T1352_;
					T1352_ = (NIM_BOOL)0;
					T1352_ = ((*dest_5).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					if (!(T1352_)) goto LA1353_;
					T1352_ = ((*regs->data[rb_133].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					LA1353_: ;
					if (!T1352_) goto LA1354_;
					asgnRef((void**) (&(*dest_5)._kind_4.sym), (*regs->data[rb_133].node)._kind_4.sym);
				}
				goto LA1350_;
				LA1354_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1357_;
					nimZeroMem((void*)(&T1357_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_174), T1357_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1350_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 117):
			{
				NI rb_134;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_6;
				rb_134 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				dest_6 = regs->data[ra].node;
				{
					NIM_BOOL T1361_;
					T1361_ = (NIM_BOOL)0;
					T1361_ = ((*dest_6).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
					if (!(T1361_)) goto LA1362_;
					T1361_ = ((*regs->data[rb_134].node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
					LA1362_: ;
					if (!T1361_) goto LA1363_;
					asgnRef((void**) (&(*dest_6)._kind_5.ident), (*regs->data[rb_134].node)._kind_5.ident);
				}
				goto LA1359_;
				LA1363_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1366_;
					nimZeroMem((void*)(&T1366_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_175), T1366_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1359_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 118):
			{
				NI rb_135;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_7;
				rb_135 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				b_7 = regs->data[rb_135].node;
				{
					NIM_BOOL T1370_;
					NimStringDesc* argX60gensym918_;
					T1370_ = (NIM_BOOL)0;
					T1370_ = ((*b_7).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
					if (!(T1370_)) goto LA1371_;
					T1370_ = ((*(*b_7)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7));
					LA1371_: ;
					if (!!(T1370_)) goto LA1372_;
					argX60gensym918_ = toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs(TM__pyAIA9cUF0h9c4j2HfNQPfYw_198);
					internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, argX60gensym918_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_198);
				}
				LA1372_: ;
				{
					NimStringDesc* argX60gensym921_;
					if (!!(!((regs->data[ra].node == NIM_NIL)))) goto LA1376_;
					argX60gensym921_ = toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs(TM__pyAIA9cUF0h9c4j2HfNQPfYw_199);
					internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, argX60gensym921_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_199);
				}
				LA1376_: ;
				asgnRef((void**) (&(*regs->data[ra].node).typ), (*(*b_7)._kind_4.sym).typ);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 119):
			{
				NI rb_136;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest_7;
				rb_136 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				dest_7 = regs->data[ra].node;
				{
					NIM_BOOL T1381_;
					NimStringDesc* T1385_;
					T1381_ = (NIM_BOOL)0;
					T1381_ = ((*dest_7).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*dest_7).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22));
					if (!(T1381_)) goto LA1382_;
					T1381_ = ((2 &((NU8)1<<((NU)(regs->data[rb_136].kind)&7U)))!=0);
					LA1382_: ;
					if (!T1381_) goto LA1383_;
					T1385_ = (NimStringDesc*)0;
					T1385_ = (*dest_7)._kind_3.strVal; (*dest_7)._kind_3.strVal = copyStringRC1((*regs->data[rb_136].node)._kind_3.strVal);
					if (T1385_) nimGCunrefNoCycle(T1385_);
				}
				goto LA1379_;
				LA1383_: ;
				{
					NIM_BOOL T1387_;
					NimStringDesc* T1391_;
					T1387_ = (NIM_BOOL)0;
					T1387_ = ((*dest_7).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125));
					if (!(T1387_)) goto LA1388_;
					T1387_ = ((2 &((NU8)1<<((NU)(regs->data[rb_136].kind)&7U)))!=0);
					LA1388_: ;
					if (!T1387_) goto LA1389_;
					T1391_ = (NimStringDesc*)0;
					T1391_ = (*dest_7).comment; (*dest_7).comment = copyStringRC1((*regs->data[rb_136].node)._kind_3.strVal);
					if (T1391_) nimGCunrefNoCycle(T1391_);
				}
				goto LA1379_;
				LA1389_: ;
				{
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1393_;
					nimZeroMem((void*)(&T1393_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_178), T1393_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1379_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 120):
			{
				NI rb_137;
				NI rc_69;
				NI64 k;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cc;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x_2;
				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1401_;
				rb_137 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_69 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				k = regs->data[rb_137].intVal;
				{
					NIM_BOOL T1397_;
					T1397_ = (NIM_BOOL)0;
					T1397_ = (k < IL64(0));
					if (T1397_) goto LA1398_;
					T1397_ = (IL64(160) < k);
					LA1398_: ;
					if (!T1397_) goto LA1399_;
					internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, (*c).debug->data[pc], ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_200), TM__pyAIA9cUF0h9c4j2HfNQPfYw_201);
				}
				LA1399_: ;
				cc = regs->data[rc_69].node;
				{
					if (!!(((*cc).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23)))) goto LA1404_;
					T1401_ = (*cc).info;
				}
				goto LA1402_;
				LA1404_: ;
				{
					if (!!(((*c).comesFromHeuristic.line == ((NU16) 0)))) goto LA1407_;
					T1401_ = (*c).comesFromHeuristic;
				}
				goto LA1402_;
				LA1407_: ;
				{
					NIM_BOOL T1410_;
					NI T1412_;
					T1410_ = (NIM_BOOL)0;
					T1410_ = !(((*c).callsite == NIM_NIL));
					if (!(T1410_)) goto LA1411_;
					T1412_ = (NI)0;
					T1412_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast((*c).callsite);
					T1410_ = (((NI) 1) < T1412_);
					LA1411_: ;
					if (!T1410_) goto LA1413_;
					T1401_ = (*(*(*c).callsite)._kind_6.sons->data[((NI) 1)]).info;
				}
				goto LA1402_;
				LA1413_: ;
				{
					T1401_ = (*c).debug->data[pc];
				}
				LA1402_: ;
				x_2 = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) (((NI) (k)))), T1401_);
				(*x_2).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
				{
					if (!((*x_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2))) goto LA1418_;
					asgnRef((void**) (&(*x_2)._kind_5.ident), (*(*c).cache).emptyIdent);
				}
				LA1418_: ;
				asgnRef((void**) (&regs->data[ra].node), x_2);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 121):
			{
				NI rb_138;
				rb_138 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), copyNode__Dsjo9bte8vGxzhtcSrsTyiQ_2(regs->data[rb_138].node));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 122):
			{
				NI rb_139;
				rb_139 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				asgnRef((void**) (&regs->data[ra].node), copyTree__Dsjo9bte8vGxzhtcSrsTyiQ(regs->data[rb_139].node));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 123):
			{
				NI rb_140;
				NI rc_70;
				NI bb_2;
				rb_140 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_70 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				bb_2 = ((NI) (regs->data[rb_140].intVal));
				{
					NI i_14;
					NI colontmp__10;
					NI i_15;
					i_14 = (NI)0;
					colontmp__10 = (NI)0;
					colontmp__10 = ((NI) (regs->data[rc_70].intVal));
					i_15 = ((NI) 0);
					{
						while (1) {
							if (!(i_15 < colontmp__10)) goto LA1425;
							i_14 = i_15;
							delSon__oU9bKATaboy8iUhv0r9bMBPw(regs->data[ra].node, bb_2);
							i_15 += ((NI) 1);
						} LA1425: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 124):
			{
				NI rb_141;
				NI rc_71;
				NI64 k_2;
				NimStringDesc* name;
				tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym;
				tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA* T1438_;
				rb_141 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_71 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				k_2 = regs->data[rb_141].intVal;
				{
					if (!(((*regs->data[rc_71].node)._kind_3.strVal ? (*regs->data[rc_71].node)._kind_3.strVal->Sup.len : 0) == ((NI) 0))) goto LA1429_;
					name = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_202));
				}
				goto LA1427_;
				LA1429_: ;
				{
					name = (*regs->data[rc_71].node)._kind_3.strVal;
				}
				LA1427_: ;
				{
					NIM_BOOL T1434_;
					T1434_ = (NIM_BOOL)0;
					T1434_ = (k_2 < IL64(0));
					if (T1434_) goto LA1435_;
					T1434_ = (IL64(25) < k_2);
					LA1435_: ;
					if (!T1434_) goto LA1436_;
					internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, (*c).debug->data[pc], ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_203), TM__pyAIA9cUF0h9c4j2HfNQPfYw_204);
				}
				LA1436_: ;
				T1438_ = (tyObject_TIdent__GufRQq9c0miSybX3zBD4tyA*)0;
				T1438_ = getIdent__9coBOmdXN09be4rJvXK6fQGQ((*c).cache, name);
				sym = newSym__IXbidcxhXTQGZY9abN63Cxg(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) (k_2)), T1438_, (*(*c).module).owner, (*c).debug->data[pc], 0);
				(*sym).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 36)) & 63);
				asgnRef((void**) (&regs->data[ra].node), newSymNode__I2DV2TmmOysY1ZEGW19b9bRg(sym));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 125):
			{
				NI rb_142;
				NimStringDesc* destKey;
				rb_142 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				destKey = (*regs->data[rb_142].node)._kind_3.strVal;
				regs->data[ra].intVal = getOrDefault__z8A9cwbmxkLXNxRJ9arkRPMQ((*(*c).graph).cacheCounters, destKey);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 126):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g;
				NI rb_143;
				NI rc_72;
				NimStringDesc* destKey_2;
				NI64 by;
				NI64 v;
				g = (*c).graph;
				rb_143 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_72 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_2 = (*regs->data[rb_143].node)._kind_3.strVal;
				by = regs->data[rc_72].intVal;
				v = getOrDefault__z8A9cwbmxkLXNxRJ9arkRPMQ((*g).cacheCounters, destKey_2);
				X5BX5Deq___fM9b60sY7h9aUB763UQb3oXA((&(*g).cacheCounters), destKey_2, (NI64)(v + by));
				recordInc__6C9a0PyLab6htjYoNOWYndA(c, (*c).debug->data[pc], destKey_2, by);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 127):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_2;
				NI rb_144;
				NI rc_73;
				NimStringDesc* destKey_3;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val_2;
				g_2 = (*c).graph;
				rb_144 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_73 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_3 = (*regs->data[rb_144].node)._kind_3.strVal;
				val_2 = regs->data[rc_73].node;
				{
					NIM_BOOL T1444_;
					tyArray__jlWPjgtbdjE069arIWHC9c9bg T1447_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1448_;
					T1444_ = (NIM_BOOL)0;
					T1444_ = contains__tNDb8HX4Pcd05E6w80ngeA((*g_2).cacheSeqs, destKey_3);
					if (!!(T1444_)) goto LA1445_;
					nimZeroMem((void*)T1447_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
					T1447_[0] = val_2;
					T1448_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T1448_ = newTree__FpOm4fidh9bWdkMa1BMRJkQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T1447_, 1);
					X5BX5Deq___sShzjuQoVJkvjz3oILuGOQ((&(*g_2).cacheSeqs), destKey_3, T1448_);
				}
				goto LA1442_;
				LA1445_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1450_;
					T1450_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					T1450_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_2).cacheSeqs), destKey_3);
					add__P8dDSotTW25BkfbyspojGg((*T1450_), val_2);
				}
				LA1442_: ;
				recordAdd__bEOBCPqrt0LjPdnkWVuoXA(c, (*c).debug->data[pc], destKey_3, val_2);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 128):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_3;
				NI rb_145;
				NI rc_74;
				NimStringDesc* destKey_4;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val_3;
				g_3 = (*c).graph;
				rb_145 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_74 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_4 = (*regs->data[rb_145].node)._kind_3.strVal;
				val_3 = regs->data[rc_74].node;
				{
					NIM_BOOL T1454_;
					tyArray__jlWPjgtbdjE069arIWHC9c9bg T1457_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1458_;
					T1454_ = (NIM_BOOL)0;
					T1454_ = contains__tNDb8HX4Pcd05E6w80ngeA((*g_3).cacheSeqs, destKey_4);
					if (!!(T1454_)) goto LA1455_;
					nimZeroMem((void*)T1457_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
					T1457_[0] = val_3;
					T1458_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T1458_ = newTree__FpOm4fidh9bWdkMa1BMRJkQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T1457_, 1);
					X5BX5Deq___sShzjuQoVJkvjz3oILuGOQ((&(*g_3).cacheSeqs), destKey_4, T1458_);
				}
				goto LA1452_;
				LA1455_: ;
				{
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1471_;
						{
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* existing;
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* colontmp__11;
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1462_;
							existing = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							colontmp__11 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							T1462_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
							T1462_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_3).cacheSeqs), destKey_4);
							colontmp__11 = (*T1462_);
							{
								NI i_16;
								NI colontmp__12;
								NI i_17;
								i_16 = (NI)0;
								colontmp__12 = (NI)0;
								colontmp__12 = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(colontmp__11);
								i_17 = ((NI) 0);
								{
									while (1) {
										if (!(i_17 < colontmp__12)) goto LA1465;
										i_16 = i_17;
										existing = (*colontmp__11)._kind_6.sons->data[i_16];
										{
											NIM_BOOL T1468_;
											T1468_ = (NIM_BOOL)0;
											T1468_ = exprStructuralEquivalent__E1mnSzj2NONtG7h9cR3AuFA(existing, val_3, NIM_TRUE);
											if (!T1468_) goto LA1469_;
											goto LA1460;
										}
										LA1469_: ;
										i_17 += ((NI) 1);
									} LA1465: ;
								}
							}
						}
						T1471_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
						T1471_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_3).cacheSeqs), destKey_4);
						add__P8dDSotTW25BkfbyspojGg((*T1471_), val_3);
					} LA1460: ;
				}
				LA1452_: ;
				recordIncl__bEOBCPqrt0LjPdnkWVuoXA_2(c, (*c).debug->data[pc], destKey_4, val_3);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 129):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_4;
				NI rb_146;
				NimStringDesc* destKey_5;
				NI T1473_;
				g_4 = (*c).graph;
				rb_146 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				destKey_5 = (*regs->data[rb_146].node)._kind_3.strVal;
				T1473_ = (NI)0;
				{
					NIM_BOOL T1476_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1479_;
					T1476_ = (NIM_BOOL)0;
					T1476_ = contains__tNDb8HX4Pcd05E6w80ngeA((*g_4).cacheSeqs, destKey_5);
					if (!T1476_) goto LA1477_;
					T1479_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					T1479_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_4).cacheSeqs), destKey_5);
					T1473_ = len__P89cqdlERShb9alU3iC0yj8wast((*T1479_));
				}
				goto LA1474_;
				LA1477_: ;
				{
					T1473_ = ((NI) 0);
				}
				LA1474_: ;
				regs->data[ra].intVal = ((NI64) (T1473_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 130):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_5;
				NI rb_147;
				NI rc_75;
				NI64 idx_9;
				NimStringDesc* destKey_6;
				g_5 = (*c).graph;
				rb_147 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_75 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				idx_9 = regs->data[rc_75].intVal;
				destKey_6 = (*regs->data[rb_147].node)._kind_3.strVal;
				{
					NIM_BOOL T1484_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1486_;
					NI T1487_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1490_;
					T1484_ = (NIM_BOOL)0;
					T1484_ = contains__tNDb8HX4Pcd05E6w80ngeA((*g_5).cacheSeqs, destKey_6);
					if (!(T1484_)) goto LA1485_;
					T1486_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					T1486_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_5).cacheSeqs), destKey_6);
					T1487_ = (NI)0;
					T1487_ = len__P89cqdlERShb9alU3iC0yj8wast((*T1486_));
					T1484_ = ltpercent___m9aFrKvWqPsM3WKrwczIr9bAsystem(idx_9, ((NI64) (T1487_)));
					LA1485_: ;
					if (!T1484_) goto LA1488_;
					T1490_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
					T1490_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_5).cacheSeqs), destKey_6);
					asgnRef((void**) (&regs->data[ra].node), (*(*T1490_))._kind_6.sons->data[idx_9]);
				}
				goto LA1482_;
				LA1488_: ;
				{
					NimStringDesc* T1492_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1505_;
					T1492_ = (NimStringDesc*)0;
					{
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1495_;
						NI T1496_;
						T1495_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
						T1495_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_5).cacheSeqs), destKey_6);
						T1496_ = (NI)0;
						T1496_ = len__P89cqdlERShb9alU3iC0yj8wast((*T1495_));
						if (!((NI)(T1496_ - ((NI) 1)) < ((NI) 0))) goto LA1497_;
						T1492_ = copyString(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_130));
					}
					goto LA1493_;
					LA1497_: ;
					{
						NimStringDesc* T1500_;
						NimStringDesc* T1501_;
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T1502_;
						NI T1503_;
						NimStringDesc* T1504_;
						T1500_ = (NimStringDesc*)0;
						T1501_ = (NimStringDesc*)0;
						T1501_ = nimInt64ToStr(idx_9);
						T1502_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
						T1502_ = X5BX5D___MfHxsDwfhxJEwdTZBgdTmg((&(*g_5).cacheSeqs), destKey_6);
						T1503_ = (NI)0;
						T1503_ = len__P89cqdlERShb9alU3iC0yj8wast((*T1502_));
						T1504_ = (NimStringDesc*)0;
						T1504_ = nimIntToStr((NI)(T1503_ - ((NI) 1)));
						T1500_ = rawNewString((T1501_ ? T1501_->Sup.len : 0) + (T1504_ ? T1504_->Sup.len : 0) + 19);
appendString(T1500_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_131));
appendString(T1500_, T1501_);
appendString(T1500_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_133));
appendString(T1500_, T1504_);
						T1492_ = T1500_;
					}
					LA1493_: ;
					nimZeroMem((void*)(&T1505_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1492_, T1505_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1482_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 131):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_6;
				NimStringDesc* destKey_7;
				NimStringDesc* key;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val_4;
				g_6 = (*c).graph;
				destKey_7 = (*regs->data[ra].node)._kind_3.strVal;
				key = (*regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)].node)._kind_3.strVal;
				val_4 = regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)].node;
				{
					NIM_BOOL T1509_;
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg T1512_;
					T1509_ = (NIM_BOOL)0;
					T1509_ = contains__HJN1GCNkXuSaKainyv8E2w((*g_6).cacheTables, destKey_7);
					if (!!(T1509_)) goto LA1510_;
					nimZeroMem((void*)(&T1512_), sizeof(tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg));
					initBTree__k5whnwDpZp6YeM19cX9ajL9aQ((&T1512_));
					X5BX5Deq___L2EahbjJPAlDipW4Omiq5g((&(*g_6).cacheTables), destKey_7, T1512_);
				}
				LA1510_: ;
				{
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1515_;
					NIM_BOOL T1516_;
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1519_;
					T1515_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
					T1515_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_6).cacheTables), destKey_7);
					T1516_ = (NIM_BOOL)0;
					T1516_ = contains__R2s6PEbDP9biCUJnpsKoeYw((*T1515_), key);
					if (!!(T1516_)) goto LA1517_;
					T1519_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
					T1519_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_6).cacheTables), destKey_7);
					add__oXWfa5DZ9ar9aQWG8k6z5P6Q(T1519_, key, val_4);
					recordPut__A0qATj50qXyqSMH9aW9b3gzQ(c, (*c).debug->data[pc], destKey_7, key, val_4);
				}
				goto LA1513_;
				LA1517_: ;
				{
					NimStringDesc* T1521_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1522_;
					T1521_ = (NimStringDesc*)0;
					T1521_ = rawNewString((key ? key->Sup.len : 0) + 20);
appendString(T1521_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_205));
appendString(T1521_, key);
					nimZeroMem((void*)(&T1522_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1521_, T1522_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1513_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 132):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_7;
				NI rb_148;
				NimStringDesc* destKey_8;
				NI T1524_;
				g_7 = (*c).graph;
				rb_148 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				destKey_8 = (*regs->data[rb_148].node)._kind_3.strVal;
				T1524_ = (NI)0;
				{
					NIM_BOOL T1527_;
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1530_;
					T1527_ = (NIM_BOOL)0;
					T1527_ = contains__HJN1GCNkXuSaKainyv8E2w((*g_7).cacheTables, destKey_8);
					if (!T1527_) goto LA1528_;
					T1530_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
					T1530_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_7).cacheTables), destKey_8);
					T1524_ = len__8UGkwK9cZDAmWMyHxdOt9bsAbtrees((*T1530_));
				}
				goto LA1525_;
				LA1528_: ;
				{
					T1524_ = ((NI) 0);
				}
				LA1525_: ;
				regs->data[ra].intVal = ((NI64) (T1524_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 133):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_8;
				NI rb_149;
				NI rc_76;
				NimStringDesc* destKey_9;
				NimStringDesc* key_2;
				g_8 = (*c).graph;
				rb_149 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_76 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				destKey_9 = (*regs->data[rb_149].node)._kind_3.strVal;
				key_2 = (*regs->data[rc_76].node)._kind_3.strVal;
				{
					NIM_BOOL T1535_;
					T1535_ = (NIM_BOOL)0;
					T1535_ = contains__HJN1GCNkXuSaKainyv8E2w((*g_8).cacheTables, destKey_9);
					if (!T1535_) goto LA1536_;
					{
						tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1540_;
						NIM_BOOL T1541_;
						tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1544_;
						T1540_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
						T1540_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_8).cacheTables), destKey_9);
						T1541_ = (NIM_BOOL)0;
						T1541_ = contains__R2s6PEbDP9biCUJnpsKoeYw((*T1540_), key_2);
						if (!T1541_) goto LA1542_;
						T1544_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
						T1544_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_8).cacheTables), destKey_9);
						asgnRef((void**) (&regs->data[ra].node), getOrDefault__N7mBvvE4jWcEmzBA3UoB0A((*T1544_), key_2));
					}
					goto LA1538_;
					LA1542_: ;
					{
						NimStringDesc* T1546_;
						tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1547_;
						T1546_ = (NimStringDesc*)0;
						T1546_ = rawNewString((key_2 ? key_2->Sup.len : 0) + 20);
appendString(T1546_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_206));
appendString(T1546_, key_2);
						nimZeroMem((void*)(&T1547_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
						stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1546_, T1547_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
						goto BeforeRet_;
					}
					LA1538_: ;
				}
				goto LA1533_;
				LA1536_: ;
				{
					NimStringDesc* T1549_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1550_;
					T1549_ = (NimStringDesc*)0;
					T1549_ = rawNewString((destKey_9 ? destKey_9->Sup.len : 0) + 20);
appendString(T1549_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_206));
appendString(T1549_, destKey_9);
					nimZeroMem((void*)(&T1550_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1549_, T1550_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1533_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 134):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_9;
				NI rb_150;
				NI rc_77;
				NimStringDesc* destKey_10;
				NI T1552_;
				g_9 = (*c).graph;
				rb_150 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_77 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 2));
				destKey_10 = (*regs->data[rb_150].node)._kind_3.strVal;
				T1552_ = (NI)0;
				{
					NIM_BOOL T1555_;
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1558_;
					NIM_BOOL T1559_;
					T1555_ = (NIM_BOOL)0;
					T1555_ = contains__HJN1GCNkXuSaKainyv8E2w((*g_9).cacheTables, destKey_10);
					if (!T1555_) goto LA1556_;
					T1558_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
					T1558_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_9).cacheTables), destKey_10);
					T1559_ = (NIM_BOOL)0;
					T1559_ = hasNext__4Wt9aVmAb9agcjxA5gGDTJQw((*T1558_), ((NI) (regs->data[rc_77].intVal)));
					T1552_ = T1559_;
				}
				goto LA1553_;
				LA1556_: ;
				{
					T1552_ = ((NI) 0);
				}
				LA1553_: ;
				regs->data[ra].intVal = ((NI64) (T1552_));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 135):
			{
				tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g_10;
				NI rb_151;
				NI rc_78;
				NimStringDesc* destKey_11;
				NI64 index;
				g_10 = (*c).graph;
				rb_151 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_78 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				destKey_11 = (*regs->data[rb_151].node)._kind_3.strVal;
				index = regs->data[rc_78].intVal;
				{
					NIM_BOOL T1564_;
					tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg* T1567_;
					tyTuple__9aIi6GdTSD27YtPkWxMqNxA T1568_;
					NimStringDesc* k_3;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v_2;
					NI nextIndex;
					tyArray__T6RKPw8xfAeNaoei9aZGzXg T1569_;
					T1564_ = (NIM_BOOL)0;
					T1564_ = contains__HJN1GCNkXuSaKainyv8E2w((*g_10).cacheTables, destKey_11);
					if (!T1564_) goto LA1565_;
					T1567_ = (tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg*)0;
					T1567_ = X5BX5D___SsXWfuQKn5htR3WBdyM0mA((&(*g_10).cacheTables), destKey_11);
					nimZeroMem((void*)(&T1568_), sizeof(tyTuple__9aIi6GdTSD27YtPkWxMqNxA));
					next__CqTK9bD6dhLiHbJZ5GMdxDQ((*T1567_), ((NI) (index)), (&T1568_));
					k_3 = (NimStringDesc*)0;
					k_3 = T1568_.Field0;
					v_2 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					v_2 = T1568_.Field1;
					nextIndex = (NI)0;
					nextIndex = T1568_.Field2;
					nimZeroMem((void*)T1569_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
					T1569_[0] = newStrNode__C1MQfgDmfXqO1v69aAZbuYA(k_3, (*c).debug->data[pc]);
					T1569_[1] = v_2;
					T1569_[2] = newIntNode__zcNs9blLGYB6i9aGKob9bpzRw(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) (nextIndex)));
					asgnRef((void**) (&regs->data[ra].node), newTree__FpOm4fidh9bWdkMa1BMRJkQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160), T1569_, 3));
				}
				goto LA1562_;
				LA1565_: ;
				{
					NimStringDesc* T1571_;
					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1572_;
					T1571_ = (NimStringDesc*)0;
					T1571_ = rawNewString((destKey_11 ? destKey_11->Sup.len : 0) + 20);
appendString(T1571_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_206));
appendString(T1571_, destKey_11);
					nimZeroMem((void*)(&T1572_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
					stackTraceImpl__kFOgYSzRy3XeW9bzc9bmjyaQ(c, tos_2, pc, T1571_, T1572_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_102);
					goto BeforeRet_;
				}
				LA1562_: ;
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 182):
			{
				NI rb_152;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_10;
				rb_152 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				typ_10 = (*regs->data[rb_152].node).typ;
				{
					NimStringDesc* argX60gensym1057_;
					if (!!(!((typ_10 == NIM_NIL)))) goto LA1576_;
					argX60gensym1057_ = toFileLineCol__fTQr4TRmeNwYlKvcPy3kYAmsgs(TM__pyAIA9cUF0h9c4j2HfNQPfYw_207);
					internalErrorImpl__PTSwZ6HM9bGBf7vF9cnDmwVw((*c).config, unknownLineInfo__Adg58D2FIbt5TWh9aavBqbg, argX60gensym1057_, TM__pyAIA9cUF0h9c4j2HfNQPfYw_207);
				}
				LA1576_: ;
				{
					while (1) {
						NIM_BOOL T1580_;
						NI T1582_;
						T1580_ = (NIM_BOOL)0;
						T1580_ = ((*typ_10).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8));
						if (!(T1580_)) goto LA1581_;
						T1582_ = (NI)0;
						T1582_ = len__5mJADrRYkP3r9auuiuDZN9cQast(typ_10);
						T1580_ = (((NI) 0) < T1582_);
						LA1581_: ;
						if (!T1580_) goto LA1579;
						typ_10 = (*typ_10).sons->data[((NI) 0)];
					} LA1579: ;
				}
				asgnRef((void**) (&regs->data[ra].node), newNode__PMZ27S9ai4FB3gXOMDXvwsQ(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), typeToString__QlvraUan7WbHowhAbvDvdA(typ_10, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 2)));
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 183):
			{
				NI ra_5;
				NI rb_153;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_11;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1584_;
				ra_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rb_153 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				pc += ((NI) 1);
				typ_11 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				T1584_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T1584_ = loadAny__Sr5ibxUUgGhmgltd4r9cYpg((*regs->data[rb_153].node)._kind_3.strVal, typ_11, (*c).cache, (*c).config);
				putIntoReg__Tg4NgAEkkhyUNQ0lPE29clQ((&regs->data[ra_5]), T1584_);
			}
			break;
			case ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 184):
			{
				NI rb_154;
				tyObject_TType__v9ae2Dpu13OW2ZJ2U9bNMd9cQ* typ_12;
				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1586_;
				rb_154 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__hLEAmC34r1Yd9aCCcNP1pLA((&regs->data[ra]), ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1));
				pc += ((NI) 1);
				typ_12 = (*c).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				createStrKeepNode__LpB9aVgxJQWwIAx62EyhZoA((&regs->data[ra]), NIM_TRUE);
				T1586_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
				T1586_ = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(regs->data[rb_154]);
				storeAny__OIEM18oCrQXxJj2UzbHuPA((&(*regs->data[ra].node)._kind_3.strVal), typ_12, T1586_, (*c).config);
			}
			break;
			}
			leave__QoTzttW5qhAM568TC1hifgvmprofiler((&(*c).profiler), c);
			pc += ((NI) 1);
		}
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalMacroCall__6SgKdna0C4CEFxNnRELlUg)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI* templInstCounter, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nOrig, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* sym) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c;
	tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ oldMode;
	NI start;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T23_;
	NI maxSlots;
	NI L;
	tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T28_;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gp;
	tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T46_;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		if (!(((NI) 0) < (*(*g).config).errorCounter)) goto LA3_;
		result = errorNode__9cqF4KDIxxYX55FGMDoxR4Q(module, n);
		goto BeforeRet_;
	}
	LA3_: ;
	(*(*g).config).evalMacroCounter += ((NI) 1);
	{
		if (!(((NI) 1000) < (*(*g).config).evalMacroCounter)) goto LA7_;
		liMessage__Q6JNH4uRwLyZrj0dJakHew((*g).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_2), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_3, NIM_FALSE);
	}
	LA7_: ;
	{
		NIM_BOOL T11_;
		NI T12_;
		NI T13_;
		NI T15_;
		tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T18_;
		tyArray__24KAM9afIUgUaqBaEBB6r9bg T19_;
		NI T20_;
		NI T21_;
		NimStringDesc* T22_;
		T11_ = (NIM_BOOL)0;
		T12_ = (NI)0;
		T12_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(n);
		T13_ = (NI)0;
		T13_ = len__5mJADrRYkP3r9auuiuDZN9cQast((*sym).typ);
		T11_ = (T12_ < T13_);
		if (!(T11_)) goto LA14_;
		T15_ = (NI)0;
		T15_ = len__5mJADrRYkP3r9auuiuDZN9cQast((*sym).typ);
		T11_ = (((NI) 1) < T15_);
		LA14_: ;
		if (!T11_) goto LA16_;
		T18_ = (*n).info;
		nimZeroMem((void*)T19_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
		T19_[0] = renderTree__ppjdh9aQ5L0SGPF8yz1gZ9cA(n, 0);
		T20_ = (NI)0;
		T20_ = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(n);
		T19_[1] = nimIntToStr((NI)(T20_ - ((NI) 1)));
		T21_ = (NI)0;
		T21_ = len__5mJADrRYkP3r9auuiuDZN9cQast((*sym).typ);
		T19_[2] = nimIntToStr((NI)(T21_ - ((NI) 1)));
		T22_ = (NimStringDesc*)0;
		T22_ = nsuFormatOpenArray(((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_5), T19_, 3);
		liMessage__Q6JNH4uRwLyZrj0dJakHew((*g).config, T18_, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), T22_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_6, NIM_FALSE);
	}
	LA16_: ;
	setupGlobalCtx__41qwP9bj6cfy3VehAu9aAFvw(module, g);
	c = (*((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw**) (&((*g).vm))));
	oldMode = (*c).mode;
	(*c).mode = ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 4);
	(*c).comesFromHeuristic.line = ((NU16) 0);
	asgnRef((void**) (&(*c).callsite), nOrig);
	asgnRef((void**) (&(*c).templInstCounter), templInstCounter);
	start = genProc__82SK3f7Ee6e9aktSfHKYXUw(c, sym);
	T23_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
	T23_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
	asgnRef((void**) (&(*T23_).prc), sym);
	(*T23_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T23_).next), NIM_NIL);
	tos = T23_;
	maxSlots = (*sym).offset;
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__jlXqfsdfoRhiIfoVNWV0Vw*) newSeqRC1((&NTI__jlXqfsdfoRhiIfoVNWV0Vw_), ((NI) (maxSlots)));
	L = safeLen__P89cqdlERShb9alU3iC0yj8w_2ast(n);
	{
		if (!(L == ((NI) 0))) goto LA26_;
		L = ((NI) 1);
	}
	LA26_: ;
	nimZeroMem((void*)(&T28_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
	nimZeroMem((void*)(&T28_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
	T28_.kind = ((tyEnum_TRegisterKind__BUH8cfx9botv2xAfmC8mnAQ) 1);
	T28_.node = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*n).info);
	genericShallowAssign((void*)(&(*tos).slots->data[((NI) 0)]), (void*)(&T28_), (&NTI__GJRDbRqzZnSsmt2gZMzKBA_));
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__5mJADrRYkP3r9auuiuDZN9cQast((*sym).typ);
		i_2 = ((NI) 1);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA31;
				i = i_2;
				setupMacroParam__hXIlM54SMpXNBDQ04umODg((*n)._kind_6.sons->data[i], (*(*sym).typ).sons->data[i], (&(*tos).slots->data[i]));
				i_2 += ((NI) 1);
			} LA31: ;
		}
	}
	gp = (*(*sym).ast)._kind_6.sons->data[((NI) 2)];
	{
		NI i_3;
		NI colontmp__2;
		NI i_4;
		i_3 = (NI)0;
		colontmp__2 = (NI)0;
		colontmp__2 = len__P89cqdlERShb9alU3iC0yj8wast(gp);
		i_4 = ((NI) 0);
		{
			while (1) {
				NI idx;
				NI T35_;
				if (!(i_4 < colontmp__2)) goto LA34;
				i_3 = i_4;
				T35_ = (NI)0;
				T35_ = len__5mJADrRYkP3r9auuiuDZN9cQast((*sym).typ);
				idx = (NI)(T35_ + i_3);
				{
					NI T38_;
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T41_;
					T38_ = (NI)0;
					T38_ = len__P89cqdlERShb9alU3iC0yj8wast(n);
					if (!(idx < T38_)) goto LA39_;
					T41_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
					T41_ = (*n)._kind_6.sons->data[idx];
					setupMacroParam__hXIlM54SMpXNBDQ04umODg(T41_, (*(*(*gp)._kind_6.sons->data[i_3])._kind_4.sym).typ, (&(*tos).slots->data[idx]));
				}
				goto LA36_;
				LA39_: ;
				{
					NimStringDesc* T43_;
					NI T44_;
					NimStringDesc* T45_;
					(*(*g).config).evalMacroCounter -= ((NI) 1);
					asgnRef((void**) (&(*c).callsite), NIM_NIL);
					T43_ = (NimStringDesc*)0;
					T44_ = (NI)0;
					T44_ = len__P89cqdlERShb9alU3iC0yj8wast(gp);
					T45_ = (NimStringDesc*)0;
					T45_ = nimIntToStr(T44_);
					T43_ = rawNewString((T45_ ? T45_->Sup.len : 0) + 30);
appendString(T43_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_123));
appendString(T43_, T45_);
appendString(T43_, ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_124));
					liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), T43_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__pyAIA9cUF0h9c4j2HfNQPfYw_125, NIM_FALSE);
				}
				LA36_: ;
				i_4 += ((NI) 1);
			} LA34: ;
		}
	}
	nimZeroMem((void*)(&T46_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
	rawExecute__OUDseXSU2midLA4bLXt3gg(c, start, tos, (&T46_));
	result = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(T46_);
	{
		if (!((NU16)((*result).info.line) < (NU16)(((NU16) 0)))) goto LA49_;
		(*result).info = (*n).info;
	}
	LA49_: ;
	{
		NIM_BOOL T53_;
		T53_ = (NIM_BOOL)0;
		T53_ = cyclicTree__9cP6JNeOKqczaXCI4Zo4SBQ_3(result);
		if (!T53_) goto LA54_;
		liMessage__Q6JNH4uRwLyZrj0dJakHew((*c).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), ((NimStringDesc*) &TM__pyAIA9cUF0h9c4j2HfNQPfYw_208), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__pyAIA9cUF0h9c4j2HfNQPfYw_209, NIM_FALSE);
	}
	LA54_: ;
	(*(*g).config).evalMacroCounter -= ((NI) 1);
	asgnRef((void**) (&(*c).callsite), NIM_NIL);
	(*c).mode = oldMode;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ mode) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
	tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c;
	tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ oldMode;
	NI start;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T9_;
	tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T10_;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		if (!(((NI) 0) < (*(*g).config).errorCounter)) goto LA3_;
		result = n;
		goto BeforeRet_;
	}
	LA3_: ;
	n_2 = transformExpr__o9bTtoSsaDmuiyVzV15dOyg(g, module, n);
	setupGlobalCtx__41qwP9bj6cfy3VehAu9aAFvw(module, g);
	c = (*((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw**) (&((*g).vm))));
	oldMode = (*c).mode;
	(*c).mode = mode;
	start = genExpr__iSa9ao3PEkzo8fCmeMa1Kvg(c, n_2, !((mode == ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 4))));
	{
		if (!(((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[start]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 0))) goto LA7_;
		result = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*n_2).info);
		goto BeforeRet_;
	}
	LA7_: ;
	T9_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
	T9_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
	asgnRef((void**) (&(*T9_).prc), prc);
	(*T9_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T9_).next), NIM_NIL);
	tos = T9_;
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__jlXqfsdfoRhiIfoVNWV0Vw*) newSeqRC1((&NTI__jlXqfsdfoRhiIfoVNWV0Vw_), ((NI) ((*(*c).prc).maxSlots)));
	nimZeroMem((void*)(&T10_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
	rawExecute__OUDseXSU2midLA4bLXt3gg(c, start, tos, (&T10_));
	result = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(T10_);
	{
		if (!((*result).info.col < ((NI16) 0))) goto LA13_;
		(*result).info = (*n_2).info;
	}
	LA13_: ;
	(*c).mode = oldMode;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalStaticExpr__ajRaPV9aInq6ZNnUYn0DaVw)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ(module, g, prc, e, ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 3));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalConstExpr__P8uF2QSxl7YdNpBnl0Ybqg)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ(module, g, NIM_NIL, e, ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 1));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setupCompileTimeVar__zQ7dn9aEDgIq1IbBIE9cxsxg)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
	T1_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T1_ = evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ(module, g, NIM_NIL, n, ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 4));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, evalStaticStmt__4ISne8kQ4QKaNjEY5dqxUg)(tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* prc) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
	T1_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T1_ = evalConstExprAux__m2sR4LMnyFV9c9cRHcUHxnVQ(module, g, prc, e, ((tyEnum_TEvalMode__UbrbHUpo4hYFr1DbYzJgRQ) 4));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, myOpen__4vajIPhcf9a5bJvp6m9ciz6A)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__JpsEh5i1AcKChGYbg7aV4w* module) {
	tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* result;
	result = (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*)0;
	setupGlobalCtx__41qwP9bj6cfy3VehAu9aAFvw(module, graph);
	result = &(*((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw**) (&((*graph).vm))))->Sup;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, execute__xH4DZUl51vOZwpwgQRlgnA)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, NI start) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* tos;
	tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ* T1_;
	tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA T2_;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T1_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*)0;
	T1_ = (tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ*) newObj((&NTI__tIxM6OLoE2pUc9bMTjYhjPg_), sizeof(tyObject_TStackFrame__DYXeymOyKb0OnIuD1ihEpQ));
	asgnRef((void**) (&(*T1_).prc), NIM_NIL);
	(*T1_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T1_).next), NIM_NIL);
	tos = T1_;
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__jlXqfsdfoRhiIfoVNWV0Vw*) newSeqRC1((&NTI__jlXqfsdfoRhiIfoVNWV0Vw_), ((NI) ((*(*c).prc).maxSlots)));
	nimZeroMem((void*)(&T2_), sizeof(tyObject_TFullReg__GJRDbRqzZnSsmt2gZMzKBA));
	rawExecute__OUDseXSU2midLA4bLXt3gg(c, start, tos, (&T2_));
	result = regToNode__HO9bL9ak2QSkZAdn9c9bm5TDKA(T2_);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, evalStmt__3adyU8iOjrejcUotYJRmVQ)(tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
	NI start;
	n_2 = transformExpr__o9bTtoSsaDmuiyVzV15dOyg((*c).graph, (*c).module, n);
	start = genStmt__PEuKCZcy9a56kIfBOLoHU5Q_3(c, n_2);
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
		if (!!((((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) ((NU64)((NU64)((NU64)((*c).code->data[start]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__AHjjN19bk88ZQLW4paSubVQ) 0)))) goto LA3_;
		T5_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		T5_ = execute__xH4DZUl51vOZwpwgQRlgnA(c, start);
		(void)(T5_);
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, myProcess__Owg2e1qJ9cqcKRBQZVvmIWg)(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* c_2;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	c_2 = ((tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw*) (c));
	{
		if (!((*c_2).oldErrorCount == (*(*c_2).config).errorCounter)) goto LA3_;
		evalStmt__3adyU8iOjrejcUotYJRmVQ(c_2, n);
		result = newNodeI__vokyXY9cZDshCSxFKChhG9bg(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*n).info);
	}
	goto LA1_;
	LA3_: ;
	{
		result = n;
	}
	LA1_: ;
	(*c_2).oldErrorCount = (*(*c_2).config).errorCounter;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, myClose__9cMiASXBM9bgOmq0622U8U0g)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = myProcess__Owg2e1qJ9cqcKRBQZVvmIWg(c, n);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, compiler_vmDatInit000)(void) {

/* section: NIM_merge_TYPE_INIT1 */
static TNimNode* TM__pyAIA9cUF0h9c4j2HfNQPfYw_7_2[2];
static TNimNode* TM__pyAIA9cUF0h9c4j2HfNQPfYw_126_3[3];
static TNimNode TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[7];

/* section: NIM_merge_TYPE_INIT3 */
NTI__m9bElogmdcDLEy9czU5AZr6g_.size = sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g);
NTI__m9bElogmdcDLEy9czU5AZr6g_.align = NIM_ALIGNOF(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g);
NTI__m9bElogmdcDLEy9czU5AZr6g_.kind = 17;
NTI__m9bElogmdcDLEy9czU5AZr6g_.base = (&NTI__ytyiCJqK439aF9cIibuRVpAg_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_7_2[0] = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[1];
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[1].kind = 1;
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[1].offset = offsetof(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g, colonstate_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[1].typ = (&NTI__xHTZrq9aYs6boc9bCba0JbpQ_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[1].name = ":state";
TM__pyAIA9cUF0h9c4j2HfNQPfYw_7_2[1] = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[2];
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[2].kind = 1;
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[2].offset = offsetof(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g, c1);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[2].typ = (&NTI__FD9cVFUpCDGxUmwW7TEZIFQ_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[2].name = "c1";
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[0].len = 2; TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[0].kind = 2; TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[0].sons = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_7_2[0];
NTI__m9bElogmdcDLEy9czU5AZr6g_.node = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[0];
NTI__8Qi2Yy1dXWyP64byz4WwVw_.size = sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*);
NTI__8Qi2Yy1dXWyP64byz4WwVw_.align = NIM_ALIGNOF(tyObject_Env_vmopsdotnim_registerAdditionalOps___m9bElogmdcDLEy9czU5AZr6g*);
NTI__8Qi2Yy1dXWyP64byz4WwVw_.kind = 22;
NTI__8Qi2Yy1dXWyP64byz4WwVw_.base = (&NTI__m9bElogmdcDLEy9czU5AZr6g_);
NTI__8Qi2Yy1dXWyP64byz4WwVw_.marker = Marker_tyRef__8Qi2Yy1dXWyP64byz4WwVw;
NTI__jd629aT6A2Mu9ci3rTLr9bzFw_.size = sizeof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw);
NTI__jd629aT6A2Mu9ci3rTLr9bzFw_.align = NIM_ALIGNOF(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw);
NTI__jd629aT6A2Mu9ci3rTLr9bzFw_.kind = 17;
NTI__jd629aT6A2Mu9ci3rTLr9bzFw_.base = (&NTI__ytyiCJqK439aF9cIibuRVpAg_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_126_3[0] = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[4];
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[4].kind = 1;
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[4].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw, colonstate_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[4].typ = (&NTI__xHTZrq9aYs6boc9bCba0JbpQ_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[4].name = ":state";
TM__pyAIA9cUF0h9c4j2HfNQPfYw_126_3[1] = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[5];
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[5].kind = 1;
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[5].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw, error1);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[5].typ = (&NTI__77mFvmsOLKik79ci2hXkHEg_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[5].name = "error1";
TM__pyAIA9cUF0h9c4j2HfNQPfYw_126_3[2] = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[6];
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[6].kind = 1;
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[6].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw, error2);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[6].typ = (&NTI__77mFvmsOLKik79ci2hXkHEg_);
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[6].name = "error2";
TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[3].len = 3; TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[3].kind = 2; TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[3].sons = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_126_3[0];
NTI__jd629aT6A2Mu9ci3rTLr9bzFw_.node = &TM__pyAIA9cUF0h9c4j2HfNQPfYw_0[3];
NTI__i0OKJxPqBBZH5nTqNgi3yQ_.size = sizeof(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*);
NTI__i0OKJxPqBBZH5nTqNgi3yQ_.align = NIM_ALIGNOF(tyObject_Env_vmdotnim_rawExecute___jd629aT6A2Mu9ci3rTLr9bzFw*);
NTI__i0OKJxPqBBZH5nTqNgi3yQ_.kind = 22;
NTI__i0OKJxPqBBZH5nTqNgi3yQ_.base = (&NTI__jd629aT6A2Mu9ci3rTLr9bzFw_);
NTI__i0OKJxPqBBZH5nTqNgi3yQ_.marker = Marker_tyRef__i0OKJxPqBBZH5nTqNgi3yQ;
}

