/* Generated by Nim Compiler v1.6.14 */
#define NIM_INTBITS 64
#define NIM_EmulateOverflowChecks

#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
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw;
typedef struct tyObject_TSym__3r34mwqcVmg5JFNmiaVncw tyObject_TSym__3r34mwqcVmg5JFNmiaVncw;
typedef struct tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg;
typedef struct tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg;
typedef struct tySequence__RNhZxf20g9beyq5VBOGxhDg tySequence__RNhZxf20g9beyq5VBOGxhDg;
typedef struct tySequence__JbK5aK9aVhc9cJZzQYg1wQlQ tySequence__JbK5aK9aVhc9cJZzQYg1wQlQ;
typedef struct tySequence__lFbCtu5P2Kf7YDYtGjkxAQ tySequence__lFbCtu5P2Kf7YDYtGjkxAQ;
typedef struct tyObject_Table__nODIJ5l6JnEl9a6LYuqISLA tyObject_Table__nODIJ5l6JnEl9a6LYuqISLA;
typedef struct tySequence__ijtae5OneaLys0hN9alAicA tySequence__ijtae5OneaLys0hN9alAicA;
typedef struct tyObject_Table__s3itmS9cUUFQ19alF7UA0T1w tyObject_Table__s3itmS9cUUFQ19alF7UA0T1w;
typedef struct tySequence__SerjNoUujW2dUouVBrJiCw tySequence__SerjNoUujW2dUouVBrJiCw;
typedef struct tyObject_Table__r0v8BdcBPKhl73K8p2VMUA tyObject_Table__r0v8BdcBPKhl73K8p2VMUA;
typedef struct tySequence__K9agbtcb0qPZuSJFXB9cTe6g tySequence__K9agbtcb0qPZuSJFXB9cTe6g;
typedef struct tyObject_Table__KsPP7K7LW9aa3YAq1XN9cDZg tyObject_Table__KsPP7K7LW9aa3YAq1XN9cDZg;
typedef struct tySequence__m88qdML9cQOuqGAQn6XWL1A tySequence__m88qdML9cQOuqGAQn6XWL1A;
typedef struct tyObject_Table__1hIWbTQWYT4BmhdESze57A tyObject_Table__1hIWbTQWYT4BmhdESze57A;
typedef struct tySequence__naEbXEp9b9aiW1zXJorqf9cXQ tySequence__naEbXEp9b9aiW1zXJorqf9cXQ;
typedef struct tyObject_Table__9cHFtxtpgztIcDsypRz9byKw tyObject_Table__9cHFtxtpgztIcDsypRz9byKw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tyObject_PackedConfig__aqQhF9bElTH51s7bVamv3vA tyObject_PackedConfig__aqQhF9bElTH51s7bVamv3vA;
typedef struct tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw;
typedef struct tySequence__ed0C0uAUZPhvw3RAc5hfYg tySequence__ed0C0uAUZPhvw3RAc5hfYg;
typedef struct tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw;
typedef struct tyObject_TrunkcolonObjectType___2fEZuM4UuXkgO9bDnaMLLWg tyObject_TrunkcolonObjectType___2fEZuM4UuXkgO9bDnaMLLWg;
typedef struct tySequence__q9cq1Li6c1nMjHpacEbCj0g tySequence__q9cq1Li6c1nMjHpacEbCj0g;
typedef struct tyObject_Table__imojfg883tkWsWJwyshGqQ tyObject_Table__imojfg883tkWsWJwyshGqQ;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tyObject_Table__BCPh85PHtwxox9bv7NLFrlg tyObject_Table__BCPh85PHtwxox9bv7NLFrlg;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct RootObj RootObj;
typedef struct tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ;
typedef struct tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ;
typedef struct tyObject_Table__mLYbj79bHyPPDPv4GGJx9bqA tyObject_Table__mLYbj79bHyPPDPv4GGJx9bqA;
typedef struct tySequence__KgiZ29chkJAD01p9aLRB32qw tySequence__KgiZ29chkJAD01p9aLRB32qw;
typedef struct tyObject_Table__LM44poVdVEn4Mo4N4L8c3A tyObject_Table__LM44poVdVEn4Mo4N4L8c3A;
typedef struct tySequence__rkYRZrbHVYL3nhXlQW3K9bw tySequence__rkYRZrbHVYL3nhXlQW3K9bw;
typedef struct tySequence__IRFEb1e9bxgbJLuB5xrdZsQ tySequence__IRFEb1e9bxgbJLuB5xrdZsQ;
typedef struct tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA;
typedef struct tyObject_Table__sEMwnZ9aATDhH19cNIt9bn9cyQ tyObject_Table__sEMwnZ9aATDhH19cNIt9bn9cyQ;
typedef struct tySequence__YmPd0eWfcTfrVYrthlXPYA tySequence__YmPd0eWfcTfrVYrthlXPYA;
typedef struct tyObject_Table__WtPprFMQ6tkKi9bQSH3IVpw tyObject_Table__WtPprFMQ6tkKi9bQSH3IVpw;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
typedef struct tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q;
typedef struct tySequence__Hz5SYwQU29b9aFLt09blvVQPg tySequence__Hz5SYwQU29b9aFLt09blvVQPg;
typedef struct tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tyObject_Table__R7JnJQEipxxOlJWXQz7jWg tyObject_Table__R7JnJQEipxxOlJWXQz7jWg;
typedef struct tySequence__3G9aA9cLXaPxuRxMKm3anacQ tySequence__3G9aA9cLXaPxuRxMKm3anacQ;
typedef struct tySequence__bPFv6ypvvCX2A9a9al8utL2Q tySequence__bPFv6ypvvCX2A9a9al8utL2Q;
typedef struct tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw;
typedef struct tySequence__IeU9azYSNIK3V9b36Ir6NZcw tySequence__IeU9azYSNIK3V9b36Ir6NZcw;
typedef struct tyObject_Operators__dR4s9bCO53rZjV9a30JJfUOg tyObject_Operators__dR4s9bCO53rZjV9a30JJfUOg;
typedef struct tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA;
typedef struct tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA;
typedef struct tySequence__mIo9bZUsotCEUUtEGNhYmaA tySequence__mIo9bZUsotCEUUtEGNhYmaA;
typedef struct tySequence__8rKxBHaz7QqNR9a4WIZqqqQ tySequence__8rKxBHaz7QqNR9a4WIZqqqQ;
typedef struct tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
typedef struct tySequence__KLItBKQec3LJzPmfiYYfQA tySequence__KLItBKQec3LJzPmfiYYfQA;
typedef struct tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg;
typedef struct tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg;
typedef struct tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg;
typedef struct tySequence__vKogasEnJSPhbQmA8r4Y9aA tySequence__vKogasEnJSPhbQmA8r4Y9aA;
typedef struct tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw;
typedef struct tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ;
typedef struct tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg;
typedef struct tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ;
typedef struct tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw;
typedef struct tySequence__YdLNCDKYeipzJx3I8Xw82Q tySequence__YdLNCDKYeipzJx3I8Xw82Q;
typedef struct tySequence__Gl8s23LA3EFz4kIlya9ameg tySequence__Gl8s23LA3EFz4kIlya9ameg;
typedef struct tyObject_PProccolonObjectType___1XP6mUlNhJdzLnDeBOqcVw tyObject_PProccolonObjectType___1XP6mUlNhJdzLnDeBOqcVw;
typedef struct tySequence__eJWcQvhuN2q0rM6THoByqQ tySequence__eJWcQvhuN2q0rM6THoByqQ;
typedef struct tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw;
typedef struct tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ;
typedef struct tySequence__ztPIC2M9bqhs0KjYuE9c9cN8g tySequence__ztPIC2M9bqhs0KjYuE9c9cN8g;
typedef struct tyObject_Table__7ACYz5IhOEwzTBvwo6BO9bg tyObject_Table__7ACYz5IhOEwzTBvwo6BO9bg;
typedef struct tySequence__E8pi9b5QNahsURYzXMjh3qw tySequence__E8pi9b5QNahsURYzXMjh3qw;
typedef struct tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g;
typedef struct tyObject_CellSeq__nav876ELHgxScHhs30CKiA tyObject_CellSeq__nav876ELHgxScHhs30CKiA;
typedef struct tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ;
typedef struct tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ;
typedef struct tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ;
typedef struct tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw;
typedef struct tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA;
typedef struct tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA;
typedef struct tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A;
typedef struct tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg;
typedef struct tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw;
typedef struct tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw;
typedef struct tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA;
typedef struct tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg;
typedef struct tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA;
typedef struct tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ;
typedef struct tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA;
typedef struct tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA;
typedef struct tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA;
typedef struct Exception Exception;
typedef struct tySequence__QbmGqFaLnb1IWWToREeaIA tySequence__QbmGqFaLnb1IWWToREeaIA;
typedef struct TSafePoint TSafePoint;
typedef struct tyTuple__QB4wB1IRKr0TTP39ahEzqYw tyTuple__QB4wB1IRKr0TTP39ahEzqYw;
typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
typedef struct tySequence__qoz9b2fDIpsvVqgQYTLWcFA tySequence__qoz9b2fDIpsvVqgQYTLWcFA;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w;
typedef struct tySequence__wOOG2VKbTPdEdoo59cOatCw tySequence__wOOG2VKbTPdEdoo59cOatCw;
typedef struct tySequence__UyAyNhiI7poI9amqn9aUHktQ tySequence__UyAyNhiI7poI9amqn9aUHktQ;
typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
typedef struct tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q tySequence__4eQHGndY6XBYpFOH09apV8Q;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q;
typedef struct tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA;
typedef struct tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA;
typedef struct tyTuple__0c626sqvYlRHlzCEcJoxaA tyTuple__0c626sqvYlRHlzCEcJoxaA;
typedef struct tyTuple__5pg9aIYdyrJM6GlDgyTDumg tyTuple__5pg9aIYdyrJM6GlDgyTDumg;
typedef struct tyTuple__0kvMmS5xZnGod4dGyClDyg tyTuple__0kvMmS5xZnGod4dGyClDyg;
typedef struct tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ;
typedef struct tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q;
typedef struct tyObject_NodecolonObjectType___NOM0ZpqV9bLtofkCilAnZ8A tyObject_NodecolonObjectType___NOM0ZpqV9bLtofkCilAnZ8A;
typedef struct tyTuple__xBIQCKakCgKTQ7wLgy259cg tyTuple__xBIQCKakCgKTQ7wLgy259cg;
typedef struct tyObject_Iface__4y9aWdJBxraQYTl5Pa1NMuQ tyObject_Iface__4y9aWdJBxraQYTl5Pa1NMuQ;
typedef struct tySequence__qeAsXh2i1GAL5Nl0g3OP8g tySequence__qeAsXh2i1GAL5Nl0g3OP8g;
typedef struct tyObject_LoadedModule__fihS6xbKhtLC0fhM28Cpeg tyObject_LoadedModule__fihS6xbKhtLC0fhM28Cpeg;
typedef struct tyObject_PackedModule__Lx6uQ9baEALysaHmfFGXw9ag tyObject_PackedModule__Lx6uQ9baEALysaHmfFGXw9ag;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
typedef struct tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg;
typedef struct tySequence__4Murtwnm0Fyc7F9acrytEXw tySequence__4Murtwnm0Fyc7F9acrytEXw;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
typedef struct tySequence__wE9cZkGC9cv7Iz9ckZOIyaW9aw tySequence__wE9cZkGC9cv7Iz9ckZOIyaW9aw;
typedef struct tySequence__QnmOtn1Iv4LvxOXoMn8Rbg tySequence__QnmOtn1Iv4LvxOXoMn8Rbg;
typedef struct tySequence__oKtVqsc9bQVCNyrijELM4OQ tySequence__oKtVqsc9bQVCNyrijELM4OQ;
typedef struct tySequence__qy6Iwdy00wN560qud54HTg tySequence__qy6Iwdy00wN560qud54HTg;
typedef struct tySequence__k67v9bwvvQDmS1ynyGGUbeQ tySequence__k67v9bwvvQDmS1ynyGGUbeQ;
typedef struct tySequence__cLsClAAfd0MKkoBQVyvdvw tySequence__cLsClAAfd0MKkoBQVyvdvw;
typedef struct tySequence__q9bTuOB0JXh1iZ3CSGdRLbg tySequence__q9bTuOB0JXh1iZ3CSGdRLbg;
typedef struct tySequence__DPZr9aMyRppVlNZ9ajSyOZ9bw tySequence__DPZr9aMyRppVlNZ9ajSyOZ9bw;
typedef struct tyObject_BiTable__f1TRECC4Lgx6Suak6pB8oQ tyObject_BiTable__f1TRECC4Lgx6Suak6pB8oQ;
typedef struct tyObject_BiTable__YFXXoy9ajAIwHK4kQgVvjcw tyObject_BiTable__YFXXoy9ajAIwHK4kQgVvjcw;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
typedef struct tyObject_Table__jSCM9c8LtAedYb1zTNR73sQ tyObject_Table__jSCM9c8LtAedYb1zTNR73sQ;
typedef struct tySequence__C3r8jsj9chA4sIlYfDN5aDw tySequence__C3r8jsj9chA4sIlYfDN5aDw;
typedef struct tyObject_PackedEncoder__ftUl9bxYRlbT5ToKkxHdbfQ tyObject_PackedEncoder__ftUl9bxYRlbT5ToKkxHdbfQ;
typedef struct tyObject_Table__7OytuYts9c9a3BX9aQNPGI0gQ tyObject_Table__7OytuYts9c9a3BX9aQNPGI0gQ;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
typedef struct tyTuple__UluY8x0Nj6cp9b0o88wJ0lg tyTuple__UluY8x0Nj6cp9b0o88wJ0lg;
typedef struct tySequence__dlD6tEGzYLLpKVq3XwuFlA tySequence__dlD6tEGzYLLpKVq3XwuFlA;
typedef struct tyObject_LazyType__wgv9a1JCOBXm9azerxcvz5gQ tyObject_LazyType__wgv9a1JCOBXm9azerxcvz5gQ;
typedef struct tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg;
typedef struct tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ;
typedef struct tyTuple__rZZA0skon1OsHdiEvT8RZQ tyTuple__rZZA0skon1OsHdiEvT8RZQ;
typedef struct tySequence__6OFCSvqRaxyEgUqWtnZSlw tySequence__6OFCSvqRaxyEgUqWtnZSlw;
typedef struct tyObject_LazyInstantiation__0l1i6PfjQKnMEvpGMAoN8Q tyObject_LazyInstantiation__0l1i6PfjQKnMEvpGMAoN8Q;
typedef struct tySequence__UnGSk9aaLosDroi2QDrlOfQ tySequence__UnGSk9aaLosDroi2QDrlOfQ;
typedef struct tyObject_TInstantiation__ScJwrSJM8Lp9ahM9b3AS1apA tyObject_TInstantiation__ScJwrSJM8Lp9ahM9b3AS1apA;
typedef struct tyTuple__q13Zt16VkCqu6Zg5jWqwHA tyTuple__q13Zt16VkCqu6Zg5jWqwHA;
typedef struct tyTuple__aWN9bNzF9bubXNJV9ciomgpfA tyTuple__aWN9bNzF9bubXNJV9ciomgpfA;
typedef struct tySequence__m4PVWjcAAjfxlwJxLkKn8A tySequence__m4PVWjcAAjfxlwJxLkKn8A;
typedef struct tyTuple__RWXAsQlFoGYyEQZp1G65sg tyTuple__RWXAsQlFoGYyEQZp1G65sg;
typedef struct tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg;
typedef struct tyTuple__RmGJuqOgEaHckHndh0LEsw tyTuple__RmGJuqOgEaHckHndh0LEsw;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__J4cxakKjhKxTIJR9bojMmXw tyTuple__J4cxakKjhKxTIJR9bojMmXw;
typedef struct tySequence__i89c5kdtWKzK3OEiI81pkkw tySequence__i89c5kdtWKzK3OEiI81pkkw;
typedef struct tyObject_SymInfoPair__SjZT5Rln3r9befMWWSryQ0A tyObject_SymInfoPair__SjZT5Rln3r9befMWWSryQ0A;
typedef struct tyTuple__VwWg1orPZ9b5Rg9aZAI6SIaQ tyTuple__VwWg1orPZ9b5Rg9aZAI6SIaQ;
typedef struct tySequence__GR8qmV1kNRcoQ2g76VFy3A tySequence__GR8qmV1kNRcoQ2g76VFy3A;
typedef struct tyTuple__a7QginWFapakKbWJBJ2vfA tyTuple__a7QginWFapakKbWJBJ2vfA;
typedef struct tyTuple__mPT6B9cVWqwVnWb1Fxx9bgyA tyTuple__mPT6B9cVWqwVnWb1Fxx9bgyA;
typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
typedef struct tyTuple__kbX6x85REySUrk9auORL0vw tyTuple__kbX6x85REySUrk9auORL0vw;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__Ah6ua9a8WyUOs9aO9afW59cy0g tyTuple__Ah6ua9a8WyUOs9aO9afW59cy0g;
typedef struct tyTuple__nF9cH4hinXgGEUwO4G2bshw tyTuple__nF9cH4hinXgGEUwO4G2bshw;
typedef struct tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw;
typedef struct tyTuple__0y4YQo9b9byJ83c0H89bBtdRw tyTuple__0y4YQo9b9byJ83c0H89bBtdRw;
typedef struct tyObject_StackTraceEntry__3r2E7OgmrW3VdUTaooCuyA tyObject_StackTraceEntry__3r2E7OgmrW3VdUTaooCuyA;
typedef struct tyObject_TBlock__65dcPwuICorQ6X0g9a7oKkQ tyObject_TBlock__65dcPwuICorQ6X0g9a7oKkQ;
typedef struct tyTuple__VJYnlz9ax09cmmFsZGV9axIWg tyTuple__VJYnlz9ax09cmmFsZGV9axIWg;
typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
typedef struct tyObject_PackedNode__9aA1ZskrZ0b0RCXxY4Hw8YA tyObject_PackedNode__9aA1ZskrZ0b0RCXxY4Hw8YA;
typedef struct tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA;
typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
typedef struct tyTuple__PsEhl3dzznmmJiLAuIXZOg tyTuple__PsEhl3dzznmmJiLAuIXZOg;
typedef struct tyTuple__Dg3ILQdzHFjrYRx6Xwbq3w tyTuple__Dg3ILQdzHFjrYRx6Xwbq3w;
typedef struct tyTuple__Db8CrQifKGIsKc3w71w7Lw tyTuple__Db8CrQifKGIsKc3w71w7Lw;
typedef struct tyObject_PackedInstantiation__wt9ao6lqcInu9aOmUoxgkWcg tyObject_PackedInstantiation__wt9ao6lqcInu9aOmUoxgkWcg;
typedef struct tySequence__lo3S1lKyiPLhGGB9cBawd6A tySequence__lo3S1lKyiPLhGGB9cBawd6A;
typedef struct tyTuple__Q9cwWJO3ddVfos2xI7N9cHHQ tyTuple__Q9cwWJO3ddVfos2xI7N9cHHQ;
typedef struct tyTuple__FEYH9alRJhHD0uTKF2vnIqw tyTuple__FEYH9alRJhHD0uTKF2vnIqw;
typedef struct tyObject_PackedSym__fAjcBcJ2JPtzDDxyIN8WmA tyObject_PackedSym__fAjcBcJ2JPtzDDxyIN8WmA;
typedef struct tyObject_PackedLib__djDv9aFBRsdjnMVLdFGA0nA tyObject_PackedLib__djDv9aFBRsdjnMVLdFGA0nA;
typedef struct tyObject_PackedType__MvipqCfEd9b9bJbbBPwsUOiw tyObject_PackedType__MvipqCfEd9b9bJbbBPwsUOiw;
typedef struct tyTuple__VUJ5Hjm4tKAResBsRHJvYg tyTuple__VUJ5Hjm4tKAResBsRHJvYg;
typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
struct tyObject_Table__nODIJ5l6JnEl9a6LYuqISLA {
tySequence__ijtae5OneaLys0hN9alAicA* data;
NI counter;
};
struct tyObject_Table__s3itmS9cUUFQ19alF7UA0T1w {
tySequence__SerjNoUujW2dUouVBrJiCw* data;
NI counter;
};
struct tyObject_Table__r0v8BdcBPKhl73K8p2VMUA {
tySequence__K9agbtcb0qPZuSJFXB9cTe6g* data;
NI counter;
};
typedef tyObject_Table__r0v8BdcBPKhl73K8p2VMUA tyArray__46hjIasL27aUz9c7kgtWooQ[5];
struct tyObject_Table__KsPP7K7LW9aa3YAq1XN9cDZg {
tySequence__m88qdML9cQOuqGAQn6XWL1A* data;
NI counter;
};
struct tyObject_Table__1hIWbTQWYT4BmhdESze57A {
tySequence__naEbXEp9b9aiW1zXJorqf9cXQ* data;
NI counter;
};
struct tyObject_Table__9cHFtxtpgztIcDsypRz9byKw {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
typedef NU8 tyEnum_TBackend__zoooocqvga73vZuhGAAy6A;
typedef NU8 tyEnum_TGCMode__yHeclYqeKaCEfMHNbcWn4w;
typedef NU8 tyEnum_TSystemCC__DqbWIQj9a2XvtXkztox3VFQ;
typedef NU32 tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ;
typedef NU64 tySet_tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg;
struct tyObject_PackedConfig__aqQhF9bElTH51s7bVamv3vA {
tyEnum_TBackend__zoooocqvga73vZuhGAAy6A backend;
tyEnum_TGCMode__yHeclYqeKaCEfMHNbcWn4w selectedGC;
tyEnum_TSystemCC__DqbWIQj9a2XvtXkztox3VFQ cCompiler;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
tySet_tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg globalOptions;
};
struct tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw {
NI counter;
tySequence__ed0C0uAUZPhvw3RAc5hfYg* data;
};
typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw {
NI elems;
NI counter;
NI max;
tyObject_TrunkcolonObjectType___2fEZuM4UuXkgO9bDnaMLLWg* head;
tySequence__q9cq1Li6c1nMjHpacEbCj0g* data;
tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
struct tyObject_Table__imojfg883tkWsWJwyshGqQ {
tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
NI counter;
};
struct tyObject_Table__BCPh85PHtwxox9bv7NLFrlg {
tySequence__kxu4GK0onha2t9bo86mdVAg* data;
NI counter;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
struct tyObject_Table__mLYbj79bHyPPDPv4GGJx9bqA {
tySequence__KgiZ29chkJAD01p9aLRB32qw* data;
NI counter;
};
struct tyObject_Table__LM44poVdVEn4Mo4N4L8c3A {
tySequence__rkYRZrbHVYL3nhXlQW3K9bw* data;
NI counter;
};
typedef tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* tyArray__9atk2qEPO7ASGmt9cDlOE9b9cg[65];
struct tyObject_Table__sEMwnZ9aATDhH19cNIt9bn9cyQ {
tySequence__YmPd0eWfcTfrVYrthlXPYA* data;
NI counter;
};
struct tyObject_Table__WtPprFMQ6tkKi9bQSH3IVpw {
tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*, tyProc__I6rzVhdiYtUh7jwWJQoeyw) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* m, NI32 fileIdx);
typedef N_NIMCALL_PTR(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, tyProc__EQOAUyRkp9c3eeiGlHvCThA) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* m, NI32 fileIdx);
struct tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q {
tySequence__Hz5SYwQU29b9aFLt09blvVQPg* data;
NI counter;
};
struct tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g {
tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
NI counter;
};
struct tyObject_Table__R7JnJQEipxxOlJWXQz7jWg {
tySequence__3G9aA9cLXaPxuRxMKm3anacQ* data;
NI counter;
};
typedef N_NIMCALL_PTR(void, tyProc__1CO5eEh25fBKUWGagpikwg) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
typedef N_NIMCALL_PTR(void, tyProc__VcUg5jOhttLagdxUmVN8Tg) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* body);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__XOkru1xuh2bHzmkw1UYzLA) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* formal, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* actual);
struct tyObject_Operators__dR4s9bCO53rZjV9a30JJfUOg {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opNot;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opContains;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opLe;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opLt;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opAnd;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opOr;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opIsNil;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opEq;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opAdd;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opSub;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opMul;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opDiv;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* opLen;
};
struct tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg {
tySequence__RNhZxf20g9beyq5VBOGxhDg* ifaces;
tySequence__JbK5aK9aVhc9cJZzQYg1wQlQ* packed_0;
tySequence__lFbCtu5P2Kf7YDYtGjkxAQ* encoders;
tyObject_Table__nODIJ5l6JnEl9a6LYuqISLA typeInstCache;
tyObject_Table__s3itmS9cUUFQ19alF7UA0T1w procInstCache;
tyArray__46hjIasL27aUz9c7kgtWooQ attachedOps;
tyObject_Table__KsPP7K7LW9aa3YAq1XN9cDZg methodsPerType;
tyObject_Table__1hIWbTQWYT4BmhdESze57A enumToStringProcs;
tyObject_Table__9cHFtxtpgztIcDsypRz9byKw emittedTypeInfo;
tyObject_PackedConfig__aqQhF9bElTH51s7bVamv3vA startupPackedConfig;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw packageSyms;
tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw deps;
tyObject_Table__imojfg883tkWsWJwyshGqQ importDeps;
NIM_BOOL suggestMode;
NIM_BOOL invalidTransitiveClosure;
tyObject_Table__BCPh85PHtwxox9bv7NLFrlg inclToMod;
tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
RootObj* backend;
tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config;
tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache;
RootObj* vm;
tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* usageSym;
tySequence__ed0C0uAUZPhvw3RAc5hfYg* owners;
tyObject_Table__mLYbj79bHyPPDPv4GGJx9bqA suggestSymbols;
tyObject_Table__LM44poVdVEn4Mo4N4L8c3A suggestErrors;
tySequence__IRFEb1e9bxgbJLuB5xrdZsQ* methods;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* systemModule;
tyArray__9atk2qEPO7ASGmt9cDlOE9b9cg sysTypes;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw compilerprocs;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw exposed;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw packageTypes;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* emptyNode;
tyObject_Table__sEMwnZ9aATDhH19cNIt9bn9cyQ canonTypes;
tyObject_Table__WtPprFMQ6tkKi9bQSH3IVpw symBodyHashes;
tyProc__I6rzVhdiYtUh7jwWJQoeyw importModuleCallback;
tyProc__EQOAUyRkp9c3eeiGlHvCThA includeFileCallback;
tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q cacheSeqs;
tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g cacheCounters;
tyObject_Table__R7JnJQEipxxOlJWXQz7jWg cacheTables;
tySequence__bPFv6ypvvCX2A9a9al8utL2Q* passes;
tyProc__1CO5eEh25fBKUWGagpikwg onDefinition;
tyProc__1CO5eEh25fBKUWGagpikwg onDefinitionResolveForward;
tyProc__1CO5eEh25fBKUWGagpikwg onUsage;
tySequence__IeU9azYSNIK3V9b36Ir6NZcw* globalDestructors;
tyProc__VcUg5jOhttLagdxUmVN8Tg strongSemCheck;
tyProc__XOkru1xuh2bHzmkw1UYzLA compatibleProps;
tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen;
tyObject_Operators__dR4s9bCO53rZjV9a30JJfUOg operators;
};
typedef NU8 tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ;
typedef NU8 tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA {
tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ targetCPU;
tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ hostCPU;
tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw targetOS;
tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringDesc* tnl;
};
struct tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__AR9blT7YaZzdImck9a5cntbQ;
struct tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA {
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__AR9blT7YaZzdImck9a5cntbQ errorOutputs;
tySequence__mIo9bZUsotCEUUtEGNhYmaA* msgContext;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lastError;
tyObject_Table__9cHFtxtpgztIcDsypRz9byKw filenameToIndexTbl;
tySequence__8rKxBHaz7QqNR9a4WIZqqqQ* fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__CPbjHbMoELnjs1sUwb4U6w;
typedef NU8 tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg;
typedef NU8 tyEnum_ExceptionSystem__B9agvczdQhYbOz39atZ7Ap3Q;
typedef NU8 tyEnum_SymbolFilesOption__qvBr4umnK8GxeSOSEgbmLg;
struct tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw {
tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
NI counter;
};
typedef NU32 tySet_tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw;
typedef NU8 tySet_tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g;
typedef NU8 tyEnum_IdeCmd__p9ct5yRAwVUwh1wTpKTgABg;
typedef NU8 tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA[12];
struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
NI Field0;
NI Field1;
NI Field2;
};
typedef NU8 tySet_tyEnum_StdOrrKind__iRAzj081qUCWECwmGroJoA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg* result, void* ClE_0);
void* ClE_0;
} tyProc__Ox1WDSaSyO73VnvAC2a4UA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__ai6Qt9bTOrsyOxOrlIkRHUg;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* msg, tyEnum_Severity__ai6Qt9bTOrsyOxOrlIkRHUg severity, void* ClE_0);
void* ClE_0;
} tyProc__2bM7rNPFiQD9bOvwFI49bKLQ;
struct tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ {
tyEnum_TBackend__zoooocqvga73vZuhGAAy6A backend;
tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA target;
NI linesCompiled;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
tySet_tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg globalOptions;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* macrosToExpand;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* arcToExpand;
tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA m;
tyEnum_FilenameOption__CPbjHbMoELnjs1sUwb4U6w filenameOption;
NimStringDesc* unitSep;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg cmd;
NimStringDesc* cmdInput;
NIM_BOOL projectIsCmd;
NIM_BOOL implicitCmd;
tyEnum_TGCMode__yHeclYqeKaCEfMHNbcWn4w selectedGC;
tyEnum_ExceptionSystem__B9agvczdQhYbOz39atZ7Ap3Q exc;
NIM_BOOL hintProcessingDots;
NI verbosity;
NI numberOfProcessors;
NF lastCmdTime;
tyEnum_SymbolFilesOption__qvBr4umnK8GxeSOSEgbmLg symbolFiles;
NI spellSuggestMax;
tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw cppDefines;
NimStringDesc* headerFile;
tySet_tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw features;
tySet_tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g legacyFeatures;
NimStringDesc* arguments;
tyEnum_IdeCmd__p9ct5yRAwVUwh1wTpKTgABg ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__DqbWIQj9a2XvtXkztox3VFQ cCompiler;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA modifiedyNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA cmdlineNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA foreignPackageNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA notes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA warningAsErrors;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
NIM_BOOL isVmTrace;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* configVars;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* symbols;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
NimStringDesc* outFile;
NimStringDesc* outDir;
NimStringDesc* jsonBuildFile;
NimStringDesc* prefixDir;
NimStringDesc* libpath;
NimStringDesc* nimcacheDir;
tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* dllOverrides;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* moduleOverrides;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* cfileSpecificOptions;
NimStringDesc* projectName;
NimStringDesc* projectPath;
NimStringDesc* projectFull;
NIM_BOOL projectIsStdin;
tySet_tyEnum_StdOrrKind__iRAzj081qUCWECwmGroJoA 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* configFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
NimStringDesc* linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
NimStringDesc* linkOptions;
NimStringDesc* compileOptions;
NimStringDesc* cCompilerPath;
tySequence__KLItBKQec3LJzPmfiYYfQA* toCompile;
tyProc__Ox1WDSaSyO73VnvAC2a4UA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__2bM7rNPFiQD9bOvwFI49bKLQ structuredErrorHook;
NimStringDesc* cppCustomNamespace;
NimStringDesc* nimMainPrefix;
tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg* vmProfileData;
NIM_BOOL expandProgress;
NI expandLevels;
NimStringDesc* expandNodeResult;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw expandPosition;
};
typedef NU8 tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ;
typedef NU8 tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringDesc* Field0;
NI Field1;
NI Field2;
};
typedef NU32 tySet_tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg;
typedef NU8 tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw;
struct tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw {
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
tySet_tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg flags;
tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind;
union{
struct {NI64 intVal;
} _kind_1;
struct {NF floatVal;
} _kind_2;
struct {NimStringDesc* strVal;
} _kind_3;
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
} _kind_4;
struct {tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident;
} _kind_5;
struct {tySequence__IeU9azYSNIK3V9b36Ir6NZcw* sons;
} _kind_6;
};
};
typedef NU8 tyEnum_TNimKind__pspQAsqJLrw3jEKBD9bxmyQ;
typedef NU8 tySet_tyEnum_TNimTypeFlag__Yt5hq6z2IoHhKZrzIVrc1w;
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__pspQAsqJLrw3jEKBD9bxmyQ kind;
tySet_tyEnum_TNimTypeFlag__Yt5hq6z2IoHhKZrzIVrc1w flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
struct RootObj {
TNimType* m_type;
};
struct tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg {
NI32 module;
NI32 item;
};
struct tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA {
  RootObj Sup;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg itemId;
};
typedef NU8 tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg;
typedef NU8 tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg;
typedef NU64 tySet_tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw;
typedef NU8 tyEnum_TLocKind__pD6N6rEUmrrqJbKE02Sezw;
typedef NU8 tyEnum_TStorageLoc__JIS9cieRcL9cZccyO9bM9aBmFQ;
typedef NU16 tySet_tyEnum_TLocFlag__Ic4ywZl9cdJtKSUkG4WZfHw;
struct tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw {
tyEnum_TLocKind__pD6N6rEUmrrqJbKE02Sezw k;
tyEnum_TStorageLoc__JIS9cieRcL9cZccyO9bM9aBmFQ storage;
tySet_tyEnum_TLocFlag__Ic4ywZl9cdJtKSUkG4WZfHw flags;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* lode;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* r;
};
struct tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA {
  tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA Sup;
tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kind;
tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg callConv;
tySet_tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw flags;
tySequence__vKogasEnJSPhbQmA8r4Y9aA* sons;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
NI16 lockLevel;
tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw loc;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typeInst;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg uniqueId;
};
typedef NU8 tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw;
typedef NU16 tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag;
typedef NU64 tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA;
struct tyObject_TSym__3r34mwqcVmg5JFNmiaVncw {
  tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA Sup;
tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw kind;
union{
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* gcUnsafetyReason;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* transformedBody;
} _kind_1;
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* guard;
NI bitsize;
NI alignment;
} _kind_2;
};
tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag magic;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* name;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner;
tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA flags;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* ast;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
NI position;
NI offset;
tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw loc;
tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg* annex;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* constraint;
};
typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
typedef NU16 tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA;
struct tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw {
  RootObj Sup;
tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen;
};
typedef NU8 tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ;
typedef NU8 tySet_tyEnum_TSandboxFlag__6jKj8dTCDIUGegA1P2RahA;
struct tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw {
NF tEnter;
tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos;
};
struct tyObject_Table__7ACYz5IhOEwzTBvwo6BO9bg {
tySequence__E8pi9b5QNahsURYzXMjh3qw* data;
NI counter;
};
struct tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ {
  tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw Sup;
tySequence__YdLNCDKYeipzJx3I8Xw82Q* code;
tySequence__Gl8s23LA3EFz4kIlya9ameg* debug;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* globals;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* constants;
tySequence__vKogasEnJSPhbQmA8r4Y9aA* types;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* currentExceptionA;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* currentExceptionB;
NI exceptionInstr;
tyObject_PProccolonObjectType___1XP6mUlNhJdzLnDeBOqcVw* prc;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* callsite;
tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ mode;
tySet_tyEnum_TSandboxFlag__6jKj8dTCDIUGegA1P2RahA features;
NIM_BOOL traceActive;
NI loopIterations;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw comesFromHeuristic;
tySequence__eJWcQvhuN2q0rM6THoByqQ* callbacks;
NimStringDesc* errorFlag;
tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache;
tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config;
tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph;
NI oldErrorCount;
tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw profiler;
NI* templInstCounter;
tySequence__ztPIC2M9bqhs0KjYuE9c9cN8g* vmstateDiff;
tyObject_Table__7ACYz5IhOEwzTBvwo6BO9bg procToCodePos;
};
struct tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ {
void* bottom;
};
struct tyObject_CellSeq__nav876ELHgxScHhs30CKiA {
NI len;
NI cap;
tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g** d;
};
typedef tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw* tyArray__1eFxjkcKGHnofywkmCV8oQ[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA* tyArray__KxTmKT9a3kTkdwYfqXhEYSw[32];
typedef tyArray__KxTmKT9a3kTkdwYfqXhEYSw tyArray__ATT5LBefmjy9bg8ApRmg3rw[24];
typedef tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg* tyArray__RxhBwkGQwTHLKhoK685Xfg[256];
struct tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A {
tyArray__RxhBwkGQwTHLKhoK685Xfg data;
};
typedef tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* tyArray__DrxDrI9bg9apB70ydOoNZrWw[2];
struct tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw {
tyArray__DrxDrI9bg9apB70ydOoNZrWw link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA {
tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA* Field0;
NI Field1;
};
typedef tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA tyArray__wsokuoa9bVBSU4gPLKbFaaw[30];
struct tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw {
NI len;
tyArray__wsokuoa9bVBSU4gPLKbFaaw chunks;
tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw* next;
};
struct tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ {
NI minLargeObj;
NI maxLargeObj;
tyArray__1eFxjkcKGHnofywkmCV8oQ freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__ATT5LBefmjy9bg8ApRmg3rw matrix;
tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A chunkStarts;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* root;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* deleted;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* last;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw bottomData;
tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw heapLinks;
};
struct tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA {
NI counter;
NI max;
tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ* head;
tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ** data;
};
struct tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ {
tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA zct;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA decStack;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA tempStack;
NI recGcLock;
tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ region;
tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg stat;
tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA marked;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA additionalRoots;
NI gcThreadId;
};
struct tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA {
  RootObj Sup;
NI colonstate_;
tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c1;
};
typedef NU8 tyEnum_TNimNodeKind__rrp49bl1h9aEkXfXp9bNg0yZw;
struct TNimNode {
tyEnum_TNimNodeKind__rrp49bl1h9aEkXfXp9bNg0yZw kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
void* ClE_0;
} tyProc__vkuGXw0bPP9b9cpazTHQY9bqg;
struct tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA {
NI ra;
NI rb;
NI rc;
tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* slots;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* currentException;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw currentLineInfo;
};
typedef NU8 tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg;
struct tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA {
tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg kind;
union{
NI64 intVal;
NF floatVal;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node;
tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* regAddr;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** nodeAddr;
};
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_12) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_14) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_16) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_18) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_20) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_22) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_24) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_26) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_28) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_30) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_32) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_34) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_36) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_38) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_40) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_42) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_44) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_46) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_48) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_50) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_52) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_54) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_56) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_58) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_60) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_62) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_64) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_66) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_68) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_70) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_74) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_77) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_79) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_81) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_83) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_85) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_87) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_89) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_91) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw;
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_93) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_94) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_96) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_98) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_100) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_102) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw;
struct Exception {
  RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringDesc* message;
tySequence__QbmGqFaLnb1IWWToREeaIA* trace;
Exception* up;
};
struct TSafePoint {
TSafePoint* prev;
NI status;
jmp_buf context;
};
typedef NIM_CHAR tyArray__dTlC27m9c9aWd5dvuePYanug[256];
struct tyTuple__QB4wB1IRKr0TTP39ahEzqYw {
tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw Field0;
NimStringDesc* Field1;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_107) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg;
typedef NU8 tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA;
struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
NimStringDesc* Field0;
NI Field1;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_113) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tySet_tyEnum_MsgFlag__20vXBZGIzyW7fngd9aGsclQ;
struct tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc;
tySequence__qoz9b2fDIpsvVqgQYTLWcFA* slots;
tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* next;
NI comesFrom;
tySequence__qwqHTkRvwhrRyENtudHQ7g* safePoints;
};
typedef NU8 tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg;
struct tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w {
NimStringDesc* fullPath;
NimStringDesc* projPath;
NimStringDesc* shortName;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* quotedName;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
NimStringDesc* dirtyFile;
NimStringDesc* hash;
NIM_BOOL dirty;
};
struct tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg {
NI id;
NimStringDesc* s;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* next;
NI h;
};
struct tyObject_PProccolonObjectType___1XP6mUlNhJdzLnDeBOqcVw {
tySequence__wOOG2VKbTPdEdoo59cOatCw* blocks;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
tySequence__UyAyNhiI7poI9amqn9aUHktQ* regInfo;
};
typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
typedef NU8 tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA;
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_129) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_130) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_132) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tySet_tyEnum_ProcessOption__79cHN5ErNkq9cfbLi9bttt3Xw;
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_134) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
struct tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA {
NI64 seconds;
NI nanosecond;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_136) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg[9];
typedef NU8 tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw;
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_142) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_144) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_146) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_149) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_151) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
NimStringDesc* Field0;
NimStringDesc* Field1;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_153) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args, void* ClE_0);
typedef NU8 tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg;
struct tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q {
  RootObj Sup;
NI colonstate_;
tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c1;
tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos2;
NI pc3;
NimStringDesc* error4;
NimStringDesc* error5;
};
typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
typedef NU8 tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NI64 left, NI64 right, NI64 safeLen, void* ClE_0);
void* ClE_0;
} tyProc__TSOsjF4c9aXotPerq9cEE56A;
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_165) (NI64 left, NI64 right, NI64 safeLen);
typedef tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* tyArray__id9c0PBojP5C2oM2bRQSViA[3];
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_166) (NI64 left, NI64 right, NI64 safeLen);
struct tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA {
NI a;
NI64 b;
};
struct tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg {
NI32 module;
NI32 symId;
NI32 typeId_0;
NIM_BOOL sealed;
};
struct tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA {
NimStringDesc* Field0;
tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw Field1;
NimStringDesc* Field2;
NimStringDesc* Field3;
NimStringDesc* Field4;
NI Field5;
};
typedef NU8 tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg;
struct tyTuple__0c626sqvYlRHlzCEcJoxaA {
NimStringDesc* Field0;
tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg Field1;
};
typedef NU8 tySet_tyEnum_TTypeCmpFlag__IRq9bqtrf9ctEUyeRMyvWy4Q;
struct tyTuple__5pg9aIYdyrJM6GlDgyTDumg {
NimStringDesc* Field0;
tyProc__vkuGXw0bPP9b9cpazTHQY9bqg Field1;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_188) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args);
typedef NU8 tyEnum_TSandboxFlag__6jKj8dTCDIUGegA1P2RahA;
typedef NU8 tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A;
struct tyTuple__0kvMmS5xZnGod4dGyClDyg {
tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A Field0;
NI Field1;
};
typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
struct tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ {
tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
};
typedef N_CLOSURE_PTR(void, TM__sQJeTKtOMm7ArbnaG0SDbQ_207) (tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* args);
typedef NU8 tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, void* ClE_0);
void* ClE_0;
} tyProc__9aGJhSmkuel6SMfp4pTpyXA;
typedef tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* tyArray__1iN2CWX9bK5w9bRjT9chFAABA[8192];
struct tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ {
tyArray__1iN2CWX9bK5w9bRjT9chFAABA buckets;
NI wordCounter;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* idAnon;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* idDelegator;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* emptyIdent;
};
typedef tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* tyArray__iegsN9bf6GqRiWprrJjTAoA[1];
struct tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q {
tyObject_NodecolonObjectType___NOM0ZpqV9bLtofkCilAnZ8A* root;
NI entries;
};
struct tyTuple__xBIQCKakCgKTQ7wLgy259cg {
NimStringDesc* Field0;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* Field1;
NI Field2;
};
struct tyObject_Iface__4y9aWdJBxraQYTl5Pa1NMuQ {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module;
tySequence__qeAsXh2i1GAL5Nl0g3OP8g* converters;
tySequence__qeAsXh2i1GAL5Nl0g3OP8g* patterns;
tySequence__qeAsXh2i1GAL5Nl0g3OP8g* pureEnums;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw interf;
tyObject_TStrTable__CJQ42V2zij8fd39a9aMiwtZw interfHidden;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* uniqueName;
};
typedef NU8 tyEnum_ModuleStatus__K6X1Kd9cJ9a0hyG1Twv69bMNg;
struct tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg {
tySequence__4Murtwnm0Fyc7F9acrytEXw* nodes;
};
typedef NU8 tySet_tyEnum_ModuleBackendFlag__1OX8mHZmOJcGSH2EQV6eCQ;
struct tyObject_BiTable__f1TRECC4Lgx6Suak6pB8oQ {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
};
struct tyObject_BiTable__YFXXoy9ajAIwHK4kQgVvjcw {
tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
};
struct tyObject_PackedModule__Lx6uQ9baEALysaHmfFGXw9ag {
NimStringDesc* definedSymbols;
tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA moduleFlags;
tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg toReplay;
tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg topLevel;
tyObject_PackedTree__om9aqqVmbmBPgd8MeBkGtqg bodies;
tySequence__b89aLriiJnVTD186H6zNIgg* exports;
tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
tySequence__wE9cZkGC9cv7Iz9ckZOIyaW9aw* reexports;
tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
tySequence__48JTohSgTy339bRxHzUD8KA* converters;
tySequence__48JTohSgTy339bRxHzUD8KA* methods;
tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
tySequence__QnmOtn1Iv4LvxOXoMn8Rbg* macroUsages;
tySequence__oKtVqsc9bQVCNyrijELM4OQ* typeInstCache;
tySequence__qy6Iwdy00wN560qud54HTg* procInstCache;
tySequence__k67v9bwvvQDmS1ynyGGUbeQ* attachedOps;
tySequence__cLsClAAfd0MKkoBQVyvdvw* methodsPerType;
tySequence__oKtVqsc9bQVCNyrijELM4OQ* enumToStringProcs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
tySet_tyEnum_ModuleBackendFlag__1OX8mHZmOJcGSH2EQV6eCQ backendFlags;
tySequence__q9bTuOB0JXh1iZ3CSGdRLbg* syms;
tySequence__DPZr9aMyRppVlNZ9ajSyOZ9bw* types;
tyObject_BiTable__f1TRECC4Lgx6Suak6pB8oQ strings;
tyObject_BiTable__YFXXoy9ajAIwHK4kQgVvjcw numbers;
tyObject_PackedConfig__aqQhF9bElTH51s7bVamv3vA cfg;
};
struct tyObject_Table__jSCM9c8LtAedYb1zTNR73sQ {
tySequence__C3r8jsj9chA4sIlYfDN5aDw* data;
NI counter;
};
struct tyObject_LoadedModule__fihS6xbKhtLC0fhM28Cpeg {
tyEnum_ModuleStatus__K6X1Kd9cJ9a0hyG1Twv69bMNg status;
NIM_BOOL symsInit;
NIM_BOOL typesInit;
NIM_BOOL loadedButAliveSetChanged;
tyObject_PackedModule__Lx6uQ9baEALysaHmfFGXw9ag fromDisk;
tySequence__ed0C0uAUZPhvw3RAc5hfYg* syms;
tySequence__vKogasEnJSPhbQmA8r4Y9aA* types;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module;
tyObject_Table__jSCM9c8LtAedYb1zTNR73sQ iface;
tyObject_Table__jSCM9c8LtAedYb1zTNR73sQ ifaceHidden;
};
struct tyObject_Table__7OytuYts9c9a3BX9aQNPGI0gQ {
tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
NI counter;
};
struct tyObject_PackedEncoder__ftUl9bxYRlbT5ToKkxHdbfQ {
NI32 thisModule;
NI32 lastFile;
NU32 lastLit;
tyObject_Table__7OytuYts9c9a3BX9aQNPGI0gQ filenames;
tySequence__vKogasEnJSPhbQmA8r4Y9aA* pendingTypes;
tySequence__ed0C0uAUZPhvw3RAc5hfYg* pendingSyms;
tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw typeMarker;
tyObject_PackedSet__THXDbzJSs2hcC9a33en2pdw symMarker;
tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config;
};
struct tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ {
NU32 module;
NI32 item;
};
struct tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg {
NI module;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ packed_0;
};
struct tyObject_LazyType__wgv9a1JCOBXm9azerxcvz5gQ {
tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg id;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
};
struct tyTuple__UluY8x0Nj6cp9b0o88wJ0lg {
NI Field0;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg Field1;
tySequence__dlD6tEGzYLLpKVq3XwuFlA* Field2;
};
struct tyObject_LazyInstantiation__0l1i6PfjQKnMEvpGMAoN8Q {
NI module;
tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg sym;
tySequence__UnGSk9aaLosDroi2QDrlOfQ* concreteTypes;
tyObject_TInstantiation__ScJwrSJM8Lp9ahM9b3AS1apA* inst;
};
struct tyTuple__rZZA0skon1OsHdiEvT8RZQ {
NI Field0;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg Field1;
tySequence__6OFCSvqRaxyEgUqWtnZSlw* Field2;
};
struct tyTuple__q13Zt16VkCqu6Zg5jWqwHA {
NI Field0;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg Field1;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* Field2;
};
struct tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg {
tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg id;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
};
struct tyTuple__RWXAsQlFoGYyEQZp1G65sg {
NI Field0;
tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg Field1;
};
struct tyTuple__aWN9bNzF9bubXNJV9ciomgpfA {
NI Field0;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg Field1;
tySequence__m4PVWjcAAjfxlwJxLkKn8A* Field2;
};
struct tyTuple__RmGJuqOgEaHckHndh0LEsw {
NI Field0;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg Field1;
tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg Field2;
};
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
NI Field0;
NI32 Field1;
tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
};
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
NI Field0;
NI32 Field1;
NI32 Field2;
};
struct tyObject_SymInfoPair__SjZT5Rln3r9befMWWSryQ0A {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
};
struct tyTuple__J4cxakKjhKxTIJR9bojMmXw {
NI Field0;
NI32 Field1;
tySequence__i89c5kdtWKzK3OEiI81pkkw* Field2;
};
struct tyTuple__VwWg1orPZ9b5Rg9aZAI6SIaQ {
NI Field0;
NI32 Field1;
tySequence__GR8qmV1kNRcoQ2g76VFy3A* Field2;
};
struct tyTuple__a7QginWFapakKbWJBJ2vfA {
tySequence__ed0C0uAUZPhvw3RAc5hfYg* Field0;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* Field1;
};
struct tyTuple__mPT6B9cVWqwVnWb1Fxx9bgyA {
NI Field0;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* Field2;
};
struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
NI Field0;
NI Field1;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
};
struct tyTuple__kbX6x85REySUrk9auORL0vw {
NI Field0;
NimStringDesc* Field1;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* Field2;
};
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
NI Field0;
NimStringDesc* Field1;
NI64 Field2;
};
struct tyTuple__Ah6ua9a8WyUOs9aO9afW59cy0g {
NI Field0;
NimStringDesc* Field1;
tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q Field2;
};
typedef N_NIMCALL_PTR(tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw*, tyProc__kqPx9c4py2HW6KcFMhNvxtg) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
typedef N_NIMCALL_PTR(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, tyProc__9c6qRjwy7Es8UkDTIUwAfFA) (tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* p, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* topLevelStmt);
typedef N_NIMCALL_PTR(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, tyProc__mv4BsRs5VEnhcxzV6pQU5w) (tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* p, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
struct tyTuple__nF9cH4hinXgGEUwO4G2bshw {
tyProc__kqPx9c4py2HW6KcFMhNvxtg Field0;
tyProc__9c6qRjwy7Es8UkDTIUwAfFA Field1;
tyProc__mv4BsRs5VEnhcxzV6pQU5w Field2;
NIM_BOOL Field3;
};
struct tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ {
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw Field0;
NimStringDesc* Field1;
};
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringDesc* Field1;
};
typedef NU8 tySet_tyEnum_CfileFlag__S5Qo9byZG8QnIQnJQ0ZDWrA;
struct tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw {
NimStringDesc* nimname;
NimStringDesc* cname;
NimStringDesc* obj;
tySet_tyEnum_CfileFlag__S5Qo9byZG8QnIQnJQ0ZDWrA flags;
NimStringDesc* customArgs;
};
struct tyTuple__0y4YQo9b9byJ83c0H89bBtdRw {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* Field0;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* Field1;
};
struct tyObject_StackTraceEntry__3r2E7OgmrW3VdUTaooCuyA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tyObject_TBlock__65dcPwuICorQ6X0g9a7oKkQ {
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* label;
tySequence__qwqHTkRvwhrRyENtudHQ7g* fixups;
};
typedef NU8 tyEnum_TSlotKind__MaOFY039asb5DVSmSlOHGtA;
struct tyTuple__VJYnlz9ax09cmmFsZGV9axIWg {
NIM_BOOL Field0;
tyEnum_TSlotKind__MaOFY039asb5DVSmSlOHGtA Field1;
};
struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
NU32 Field0;
NimStringDesc* Field1;
};
struct tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA {
NU16 line;
NI16 col;
NU32 file;
};
struct tyObject_PackedNode__9aA1ZskrZ0b0RCXxY4Hw8YA {
tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind;
tySet_tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg flags;
NI32 operand;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ typeId_0;
tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA info;
};
struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
NU32 Field0;
NI32 Field1;
};
struct tyTuple__PsEhl3dzznmmJiLAuIXZOg {
NU32 Field0;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field1;
};
struct tyTuple__Dg3ILQdzHFjrYRx6Xwbq3w {
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field0;
tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA Field1;
};
struct tyTuple__Db8CrQifKGIsKc3w71w7Lw {
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field0;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field1;
};
struct tyObject_PackedInstantiation__wt9ao6lqcInu9aOmUoxgkWcg {
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ key;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ sym;
tySequence__lo3S1lKyiPLhGGB9cBawd6A* concreteTypes;
};
typedef NU8 tyEnum_TTypeAttachedOp__0IDqFfYT9a3F5i6tmCmdORQ;
struct tyTuple__Q9cwWJO3ddVfos2xI7N9cHHQ {
tyEnum_TTypeAttachedOp__0IDqFfYT9a3F5i6tmCmdORQ Field0;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field1;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field2;
};
struct tyTuple__FEYH9alRJhHD0uTKF2vnIqw {
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field0;
NI Field1;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ Field2;
};
typedef NU8 tyEnum_TLibKind__tW9cjoYNrpn2JX4q6fqRnxQ;
struct tyObject_PackedLib__djDv9aFBRsdjnMVLdFGA0nA {
tyEnum_TLibKind__tW9cjoYNrpn2JX4q6fqRnxQ kind;
NIM_BOOL generated;
NIM_BOOL isOverriden;
NU32 name;
NI32 path;
};
struct tyObject_PackedSym__fAjcBcJ2JPtzDDxyIN8WmA {
tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw kind;
NU32 name;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ typ;
tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA flags;
tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag magic;
tyObject_PackedLineInfo__wqhF27DCtLcrB2XHUZKKiA info;
NI32 ast;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ owner;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ guard;
NI bitsize;
NI alignment;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
NI position;
NI offset;
NU32 externalName;
tySet_tyEnum_TLocFlag__Ic4ywZl9cdJtKSUkG4WZfHw locFlags;
tyObject_PackedLib__djDv9aFBRsdjnMVLdFGA0nA annex;
NI32 constraint;
};
struct tyObject_PackedType__MvipqCfEd9b9bJbbBPwsUOiw {
tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kind;
tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg callConv;
tySet_tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw flags;
tySequence__lo3S1lKyiPLhGGB9cBawd6A* types;
NI32 n;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ sym;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ owner;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
NI16 lockLevel;
tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ typeInst;
NI32 nonUniqueId;
};
struct tyTuple__VUJ5Hjm4tKAResBsRHJvYg {
NI Field0;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* Field1;
tySequence__lo3S1lKyiPLhGGB9cBawd6A* Field2;
};
struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
NI Field0;
NI32 Field1;
NU32 Field2;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
  TGenericSeq Sup;
  NU8 data[SEQ_DECL_SIZE];
};
struct tySequence__4eQHGndY6XBYpFOH09apV8Q {
  TGenericSeq Sup;
  tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE];
};
struct tySequence__qoz9b2fDIpsvVqgQYTLWcFA {
  TGenericSeq Sup;
  tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA data[SEQ_DECL_SIZE];
};
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
  TGenericSeq Sup;
  NI data[SEQ_DECL_SIZE];
};
struct tySequence__IeU9azYSNIK3V9b36Ir6NZcw {
  TGenericSeq Sup;
  tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* data[SEQ_DECL_SIZE];
};
struct tySequence__RNhZxf20g9beyq5VBOGxhDg {
  TGenericSeq Sup;
  tyObject_Iface__4y9aWdJBxraQYTl5Pa1NMuQ data[SEQ_DECL_SIZE];
};
struct tySequence__JbK5aK9aVhc9cJZzQYg1wQlQ {
  TGenericSeq Sup;
  tyObject_LoadedModule__fihS6xbKhtLC0fhM28Cpeg data[SEQ_DECL_SIZE];
};
struct tySequence__lFbCtu5P2Kf7YDYtGjkxAQ {
  TGenericSeq Sup;
  tyObject_PackedEncoder__ftUl9bxYRlbT5ToKkxHdbfQ data[SEQ_DECL_SIZE];
};
struct tySequence__dlD6tEGzYLLpKVq3XwuFlA {
  TGenericSeq Sup;
  tyObject_LazyType__wgv9a1JCOBXm9azerxcvz5gQ data[SEQ_DECL_SIZE];
};
struct tySequence__ijtae5OneaLys0hN9alAicA {
  TGenericSeq Sup;
  tyTuple__UluY8x0Nj6cp9b0o88wJ0lg data[SEQ_DECL_SIZE];
};
struct tySequence__6OFCSvqRaxyEgUqWtnZSlw {
  TGenericSeq Sup;
  tyObject_LazyInstantiation__0l1i6PfjQKnMEvpGMAoN8Q data[SEQ_DECL_SIZE];
};
struct tySequence__SerjNoUujW2dUouVBrJiCw {
  TGenericSeq Sup;
  tyTuple__rZZA0skon1OsHdiEvT8RZQ data[SEQ_DECL_SIZE];
};
struct tySequence__K9agbtcb0qPZuSJFXB9cTe6g {
  TGenericSeq Sup;
  tyTuple__q13Zt16VkCqu6Zg5jWqwHA data[SEQ_DECL_SIZE];
};
struct tySequence__m4PVWjcAAjfxlwJxLkKn8A {
  TGenericSeq Sup;
  tyTuple__RWXAsQlFoGYyEQZp1G65sg data[SEQ_DECL_SIZE];
};
struct tySequence__m88qdML9cQOuqGAQn6XWL1A {
  TGenericSeq Sup;
  tyTuple__aWN9bNzF9bubXNJV9ciomgpfA data[SEQ_DECL_SIZE];
};
struct tySequence__naEbXEp9b9aiW1zXJorqf9cXQ {
  TGenericSeq Sup;
  tyTuple__RmGJuqOgEaHckHndh0LEsw data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__ed0C0uAUZPhvw3RAc5hfYg {
  TGenericSeq Sup;
  tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* data[SEQ_DECL_SIZE];
};
struct tySequence__q9cq1Li6c1nMjHpacEbCj0g {
  TGenericSeq Sup;
  tyObject_TrunkcolonObjectType___2fEZuM4UuXkgO9bDnaMLLWg* 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__i89c5kdtWKzK3OEiI81pkkw {
  TGenericSeq Sup;
  tyObject_SymInfoPair__SjZT5Rln3r9befMWWSryQ0A data[SEQ_DECL_SIZE];
};
struct tySequence__KgiZ29chkJAD01p9aLRB32qw {
  TGenericSeq Sup;
  tyTuple__J4cxakKjhKxTIJR9bojMmXw data[SEQ_DECL_SIZE];
};
struct tySequence__GR8qmV1kNRcoQ2g76VFy3A {
  TGenericSeq Sup;
  tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg* data[SEQ_DECL_SIZE];
};
struct tySequence__rkYRZrbHVYL3nhXlQW3K9bw {
  TGenericSeq Sup;
  tyTuple__VwWg1orPZ9b5Rg9aZAI6SIaQ data[SEQ_DECL_SIZE];
};
struct tySequence__IRFEb1e9bxgbJLuB5xrdZsQ {
  TGenericSeq Sup;
  tyTuple__a7QginWFapakKbWJBJ2vfA data[SEQ_DECL_SIZE];
};
struct tySequence__YmPd0eWfcTfrVYrthlXPYA {
  TGenericSeq Sup;
  tyTuple__mPT6B9cVWqwVnWb1Fxx9bgyA data[SEQ_DECL_SIZE];
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
  TGenericSeq Sup;
  tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
};
struct tySequence__Hz5SYwQU29b9aFLt09blvVQPg {
  TGenericSeq Sup;
  tyTuple__kbX6x85REySUrk9auORL0vw data[SEQ_DECL_SIZE];
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
  TGenericSeq Sup;
  tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
};
struct tySequence__3G9aA9cLXaPxuRxMKm3anacQ {
  TGenericSeq Sup;
  tyTuple__Ah6ua9a8WyUOs9aO9afW59cy0g data[SEQ_DECL_SIZE];
};
struct tySequence__bPFv6ypvvCX2A9a9al8utL2Q {
  TGenericSeq Sup;
  tyTuple__nF9cH4hinXgGEUwO4G2bshw data[SEQ_DECL_SIZE];
};
struct tySequence__mIo9bZUsotCEUUtEGNhYmaA {
  TGenericSeq Sup;
  tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ data[SEQ_DECL_SIZE];
};
struct tySequence__8rKxBHaz7QqNR9a4WIZqqqQ {
  TGenericSeq Sup;
  tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w data[SEQ_DECL_SIZE];
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  TGenericSeq Sup;
  tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
};
struct tySequence__KLItBKQec3LJzPmfiYYfQA {
  TGenericSeq Sup;
  tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw data[SEQ_DECL_SIZE];
};
struct tySequence__vKogasEnJSPhbQmA8r4Y9aA {
  TGenericSeq Sup;
  tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* data[SEQ_DECL_SIZE];
};
struct tySequence__YdLNCDKYeipzJx3I8Xw82Q {
  TGenericSeq Sup;
  NU64 data[SEQ_DECL_SIZE];
};
struct tySequence__Gl8s23LA3EFz4kIlya9ameg {
  TGenericSeq Sup;
  tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw data[SEQ_DECL_SIZE];
};
struct tySequence__eJWcQvhuN2q0rM6THoByqQ {
  TGenericSeq Sup;
  tyTuple__5pg9aIYdyrJM6GlDgyTDumg data[SEQ_DECL_SIZE];
};
struct tySequence__ztPIC2M9bqhs0KjYuE9c9cN8g {
  TGenericSeq Sup;
  tyTuple__0y4YQo9b9byJ83c0H89bBtdRw data[SEQ_DECL_SIZE];
};
struct tySequence__E8pi9b5QNahsURYzXMjh3qw {
  TGenericSeq Sup;
  tyTuple__47w2DboNEPf69aPgubZdd7Q data[SEQ_DECL_SIZE];
};
struct tySequence__QbmGqFaLnb1IWWToREeaIA {
  TGenericSeq Sup;
  tyObject_StackTraceEntry__3r2E7OgmrW3VdUTaooCuyA data[SEQ_DECL_SIZE];
};
struct tySequence__wOOG2VKbTPdEdoo59cOatCw {
  TGenericSeq Sup;
  tyObject_TBlock__65dcPwuICorQ6X0g9a7oKkQ data[SEQ_DECL_SIZE];
};
struct tySequence__UyAyNhiI7poI9amqn9aUHktQ {
  TGenericSeq Sup;
  tyTuple__VJYnlz9ax09cmmFsZGV9axIWg data[SEQ_DECL_SIZE];
};
struct tySequence__qeAsXh2i1GAL5Nl0g3OP8g {
  TGenericSeq Sup;
  tyObject_LazySym__Xts9a2Mw4b4jtq73p6MrfJg data[SEQ_DECL_SIZE];
};
struct tySequence__PXIzfWocnrafGz5p3CP5LA {
  TGenericSeq Sup;
  tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
};
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
  TGenericSeq Sup;
  NU32 data[SEQ_DECL_SIZE];
};
struct tySequence__4Murtwnm0Fyc7F9acrytEXw {
  TGenericSeq Sup;
  tyObject_PackedNode__9aA1ZskrZ0b0RCXxY4Hw8YA data[SEQ_DECL_SIZE];
};
struct tySequence__b89aLriiJnVTD186H6zNIgg {
  TGenericSeq Sup;
  tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
};
struct tySequence__wE9cZkGC9cv7Iz9ckZOIyaW9aw {
  TGenericSeq Sup;
  tyTuple__PsEhl3dzznmmJiLAuIXZOg data[SEQ_DECL_SIZE];
};
struct tySequence__QnmOtn1Iv4LvxOXoMn8Rbg {
  TGenericSeq Sup;
  tyTuple__Dg3ILQdzHFjrYRx6Xwbq3w data[SEQ_DECL_SIZE];
};
struct tySequence__oKtVqsc9bQVCNyrijELM4OQ {
  TGenericSeq Sup;
  tyTuple__Db8CrQifKGIsKc3w71w7Lw data[SEQ_DECL_SIZE];
};
struct tySequence__qy6Iwdy00wN560qud54HTg {
  TGenericSeq Sup;
  tyObject_PackedInstantiation__wt9ao6lqcInu9aOmUoxgkWcg data[SEQ_DECL_SIZE];
};
struct tySequence__k67v9bwvvQDmS1ynyGGUbeQ {
  TGenericSeq Sup;
  tyTuple__Q9cwWJO3ddVfos2xI7N9cHHQ data[SEQ_DECL_SIZE];
};
struct tySequence__cLsClAAfd0MKkoBQVyvdvw {
  TGenericSeq Sup;
  tyTuple__FEYH9alRJhHD0uTKF2vnIqw data[SEQ_DECL_SIZE];
};
struct tySequence__q9bTuOB0JXh1iZ3CSGdRLbg {
  TGenericSeq Sup;
  tyObject_PackedSym__fAjcBcJ2JPtzDDxyIN8WmA data[SEQ_DECL_SIZE];
};
struct tySequence__DPZr9aMyRppVlNZ9ajSyOZ9bw {
  TGenericSeq Sup;
  tyObject_PackedType__MvipqCfEd9b9bJbbBPwsUOiw data[SEQ_DECL_SIZE];
};
struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
  TGenericSeq Sup;
  NI64 data[SEQ_DECL_SIZE];
};
struct tySequence__lo3S1lKyiPLhGGB9cBawd6A {
  TGenericSeq Sup;
  tyObject_PackedItemId__QkYBSICiQaMI6SmH4FJVoQ data[SEQ_DECL_SIZE];
};
struct tySequence__C3r8jsj9chA4sIlYfDN5aDw {
  TGenericSeq Sup;
  tyTuple__VUJ5Hjm4tKAResBsRHJvYg data[SEQ_DECL_SIZE];
};
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
  TGenericSeq Sup;
  tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
};
struct tySequence__UnGSk9aaLosDroi2QDrlOfQ {
  TGenericSeq Sup;
  tyObject_FullId__L64puUgQnoQ6OMvT9c6V9cPg data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1128)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
static N_INLINE(NI, safeLen__ast_3148)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NI, len__ast_3155)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NI, len__ast_3990)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* 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__systemZmemory_7)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(void, setupGlobalCtx__vm_14024)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ*, newCtx__vmdef_367)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef__system_5340)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
static N_INLINE(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*, usrToCell__system_5302)(void* usr);
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
static N_INLINE(void, decRef__system_5347)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__system_5345)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5296)(tyObject_CellSeq__nav876ELHgxScHhs30CKiA* s, tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
N_LIB_PRIVATE N_NIMCALL(void, registerAdditionalOps__vm_13319)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c);
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tyRef__QeiW9acdysZjDeuwHbio5Cg)(void* p, NI op);
N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
N_LIB_PRIVATE N_NIMCALL(NI, registerCallback__vmdef_518)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NimStringDesc* name, tyProc__vkuGXw0bPP9b9cpazTHQY9bqg callback);
N_LIB_PRIVATE N_NIMCALL(void, sqrtWrapper__vm_13358)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NI, numArgs__vm_276)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_239)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NF v);
static N_INLINE(void, ensureKind__vm_112)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* n, tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg k);
N_LIB_PRIVATE N_NIMCALL(void, genericShallowAssign)(void* dest, void* src, TNimType* mt);
N_LIB_PRIVATE N_NIMCALL(NF, getFloat__vm_318)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__system_1733)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(void, cbrtWrapper__vm_13365)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, lnWrapper__vm_13372)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, log10Wrapper__vm_13379)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, log2Wrapper__vm_13386)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, expWrapper__vm_13393)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arccosWrapper__vm_13400)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arcsinWrapper__vm_13407)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arctanWrapper__vm_13414)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arcsinhWrapper__vm_13421)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arccoshWrapper__vm_13428)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arctanhWrapper__vm_13435)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, arctan2Wrapper__vm_13442)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, cosWrapper__vm_13444)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, coshWrapper__vm_13451)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, hypotWrapper__vm_13458)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, sinhWrapper__vm_13460)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, sinWrapper__vm_13467)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, tanWrapper__vm_13474)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, tanhWrapper__vm_13481)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, powWrapper__vm_13488)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, truncWrapper__vm_13490)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, floorWrapper__vm_13497)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, ceilWrapper__vm_13504)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, erfWrapper__vm_13511)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, erfcWrapper__vm_13518)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, gammaWrapper__vm_13525)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, lgammaWrapper__vm_13532)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, copySignWrapper__vm_13539)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
static N_INLINE(NF, copySign__vm_13541)(NF x, NF y);
N_LIB_PRIVATE N_NIMCALL(void, signbitWrapper__vm_13555)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_242)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NIM_BOOL v);
static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13565)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NF, round__vm_13568)(NF x, NI places);
N_LIB_PRIVATE N_NIMCALL(NI64, getInt__vm_279)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(void, getMD5Wrapper__vm_13579)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_249)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NimStringDesc* v);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newNode__ast_3289)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw 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__pureZmd53_195)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getString__vm_368)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(void, modWrapper__vm_13581)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, getEnvWrapper__vm_13583)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getEnv__pureZos_418)(NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NIMCALL(void, existsEnvWrapper__vm_13585)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsEnv__pureZos_423)(NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, putEnvWrapper__vm_13587)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, putEnv__pureZos_426)(NimStringDesc* key, NimStringDesc* val);
N_LIB_PRIVATE N_NIMCALL(void, delEnvWrapper__vm_13589)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, delEnv__pureZos_465)(NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, dirExistsWrapper__vm_13591)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosdirExists)(NimStringDesc* dir);
N_LIB_PRIVATE N_NIMCALL(void, fileExistsWrapper__vm_13593)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__vm_13603)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__vm_13605)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__systemZio_474)(NimStringDesc* filename, NimStringDesc* content);
N_LIB_PRIVATE N_NIMCALL(void, readFileWrapper__vm_13607)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, readFile__systemZio_469)(NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(void, readLinesWrapper__vm_13609)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_258)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* v);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_4798)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* father, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* son);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newStrNode__ast_3801)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind, NimStringDesc* strVal);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, readLines__systemZio_492)(NimStringDesc* filename, NI n);
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionMsgWrapper__vm_13186)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, skipColon__ast_4949)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionWrapper__vm_13192)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_252)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13611)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, staticWalkDirImpl__vm_13194)(NimStringDesc* path, NIM_BOOL relative);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
N_LIB_PRIVATE N_NOINLINE(void, raiseOSError__pureZos_405)(NI32 errorCode, NimStringDesc* additionalInfo);
N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__pureZos_408)(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__system_1741)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail);
N_LIB_PRIVATE N_NIMCALL(tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw, getSymlinkFileKind__pureZos_1215)(NimStringDesc* path);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, toLit__vm_13200)(tyTuple__QB4wB1IRKr0TTP39ahEzqYw a);
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__vm_314)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13613)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, querySettingImpl__vm_13235)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NI64 switch_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getNimcacheDir__options_4185)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13615)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, querySettingSeqImpl__vm_13254)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* 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__vm_13325)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, opGorge__gorgeimpl_13)(NimStringDesc* cmd, NimStringDesc* input, NimStringDesc* cache, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyTuple__XOVT24GHXwqiEj5GCsEGCA* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, toLit__vm_13328)(tyTuple__XOVT24GHXwqiEj5GCsEGCA a);
N_LIB_PRIVATE N_CLOSURE(void, getProjectPathWrapper__vm_13356)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13621)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetAppFilename)(void);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13623)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getNode__vm_343)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(void, stackTrace2__vm_13315)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NimStringDesc* msg, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NOINLINE(void, stackTraceImpl__vm_71)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos, NI pc, NimStringDesc* msg, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lineInfo, tyTuple__kN8up2W6YKc5YA9avn5mV5w infoOrigin);
N_LIB_PRIVATE N_NIMCALL(void, msgWriteln__msgs_657)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NimStringDesc* s, tySet_tyEnum_MsgFlag__20vXBZGIzyW7fngd9aGsclQ flags);
N_LIB_PRIVATE N_NIMCALL(void, stackTraceAux__vm_31)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* x, NI pc, NI recursionLimit);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath__msgs_548)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NI32 fileIdx);
static N_INLINE(NI, toLinenumber__msgs_619)(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
static N_INLINE(NI, toColumn__msgs_622)(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw 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___msgs_1003)(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw a, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2116)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___modulegraphs_8985)(tyArray__qtqsWM5aXmcpMIVmvq3kAA u);
N_LIB_PRIVATE N_NIMCALL(void, symBodyDigest__sighashes_547)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13633)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13647)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_CLOSURE(void, hashVmImpl__vm_13649)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NI, hash__pureZhashes_285)(NimStringDesc* sBuf, NI sPos, NI ePos);
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_236)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI64 v);
N_LIB_PRIVATE N_CLOSURE(void, hashVmImplByte__vm_13656)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*, newSeq__vm_13665)(NI len);
static N_NIMCALL(void, Marker_tySequence__6H5Oh5UUvVCLiakt9aTwtUQ)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(NI, hash__vm_13686)(NU8* aBuf, NI aBufLen_0, NI sPos, NI ePos);
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__vm_13710)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__pureZtimes_3614)(void);
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__vm_13714)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__vm_13712)(void);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13720)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetCurrentDir)(void);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13722)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(tySet_tyEnum_ProcessOption__79cHN5ErNkq9cfbLi9bttt3Xw, fromLit__vm_13724)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, toLit__vm_13776)(tyTuple__XOVT24GHXwqiEj5GCsEGCA a);
N_LIB_PRIVATE N_NIMCALL(void, execCmdEx__pureZosproc_1164)(NimStringDesc* command, tySet_tyEnum_ProcessOption__79cHN5ErNkq9cfbLi9bttt3Xw options, tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* env, NimStringDesc* workingDir, NimStringDesc* input, tyTuple__XOVT24GHXwqiEj5GCsEGCA* Result);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13800)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, toLit__vm_13802)(tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA a);
N_LIB_PRIVATE N_NIMCALL(tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA, getTime__pureZtimes_961)(void);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13900)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, getEffectList__vm_13865)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI effectIndex);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newNodeI__ast_3320)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, opMapTypeInstToAst__vmdeps_600)(tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, skipTypes__ast_3723)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kinds);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newIdentNode__ast_3700)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*, getIdent__idents_152)(tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* ic, NimStringDesc* identifier);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13902)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13904)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13915)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13934)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13949)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getVar__vm_393)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i);
N_LIB_PRIVATE N_NIMCALL(void, addFloatRoundtrip__system_3135)(NimStringDesc** result, NF x);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13957)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a);
N_LIB_PRIVATE N_NIMCALL(void, addFloatSprintf__systemZformatfloat_99)(NimStringDesc** result, NF x);
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13962)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* aX60gensym1379_);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, toLit__vm_13975)(tySequence__4eQHGndY6XBYpFOH09apV8Q* a);
static N_INLINE(NIM_BOOL, eqeq___system_7754)(NCSTRING x, NCSTRING y);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindChar)(NimStringDesc* s, NIM_CHAR sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7774)(NimStringDesc* s, NI first, NI last);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7786)(NimStringDesc* s, NI first);
static N_NIMCALL(void, Marker_tySequence__4eQHGndY6XBYpFOH09apV8Q)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void, refresh__vmdef_510)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(NI, genProc__vmgen_3139)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len);
N_LIB_PRIVATE N_NIMCALL(void, setupMacroParam__vm_14172)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result);
N_LIB_PRIVATE N_NIMCALL(void, putIntoReg__vm_513)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* dest, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, prepareVMValue__vm_14123)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, copyNode__ast_4324)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, regToNode__vm_532)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA x);
N_LIB_PRIVATE N_NIMCALL(void, rawExecute__vm_879)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NI start, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result);
static N_NIMCALL(void, Marker_tyRef__SjvuAyjb7I9au2peROwGwDQ)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___msgs_634)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, sourceLine__msgs_1111)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw i);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringDesc** args, NI argsLen_0);
static N_INLINE(void, enter__vmprofiler_8)(tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw* prof, tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos);
N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
N_LIB_PRIVATE N_NIMCALL(NI, cleanUpOnReturn__vm_658)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f);
static N_INLINE(NI*, X5BX5D___vm_670)(NI* s, NI sLen_0, NI i);
static N_INLINE(NI, pop__vm_546)(tySequence__qwqHTkRvwhrRyENtudHQ7g** s);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newNodeIT__ast_3342)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ);
N_LIB_PRIVATE N_NIMCALL(void, asgnComplex__vm_500)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, copyValue__vm_468)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src);
N_LIB_PRIVATE N_NIMCALL(void, commenteq___ast_1365)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NimStringDesc* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, comment__ast_997)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, fastAsgnComplex__vm_503)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y);
N_LIB_PRIVATE N_NIMCALL(void, moveConst__vm_462)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y);
N_LIB_PRIVATE N_CLOSURE(void, rangeCheck__vm_1052)(NI64 left, NI64 right, NI64 safeLen, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newTree__ast_3356)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** children, NI childrenLen_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newIntNode__ast_3711)(tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind, NI64 intVal);
static N_INLINE(NI, safeArrLen__ast_3163)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NIM_BOOL, contains__vm_1178)(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA s, NI value);
static N_INLINE(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA, dotdot___vm_1096)(NI a, NI64 b);
N_LIB_PRIVATE N_NIMCALL(void, takeCharAddress__vm_863)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src, NI64 index, NI pc, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, newType__ast_3884)(tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kind, tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg id, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner);
static N_INLINE(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg, nextTypeId__ast_3122)(tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* x);
N_LIB_PRIVATE N_NIMCALL(void, add__concepts_23)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* father, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* son);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, getSysType__magicsys_60)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kind);
N_LIB_PRIVATE N_NIMCALL(void, nimGCref)(void* p);
N_LIB_PRIVATE N_NIMCALL(void, writeField__vm_506)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** n, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___vm_1475)(tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA* x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__types_50)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg prefer);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, derefPtrToReg__vm_161)(NI64 address, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* r, NIM_BOOL isAssign);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___vm_1717)(tyTuple__0c626sqvYlRHlzCEcJoxaA x);
static N_INLINE(NI64, pluspercent___system_712)(NI64 x, NI64 y);
static N_INLINE(NI64, minuspercent___system_732)(NI64 x, NI64 y);
static N_INLINE(NI, nimCStrLen)(NCSTRING a);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inSet__nimsets_7)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* s, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* elem);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, copyTree__ast_4432)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, diffSets__nimsets_188)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(void, discardSons__ast_3141)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* father);
N_LIB_PRIVATE N_NIMCALL(NI64, cardSet__nimsets_241)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a);
static N_INLINE(NI64, starpercent___system_752)(NI64 x, NI64 y);
static N_INLINE(NF, toBiggestFloat__system_1705)(NI64 i);
static N_INLINE(NF, abs__system_3482)(NF x);
static N_INLINE(NI64, slashpercent___system_772)(NI64 x, NI64 y);
static N_INLINE(NI64, percentpercent___system_792)(NI64 x, NI64 y);
static N_INLINE(NIM_BOOL, lteqpercent___system_1001)(NI64 x, NI64 y);
static N_INLINE(NIM_BOOL, ltpercent___system_1021)(NI64 x, NI64 y);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ptrEquality__vm_2326)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** n1, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameConstant__vmgen_971)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, exprStructuralEquivalent__trees_56)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b, NIM_BOOL strictSymEquality);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameTypeOrNil__types_1910)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* a, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* b, tySet_tyEnum_TTypeCmpFlag__IRq9bqtrf9ctEUyeRMyvWy4Q flags);
static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsSets__nimsets_209)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, equalSets__nimsets_216)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, intersectSets__nimsets_195)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, unionSets__nimsets_181)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, shallowCopy__ast_4414)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, transformBody__transf_16)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc, NIM_BOOL cache);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newSymNode__ast_3704)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*, skipGenericOwner__ast_4659)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_NIMCALL(NI, nimParseBiggestFloat)(NimStringDesc* s, NF* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValueConv__semfold_626)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
static N_INLINE(NIM_BOOL, importcCond__vmgen_2485)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isEmptyBody__vmgen_2469)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getBody__modulegraphs_13094)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, loadProcBody__icZic_8386)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tySequence__JbK5aK9aVhc9cJZzQYg1wQlQ** g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(NI, compile__vm_797)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
static N_INLINE(NIM_BOOL, isEmptyType__ast_4780)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getNullValue__vmgen_2501)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalTemplate__evaltempl_275)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* tmpl, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* genSymOwner, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* ic, NI* instID, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, NIM_BOOL fromHlo);
N_LIB_PRIVATE N_NIMCALL(void, recSetFlagIsRef__vm_802)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arg);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, overlap__nimsets_40)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(void, pushSafePoint__vm_537)(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f, NI pc);
N_LIB_PRIVATE N_NIMCALL(void, popSafePoint__vm_544)(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f);
N_LIB_PRIVATE N_NIMCALL(tyTuple__0kvMmS5xZnGod4dGyClDyg, findExceptionHandler__vm_565)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* exc);
N_LIB_PRIVATE N_NIMCALL(NI, inheritanceDiff__types_2737)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* a, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* b);
N_LIB_PRIVATE N_NIMCALL(void, bailOut__vm_107)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos);
N_NIMCALL(NimStringDesc*, mnewString)(NI len);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fitsRegister__vmgen_1823)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t);
N_LIB_PRIVATE N_NIMCALL(void, reset__vm_3163)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* obj);
N_LIB_PRIVATE N_NIMCALL(void, msgQuit__msgs_452)(NI8 x);
N_LIB_PRIVATE N_NIMCALL(NI, toInt__int495056_273)(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ, getOrdValue__types_161)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ onError);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ, toInt128__types_1431)(NI arg);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__types_1886)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* a, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* b, tySet_tyEnum_TTypeCmpFlag__IRq9bqtrf9ctEUyeRMyvWy4Q flags);
N_LIB_PRIVATE N_NIMCALL(void, setLenSeq__vm_818)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node, NI newLen, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
static N_INLINE(NIM_BOOL, lteqpercent___system_985)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, opMapTypeToAst__vmdeps_594)(tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, opMapTypeImplToAst__vmdeps_606)(tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(NI64, getSize__types_3388)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ);
N_LIB_PRIVATE N_NIMCALL(NI64, getAlign__types_3384)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ);
N_LIB_PRIVATE N_NIMCALL(void, sigHash__sighashes_535)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, opSlurp__vmdeps_9)(NimStringDesc* file, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, parseString__parser_2556)(NimStringDesc* s, tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, NimStringDesc* filename, NI line, tyProc__9aGJhSmkuel6SMfp4pTpyXA errorHandler);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_3821)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, formatMsg__msgs_1121)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_3841)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, void* ClE_0);
static N_INLINE(NimStringDesc*, toFileLineCol__msgs_625)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1441)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_386)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(NI, cmpIgnoreStyle__idents_17)(NCSTRING a, NCSTRING b, NI blen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, opConv__vm_706)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* dest, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA src, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* desttyp, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* srctyp);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_9)(NU64 x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3126)(NF x);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___int495056_417)(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ a, tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ b);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ, toInt128__int495056_909)(NI64 arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ, firstOrd__types_1406)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ, lastOrd__types_1532)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t);
N_LIB_PRIVATE N_NIMCALL(void, delSon__ast_4301)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* father, NI idx);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*, newSym__ast_3409)(tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw symKind, tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* name, tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg id, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options);
static N_INLINE(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg, nextSymId__ast_3103)(tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* x);
N_LIB_PRIVATE N_NIMCALL(NI64, getOrDefault__vm_4290)(tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vm_4732)(tyObject_Table__YnoEqrDMrd9cI9bBg8gj5H3g* t, NimStringDesc* key, NI64 val);
N_LIB_PRIVATE N_NIMCALL(void, recordInc__macrocacheimpl_20)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* key, NI64 by);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__vm_5915)(tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vm_6210)(tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q* t, NimStringDesc* key, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**, X5BX5D___vm_7379)(tyObject_Table__9cOd7jTOg5Zc4i0IfnGho1Q* t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, recordAdd__macrocacheimpl_61)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* key, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val);
N_LIB_PRIVATE N_NIMCALL(void, recordIncl__macrocacheimpl_79)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* key, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__vm_8141)(tyObject_Table__R7JnJQEipxxOlJWXQz7jWg t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vm_8462)(tyObject_Table__R7JnJQEipxxOlJWXQz7jWg* t, NimStringDesc* key, tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q val);
N_LIB_PRIVATE N_NIMCALL(void, initBTree__vm_8401)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* Result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__vm_9768)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*, X5BX5D___vm_9635)(tyObject_Table__R7JnJQEipxxOlJWXQz7jWg* t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, add__vm_10052)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* b, NimStringDesc* key, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val);
N_LIB_PRIVATE N_NIMCALL(void, recordPut__macrocacheimpl_38)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* key, NimStringDesc* k, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val);
static N_INLINE(NI, len__vm_11729)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getOrDefault__vm_12059)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasNext__vm_12432)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b, NI index);
N_LIB_PRIVATE N_NIMCALL(void, next__vm_12583)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b, NI index, tyTuple__xBIQCKakCgKTQ7wLgy259cg* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, newStrNode__ast_3805)(NimStringDesc* strVal, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, loadAny__vmmarshal_1853)(NimStringDesc* s, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tyObject_IdentCachecolonObjectType___ssh0vzVb9aCQuB6ShpimfIQ* cache, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen);
N_LIB_PRIVATE N_NIMCALL(void, createStrKeepNode__vm_214)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, NIM_BOOL keepNode);
N_LIB_PRIVATE N_NIMCALL(void, storeAny__vmmarshal_200)(NimStringDesc** s, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf);
static N_INLINE(void, leave__vmprofiler_690)(tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw* prof, tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c);
N_LIB_PRIVATE N_NOINLINE(void, leaveImpl__vmprofiler_25)(tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw* prof, tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, cyclicTree__trees_44)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalConstExprAux__vm_14047)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ mode);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, transformExpr__transf_1903)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NI, genExpr__vmgen_3384)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NIM_BOOL requiresValue);
N_LIB_PRIVATE N_NIMCALL(void, evalStmt__vm_13072)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NI, genStmt__vmgen_3376)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, execute__vm_13018)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NI start);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, myProcess__vm_14036)(tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_2, "macro instantiation too nested", 30);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_4, "/home/runner/work/nightlies/nightlies/nim/compiler/vm.nim", 57);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_3 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2429),
((NI) 15)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_5, "in call \'$#\' got $#, but expected $# argument(s)", 48);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_6 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2434),
((NI) 15)}
;
extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
N_LIB_PRIVATE TNimType NTIobject__8owSDbS322LE0z2cCFHJMA_;
extern TNimType NTIint__xHTZrq9aYs6boc9bCba0JbpQ_;
extern TNimType NTIpevalcontext__4IKTvAXRLrZvs9cUNEP7Z8w_;
N_LIB_PRIVATE TNimType NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_8, "stdlib.math.sqrt", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_9, "vmops.nim(61, 14) `a.numArgs == 1` ", 35);
extern TNimType NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_10, "vmhooks.nim(40, 12) `i < a.rc - 1` ", 35);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_11, "vmhooks.nim(45, 12) `p.kind == rkFloat` ", 40);
extern TNimType NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_13, "stdlib.math.cbrt", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_15, "stdlib.math.ln", 14);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_17, "stdlib.math.log10", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_19, "stdlib.math.log2", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_21, "stdlib.math.exp", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_23, "stdlib.math.arccos", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_25, "stdlib.math.arcsin", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_27, "stdlib.math.arctan", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_29, "stdlib.math.arcsinh", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_31, "stdlib.math.arccosh", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_33, "stdlib.math.arctanh", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_35, "stdlib.math.arctan2", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_37, "stdlib.math.cos", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_39, "stdlib.math.cosh", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_41, "stdlib.math.hypot", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_43, "stdlib.math.sinh", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_45, "stdlib.math.sin", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_47, "stdlib.math.tan", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_49, "stdlib.math.tanh", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_51, "stdlib.math.pow", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_53, "stdlib.math.trunc", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_55, "stdlib.math.floor", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_57, "stdlib.math.ceil", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_59, "stdlib.math.erf", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_61, "stdlib.math.erfc", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_63, "stdlib.math.gamma", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_65, "stdlib.math.lgamma", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_67, "stdlib.math.copySign", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_69, "stdlib.math.signbit", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_71, "stdlib.math.round", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_72, "vmhooks.nim(45, 12) `p.kind == rkInt` ", 38);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_73, "vmops.nim(213, 20) `false` ", 27);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_75, "stdlib.md5.getMD5", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_76, "vmhooks.nim(45, 12) `p.kind == rkNode` ", 39);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_78, "stdlib.math.mod", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_80, "stdlib.os.getEnv", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_82, "stdlib.os.existsEnv", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_84, "stdlib.os.putEnv", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_86, "stdlib.os.delEnv", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_88, "stdlib.os.dirExists", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_90, "stdlib.os.fileExists", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_92, "stdlib.io.writeFile", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_95, "stdlib.io.readFile", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_97, "stdlib.io.readLines", 19);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_99, "stdlib.system.getCurrentExceptionMsg", 36);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_101, "stdlib.system.getCurrentException", 33);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_103, "stdlib.*.staticWalkDir", 22);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_105, ".", 1);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_106, "..", 2);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_108, "stdlib.compilesettings.querySetting", 35);
extern TNimType NTItbackend__zoooocqvga73vZuhGAAy6A_;
extern TNimType NTItgcmode__yHeclYqeKaCEfMHNbcWn4w_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_109, "stdlib.compilesettings.querySettingSeq", 38);
extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_110, "stdlib.system.gorgeEx", 21);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_111, "stdlib.macros.getProjectPath", 28);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_112, "stdlib.os.getCurrentCompilerExe", 31);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_114, "stdlib.macros.symBodyHash", 25);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_115, "stack trace: (most recent call last)", 36);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_116, " calls omitted\012", 15);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_117, "command line", 12);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_118, "\?\?\?", 3);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_119, ", ", 2);
extern TNimType NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_120 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_118),
((NI) 0),
((NI) -1)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_121, "symBodyHash() requires a symbol. \'$#\' is of kind \'$#\'", 53);
extern TNimType NTItnodekind__clSgDh22o9au33BrVH9bDQZw_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_122, "stdlib.macros.isExported", 24);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_123, "isExported() requires a symbol. \'$#\' is of kind \'$#\'", 52);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_124, "stdlib.vmutils.vmTrace", 22);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_125, "stdlib.hashes.hashVmImpl", 24);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_126, "stdlib.hashes.hashVmImplByte", 28);
extern TNimType NTIbyte__k3HXouOuhqAKq0dx450lXQ_;
N_LIB_PRIVATE TNimType NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_127, "stdlib.hashes.hashVmImplChar", 28);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_128, "stdlib.times.cpuTime", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_131, "stdlib.os.getCurrentDir", 23);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_133, "stdlib.osproc.execCmdEx", 23);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_135, "stdlib.times.getTime", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_137, "stdlib.effecttraits.getRaisesListImpl", 37);
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_138 = {
0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_139, "UncomputedEffects", 17);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_140, "stdlib.effecttraits.getTagsListImpl", 35);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_141, "stdlib.effecttraits.isGcSafeImpl", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_143, "stdlib.effecttraits.hasNoSideEffectsImpl", 40);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_145, "stdlib.typetraits.hasClosureImpl", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_147, "stdlib.formatfloat.addFloatRoundtrip", 36);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_148, "vmhooks.nim(62, 18) `false` ", 28);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_150, "stdlib.formatfloat.addFloatSprintf", 34);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_152, "stdlib.os.envPairsImplSeq", 25);
extern TNimType NTItupleLversion58string_checksum58stringT__UV3llMMYFckfui8YMBuUZA_;
N_LIB_PRIVATE TNimType NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_;
extern TNimType NTIseqLtfullregT__qoz9b2fDIpsvVqgQYTLWcFA_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_154, "expected ", 9);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_155, " generic parameter(s)", 21);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_156 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2471),
((NI) 16)}
;
N_LIB_PRIVATE TNimType NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_;
extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
N_LIB_PRIVATE TNimType NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_158, "$# [$#] $#", 10);
extern TNimType NTItopcode__6Md36HXDC8kz9aZEdeQ4KoQ_;
extern TNimType NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_159, "opcCastPtrToInt: got ", 21);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_160, "opcCastIntToPtr: regs[rb].node.typ: ", 36);
extern TNimType NTIttypekind__b28l2MkhJpnFhatVrsrXpg_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_161, "opcCastIntToPtr: regs[rb].kind: ", 32);
extern TNimType NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_162, "index out of bounds, the container is empty", 43);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_163, "index ", 6);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_164, " not in 0 .. ", 13);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_167, "opcLdArr internal error", 23);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_168, "opcLdArrAddr internal error", 27);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_169, "opcWrArr internal error", 23);
extern TNimType NTItnode__uh9cWvEa5Ty85PXOtuP5emw_;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_170, "attempt to access a nil address ", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_171, "kind", 4);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_172, "typ", 3);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_173, "rc", 2);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_174, "attempt to access a nil address", 31);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_175, "limited VM support for \'addr\', got kind: ", 41);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_176 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 903),
((NI) 31)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_177, "deref unsupported ptr type: ", 28);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_178, "attempt to access a nil address kind: ", 38);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_179, "opcWrDeref internal error", 25);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_180 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 927),
((NI) 29)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_181, "over- or underflow", 18);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_182, "division by zero", 16);
extern NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg abstractInst__ast_356;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_183, "node is not a symbol", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_184, "node is not a proc symbol", 25);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_185, "illegal conversion from \'$1\' to \'$2\'", 36);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_186, "[", 1);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_187, "]", 1);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_189, "VM not allowed to do FFI, see `compiletimeFFI`", 46);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_190 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1344),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_191, "VM not built with FFI support", 29);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_192 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1364),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_193, "interpretation requires too many iterations; if you are sure this is not a bug in your code, compile with `--maxLoopIterationsVM:number` (current value: $1)", 156);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_194 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 481),
((NI) 17)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_195, "vm.nim(1441, 15) `false` ", 25);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_196, "vm.nim(1446, 15) `savedPC < 0` ", 31);
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_197 = {
0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_198, "unhandled exception: ", 21);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_199, " [", 2);
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_200 = {
0x10, 0xa8, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_201, "vm.nim(1563, 16) `node.kind == nkIntLit` ", 41);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_202, "opcLdDeref unsupported type: ", 29);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_203 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1592),
((NI) 15)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_204, "\'", 1);
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_205 = {
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_206, "unhandled exception: value out of range", 39);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_208, "cannot get child of node kind: n", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_209, "typechecked nodes may not be modified", 37);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_210, "cannot set child of node kind: n", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_211, "cannot add to node kind: n", 26);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_212, "node lacks field: intVal", 24);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_213, "node lacks field: floatVal", 26);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_214, "node lacks field: symbol", 24);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_215, "node lacks field: ident", 23);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_216, "node has no type", 16);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_217, "symbol is not a field (nskField)", 32);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_218, "node lacks field: strVal", 24);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_219 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1868),
((NI) 15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_220 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1870),
((NI) 15)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_221, "expected expression, but got multiple statements", 48);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_222, "node lacks field: callsite", 26);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_223, "(", 1);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_224, ")", 1);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_225 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 1918),
((NI) 23)}
;
extern NIM_CONST tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw unknownLineInfo__lineinfos_284;
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_226 = {
0x10, 0xa9, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_227, "opConv for enum", 15);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_228 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 387),
((NI) 46)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_229, " ", 1);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_230, "false", 5);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_231, "true", 4);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_232, "cannot convert to string ", 25);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_233 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 417),
((NI) 19)}
;
static NIM_CONST tySet_tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg TM__sQJeTKtOMm7ArbnaG0SDbQ_234 = {
0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_235, "invalid object-to-object conversion", 35);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_236 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 463),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_237, "cannot evaluate cast", 20);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_238 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2025),
((NI) 19)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_239, "`intVal` cannot be changed for an enum symbol.", 46);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_240 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2061),
((NI) 21)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_241 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2062),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_242, "request to create a NimNode of invalid kind", 43);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_243 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2078),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_244, ":tmp", 4);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_245, "request to create symbol of invalid kind", 40);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_246 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2112),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_247, "key already exists: ", 20);
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_248, "key does not exist: ", 20);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_249 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2224),
((NI) 21)}
;
STRING_LITERAL(TM__sQJeTKtOMm7ArbnaG0SDbQ_250, "macro produced a cyclic tree", 28);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__sQJeTKtOMm7ArbnaG0SDbQ_251 = {((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_4),
((NI) 2477),
((NI) 36)}
;
extern tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ gch__system_5249;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
extern NCSTRING* environ;
static N_INLINE(NI, len__ast_3155)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* 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__ast_3148)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 0) && (*n).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA3_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA3_: ;
	{
		result = len__ast_3155(n);
	}
	LA1_: ;
	return result;
}
static N_INLINE(NI, len__ast_3990)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* 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__systemZmemory_7)(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__systemZmemory_7(p, ((int) 0), size);
}
static N_INLINE(NI, pluspercent___system_696)(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__system_5340)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
}
static N_INLINE(NI, minuspercent___system_716)(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__nhn83Yf9cX7rcmG5W9b4oa6g*, usrToCell__system_5302)(void* usr) {
	tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* result;
	NI T1_;
	result = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
	T1_ = (NI)0;
	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
	result = ((tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*) (T1_));
	return result;
}
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(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__system_5345)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	addZCT__system_5296((&gch__system_5249.zct), c);
}
static N_INLINE(void, decRef__system_5347)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
		if (!T3_) goto LA4_;
		rtlAddZCT__system_5345(c);
	}
	LA4_: ;
}
static N_INLINE(void, asgnRef)(void** dest, void* src) {
	{
		tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* T5_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
		T5_ = usrToCell__system_5302(src);
		incRef__system_5340(T5_);
	}
	LA3_: ;
	{
		tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* T10_;
		if (!!(((*dest) == NIM_NIL))) goto LA8_;
		T10_ = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
		T10_ = usrToCell__system_5302((*dest));
		decRef__system_5347(T10_);
	}
	LA8_: ;
	(*dest) = src;
}
static N_NIMCALL(void, Marker_tyRef__QeiW9acdysZjDeuwHbio5Cg)(void* p, NI op) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* a;
	a = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*)p;
	nimGCvisit((void*)(*a).c1, op);
}
N_LIB_PRIVATE N_NIMCALL(NI, numArgs__vm_276)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NI result;
	result = (NI)0;
	result = (NI)(((NI) ((*a).rc)) - ((NI) 1));
	return result;
}
static N_INLINE(void, ensureKind__vm_112)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* n, tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg k) {
	{
		tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T5_;
		if (!!(((*n).kind == k))) goto LA3_;
		nimZeroMem((void*)(&T5_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		nimZeroMem((void*)(&T5_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		T5_.kind = k;
		genericShallowAssign((void*)(&(*n)), (void*)(&T5_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_239)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NF v) {
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 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)));
}
static N_INLINE(void, copyMem__system_1733)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
		copyMem__system_1733(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(NF, getFloat__vm_318)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	NF result;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* p;
	result = (NF)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_10));
	}
	LA3_: ;
	p = (&(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))]);
	{
		NimStringDesc* T9_;
		if (!!(((*p).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3)))) goto LA7_;
		T9_ = NIM_NIL;
		T9_ = rawNewString((reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 40);
appendString(T9_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_11));
appendString(T9_, reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
		failedAssertImpl__systemZassertions_56(T9_);
	}
	LA7_: ;
	result = (*p).floatVal;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, sqrtWrapper__vm_13358)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = sqrt(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, cbrtWrapper__vm_13365)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = cbrt(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, lnWrapper__vm_13372)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = log(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, log10Wrapper__vm_13379)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = log10(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, log2Wrapper__vm_13386)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = log2(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, expWrapper__vm_13393)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = exp(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arccosWrapper__vm_13400)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = acos(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arcsinWrapper__vm_13407)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = asin(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arctanWrapper__vm_13414)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = atan(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arcsinhWrapper__vm_13421)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = asinh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arccoshWrapper__vm_13428)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = acosh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arctanhWrapper__vm_13435)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = atanh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, arctan2Wrapper__vm_13442)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	NF T2_;
	NF T3_;
	T1_ = (NF)0;
	T1_ = getFloat__vm_318(a, ((NI) 0));
	T2_ = (NF)0;
	T2_ = getFloat__vm_318(a, ((NI) 1));
	T3_ = (NF)0;
	T3_ = atan2(T1_, T2_);
	setResult__vm_239(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, cosWrapper__vm_13444)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = cos(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, coshWrapper__vm_13451)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = cosh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, hypotWrapper__vm_13458)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	NF T2_;
	NF T3_;
	T1_ = (NF)0;
	T1_ = getFloat__vm_318(a, ((NI) 0));
	T2_ = (NF)0;
	T2_ = getFloat__vm_318(a, ((NI) 1));
	T3_ = (NF)0;
	T3_ = hypot(T1_, T2_);
	setResult__vm_239(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, sinhWrapper__vm_13460)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = sinh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, sinWrapper__vm_13467)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = sin(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, tanWrapper__vm_13474)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = tan(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, tanhWrapper__vm_13481)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = tanh(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, powWrapper__vm_13488)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	NF T2_;
	NF T3_;
	T1_ = (NF)0;
	T1_ = getFloat__vm_318(a, ((NI) 0));
	T2_ = (NF)0;
	T2_ = getFloat__vm_318(a, ((NI) 1));
	T3_ = (NF)0;
	T3_ = pow(T1_, T2_);
	setResult__vm_239(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, truncWrapper__vm_13490)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = trunc(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, floorWrapper__vm_13497)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = floor(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, ceilWrapper__vm_13504)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = ceil(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, erfWrapper__vm_13511)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = erf(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, erfcWrapper__vm_13518)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = erfc(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, gammaWrapper__vm_13525)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = tgamma(T6_);
	setResult__vm_239(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(void, lgammaWrapper__vm_13532)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NF T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NF)0;
	T7_ = lgamma(T6_);
	setResult__vm_239(a, T7_);
}
static N_INLINE(NF, copySign__vm_13541)(NF x, NF y) {
	NF result;
	result = (NF)0;
	result = copysign(x, y);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, copySignWrapper__vm_13539)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	NF T2_;
	NF T3_;
	T1_ = (NF)0;
	T1_ = getFloat__vm_318(a, ((NI) 0));
	T2_ = (NF)0;
	T2_ = getFloat__vm_318(a, ((NI) 1));
	T3_ = (NF)0;
	T3_ = copySign__vm_13541(T1_, T2_);
	setResult__vm_239(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_242)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NIM_BOOL v) {
	NI v_2;
	v_2 = v;
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
	(*a).slots[(*a).ra].intVal = ((NI64) (v_2));
}
static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x) {
	NIM_BOOL result;
	int T1_;
	result = (NIM_BOOL)0;
	T1_ = (int)0;
	T1_ = signbit(x);
	result = !((T1_ == ((NI32) 0)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, signbitWrapper__vm_13555)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T6_;
	NIM_BOOL T7_;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = numArgs__vm_276(a);
		if (!!((T3_ == ((NI) 1)))) goto LA4_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_9));
	}
	LA4_: ;
	T6_ = (NF)0;
	T6_ = getFloat__vm_318(a, ((NI) 0));
	T7_ = (NIM_BOOL)0;
	T7_ = signbit__astalgo_926(T6_);
	setResult__vm_242(a, T7_);
}
N_LIB_PRIVATE N_NIMCALL(NI64, getInt__vm_279)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	NI64 result;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* p;
	result = (NI64)0;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_10));
	}
	LA3_: ;
	p = (&(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))]);
	{
		NimStringDesc* T9_;
		if (!!(((*p).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2)))) goto LA7_;
		T9_ = NIM_NIL;
		T9_ = rawNewString((reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 38);
appendString(T9_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_72));
appendString(T9_, reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
		failedAssertImpl__systemZassertions_56(T9_);
	}
	LA7_: ;
	result = (*p).intVal;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13565)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NI n;
	n = numArgs__vm_276(a);
	switch (n) {
	case ((NI) 1):
	{
		NF T2_;
		NF T3_;
		T2_ = (NF)0;
		T2_ = getFloat__vm_318(a, ((NI) 0));
		T3_ = (NF)0;
		T3_ = round(T2_);
		setResult__vm_239(a, T3_);
	}
	break;
	case ((NI) 2):
	{
		NF T5_;
		NI64 T6_;
		NF T7_;
		T5_ = (NF)0;
		T5_ = getFloat__vm_318(a, ((NI) 0));
		T6_ = (NI64)0;
		T6_ = getInt__vm_279(a, ((NI) 1));
		T7_ = (NF)0;
		T7_ = round__vm_13568(T5_, ((NI) (T6_)));
		setResult__vm_239(a, T7_);
	}
	break;
	default:
	{
		{
			NimStringDesc* T13_;
			NimStringDesc* T14_;
			if (!NIM_TRUE) goto LA11_;
			T13_ = NIM_NIL;
			T14_ = NIM_NIL;
			T14_ = dollar___systemZdollars_3(n);
			T13_ = rawNewString((T14_ ? T14_->Sup.len : 0) + 27);
appendString(T13_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_73));
appendString(T13_, T14_);
			failedAssertImpl__systemZassertions_56(T13_);
		}
		LA11_: ;
	}
	break;
	}
}
static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
	tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* T1_;
	T1_ = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
	T1_ = usrToCell__system_5302(p);
	decRef__system_5347(T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_249)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NimStringDesc* v) {
	NimStringDesc* T1_;
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
	T1_ = NIM_NIL;
	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__vm_368)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	NimStringDesc* result;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* p;
	result = NIM_NIL;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_10));
	}
	LA3_: ;
	p = (&(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))]);
	{
		NimStringDesc* T9_;
		if (!!(((*p).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1)))) goto LA7_;
		T9_ = NIM_NIL;
		T9_ = rawNewString((reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 39);
appendString(T9_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_76));
appendString(T9_, reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
		failedAssertImpl__systemZassertions_56(T9_);
	}
	LA7_: ;
	result = copyString((*(*p).node)._kind_3.strVal);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getMD5Wrapper__vm_13579)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = getMD5__pureZmd53_195(T1_);
	setResult__vm_249(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, modWrapper__vm_13581)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	NF T2_;
	NF T3_;
	T1_ = (NF)0;
	T1_ = getFloat__vm_318(a, ((NI) 0));
	T2_ = (NF)0;
	T2_ = getFloat__vm_318(a, ((NI) 1));
	T3_ = (NF)0;
	T3_ = fmod(T1_, T2_);
	setResult__vm_239(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, getEnvWrapper__vm_13583)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = getString__vm_368(a, ((NI) 1));
	T3_ = NIM_NIL;
	T3_ = getEnv__pureZos_418(T1_, T2_);
	setResult__vm_249(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, existsEnvWrapper__vm_13585)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NIM_BOOL T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NIM_BOOL)0;
	T2_ = existsEnv__pureZos_423(T1_);
	setResult__vm_242(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, putEnvWrapper__vm_13587)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = getString__vm_368(a, ((NI) 1));
	putEnv__pureZos_426(T1_, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, delEnvWrapper__vm_13589)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	delEnv__pureZos_465(T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, dirExistsWrapper__vm_13591)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NIM_BOOL T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NIM_BOOL)0;
	T2_ = nosdirExists(T1_);
	setResult__vm_242(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, fileExistsWrapper__vm_13593)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NIM_BOOL T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NIM_BOOL)0;
	T2_ = nosfileExists(T1_);
	setResult__vm_242(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__vm_13603)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
}
N_LIB_PRIVATE N_NIMCALL(void, writeFileWrapper__vm_13605)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = getString__vm_368(a, ((NI) 1));
	writeFile__systemZio_474(T1_, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, readFileWrapper__vm_13607)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = readFile__systemZio_469(T1_);
	setResult__vm_249(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_258)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* v) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
	n = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 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__uh9cWvEa5Ty85PXOtuP5emw* T5_;
				if (!(i < L)) goto LA4;
				x = (&v->data[i]);
				T5_ = NIM_NIL;
				T5_ = newStrNode__ast_3801(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20), (*x));
				add__ast_4798(n, T5_);
				i += ((NI) 1);
			} LA4: ;
		}
	}
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), n);
}
N_LIB_PRIVATE N_NIMCALL(void, readLinesWrapper__vm_13609)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NI64 T2_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T3_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NI64)0;
	T2_ = getInt__vm_279(a, ((NI) 1));
	T3_ = NIM_NIL;
	T3_ = readLines__systemZio_492(T1_, ((NI) (T2_)));
	setResult__vm_258(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionMsgWrapper__vm_13186)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	T1_ = NIM_NIL;
	{
		if (!((*a).currentException == 0)) goto LA4_;
		T1_ = ((NimStringDesc*) NIM_NIL);
	}
	goto LA2_;
	LA4_: ;
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T7_;
		T7_ = NIM_NIL;
		T7_ = skipColon__ast_4949((*(*a).currentException)._kind_6.sons->data[((NI) 3)]);
		T1_ = copyString((*T7_)._kind_3.strVal);
	}
	LA2_: ;
	setResult__vm_249(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_252)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
	unsureAsgnRef((void**) (&(*a).slots[(*a).ra].node), n);
}
N_LIB_PRIVATE N_NIMCALL(void, getCurrentExceptionWrapper__vm_13192)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	setResult__vm_252(a, (*a).currentException);
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
	NCSTRING result;
	result = (NCSTRING)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (s == ((NimStringDesc*) 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__system_2565;
	excHandler__system_2565 = 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__system_1741)(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__system_1741(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = nosjoinPath(head, tail);
	return result;
}
static N_INLINE(void, popSafePoint)(void) {
	excHandler__system_2565 = (*excHandler__system_2565).prev;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, staticWalkDirImpl__vm_13194)(NimStringDesc* path, NIM_BOOL relative) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41));
	{
		tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw k;
		NimStringDesc* f;
		DIR* d;
		k = (tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw)0;
		f = NIM_NIL;
		d = opendir(nimToCStringConv(path));
		{
			if (!(d == ((DIR*) NIM_NIL))) goto LA4_;
			{
				NI32 T10_;
				if (!NIM_FALSE) goto LA8_;
				T10_ = (NI32)0;
				T10_ = osLastError__pureZos_408();
				raiseOSError__pureZos_405(T10_, path);
			}
			LA8_: ;
		}
		goto LA2_;
		LA4_: ;
		{
			TSafePoint TM__sQJeTKtOMm7ArbnaG0SDbQ_104;
			pushSafePoint(&TM__sQJeTKtOMm7ArbnaG0SDbQ_104);
			TM__sQJeTKtOMm7ArbnaG0SDbQ_104.status = setjmp(TM__sQJeTKtOMm7ArbnaG0SDbQ_104.context);
			if (TM__sQJeTKtOMm7ArbnaG0SDbQ_104.status == 0) {
			{
				while (1) {
					{
						struct dirent* x;
						NimStringDesc* y;
						x = readdir(d);
						{
							if (!(x == ((struct dirent*) NIM_NIL))) goto LA17_;
							goto LA12;
						}
						LA17_: ;
						y = cstrToNimstr(((NCSTRING) ((*x).d_name)));
						{
							NIM_BOOL T21_;
							struct stat s;
							NimStringDesc* path_2;
							tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw k_2;
							tyTuple__QB4wB1IRKr0TTP39ahEzqYw T52_;
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T53_;
							T21_ = (NIM_BOOL)0;
							T21_ = !(eqStrings(y, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_105)));
							if (!(T21_)) goto LA22_;
							T21_ = !(eqStrings(y, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_106)));
							LA22_: ;
							if (!T21_) goto LA23_;
							nimZeroMem((void*)(&s), sizeof(struct stat));
							path_2 = slash___pureZos_121(path, y);
							{
								if (!!(relative)) goto LA27_;
								y = copyString(path_2);
							}
							LA27_: ;
							k_2 = ((tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw) 0);
							switch ((*x).d_type) {
							case ((NI) 4):
							{
								k_2 = ((tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw) 2);
							}
							break;
							case ((NI) 10):
							{
								{
									NIM_BOOL T33_;
									T33_ = (NIM_BOOL)0;
									T33_ = nosdirExists(path_2);
									if (!T33_) goto LA34_;
									k_2 = ((tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw) 3);
								}
								goto LA31_;
								LA34_: ;
								{
									k_2 = ((tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw) 1);
								}
								LA31_: ;
							}
							break;
							case ((NI) 0):
							{
								{
									int T40_;
									T40_ = (int)0;
									T40_ = lstat(nimToCStringConv(path_2), (&s));
									if (!(T40_ < ((NI32) 0))) goto LA41_;
									goto LA14;
								}
								goto LA38_;
								LA41_: ;
								{
									NIM_BOOL T44_;
									T44_ = (NIM_BOOL)0;
									T44_ = S_ISDIR(s.st_mode);
									if (!T44_) goto LA45_;
									k_2 = ((tyEnum_PathComponent__Rn0bieszZmgAu0Fd4CF7Yw) 2);
								}
								goto LA38_;
								LA45_: ;
								{
									NIM_BOOL T48_;
									T48_ = (NIM_BOOL)0;
									T48_ = S_ISLNK(s.st_mode);
									if (!T48_) goto LA49_;
									k_2 = getSymlinkFileKind__pureZos_1215(path_2);
								}
								goto LA38_;
								LA49_: ;
								LA38_: ;
							}
							break;
							default:
							{
							}
							break;
							}
							k = k_2;
							f = y;
							nimZeroMem((void*)(&T52_), sizeof(tyTuple__QB4wB1IRKr0TTP39ahEzqYw));
							T52_.Field0 = k;
							T52_.Field1 = copyString(f);
							T53_ = NIM_NIL;
							T53_ = toLit__vm_13200(T52_);
							add__ast_4798(result, T53_);
						}
						LA23_: ;
					} LA14: ;
				}
			} LA12: ;
			popSafePoint();
			}
			else {
				popSafePoint();
			}
			{
				int T56_;
				T56_ = (int)0;
				T56_ = closedir(d);
				(void)(T56_);
				if (TM__sQJeTKtOMm7ArbnaG0SDbQ_104.status != 0) nimLeaveFinally();
			}
			if (TM__sQJeTKtOMm7ArbnaG0SDbQ_104.status != 0) reraiseException();
		}
		LA2_: ;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, getBool__vm_314)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	NIM_BOOL result;
	NI64 T1_;
	result = (NIM_BOOL)0;
	T1_ = (NI64)0;
	T1_ = getInt__vm_279(a, i);
	result = !((T1_ == IL64(0)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13611)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	NIM_BOOL T2_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T3_;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NIM_BOOL)0;
	T2_ = getBool__vm_314(a, ((NI) 1));
	T3_ = NIM_NIL;
	T3_ = staticWalkDirImpl__vm_13194(T1_, T2_);
	setResult__vm_252(a, T3_);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, querySettingImpl__vm_13235)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NI64 switch_0) {
	NimStringDesc* result;
	result = NIM_NIL;
	switch (((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) (switch_0))) {
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 0):
	{
		result = copyString((*conf).arguments);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 1):
	{
		result = copyString((*conf).outFile);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 2):
	{
		result = copyString((*conf).outDir);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 3):
	{
		result = getNimcacheDir__options_4185(conf);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 4):
	{
		result = copyString((*conf).projectName);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 5):
	{
		result = copyString((*conf).projectPath);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 6):
	{
		result = copyString((*conf).projectFull);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 7):
	{
		result = copyString((*conf).command);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 8):
	{
		result = copyString((*conf).commandLine);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 9):
	{
		result = copyString((*conf).linkOptions);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 10):
	{
		result = copyString((*conf).compileOptions);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 11):
	{
		result = copyString((*conf).cCompilerPath);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 12):
	{
		result = reprEnum((NI)(*conf).backend, (&NTItbackend__zoooocqvga73vZuhGAAy6A_));
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 13):
	{
		result = copyString((*conf).libpath);
	}
	break;
	case ((tyEnum_SingleValueSetting__e7A10tDVsXDU6bw7ASMRXg) 14):
	{
		result = reprEnum((NI)(*conf).selectedGC, (&NTItgcmode__yHeclYqeKaCEfMHNbcWn4w_));
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13613)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	NI64 T1_;
	NimStringDesc* T2_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	T1_ = (NI64)0;
	T1_ = getInt__vm_279(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = querySettingImpl__vm_13235((*(*colonenvP_).c1).config, T1_);
	setResult__vm_249(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, querySettingSeqImpl__vm_13254)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, NI64 switch_0) {
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
	result = NIM_NIL;
	switch (((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) (switch_0))) {
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 0):
	{
		{
			NimStringDesc** iX60gensym1207_;
			NI i;
			NI L;
			NI T3_;
			iX60gensym1207_ = (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;
					iX60gensym1207_ = (&(*conf).nimblePaths->data[i]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
					T6_ = result->Sup.len++;
					T7_ = NIM_NIL;
					T7_ = result->data[T6_]; result->data[T6_] = copyStringRC1((*iX60gensym1207_));
					if (T7_) nimGCunrefNoCycle(T7_);
					i += ((NI) 1);
				} LA5: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 1):
	{
		{
			NimStringDesc** iX60gensym1208_;
			NI i_2;
			NI L_2;
			NI T10_;
			iX60gensym1208_ = (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;
					iX60gensym1208_ = (&(*conf).searchPaths->data[i_2]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
					T13_ = result->Sup.len++;
					T14_ = NIM_NIL;
					T14_ = result->data[T13_]; result->data[T13_] = copyStringRC1((*iX60gensym1208_));
					if (T14_) nimGCunrefNoCycle(T14_);
					i_2 += ((NI) 1);
				} LA12: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 2):
	{
		{
			NimStringDesc** iX60gensym1209_;
			NI i_3;
			NI L_3;
			NI T17_;
			iX60gensym1209_ = (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;
					iX60gensym1209_ = (&(*conf).lazyPaths->data[i_3]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
					T20_ = result->Sup.len++;
					T21_ = NIM_NIL;
					T21_ = result->data[T20_]; result->data[T20_] = copyStringRC1((*iX60gensym1209_));
					if (T21_) nimGCunrefNoCycle(T21_);
					i_3 += ((NI) 1);
				} LA19: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 3):
	{
		genericSeqAssign((&result), (*conf).commandArgs, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
	}
	break;
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 4):
	{
		{
			NimStringDesc** iX60gensym1210_;
			NI i_4;
			NI L_4;
			NI T25_;
			iX60gensym1210_ = (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;
					iX60gensym1210_ = (&(*conf).cIncludes->data[i_4]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
					T28_ = result->Sup.len++;
					T29_ = NIM_NIL;
					T29_ = result->data[T28_]; result->data[T28_] = copyStringRC1((*iX60gensym1210_));
					if (T29_) nimGCunrefNoCycle(T29_);
					i_4 += ((NI) 1);
				} LA27: ;
			}
		}
	}
	break;
	case ((tyEnum_MultipleValueSetting__o1AaqF55KWol8pQVluqllA) 5):
	{
		{
			NimStringDesc** iX60gensym1211_;
			NI i_5;
			NI L_5;
			NI T32_;
			iX60gensym1211_ = (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;
					iX60gensym1211_ = (&(*conf).cLibs->data[i_5]);
					result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
					T35_ = result->Sup.len++;
					T36_ = NIM_NIL;
					T36_ = result->data[T35_]; result->data[T35_] = copyStringRC1((*iX60gensym1211_));
					if (T36_) nimGCunrefNoCycle(T36_);
					i_5 += ((NI) 1);
				} LA34: ;
			}
		}
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13615)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	NI64 T1_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T2_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	T1_ = (NI64)0;
	T1_ = getInt__vm_279(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = querySettingSeqImpl__vm_13254((*(*colonenvP_).c1).config, T1_);
	setResult__vm_258(a, T2_);
}
N_LIB_PRIVATE N_CLOSURE(void, gorgeExWrapper__vm_13325)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	tyTuple__XOVT24GHXwqiEj5GCsEGCA ret;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T4_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	nimZeroMem((void*)(&ret), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = NIM_NIL;
	T2_ = getString__vm_368(a, ((NI) 1));
	T3_ = NIM_NIL;
	T3_ = getString__vm_368(a, ((NI) 2));
	opGorge__gorgeimpl_13(T1_, T2_, T3_, (*a).currentLineInfo, (*(*colonenvP_).c1).config, (&ret));
	T4_ = NIM_NIL;
	T4_ = toLit__vm_13328(ret);
	setResult__vm_252(a, T4_);
}
N_LIB_PRIVATE N_CLOSURE(void, getProjectPathWrapper__vm_13356)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	setResult__vm_249(a, (*(*(*colonenvP_).c1).config).projectPath);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13621)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	T1_ = NIM_NIL;
	T1_ = nosgetAppFilename();
	setResult__vm_249(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getNode__vm_343)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* p;
	result = NIM_NIL;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_10));
	}
	LA3_: ;
	p = (&(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))]);
	{
		NimStringDesc* T9_;
		if (!!(((*p).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1)))) goto LA7_;
		T9_ = NIM_NIL;
		T9_ = rawNewString((reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 39);
appendString(T9_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_76));
appendString(T9_, reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
		failedAssertImpl__systemZassertions_56(T9_);
	}
	LA7_: ;
	result = (*p).node;
	return result;
}
static N_INLINE(NI, toLinenumber__msgs_619)(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info) {
	NI result;
	result = (NI)0;
	result = ((NI) (info.line));
	return result;
}
static N_INLINE(NI, toColumn__msgs_622)(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info) {
	NI result;
	result = (NI)0;
	result = ((NI) (info.col));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, stackTraceAux__vm_31)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* x, NI pc, NI recursionLimit) {
{	{
		tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
		NimStringDesc* s;
		NI line;
		NI col;
		if (!!((x == ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL)))) goto LA3_;
		{
			NI calls;
			tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* x_2;
			NimStringDesc* T11_;
			NimStringDesc* T12_;
			if (!(recursionLimit == ((NI) 0))) goto LA7_;
			calls = ((NI) 0);
			x_2 = x;
			{
				while (1) {
					if (!!((x_2 == ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL)))) goto LA10;
					calls += ((NI) 1);
					x_2 = (*x_2).next;
				} LA10: ;
			}
			T11_ = NIM_NIL;
			T12_ = NIM_NIL;
			T12_ = dollar___systemZdollars_3(calls);
			T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + 15);
appendString(T11_, T12_);
appendString(T11_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_116));
			msgWriteln__msgs_657((*c).config, T11_, 4);
			goto BeforeRet_;
		}
		LA7_: ;
		stackTraceAux__vm_31(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__WCvlY9b2UxZ4Fz8D59cE3YSg) 31))&63U)))!=0)) goto LA15_;
			s = toFullPath__msgs_548((*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 == ((tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ*) NIM_NIL));
				LA21_: ;
				if (!T20_) goto LA22_;
				{
					if (!(info.fileIndex == ((NI32) -3))) goto LA26_;
					s = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_117));
				}
				goto LA24_;
				LA26_: ;
				{
					s = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_118));
				}
				LA24_: ;
			}
			goto LA18_;
			LA22_: ;
			{
				s = copyString((*(*c).config).m.fileInfos->data[info.fileIndex].shortName);
			}
			LA18_: ;
		}
		LA13_: ;
		line = toLinenumber__msgs_619(info);
		col = toColumn__msgs_622(info);
		{
			NimStringDesc* T34_;
			NimStringDesc* T35_;
			if (!(((NI) 0) < line)) goto LA32_;
			s = addChar(s, 40);
			T34_ = NIM_NIL;
			T34_ = dollar___systemZdollars_3(line);
			s = resizeString(s, (T34_ ? T34_->Sup.len : 0) + 0);
appendString(s, T34_);
			s = resizeString(s, 2);
appendString(s, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_119));
			T35_ = NIM_NIL;
			T35_ = dollar___systemZdollars_3((NI)(col + ((NI) 1)));
			s = resizeString(s, (T35_ ? T35_->Sup.len : 0) + 0);
appendString(s, T35_);
			s = addChar(s, 41);
		}
		LA32_: ;
		{
			if (!!(((*x).prc == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) 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__msgs_657((*c).config, s, 4);
	}
	LA3_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NOINLINE(void, stackTraceImpl__vm_71)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos, NI pc, NimStringDesc* msg, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lineInfo, tyTuple__kN8up2W6YKc5YA9avn5mV5w infoOrigin) {
	tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w action;
	tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lineInfo_2;
	msgWriteln__msgs_657((*c).config, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_115), 4);
	stackTraceAux__vm_31(c, tos, pc, ((NI) 100));
	{
		if (!((*c).mode == ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 0))) goto LA3_;
		action = ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2);
	}
	goto LA1_;
	LA3_: ;
	{
		action = ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 0);
	}
	LA1_: ;
	{
		tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T8_;
		NIM_BOOL T9_;
		nimZeroMem((void*)(&T8_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
		T9_ = (NIM_BOOL)0;
		T9_ = eqeq___msgs_1003(lineInfo, T8_);
		if (!T9_) goto LA10_;
		lineInfo_2 = (*c).debug->data[pc];
	}
	goto LA6_;
	LA10_: ;
	{
		lineInfo_2 = lineInfo;
	}
	LA6_: ;
	liMessage__msgs_1128((*c).config, lineInfo_2, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), msg, action, infoOrigin, NIM_FALSE);
}
N_LIB_PRIVATE N_NIMCALL(void, stackTrace2__vm_13315)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NimStringDesc* msg, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* T1_;
{	T1_ = NIM_NIL;
	T1_ = (tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) newObj((&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_), sizeof(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ));
	asgnRef((void**) (&(*T1_).prc), (*(*c).prc).sym);
	(*T1_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T1_).next), ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL));
	stackTraceImpl__vm_71(c, T1_, (*c).exceptionInstr, msg, (*n).info, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
	goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13623)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
	tyArray__qtqsWM5aXmcpMIVmvq3kAA T7_;
	NimStringDesc* T8_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	n = getNode__vm_343(a, ((NI) 0));
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T5_;
		NimStringDesc* T6_;
		if (!!(((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3)))) goto LA3_;
		nimZeroMem((void*)T5_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T5_[0] = dollar___renderer_2116(n);
		T5_[1] = reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_));
		T6_ = NIM_NIL;
		T6_ = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_121), T5_, 2);
		stackTrace2__vm_13315((*colonenvP_).c1, T6_, n);
	}
	LA3_: ;
	nimZeroMem((void*)T7_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
	symBodyDigest__sighashes_547((*(*colonenvP_).c1).graph, (*n)._kind_4.sym, T7_);
	T8_ = NIM_NIL;
	T8_ = dollar___modulegraphs_8985(T7_);
	setResult__vm_249(a, T8_);
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13633)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	n = getNode__vm_343(a, ((NI) 0));
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T5_;
		NimStringDesc* T6_;
		if (!!(((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3)))) goto LA3_;
		nimZeroMem((void*)T5_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T5_[0] = dollar___renderer_2116(n);
		T5_[1] = reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_));
		T6_ = NIM_NIL;
		T6_ = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_123), T5_, 2);
		stackTrace2__vm_13315((*colonenvP_).c1, T6_, n);
	}
	LA3_: ;
	setResult__vm_242(a, (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 1))&63U)))!=0));
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13647)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	(*(*(*colonenvP_).c1).config).isVmTrace = getBool__vm_314(a, ((NI) 0));
}
N_LIB_PRIVATE N_NIMCALL(void, setResult__vm_236)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI64 v) {
	ensureKind__vm_112((&(*a).slots[(*a).ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
	(*a).slots[(*a).ra].intVal = v;
}
N_LIB_PRIVATE N_CLOSURE(void, hashVmImpl__vm_13649)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	NI res;
	NimStringDesc* T1_;
	NI64 T2_;
	NI64 T3_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	T1_ = NIM_NIL;
	T1_ = getString__vm_368(a, ((NI) 0));
	T2_ = (NI64)0;
	T2_ = getInt__vm_279(a, ((NI) 1));
	T3_ = (NI64)0;
	T3_ = getInt__vm_279(a, ((NI) 2));
	res = hash__pureZhashes_285(T1_, ((NI) (T2_)), ((NI) (T3_)));
	{
		if (!((*(*(*colonenvP_).c1).config).backend == ((tyEnum_TBackend__zoooocqvga73vZuhGAAy6A) 3))) goto LA6_;
		res = ((NI) (((NI32) (res))));
	}
	LA6_: ;
	setResult__vm_236(a, ((NI64) (res)));
}
static N_NIMCALL(void, Marker_tySequence__6H5Oh5UUvVCLiakt9aTwtUQ)(void* p, NI op) {
	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* a;
	NI T1_;
	a = (tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*)p;
	T1_ = (NI)0;
}
N_LIB_PRIVATE N_CLOSURE(void, hashVmImplByte__vm_13656)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	NI sPos;
	NI64 T1_;
	NI ePos;
	NI64 T2_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arr;
	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* bytes;
	NI T3_;
	NI res;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	T1_ = (NI64)0;
	T1_ = getInt__vm_279(a, ((NI) 1));
	sPos = ((NI) (T1_));
	T2_ = (NI64)0;
	T2_ = getInt__vm_279(a, ((NI) 2));
	ePos = ((NI) (T2_));
	arr = getNode__vm_343(a, ((NI) 0));
	T3_ = (NI)0;
	T3_ = len__ast_3155(arr);
	bytes = newSeq__vm_13665(((NI) (T3_)));
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_3155(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__vm_13686((bytes) ? (bytes->data) : NIM_NIL, (bytes ? bytes->Sup.len : 0), sPos, ePos);
	{
		if (!((*(*(*colonenvP_).c1).config).backend == ((tyEnum_TBackend__zoooocqvga73vZuhGAAy6A) 3))) goto LA9_;
		res = ((NI) (((NI32) (res))));
	}
	LA9_: ;
	setResult__vm_236(a, ((NI64) (res)));
}
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__vm_13710)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	T1_ = (NF)0;
	T1_ = cpuTime__pureZtimes_3614();
	setResult__vm_239(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(NF, cpuTime__vm_13712)(void) {
	NF result;
	result = (NF)0;
	result = 5.391245e-44;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, cpuTimeWrapper__vm_13714)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NF T1_;
	T1_ = (NF)0;
	T1_ = cpuTime__vm_13712();
	setResult__vm_239(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13720)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	NimStringDesc* T1_;
	T1_ = NIM_NIL;
	T1_ = nosgetCurrentDir();
	setResult__vm_249(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13722)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tySet_tyEnum_ProcessOption__79cHN5ErNkq9cfbLi9bttt3Xw options;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1_;
	NimStringDesc* T2_;
	tyTuple__XOVT24GHXwqiEj5GCsEGCA T3_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T4_;
	T1_ = NIM_NIL;
	T1_ = getNode__vm_343(a, ((NI) 1));
	options = fromLit__vm_13724(T1_);
	T2_ = NIM_NIL;
	T2_ = getString__vm_368(a, ((NI) 0));
	nimZeroMem((void*)(&T3_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
	execCmdEx__pureZosproc_1164(T2_, options, ((tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA*) NIM_NIL), ((NimStringDesc*) NIM_NIL), ((NimStringDesc*) NIM_NIL), (&T3_));
	T4_ = NIM_NIL;
	T4_ = toLit__vm_13776(T3_);
	setResult__vm_252(a, T4_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13800)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_Time__4nyPibhNA9bJ9a0FBX1dYOaA T1_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T2_;
	T1_ = getTime__pureZtimes_961();
	T2_ = NIM_NIL;
	T2_ = toLit__vm_13802(T1_);
	setResult__vm_252(a, T2_);
}
N_LIB_PRIVATE N_NIMCALL(void, getEffectList__vm_13865)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI effectIndex) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* fn;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* list;
	fn = getNode__vm_343(a, ((NI) 0));
	list = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41), (*fn).info);
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NI T8_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T5_ = !(((*fn).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
		if (!(T5_)) goto LA6_;
		T5_ = !(((*(*fn).typ).n == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL)));
		LA6_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA7_;
		T8_ = (NI)0;
		T8_ = len__ast_3155((*(*(*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] == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL)));
		LA9_: ;
		if (!T3_) goto LA10_;
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* e;
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* colontmp_;
			e = NIM_NIL;
			colontmp_ = NIM_NIL;
			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__ast_3148(colontmp_);
				i_2 = ((NI) 0);
				{
					while (1) {
						tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T16_;
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T17_;
						if (!(i_2 < colontmp__2)) goto LA15;
						i = i_2;
						e = (*colontmp_)._kind_6.sons->data[i];
						T16_ = NIM_NIL;
						T16_ = skipTypes__ast_3723((*e).typ, TM__sQJeTKtOMm7ArbnaG0SDbQ_138);
						T17_ = NIM_NIL;
						T17_ = opMapTypeInstToAst__vmdeps_600((*c).cache, T16_, (*e).info, (*c).Sup.idgen);
						add__ast_4798(list, T17_);
						i_2 += ((NI) 1);
					} LA15: ;
				}
			}
		}
	}
	goto LA1_;
	LA10_: ;
	{
		tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* T19_;
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T20_;
		T19_ = NIM_NIL;
		T19_ = getIdent__idents_152((*c).cache, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_139));
		T20_ = NIM_NIL;
		T20_ = newIdentNode__ast_3700(T19_, (*fn).info);
		add__ast_4798(list, T20_);
	}
	LA1_: ;
	setResult__vm_252(a, list);
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13900)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	getEffectList__vm_13865((*colonenvP_).c1, a, ((NI) 0));
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_13902)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, void* ClE_0) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenvP_;
	colonenvP_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) ClE_0;
	getEffectList__vm_13865((*colonenvP_).c1, a, ((NI) 3));
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13904)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* fn;
	NIM_BOOL T1_;
	fn = getNode__vm_343(a, ((NI) 0));
	T1_ = (NIM_BOOL)0;
	T1_ = !(((*fn).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
	if (!(T1_)) goto LA2_;
	T1_ = (((*(*fn).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw) 7))&63U)))!=0);
	LA2_: ;
	setResult__vm_242(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13915)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* fn;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T5_;
	fn = getNode__vm_343(a, ((NI) 0));
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = !(((*fn).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
	if (!(T2_)) goto LA3_;
	T2_ = (((*(*fn).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw) 1))&63U)))!=0);
	LA3_: ;
	T1_ = T2_;
	if (T1_) goto LA4_;
	T5_ = (NIM_BOOL)0;
	T5_ = ((*fn).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
	if (!(T5_)) goto LA6_;
	T5_ = ((*(*fn)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 13));
	LA6_: ;
	T1_ = T5_;
	LA4_: ;
	setResult__vm_242(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13934)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* fn;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	fn = getNode__vm_343(a, ((NI) 0));
	T1_ = (NIM_BOOL)0;
	T1_ = ((*fn).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 155));
	if (T1_) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = !(((*fn).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
	if (!(T3_)) goto LA4_;
	T3_ = ((*(*fn).typ).callConv == ((tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg) 9));
	LA4_: ;
	T1_ = T3_;
	LA2_: ;
	setResult__vm_242(a, T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getVar__vm_393)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a, NI i) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* p;
	result = NIM_NIL;
	{
		if (!!((((NI) (i)) < (NI)(((NI) ((*a).rc)) - ((NI) 1))))) goto LA3_;
		failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_10));
	}
	LA3_: ;
	p = (&(*a).slots[(NI)((NI)(((NI) (i)) + ((NI) ((*a).rb))) + ((NI) 1))]);
	switch ((*p).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		result = (*(*p).regAddr).node;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		result = (*(*p).nodeAddr);
	}
	break;
	default:
	{
		{
			NimStringDesc* T12_;
			if (!NIM_TRUE) goto LA10_;
			T12_ = NIM_NIL;
			T12_ = rawNewString((reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 28);
appendString(T12_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_148));
appendString(T12_, reprEnum((NI)(*p).kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
			failedAssertImpl__systemZassertions_56(T12_);
		}
		LA10_: ;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13949)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* p;
	NF x;
	p = getVar__vm_393(a, ((NI) 0));
	x = getFloat__vm_318(a, ((NI) 1));
	addFloatRoundtrip__system_3135((&(*p)._kind_3.strVal), x);
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13957)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* a) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* p;
	NF x;
	p = getVar__vm_393(a, ((NI) 0));
	x = getFloat__vm_318(a, ((NI) 1));
	addFloatSprintf__systemZformatfloat_99((&(*p)._kind_3.strVal), x);
}
static N_INLINE(NIM_BOOL, eqeq___system_7754)(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;
}
static N_NIMCALL(void, Marker_tySequence__4eQHGndY6XBYpFOH09apV8Q)(void* p, NI op) {
	tySequence__4eQHGndY6XBYpFOH09apV8Q* a;
	NI T1_;
	a = (tySequence__4eQHGndY6XBYpFOH09apV8Q*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].Field0, op);
	nimGCvisit((void*)a->data[T1_].Field1, op);
	}
}
N_LIB_PRIVATE N_NIMCALL(void, colonanonymous___vm_13962)(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA* aX60gensym1379_) {
	tySequence__4eQHGndY6XBYpFOH09apV8Q* resultX60gensym1380_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T9_;
	resultX60gensym1380_ = NIM_NIL;
	{
		tyTuple__UV3llMMYFckfui8YMBuUZA xX60gensym1380_;
		nimZeroMem((void*)(&xX60gensym1380_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
		{
			tyTuple__UV3llMMYFckfui8YMBuUZA ai;
			NI i;
			nimZeroMem((void*)(&ai), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
			i = ((NI) 0);
			{
				while (1) {
					NIM_BOOL T5_;
					NimStringDesc* kv;
					NI p;
					NI T6_;
					NimStringDesc* T7_;
					NimStringDesc* T8_;
					T5_ = (NIM_BOOL)0;
					T5_ = eqeq___system_7754(environ[i], ((NCSTRING) NIM_NIL));
					if (!!(T5_)) goto LA4;
					kv = cstrToNimstr(environ[i]);
					i += ((NI) 1);
					p = nsuFindChar(kv, 61, ((NI) 0), ((NI) 0));
					ai.Field0 = substr__system_7774(kv, ((NI) 0), (NI)(p - ((NI) 1)));
					ai.Field1 = substr__system_7786(kv, (NI)(p + ((NI) 1)));
					xX60gensym1380_.Field0 = ai.Field0;
					xX60gensym1380_.Field1 = ai.Field1;
					resultX60gensym1380_ = (tySequence__4eQHGndY6XBYpFOH09apV8Q*) incrSeqV3((TGenericSeq*)(resultX60gensym1380_), (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_));
					T6_ = resultX60gensym1380_->Sup.len++;
					T7_ = NIM_NIL;
					T7_ = resultX60gensym1380_->data[T6_].Field0; resultX60gensym1380_->data[T6_].Field0 = copyStringRC1(xX60gensym1380_.Field0);
					if (T7_) nimGCunrefNoCycle(T7_);
					T8_ = NIM_NIL;
					T8_ = resultX60gensym1380_->data[T6_].Field1; resultX60gensym1380_->data[T6_].Field1 = copyStringRC1(xX60gensym1380_.Field1);
					if (T8_) nimGCunrefNoCycle(T8_);
				} LA4: ;
			}
		}
	}
	T9_ = NIM_NIL;
	T9_ = toLit__vm_13975(resultX60gensym1380_);
	setResult__vm_252(aX60gensym1379_, T9_);
}
N_LIB_PRIVATE N_NIMCALL(void, registerAdditionalOps__vm_13319)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c) {
	tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA* colonenv_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T1_;
	NI T2_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T3_;
	NI T4_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T5_;
	NI T6_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T7_;
	NI T8_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T9_;
	NI T10_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T11_;
	NI T12_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T13_;
	NI T14_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T15_;
	NI T16_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T17_;
	NI T18_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T19_;
	NI T20_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T21_;
	NI T22_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T23_;
	NI T24_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T25_;
	NI T26_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T27_;
	NI T28_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T29_;
	NI T30_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T31_;
	NI T32_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T33_;
	NI T34_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T35_;
	NI T36_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T37_;
	NI T38_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T39_;
	NI T40_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T41_;
	NI T42_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T43_;
	NI T44_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T45_;
	NI T46_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T47_;
	NI T48_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T49_;
	NI T50_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T51_;
	NI T52_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T53_;
	NI T54_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T55_;
	NI T56_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T57_;
	NI T58_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T59_;
	NI T60_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T61_;
	NI T62_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T63_;
	NI T64_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T65_;
	NI T66_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T67_;
	NI T68_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T69_;
	NI T70_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T71_;
	NI T72_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T73_;
	NI T74_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T75_;
	NI T76_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T77_;
	NI T78_;
	NI T79_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T91_;
	NI T92_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T93_;
	NI T94_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T95_;
	NI T96_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T97_;
	NI T98_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T99_;
	NI T100_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T101_;
	NI T102_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T103_;
	NI T104_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T114_;
	NI T115_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T116_;
	NI T117_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T118_;
	NI T119_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T120_;
	NI T121_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T122_;
	NI T123_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T124_;
	NI T125_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T126_;
	NI T127_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T128_;
	NI T129_;
	NI T130_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T150_;
	NI T151_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T152_;
	NI T153_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T154_;
	NI T155_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T156_;
	NI T157_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T158_;
	NI T159_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T160_;
	NI T161_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T162_;
	NI T163_;
	tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T164_;
	NI T165_;
	colonenv_ = NIM_NIL;
	colonenv_ = (tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*) newObj((&NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_), sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA));
	(*colonenv_).Sup.m_type = (&NTIobject__8owSDbS322LE0z2cCFHJMA_);
	asgnRef((void**) (&(*colonenv_).c1), c);
	nimZeroMem((void*)(&T1_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T1_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_12) (sqrtWrapper__vm_13358)); T1_.ClE_0 = NIM_NIL;
	T2_ = (NI)0;
	T2_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_8), T1_);
	nimZeroMem((void*)(&T3_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T3_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_14) (cbrtWrapper__vm_13365)); T3_.ClE_0 = NIM_NIL;
	T4_ = (NI)0;
	T4_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_13), T3_);
	nimZeroMem((void*)(&T5_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T5_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_16) (lnWrapper__vm_13372)); T5_.ClE_0 = NIM_NIL;
	T6_ = (NI)0;
	T6_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_15), T5_);
	nimZeroMem((void*)(&T7_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T7_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_18) (log10Wrapper__vm_13379)); T7_.ClE_0 = NIM_NIL;
	T8_ = (NI)0;
	T8_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_17), T7_);
	nimZeroMem((void*)(&T9_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T9_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_20) (log2Wrapper__vm_13386)); T9_.ClE_0 = NIM_NIL;
	T10_ = (NI)0;
	T10_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_19), T9_);
	nimZeroMem((void*)(&T11_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T11_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_22) (expWrapper__vm_13393)); T11_.ClE_0 = NIM_NIL;
	T12_ = (NI)0;
	T12_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_21), T11_);
	nimZeroMem((void*)(&T13_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T13_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_24) (arccosWrapper__vm_13400)); T13_.ClE_0 = NIM_NIL;
	T14_ = (NI)0;
	T14_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_23), T13_);
	nimZeroMem((void*)(&T15_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T15_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_26) (arcsinWrapper__vm_13407)); T15_.ClE_0 = NIM_NIL;
	T16_ = (NI)0;
	T16_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_25), T15_);
	nimZeroMem((void*)(&T17_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T17_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_28) (arctanWrapper__vm_13414)); T17_.ClE_0 = NIM_NIL;
	T18_ = (NI)0;
	T18_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_27), T17_);
	nimZeroMem((void*)(&T19_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T19_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_30) (arcsinhWrapper__vm_13421)); T19_.ClE_0 = NIM_NIL;
	T20_ = (NI)0;
	T20_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_29), T19_);
	nimZeroMem((void*)(&T21_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T21_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_32) (arccoshWrapper__vm_13428)); T21_.ClE_0 = NIM_NIL;
	T22_ = (NI)0;
	T22_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_31), T21_);
	nimZeroMem((void*)(&T23_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T23_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_34) (arctanhWrapper__vm_13435)); T23_.ClE_0 = NIM_NIL;
	T24_ = (NI)0;
	T24_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_33), T23_);
	nimZeroMem((void*)(&T25_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T25_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_36) (arctan2Wrapper__vm_13442)); T25_.ClE_0 = NIM_NIL;
	T26_ = (NI)0;
	T26_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_35), T25_);
	nimZeroMem((void*)(&T27_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T27_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_38) (cosWrapper__vm_13444)); T27_.ClE_0 = NIM_NIL;
	T28_ = (NI)0;
	T28_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_37), T27_);
	nimZeroMem((void*)(&T29_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T29_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_40) (coshWrapper__vm_13451)); T29_.ClE_0 = NIM_NIL;
	T30_ = (NI)0;
	T30_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_39), T29_);
	nimZeroMem((void*)(&T31_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T31_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_42) (hypotWrapper__vm_13458)); T31_.ClE_0 = NIM_NIL;
	T32_ = (NI)0;
	T32_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_41), T31_);
	nimZeroMem((void*)(&T33_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T33_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_44) (sinhWrapper__vm_13460)); T33_.ClE_0 = NIM_NIL;
	T34_ = (NI)0;
	T34_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_43), T33_);
	nimZeroMem((void*)(&T35_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T35_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_46) (sinWrapper__vm_13467)); T35_.ClE_0 = NIM_NIL;
	T36_ = (NI)0;
	T36_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_45), T35_);
	nimZeroMem((void*)(&T37_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T37_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_48) (tanWrapper__vm_13474)); T37_.ClE_0 = NIM_NIL;
	T38_ = (NI)0;
	T38_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_47), T37_);
	nimZeroMem((void*)(&T39_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T39_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_50) (tanhWrapper__vm_13481)); T39_.ClE_0 = NIM_NIL;
	T40_ = (NI)0;
	T40_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_49), T39_);
	nimZeroMem((void*)(&T41_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T41_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_52) (powWrapper__vm_13488)); T41_.ClE_0 = NIM_NIL;
	T42_ = (NI)0;
	T42_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_51), T41_);
	nimZeroMem((void*)(&T43_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T43_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_54) (truncWrapper__vm_13490)); T43_.ClE_0 = NIM_NIL;
	T44_ = (NI)0;
	T44_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_53), T43_);
	nimZeroMem((void*)(&T45_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T45_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_56) (floorWrapper__vm_13497)); T45_.ClE_0 = NIM_NIL;
	T46_ = (NI)0;
	T46_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_55), T45_);
	nimZeroMem((void*)(&T47_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T47_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_58) (ceilWrapper__vm_13504)); T47_.ClE_0 = NIM_NIL;
	T48_ = (NI)0;
	T48_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_57), T47_);
	nimZeroMem((void*)(&T49_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T49_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_60) (erfWrapper__vm_13511)); T49_.ClE_0 = NIM_NIL;
	T50_ = (NI)0;
	T50_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_59), T49_);
	nimZeroMem((void*)(&T51_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T51_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_62) (erfcWrapper__vm_13518)); T51_.ClE_0 = NIM_NIL;
	T52_ = (NI)0;
	T52_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_61), T51_);
	nimZeroMem((void*)(&T53_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T53_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_64) (gammaWrapper__vm_13525)); T53_.ClE_0 = NIM_NIL;
	T54_ = (NI)0;
	T54_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_63), T53_);
	nimZeroMem((void*)(&T55_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T55_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_66) (lgammaWrapper__vm_13532)); T55_.ClE_0 = NIM_NIL;
	T56_ = (NI)0;
	T56_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_65), T55_);
	nimZeroMem((void*)(&T57_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T57_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_68) (copySignWrapper__vm_13539)); T57_.ClE_0 = NIM_NIL;
	T58_ = (NI)0;
	T58_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_67), T57_);
	nimZeroMem((void*)(&T59_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T59_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_70) (signbitWrapper__vm_13555)); T59_.ClE_0 = NIM_NIL;
	T60_ = (NI)0;
	T60_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_69), T59_);
	nimZeroMem((void*)(&T61_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T61_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_74) (colonanonymous___vm_13565)); T61_.ClE_0 = NIM_NIL;
	T62_ = (NI)0;
	T62_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_71), T61_);
	nimZeroMem((void*)(&T63_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T63_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_77) (getMD5Wrapper__vm_13579)); T63_.ClE_0 = NIM_NIL;
	T64_ = (NI)0;
	T64_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_75), T63_);
	nimZeroMem((void*)(&T65_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T65_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_79) (modWrapper__vm_13581)); T65_.ClE_0 = NIM_NIL;
	T66_ = (NI)0;
	T66_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_78), T65_);
	nimZeroMem((void*)(&T67_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T67_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_81) (getEnvWrapper__vm_13583)); T67_.ClE_0 = NIM_NIL;
	T68_ = (NI)0;
	T68_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_80), T67_);
	nimZeroMem((void*)(&T69_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T69_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_83) (existsEnvWrapper__vm_13585)); T69_.ClE_0 = NIM_NIL;
	T70_ = (NI)0;
	T70_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_82), T69_);
	nimZeroMem((void*)(&T71_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T71_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_85) (putEnvWrapper__vm_13587)); T71_.ClE_0 = NIM_NIL;
	T72_ = (NI)0;
	T72_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_84), T71_);
	nimZeroMem((void*)(&T73_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T73_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_87) (delEnvWrapper__vm_13589)); T73_.ClE_0 = NIM_NIL;
	T74_ = (NI)0;
	T74_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_86), T73_);
	nimZeroMem((void*)(&T75_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T75_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_89) (dirExistsWrapper__vm_13591)); T75_.ClE_0 = NIM_NIL;
	T76_ = (NI)0;
	T76_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_88), T75_);
	nimZeroMem((void*)(&T77_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T77_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_91) (fileExistsWrapper__vm_13593)); T77_.ClE_0 = NIM_NIL;
	T78_ = (NI)0;
	T78_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_90), T77_);
	T79_ = (NI)0;
	{
		NIM_BOOL T82_;
		NIM_BOOL T84_;
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T88_;
		T82_ = (NIM_BOOL)0;
		T82_ = !((((*(*(*colonenv_).c1).config).features &((NU32)1<<((NU)(((tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw) 11))&31U)))!=0));
		if (!(T82_)) goto LA83_;
		T84_ = (NIM_BOOL)0;
		T84_ = NIM_FALSE;
		if (T84_) goto LA85_;
		T84_ = ((*(*(*colonenv_).c1).config).cmd == ((tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg) 8));
		LA85_: ;
		T82_ = T84_;
		LA83_: ;
		if (!T82_) goto LA86_;
		nimZeroMem((void*)(&T88_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T88_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_93) (writeFileWrapper__vm_13603)); T88_.ClE_0 = NIM_NIL;
		T79_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_92), T88_);
	}
	goto LA80_;
	LA86_: ;
	{
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T90_;
		nimZeroMem((void*)(&T90_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T90_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_94) (writeFileWrapper__vm_13605)); T90_.ClE_0 = NIM_NIL;
		T79_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_92), T90_);
	}
	LA80_: ;
	nimZeroMem((void*)(&T91_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T91_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_96) (readFileWrapper__vm_13607)); T91_.ClE_0 = NIM_NIL;
	T92_ = (NI)0;
	T92_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_95), T91_);
	nimZeroMem((void*)(&T93_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T93_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_98) (readLinesWrapper__vm_13609)); T93_.ClE_0 = NIM_NIL;
	T94_ = (NI)0;
	T94_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_97), T93_);
	nimZeroMem((void*)(&T95_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T95_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_100) (getCurrentExceptionMsgWrapper__vm_13186)); T95_.ClE_0 = NIM_NIL;
	T96_ = (NI)0;
	T96_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_99), T95_);
	nimZeroMem((void*)(&T97_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T97_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_102) (getCurrentExceptionWrapper__vm_13192)); T97_.ClE_0 = NIM_NIL;
	T98_ = (NI)0;
	T98_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_101), T97_);
	nimZeroMem((void*)(&T99_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T99_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_107) (colonanonymous___vm_13611)); T99_.ClE_0 = NIM_NIL;
	T100_ = (NI)0;
	T100_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_103), T99_);
	nimZeroMem((void*)(&T101_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T101_.ClP_0 = colonanonymous___vm_13613; T101_.ClE_0 = colonenv_;
	T102_ = (NI)0;
	T102_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_108), T101_);
	nimZeroMem((void*)(&T103_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T103_.ClP_0 = colonanonymous___vm_13615; T103_.ClE_0 = colonenv_;
	T104_ = (NI)0;
	T104_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_109), T103_);
	{
		NIM_BOOL T107_;
		T107_ = (NIM_BOOL)0;
		T107_ = NIM_FALSE;
		if (T107_) goto LA108_;
		T107_ = ((*(*(*colonenv_).c1).config).cmd == ((tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg) 8));
		LA108_: ;
		if (!T107_) goto LA109_;
	}
	goto LA105_;
	LA109_: ;
	{
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T112_;
		NI T113_;
		nimZeroMem((void*)(&T112_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T112_.ClP_0 = gorgeExWrapper__vm_13325; T112_.ClE_0 = colonenv_;
		T113_ = (NI)0;
		T113_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_110), T112_);
	}
	LA105_: ;
	nimZeroMem((void*)(&T114_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T114_.ClP_0 = getProjectPathWrapper__vm_13356; T114_.ClE_0 = colonenv_;
	T115_ = (NI)0;
	T115_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_111), T114_);
	nimZeroMem((void*)(&T116_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T116_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_113) (colonanonymous___vm_13621)); T116_.ClE_0 = NIM_NIL;
	T117_ = (NI)0;
	T117_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_112), T116_);
	nimZeroMem((void*)(&T118_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T118_.ClP_0 = colonanonymous___vm_13623; T118_.ClE_0 = colonenv_;
	T119_ = (NI)0;
	T119_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_114), T118_);
	nimZeroMem((void*)(&T120_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T120_.ClP_0 = colonanonymous___vm_13633; T120_.ClE_0 = colonenv_;
	T121_ = (NI)0;
	T121_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_122), T120_);
	nimZeroMem((void*)(&T122_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T122_.ClP_0 = colonanonymous___vm_13647; T122_.ClE_0 = colonenv_;
	T123_ = (NI)0;
	T123_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_124), T122_);
	nimZeroMem((void*)(&T124_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T124_.ClP_0 = hashVmImpl__vm_13649; T124_.ClE_0 = colonenv_;
	T125_ = (NI)0;
	T125_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_125), T124_);
	nimZeroMem((void*)(&T126_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T126_.ClP_0 = hashVmImplByte__vm_13656; T126_.ClE_0 = colonenv_;
	T127_ = (NI)0;
	T127_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_126), T126_);
	nimZeroMem((void*)(&T128_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T128_.ClP_0 = hashVmImplByte__vm_13656; T128_.ClE_0 = colonenv_;
	T129_ = (NI)0;
	T129_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_127), T128_);
	T130_ = (NI)0;
	{
		NIM_BOOL T133_;
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T137_;
		T133_ = (NIM_BOOL)0;
		T133_ = (((*(*(*colonenv_).c1).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg) 44))&63U)))!=0);
		if (T133_) goto LA134_;
		T133_ = (((*(*(*colonenv_).c1).config).features &((NU32)1<<((NU)(((tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw) 11))&31U)))!=0);
		LA134_: ;
		if (!T133_) goto LA135_;
		nimZeroMem((void*)(&T137_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T137_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_129) (cpuTimeWrapper__vm_13710)); T137_.ClE_0 = NIM_NIL;
		T130_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_128), T137_);
	}
	goto LA131_;
	LA135_: ;
	{
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T139_;
		nimZeroMem((void*)(&T139_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T139_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_130) (cpuTimeWrapper__vm_13714)); T139_.ClE_0 = NIM_NIL;
		T130_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_128), T139_);
	}
	LA131_: ;
	{
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T144_;
		NI T145_;
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T146_;
		NI T147_;
		tyProc__vkuGXw0bPP9b9cpazTHQY9bqg T148_;
		NI T149_;
		if (!(((*(*(*colonenv_).c1).config).features &((NU32)1<<((NU)(((tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw) 11))&31U)))!=0)) goto LA142_;
		nimZeroMem((void*)(&T144_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T144_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_132) (colonanonymous___vm_13720)); T144_.ClE_0 = NIM_NIL;
		T145_ = (NI)0;
		T145_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_131), T144_);
		nimZeroMem((void*)(&T146_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T146_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_134) (colonanonymous___vm_13722)); T146_.ClE_0 = NIM_NIL;
		T147_ = (NI)0;
		T147_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_133), T146_);
		nimZeroMem((void*)(&T148_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
		T148_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_136) (colonanonymous___vm_13800)); T148_.ClE_0 = NIM_NIL;
		T149_ = (NI)0;
		T149_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_135), T148_);
	}
	LA142_: ;
	nimZeroMem((void*)(&T150_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T150_.ClP_0 = colonanonymous___vm_13900; T150_.ClE_0 = colonenv_;
	T151_ = (NI)0;
	T151_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_137), T150_);
	nimZeroMem((void*)(&T152_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T152_.ClP_0 = colonanonymous___vm_13902; T152_.ClE_0 = colonenv_;
	T153_ = (NI)0;
	T153_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_140), T152_);
	nimZeroMem((void*)(&T154_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T154_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_142) (colonanonymous___vm_13904)); T154_.ClE_0 = NIM_NIL;
	T155_ = (NI)0;
	T155_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_141), T154_);
	nimZeroMem((void*)(&T156_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T156_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_144) (colonanonymous___vm_13915)); T156_.ClE_0 = NIM_NIL;
	T157_ = (NI)0;
	T157_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_143), T156_);
	nimZeroMem((void*)(&T158_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T158_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_146) (colonanonymous___vm_13934)); T158_.ClE_0 = NIM_NIL;
	T159_ = (NI)0;
	T159_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_145), T158_);
	nimZeroMem((void*)(&T160_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T160_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_149) (colonanonymous___vm_13949)); T160_.ClE_0 = NIM_NIL;
	T161_ = (NI)0;
	T161_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_147), T160_);
	nimZeroMem((void*)(&T162_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T162_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_151) (colonanonymous___vm_13957)); T162_.ClE_0 = NIM_NIL;
	T163_ = (NI)0;
	T163_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_150), T162_);
	nimZeroMem((void*)(&T164_), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
	T164_.ClP_0 = ((TM__sQJeTKtOMm7ArbnaG0SDbQ_153) (colonanonymous___vm_13962)); T164_.ClE_0 = NIM_NIL;
	T165_ = (NI)0;
	T165_ = registerCallback__vmdef_518((*colonenv_).c1, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_152), T164_);
}
N_LIB_PRIVATE N_NIMCALL(void, setupGlobalCtx__vm_14024)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen) {
	{
		tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* T5_;
		if (!((*graph).vm == 0)) goto LA3_;
		T5_ = NIM_NIL;
		T5_ = newCtx__vmdef_367(module, (*graph).cache, graph, idgen);
		asgnRef((void**) (&(*graph).vm), &T5_->Sup.Sup);
		registerAdditionalOps__vm_13319((*((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ**) (&((*graph).vm)))));
	}
	goto LA1_;
	LA3_: ;
	{
		refresh__vmdef_510((*((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ**) (&((*graph).vm)))), module, idgen);
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, putIntoReg__vm_513)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* dest, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
	{
		tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T2_;
		nimZeroMem((void*)(&T2_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		nimZeroMem((void*)(&T2_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		T2_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
		T2_.node = newStrNode__ast_3801(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20), (*n)._kind_3.strVal);
		genericShallowAssign((void*)(&(*dest)), (void*)(&T2_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6):
	{
		{
			if (!((*dest).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA6_;
			unsureAsgnRef((void**) (&(*dest).node), n);
		}
		goto LA4_;
		LA6_: ;
		{
			NIM_BOOL T9_;
			tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T13_;
			T9_ = (NIM_BOOL)0;
			T9_ = !(((*n).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
			if (!(T9_)) goto LA10_;
			T9_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 26) || (*(*n).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21));
			LA10_: ;
			if (!T9_) goto LA11_;
			nimZeroMem((void*)(&T13_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
			nimZeroMem((void*)(&T13_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
			T13_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
			T13_.node = n;
			genericShallowAssign((void*)(&(*dest)), (void*)(&T13_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
		}
		goto LA4_;
		LA11_: ;
		{
			tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T15_;
			nimZeroMem((void*)(&T15_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
			nimZeroMem((void*)(&T15_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
			T15_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2);
			T15_.intVal = (*n)._kind_1.intVal;
			genericShallowAssign((void*)(&(*dest)), (void*)(&T15_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
		}
		LA4_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 7) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15):
	{
		tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T17_;
		nimZeroMem((void*)(&T17_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		nimZeroMem((void*)(&T17_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		T17_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2);
		T17_.intVal = (*n)._kind_1.intVal;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T17_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 19):
	{
		tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T19_;
		nimZeroMem((void*)(&T19_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		nimZeroMem((void*)(&T19_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		T19_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3);
		T19_.floatVal = (*n)._kind_2.floatVal;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T19_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	}
	break;
	default:
	{
		tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T21_;
		nimZeroMem((void*)(&T21_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		nimZeroMem((void*)(&T21_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
		T21_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
		T21_.node = n;
		genericShallowAssign((void*)(&(*dest)), (void*)(&T21_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, prepareVMValue__vm_14123)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arg) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
{	result = NIM_NIL;
	{
		if (!((*arg).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5) && (*arg).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22))) goto LA3_;
		result = arg;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		NIM_BOOL T7_;
		NIM_BOOL T8_;
		NIM_BOOL T9_;
		T7_ = (NIM_BOOL)0;
		T8_ = (NIM_BOOL)0;
		T9_ = (NIM_BOOL)0;
		T9_ = ((*arg).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34));
		if (!(T9_)) goto LA10_;
		T9_ = !(((*(*arg)._kind_6.sons->data[((NI) 0)]).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
		LA10_: ;
		T8_ = T9_;
		if (!(T8_)) goto LA11_;
		T8_ = !(((*(*(*arg)._kind_6.sons->data[((NI) 0)]).typ).sym == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL)));
		LA11_: ;
		T7_ = T8_;
		if (!(T7_)) goto LA12_;
		T7_ = ((*(*(*(*arg)._kind_6.sons->data[((NI) 0)]).typ).sym).magic == ((tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag) 198));
		LA12_: ;
		if (!T7_) goto LA13_;
		result = arg;
		goto BeforeRet_;
	}
	LA13_: ;
	result = copyNode__ast_4324(arg);
	{
		if (!((*arg).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160))) goto LA17_;
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* child;
			child = NIM_NIL;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_3148(arg);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA22;
						i = i_2;
						child = (*arg)._kind_6.sons->data[i];
						{
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T27_;
							if (!((*child).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34))) goto LA25_;
							T27_ = NIM_NIL;
							T27_ = prepareVMValue__vm_14123((*child)._kind_6.sons->data[((NI) 1)]);
							add__ast_4798(result, T27_);
						}
						goto LA23_;
						LA25_: ;
						{
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T29_;
							T29_ = NIM_NIL;
							T29_ = prepareVMValue__vm_14123(child);
							add__ast_4798(result, T29_);
						}
						LA23_: ;
						i_2 += ((NI) 1);
					} LA22: ;
				}
			}
		}
	}
	goto LA15_;
	LA17_: ;
	{
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* child_2;
			child_2 = NIM_NIL;
			{
				NI i_3;
				NI colontmp__2;
				NI i_4;
				i_3 = (NI)0;
				colontmp__2 = (NI)0;
				colontmp__2 = safeLen__ast_3148(arg);
				i_4 = ((NI) 0);
				{
					while (1) {
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T35_;
						if (!(i_4 < colontmp__2)) goto LA34;
						i_3 = i_4;
						child_2 = (*arg)._kind_6.sons->data[i_3];
						T35_ = NIM_NIL;
						T35_ = prepareVMValue__vm_14123(child_2);
						add__ast_4798(result, T35_);
						i_4 += ((NI) 1);
					} LA34: ;
				}
			}
		}
	}
	LA15_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setupMacroParam__vm_14172)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result) {
	switch ((*Result).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	(*Result).intVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	(*Result).floatVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	(*Result).regAddr = NIM_NIL;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	(*Result).nodeAddr = NIM_NIL;
	break;
	} 
	(*Result).kind = 0;
	switch ((*typ).kind) {
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 60):
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T2_;
		T2_ = NIM_NIL;
		T2_ = prepareVMValue__vm_14123(x);
		putIntoReg__vm_513(Result, T2_);
	}
	break;
	default:
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
		n = x;
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 59) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 58))) goto LA6_;
			n = (*n)._kind_6.sons->data[((NI) 1)];
		}
		LA6_: ;
		(*n).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
		asgnRef((void**) (&(*n).typ), (*x).typ);
		switch ((*Result).kind) {
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
		break;
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
		(*Result).intVal = 0;
		break;
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
		(*Result).floatVal = 0;
		break;
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
		unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
		break;
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
		(*Result).regAddr = NIM_NIL;
		break;
		case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
		(*Result).nodeAddr = NIM_NIL;
		break;
		} 
		(*Result).kind = 0;
		(*Result).kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
		unsureAsgnRef((void**) (&(*Result).node), n);
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, regToNode__vm_532)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA x) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	switch (x.kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	{
		result = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1));
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	{
		result = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6));
		(*result)._kind_1.intVal = x.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	{
		result = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16));
		(*result)._kind_2.floatVal = x.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	{
		result = x.node;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		result = regToNode__vm_532((*x.regAddr));
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		result = (*x.nodeAddr);
	}
	break;
	}
	return result;
}
static N_NIMCALL(void, Marker_tyRef__SjvuAyjb7I9au2peROwGwDQ)(void* p, NI op) {
	tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q* a;
	a = (tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*)p;
	nimGCvisit((void*)(*a).c1, op);
	nimGCvisit((void*)(*a).tos2, op);
	nimGCvisit((void*)(*a).error4, op);
	nimGCvisit((void*)(*a).error5, op);
}
static N_INLINE(void, enter__vmprofiler_8)(tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw* prof, tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos) {
	{
		if (!(((*(*c).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg) 50))&63U)))!=0)) goto LA3_;
		(*prof).tEnter = cpuTime__pureZtimes_3614();
		unsureAsgnRef((void**) (&(*prof).tos), tos);
	}
	LA3_: ;
}
static N_INLINE(NI*, X5BX5D___vm_670)(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__vm_546)(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))?&((*s))->Sup:NIM_NIL, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (L))));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, cleanUpOnReturn__vm_658)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* 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___vm_670(((*f).safePoints) ? ((*f).safePoints->data) : NIM_NIL, ((*f).safePoints ? (*f).safePoints->Sup.len : 0), i);
				pc = (*T5_);
				{
					while (1) {
						if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 171))) goto LA7;
						pc += (NI)(((NI) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
					} LA7: ;
				}
				{
					NI T12_;
					if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 172))) goto LA10_;
					T12_ = (NI)0;
					T12_ = pop__vm_546((&(*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__uh9cWvEa5Ty85PXOtuP5emw*, copyValue__vm_468)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	NimStringDesc* T7_;
{	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (src == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL));
		if (T3_) goto LA4_;
		T3_ = (((*src).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13))&31U)))!=0);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = src;
		goto BeforeRet_;
	}
	LA5_: ;
	result = newNode__ast_3289((*src).kind);
	(*result).info = (*src).info;
	asgnRef((void**) (&(*result).typ), (*src).typ);
	(*result).flags = ((*src).flags & 24831758);
	T7_ = NIM_NIL;
	T7_ = comment__ast_997(src);
	commenteq___ast_1365(result, T7_);
	switch ((*src).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15):
	{
		(*result)._kind_1.intVal = (*src)._kind_1.intVal;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 19):
	{
		(*result)._kind_2.floatVal = (*src)._kind_2.floatVal;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
	{
		asgnRef((void**) (&(*result)._kind_4.sym), (*src)._kind_4.sym);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		asgnRef((void**) (&(*result)._kind_5.ident), (*src)._kind_5.ident);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
	{
		NimStringDesc* T13_;
		T13_ = NIM_NIL;
		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__ast_3155(src);
		if ((*result)._kind_6.sons) { nimGCunrefNoCycle((*result)._kind_6.sons); (*result)._kind_6.sons = NIM_NIL; }
		(*result)._kind_6.sons = (tySequence__IeU9azYSNIK3V9b36Ir6NZcw*) newSeqRC1((&NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_), ((NI) (T15_)));
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_3155(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__vm_468((*src)._kind_6.sons->data[i]));
					i_2 += ((NI) 1);
				} LA18: ;
			}
		}
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, asgnComplex__vm_500)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y) {
	ensureKind__vm_112(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), copyValue__vm_468(y.node));
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, fastAsgnComplex__vm_503)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y) {
	ensureKind__vm_112(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), y.node);
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, moveConst__vm_462)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* x, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA y) {
	ensureKind__vm_112(x, y.kind);
	switch ((*x).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	{
		(*x).intVal = y.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	{
		(*x).floatVal = y.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	{
		unsureAsgnRef((void**) (&(*x).node), y.node);
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		(*x).regAddr = y.regAddr;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		(*x).nodeAddr = y.nodeAddr;
	}
	break;
	}
}
N_LIB_PRIVATE N_CLOSURE(void, rangeCheck__vm_1052)(NI64 left, NI64 right, NI64 safeLen, void* ClE_0) {
	tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q* colonenvP_;
{	colonenvP_ = (tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*) ClE_0;
	{
		NimStringDesc* T5_;
		tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T14_;
		if (!(left < IL64(0))) goto LA3_;
		T5_ = NIM_NIL;
		{
			if (!(safeLen < IL64(0))) goto LA8_;
			T5_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
		}
		goto LA6_;
		LA8_: ;
		{
			NimStringDesc* T11_;
			NimStringDesc* T12_;
			NimStringDesc* T13_;
			T11_ = NIM_NIL;
			T12_ = NIM_NIL;
			T12_ = dollar___systemZdollars_6(left);
			T13_ = NIM_NIL;
			T13_ = dollar___systemZdollars_6(safeLen);
			T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + (T13_ ? T13_->Sup.len : 0) + 19);
appendString(T11_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T11_, T12_);
appendString(T11_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T11_, T13_);
			T5_ = T11_;
		}
		LA6_: ;
		nimZeroMem((void*)(&T14_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
		stackTraceImpl__vm_71((*colonenvP_).c1, (*colonenvP_).tos2, (*colonenvP_).pc3, T5_, T14_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
		goto BeforeRet_;
	}
	LA3_: ;
	{
		NimStringDesc* T19_;
		tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T28_;
		if (!(safeLen < right)) goto LA17_;
		T19_ = NIM_NIL;
		{
			if (!(safeLen < IL64(0))) goto LA22_;
			T19_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
		}
		goto LA20_;
		LA22_: ;
		{
			NimStringDesc* T25_;
			NimStringDesc* T26_;
			NimStringDesc* T27_;
			T25_ = NIM_NIL;
			T26_ = NIM_NIL;
			T26_ = dollar___systemZdollars_6(right);
			T27_ = NIM_NIL;
			T27_ = dollar___systemZdollars_6(safeLen);
			T25_ = rawNewString((T26_ ? T26_->Sup.len : 0) + (T27_ ? T27_->Sup.len : 0) + 19);
appendString(T25_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T25_, T26_);
appendString(T25_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T25_, T27_);
			T19_ = T25_;
		}
		LA20_: ;
		nimZeroMem((void*)(&T28_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
		stackTraceImpl__vm_71((*colonenvP_).c1, (*colonenvP_).tos2, (*colonenvP_).pc3, T19_, T28_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
		goto BeforeRet_;
	}
	LA17_: ;
	}BeforeRet_: ;
}
static N_INLINE(NI, safeArrLen__ast_3163)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) && (*n).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22))) goto LA3_;
		result = ((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0);
	}
	goto LA1_;
	LA3_: ;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 0) && (*n).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 19))) goto LA6_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA6_: ;
	{
		result = len__ast_3155(n);
	}
	LA1_: ;
	return result;
}
static N_INLINE(NIM_BOOL, contains__vm_1178)(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA s, NI value) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = (s.a <= value);
	if (!(T1_)) goto LA2_;
	T1_ = (((NI64) (value)) <= s.b);
	LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA, dotdot___vm_1096)(NI a, NI64 b) {
	tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA result;
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA));
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA));
	result.a = a;
	result.b = b;
	return result;
}
static N_INLINE(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg, nextTypeId__ast_3122)(tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* x) {
	tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg result;
	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg));
	(*x).typeId_0 += ((NI) 1);
	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg));
	result.module = (*x).module;
	result.item = (*x).typeId_0;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, takeCharAddress__vm_863)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src, NI64 index, NI pc, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result) {
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
	tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg T1_;
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T2_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node;
	T1_ = nextTypeId__ast_3122((*c).Sup.idgen);
	typ = newType__ast_3884(((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21), T1_, (*(*c).module).owner);
	T2_ = NIM_NIL;
	T2_ = getSysType__magicsys_60((*c).graph, (*c).debug->data[pc], ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 2));
	add__concepts_23(typ, T2_);
	node = newNodeIT__ast_3342(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), (*c).debug->data[pc], typ);
	(*node)._kind_1.intVal = ((NI64) (((NI) (ptrdiff_t) ((&(*src)._kind_3.strVal->data[index])))));
	(*node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 14)) & 31);
	switch ((*Result).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	(*Result).intVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	(*Result).floatVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	(*Result).regAddr = NIM_NIL;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	(*Result).nodeAddr = NIM_NIL;
	break;
	} 
	(*Result).kind = 0;
	(*Result).kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
	unsureAsgnRef((void**) (&(*Result).node), node);
}
N_LIB_PRIVATE N_NIMCALL(void, writeField__vm_506)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** n, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA x) {
	switch (x.kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	{
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	{
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw T7_;
			if (!((*(*n)).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA5_;
			nimZeroMem((void*)(&T7_), sizeof(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw));
			nimZeroMem((void*)(&T7_), sizeof(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw));
			T7_.kind = ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6);
			genericShallowAssign((void*)(&(*(*n))), (void*)(&T7_), (&NTItnode__uh9cWvEa5Ty85PXOtuP5emw_));
		}
		LA5_: ;
		(*(*n))._kind_1.intVal = x.intVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	{
		(*(*n))._kind_2.floatVal = x.floatVal;
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	{
		unsureAsgnRef((void**) (&(*n)), copyValue__vm_468(x.node));
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	{
		writeField__vm_506(n, (*x.regAddr));
	}
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	{
		unsureAsgnRef((void**) (&(*n)), (*x.nodeAddr));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, derefPtrToReg__vm_161)(NI64 address, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* r, NIM_BOOL isAssign) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*typ).kind) {
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 2):
	{
		{
			if (!isAssign) goto LA4_;
			(*((NIM_CHAR*) (address))) = ((NIM_CHAR) ((*r).intVal));
		}
		goto LA2_;
		LA4_: ;
		{
			NIM_CHAR valX60gensym12_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym12_ = (*((NIM_CHAR*) (address)));
			(*r).intVal = ((NI64) (((NU8)(valX60gensym12_))));
		}
		LA2_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 31):
	{
		{
			if (!isAssign) goto LA10_;
			(*((NI*) (address))) = ((NI) ((*r).intVal));
		}
		goto LA8_;
		LA10_: ;
		{
			NI valX60gensym13_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym13_ = (*((NI*) (address)));
			(*r).intVal = ((NI64) (valX60gensym13_));
		}
		LA8_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 32):
	{
		{
			if (!isAssign) goto LA16_;
			(*((NI8*) (address))) = ((NI8) ((*r).intVal));
		}
		goto LA14_;
		LA16_: ;
		{
			NI8 valX60gensym14_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym14_ = (*((NI8*) (address)));
			(*r).intVal = ((NI64) (valX60gensym14_));
		}
		LA14_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 33):
	{
		{
			if (!isAssign) goto LA22_;
			(*((NI16*) (address))) = ((NI16) ((*r).intVal));
		}
		goto LA20_;
		LA22_: ;
		{
			NI16 valX60gensym15_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym15_ = (*((NI16*) (address)));
			(*r).intVal = ((NI64) (valX60gensym15_));
		}
		LA20_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 34):
	{
		{
			if (!isAssign) goto LA28_;
			(*((NI32*) (address))) = ((NI32) ((*r).intVal));
		}
		goto LA26_;
		LA28_: ;
		{
			NI32 valX60gensym16_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym16_ = (*((NI32*) (address)));
			(*r).intVal = ((NI64) (valX60gensym16_));
		}
		LA26_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 35):
	{
		{
			if (!isAssign) goto LA34_;
			(*((NI64*) (address))) = (*r).intVal;
		}
		goto LA32_;
		LA34_: ;
		{
			NI64 valX60gensym17_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym17_ = (*((NI64*) (address)));
			(*r).intVal = valX60gensym17_;
		}
		LA32_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 40):
	{
		{
			if (!isAssign) goto LA40_;
			(*((NU*) (address))) = ((NU) ((*r).intVal));
		}
		goto LA38_;
		LA40_: ;
		{
			NU valX60gensym18_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym18_ = (*((NU*) (address)));
			(*r).intVal = ((NI64) (valX60gensym18_));
		}
		LA38_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 41):
	{
		{
			if (!isAssign) goto LA46_;
			(*((NU8*) (address))) = ((NU8) ((*r).intVal));
		}
		goto LA44_;
		LA46_: ;
		{
			NU8 valX60gensym19_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym19_ = (*((NU8*) (address)));
			(*r).intVal = ((NI64) (valX60gensym19_));
		}
		LA44_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 42):
	{
		{
			if (!isAssign) goto LA52_;
			(*((NU16*) (address))) = ((NU16) ((*r).intVal));
		}
		goto LA50_;
		LA52_: ;
		{
			NU16 valX60gensym20_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym20_ = (*((NU16*) (address)));
			(*r).intVal = ((NI64) (valX60gensym20_));
		}
		LA50_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 43):
	{
		{
			if (!isAssign) goto LA58_;
			(*((NU32*) (address))) = ((NU32) ((*r).intVal));
		}
		goto LA56_;
		LA58_: ;
		{
			NU32 valX60gensym21_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym21_ = (*((NU32*) (address)));
			(*r).intVal = ((NI64) (valX60gensym21_));
		}
		LA56_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 44):
	{
		{
			if (!isAssign) goto LA64_;
			(*((NU64*) (address))) = ((NU64) ((*r).intVal));
		}
		goto LA62_;
		LA64_: ;
		{
			NU64 valX60gensym22_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			valX60gensym22_ = (*((NU64*) (address)));
			(*r).intVal = ((NI64) (valX60gensym22_));
		}
		LA62_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36):
	{
		{
			if (!isAssign) goto LA70_;
			(*((NF*) (address))) = (*r).floatVal;
		}
		goto LA68_;
		LA70_: ;
		{
			NF valX60gensym23_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
			valX60gensym23_ = (*((NF*) (address)));
			(*r).floatVal = valX60gensym23_;
		}
		LA68_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 37):
	{
		{
			if (!isAssign) goto LA76_;
			(*((NF32*) (address))) = ((NF32) ((*r).floatVal));
		}
		goto LA74_;
		LA76_: ;
		{
			NF32 valX60gensym24_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
			valX60gensym24_ = (*((NF32*) (address)));
			(*r).floatVal = ((NF) (valX60gensym24_));
		}
		LA74_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 38):
	{
		{
			if (!isAssign) goto LA82_;
			(*((NF*) (address))) = (*r).floatVal;
		}
		goto LA80_;
		LA82_: ;
		{
			NF valX60gensym25_;
			ensureKind__vm_112(r, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
			valX60gensym25_ = (*((NF*) (address)));
			(*r).floatVal = valX60gensym25_;
		}
		LA80_: ;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	default:
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI64, pluspercent___system_712)(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___system_732)(NI64 x, NI64 y) {
	NI64 result;
	result = (NI64)0;
	result = ((NI64) ((NU64)((NU64)(((NU64) (x))) - (NU64)(((NU64) (y))))));
	return result;
}
static N_INLINE(NI, nimCStrLen)(NCSTRING a) {
	NI result;
	size_t T1_;
	result = (NI)0;
	T1_ = (size_t)0;
	T1_ = strlen(a);
	result = ((NI) (T1_));
	return result;
}
static N_INLINE(NI64, starpercent___system_752)(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__system_1705)(NI64 i) {
	NF result;
	result = (NF)0;
	result = ((NF) (i));
	return result;
}
static N_INLINE(NF, abs__system_3482)(NF x) {
	NF result;
	result = (NF)0;
	result = fabs(x);
	return result;
}
static N_INLINE(NI64, slashpercent___system_772)(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___system_792)(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___system_1001)(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___system_1021)(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__vm_2326)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** n1, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n2) {
	NIM_BOOL result;
	NI p1;
{	result = (NIM_BOOL)0;
	p1 = ((NI) (ptrdiff_t) (n1));
	switch ((*n2).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
	{
		result = (p1 == ((NI) 0));
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6):
	{
		tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t2;
		NIM_BOOL T3_;
		t2 = skipTypes__ast_3723((*n2).typ, abstractInst__ast_356);
		T3_ = (NIM_BOOL)0;
		T3_ = ((*t2).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 26) || (*t2).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21));
		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(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, getBody__modulegraphs_13094)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = (*(*s).ast)._kind_6.sons->data[((NI) 6)];
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (result == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL));
		if (!(T3_)) goto LA4_;
		T3_ = ((28 &((NU8)1<<((NU)((*(*g).config).symbolFiles)&7U)))!=0);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = loadProcBody__icZic_8386((*g).config, (*g).cache, (&(*g).packed_0), s);
		asgnRef((void**) (&(*(*s).ast)._kind_6.sons->data[((NI) 6)]), result);
	}
	LA5_: ;
	return result;
}
static N_INLINE(NIM_BOOL, importcCond__vmgen_2485)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 6))&63U)))!=0)) goto LA3_;
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T9_;
			if (!((520192 &((NU32)1<<((NU)((*s).kind)&31U)))!=0)) goto LA7_;
			T9_ = NIM_NIL;
			T9_ = getBody__modulegraphs_13094((*c).graph, s);
			result = isEmptyBody__vmgen_2469(T9_);
			goto BeforeRet_;
		}
		LA7_: ;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, compile__vm_797)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s) {
	NI result;
	result = (NI)0;
	result = genProc__vmgen_3139(c, s);
	return result;
}
static N_INLINE(NIM_BOOL, isEmptyType__ast_4780)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = (t == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL));
	if (T1_) goto LA2_;
	T1_ = ((*t).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 63) || (*t).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 7));
	LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, recSetFlagIsRef__vm_802)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arg) {
	{
		if (!!(((*arg).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) && (*arg).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22)))) goto LA3_;
		(*arg).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
	}
	LA3_: ;
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = safeLen__ast_3148(arg);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA7;
				i = i_2;
				recSetFlagIsRef__vm_802((*arg)._kind_6.sons->data[i]);
				i_2 += ((NI) 1);
			} LA7: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, pushSafePoint__vm_537)(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f, NI pc) {
	NI T1_;
	asgnRef((void**) (&(*f).safePoints), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*f).safePoints), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_)));
	T1_ = (*f).safePoints->Sup.len++;
	(*f).safePoints->data[T1_] = pc;
}
N_LIB_PRIVATE N_NIMCALL(void, popSafePoint__vm_544)(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f) {
	NI T1_;
	T1_ = (NI)0;
	T1_ = pop__vm_546((&(*f).safePoints));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__0kvMmS5xZnGod4dGyClDyg, findExceptionHandler__vm_565)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* f, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* exc) {
	tyTuple__0kvMmS5xZnGod4dGyClDyg result;
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* raisedType;
	tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A colontmp__5;
	NI colontmp__6;
{	nimZeroMem((void*)(&result), sizeof(tyTuple__0kvMmS5xZnGod4dGyClDyg));
	raisedType = skipTypes__ast_3723((*exc).typ, TM__sQJeTKtOMm7ArbnaG0SDbQ_197);
	{
		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__vm_546((&(*f).safePoints));
			matched = NIM_FALSE;
			pcEndExcept = pc;
			{
				while (1) {
					if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 171))) 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__kQDDJGUiaUAtO9c9b6LjZYjA* exceptType;
							if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 171))) 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__ast_3723((*c).types->data[excIndex], TM__sQJeTKtOMm7ArbnaG0SDbQ_197);
							}
							goto LA8_;
							LA10_: ;
							{
								exceptType = ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL);
							}
							LA8_: ;
							{
								NIM_BOOL T15_;
								NI T17_;
								T15_ = (NIM_BOOL)0;
								T15_ = (exceptType == 0);
								if (T15_) goto LA16_;
								T17_ = (NI)0;
								T17_ = inheritanceDiff__types_2737(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__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 171))) goto LA21;
							pc += ((NI) 1);
						} LA21: ;
					}
					{
						if (!matched) goto LA24_;
						goto LA4;
					}
					LA24_: ;
					pc = pcEndExcept;
				} LA5: ;
			} LA4: ;
			pcBody = pc;
			{
				tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A colontmp_;
				NI colontmp__2;
				if (!matched) goto LA28_;
				colontmp_ = ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 0);
				colontmp__2 = pcBody;
				result.Field0 = colontmp_;
				result.Field1 = colontmp__2;
				goto BeforeRet_;
			}
			goto LA26_;
			LA28_: ;
			{
				tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A colontmp__3;
				NI colontmp__4;
				if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[pc]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 172))) goto LA31_;
				colontmp__3 = ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 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__9bCCzOy4iB1ile39cwqz29a8A) 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__vm_107)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos) {
	NimStringDesc* T1_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T2_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T3_;
	tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T4_;
{	T1_ = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = skipColon__ast_4949((*(*c).currentExceptionA)._kind_6.sons->data[((NI) 3)]);
	T3_ = NIM_NIL;
	T3_ = skipColon__ast_4949((*(*c).currentExceptionA)._kind_6.sons->data[((NI) 2)]);
	T1_ = rawNewString(((*T2_)._kind_3.strVal ? (*T2_)._kind_3.strVal->Sup.len : 0) + ((*T3_)._kind_3.strVal ? (*T3_)._kind_3.strVal->Sup.len : 0) + 24);
appendString(T1_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_198));
appendString(T1_, (*T2_)._kind_3.strVal);
appendString(T1_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_199));
appendString(T1_, (*T3_)._kind_3.strVal);
appendString(T1_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_187));
	nimZeroMem((void*)(&T4_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
	stackTraceImpl__vm_71(c, tos, (*c).exceptionInstr, T1_, T4_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
	goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setLenSeq__vm_818)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node, NI newLen, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info) {
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
	NI oldLen;
	typ = skipTypes__ast_3723((*node).typ, TM__sQJeTKtOMm7ArbnaG0SDbQ_200);
	oldLen = len__ast_3155(node);
	asgnRef((void**) (&(*node)._kind_6.sons), (tySequence__IeU9azYSNIK3V9b36Ir6NZcw*) setLengthSeqV2(((*node)._kind_6.sons)?&((*node)._kind_6.sons)->Sup:NIM_NIL, (&NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_), ((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__vmgen_2501((*typ).sons->data[((NI) 0)], info, (*c).config));
					i_2 += ((NI) 1);
				} LA7: ;
			}
		}
	}
	LA3_: ;
}
static N_INLINE(NIM_BOOL, lteqpercent___system_985)(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___vm_3821)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, void* ClE_0) {
	tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q* colonenvP_;
	colonenvP_ = (tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*) ClE_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((*colonenvP_).error4 ? (*colonenvP_).error4->Sup.len : 0) == ((NI) 0));
		if (!(T3_)) goto LA4_;
		T3_ = (msg <= ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 16));
		LA4_: ;
		if (!T3_) goto LA5_;
		asgnRef((void**) (&(*colonenvP_).error4), formatMsg__msgs_1121(conf, info, msg, arg));
	}
	LA5_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___vm_3841)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, void* ClE_0) {
	tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q* colonenvP_;
	colonenvP_ = (tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*) ClE_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((*colonenvP_).error5 ? (*colonenvP_).error5->Sup.len : 0) == ((NI) 0));
		if (!(T3_)) goto LA4_;
		T3_ = (msg <= ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 16));
		LA4_: ;
		if (!T3_) goto LA5_;
		asgnRef((void**) (&(*colonenvP_).error5), formatMsg__msgs_1121(conf, info, msg, arg));
	}
	LA5_: ;
}
static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
}
static N_INLINE(NimStringDesc*, toFileLineCol__msgs_625)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
	NimStringDesc* result;
	result = NIM_NIL;
	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__sQJeTKtOMm7ArbnaG0SDbQ_223));
		addInt__stdZprivateZdigitsutils_189((&result), info.Field1);
		{
			if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
			result = resizeString(result, 2);
appendString(result, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_119));
			addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1)));
		}
		LA7_: ;
		result = resizeString(result, 1);
appendString(result, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_224));
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, opConv__vm_706)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* dest, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA src, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* desttyp, tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* srctyp) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* styp;
		if (!((*desttyp).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 28))) goto LA3_;
		ensureKind__vm_112(dest, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
		unsureAsgnRef((void**) (&(*dest).node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
		styp = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_226);
		switch ((*styp).kind) {
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 14):
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
			NI x;
			n = (*styp).n;
			x = ((NI) (src.intVal));
			{
				NIM_BOOL T8_;
				NI T9_;
				tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* f;
				T8_ = (NIM_BOOL)0;
				T9_ = (NI)0;
				T9_ = len__ast_3155(n);
				T8_ = ltpercent___system_1005(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_ = NIM_NIL;
					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_ = NIM_NIL;
					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__ast_3155(n);
					i_2 = ((NI) 0);
					{
						while (1) {
							tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* f_2;
							if (!(i_2 < colontmp_)) goto LA23;
							i = i_2;
							{
								if (!!(((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3)))) goto LA26_;
								internalErrorImpl__msgs_1441((*c).config, unknownLineInfo__lineinfos_284, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_227), TM__sQJeTKtOMm7ArbnaG0SDbQ_228);
							}
							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_ = NIM_NIL;
									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_ = NIM_NIL;
									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_ = NIM_NIL;
				T40_ = NIM_NIL;
				T40_ = dollar___systemZdollars_3(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__sQJeTKtOMm7ArbnaG0SDbQ_229));
appendString(T39_, T40_);
				asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), T39_);
			}
			LA6_: ;
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 31) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 35):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), dollar___systemZdollars_6(src.intVal));
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 40) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 44):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), dollar___systemZdollars_9(((NU64) (src.intVal))));
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 1):
		{
			{
				NimStringDesc* T48_;
				if (!(src.intVal == IL64(0))) goto LA46_;
				T48_ = NIM_NIL;
				T48_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_230));
				if (T48_) nimGCunrefNoCycle(T48_);
			}
			goto LA44_;
			LA46_: ;
			{
				NimStringDesc* T50_;
				T50_ = NIM_NIL;
				T50_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_231));
				if (T50_) nimGCunrefNoCycle(T50_);
			}
			LA44_: ;
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 39):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), dollar___system_3126(src.floatVal));
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 28):
		{
			NimStringDesc* T53_;
			T53_ = NIM_NIL;
			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__b28l2MkhJpnFhatVrsrXpg) 29):
		{
			{
				NimStringDesc* strVal;
				NimStringDesc* T67_;
				if (!((*src.node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41))) goto LA57_;
				strVal = ((NimStringDesc*) NIM_NIL);
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** son;
					tySequence__IeU9azYSNIK3V9b36Ir6NZcw* colontmp__2;
					NI i_3;
					NI L;
					NI T60_;
					son = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
					colontmp__2 = NIM_NIL;
					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_ = NIM_NIL;
				T67_ = (*(*dest).node)._kind_3.strVal; (*(*dest).node)._kind_3.strVal = copyStringRC1(strVal);
				if (T67_) nimGCunrefNoCycle(T67_);
			}
			goto LA55_;
			LA57_: ;
			{
				NimStringDesc* T69_;
				T69_ = NIM_NIL;
				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__b28l2MkhJpnFhatVrsrXpg) 2):
		{
			asgnRef((void**) (&(*(*dest).node)._kind_3.strVal), nimCharToStr(((NIM_CHAR) (((NI) (src.intVal))))));
		}
		break;
		default:
		{
			NimStringDesc* T72_;
			NimStringDesc* T73_;
			T72_ = NIM_NIL;
			T73_ = NIM_NIL;
			T73_ = typeToString__types_50(desttyp, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
			T72_ = rawNewString((T73_ ? T73_->Sup.len : 0) + 25);
appendString(T72_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_232));
appendString(T72_, T73_);
			internalErrorImpl__msgs_1441((*c).config, unknownLineInfo__lineinfos_284, T72_, TM__sQJeTKtOMm7ArbnaG0SDbQ_233);
		}
		break;
		}
	}
	goto LA1_;
	LA3_: ;
	{
		tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* desttyp_2;
		desttyp_2 = skipTypes__ast_3723(desttyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_234);
		switch ((*desttyp_2).kind) {
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 31) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 35):
		{
			tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T76_;
			ensureKind__vm_112(dest, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			T76_ = NIM_NIL;
			T76_ = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_226);
			switch ((*T76_).kind) {
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 38):
			{
				(*dest).intVal = ((NI64) (((NI) (src.floatVal))));
			}
			break;
			default:
			{
				(*dest).intVal = src.intVal;
			}
			break;
			}
			{
				NIM_BOOL T81_;
				tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T82_;
				tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T83_;
				tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T85_;
				tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T86_;
				T81_ = (NIM_BOOL)0;
				T82_ = toInt128__int495056_909((*dest).intVal);
				T83_ = firstOrd__types_1406((*c).config, desttyp_2);
				T81_ = lt___int495056_417(T82_, T83_);
				if (T81_) goto LA84_;
				T85_ = lastOrd__types_1532((*c).config, desttyp_2);
				T86_ = toInt128__int495056_909((*dest).intVal);
				T81_ = lt___int495056_417(T85_, T86_);
				LA84_: ;
				if (!T81_) goto LA87_;
				result = NIM_TRUE;
				goto BeforeRet_;
			}
			LA87_: ;
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 40) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 44):
		{
			tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* styp_2;
			ensureKind__vm_112(dest, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			styp_2 = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_226);
			switch ((*styp_2).kind) {
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 38):
			{
				(*dest).intVal = ((NI64) (((NI) (src.floatVal))));
			}
			break;
			default:
			{
				NI64 srcSize;
				NI64 destSize;
				NI64 srcDist;
				NI64 destDist;
				NU64 value;
				srcSize = getSize__types_3388((*c).config, styp_2);
				destSize = getSize__types_3388((*c).config, desttyp_2);
				srcDist = (NI64)((NI64)(IL64(8) - srcSize) * IL64(8));
				destDist = (NI64)((NI64)(IL64(8) - destSize) * 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__b28l2MkhJpnFhatVrsrXpg) 1):
		{
			NI T93_;
			tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T94_;
			ensureKind__vm_112(dest, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
			T93_ = (NI)0;
			T94_ = NIM_NIL;
			T94_ = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_226);
			switch ((*T94_).kind) {
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 38):
			{
				T93_ = ((NI) (!((src.floatVal == 0.0))));
			}
			break;
			default:
			{
				T93_ = ((NI) (!((src.intVal == IL64(0)))));
			}
			break;
			}
			(*dest).intVal = ((NI64) (T93_));
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 38):
		{
			tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg srcKind;
			tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T98_;
			ensureKind__vm_112(dest, ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
			T98_ = NIM_NIL;
			T98_ = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_226);
			srcKind = (*T98_).kind;
			switch (srcKind) {
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 31) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 35):
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 40) ... ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 44):
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 14):
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 1):
			case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 2):
			{
				(*dest).floatVal = toBiggestFloat__system_1705(src.intVal);
			}
			break;
			default:
			{
				{
					if (!(src.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2))) goto LA103_;
					(*dest).floatVal = toBiggestFloat__system_1705(src.intVal);
				}
				goto LA101_;
				LA103_: ;
				{
					(*dest).floatVal = src.floatVal;
				}
				LA101_: ;
			}
			break;
			}
		}
		break;
		case ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 17):
		{
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T109_;
				T109_ = NIM_NIL;
				T109_ = skipTypes__ast_3723(srctyp, TM__sQJeTKtOMm7ArbnaG0SDbQ_234);
				if (!!(((*T109_).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 17)))) goto LA110_;
				internalErrorImpl__msgs_1441((*c).config, unknownLineInfo__lineinfos_284, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_235), TM__sQJeTKtOMm7ArbnaG0SDbQ_236);
			}
			LA110_: ;
			moveConst__vm_462(dest, src);
		}
		break;
		default:
		{
			asgnComplex__vm_500(dest, src);
		}
		break;
		}
	}
	LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg, nextSymId__ast_3103)(tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* x) {
	tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg result;
	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg));
	(*x).symId += ((NI) 1);
	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg));
	result.module = (*x).module;
	result.item = (*x).symId;
	return result;
}
static N_INLINE(NI, len__vm_11729)(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q b) {
	NI result;
	result = (NI)0;
	result = b.entries;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, createStrKeepNode__vm_214)(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* 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__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
	}
	goto LA1_;
	LA5_: ;
	{
		NIM_BOOL T8_;
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw T12_;
		T8_ = (NIM_BOOL)0;
		T8_ = ((*(*x).node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23));
		if (!(T8_)) goto LA9_;
		T8_ = keepNode;
		LA9_: ;
		if (!T8_) goto LA10_;
		nimZeroMem((void*)(&T12_), sizeof(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw));
		nimZeroMem((void*)(&T12_), sizeof(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw));
		T12_.kind = ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20);
		genericShallowAssign((void*)(&(*(*x).node)), (void*)(&T12_), (&NTItnode__uh9cWvEa5Ty85PXOtuP5emw_));
	}
	goto LA1_;
	LA10_: ;
	{
		NIM_BOOL T14_;
		T14_ = (NIM_BOOL)0;
		T14_ = !(((*(*x).node).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) && (*(*x).node).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22)));
		if (T14_) goto LA15_;
		T14_ = (((*(*x).node).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 4))&31U)))!=0);
		LA15_: ;
		if (!T14_) goto LA16_;
		unsureAsgnRef((void**) (&(*x).node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
	}
	goto LA1_;
	LA16_: ;
	LA1_: ;
}
static N_INLINE(void, leave__vmprofiler_690)(tyObject_Profiler__vPk6nUD8QeNW2bHH4WZfpw* prof, tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c) {
	{
		if (!(((*(*c).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg) 50))&63U)))!=0)) goto LA3_;
		leaveImpl__vmprofiler_25(prof, c);
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rawExecute__vm_879)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NI start, tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos, tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* Result) {
	tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q* colonenv_;
	NI savedPC;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* savedFrame;
	tySequence__qoz9b2fDIpsvVqgQYTLWcFA* regs;
{	switch ((*Result).kind) {
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
	(*Result).intVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
	(*Result).floatVal = 0;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
	unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
	(*Result).regAddr = NIM_NIL;
	break;
	case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
	(*Result).nodeAddr = NIM_NIL;
	break;
	} 
	(*Result).kind = 0;
	colonenv_ = NIM_NIL;
	colonenv_ = (tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*) newObj((&NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_), sizeof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q));
	(*colonenv_).Sup.m_type = (&NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_);
	asgnRef((void**) (&(*colonenv_).c1), c);
	(*colonenv_).pc3 = start;
	asgnRef((void**) (&(*colonenv_).tos2), tos);
	savedPC = ((NI) -1);
	savedFrame = NIM_NIL;
	regs = NIM_NIL;
	regs = (*(*colonenv_).tos2).slots;
	{
		while (1) {
			NU64 instr;
			NI ra;
			instr = (*(*colonenv_).c1).code->data[(*colonenv_).pc3];
			ra = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
			{
				tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
				tyArray__nHXaesL0DJZHyVS07ARPRA T7_;
				tyArray__24KAM9afIUgUaqBaEBB6r9bg T8_;
				if (!(*(*(*colonenv_).c1).config).isVmTrace) goto LA5_;
				info = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
				nimZeroMem((void*)T7_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
				nimZeroMem((void*)T8_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
				T8_[0] = dollar___msgs_634((*(*colonenv_).c1).config, info);
				T8_[1] = reprEnum((NI)((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))), (&NTItopcode__6Md36HXDC8kz9aZEdeQ4KoQ_));
				T8_[2] = sourceLine__msgs_1111((*(*colonenv_).c1).config, info);
				T7_[0] = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_158), T8_, 3);
				echoBinSafe(T7_, 1);
			}
			LA5_: ;
			enter__vmprofiler_8((&(*(*colonenv_).c1).profiler), (*colonenv_).c1, (*colonenv_).tos2);
			switch (((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL)))) {
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 0):
			{
				genericAssign((void*)Result, (void*)(&regs->data[ra]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				goto BeforeRet_;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 1):
			{
				NI newPc;
				newPc = cleanUpOnReturn__vm_658((*colonenv_).c1, (*colonenv_).tos2);
				{
					tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA retVal;
					if (!(newPc < ((NI) 0))) goto LA13_;
					(*colonenv_).pc3 = (*(*colonenv_).tos2).comesFrom;
					nimZeroMem((void*)(&retVal), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
					nimCopyMem((void*)(&retVal), (NIM_CONST void*)(&regs->data[((NI) 0)]), sizeof(retVal));
					asgnRef((void**) (&(*colonenv_).tos2), (*(*colonenv_).tos2).next);
					{
						if (!((*colonenv_).tos2 == 0)) goto LA17_;
						genericAssign((void*)Result, (void*)(&retVal), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
						goto BeforeRet_;
					}
					LA17_: ;
					regs = (*(*colonenv_).tos2).slots;
					{
						if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 159))) goto LA21_;
						genericAssign((void*)(&regs->data[(NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(8ULL)) & 65535ULL)]), (void*)(&retVal), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
					}
					LA21_: ;
				}
				goto LA11_;
				LA13_: ;
				{
					savedPC = (*colonenv_).pc3;
					savedFrame = (*colonenv_).tos2;
					(*colonenv_).pc3 = (NI)(newPc - ((NI) 1));
				}
				LA11_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 2):
			{
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 3):
			{
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 4):
			{
				NI rb;
				rb = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = regs->data[rb].intVal;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 5):
			{
				NI rb_2;
				rb_2 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = regs->data[rb_2].floatVal;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 10):
			{
				NI rb_3;
				union { NF32 source; NI32 dest; } LOC29;
				rb_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				LOC29.source = ((NF32) (regs->data[rb_3].floatVal));
				regs->data[ra].intVal = ((NI64) (LOC29.dest));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 11):
			{
				NI rb_4;
				union { NF source; NI64 dest; } LOC31;
				rb_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				LOC31.source = regs->data[rb_4].floatVal;
				regs->data[ra].intVal = LOC31.dest;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 8):
			{
				NI rb_5;
				union { NI64 source; NF32 dest; } LOC33;
				rb_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				LOC33.source = regs->data[rb_5].intVal;
				regs->data[ra].floatVal = ((NF) (LOC33.dest));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 9):
			{
				NI rb_6;
				union { NI64 source; NF dest; } LOC35;
				rb_6 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				LOC35.source = regs->data[rb_6].intVal;
				regs->data[ra].floatVal = LOC35.dest;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 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__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				switch (imm) {
				case ((NI) 1):
				{
					switch (regs->data[rb_7].kind) {
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
					{
						regs->data[ra].intVal = ((NI64) (((NI) ((*regs->data[rb_7].node)._kind_1.intVal))));
					}
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
					{
						regs->data[ra].intVal = ((NI64) (((NI) (ptrdiff_t) (regs->data[rb_7].nodeAddr))));
					}
					break;
					default:
					{
						NimStringDesc* T41_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T42_;
						T41_ = NIM_NIL;
						T41_ = rawNewString((reprEnum((NI)regs->data[rb_7].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)regs->data[rb_7].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 21);
appendString(T41_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_159));
appendString(T41_, reprEnum((NI)regs->data[rb_7].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
						nimZeroMem((void*)(&T42_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T41_, T42_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						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__6Md36HXDC8kz9aZEdeQ4KoQ) 13):
			{
				NI rb_8;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node2;
				rb_8 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				typ = (*regs->data[ra].node).typ;
				node2 = newNodeIT__ast_3342(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], typ);
				switch (regs->data[rb_8].kind) {
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
				{
					(*node2)._kind_1.intVal = regs->data[rb_8].intVal;
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
				{
					{
						NimStringDesc* T52_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T53_;
						if (!!(((*(*regs->data[rb_8].node).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 26) || (*(*regs->data[rb_8].node).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21)))) goto LA50_;
						T52_ = NIM_NIL;
						T52_ = rawNewString((reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTIttypekind__b28l2MkhJpnFhatVrsrXpg_)) ? reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTIttypekind__b28l2MkhJpnFhatVrsrXpg_))->Sup.len : 0) + 36);
appendString(T52_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_160));
appendString(T52_, reprEnum((NI)(*(*regs->data[rb_8].node).typ).kind, (&NTIttypekind__b28l2MkhJpnFhatVrsrXpg_)));
						nimZeroMem((void*)(&T53_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T52_, T53_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA50_: ;
					(*node2)._kind_1.intVal = (*regs->data[rb_8].node)._kind_1.intVal;
				}
				break;
				default:
				{
					NimStringDesc* T55_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T56_;
					T55_ = NIM_NIL;
					T55_ = rawNewString((reprEnum((NI)regs->data[rb_8].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)regs->data[rb_8].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 32);
appendString(T55_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_161));
appendString(T55_, reprEnum((NI)regs->data[rb_8].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
					nimZeroMem((void*)(&T56_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T55_, T56_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
				asgnRef((void**) (&regs->data[ra].node), node2);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 7):
			{
				asgnComplex__vm_500((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 14):
			{
				fastAsgnComplex__vm_503((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 6):
			{
				moveConst__vm_462((&regs->data[ra]), regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 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__drcwtBjsw5cM6mbg9chBM9bg) 1)))) goto LA63_;
					genericAssign((void*)(&regs->data[ra_2]), (void*)(&regs->data[rb_9]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				}
				goto LA61_;
				LA63_: ;
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nb;
					nb = regs->data[rb_9].node;
					switch ((*nb).kind) {
					case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15):
					{
						ensureKind__vm_112((&regs->data[ra_2]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
						regs->data[ra_2].intVal = (*nb)._kind_1.intVal;
					}
					break;
					case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 18):
					{
						ensureKind__vm_112((&regs->data[ra_2]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
						regs->data[ra_2].floatVal = (*nb)._kind_2.floatVal;
					}
					break;
					default:
					{
						ensureKind__vm_112((&regs->data[ra_2]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						asgnRef((void**) (&regs->data[ra_2].node), nb);
					}
					break;
					}
				}
				LA61_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 29):
			{
				NI rb_10;
				NI rc;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* collection;
				NI64 leftInd;
				NI64 rightInd;
				rb_10 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				collection = regs->data[ra].node;
				leftInd = regs->data[rb_10].intVal;
				rightInd = regs->data[rc].intVal;
				switch ((*collection).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
				{
					NI64 safeLen;
					tyProc__TSOsjF4c9aXotPerq9cEE56A T71_;
					NI64 leftInd_2;
					NI64 rightInd_2;
					tyArray__id9c0PBojP5C2oM2bRQSViA T72_;
					safeLen = (NI64)((*(*collection)._kind_6.sons->data[((NI) 2)])._kind_1.intVal - (*(*collection)._kind_6.sons->data[((NI) 1)])._kind_1.intVal);
					nimZeroMem((void*)(&T71_), sizeof(tyProc__TSOsjF4c9aXotPerq9cEE56A));
					T71_.ClP_0 = rangeCheck__vm_1052; T71_.ClE_0 = colonenv_;
					T71_.ClE_0? T71_.ClP_0(leftInd, rightInd, safeLen, T71_.ClE_0):((TM__sQJeTKtOMm7ArbnaG0SDbQ_165)(T71_.ClP_0))(leftInd, rightInd, safeLen);
					leftInd_2 = (NI64)(leftInd + (*(*collection)._kind_6.sons->data[((NI) 1)])._kind_1.intVal);
					rightInd_2 = (NI64)(rightInd + (*(*collection)._kind_6.sons->data[((NI) 1)])._kind_1.intVal);
					nimZeroMem((void*)T72_, sizeof(tyArray__id9c0PBojP5C2oM2bRQSViA));
					T72_[0] = (*collection)._kind_6.sons->data[((NI) 0)];
					T72_[1] = newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), leftInd_2);
					T72_[2] = newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), rightInd_2);
					asgnRef((void**) (&regs->data[ra].node), newTree__ast_3356(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160), T72_, 3));
				}
				break;
				default:
				{
					NI safeLen_2;
					NI T74_;
					tyProc__TSOsjF4c9aXotPerq9cEE56A T75_;
					tyArray__id9c0PBojP5C2oM2bRQSViA T76_;
					T74_ = (NI)0;
					T74_ = safeArrLen__ast_3163(collection);
					safeLen_2 = (NI)(T74_ - ((NI) 1));
					nimZeroMem((void*)(&T75_), sizeof(tyProc__TSOsjF4c9aXotPerq9cEE56A));
					T75_.ClP_0 = rangeCheck__vm_1052; T75_.ClE_0 = colonenv_;
					T75_.ClE_0? T75_.ClP_0(leftInd, rightInd, ((NI64) (safeLen_2)), T75_.ClE_0):((TM__sQJeTKtOMm7ArbnaG0SDbQ_166)(T75_.ClP_0))(leftInd, rightInd, ((NI64) (safeLen_2)));
					nimZeroMem((void*)T76_, sizeof(tyArray__id9c0PBojP5C2oM2bRQSViA));
					T76_[0] = collection;
					T76_[1] = newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), leftInd);
					T76_[2] = newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), rightInd);
					asgnRef((void**) (&regs->data[ra].node), newTree__ast_3356(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160), T76_, 3));
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 16):
			{
				NI rb_11;
				NI rc_2;
				NI idx;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src;
				rb_11 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_2 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					NimStringDesc* T82_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T91_;
					if (!(IL64(9223372036854775807) < regs->data[rc_2].intVal)) goto LA80_;
					T82_ = NIM_NIL;
					{
						if (!NIM_FALSE) goto LA85_;
						T82_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA83_;
					LA85_: ;
					{
						NimStringDesc* T88_;
						NimStringDesc* T89_;
						NimStringDesc* T90_;
						T88_ = NIM_NIL;
						T89_ = NIM_NIL;
						T89_ = dollar___systemZdollars_6(regs->data[rc_2].intVal);
						T90_ = NIM_NIL;
						T90_ = dollar___systemZdollars_3(((NI) IL64(9223372036854775807)));
						T88_ = rawNewString((T89_ ? T89_->Sup.len : 0) + (T90_ ? T90_->Sup.len : 0) + 19);
appendString(T88_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T88_, T89_);
appendString(T88_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T88_, T90_);
						T82_ = T88_;
					}
					LA83_: ;
					nimZeroMem((void*)(&T91_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T82_, T91_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA80_: ;
				idx = ((NI) (regs->data[rc_2].intVal));
				src = regs->data[rb_11].node;
				switch ((*src).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
				{
					NI64 left;
					NI64 right;
					NI64 realIndex;
					left = (*(*src)._kind_6.sons->data[((NI) 1)])._kind_1.intVal;
					right = (*(*src)._kind_6.sons->data[((NI) 2)])._kind_1.intVal;
					realIndex = (NI64)(left + ((NI64) (idx)));
					{
						tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA T95_;
						NIM_BOOL T96_;
						T95_ = dotdot___vm_1096(((NI) 0), (NI64)(right - left));
						T96_ = (NIM_BOOL)0;
						T96_ = contains__vm_1178(T95_, idx);
						if (!T96_) goto LA97_;
						switch ((*(*src)._kind_6.sons->data[((NI) 0)]).kind) {
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
						{
							asgnRef((void**) (&regs->data[ra].node), newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5), ((NI64) (((NU8)((*(*src)._kind_6.sons->data[((NI) 0)])._kind_3.strVal->data[realIndex]))))));
						}
						break;
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41):
						{
							asgnRef((void**) (&regs->data[ra].node), (*(*src)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[realIndex]);
						}
						break;
						default:
						{
							tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T102_;
							nimZeroMem((void*)(&T102_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
							stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_167), T102_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
							goto BeforeRet_;
						}
						break;
						}
					}
					goto LA93_;
					LA97_: ;
					{
						NimStringDesc* T104_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T113_;
						T104_ = NIM_NIL;
						{
							if (!(((NI) (right)) < ((NI) 0))) goto LA107_;
							T104_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA105_;
						LA107_: ;
						{
							NimStringDesc* T110_;
							NimStringDesc* T111_;
							NimStringDesc* T112_;
							T110_ = NIM_NIL;
							T111_ = NIM_NIL;
							T111_ = dollar___systemZdollars_3(idx);
							T112_ = NIM_NIL;
							T112_ = dollar___systemZdollars_3(((NI) (right)));
							T110_ = rawNewString((T111_ ? T111_->Sup.len : 0) + (T112_ ? T112_->Sup.len : 0) + 19);
appendString(T110_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T110_, T111_);
appendString(T110_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T110_, T112_);
							T104_ = T110_;
						}
						LA105_: ;
						nimZeroMem((void*)(&T113_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T104_, T113_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA93_: ;
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
				{
					{
						NIM_BOOL T117_;
						T117_ = (NIM_BOOL)0;
						T117_ = ltpercent___system_1005(idx, ((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0));
						if (!T117_) goto LA118_;
						asgnRef((void**) (&regs->data[ra].node), newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]));
						(*regs->data[ra].node)._kind_1.intVal = ((NI64) (((NU8)((*src)._kind_3.strVal->data[idx]))));
					}
					goto LA115_;
					LA118_: ;
					{
						NimStringDesc* T121_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T130_;
						T121_ = NIM_NIL;
						{
							if (!((NI)(((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA124_;
							T121_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA122_;
						LA124_: ;
						{
							NimStringDesc* T127_;
							NimStringDesc* T128_;
							NimStringDesc* T129_;
							T127_ = NIM_NIL;
							T128_ = NIM_NIL;
							T128_ = dollar___systemZdollars_3(idx);
							T129_ = NIM_NIL;
							T129_ = dollar___systemZdollars_3((NI)(((*src)._kind_3.strVal ? (*src)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
							T127_ = rawNewString((T128_ ? T128_->Sup.len : 0) + (T129_ ? T129_->Sup.len : 0) + 19);
appendString(T127_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T127_, T128_);
appendString(T127_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T127_, T129_);
							T121_ = T127_;
						}
						LA122_: ;
						nimZeroMem((void*)(&T130_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T121_, T130_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA115_: ;
				}
				break;
				default:
				{
					{
						NIM_BOOL T134_;
						NI T136_;
						T134_ = (NIM_BOOL)0;
						T134_ = !(((*src).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*src).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 19)));
						if (!(T134_)) goto LA135_;
						T136_ = (NI)0;
						T136_ = len__ast_3155(src);
						T134_ = ltpercent___system_1005(idx, T136_);
						LA135_: ;
						if (!T134_) goto LA137_;
						asgnRef((void**) (&regs->data[ra].node), (*src)._kind_6.sons->data[idx]);
					}
					goto LA132_;
					LA137_: ;
					{
						NimStringDesc* T140_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T151_;
						T140_ = NIM_NIL;
						{
							NI T143_;
							T143_ = (NI)0;
							T143_ = safeLen__ast_3148(src);
							if (!((NI)(T143_ - ((NI) 1)) < ((NI) 0))) goto LA144_;
							T140_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA141_;
						LA144_: ;
						{
							NimStringDesc* T147_;
							NimStringDesc* T148_;
							NI T149_;
							NimStringDesc* T150_;
							T147_ = NIM_NIL;
							T148_ = NIM_NIL;
							T148_ = dollar___systemZdollars_3(idx);
							T149_ = (NI)0;
							T149_ = safeLen__ast_3148(src);
							T150_ = NIM_NIL;
							T150_ = dollar___systemZdollars_3((NI)(T149_ - ((NI) 1)));
							T147_ = rawNewString((T148_ ? T148_->Sup.len : 0) + (T150_ ? T150_->Sup.len : 0) + 19);
appendString(T147_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T147_, T148_);
appendString(T147_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T147_, T150_);
							T140_ = T147_;
						}
						LA141_: ;
						nimZeroMem((void*)(&T151_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T140_, T151_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA132_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 17):
			{
				NI rb_12;
				NI rc_3;
				NI idx_2;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src_2;
				rb_12 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5));
				{
					NimStringDesc* T157_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T166_;
					if (!(IL64(9223372036854775807) < regs->data[rc_3].intVal)) goto LA155_;
					T157_ = NIM_NIL;
					{
						if (!NIM_FALSE) goto LA160_;
						T157_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA158_;
					LA160_: ;
					{
						NimStringDesc* T163_;
						NimStringDesc* T164_;
						NimStringDesc* T165_;
						T163_ = NIM_NIL;
						T164_ = NIM_NIL;
						T164_ = dollar___systemZdollars_6(regs->data[rc_3].intVal);
						T165_ = NIM_NIL;
						T165_ = dollar___systemZdollars_3(((NI) IL64(9223372036854775807)));
						T163_ = rawNewString((T164_ ? T164_->Sup.len : 0) + (T165_ ? T165_->Sup.len : 0) + 19);
appendString(T163_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T163_, T164_);
appendString(T163_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T163_, T165_);
						T157_ = T163_;
					}
					LA158_: ;
					nimZeroMem((void*)(&T166_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T157_, T166_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA155_: ;
				idx_2 = ((NI) (regs->data[rc_3].intVal));
				{
					if (!(regs->data[rb_12].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA169_;
					src_2 = regs->data[rb_12].node;
				}
				goto LA167_;
				LA169_: ;
				{
					src_2 = (*regs->data[rb_12].nodeAddr);
				}
				LA167_: ;
				switch ((*src_2).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
				{
					NI64 left_2;
					NI64 right_2;
					NI64 realIndex_2;
					left_2 = (*(*src_2)._kind_6.sons->data[((NI) 1)])._kind_1.intVal;
					right_2 = (*(*src_2)._kind_6.sons->data[((NI) 2)])._kind_1.intVal;
					realIndex_2 = (NI64)(left_2 + ((NI64) (idx_2)));
					{
						tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA T175_;
						NIM_BOOL T176_;
						T175_ = dotdot___vm_1096(((NI) 0), (NI64)(right_2 - left_2));
						T176_ = (NIM_BOOL)0;
						T176_ = contains__vm_1178(T175_, idx_2);
						if (!T176_) goto LA177_;
						switch ((*(*src_2)._kind_6.sons->data[((NI) 0)]).kind) {
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
						{
							takeCharAddress__vm_863((*colonenv_).c1, (*src_2)._kind_6.sons->data[((NI) 0)], realIndex_2, (*colonenv_).pc3, (&regs->data[ra]));
						}
						break;
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41):
						{
							regs->data[ra].nodeAddr = &(*(*src_2)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[realIndex_2];
							if ((*(*src_2)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[realIndex_2]) { nimGCref((*(*src_2)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[realIndex_2]); }
						}
						break;
						default:
						{
							tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T182_;
							nimZeroMem((void*)(&T182_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
							stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_168), T182_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
							goto BeforeRet_;
						}
						break;
						}
					}
					goto LA173_;
					LA177_: ;
					{
						NimStringDesc* T184_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T193_;
						T184_ = NIM_NIL;
						{
							if (!(((NI) (right_2)) < ((NI) 0))) goto LA187_;
							T184_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA185_;
						LA187_: ;
						{
							NimStringDesc* T190_;
							NimStringDesc* T191_;
							NimStringDesc* T192_;
							T190_ = NIM_NIL;
							T191_ = NIM_NIL;
							T191_ = dollar___systemZdollars_3(idx_2);
							T192_ = NIM_NIL;
							T192_ = dollar___systemZdollars_3(((NI) (right_2)));
							T190_ = rawNewString((T191_ ? T191_->Sup.len : 0) + (T192_ ? T192_->Sup.len : 0) + 19);
appendString(T190_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T190_, T191_);
appendString(T190_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T190_, T192_);
							T184_ = T190_;
						}
						LA185_: ;
						nimZeroMem((void*)(&T193_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T184_, T193_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA173_: ;
				}
				break;
				default:
				{
					{
						NIM_BOOL T197_;
						NI T199_;
						T197_ = (NIM_BOOL)0;
						T197_ = !(((*src_2).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*src_2).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22)));
						if (!(T197_)) goto LA198_;
						T199_ = (NI)0;
						T199_ = len__ast_3155(src_2);
						T197_ = ltpercent___system_1005(idx_2, T199_);
						LA198_: ;
						if (!T197_) goto LA200_;
						regs->data[ra].nodeAddr = &(*src_2)._kind_6.sons->data[idx_2];
						if ((*src_2)._kind_6.sons->data[idx_2]) { nimGCref((*src_2)._kind_6.sons->data[idx_2]); }
					}
					goto LA195_;
					LA200_: ;
					{
						NimStringDesc* T203_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T214_;
						T203_ = NIM_NIL;
						{
							NI T206_;
							T206_ = (NI)0;
							T206_ = safeLen__ast_3148(src_2);
							if (!((NI)(T206_ - ((NI) 1)) < ((NI) 0))) goto LA207_;
							T203_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA204_;
						LA207_: ;
						{
							NimStringDesc* T210_;
							NimStringDesc* T211_;
							NI T212_;
							NimStringDesc* T213_;
							T210_ = NIM_NIL;
							T211_ = NIM_NIL;
							T211_ = dollar___systemZdollars_3(idx_2);
							T212_ = (NI)0;
							T212_ = safeLen__ast_3148(src_2);
							T213_ = NIM_NIL;
							T213_ = dollar___systemZdollars_3((NI)(T212_ - ((NI) 1)));
							T210_ = rawNewString((T211_ ? T211_->Sup.len : 0) + (T213_ ? T213_->Sup.len : 0) + 19);
appendString(T210_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T210_, T211_);
appendString(T210_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T210_, T213_);
							T203_ = T210_;
						}
						LA204_: ;
						nimZeroMem((void*)(&T214_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T203_, T214_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA195_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 27):
			{
				NI rb_13;
				NI rc_4;
				NI idx_3;
				NimStringDesc* s;
				rb_13 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				idx_3 = ((NI) (regs->data[rc_4].intVal));
				s = (*regs->data[rb_13].node)._kind_3.strVal;
				{
					NIM_BOOL T218_;
					T218_ = (NIM_BOOL)0;
					T218_ = ltpercent___system_1005(idx_3, (s ? s->Sup.len : 0));
					if (!T218_) goto LA219_;
					regs->data[ra].intVal = ((NI64) (((NU8)(s->data[idx_3]))));
				}
				goto LA216_;
				LA219_: ;
				{
					NimStringDesc* T222_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T231_;
					T222_ = NIM_NIL;
					{
						if (!((NI)((s ? s->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA225_;
						T222_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA223_;
					LA225_: ;
					{
						NimStringDesc* T228_;
						NimStringDesc* T229_;
						NimStringDesc* T230_;
						T228_ = NIM_NIL;
						T229_ = NIM_NIL;
						T229_ = dollar___systemZdollars_3(idx_3);
						T230_ = NIM_NIL;
						T230_ = dollar___systemZdollars_3((NI)((s ? s->Sup.len : 0) - ((NI) 1)));
						T228_ = rawNewString((T229_ ? T229_->Sup.len : 0) + (T230_ ? T230_->Sup.len : 0) + 19);
appendString(T228_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T228_, T229_);
appendString(T228_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T228_, T230_);
						T222_ = T228_;
					}
					LA223_: ;
					nimZeroMem((void*)(&T231_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T222_, T231_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA216_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 28):
			{
				NI rb_14;
				NI rc_5;
				NI idx_4;
				NimStringDesc** s_2;
				rb_14 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					NimStringDesc* T237_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T246_;
					if (!(IL64(9223372036854775807) < regs->data[rc_5].intVal)) goto LA235_;
					T237_ = NIM_NIL;
					{
						if (!NIM_FALSE) goto LA240_;
						T237_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA238_;
					LA240_: ;
					{
						NimStringDesc* T243_;
						NimStringDesc* T244_;
						NimStringDesc* T245_;
						T243_ = NIM_NIL;
						T244_ = NIM_NIL;
						T244_ = dollar___systemZdollars_6(regs->data[rc_5].intVal);
						T245_ = NIM_NIL;
						T245_ = dollar___systemZdollars_3(((NI) IL64(9223372036854775807)));
						T243_ = rawNewString((T244_ ? T244_->Sup.len : 0) + (T245_ ? T245_->Sup.len : 0) + 19);
appendString(T243_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T243_, T244_);
appendString(T243_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T243_, T245_);
						T237_ = T243_;
					}
					LA238_: ;
					nimZeroMem((void*)(&T246_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T237_, T246_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA235_: ;
				idx_4 = ((NI) (regs->data[rc_5].intVal));
				s_2 = (&(*regs->data[rb_14].node)._kind_3.strVal);
				{
					NIM_BOOL T249_;
					tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T252_;
					T249_ = (NIM_BOOL)0;
					T249_ = ltpercent___system_1005(idx_4, ((*s_2) ? (*s_2)->Sup.len : 0));
					if (!T249_) goto LA250_;
					nimZeroMem((void*)(&T252_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
					takeCharAddress__vm_863((*colonenv_).c1, regs->data[rb_14].node, ((NI64) (idx_4)), (*colonenv_).pc3, (&T252_));
					genericShallowAssign((void*)(&regs->data[ra]), (void*)(&T252_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				}
				goto LA247_;
				LA250_: ;
				{
					NimStringDesc* T254_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T263_;
					T254_ = NIM_NIL;
					{
						if (!((NI)(((*s_2) ? (*s_2)->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA257_;
						T254_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA255_;
					LA257_: ;
					{
						NimStringDesc* T260_;
						NimStringDesc* T261_;
						NimStringDesc* T262_;
						T260_ = NIM_NIL;
						T261_ = NIM_NIL;
						T261_ = dollar___systemZdollars_3(idx_4);
						T262_ = NIM_NIL;
						T262_ = dollar___systemZdollars_3((NI)(((*s_2) ? (*s_2)->Sup.len : 0) - ((NI) 1)));
						T260_ = rawNewString((T261_ ? T261_->Sup.len : 0) + (T262_ ? T262_->Sup.len : 0) + 19);
appendString(T260_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T260_, T261_);
appendString(T260_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T260_, T262_);
						T254_ = T260_;
					}
					LA255_: ;
					nimZeroMem((void*)(&T263_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T254_, T263_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA247_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 18):
			{
				NI rb_15;
				NI rc_6;
				NI idx_5;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* arr;
				rb_15 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_6 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				idx_5 = ((NI) (regs->data[rb_15].intVal));
				arr = regs->data[ra].node;
				switch ((*arr).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src_3;
					NI64 left_3;
					NI64 right_3;
					NI64 realIndex_3;
					src_3 = (*arr)._kind_6.sons->data[((NI) 0)];
					left_3 = (*(*arr)._kind_6.sons->data[((NI) 1)])._kind_1.intVal;
					right_3 = (*(*arr)._kind_6.sons->data[((NI) 2)])._kind_1.intVal;
					realIndex_3 = (NI64)(left_3 + ((NI64) (idx_5)));
					{
						tyObject_HSlice__XquFawhwXgNY9adDl7bJiUA T268_;
						NIM_BOOL T269_;
						T268_ = dotdot___vm_1096(((NI) 0), (NI64)(right_3 - left_3));
						T269_ = (NIM_BOOL)0;
						T269_ = contains__vm_1178(T268_, idx_5);
						if (!T269_) goto LA270_;
						switch ((*src_3).kind) {
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
						{
							(*src_3)._kind_3.strVal->data[realIndex_3] = ((NIM_CHAR) (regs->data[rc_6].intVal));
						}
						break;
						case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41):
						{
							asgnRef((void**) (&(*src_3)._kind_6.sons->data[realIndex_3]), regs->data[rc_6].node);
						}
						break;
						default:
						{
							tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T275_;
							nimZeroMem((void*)(&T275_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
							stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_169), T275_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
							goto BeforeRet_;
						}
						break;
						}
					}
					goto LA266_;
					LA270_: ;
					{
						NimStringDesc* T277_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T286_;
						T277_ = NIM_NIL;
						{
							if (!(((NI) (right_3)) < ((NI) 0))) goto LA280_;
							T277_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA278_;
						LA280_: ;
						{
							NimStringDesc* T283_;
							NimStringDesc* T284_;
							NimStringDesc* T285_;
							T283_ = NIM_NIL;
							T284_ = NIM_NIL;
							T284_ = dollar___systemZdollars_3(idx_5);
							T285_ = NIM_NIL;
							T285_ = dollar___systemZdollars_3(((NI) (right_3)));
							T283_ = rawNewString((T284_ ? T284_->Sup.len : 0) + (T285_ ? T285_->Sup.len : 0) + 19);
appendString(T283_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T283_, T284_);
appendString(T283_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T283_, T285_);
							T277_ = T283_;
						}
						LA278_: ;
						nimZeroMem((void*)(&T286_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T277_, T286_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA266_: ;
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
				{
					{
						NIM_BOOL T290_;
						T290_ = (NIM_BOOL)0;
						T290_ = ltpercent___system_1005(idx_5, ((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0));
						if (!T290_) goto LA291_;
						(*arr)._kind_3.strVal->data[idx_5] = ((NIM_CHAR) (((NI) (regs->data[rc_6].intVal))));
					}
					goto LA288_;
					LA291_: ;
					{
						NimStringDesc* T294_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T303_;
						T294_ = NIM_NIL;
						{
							if (!((NI)(((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA297_;
							T294_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA295_;
						LA297_: ;
						{
							NimStringDesc* T300_;
							NimStringDesc* T301_;
							NimStringDesc* T302_;
							T300_ = NIM_NIL;
							T301_ = NIM_NIL;
							T301_ = dollar___systemZdollars_3(idx_5);
							T302_ = NIM_NIL;
							T302_ = dollar___systemZdollars_3((NI)(((*arr)._kind_3.strVal ? (*arr)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
							T300_ = rawNewString((T301_ ? T301_->Sup.len : 0) + (T302_ ? T302_->Sup.len : 0) + 19);
appendString(T300_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T300_, T301_);
appendString(T300_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T300_, T302_);
							T294_ = T300_;
						}
						LA295_: ;
						nimZeroMem((void*)(&T303_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T294_, T303_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA288_: ;
				}
				break;
				default:
				{
					{
						NI T307_;
						NIM_BOOL T308_;
						T307_ = (NI)0;
						T307_ = len__ast_3155(arr);
						T308_ = (NIM_BOOL)0;
						T308_ = ltpercent___system_1005(idx_5, T307_);
						if (!T308_) goto LA309_;
						writeField__vm_506(&(*arr)._kind_6.sons->data[idx_5], regs->data[rc_6]);
					}
					goto LA305_;
					LA309_: ;
					{
						NimStringDesc* T312_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T323_;
						T312_ = NIM_NIL;
						{
							NI T315_;
							T315_ = (NI)0;
							T315_ = safeLen__ast_3148(arr);
							if (!((NI)(T315_ - ((NI) 1)) < ((NI) 0))) goto LA316_;
							T312_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
						}
						goto LA313_;
						LA316_: ;
						{
							NimStringDesc* T319_;
							NimStringDesc* T320_;
							NI T321_;
							NimStringDesc* T322_;
							T319_ = NIM_NIL;
							T320_ = NIM_NIL;
							T320_ = dollar___systemZdollars_3(idx_5);
							T321_ = (NI)0;
							T321_ = safeLen__ast_3148(arr);
							T322_ = NIM_NIL;
							T322_ = dollar___systemZdollars_3((NI)(T321_ - ((NI) 1)));
							T319_ = rawNewString((T320_ ? T320_->Sup.len : 0) + (T322_ ? T322_->Sup.len : 0) + 19);
appendString(T319_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T319_, T320_);
appendString(T319_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T319_, T322_);
							T312_ = T319_;
						}
						LA313_: ;
						nimZeroMem((void*)(&T323_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T312_, T323_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA305_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 19):
			{
				NI rb_16;
				NI rc_7;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src_4;
				rb_16 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_7 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					if (!(regs->data[rb_16].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA327_;
					src_4 = regs->data[rb_16].node;
				}
				goto LA325_;
				LA327_: ;
				{
					src_4 = (*regs->data[rb_16].nodeAddr);
				}
				LA325_: ;
				switch ((*src_4).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
				{
					NimStringDesc* T331_;
					tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA T332_;
					NimStringDesc* T333_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T334_;
					T331_ = NIM_NIL;
					nimZeroMem((void*)(&T332_), sizeof(tyTuple__i8UlBN9aCVE7Wxx7H9ckexjA));
					T332_.Field0 = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_171));
					T332_.Field1 = (*src_4).kind;
					T332_.Field2 = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_172));
					T332_.Field3 = typeToString__types_50((*src_4).typ, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
					T332_.Field4 = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_173));
					T332_.Field5 = rc_7;
					T333_ = NIM_NIL;
					T333_ = dollar___vm_1475((&T332_));
					T331_ = rawNewString((T333_ ? T333_->Sup.len : 0) + 32);
appendString(T331_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_170));
appendString(T331_, T333_);
					nimZeroMem((void*)(&T334_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T331_, T334_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 38):
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
					n = skipColon__ast_4949((*src_4)._kind_6.sons->data[(NI)(((NI) (rc_7)) + ((NI) 1))]);
					asgnRef((void**) (&regs->data[ra].node), n);
				}
				break;
				default:
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_2;
					n_2 = (*src_4)._kind_6.sons->data[rc_7];
					asgnRef((void**) (&regs->data[ra].node), n_2);
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 20):
			{
				NI rb_17;
				NI rc_8;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src_5;
				rb_17 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_8 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5));
				{
					if (!(regs->data[rb_17].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA340_;
					src_5 = regs->data[rb_17].node;
				}
				goto LA338_;
				LA340_: ;
				{
					src_5 = (*regs->data[rb_17].nodeAddr);
				}
				LA338_: ;
				switch ((*src_5).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T344_;
					nimZeroMem((void*)(&T344_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T344_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 38):
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_3;
					n_3 = (*src_5)._kind_6.sons->data[(NI)(((NI) (rc_8)) + ((NI) 1))];
					{
						if (!((*n_3).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34))) goto LA348_;
						regs->data[ra].nodeAddr = &(*n_3)._kind_6.sons->data[((NI) 1)];
						if ((*n_3)._kind_6.sons->data[((NI) 1)]) { nimGCref((*n_3)._kind_6.sons->data[((NI) 1)]); }
					}
					goto LA346_;
					LA348_: ;
					{
						regs->data[ra].nodeAddr = &(*src_5)._kind_6.sons->data[(NI)(((NI) (rc_8)) + ((NI) 1))];
						if ((*src_5)._kind_6.sons->data[(NI)(((NI) (rc_8)) + ((NI) 1))]) { nimGCref((*src_5)._kind_6.sons->data[(NI)(((NI) (rc_8)) + ((NI) 1))]); }
					}
					LA346_: ;
				}
				break;
				default:
				{
					regs->data[ra].nodeAddr = &(*src_5)._kind_6.sons->data[rc_8];
					if ((*src_5)._kind_6.sons->data[rc_8]) { nimGCref((*src_5)._kind_6.sons->data[rc_8]); }
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 21):
			{
				NI rb_18;
				NI rc_9;
				NI shiftedRb;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest;
				rb_18 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_9 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				shiftedRb = (NI)(((NI) (rb_18)) + ((*regs->data[ra].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 38)));
				dest = regs->data[ra].node;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T357_;
					if (!((*dest).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA355_;
					nimZeroMem((void*)(&T357_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T357_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA353_;
				LA355_: ;
				{
					if (!((*(*dest)._kind_6.sons->data[shiftedRb]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34))) goto LA359_;
					writeField__vm_506(&(*(*dest)._kind_6.sons->data[shiftedRb])._kind_6.sons->data[((NI) 1)], regs->data[rc_9]);
				}
				goto LA353_;
				LA359_: ;
				{
					writeField__vm_506(&(*dest)._kind_6.sons->data[shiftedRb], regs->data[rc_9]);
				}
				LA353_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 26):
			{
				NI rb_19;
				NI rc_10;
				NI idx_6;
				rb_19 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_10 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				idx_6 = ((NI) (regs->data[rb_19].intVal));
				{
					NIM_BOOL T365_;
					T365_ = (NIM_BOOL)0;
					T365_ = ltpercent___system_1005(idx_6, ((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0));
					if (!T365_) goto LA366_;
					(*regs->data[ra].node)._kind_3.strVal->data[idx_6] = ((NIM_CHAR) (((NI) (regs->data[rc_10].intVal))));
				}
				goto LA363_;
				LA366_: ;
				{
					NimStringDesc* T369_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T378_;
					T369_ = NIM_NIL;
					{
						if (!((NI)(((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0) - ((NI) 1)) < ((NI) 0))) goto LA372_;
						T369_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA370_;
					LA372_: ;
					{
						NimStringDesc* T375_;
						NimStringDesc* T376_;
						NimStringDesc* T377_;
						T375_ = NIM_NIL;
						T376_ = NIM_NIL;
						T376_ = dollar___systemZdollars_3(idx_6);
						T377_ = NIM_NIL;
						T377_ = dollar___systemZdollars_3((NI)(((*regs->data[ra].node)._kind_3.strVal ? (*regs->data[ra].node)._kind_3.strVal->Sup.len : 0) - ((NI) 1)));
						T375_ = rawNewString((T376_ ? T376_->Sup.len : 0) + (T377_ ? T377_->Sup.len : 0) + 19);
appendString(T375_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T375_, T376_);
appendString(T375_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T375_, T377_);
						T369_ = T375_;
					}
					LA370_: ;
					nimZeroMem((void*)(&T378_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T369_, T378_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA363_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 22):
			{
				NI rb_20;
				rb_20 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4));
				regs->data[ra].regAddr = (&regs->data[rb_20]);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 23):
			{
				NI rb_21;
				rb_21 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5));
				switch (regs->data[rb_21].kind) {
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
				{
					regs->data[ra].nodeAddr = &regs->data[rb_21].node;
					if (regs->data[rb_21].node) { nimGCref(regs->data[rb_21].node); }
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
				{
					regs->data[ra].nodeAddr = regs->data[rb_21].nodeAddr;
				}
				break;
				default:
				{
					NimStringDesc* T384_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T385_;
					T384_ = NIM_NIL;
					T384_ = rawNewString((reprEnum((NI)regs->data[rb_21].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)regs->data[rb_21].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 41);
appendString(T384_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_175));
appendString(T384_, reprEnum((NI)regs->data[rb_21].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
					nimZeroMem((void*)(&T385_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T384_, T385_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 24):
			{
				NI ra_3;
				NI rb_22;
				ra_3 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rb_22 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				switch (regs->data[rb_22].kind) {
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
				{
					ensureKind__vm_112((&regs->data[ra_3]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					asgnRef((void**) (&regs->data[ra_3].node), (*regs->data[rb_22].nodeAddr));
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
				{
					ensureKind__vm_112((&regs->data[ra_3]), (*regs->data[rb_22].regAddr).kind);
					genericAssign((void*)(&regs->data[ra_3]), (void*)(&(*regs->data[rb_22].regAddr)), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
				{
					{
						if (!((*regs->data[rb_22].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 141))) goto LA392_;
						asgnRef((void**) (&regs->data[ra_3].node), (*regs->data[rb_22].node)._kind_6.sons->data[((NI) 0)]);
					}
					goto LA390_;
					LA392_: ;
					{
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nodeX60gensym310_;
						tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typX60gensym310_;
						NIM_BOOL T400_;
						nodeX60gensym310_ = regs->data[rb_22].node;
						{
							tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T399_;
							if (!((*nodeX60gensym310_).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA397_;
							nimZeroMem((void*)(&T399_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
							stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T399_, TM__sQJeTKtOMm7ArbnaG0SDbQ_176);
							goto BeforeRet_;
						}
						LA397_: ;
						typX60gensym310_ = (*nodeX60gensym310_).typ;
						T400_ = (NIM_BOOL)0;
						{
							NIM_BOOL T403_;
							NIM_BOOL T405_;
							tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ2X60gensym310_;
							T403_ = (NIM_BOOL)0;
							T403_ = (((*nodeX60gensym310_).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 14))&31U)))!=0);
							if (T403_) goto LA404_;
							T405_ = (NIM_BOOL)0;
							T405_ = !((typX60gensym310_ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
							if (!(T405_)) goto LA406_;
							T405_ = ((*typX60gensym310_).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21));
							LA406_: ;
							T403_ = T405_;
							LA404_: ;
							if (!T403_) goto LA407_;
							{
								if (!((*typX60gensym310_).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21))) goto LA411_;
								typ2X60gensym310_ = (*typX60gensym310_).sons->data[((NI) 0)];
							}
							goto LA409_;
							LA411_: ;
							{
								typ2X60gensym310_ = typX60gensym310_;
							}
							LA409_: ;
							{
								NIM_BOOL T416_;
								NimStringDesc* T419_;
								tyTuple__0c626sqvYlRHlzCEcJoxaA T420_;
								NimStringDesc* T421_;
								tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T422_;
								T416_ = (NIM_BOOL)0;
								T416_ = derefPtrToReg__vm_161((*nodeX60gensym310_)._kind_1.intVal, typ2X60gensym310_, (&regs->data[ra_3]), NIM_FALSE);
								if (!!(T416_)) goto LA417_;
								T419_ = NIM_NIL;
								nimZeroMem((void*)(&T420_), sizeof(tyTuple__0c626sqvYlRHlzCEcJoxaA));
								T420_.Field0 = typeToString__types_50(typX60gensym310_, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
								T420_.Field1 = (*typX60gensym310_).kind;
								T421_ = NIM_NIL;
								T421_ = dollar___vm_1717(T420_);
								T419_ = rawNewString((T421_ ? T421_->Sup.len : 0) + 28);
appendString(T419_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_177));
appendString(T419_, T421_);
								nimZeroMem((void*)(&T422_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
								stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T419_, T422_, TM__sQJeTKtOMm7ArbnaG0SDbQ_176);
								goto BeforeRet_;
							}
							LA417_: ;
							T400_ = NIM_TRUE;
						}
						goto LA401_;
						LA407_: ;
						{
							T400_ = NIM_FALSE;
						}
						LA401_: ;
						if (!!(T400_)) goto LA424_;
						ensureKind__vm_112((&regs->data[ra_3]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						asgnRef((void**) (&regs->data[ra_3].node), regs->data[rb_22].node);
					}
					goto LA390_;
					LA424_: ;
					LA390_: ;
				}
				break;
				default:
				{
					NimStringDesc* T427_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T428_;
					T427_ = NIM_NIL;
					T427_ = rawNewString((reprEnum((NI)regs->data[rb_22].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)) ? reprEnum((NI)regs->data[rb_22].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_))->Sup.len : 0) + 38);
appendString(T427_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_178));
appendString(T427_, reprEnum((NI)regs->data[rb_22].kind, (&NTItregisterkind__drcwtBjsw5cM6mbg9chBM9bg_)));
					nimZeroMem((void*)(&T428_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T427_, T428_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 25):
			{
				NI ra_4;
				NI rc_11;
				ra_4 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rc_11 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				switch (regs->data[ra_4].kind) {
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_4;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** nAddr;
					n_4 = regToNode__vm_532(regs->data[rc_11]);
					nAddr = regs->data[ra_4].nodeAddr;
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T435_;
						if (!((*nAddr) == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL))) goto LA433_;
						nimZeroMem((void*)(&T435_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_179), T435_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA433_: ;
					{
						NIM_BOOL T438_;
						T438_ = (NIM_BOOL)0;
						T438_ = !((((*(*nAddr)).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13))&31U)))!=0));
						if (!(T438_)) goto LA439_;
						T438_ = !((((*n_4).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13))&31U)))!=0));
						LA439_: ;
						if (!T438_) goto LA440_;
						genericAssign((void*)(&(*(*nAddr))), (void*)(&(*n_4)), (&NTItnode__uh9cWvEa5Ty85PXOtuP5emw_));
					}
					goto LA436_;
					LA440_: ;
					{
						unsureAsgnRef((void**) (&(*nAddr)), n_4);
					}
					LA436_: ;
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
				{
					genericAssign((void*)(&(*regs->data[ra_4].regAddr)), (void*)(&regs->data[rc_11]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				}
				break;
				case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
				{
					{
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nodeX60gensym328_;
						tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typX60gensym328_;
						NIM_BOOL T452_;
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T478_;
						nodeX60gensym328_ = regs->data[ra_4].node;
						{
							tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T451_;
							if (!((*nodeX60gensym328_).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA449_;
							nimZeroMem((void*)(&T451_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
							stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T451_, TM__sQJeTKtOMm7ArbnaG0SDbQ_180);
							goto BeforeRet_;
						}
						LA449_: ;
						typX60gensym328_ = (*nodeX60gensym328_).typ;
						T452_ = (NIM_BOOL)0;
						{
							NIM_BOOL T455_;
							NIM_BOOL T457_;
							tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ2X60gensym328_;
							T455_ = (NIM_BOOL)0;
							T455_ = (((*nodeX60gensym328_).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 14))&31U)))!=0);
							if (T455_) goto LA456_;
							T457_ = (NIM_BOOL)0;
							T457_ = !((typX60gensym328_ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
							if (!(T457_)) goto LA458_;
							T457_ = ((*typX60gensym328_).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21));
							LA458_: ;
							T455_ = T457_;
							LA456_: ;
							if (!T455_) goto LA459_;
							{
								if (!((*typX60gensym328_).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21))) goto LA463_;
								typ2X60gensym328_ = (*typX60gensym328_).sons->data[((NI) 0)];
							}
							goto LA461_;
							LA463_: ;
							{
								typ2X60gensym328_ = typX60gensym328_;
							}
							LA461_: ;
							{
								NIM_BOOL T468_;
								NimStringDesc* T471_;
								tyTuple__0c626sqvYlRHlzCEcJoxaA T472_;
								NimStringDesc* T473_;
								tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T474_;
								T468_ = (NIM_BOOL)0;
								T468_ = derefPtrToReg__vm_161((*nodeX60gensym328_)._kind_1.intVal, typ2X60gensym328_, (&regs->data[rc_11]), NIM_TRUE);
								if (!!(T468_)) goto LA469_;
								T471_ = NIM_NIL;
								nimZeroMem((void*)(&T472_), sizeof(tyTuple__0c626sqvYlRHlzCEcJoxaA));
								T472_.Field0 = typeToString__types_50(typX60gensym328_, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
								T472_.Field1 = (*typX60gensym328_).kind;
								T473_ = NIM_NIL;
								T473_ = dollar___vm_1717(T472_);
								T471_ = rawNewString((T473_ ? T473_->Sup.len : 0) + 28);
appendString(T471_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_177));
appendString(T471_, T473_);
								nimZeroMem((void*)(&T474_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
								stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T471_, T474_, TM__sQJeTKtOMm7ArbnaG0SDbQ_180);
								goto BeforeRet_;
							}
							LA469_: ;
							T452_ = NIM_TRUE;
						}
						goto LA453_;
						LA459_: ;
						{
							T452_ = NIM_FALSE;
						}
						LA453_: ;
						if (!!(T452_)) goto LA476_;
						T478_ = NIM_NIL;
						T478_ = regToNode__vm_532(regs->data[rc_11]);
						genericAssign((void*)(&(*regs->data[ra_4].node)), (void*)(&(*T478_)), (&NTItnode__uh9cWvEa5Ty85PXOtuP5emw_));
						(*regs->data[ra_4].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
					}
					LA476_: ;
				}
				break;
				default:
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T480_;
					nimZeroMem((void*)(&T480_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T480_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 30):
			{
				NI rb_23;
				NI rc_12;
				NI64 bVal;
				NI64 cVal;
				NI64 sum;
				rb_23 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_12 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				bVal = regs->data[rb_23].intVal;
				cVal = regs->data[rc_12].intVal;
				sum = pluspercent___system_712(bVal, cVal);
				{
					NIM_BOOL T484_;
					T484_ = (NIM_BOOL)0;
					T484_ = (IL64(0) <= (NI64)(sum ^ bVal));
					if (T484_) goto LA485_;
					T484_ = (IL64(0) <= (NI64)(sum ^ cVal));
					LA485_: ;
					if (!T484_) goto LA486_;
					regs->data[ra].intVal = sum;
				}
				goto LA482_;
				LA486_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T489_;
					nimZeroMem((void*)(&T489_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T489_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA482_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 31):
			{
				NI rb_24;
				NI imm_2;
				NI64 bVal_2;
				NI cVal_2;
				NI64 sum_2;
				rb_24 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_2 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				bVal_2 = regs->data[rb_24].intVal;
				cVal_2 = imm_2;
				sum_2 = pluspercent___system_712(bVal_2, ((NI64) (cVal_2)));
				{
					NIM_BOOL T493_;
					T493_ = (NIM_BOOL)0;
					T493_ = (IL64(0) <= (NI64)(sum_2 ^ bVal_2));
					if (T493_) goto LA494_;
					T493_ = (IL64(0) <= (NI64)(sum_2 ^ ((NI64) (cVal_2))));
					LA494_: ;
					if (!T493_) goto LA495_;
					regs->data[ra].intVal = sum_2;
				}
				goto LA491_;
				LA495_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T498_;
					nimZeroMem((void*)(&T498_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T498_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA491_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 32):
			{
				NI rb_25;
				NI rc_13;
				NI64 bVal_3;
				NI64 cVal_3;
				NI64 diff;
				rb_25 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_13 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				bVal_3 = regs->data[rb_25].intVal;
				cVal_3 = regs->data[rc_13].intVal;
				diff = minuspercent___system_732(bVal_3, cVal_3);
				{
					NIM_BOOL T502_;
					T502_ = (NIM_BOOL)0;
					T502_ = (IL64(0) <= (NI64)(diff ^ bVal_3));
					if (T502_) goto LA503_;
					T502_ = (IL64(0) <= (NI64)(diff ^ (NI64)((NU64) ~(cVal_3))));
					LA503_: ;
					if (!T502_) goto LA504_;
					regs->data[ra].intVal = diff;
				}
				goto LA500_;
				LA504_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T507_;
					nimZeroMem((void*)(&T507_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T507_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA500_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 33):
			{
				NI rb_26;
				NI imm_3;
				NI64 bVal_4;
				NI cVal_4;
				NI64 diff_2;
				rb_26 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_3 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				bVal_4 = regs->data[rb_26].intVal;
				cVal_4 = imm_3;
				diff_2 = minuspercent___system_732(bVal_4, ((NI64) (cVal_4)));
				{
					NIM_BOOL T511_;
					T511_ = (NIM_BOOL)0;
					T511_ = (IL64(0) <= (NI64)(diff_2 ^ bVal_4));
					if (T511_) goto LA512_;
					T511_ = (IL64(0) <= (NI64)(diff_2 ^ ((NI64) ((NI)((NU64) ~(cVal_4))))));
					LA512_: ;
					if (!T511_) goto LA513_;
					regs->data[ra].intVal = diff_2;
				}
				goto LA509_;
				LA513_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T516_;
					nimZeroMem((void*)(&T516_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T516_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA509_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 34):
			{
				NI rb_27;
				NI imm_4;
				NI high;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node;
				rb_27 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_4 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				high = (NI)(imm_4 & ((NI) 1));
				node = regs->data[rb_27].node;
				{
					NI T522_;
					if (!!(((NI)(imm_4 & ((NI) 16)) == ((NI) 0)))) goto LA520_;
					T522_ = (NI)0;
					T522_ = safeLen__ast_3148(regs->data[rb_27].node);
					regs->data[ra].intVal = ((NI64) ((NI)(T522_ - high)));
				}
				goto LA518_;
				LA520_: ;
				{
					switch ((*node).kind) {
					case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
					{
						regs->data[ra].intVal = (NI64)((NI64)((NI64)((*(*node)._kind_6.sons->data[((NI) 2)])._kind_1.intVal - (*(*node)._kind_6.sons->data[((NI) 1)])._kind_1.intVal) + IL64(1)) - ((NI64) (high)));
					}
					break;
					default:
					{
						NI T526_;
						T526_ = (NI)0;
						T526_ = safeArrLen__ast_3163(node);
						regs->data[ra].intVal = ((NI64) ((NI)(T526_ - high)));
					}
					break;
					}
				}
				LA518_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 35):
			{
				NI rb_28;
				NI imm_5;
				rb_28 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_5 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((NI)(((*regs->data[rb_28].node)._kind_3.strVal ? (*regs->data[rb_28].node)._kind_3.strVal->Sup.len : 0) - imm_5)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 36):
			{
				NI rb_29;
				NI imm_6;
				rb_29 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_6 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((NI)((nimToCStringConv((*regs->data[rb_29].node)._kind_3.strVal) ? nimCStrLen(nimToCStringConv((*regs->data[rb_29].node)._kind_3.strVal)) : 0) - imm_6)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 37):
			{
				NI rb_30;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b;
				rb_30 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				b = regToNode__vm_532(regs->data[rb_30]);
				{
					NIM_BOOL T532_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T535_;
					T532_ = (NIM_BOOL)0;
					T532_ = inSet__nimsets_7(regs->data[ra].node, b);
					if (!!(T532_)) goto LA533_;
					T535_ = NIM_NIL;
					T535_ = copyTree__ast_4432(b);
					add__ast_4798(regs->data[ra].node, T535_);
				}
				LA533_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 38):
			{
				NI rb_31;
				NI rc_14;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* r;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T537_;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T538_;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T539_;
				rb_31 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_14 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				r = newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 44));
				T537_ = NIM_NIL;
				T537_ = regToNode__vm_532(regs->data[rb_31]);
				add__ast_4798(r, T537_);
				T538_ = NIM_NIL;
				T538_ = regToNode__vm_532(regs->data[rc_14]);
				add__ast_4798(r, T538_);
				T539_ = NIM_NIL;
				T539_ = copyTree__ast_4432(r);
				add__ast_4798(regs->data[ra].node, T539_);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 39):
			{
				NI rb_32;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b_2;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T541_;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* r_2;
				rb_32 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				b_2 = newNodeIT__ast_3342(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39), (*regs->data[ra].node).info, (*regs->data[ra].node).typ);
				T541_ = NIM_NIL;
				T541_ = regToNode__vm_532(regs->data[rb_32]);
				add__ast_4798(b_2, T541_);
				r_2 = diffSets__nimsets_188((*(*colonenv_).c1).config, regs->data[ra].node, b_2);
				discardSons__ast_3141(regs->data[ra].node);
				{
					NI i;
					NI colontmp_;
					NI i_2;
					i = (NI)0;
					colontmp_ = (NI)0;
					colontmp_ = len__ast_3155(r_2);
					i_2 = ((NI) 0);
					{
						while (1) {
							if (!(i_2 < colontmp_)) goto LA544;
							i = i_2;
							add__ast_4798(regs->data[ra].node, (*r_2)._kind_6.sons->data[i]);
							i_2 += ((NI) 1);
						} LA544: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 40):
			{
				NI rb_33;
				rb_33 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = cardSet__nimsets_241((*(*colonenv_).c1).config, regs->data[rb_33].node);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 41):
			{
				NI rb_34;
				NI rc_15;
				NI64 bVal_5;
				NI64 cVal_5;
				NI64 product;
				NF floatProd;
				NF T547_;
				NF T548_;
				NF resAsFloat;
				rb_34 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_15 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				bVal_5 = regs->data[rb_34].intVal;
				cVal_5 = regs->data[rc_15].intVal;
				product = starpercent___system_752(bVal_5, cVal_5);
				T547_ = (NF)0;
				T547_ = toBiggestFloat__system_1705(bVal_5);
				T548_ = (NF)0;
				T548_ = toBiggestFloat__system_1705(cVal_5);
				floatProd = ((NF)(T547_) * (NF)(T548_));
				resAsFloat = toBiggestFloat__system_1705(product);
				{
					if (!(resAsFloat == floatProd)) goto LA551_;
					regs->data[ra].intVal = product;
				}
				goto LA549_;
				LA551_: ;
				{
					NF T554_;
					NF T555_;
					T554_ = (NF)0;
					T554_ = abs__system_3482(((NF)(resAsFloat) - (NF)(floatProd)));
					T555_ = (NF)0;
					T555_ = abs__system_3482(floatProd);
					if (!(((NF)(32.0) * (NF)(T554_)) <= T555_)) goto LA556_;
					regs->data[ra].intVal = product;
				}
				goto LA549_;
				LA556_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T559_;
					nimZeroMem((void*)(&T559_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T559_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA549_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 42):
			{
				NI rb_35;
				NI rc_16;
				rb_35 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_16 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T565_;
					if (!(regs->data[rc_16].intVal == IL64(0))) goto LA563_;
					nimZeroMem((void*)(&T565_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_182), T565_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA561_;
				LA563_: ;
				{
					regs->data[ra].intVal = (NI64)(regs->data[rb_35].intVal / regs->data[rc_16].intVal);
				}
				LA561_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 43):
			{
				NI rb_36;
				NI rc_17;
				rb_36 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_17 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T572_;
					if (!(regs->data[rc_17].intVal == IL64(0))) goto LA570_;
					nimZeroMem((void*)(&T572_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_182), T572_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA568_;
				LA570_: ;
				{
					regs->data[ra].intVal = (NI64)(regs->data[rb_36].intVal % regs->data[rc_17].intVal);
				}
				LA568_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 44):
			{
				NI rb_37;
				NI rc_18;
				rb_37 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_18 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_37].floatVal) + (NF)(regs->data[rc_18].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 45):
			{
				NI rb_38;
				NI rc_19;
				rb_38 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_19 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_38].floatVal) - (NF)(regs->data[rc_19].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 46):
			{
				NI rb_39;
				NI rc_20;
				rb_39 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_20 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_39].floatVal) * (NF)(regs->data[rc_20].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 47):
			{
				NI rb_40;
				NI rc_21;
				rb_40 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_21 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = ((NF)(regs->data[rb_40].floatVal) / (NF)(regs->data[rc_21].floatVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 48):
			{
				NI rb_41;
				NI rc_22;
				NU64 b_3;
				NU64 c_2;
				NI64 a;
				rb_41 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_22 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				b_3 = ((NU64) (regs->data[rb_41].intVal));
				c_2 = ((NU64) (regs->data[rc_22].intVal));
				a = ((NI64) ((NU64)((NU64)(b_3) >> (NU64)(c_2))));
				regs->data[ra].intVal = a;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 49):
			{
				NI rb_42;
				NI rc_23;
				rb_42 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_23 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)((NU64)(regs->data[rb_42].intVal) << (NU64)(regs->data[rc_23].intVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 50):
			{
				NI rb_43;
				NI rc_24;
				rb_43 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_24 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)((NI64)(regs->data[rb_43].intVal) >> (NU64)(regs->data[rc_24].intVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 51):
			{
				NI rb_44;
				NI rc_25;
				rb_44 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_25 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_44].intVal & regs->data[rc_25].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 52):
			{
				NI rb_45;
				NI rc_26;
				rb_45 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_26 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_45].intVal | regs->data[rc_26].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 53):
			{
				NI rb_46;
				NI rc_27;
				rb_46 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_27 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)(regs->data[rb_46].intVal ^ regs->data[rc_27].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 54):
			{
				NI rb_47;
				NI rc_28;
				rb_47 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_28 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = pluspercent___system_712(regs->data[rb_47].intVal, regs->data[rc_28].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 55):
			{
				NI rb_48;
				NI rc_29;
				rb_48 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_29 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = minuspercent___system_732(regs->data[rb_48].intVal, regs->data[rc_29].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 56):
			{
				NI rb_49;
				NI rc_30;
				rb_49 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_30 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = starpercent___system_752(regs->data[rb_49].intVal, regs->data[rc_30].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 57):
			{
				NI rb_50;
				NI rc_31;
				rb_50 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_31 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = slashpercent___system_772(regs->data[rb_50].intVal, regs->data[rc_31].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 58):
			{
				NI rb_51;
				NI rc_32;
				rb_51 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_32 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = percentpercent___system_792(regs->data[rb_51].intVal, regs->data[rc_32].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 59):
			{
				NI rb_52;
				NI rc_33;
				rb_52 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_33 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_52].intVal == regs->data[rc_33].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 60):
			{
				NI rb_53;
				NI rc_34;
				rb_53 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_34 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_53].intVal <= regs->data[rc_34].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 61):
			{
				NI rb_54;
				NI rc_35;
				rb_54 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_35 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_54].intVal < regs->data[rc_35].intVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 62):
			{
				NI rb_55;
				NI rc_36;
				rb_55 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_36 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_55].floatVal == regs->data[rc_36].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 63):
			{
				NI rb_56;
				NI rc_37;
				rb_56 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_37 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_56].floatVal <= regs->data[rc_37].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 64):
			{
				NI rb_57;
				NI rc_38;
				rb_57 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_38 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((regs->data[rb_57].floatVal < regs->data[rc_38].floatVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 65):
			{
				NI rb_58;
				NI rc_39;
				NIM_BOOL T596_;
				rb_58 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_39 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T596_ = (NIM_BOOL)0;
				T596_ = lteqpercent___system_1001(regs->data[rb_58].intVal, regs->data[rc_39].intVal);
				regs->data[ra].intVal = ((NI64) (T596_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 66):
			{
				NI rb_59;
				NI rc_40;
				NIM_BOOL T598_;
				rb_59 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_40 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T598_ = (NIM_BOOL)0;
				T598_ = ltpercent___system_1021(regs->data[rb_59].intVal, regs->data[rc_40].intVal);
				regs->data[ra].intVal = ((NI64) (T598_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 67):
			{
				NIM_BOOL ret;
				NI rb_60;
				NI rc_41;
				tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA rbReg;
				tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA tmpX60gensym514_;
				tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA rcReg;
				tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA tmpX60gensym515_;
				ret = NIM_FALSE;
				rb_60 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_41 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				nimZeroMem((void*)(&rbReg), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
				nimZeroMem((void*)(&tmpX60gensym514_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
				genericAssign((void*)(&tmpX60gensym514_), (void*)(&regs->data[rb_60]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				{
					while (1) {
						if (!(tmpX60gensym514_.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4))) goto LA601;
						genericAssign((void*)(&tmpX60gensym514_), (void*)(&(*tmpX60gensym514_.regAddr)), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
					} LA601: ;
				}
				nimCopyMem((void*)(&rbReg), (NIM_CONST void*)(&tmpX60gensym514_), sizeof(rbReg));
				nimZeroMem((void*)(&rcReg), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
				nimZeroMem((void*)(&tmpX60gensym515_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
				genericAssign((void*)(&tmpX60gensym515_), (void*)(&regs->data[rc_41]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				{
					while (1) {
						if (!(tmpX60gensym515_.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4))) goto LA603;
						genericAssign((void*)(&tmpX60gensym515_), (void*)(&(*tmpX60gensym515_.regAddr)), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
					} LA603: ;
				}
				nimCopyMem((void*)(&rcReg), (NIM_CONST void*)(&tmpX60gensym515_), sizeof(rcReg));
				{
					if (!(rbReg.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5))) goto LA606_;
					{
						if (!(rcReg.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5))) goto LA610_;
						ret = (rbReg.nodeAddr == rcReg.nodeAddr);
					}
					goto LA608_;
					LA610_: ;
					{
						ret = ptrEquality__vm_2326(rbReg.nodeAddr, rcReg.node);
					}
					LA608_: ;
				}
				goto LA604_;
				LA606_: ;
				{
					if (!(rcReg.kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5))) goto LA614_;
					ret = ptrEquality__vm_2326(rcReg.nodeAddr, rbReg.node);
				}
				goto LA604_;
				LA614_: ;
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nb_2;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nc;
					nb_2 = rbReg.node;
					nc = rcReg.node;
					{
						if (!!(((*nb_2).kind == (*nc).kind))) goto LA619_;
					}
					goto LA617_;
					LA619_: ;
					{
						NIM_BOOL T622_;
						T622_ = (NIM_BOOL)0;
						T622_ = (nb_2 == nc);
						if (T622_) goto LA623_;
						T622_ = ((*nb_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23));
						LA623_: ;
						if (!T622_) goto LA624_;
						ret = NIM_TRUE;
					}
					goto LA617_;
					LA624_: ;
					{
						NIM_BOOL T627_;
						NIM_BOOL T628_;
						NIM_BOOL T629_;
						T627_ = (NIM_BOOL)0;
						T628_ = (NIM_BOOL)0;
						T629_ = (NIM_BOOL)0;
						T629_ = ((*nb_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3) || (*nb_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160) || (*nb_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 155));
						if (!(T629_)) goto LA630_;
						T629_ = !(((*nb_2).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA630_: ;
						T628_ = T629_;
						if (!(T628_)) goto LA631_;
						T628_ = ((*(*nb_2).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 25));
						LA631_: ;
						T627_ = T628_;
						if (!(T627_)) goto LA632_;
						T627_ = sameConstant__vmgen_971(nb_2, nc);
						LA632_: ;
						if (!T627_) goto LA633_;
						ret = NIM_TRUE;
					}
					goto LA617_;
					LA633_: ;
					{
						NIM_BOOL T636_;
						NIM_BOOL T637_;
						tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* tb;
						tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* tc;
						NIM_BOOL T642_;
						T636_ = (NIM_BOOL)0;
						T637_ = (NIM_BOOL)0;
						T637_ = ((*nb_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6));
						if (!(T637_)) goto LA638_;
						T637_ = ((*nc).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6));
						LA638_: ;
						T636_ = T637_;
						if (!(T636_)) goto LA639_;
						T636_ = ((*nb_2)._kind_1.intVal == (*nc)._kind_1.intVal);
						LA639_: ;
						if (!T636_) goto LA640_;
						tb = skipTypes__ast_3723((*nb_2).typ, abstractInst__ast_356);
						tc = skipTypes__ast_3723((*nc).typ, abstractInst__ast_356);
						T642_ = (NIM_BOOL)0;
						T642_ = ((*tb).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 26) || (*tb).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21));
						if (!(T642_)) goto LA643_;
						T642_ = ((*tc).kind == (*tb).kind);
						LA643_: ;
						ret = T642_;
					}
					goto LA617_;
					LA640_: ;
					LA617_: ;
				}
				LA604_: ;
				regs->data[ra].intVal = ((NI64) (ret));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 68):
			{
				NI rb_61;
				NI rc_42;
				NIM_BOOL T645_;
				rb_61 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_42 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T645_ = (NIM_BOOL)0;
				T645_ = exprStructuralEquivalent__trees_56(regs->data[rb_61].node, regs->data[rc_42].node, NIM_TRUE);
				regs->data[ra].intVal = ((NI64) (T645_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 69):
			{
				NI rb_62;
				NI rc_43;
				NIM_BOOL T647_;
				rb_62 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_43 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T647_ = (NIM_BOOL)0;
				T647_ = sameTypeOrNil__types_1910((*regs->data[rb_62].node).typ, (*regs->data[rc_43].node).typ, 12);
				regs->data[ra].intVal = ((NI64) (T647_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 70):
			{
				NI rb_63;
				NI rc_44;
				rb_63 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_44 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) (!((regs->data[rb_63].intVal == regs->data[rc_44].intVal))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 71):
			{
				NI rb_64;
				rb_64 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)(IL64(1) - regs->data[rb_64].intVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 72):
			{
				NI rb_65;
				NI64 val;
				rb_65 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				val = regs->data[rb_65].intVal;
				{
					if (!!((val == (IL64(-9223372036854775807) - IL64(1))))) goto LA653_;
					regs->data[ra].intVal = -(val);
				}
				goto LA651_;
				LA653_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T656_;
					nimZeroMem((void*)(&T656_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_181), T656_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA651_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 73):
			{
				NI rb_66;
				rb_66 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				regs->data[ra].floatVal = -(regs->data[rb_66].floatVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 74):
			{
				NI rb_67;
				rb_67 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)((NU64) ~(regs->data[rb_67].intVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 75):
			{
				NI rb_68;
				NI rc_45;
				rb_68 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_45 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) (eqStrings((*regs->data[rb_68].node)._kind_3.strVal, (*regs->data[rc_45].node)._kind_3.strVal)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 76):
			{
				NI rb_69;
				NI rc_46;
				rb_69 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_46 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((cmpStrings((*regs->data[rb_69].node)._kind_3.strVal, (*regs->data[rc_46].node)._kind_3.strVal) <= 0)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 77):
			{
				NI rb_70;
				NI rc_47;
				rb_70 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_47 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((cmpStrings((*regs->data[rb_70].node)._kind_3.strVal, (*regs->data[rc_47].node)._kind_3.strVal) < 0)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 79):
			{
				NI rb_71;
				NI rc_48;
				NIM_BOOL T663_;
				rb_71 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_48 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T663_ = (NIM_BOOL)0;
				T663_ = containsSets__nimsets_209((*(*colonenv_).c1).config, regs->data[rb_71].node, regs->data[rc_48].node);
				regs->data[ra].intVal = ((NI64) (T663_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 78):
			{
				NI rb_72;
				NI rc_49;
				NIM_BOOL T665_;
				rb_72 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_49 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T665_ = (NIM_BOOL)0;
				T665_ = equalSets__nimsets_216((*(*colonenv_).c1).config, regs->data[rb_72].node, regs->data[rc_49].node);
				regs->data[ra].intVal = ((NI64) (T665_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 80):
			{
				NI rb_73;
				NI rc_50;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_2;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b_4;
				NIM_BOOL T667_;
				NIM_BOOL T669_;
				rb_73 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_50 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				a_2 = regs->data[rb_73].node;
				b_4 = regs->data[rc_50].node;
				T667_ = (NIM_BOOL)0;
				T667_ = containsSets__nimsets_209((*(*colonenv_).c1).config, a_2, b_4);
				if (!(T667_)) goto LA668_;
				T669_ = (NIM_BOOL)0;
				T669_ = equalSets__nimsets_216((*(*colonenv_).c1).config, a_2, b_4);
				T667_ = !(T669_);
				LA668_: ;
				regs->data[ra].intVal = ((NI64) (T667_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 81):
			{
				NI rb_74;
				NI rc_51;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T671_;
				rb_74 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_51 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39)));
				T671_ = NIM_NIL;
				T671_ = intersectSets__nimsets_195((*(*colonenv_).c1).config, regs->data[rb_74].node, regs->data[rc_51].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T671_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 82):
			{
				NI rb_75;
				NI rc_52;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T673_;
				rb_75 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_52 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39)));
				T673_ = NIM_NIL;
				T673_ = unionSets__nimsets_181((*(*colonenv_).c1).config, regs->data[rb_75].node, regs->data[rc_52].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T673_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 83):
			{
				NI rb_76;
				NI rc_53;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T675_;
				rb_76 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_53 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39)));
				T675_ = NIM_NIL;
				T675_ = diffSets__nimsets_188((*(*colonenv_).c1).config, regs->data[rb_76].node, regs->data[rc_53].node);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons), (*T675_)._kind_6.sons);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 84):
			{
				NI rb_77;
				NI rc_54;
				rb_77 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_54 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				{
					NimStringDesc* T681_;
					if (!(regs->data[rb_77].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA679_;
					T681_ = NIM_NIL;
					T681_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*regs->data[rb_77].node)._kind_3.strVal);
					if (T681_) nimGCunrefNoCycle(T681_);
				}
				goto LA677_;
				LA679_: ;
				{
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), nimCharToStr(((NIM_CHAR) (((NI) (((NI) (regs->data[rb_77].intVal))))))));
				}
				LA677_: ;
				{
					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_77)) + ((NI) 1));
					colontmp__3 = (NI)((NI)(((NI) (rb_77)) + ((NI) (rc_54))) - ((NI) 1));
					res = colontmp__2;
					{
						while (1) {
							NimStringDesc* T686_;
							if (!(res <= colontmp__3)) goto LA685;
							i_3 = res;
							T686_ = NIM_NIL;
							{
								if (!(regs->data[i_3].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1))) goto LA689_;
								T686_ = copyString((*regs->data[i_3].node)._kind_3.strVal);
							}
							goto LA687_;
							LA689_: ;
							{
								T686_ = nimCharToStr(((NIM_CHAR) (((NI) (((NI) (regs->data[i_3].intVal)))))));
							}
							LA687_: ;
							asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), resizeString((*regs->data[ra].node)._kind_3.strVal, (T686_ ? T686_->Sup.len : 0) + 0));
appendString((*regs->data[ra].node)._kind_3.strVal, T686_);
							res += ((NI) 1);
						} LA685: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 101):
			{
				NI rb_78;
				rb_78 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), addChar((*regs->data[ra].node)._kind_3.strVal, ((NIM_CHAR) (((NI) (regs->data[rb_78].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 102):
			{
				NI rb_79;
				rb_79 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), resizeString((*regs->data[ra].node)._kind_3.strVal, ((*regs->data[rb_79].node)._kind_3.strVal ? (*regs->data[rb_79].node)._kind_3.strVal->Sup.len : 0) + 0));
appendString((*regs->data[ra].node)._kind_3.strVal, (*regs->data[rb_79].node)._kind_3.strVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 103):
			{
				NI rb_80;
				rb_80 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T699_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T700_;
					if (!((*regs->data[ra].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41))) goto LA697_;
					T699_ = NIM_NIL;
					T699_ = regToNode__vm_532(regs->data[rb_80]);
					T700_ = NIM_NIL;
					T700_ = copyValue__vm_468(T699_);
					add__ast_4798(regs->data[ra].node, T700_);
				}
				goto LA695_;
				LA697_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T702_;
					nimZeroMem((void*)(&T702_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T702_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA695_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 155):
			{
				NI rb_81;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_3;
				rb_81 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_3 = regs->data[rb_81].node;
				{
					if (!((*a_3).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 143))) goto LA706_;
					a_3 = (*a_3)._kind_6.sons->data[((NI) 0)];
				}
				LA706_: ;
				{
					if (!((*a_3).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA710_;
					{
						if (!((*(*a_3)._kind_4.sym).ast == 0)) goto LA714_;
						asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23)));
					}
					goto LA712_;
					LA714_: ;
					{
						asgnRef((void**) (&regs->data[ra].node), copyTree__ast_4432((*(*a_3)._kind_4.sym).ast));
					}
					LA712_: ;
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
				}
				goto LA708_;
				LA710_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T718_;
					nimZeroMem((void*)(&T718_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_183), T718_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA708_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 156):
			{
				NI rb_82;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_4;
				rb_82 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_4 = regs->data[rb_82].node;
				{
					if (!((*a_4).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA722_;
					{
						if (!((*(*a_4)._kind_4.sym).ast == 0)) goto LA726_;
						asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23)));
					}
					goto LA724_;
					LA726_: ;
					{
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* ast;
						ast = shallowCopy__ast_4414((*(*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__ast_3155((*(*a_4)._kind_4.sym).ast);
							i_5 = ((NI) 0);
							{
								while (1) {
									if (!(i_5 < colontmp__4)) goto LA731;
									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);
								} LA731: ;
							}
						}
						asgnRef((void**) (&(*ast)._kind_6.sons->data[((NI) 6)]), transformBody__transf_16((*(*colonenv_).c1).graph, (*(*colonenv_).c1).Sup.idgen, (*a_4)._kind_4.sym, NIM_TRUE));
						asgnRef((void**) (&regs->data[ra].node), copyTree__ast_4432(ast));
					}
					LA724_: ;
				}
				LA722_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 191):
			{
				NI rb_83;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_5;
				rb_83 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_5 = regs->data[rb_83].node;
				{
					if (!((*a_5).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA735_;
					{
						if (!((*(*a_5)._kind_4.sym).owner == 0)) goto LA739_;
						asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23)));
					}
					goto LA737_;
					LA739_: ;
					{
						tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* T742_;
						T742_ = NIM_NIL;
						T742_ = skipGenericOwner__ast_4659((*a_5)._kind_4.sym);
						asgnRef((void**) (&regs->data[ra].node), newSymNode__ast_3704(T742_));
					}
					LA737_: ;
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
				}
				goto LA733_;
				LA735_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T744_;
					nimZeroMem((void*)(&T744_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_183), T744_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA733_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 192):
			{
				NI rb_84;
				NI rc_55;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_6;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b_5;
				rb_84 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_55 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				a_6 = regs->data[rb_84].node;
				b_5 = regs->data[rc_55].node;
				{
					NIM_BOOL T748_;
					NIM_BOOL T749_;
					NIM_BOOL T750_;
					T748_ = (NIM_BOOL)0;
					T749_ = (NIM_BOOL)0;
					T750_ = (NIM_BOOL)0;
					T750_ = ((*a_6).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					if (!(T750_)) goto LA751_;
					T750_ = ((520192 &((NU32)1<<((NU)((*(*a_6)._kind_4.sym).kind)&31U)))!=0);
					LA751_: ;
					T749_ = T750_;
					if (!(T749_)) goto LA752_;
					T749_ = ((*b_5).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					LA752_: ;
					T748_ = T749_;
					if (!(T748_)) goto LA753_;
					T748_ = ((520192 &((NU32)1<<((NU)((*(*b_5)._kind_4.sym).kind)&31U)))!=0);
					LA753_: ;
					if (!T748_) goto LA754_;
					{
						NIM_BOOL T758_;
						T758_ = (NIM_BOOL)0;
						T758_ = (((*(*a_6)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 2))&63U)))!=0);
						if (!(T758_)) goto LA759_;
						T758_ = ((*(*a_6)._kind_4.sym).owner == (*b_5)._kind_4.sym);
						LA759_: ;
						if (!T758_) goto LA760_;
						regs->data[ra].intVal = IL64(1);
					}
					goto LA756_;
					LA760_: ;
					{
						regs->data[ra].intVal = IL64(0);
					}
					LA756_: ;
				}
				goto LA746_;
				LA754_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T764_;
					nimZeroMem((void*)(&T764_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_184), T764_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA746_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 157):
			{
				NI rb_85;
				rb_85 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				{
					if (!(((NI) (rb_85)) == ((NI) 1))) goto LA768_;
					msgWriteln__msgs_657((*(*colonenv_).c1).config, (*regs->data[ra].node)._kind_3.strVal, 5);
				}
				goto LA766_;
				LA768_: ;
				{
					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_85))) - ((NI) 1))));
						res_2 = ((NI) (ra));
						{
							while (1) {
								if (!(res_2 <= ((NI) (colontmp__5)))) goto LA773;
								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);
							} LA773: ;
						}
					}
					msgWriteln__msgs_657((*(*colonenv_).c1).config, outp, 5);
				}
				LA766_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 85):
			{
				NI rb_86;
				NI rc_56;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T775_;
				NIM_BOOL T776_;
				rb_86 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_56 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				T775_ = NIM_NIL;
				T775_ = regToNode__vm_532(regs->data[rc_56]);
				T776_ = (NIM_BOOL)0;
				T776_ = inSet__nimsets_7(regs->data[rb_86].node, T775_);
				regs->data[ra].intVal = ((NI64) (T776_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 92):
			{
				NI rb_87;
				NI rc_57;
				NI rd;
				rb_87 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_57 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*colonenv_).pc3 += ((NI) 1);
				rd = ((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(8ULL)) & 65535ULL)));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), substr__system_7774((*regs->data[rb_87].node)._kind_3.strVal, ((NI) (regs->data[rc_57].intVal)), ((NI) (regs->data[rd].intVal))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 93):
			{
				NI rb_88;
				NI rc_58;
				NI rd_2;
				tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA* rcAddr;
				NI T787_;
				rb_88 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_58 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				(*colonenv_).pc3 += ((NI) 1);
				rd_2 = ((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(8ULL)) & 65535ULL)));
				rcAddr = (&regs->data[rc_58]);
				{
					if (!((*rcAddr).kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4))) goto LA781_;
					rcAddr = (*rcAddr).regAddr;
				}
				goto LA779_;
				LA781_: ;
				{
					tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T786_;
					if (!!((regs->data[rc_58].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3)))) goto LA784_;
					nimZeroMem((void*)(&T786_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
					nimZeroMem((void*)(&T786_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
					T786_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3);
					genericShallowAssign((void*)(&regs->data[rc_58]), (void*)(&T786_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
				}
				goto LA779_;
				LA784_: ;
				LA779_: ;
				T787_ = (NI)0;
				T787_ = nimParseBiggestFloat((*regs->data[rb_88].node)._kind_3.strVal, (&(*rcAddr).floatVal), ((NI) (regs->data[rd_2].intVal)));
				regs->data[ra].intVal = ((NI64) (T787_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 104):
			{
				NI rb_89;
				NI rc_59;
				rb_89 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_59 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				{
					NIM_BOOL T791_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T792_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T793_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T795_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T796_;
					tyArray__Re75IspeoxXy2oCZHwcRrA T799_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T800_;
					NimStringDesc* T801_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T802_;
					NimStringDesc* T803_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T804_;
					NimStringDesc* T805_;
					NimStringDesc* T806_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T807_;
					T791_ = (NIM_BOOL)0;
					T792_ = NIM_NIL;
					T792_ = regToNode__vm_532(regs->data[rb_89]);
					T793_ = NIM_NIL;
					T793_ = regToNode__vm_532(regs->data[ra]);
					T791_ = leValueConv__semfold_626(T792_, T793_);
					if (!(T791_)) goto LA794_;
					T795_ = NIM_NIL;
					T795_ = regToNode__vm_532(regs->data[ra]);
					T796_ = NIM_NIL;
					T796_ = regToNode__vm_532(regs->data[rc_59]);
					T791_ = leValueConv__semfold_626(T795_, T796_);
					LA794_: ;
					if (!!(T791_)) goto LA797_;
					nimZeroMem((void*)T799_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
					T800_ = NIM_NIL;
					T800_ = regToNode__vm_532(regs->data[ra]);
					T799_[0] = dollar___renderer_2116(T800_);
					T801_ = NIM_NIL;
					T802_ = NIM_NIL;
					T802_ = regToNode__vm_532(regs->data[rb_89]);
					T803_ = NIM_NIL;
					T803_ = dollar___renderer_2116(T802_);
					T804_ = NIM_NIL;
					T804_ = regToNode__vm_532(regs->data[rc_59]);
					T805_ = NIM_NIL;
					T805_ = dollar___renderer_2116(T804_);
					T801_ = rawNewString((T803_ ? T803_->Sup.len : 0) + (T805_ ? T805_->Sup.len : 0) + 4);
appendString(T801_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_186));
appendString(T801_, T803_);
appendString(T801_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_106));
appendString(T801_, T805_);
appendString(T801_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_187));
					T799_[1] = T801_;
					T806_ = NIM_NIL;
					T806_ = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_185), T799_, 2);
					nimZeroMem((void*)(&T807_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T806_, T807_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA797_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 158):
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 159):
			{
				NI rb_90;
				NI rc_60;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* bb;
				NIM_BOOL isClosure;
				tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc;
				rb_90 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_60 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				bb = regs->data[rb_90].node;
				isClosure = ((*bb).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160));
				{
					if (!!(isClosure)) goto LA811_;
					prc = (*bb)._kind_4.sym;
				}
				goto LA809_;
				LA811_: ;
				{
					prc = (*(*bb)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
				}
				LA809_: ;
				{
					tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA T818_;
					if (!((*prc).offset < ((NI) -1))) goto LA816_;
					nimZeroMem((void*)(&T818_), sizeof(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA));
					nimZeroMem((void*)(&T818_), sizeof(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA));
					T818_.ra = ((NI) (ra));
					T818_.rb = ((NI) (rb_90));
					T818_.rc = ((NI) (rc_60));
					T818_.slots = ((tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA*) ((&regs->data[((NI) 0)])));
					T818_.currentException = (*(*colonenv_).c1).currentExceptionA;
					T818_.currentLineInfo = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
					(*(*colonenv_).c1).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClE_0? (*(*colonenv_).c1).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClP_0((&T818_), (*(*colonenv_).c1).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClE_0):((TM__sQJeTKtOMm7ArbnaG0SDbQ_188)((*(*colonenv_).c1).callbacks->data[(NI)(((NI64)-((*prc).offset)) - ((NI) 2))].Field1.ClP_0))((&T818_));
				}
				goto LA814_;
				LA816_: ;
				{
					NIM_BOOL T820_;
					T820_ = (NIM_BOOL)0;
					T820_ = importcCond__vmgen_2485((*colonenv_).c1, prc);
					if (!T820_) goto LA821_;
					{
						if (!!((((*(*(*colonenv_).c1).config).features &((NU32)1<<((NU)(((tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw) 10))&31U)))!=0))) goto LA825_;
						liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_189), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_190, NIM_FALSE);
					}
					LA825_: ;
					liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_191), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_192, NIM_FALSE);
				}
				goto LA814_;
				LA821_: ;
				{
					NI newPc_2;
					tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* newFrame;
					tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* T845_;
					if (!!(((*prc).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 18)))) goto LA828_;
					newPc_2 = compile__vm_797((*colonenv_).c1, prc);
					{
						if (!(newPc_2 < (*colonenv_).pc3)) goto LA832_;
						{
							if (!((*(*colonenv_).c1).loopIterations <= ((NI) 0))) goto LA836_;
							{
								if (!(((*(*colonenv_).c1).features &((NU8)1<<((NU)(((tyEnum_TSandboxFlag__6jKj8dTCDIUGegA1P2RahA) 1))&7U)))!=0)) goto LA840_;
								(*(*colonenv_).c1).loopIterations = (*(*(*colonenv_).c1).config).maxLoopIterationsVM;
							}
							goto LA838_;
							LA840_: ;
							{
								NimStringDesc* T843_;
								NimStringDesc* T844_;
								msgWriteln__msgs_657((*(*colonenv_).c1).config, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_115), 4);
								stackTraceAux__vm_31((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NI) 100));
								T843_ = NIM_NIL;
								T843_ = dollar___systemZdollars_3((*(*(*colonenv_).c1).config).maxLoopIterationsVM);
								T844_ = NIM_NIL;
								T844_ = nsuFormatSingleElem(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_193), T843_);
								liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), T844_, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_194, NIM_FALSE);
							}
							LA838_: ;
						}
						LA836_: ;
						(*(*colonenv_).c1).loopIterations -= ((NI) 1);
					}
					LA832_: ;
					T845_ = NIM_NIL;
					T845_ = (tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) newObj((&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_), sizeof(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ));
					asgnRef((void**) (&(*T845_).prc), prc);
					(*T845_).comesFrom = (*colonenv_).pc3;
					asgnRef((void**) (&(*T845_).next), (*colonenv_).tos2);
					newFrame = T845_;
					if ((*newFrame).slots) { nimGCunrefNoCycle((*newFrame).slots); (*newFrame).slots = NIM_NIL; }
					(*newFrame).slots = (tySequence__qoz9b2fDIpsvVqgQYTLWcFA*) newSeqRC1((&NTIseqLtfullregT__qoz9b2fDIpsvVqgQYTLWcFA_), ((NI) ((NI)((*prc).offset + isClosure))));
					{
						NIM_BOOL T848_;
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T851_;
						T848_ = (NIM_BOOL)0;
						T848_ = isEmptyType__ast_4780((*(*prc).typ).sons->data[((NI) 0)]);
						if (!!(T848_)) goto LA849_;
						T851_ = NIM_NIL;
						T851_ = getNullValue__vmgen_2501((*(*prc).typ).sons->data[((NI) 0)], (*prc).info, (*(*colonenv_).c1).config);
						putIntoReg__vm_513((&(*newFrame).slots->data[((NI) 0)]), T851_);
					}
					LA849_: ;
					{
						NI i_7;
						NI colontmp__6;
						NI res_3;
						i_7 = (NI)0;
						colontmp__6 = (NI)0;
						colontmp__6 = (NI)(((NI) (rc_60)) - ((NI) 1));
						res_3 = ((NI) 1);
						{
							while (1) {
								if (!(res_3 <= colontmp__6)) goto LA854;
								i_7 = res_3;
								genericAssign((void*)(&(*newFrame).slots->data[i_7]), (void*)(&regs->data[(NI)(((NI) (rb_90)) + i_7)]), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
								res_3 += ((NI) 1);
							} LA854: ;
						}
					}
					{
						tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T859_;
						if (!isClosure) goto LA857_;
						nimZeroMem((void*)(&T859_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
						nimZeroMem((void*)(&T859_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
						T859_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
						T859_.node = (*regs->data[rb_90].node)._kind_6.sons->data[((NI) 1)];
						genericShallowAssign((void*)(&(*newFrame).slots->data[rc_60]), (void*)(&T859_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
					}
					LA857_: ;
					asgnRef((void**) (&(*colonenv_).tos2), newFrame);
					regs = (*(*colonenv_).tos2).slots;
					(*colonenv_).pc3 = (NI)(newPc_2 - ((NI) 1));
				}
				goto LA814_;
				LA828_: ;
				{
					tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* genSymOwner;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* macroCall;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T868_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_7;
					{
						NIM_BOOL T863_;
						T863_ = (NIM_BOOL)0;
						T863_ = !(((*(*colonenv_).tos2).next == ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL)));
						if (!(T863_)) goto LA864_;
						T863_ = !(((*(*(*colonenv_).tos2).next).prc == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL)));
						LA864_: ;
						if (!T863_) goto LA865_;
						genSymOwner = (*(*(*colonenv_).tos2).next).prc;
					}
					goto LA861_;
					LA865_: ;
					{
						genSymOwner = (*(*colonenv_).c1).module;
					}
					LA861_: ;
					macroCall = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 27), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]);
					T868_ = NIM_NIL;
					T868_ = newSymNode__ast_3704(prc);
					add__ast_4798(macroCall, T868_);
					{
						NI i_8;
						NI colontmp__7;
						NI res_4;
						i_8 = (NI)0;
						colontmp__7 = (NI)0;
						colontmp__7 = (NI)(((NI) (rc_60)) - ((NI) 1));
						res_4 = ((NI) 1);
						{
							while (1) {
								tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node_2;
								if (!(res_4 <= colontmp__7)) goto LA871;
								i_8 = res_4;
								node_2 = regToNode__vm_532(regs->data[(NI)(((NI) (rb_90)) + i_8)]);
								(*node_2).info = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
								add__ast_4798(macroCall, node_2);
								res_4 += ((NI) 1);
							} LA871: ;
						}
					}
					a_7 = evalTemplate__evaltempl_275(macroCall, prc, genSymOwner, (*(*colonenv_).c1).config, (*(*colonenv_).c1).cache, (*(*colonenv_).c1).templInstCounter, (*(*colonenv_).c1).Sup.idgen, NIM_FALSE);
					{
						NIM_BOOL T874_;
						NI T876_;
						T874_ = (NIM_BOOL)0;
						T874_ = ((*a_7).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115));
						if (!(T874_)) goto LA875_;
						T876_ = (NI)0;
						T876_ = len__ast_3155(a_7);
						T874_ = (T876_ == ((NI) 1));
						LA875_: ;
						if (!T874_) goto LA877_;
						a_7 = (*a_7)._kind_6.sons->data[((NI) 0)];
					}
					LA877_: ;
					recSetFlagIsRef__vm_802(a_7);
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					asgnRef((void**) (&regs->data[ra].node), a_7);
				}
				LA814_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 165):
			{
				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 LA882_;
					(*colonenv_).pc3 += rbx;
				}
				LA882_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 166):
			{
				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 LA887_;
					(*colonenv_).pc3 += rbx_2;
				}
				LA887_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 167):
			{
				NI rbx_3;
				rbx_3 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				(*colonenv_).pc3 += rbx_3;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 168):
			{
				NI rbx_4;
				rbx_4 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				(*colonenv_).pc3 += rbx_4;
				{
					if (!((*(*colonenv_).c1).loopIterations <= ((NI) 0))) goto LA893_;
					{
						if (!(((*(*colonenv_).c1).features &((NU8)1<<((NU)(((tyEnum_TSandboxFlag__6jKj8dTCDIUGegA1P2RahA) 1))&7U)))!=0)) goto LA897_;
						(*(*colonenv_).c1).loopIterations = (*(*(*colonenv_).c1).config).maxLoopIterationsVM;
					}
					goto LA895_;
					LA897_: ;
					{
						NimStringDesc* T900_;
						NimStringDesc* T901_;
						msgWriteln__msgs_657((*(*colonenv_).c1).config, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_115), 4);
						stackTraceAux__vm_31((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NI) 100));
						T900_ = NIM_NIL;
						T900_ = dollar___systemZdollars_3((*(*(*colonenv_).c1).config).maxLoopIterationsVM);
						T901_ = NIM_NIL;
						T901_ = nsuFormatSingleElem(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_193), T900_);
						liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), T901_, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_194, NIM_FALSE);
					}
					LA895_: ;
				}
				LA893_: ;
				(*(*colonenv_).c1).loopIterations -= ((NI) 1);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 169):
			{
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* branch;
				NIM_BOOL cond;
				branch = (*(*(*colonenv_).c1).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 T904_;
					NI i_9;
					j = (NI)0;
					colontmp__8 = (NI)0;
					T904_ = (NI)0;
					T904_ = len__ast_3155(branch);
					colontmp__8 = (NI)(T904_ - ((NI) 1));
					i_9 = ((NI) 0);
					{
						while (1) {
							if (!(i_9 < colontmp__8)) goto LA906;
							j = i_9;
							{
								tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T909_;
								NIM_BOOL T910_;
								T909_ = NIM_NIL;
								T909_ = regToNode__vm_532(regs->data[ra]);
								T910_ = (NIM_BOOL)0;
								T910_ = overlap__nimsets_40(T909_, (*branch)._kind_6.sons->data[j]);
								if (!T910_) goto LA911_;
								cond = NIM_TRUE;
								goto LA903;
							}
							LA911_: ;
							i_9 += ((NI) 1);
						} LA906: ;
					}
				} LA903: ;
				(*colonenv_).pc3 += ((NI) 1);
				{
					NU64 instr2;
					NI rbx_5;
					if (!!(cond)) goto LA915_;
					instr2 = (*(*colonenv_).c1).code->data[(*colonenv_).pc3];
					rbx_5 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr2) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
					(*colonenv_).pc3 += rbx_5;
				}
				LA915_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 170):
			{
				NI rbx_6;
				rbx_6 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				pushSafePoint__vm_537((*colonenv_).tos2, (NI)((*colonenv_).pc3 + rbx_6));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 171):
			{
				{
					if (!NIM_TRUE) goto LA921_;
					failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_195));
				}
				LA921_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 172):
			{
				{
					if (!!((savedPC < ((NI) 0)))) goto LA926_;
					failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_196));
				}
				LA926_: ;
				popSafePoint__vm_544((*colonenv_).tos2);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 173):
			{
				{
					if (!(((NI) 0) <= savedPC)) goto LA931_;
					(*colonenv_).pc3 = (NI)(savedPC - ((NI) 1));
					savedPC = ((NI) -1);
					{
						if (!!(((*colonenv_).tos2 == savedFrame))) goto LA935_;
						asgnRef((void**) (&(*colonenv_).tos2), savedFrame);
						regs = (*(*colonenv_).tos2).slots;
					}
					LA935_: ;
				}
				LA931_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 160):
			{
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* raised;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T943_;
				NimStringDesc* T944_;
				tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* frame;
				tyTuple__0kvMmS5xZnGod4dGyClDyg jumpTo;
				{
					if (!(regs->data[ra].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0))) goto LA940_;
					raised = (*(*colonenv_).c1).currentExceptionA;
				}
				goto LA938_;
				LA940_: ;
				{
					raised = regs->data[ra].node;
				}
				LA938_: ;
				asgnRef((void**) (&(*(*colonenv_).c1).currentExceptionA), raised);
				T943_ = NIM_NIL;
				T943_ = skipColon__ast_4949((*(*(*colonenv_).c1).currentExceptionA)._kind_6.sons->data[((NI) 2)]);
				T944_ = NIM_NIL;
				T944_ = (*T943_)._kind_3.strVal; (*T943_)._kind_3.strVal = copyStringRC1((*(*(*(*(*(*colonenv_).c1).currentExceptionA).typ).sym).name).s);
				if (T944_) nimGCunrefNoCycle(T944_);
				(*(*colonenv_).c1).exceptionInstr = (*colonenv_).pc3;
				frame = (*colonenv_).tos2;
				jumpTo = findExceptionHandler__vm_565((*colonenv_).c1, frame, raised);
				{
					while (1) {
						NIM_BOOL T947_;
						T947_ = (NIM_BOOL)0;
						T947_ = (jumpTo.Field0 == ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 2));
						if (!(T947_)) goto LA948_;
						T947_ = !(((*frame).next == 0));
						LA948_: ;
						if (!T947_) goto LA946;
						frame = (*frame).next;
						jumpTo = findExceptionHandler__vm_565((*colonenv_).c1, frame, raised);
					} LA946: ;
				}
				switch (jumpTo.Field0) {
				case ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 0):
				{
					savedPC = ((NI) -1);
					(*colonenv_).pc3 = (NI)(jumpTo.Field1 - ((NI) 1));
					{
						if (!!(((*colonenv_).tos2 == frame))) goto LA952_;
						asgnRef((void**) (&(*colonenv_).tos2), frame);
						regs = (*(*colonenv_).tos2).slots;
					}
					LA952_: ;
				}
				break;
				case ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 1):
				{
					savedPC = (*colonenv_).pc3;
					savedFrame = (*colonenv_).tos2;
					(*colonenv_).pc3 = (NI)(jumpTo.Field1 - ((NI) 1));
					{
						if (!!(((*colonenv_).tos2 == frame))) goto LA957_;
						asgnRef((void**) (&(*colonenv_).tos2), frame);
						regs = (*(*colonenv_).tos2).slots;
					}
					LA957_: ;
				}
				break;
				case ((tyEnum_ExceptionGoto__9bCCzOy4iB1ile39cwqz29a8A) 2):
				{
					bailOut__vm_107((*colonenv_).c1, (*colonenv_).tos2);
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 174):
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_2;
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				typ_2 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				asgnRef((void**) (&regs->data[ra].node), getNullValue__vmgen_2501(typ_2, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).config));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 175):
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_3;
				NU64 instr2_2;
				NI count;
				typ_3 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				(*colonenv_).pc3 += ((NI) 1);
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				instr2_2 = (*(*colonenv_).c1).code->data[(*colonenv_).pc3];
				count = ((NI) (regs->data[(NU64)((NU64)((NU64)(instr2_2) >> (NU64)(8ULL)) & 65535ULL)].intVal));
				asgnRef((void**) (&regs->data[ra].node), newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]));
				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__IeU9azYSNIK3V9b36Ir6NZcw*) newSeqRC1((&NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_), ((NI) (count)));
				{
					NI i_10;
					NI i_11;
					i_10 = (NI)0;
					i_11 = ((NI) 0);
					{
						while (1) {
							if (!(i_11 < count)) goto LA964;
							i_10 = i_11;
							asgnRef((void**) (&(*regs->data[ra].node)._kind_6.sons->data[i_10]), getNullValue__vmgen_2501((*typ_3).sons->data[((NI) 0)], (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).config));
							i_11 += ((NI) 1);
						} LA964: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 164):
			{
				NI rb_91;
				rb_91 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), mnewString(((NI) (((NI) (regs->data[rb_91].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 184):
			{
				NI rbx_7;
				rbx_7 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) (rbx_7));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 176):
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_4;
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				typ_4 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				asgnRef((void**) (&regs->data[ra].node), getNullValue__vmgen_2501(typ_4, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).config));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 177):
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_5;
				typ_5 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* T971_;
					T971_ = NIM_NIL;
					T971_ = skipTypes__ast_3723(typ_5, TM__sQJeTKtOMm7ArbnaG0SDbQ_200);
					if (!((*T971_).kind >= ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 36) && (*T971_).kind <= ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 39))) goto LA972_;
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
					regs->data[ra].floatVal = 0.0;
				}
				goto LA969_;
				LA972_: ;
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
					regs->data[ra].intVal = IL64(0);
				}
				LA969_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 178):
			{
				NI rb_92;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* cnst;
				rb_92 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				cnst = (*(*(*colonenv_).c1).constants)._kind_6.sons->data[rb_92];
				{
					NIM_BOOL T978_;
					T978_ = (NIM_BOOL)0;
					T978_ = fitsRegister__vmgen_1823((*cnst).typ);
					if (!T978_) goto LA979_;
					reset__vm_3163((&regs->data[ra]));
					putIntoReg__vm_513((&regs->data[ra]), cnst);
				}
				goto LA976_;
				LA979_: ;
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					asgnRef((void**) (&regs->data[ra].node), cnst);
				}
				LA976_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 179):
			{
				NI rb_93;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* cnst_2;
				rb_93 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				cnst_2 = (*(*(*colonenv_).c1).constants)._kind_6.sons->data[rb_93];
				{
					NIM_BOOL T985_;
					T985_ = (NIM_BOOL)0;
					T985_ = fitsRegister__vmgen_1823((*cnst_2).typ);
					if (!T985_) goto LA986_;
					putIntoReg__vm_513((&regs->data[ra]), cnst_2);
				}
				goto LA983_;
				LA986_: ;
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					asgnRef((void**) (&regs->data[ra].node), copyTree__ast_4432(cnst_2));
				}
				LA983_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 180):
			{
				NI rb_94;
				rb_94 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), (*(*(*colonenv_).c1).globals)._kind_6.sons->data[rb_94]);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 182):
			{
				NI rb_95;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node_3;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_6;
				rb_95 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				node_3 = (*(*(*colonenv_).c1).globals)._kind_6.sons->data[rb_95];
				typ_6 = (*node_3).typ;
				{
					NimStringDesc* T995_;
					if (!!(((*node_3).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6)))) goto LA993_;
					T995_ = NIM_NIL;
					T995_ = rawNewString((reprEnum((NI)(*node_3).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*node_3).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 41);
appendString(T995_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_201));
appendString(T995_, reprEnum((NI)(*node_3).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
					failedAssertImpl__systemZassertions_56(T995_);
				}
				LA993_: ;
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node2_2;
					if (!((*typ_6).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 21))) goto LA998_;
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					node2_2 = newNodeIT__ast_3342(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], typ_6);
					(*node2_2)._kind_1.intVal = ((NI64) ((*((NI*) ((*node_3)._kind_1.intVal)))));
					(*node2_2).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 14)) & 31);
					asgnRef((void**) (&regs->data[ra].node), node2_2);
				}
				goto LA996_;
				LA998_: ;
				{
					NIM_BOOL T1001_;
					NimStringDesc* T1004_;
					tyTuple__0c626sqvYlRHlzCEcJoxaA T1005_;
					NimStringDesc* T1006_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1007_;
					T1001_ = (NIM_BOOL)0;
					T1001_ = derefPtrToReg__vm_161((*node_3)._kind_1.intVal, typ_6, (&regs->data[ra]), NIM_FALSE);
					if (!!(T1001_)) goto LA1002_;
					T1004_ = NIM_NIL;
					nimZeroMem((void*)(&T1005_), sizeof(tyTuple__0c626sqvYlRHlzCEcJoxaA));
					T1005_.Field0 = typeToString__types_50(typ_6, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
					T1005_.Field1 = (*(*typ_6).sons->data[((NI) 0)]).kind;
					T1006_ = NIM_NIL;
					T1006_ = dollar___vm_1717(T1005_);
					T1004_ = rawNewString((T1006_ ? T1006_->Sup.len : 0) + 29);
appendString(T1004_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_202));
appendString(T1004_, T1006_);
					nimZeroMem((void*)(&T1007_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1004_, T1007_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA996_;
				LA1002_: ;
				LA996_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 183):
			{
				NI rb_96;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node_4;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_7;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node2_3;
				rb_96 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				node_4 = (*(*(*colonenv_).c1).globals)._kind_6.sons->data[rb_96];
				typ_7 = (*node_4).typ;
				node2_3 = newNodeIT__ast_3342(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), (*node_4).info, typ_7);
				(*node2_3)._kind_1.intVal = (*node_4)._kind_1.intVal;
				(*node2_3).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 14)) & 31);
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), node2_3);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 181):
			{
				NI rb_97;
				rb_97 = (NI)((NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608)) - ((NI) 1));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5));
				regs->data[ra].nodeAddr = &(*(*(*colonenv_).c1).globals)._kind_6.sons->data[rb_97];
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 86):
			{
				NI rb_98;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1011_;
				rb_98 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				T1011_ = NIM_NIL;
				T1011_ = regToNode__vm_532(regs->data[rb_98]);
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), renderTree__renderer_46(T1011_, 12));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 96):
			{
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1017_;
					tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T1018_;
					tyObject_Int128__ZSLNyYMaD8rorY4HZRFSUQ T1019_;
					NI T1020_;
					if (!((25 &((NU8)1<<((NU)((*(*colonenv_).c1).mode)&7U)))!=0)) goto LA1015_;
					liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 82), ((NimStringDesc*) NIM_NIL), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 0), TM__sQJeTKtOMm7ArbnaG0SDbQ_203, NIM_FALSE);
					T1017_ = NIM_NIL;
					T1017_ = regToNode__vm_532(regs->data[ra]);
					T1018_ = toInt128__types_1431(((NI) 1));
					T1019_ = getOrdValue__types_161(T1017_, T1018_);
					T1020_ = (NI)0;
					T1020_ = toInt__int495056_273(T1019_);
					msgQuit__msgs_452(((NI8) (T1020_)));
				}
				goto LA1013_;
				LA1015_: ;
				{
					switch ((*Result).kind) {
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0):
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2):
					(*Result).intVal = 0;
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3):
					(*Result).floatVal = 0;
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1):
					unsureAsgnRef((void**)&(*Result).node, NIM_NIL);
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 4):
					(*Result).regAddr = NIM_NIL;
					break;
					case ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 5):
					(*Result).nodeAddr = NIM_NIL;
					break;
					} 
					(*Result).kind = 0;
					(*Result).kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 0);
					goto BeforeRet_;
				}
				LA1013_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 97):
			{
				NimStringDesc* msg;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* disc;
				NimStringDesc* msg2;
				NimStringDesc* T1023_;
				NimStringDesc* T1024_;
				tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1025_;
				msg = (*regs->data[ra].node)._kind_3.strVal;
				disc = regToNode__vm_532(regs->data[(NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)]);
				T1023_ = NIM_NIL;
				T1024_ = NIM_NIL;
				T1024_ = dollar___renderer_2116(disc);
				T1023_ = rawNewString((msg ? msg->Sup.len : 0) + (T1024_ ? T1024_->Sup.len : 0) + 1);
appendString(T1023_, msg);
appendString(T1023_, T1024_);
appendString(T1023_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_204));
				msg2 = T1023_;
				nimZeroMem((void*)(&T1025_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
				stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, msg2, T1025_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
				goto BeforeRet_;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 87):
			{
				NI rb_99;
				rb_99 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), setLengthStr((*regs->data[ra].node)._kind_3.strVal, ((NI) (((NI) (regs->data[rb_99].intVal))))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 90):
			{
				NI rb_100;
				NI rc_61;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_8;
				NI T1028_;
				rb_100 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_61 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				typ_8 = (*(*colonenv_).c1).types->data[regs->data[rc_61].intVal];
				T1028_ = (NI)0;
				T1028_ = inheritanceDiff__types_2737((*regs->data[rb_100].node).typ, typ_8);
				regs->data[ra].intVal = ((NI64) ((T1028_ <= ((NI) 0))));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 91):
			{
				NI rb_101;
				NI rc_62;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t1;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t2;
				NIM_BOOL match;
				rb_101 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_62 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				t1 = skipTypes__ast_3723((*regs->data[rb_101].node).typ, TM__sQJeTKtOMm7ArbnaG0SDbQ_205);
				t2 = (*(*colonenv_).c1).types->data[regs->data[rc_62].intVal];
				{
					if (!((*t2).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 52))) goto LA1032_;
					match = NIM_TRUE;
				}
				goto LA1030_;
				LA1032_: ;
				{
					match = sameType__types_1886(t1, t2, 0);
				}
				LA1030_: ;
				regs->data[ra].intVal = ((NI64) (match));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 88):
			{
				NI rb_102;
				NI newLen;
				rb_102 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				newLen = ((NI) (regs->data[rb_102].intVal));
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1040_;
					if (!(regs->data[ra].node == 0)) goto LA1038_;
					nimZeroMem((void*)(&T1040_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_174), T1040_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1036_;
				LA1038_: ;
				{
					setLenSeq__vm_818((*colonenv_).c1, regs->data[ra].node, newLen, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]);
				}
				LA1036_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 98):
			{
				NI rb_103;
				NI64 min;
				NI64 max;
				rb_103 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				min = -((NI64)((NU64)(IL64(1)) << (NU64)((NI)(((NI) (rb_103)) - ((NI) 1)))));
				max = (NI64)((NI64)((NU64)(IL64(1)) << (NU64)((NI)(((NI) (rb_103)) - ((NI) 1)))) - IL64(1));
				{
					NIM_BOOL T1045_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1049_;
					T1045_ = (NIM_BOOL)0;
					T1045_ = (regs->data[ra].intVal < min);
					if (T1045_) goto LA1046_;
					T1045_ = (max < regs->data[ra].intVal);
					LA1046_: ;
					if (!T1045_) goto LA1047_;
					nimZeroMem((void*)(&T1049_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_206), T1049_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1047_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 99):
			{
				NI rb_104;
				rb_104 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = (NI64)(regs->data[ra].intVal & (NI64)((NI64)((NU64)(IL64(1)) << (NU64)(((NI) (rb_104)))) - IL64(1)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 100):
			{
				NI rb_105;
				NI imm_7;
				rb_105 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				imm_7 = (NI)(((NI) 64) - ((NI) (rb_105)));
				regs->data[ra].intVal = (NI64)((NI64)((NI64)((NU64)(regs->data[ra].intVal) << (NU64)(imm_7))) >> (NU64)(imm_7));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 89):
			{
				NI rb_106;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* node_5;
				NIM_BOOL T1053_;
				NIM_BOOL T1054_;
				NIM_BOOL T1057_;
				NIM_BOOL T1058_;
				NIM_BOOL T1059_;
				NIM_BOOL T1060_;
				NIM_BOOL T1061_;
				NI T1065_;
				rb_106 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				node_5 = regs->data[rb_106].node;
				T1053_ = (NIM_BOOL)0;
				T1054_ = (NIM_BOOL)0;
				T1054_ = ((*node_5).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23));
				if (!(T1054_)) goto LA1055_;
				T1054_ = !((((*node_5).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13))&31U)))!=0));
				LA1055_: ;
				T1053_ = T1054_;
				if (T1053_) goto LA1056_;
				T1057_ = (NIM_BOOL)0;
				T1058_ = (NIM_BOOL)0;
				T1059_ = (NIM_BOOL)0;
				T1060_ = (NIM_BOOL)0;
				T1061_ = (NIM_BOOL)0;
				T1061_ = !(((*node_5).typ == 0));
				if (!(T1061_)) goto LA1062_;
				T1061_ = ((*(*node_5).typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 25));
				LA1062_: ;
				T1060_ = T1061_;
				if (!(T1060_)) goto LA1063_;
				T1060_ = ((*(*node_5).typ).callConv == ((tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg) 9));
				LA1063_: ;
				T1059_ = T1060_;
				if (!(T1059_)) goto LA1064_;
				T1065_ = (NI)0;
				T1065_ = safeLen__ast_3148(node_5);
				T1059_ = (((NI) 0) < T1065_);
				LA1064_: ;
				T1058_ = T1059_;
				if (!(T1058_)) goto LA1066_;
				T1058_ = ((*(*node_5)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23));
				LA1066_: ;
				T1057_ = T1058_;
				if (!(T1057_)) goto LA1067_;
				T1057_ = ((*(*node_5)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23));
				LA1067_: ;
				T1053_ = T1057_;
				LA1056_: ;
				regs->data[ra].intVal = ((NI64) (T1053_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 185):
			{
				NI rbx_8;
				rbx_8 = (NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), copyTree__ast_4432((*(*(*colonenv_).c1).constants)._kind_6.sons->data[rbx_8]));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 186):
			{
				NI rb_107;
				NI rc_63;
				NI idx_7;
				tyProc__vkuGXw0bPP9b9cpazTHQY9bqg callback;
				tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA args;
				rb_107 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_63 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				idx_7 = ((NI) (regs->data[(NI)((NI)(((NI) (rb_107)) + ((NI) (rc_63))) - ((NI) 1))].intVal));
				nimZeroMem((void*)(&callback), sizeof(tyProc__vkuGXw0bPP9b9cpazTHQY9bqg));
				callback.ClE_0 = (*(*colonenv_).c1).callbacks->data[idx_7].Field1.ClE_0;
				callback.ClP_0 = (*(*colonenv_).c1).callbacks->data[idx_7].Field1.ClP_0;
				nimZeroMem((void*)(&args), sizeof(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA));
				nimZeroMem((void*)(&args), sizeof(tyObject_VmArgs__pcDb3SOJLe7g9bzr1B27LMA));
				args.ra = ((NI) (ra));
				args.rb = ((NI) (rb_107));
				args.rc = ((NI) (rc_63));
				args.slots = ((tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA*) ((&regs->data[((NI) 0)])));
				args.currentException = (*(*colonenv_).c1).currentExceptionA;
				args.currentLineInfo = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
				callback.ClE_0? callback.ClP_0((&args), callback.ClE_0):((TM__sQJeTKtOMm7ArbnaG0SDbQ_207)(callback.ClP_0))((&args));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 161):
			{
				NI rb_108;
				NI rc_64;
				NI idx_8;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* src_6;
				rb_108 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_64 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				idx_8 = ((NI) (regs->data[rc_64].intVal));
				src_6 = regs->data[rb_108].node;
				{
					NimStringDesc* T1075_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1076_;
					if (!((*src_6).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*src_6).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA1073_;
					T1075_ = NIM_NIL;
					T1075_ = rawNewString((reprEnum((NI)(*src_6).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*src_6).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 32);
appendString(T1075_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_208));
appendString(T1075_, reprEnum((NI)(*src_6).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
					nimZeroMem((void*)(&T1076_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1075_, T1076_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1071_;
				LA1073_: ;
				{
					NI T1078_;
					NIM_BOOL T1079_;
					NimStringDesc* T1082_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1093_;
					T1078_ = (NI)0;
					T1078_ = len__ast_3155(src_6);
					T1079_ = (NIM_BOOL)0;
					T1079_ = lteqpercent___system_985(T1078_, idx_8);
					if (!T1079_) goto LA1080_;
					T1082_ = NIM_NIL;
					{
						NI T1085_;
						T1085_ = (NI)0;
						T1085_ = len__ast_3155(src_6);
						if (!((NI)(T1085_ - ((NI) 1)) < ((NI) 0))) goto LA1086_;
						T1082_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA1083_;
					LA1086_: ;
					{
						NimStringDesc* T1089_;
						NimStringDesc* T1090_;
						NI T1091_;
						NimStringDesc* T1092_;
						T1089_ = NIM_NIL;
						T1090_ = NIM_NIL;
						T1090_ = dollar___systemZdollars_3(idx_8);
						T1091_ = (NI)0;
						T1091_ = len__ast_3155(src_6);
						T1092_ = NIM_NIL;
						T1092_ = dollar___systemZdollars_3((NI)(T1091_ - ((NI) 1)));
						T1089_ = rawNewString((T1090_ ? T1090_->Sup.len : 0) + (T1092_ ? T1092_->Sup.len : 0) + 19);
appendString(T1089_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T1089_, T1090_);
appendString(T1089_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T1089_, T1092_);
						T1082_ = T1089_;
					}
					LA1083_: ;
					nimZeroMem((void*)(&T1093_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1082_, T1093_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1071_;
				LA1080_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), (*src_6)._kind_6.sons->data[idx_8]);
				}
				LA1071_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 162):
			{
				NI rb_109;
				NI rc_65;
				NI idx_9;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_2;
				rb_109 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_65 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				idx_9 = ((NI) (regs->data[rb_109].intVal));
				dest_2 = regs->data[ra].node;
				{
					NIM_BOOL T1098_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1102_;
					T1098_ = (NIM_BOOL)0;
					T1098_ = (((*dest_2).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 7))&31U)))!=0);
					if (!(T1098_)) goto LA1099_;
					T1098_ = !((((*(*(*colonenv_).c1).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g) 0))&7U)))!=0));
					LA1099_: ;
					if (!T1098_) goto LA1100_;
					nimZeroMem((void*)(&T1102_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_209), T1102_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1096_;
				LA1100_: ;
				{
					NimStringDesc* T1106_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1107_;
					if (!((*dest_2).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*dest_2).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA1104_;
					T1106_ = NIM_NIL;
					T1106_ = rawNewString((reprEnum((NI)(*dest_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*dest_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 32);
appendString(T1106_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_210));
appendString(T1106_, reprEnum((NI)(*dest_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
					nimZeroMem((void*)(&T1107_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1106_, T1107_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1096_;
				LA1104_: ;
				{
					NI T1109_;
					NIM_BOOL T1110_;
					NimStringDesc* T1113_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1124_;
					T1109_ = (NI)0;
					T1109_ = len__ast_3155(dest_2);
					T1110_ = (NIM_BOOL)0;
					T1110_ = lteqpercent___system_985(T1109_, idx_9);
					if (!T1110_) goto LA1111_;
					T1113_ = NIM_NIL;
					{
						NI T1116_;
						T1116_ = (NI)0;
						T1116_ = len__ast_3155(dest_2);
						if (!((NI)(T1116_ - ((NI) 1)) < ((NI) 0))) goto LA1117_;
						T1113_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA1114_;
					LA1117_: ;
					{
						NimStringDesc* T1120_;
						NimStringDesc* T1121_;
						NI T1122_;
						NimStringDesc* T1123_;
						T1120_ = NIM_NIL;
						T1121_ = NIM_NIL;
						T1121_ = dollar___systemZdollars_3(idx_9);
						T1122_ = (NI)0;
						T1122_ = len__ast_3155(dest_2);
						T1123_ = NIM_NIL;
						T1123_ = dollar___systemZdollars_3((NI)(T1122_ - ((NI) 1)));
						T1120_ = rawNewString((T1121_ ? T1121_->Sup.len : 0) + (T1123_ ? T1123_->Sup.len : 0) + 19);
appendString(T1120_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T1120_, T1121_);
appendString(T1120_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T1120_, T1123_);
						T1113_ = T1120_;
					}
					LA1114_: ;
					nimZeroMem((void*)(&T1124_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1113_, T1124_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1096_;
				LA1111_: ;
				{
					asgnRef((void**) (&(*dest_2)._kind_6.sons->data[idx_9]), regs->data[rc_65].node);
				}
				LA1096_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 105):
			{
				NI rb_110;
				NI rc_66;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* u;
				rb_110 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_66 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				u = regs->data[rb_110].node;
				{
					NIM_BOOL T1129_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1133_;
					T1129_ = (NIM_BOOL)0;
					T1129_ = (((*u).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 7))&31U)))!=0);
					if (!(T1129_)) goto LA1130_;
					T1129_ = !((((*(*(*colonenv_).c1).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g) 0))&7U)))!=0));
					LA1130_: ;
					if (!T1129_) goto LA1131_;
					nimZeroMem((void*)(&T1133_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_209), T1133_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1127_;
				LA1131_: ;
				{
					NimStringDesc* T1137_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1138_;
					if (!((*u).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*u).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA1135_;
					T1137_ = NIM_NIL;
					T1137_ = rawNewString((reprEnum((NI)(*u).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*u).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 26);
appendString(T1137_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_211));
appendString(T1137_, reprEnum((NI)(*u).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
					nimZeroMem((void*)(&T1138_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1137_, T1138_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1127_;
				LA1135_: ;
				{
					add__ast_4798(u, regs->data[rc_66].node);
				}
				LA1127_: ;
				asgnRef((void**) (&regs->data[ra].node), u);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 106):
			{
				NI rb_111;
				NI rc_67;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* u_2;
				rb_111 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_67 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				x = regs->data[rc_67].node;
				u_2 = regs->data[rb_111].node;
				{
					NIM_BOOL T1143_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1147_;
					T1143_ = (NIM_BOOL)0;
					T1143_ = (((*u_2).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 7))&31U)))!=0);
					if (!(T1143_)) goto LA1144_;
					T1143_ = !((((*(*(*colonenv_).c1).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g) 0))&7U)))!=0));
					LA1144_: ;
					if (!T1143_) goto LA1145_;
					nimZeroMem((void*)(&T1147_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_209), T1147_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1141_;
				LA1145_: ;
				{
					NimStringDesc* T1151_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1152_;
					if (!((*u_2).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) && (*u_2).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA1149_;
					T1151_ = NIM_NIL;
					T1151_ = rawNewString((reprEnum((NI)(*u_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*u_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 26);
appendString(T1151_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_211));
appendString(T1151_, reprEnum((NI)(*u_2).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
					nimZeroMem((void*)(&T1152_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1151_, T1152_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1141_;
				LA1149_: ;
				{
					{
						NI i_12;
						NI colontmp__9;
						NI i_13;
						i_12 = (NI)0;
						colontmp__9 = (NI)0;
						colontmp__9 = len__ast_3155(x);
						i_13 = ((NI) 0);
						{
							while (1) {
								if (!(i_13 < colontmp__9)) goto LA1156;
								i_12 = i_13;
								add__ast_4798(u_2, (*x)._kind_6.sons->data[i_12]);
								i_13 += ((NI) 1);
							} LA1156: ;
						}
					}
				}
				LA1141_: ;
				asgnRef((void**) (&regs->data[ra].node), u_2);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 107):
			{
				NI rb_112;
				rb_112 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = ((NI64) ((*regs->data[rb_112].node).kind));
				(*(*colonenv_).c1).comesFromHeuristic = (*regs->data[rb_112].node).info;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 108):
			{
				NI rb_113;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_8;
				rb_113 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				a_8 = regs->data[rb_113].node;
				{
					if (!((*a_8).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA1161_;
					regs->data[ra].intVal = ((NI64) ((*(*a_8)._kind_4.sym).kind));
				}
				goto LA1159_;
				LA1161_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1164_;
					nimZeroMem((void*)(&T1164_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_183), T1164_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1159_: ;
				(*(*colonenv_).c1).comesFromHeuristic = (*regs->data[rb_113].node).info;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 109):
			{
				NI rb_114;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_9;
				rb_114 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				a_9 = regs->data[rb_114].node;
				{
					if (!((*a_9).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5) && (*a_9).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15))) goto LA1168_;
					regs->data[ra].intVal = (*a_9)._kind_1.intVal;
				}
				goto LA1166_;
				LA1168_: ;
				{
					NIM_BOOL T1171_;
					T1171_ = (NIM_BOOL)0;
					T1171_ = ((*a_9).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					if (!(T1171_)) goto LA1172_;
					T1171_ = ((*(*a_9)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 20));
					LA1172_: ;
					if (!T1171_) goto LA1173_;
					regs->data[ra].intVal = ((NI64) ((*(*a_9)._kind_4.sym).position));
				}
				goto LA1166_;
				LA1173_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1176_;
					nimZeroMem((void*)(&T1176_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_212), T1176_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1166_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 110):
			{
				NI rb_115;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_10;
				rb_115 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 3));
				a_10 = regs->data[rb_115].node;
				switch ((*a_10).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 18):
				{
					regs->data[ra].floatVal = (*a_10)._kind_2.floatVal;
				}
				break;
				default:
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1180_;
					nimZeroMem((void*)(&T1180_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_213), T1180_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 111):
			{
				NI rb_116;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_11;
				rb_116 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_11 = regs->data[rb_116].node;
				{
					if (!((*a_11).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA1184_;
					asgnRef((void**) (&regs->data[ra].node), copyNode__ast_4324(a_11));
				}
				goto LA1182_;
				LA1184_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1187_;
					nimZeroMem((void*)(&T1187_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_214), T1187_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1182_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 112):
			{
				NI rb_117;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_12;
				rb_117 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_12 = regs->data[rb_117].node;
				{
					if (!((*a_12).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2))) goto LA1191_;
					asgnRef((void**) (&regs->data[ra].node), copyNode__ast_4324(a_12));
				}
				goto LA1189_;
				LA1191_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1194_;
					nimZeroMem((void*)(&T1194_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_215), T1194_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1189_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 139):
			{
				NI rb_118;
				rb_118 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				regs->data[ra].intVal = IL64(-1);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 113):
			{
				NI rb_119;
				NI rc_68;
				rb_119 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_68 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				switch (rc_68) {
				case ((NI) 0):
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					{
						NIM_BOOL T1200_;
						T1200_ = (NIM_BOOL)0;
						T1200_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1200_)) goto LA1201_;
						T1200_ = !(((*regs->data[rb_119].node).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1201_: ;
						if (!T1200_) goto LA1202_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeToAst__vmdeps_594((*(*colonenv_).c1).cache, (*regs->data[rb_119].node).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1198_;
					LA1202_: ;
					{
						NIM_BOOL T1205_;
						NIM_BOOL T1206_;
						T1205_ = (NIM_BOOL)0;
						T1206_ = (NIM_BOOL)0;
						T1206_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1206_)) goto LA1207_;
						T1206_ = ((*regs->data[rb_119].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
						LA1207_: ;
						T1205_ = T1206_;
						if (!(T1205_)) goto LA1208_;
						T1205_ = !(((*(*regs->data[rb_119].node)._kind_4.sym).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1208_: ;
						if (!T1205_) goto LA1209_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeToAst__vmdeps_594((*(*colonenv_).c1).cache, (*(*regs->data[rb_119].node)._kind_4.sym).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1198_;
					LA1209_: ;
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1212_;
						nimZeroMem((void*)(&T1212_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_216), T1212_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA1198_: ;
				}
				break;
				case ((NI) 1):
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
					{
						NIM_BOOL T1216_;
						T1216_ = (NIM_BOOL)0;
						T1216_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1216_)) goto LA1217_;
						T1216_ = !(((*regs->data[rb_119].node).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1217_: ;
						if (!T1216_) goto LA1218_;
						regs->data[ra].intVal = ((NI64) ((*(*regs->data[rb_119].node).typ).kind));
					}
					goto LA1214_;
					LA1218_: ;
					{
						NIM_BOOL T1221_;
						NIM_BOOL T1222_;
						T1221_ = (NIM_BOOL)0;
						T1222_ = (NIM_BOOL)0;
						T1222_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1222_)) goto LA1223_;
						T1222_ = ((*regs->data[rb_119].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
						LA1223_: ;
						T1221_ = T1222_;
						if (!(T1221_)) goto LA1224_;
						T1221_ = !(((*(*regs->data[rb_119].node)._kind_4.sym).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1224_: ;
						if (!T1221_) goto LA1225_;
						regs->data[ra].intVal = ((NI64) ((*(*(*regs->data[rb_119].node)._kind_4.sym).typ).kind));
					}
					goto LA1214_;
					LA1225_: ;
					LA1214_: ;
				}
				break;
				case ((NI) 2):
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					{
						NIM_BOOL T1230_;
						T1230_ = (NIM_BOOL)0;
						T1230_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1230_)) goto LA1231_;
						T1230_ = !(((*regs->data[rb_119].node).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1231_: ;
						if (!T1230_) goto LA1232_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeInstToAst__vmdeps_600((*(*colonenv_).c1).cache, (*regs->data[rb_119].node).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1228_;
					LA1232_: ;
					{
						NIM_BOOL T1235_;
						NIM_BOOL T1236_;
						T1235_ = (NIM_BOOL)0;
						T1236_ = (NIM_BOOL)0;
						T1236_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1236_)) goto LA1237_;
						T1236_ = ((*regs->data[rb_119].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
						LA1237_: ;
						T1235_ = T1236_;
						if (!(T1235_)) goto LA1238_;
						T1235_ = !(((*(*regs->data[rb_119].node)._kind_4.sym).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1238_: ;
						if (!T1235_) goto LA1239_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeInstToAst__vmdeps_600((*(*colonenv_).c1).cache, (*(*regs->data[rb_119].node)._kind_4.sym).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1228_;
					LA1239_: ;
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1242_;
						nimZeroMem((void*)(&T1242_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_216), T1242_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA1228_: ;
				}
				break;
				default:
				{
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					{
						NIM_BOOL T1246_;
						T1246_ = (NIM_BOOL)0;
						T1246_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1246_)) goto LA1247_;
						T1246_ = !(((*regs->data[rb_119].node).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1247_: ;
						if (!T1246_) goto LA1248_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeImplToAst__vmdeps_606((*(*colonenv_).c1).cache, (*regs->data[rb_119].node).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1244_;
					LA1248_: ;
					{
						NIM_BOOL T1251_;
						NIM_BOOL T1252_;
						T1251_ = (NIM_BOOL)0;
						T1252_ = (NIM_BOOL)0;
						T1252_ = (regs->data[rb_119].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
						if (!(T1252_)) goto LA1253_;
						T1252_ = ((*regs->data[rb_119].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
						LA1253_: ;
						T1251_ = T1252_;
						if (!(T1251_)) goto LA1254_;
						T1251_ = !(((*(*regs->data[rb_119].node)._kind_4.sym).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
						LA1254_: ;
						if (!T1251_) goto LA1255_;
						asgnRef((void**) (&regs->data[ra].node), opMapTypeImplToAst__vmdeps_606((*(*colonenv_).c1).cache, (*(*regs->data[rb_119].node)._kind_4.sym).typ, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).Sup.idgen));
					}
					goto LA1244_;
					LA1255_: ;
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1258_;
						nimZeroMem((void*)(&T1258_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_216), T1258_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA1244_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 116):
			{
				NI rb_120;
				NI imm_8;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_5;
				rb_120 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_8 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				n_5 = regs->data[rb_120].node;
				switch (imm_8) {
				case ((NI) 0):
				{
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1265_;
						if (!((*n_5).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL))) goto LA1263_;
						nimZeroMem((void*)(&T1265_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_216), T1265_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					goto LA1261_;
					LA1263_: ;
					{
						regs->data[ra].intVal = getSize__types_3388((*(*colonenv_).c1).config, (*n_5).typ);
					}
					LA1261_: ;
				}
				break;
				case ((NI) 1):
				{
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1272_;
						if (!((*n_5).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL))) goto LA1270_;
						nimZeroMem((void*)(&T1272_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_216), T1272_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					goto LA1268_;
					LA1270_: ;
					{
						regs->data[ra].intVal = getAlign__types_3384((*(*colonenv_).c1).config, (*n_5).typ);
					}
					LA1268_: ;
				}
				break;
				default:
				{
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1279_;
						if (!!(((*n_5).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3)))) goto LA1277_;
						nimZeroMem((void*)(&T1279_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_183), T1279_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					goto LA1275_;
					LA1277_: ;
					{
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1283_;
						if (!!(((*(*n_5)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 19)))) goto LA1281_;
						nimZeroMem((void*)(&T1283_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_217), T1283_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					goto LA1275_;
					LA1281_: ;
					{
						regs->data[ra].intVal = ((NI64) ((*(*n_5)._kind_4.sym).offset));
					}
					LA1275_: ;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 114):
			{
				NI rb_121;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_13;
				rb_121 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				a_13 = regs->data[rb_121].node;
				switch ((*a_13).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
				{
					NimStringDesc* T1287_;
					T1287_ = NIM_NIL;
					T1287_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*a_13)._kind_3.strVal);
					if (T1287_) nimGCunrefNoCycle(T1287_);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 125):
				{
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), comment__ast_997(a_13));
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
				{
					NimStringDesc* T1290_;
					T1290_ = NIM_NIL;
					T1290_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*(*a_13)._kind_5.ident).s);
					if (T1290_) nimGCunrefNoCycle(T1290_);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
				{
					NimStringDesc* T1292_;
					T1292_ = NIM_NIL;
					T1292_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*(*(*a_13)._kind_4.sym).name).s);
					if (T1292_) nimGCunrefNoCycle(T1292_);
				}
				break;
				default:
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1294_;
					nimZeroMem((void*)(&T1294_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_218), T1294_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				break;
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 115):
			{
				NI rb_122;
				rb_122 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1300_;
					if (!!(((*regs->data[rb_122].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3)))) goto LA1298_;
					nimZeroMem((void*)(&T1300_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_183), T1300_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1296_;
				LA1298_: ;
				{
					tyArray__qtqsWM5aXmcpMIVmvq3kAA T1302_;
					nimZeroMem((void*)T1302_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
					sigHash__sighashes_535((*regs->data[rb_122].node)._kind_4.sym, (*(*colonenv_).c1).config, T1302_);
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), dollar___modulegraphs_8985(T1302_));
				}
				LA1296_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 140):
			{
				NI rb_123;
				rb_123 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), opSlurp__vmdeps_9((*regs->data[rb_123].node)._kind_3.strVal, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).module, (*(*colonenv_).c1).config));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 141):
			{
				NI rb_124;
				NI rc_69;
				NI rd_3;
				rb_124 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_69 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*colonenv_).pc3 += ((NI) 1);
				rd_3 = ((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(8ULL)) & 65535ULL)));
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				{
					NIM_BOOL T1307_;
					T1307_ = (NIM_BOOL)0;
					T1307_ = NIM_FALSE;
					if (T1307_) goto LA1308_;
					T1307_ = ((*(*(*colonenv_).c1).config).cmd == ((tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg) 8));
					LA1308_: ;
					if (!T1307_) goto LA1309_;
					asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), ((NimStringDesc*) NIM_NIL));
				}
				goto LA1305_;
				LA1309_: ;
				{
					tyTuple__XOVT24GHXwqiEj5GCsEGCA T1312_;
					NimStringDesc* T1313_;
					nimZeroMem((void*)(&T1312_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
					opGorge__gorgeimpl_13((*regs->data[rb_124].node)._kind_3.strVal, (*regs->data[rc_69].node)._kind_3.strVal, (*regs->data[rd_3].node)._kind_3.strVal, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], (*(*colonenv_).c1).config, (&T1312_));
					T1313_ = NIM_NIL;
					T1313_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1(T1312_.Field0);
					if (T1313_) nimGCunrefNoCycle(T1313_);
				}
				LA1305_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 145):
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 146):
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 147):
			{
				NI rb_125;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a_14;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b_6;
				tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info_2;
				rb_125 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				a_14 = regs->data[ra].node;
				b_6 = regs->data[rb_125].node;
				{
					if (!((*b_6).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA1317_;
					info_2 = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
				}
				goto LA1315_;
				LA1317_: ;
				{
					info_2 = (*b_6).info;
				}
				LA1315_: ;
				{
					if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 145))) goto LA1322_;
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, (*a_14)._kind_3.strVal, info_2, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1320_;
				LA1322_: ;
				{
					if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 146))) goto LA1325_;
					liMessage__msgs_1128((*(*colonenv_).c1).config, info_2, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 71), (*a_14)._kind_3.strVal, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 0), TM__sQJeTKtOMm7ArbnaG0SDbQ_219, NIM_FALSE);
				}
				goto LA1320_;
				LA1325_: ;
				{
					if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)(instr) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 147))) goto LA1328_;
					liMessage__msgs_1128((*(*colonenv_).c1).config, info_2, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 102), (*a_14)._kind_3.strVal, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 0), TM__sQJeTKtOMm7ArbnaG0SDbQ_220, NIM_FALSE);
				}
				goto LA1320_;
				LA1328_: ;
				LA1320_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 142):
			{
				NI rb_126;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* ast_2;
				NimStringDesc* T1331_;
				tyProc__9aGJhSmkuel6SMfp4pTpyXA T1332_;
				rb_126 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&(*colonenv_).error4), NIM_NIL);
				T1331_ = NIM_NIL;
				T1331_ = toFullPath__msgs_548((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3].fileIndex);
				nimZeroMem((void*)(&T1332_), sizeof(tyProc__9aGJhSmkuel6SMfp4pTpyXA));
				T1332_.ClP_0 = colonanonymous___vm_3821; T1332_.ClE_0 = colonenv_;
				ast_2 = parseString__parser_2556((*regs->data[rb_126].node)._kind_3.strVal, (*(*colonenv_).c1).cache, (*(*colonenv_).c1).config, T1331_, ((NI) ((*(*colonenv_).c1).debug->data[(*colonenv_).pc3].line)), T1332_);
				{
					NimStringDesc* T1337_;
					if (!(((NI) 0) < ((*colonenv_).error4 ? (*colonenv_).error4->Sup.len : 0))) goto LA1335_;
					T1337_ = NIM_NIL;
					T1337_ = (*(*colonenv_).c1).errorFlag; (*(*colonenv_).c1).errorFlag = copyStringRC1((*colonenv_).error4);
					if (T1337_) nimGCunrefNoCycle(T1337_);
				}
				goto LA1333_;
				LA1335_: ;
				{
					NI T1339_;
					T1339_ = (NI)0;
					T1339_ = len__ast_3155(ast_2);
					if (!!((T1339_ == ((NI) 1)))) goto LA1340_;
					asgnRef((void**) (&(*(*colonenv_).c1).errorFlag), formatMsg__msgs_1121((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_221)));
				}
				goto LA1333_;
				LA1340_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), (*ast_2)._kind_6.sons->data[((NI) 0)]);
				}
				LA1333_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 143):
			{
				NI rb_127;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* ast_3;
				NimStringDesc* T1344_;
				tyProc__9aGJhSmkuel6SMfp4pTpyXA T1345_;
				rb_127 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&(*colonenv_).error5), NIM_NIL);
				T1344_ = NIM_NIL;
				T1344_ = toFullPath__msgs_548((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3].fileIndex);
				nimZeroMem((void*)(&T1345_), sizeof(tyProc__9aGJhSmkuel6SMfp4pTpyXA));
				T1345_.ClP_0 = colonanonymous___vm_3841; T1345_.ClE_0 = colonenv_;
				ast_3 = parseString__parser_2556((*regs->data[rb_127].node)._kind_3.strVal, (*(*colonenv_).c1).cache, (*(*colonenv_).c1).config, T1344_, ((NI) ((*(*colonenv_).c1).debug->data[(*colonenv_).pc3].line)), T1345_);
				{
					NimStringDesc* T1350_;
					if (!(((NI) 0) < ((*colonenv_).error5 ? (*colonenv_).error5->Sup.len : 0))) goto LA1348_;
					T1350_ = NIM_NIL;
					T1350_ = (*(*colonenv_).c1).errorFlag; (*(*colonenv_).c1).errorFlag = copyStringRC1((*colonenv_).error5);
					if (T1350_) nimGCunrefNoCycle(T1350_);
				}
				goto LA1346_;
				LA1348_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), ast_3);
				}
				LA1346_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 144):
			{
				NimStringDesc* T1353_;
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				T1353_ = NIM_NIL;
				T1353_ = (*regs->data[ra].node)._kind_3.strVal; (*regs->data[ra].node)._kind_3.strVal = copyStringRC1((*(*colonenv_).c1).errorFlag);
				if (T1353_) nimGCunrefNoCycle(T1353_);
				asgnRef((void**) (&(*(*colonenv_).c1).errorFlag), setLengthStr((*(*colonenv_).c1).errorFlag, ((NI) 0)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 163):
			{
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					if (!!(((*(*colonenv_).c1).callsite == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL)))) goto LA1357_;
					asgnRef((void**) (&regs->data[ra].node), (*(*colonenv_).c1).callsite);
				}
				goto LA1355_;
				LA1357_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1360_;
					nimZeroMem((void*)(&T1360_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_222), T1360_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1355_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 148):
			{
				NI rb_128;
				NI imm_9;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_6;
				rb_128 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				imm_9 = (NI)(((NI) (((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL))))) - ((NI) 128));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				n_6 = regs->data[rb_128].node;
				switch (imm_9) {
				case ((NI) 0):
				{
					NimStringDesc* T1363_;
					T1363_ = NIM_NIL;
					T1363_ = toFullPath__msgs_548((*(*colonenv_).c1).config, (*n_6).info.fileIndex);
					asgnRef((void**) (&regs->data[ra].node), newStrNode__ast_3801(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20), T1363_));
				}
				break;
				case ((NI) 1):
				{
					asgnRef((void**) (&regs->data[ra].node), newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), ((NI64) (((NI) ((*n_6).info.line))))));
				}
				break;
				case ((NI) 2):
				{
					asgnRef((void**) (&regs->data[ra].node), newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), ((NI64) (((NI) ((*n_6).info.col))))));
				}
				break;
				default:
				{
					{
						NimStringDesc* argX60gensym966_;
						if (!NIM_TRUE) goto LA1369_;
						argX60gensym966_ = toFileLineCol__msgs_625(TM__sQJeTKtOMm7ArbnaG0SDbQ_225);
						internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, unknownLineInfo__lineinfos_284, argX60gensym966_, TM__sQJeTKtOMm7ArbnaG0SDbQ_225);
					}
					LA1369_: ;
				}
				break;
				}
				(*regs->data[ra].node).info = (*n_6).info;
				asgnRef((void**) (&(*regs->data[ra].node).typ), (*n_6).typ);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 149):
			{
				NI rb_129;
				rb_129 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*regs->data[ra].node).info = (*regs->data[rb_129].node).info;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 150):
			{
				NI rb_130;
				rb_130 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*regs->data[ra].node).info.line = ((NU16) (regs->data[rb_130].intVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 151):
			{
				NI rb_131;
				rb_131 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*regs->data[ra].node).info.col = ((NI16) (regs->data[rb_131].intVal));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 152):
			{
				NI rb_132;
				rb_132 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*regs->data[ra].node).info.fileIndex = fileInfoIdx__msgs_386((*(*colonenv_).c1).config, (*regs->data[rb_132].node)._kind_3.strVal);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 153):
			{
				NI rb_133;
				NI rc_70;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* aNode;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* bNode;
				NCSTRING aStrVal;
				NCSTRING bStrVal;
				NI T1402_;
				rb_133 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_70 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				aNode = regs->data[rb_133].node;
				bNode = regs->data[rc_70].node;
				{
					if (!((*aNode).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 31))) goto LA1378_;
					aNode = (*aNode)._kind_6.sons->data[((NI) 1)];
				}
				LA1378_: ;
				{
					if (!((*aNode).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 53))) goto LA1382_;
					aNode = (*aNode)._kind_6.sons->data[((NI) 0)];
				}
				LA1382_: ;
				{
					if (!((*bNode).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 31))) goto LA1386_;
					bNode = (*bNode)._kind_6.sons->data[((NI) 1)];
				}
				LA1386_: ;
				{
					if (!((*bNode).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 53))) goto LA1390_;
					bNode = (*bNode)._kind_6.sons->data[((NI) 0)];
				}
				LA1390_: ;
				aStrVal = ((NCSTRING) NIM_NIL);
				bStrVal = ((NCSTRING) NIM_NIL);
				switch ((*aNode).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
				{
					aStrVal = nimToCStringConv((*aNode)._kind_3.strVal);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
				{
					aStrVal = nimToCStringConv((*(*aNode)._kind_5.ident).s);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
				{
					aStrVal = nimToCStringConv((*(*(*aNode)._kind_4.sym).name).s);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
				{
					aStrVal = nimToCStringConv((*(*(*(*aNode)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
				}
				break;
				default:
				{
				}
				break;
				}
				switch ((*bNode).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
				{
					bStrVal = nimToCStringConv((*bNode)._kind_3.strVal);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
				{
					bStrVal = nimToCStringConv((*(*bNode)._kind_5.ident).s);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
				{
					bStrVal = nimToCStringConv((*(*(*bNode)._kind_4.sym).name).s);
				}
				break;
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
				{
					bStrVal = nimToCStringConv((*(*(*(*bNode)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
				}
				break;
				default:
				{
				}
				break;
				}
				T1402_ = (NI)0;
				{
					NIM_BOOL T1405_;
					NIM_BOOL T1406_;
					NIM_BOOL T1408_;
					NI T1411_;
					T1405_ = (NIM_BOOL)0;
					T1406_ = (NIM_BOOL)0;
					T1406_ = eqeq___system_7754(aStrVal, ((NCSTRING) NIM_NIL));
					T1405_ = !(T1406_);
					if (!(T1405_)) goto LA1407_;
					T1408_ = (NIM_BOOL)0;
					T1408_ = eqeq___system_7754(bStrVal, ((NCSTRING) NIM_NIL));
					T1405_ = !(T1408_);
					LA1407_: ;
					if (!T1405_) goto LA1409_;
					T1411_ = (NI)0;
					T1411_ = cmpIgnoreStyle__idents_17(aStrVal, bStrVal, ((NI) IL64(9223372036854775807)));
					T1402_ = (T1411_ == ((NI) 0));
				}
				goto LA1403_;
				LA1409_: ;
				{
					T1402_ = ((NI) 0);
				}
				LA1403_: ;
				regs->data[ra].intVal = ((NI64) (T1402_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 154):
			{
				NI rb_134;
				rb_134 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1418_;
					if (!!(((*regs->data[rb_134].node).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) && (*regs->data[rb_134].node).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22)))) goto LA1416_;
					nimZeroMem((void*)(&T1418_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_218), T1418_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1414_;
				LA1416_: ;
				{
					asgnRef((void**) (&regs->data[ra].node), newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2), (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]));
					asgnRef((void**) (&(*regs->data[ra].node)._kind_5.ident), getIdent__idents_152((*(*colonenv_).c1).cache, (*regs->data[rb_134].node)._kind_3.strVal));
					(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
				}
				LA1414_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 187):
			{
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_9;
				typ_9 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* temp;
					if (!!((regs->data[ra].kind == ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1)))) goto LA1423_;
					temp = regToNode__vm_532(regs->data[ra]);
					ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
					asgnRef((void**) (&regs->data[ra].node), temp);
					(*regs->data[ra].node).info = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
				}
				LA1423_: ;
				asgnRef((void**) (&(*regs->data[ra].node).typ), typ_9);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 94):
			{
				NI rb_135;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* desttyp;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* srctyp;
				rb_135 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				(*colonenv_).pc3 += ((NI) 1);
				desttyp = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				(*colonenv_).pc3 += ((NI) 1);
				srctyp = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				{
					NIM_BOOL T1428_;
					tyArray__Re75IspeoxXy2oCZHwcRrA T1431_;
					NimStringDesc* T1432_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1433_;
					T1428_ = (NIM_BOOL)0;
					T1428_ = opConv__vm_706((*colonenv_).c1, (&regs->data[ra]), regs->data[rb_135], desttyp, srctyp);
					if (!T1428_) goto LA1429_;
					nimZeroMem((void*)T1431_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
					T1431_[0] = typeToString__types_50(srctyp, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
					T1431_[1] = typeToString__types_50(desttyp, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 0));
					T1432_ = NIM_NIL;
					T1432_ = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_185), T1431_, 2);
					nimZeroMem((void*)(&T1433_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1432_, T1433_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1429_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 95):
			{
				NI rb_136;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* desttyp_2;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* srctyp_2;
				rb_136 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				(*colonenv_).pc3 += ((NI) 1);
				desttyp_2 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				(*colonenv_).pc3 += ((NI) 1);
				srctyp_2 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				liMessage__msgs_1128((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_237), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_238, NIM_FALSE);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 117):
			{
				NI rb_137;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_3;
				rb_137 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				dest_3 = regs->data[ra].node;
				{
					NIM_BOOL T1438_;
					T1438_ = (NIM_BOOL)0;
					T1438_ = ((*dest_3).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5) && (*dest_3).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15));
					if (!(T1438_)) goto LA1439_;
					T1438_ = ((4 &((NU8)1<<((NU)(regs->data[rb_137].kind)&7U)))!=0);
					LA1439_: ;
					if (!T1438_) goto LA1440_;
					(*dest_3)._kind_1.intVal = regs->data[rb_137].intVal;
				}
				goto LA1436_;
				LA1440_: ;
				{
					NIM_BOOL T1443_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1447_;
					T1443_ = (NIM_BOOL)0;
					T1443_ = ((*dest_3).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					if (!(T1443_)) goto LA1444_;
					T1443_ = ((*(*dest_3)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 20));
					LA1444_: ;
					if (!T1443_) goto LA1445_;
					nimZeroMem((void*)(&T1447_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_239), T1447_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				goto LA1436_;
				LA1445_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1449_;
					nimZeroMem((void*)(&T1449_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_212), T1449_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1436_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 118):
			{
				NI rb_138;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_4;
				rb_138 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				dest_4 = regs->data[ra].node;
				{
					NIM_BOOL T1453_;
					T1453_ = (NIM_BOOL)0;
					T1453_ = ((*dest_4).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16) && (*dest_4).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 18));
					if (!(T1453_)) goto LA1454_;
					T1453_ = ((8 &((NU8)1<<((NU)(regs->data[rb_138].kind)&7U)))!=0);
					LA1454_: ;
					if (!T1453_) goto LA1455_;
					(*dest_4)._kind_2.floatVal = regs->data[rb_138].floatVal;
				}
				goto LA1451_;
				LA1455_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1458_;
					nimZeroMem((void*)(&T1458_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_213), T1458_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1451_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 119):
			{
				NI rb_139;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_5;
				rb_139 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				dest_5 = regs->data[ra].node;
				{
					NIM_BOOL T1462_;
					T1462_ = (NIM_BOOL)0;
					T1462_ = ((*dest_5).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					if (!(T1462_)) goto LA1463_;
					T1462_ = ((*regs->data[rb_139].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					LA1463_: ;
					if (!T1462_) goto LA1464_;
					asgnRef((void**) (&(*dest_5)._kind_4.sym), (*regs->data[rb_139].node)._kind_4.sym);
				}
				goto LA1460_;
				LA1464_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1467_;
					nimZeroMem((void*)(&T1467_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_214), T1467_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1460_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 120):
			{
				NI rb_140;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_6;
				rb_140 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				dest_6 = regs->data[ra].node;
				{
					NIM_BOOL T1471_;
					T1471_ = (NIM_BOOL)0;
					T1471_ = ((*dest_6).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
					if (!(T1471_)) goto LA1472_;
					T1471_ = ((*regs->data[rb_140].node).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
					LA1472_: ;
					if (!T1471_) goto LA1473_;
					asgnRef((void**) (&(*dest_6)._kind_5.ident), (*regs->data[rb_140].node)._kind_5.ident);
				}
				goto LA1469_;
				LA1473_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1476_;
					nimZeroMem((void*)(&T1476_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_215), T1476_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1469_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 121):
			{
				NI rb_141;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b_7;
				rb_141 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				b_7 = regs->data[rb_141].node;
				{
					NIM_BOOL T1480_;
					NimStringDesc* argX60gensym1033_;
					T1480_ = (NIM_BOOL)0;
					T1480_ = ((*b_7).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
					if (!(T1480_)) goto LA1481_;
					T1480_ = ((*(*b_7)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 7));
					LA1481_: ;
					if (!!(T1480_)) goto LA1482_;
					argX60gensym1033_ = toFileLineCol__msgs_625(TM__sQJeTKtOMm7ArbnaG0SDbQ_240);
					internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, unknownLineInfo__lineinfos_284, argX60gensym1033_, TM__sQJeTKtOMm7ArbnaG0SDbQ_240);
				}
				LA1482_: ;
				{
					NimStringDesc* argX60gensym1036_;
					if (!!(!((regs->data[ra].node == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL))))) goto LA1486_;
					argX60gensym1036_ = toFileLineCol__msgs_625(TM__sQJeTKtOMm7ArbnaG0SDbQ_241);
					internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, unknownLineInfo__lineinfos_284, argX60gensym1036_, TM__sQJeTKtOMm7ArbnaG0SDbQ_241);
				}
				LA1486_: ;
				asgnRef((void**) (&(*regs->data[ra].node).typ), (*(*b_7)._kind_4.sym).typ);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 122):
			{
				NI rb_142;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* dest_7;
				rb_142 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				dest_7 = regs->data[ra].node;
				{
					NIM_BOOL T1491_;
					NimStringDesc* T1495_;
					T1491_ = (NIM_BOOL)0;
					T1491_ = ((*dest_7).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20) && (*dest_7).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22));
					if (!(T1491_)) goto LA1492_;
					T1491_ = ((2 &((NU8)1<<((NU)(regs->data[rb_142].kind)&7U)))!=0);
					LA1492_: ;
					if (!T1491_) goto LA1493_;
					T1495_ = NIM_NIL;
					T1495_ = (*dest_7)._kind_3.strVal; (*dest_7)._kind_3.strVal = copyStringRC1((*regs->data[rb_142].node)._kind_3.strVal);
					if (T1495_) nimGCunrefNoCycle(T1495_);
				}
				goto LA1489_;
				LA1493_: ;
				{
					NIM_BOOL T1497_;
					T1497_ = (NIM_BOOL)0;
					T1497_ = ((*dest_7).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 125));
					if (!(T1497_)) goto LA1498_;
					T1497_ = ((2 &((NU8)1<<((NU)(regs->data[rb_142].kind)&7U)))!=0);
					LA1498_: ;
					if (!T1497_) goto LA1499_;
					commenteq___ast_1365(dest_7, (*regs->data[rb_142].node)._kind_3.strVal);
				}
				goto LA1489_;
				LA1499_: ;
				{
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1502_;
					nimZeroMem((void*)(&T1502_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_218), T1502_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1489_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 123):
			{
				NI rb_143;
				NI rc_71;
				NI64 k;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* cc;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x_2;
				tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1510_;
				rb_143 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_71 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				k = regs->data[rb_143].intVal;
				{
					NIM_BOOL T1506_;
					T1506_ = (NIM_BOOL)0;
					T1506_ = (k < IL64(0));
					if (T1506_) goto LA1507_;
					T1506_ = (IL64(164) < k);
					LA1507_: ;
					if (!T1506_) goto LA1508_;
					internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_242), TM__sQJeTKtOMm7ArbnaG0SDbQ_243);
				}
				LA1508_: ;
				cc = regs->data[rc_71].node;
				{
					if (!!(((*cc).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23)))) goto LA1513_;
					T1510_ = (*cc).info;
				}
				goto LA1511_;
				LA1513_: ;
				{
					if (!!(((*(*colonenv_).c1).comesFromHeuristic.line == ((NU16) 0)))) goto LA1516_;
					T1510_ = (*(*colonenv_).c1).comesFromHeuristic;
				}
				goto LA1511_;
				LA1516_: ;
				{
					NIM_BOOL T1519_;
					NI T1521_;
					T1519_ = (NIM_BOOL)0;
					T1519_ = !(((*(*colonenv_).c1).callsite == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL)));
					if (!(T1519_)) goto LA1520_;
					T1521_ = (NI)0;
					T1521_ = safeLen__ast_3148((*(*colonenv_).c1).callsite);
					T1519_ = (((NI) 1) < T1521_);
					LA1520_: ;
					if (!T1519_) goto LA1522_;
					T1510_ = (*(*(*(*colonenv_).c1).callsite)._kind_6.sons->data[((NI) 1)]).info;
				}
				goto LA1511_;
				LA1522_: ;
				{
					T1510_ = (*(*colonenv_).c1).debug->data[(*colonenv_).pc3];
				}
				LA1511_: ;
				x_2 = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) (((NI) (k)))), T1510_);
				(*x_2).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
				{
					if (!((*x_2).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2))) goto LA1527_;
					asgnRef((void**) (&(*x_2)._kind_5.ident), (*(*(*colonenv_).c1).cache).emptyIdent);
				}
				LA1527_: ;
				asgnRef((void**) (&regs->data[ra].node), x_2);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 124):
			{
				NI rb_144;
				rb_144 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), copyNode__ast_4324(regs->data[rb_144].node));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 125):
			{
				NI rb_145;
				rb_145 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				asgnRef((void**) (&regs->data[ra].node), copyTree__ast_4432(regs->data[rb_145].node));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 126):
			{
				NI rb_146;
				NI rc_72;
				NI bb_2;
				rb_146 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_72 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				bb_2 = ((NI) (regs->data[rb_146].intVal));
				{
					NI i_14;
					NI colontmp__10;
					NI i_15;
					i_14 = (NI)0;
					colontmp__10 = (NI)0;
					colontmp__10 = ((NI) (regs->data[rc_72].intVal));
					i_15 = ((NI) 0);
					{
						while (1) {
							if (!(i_15 < colontmp__10)) goto LA1534;
							i_14 = i_15;
							delSon__ast_4301(regs->data[ra].node, bb_2);
							i_15 += ((NI) 1);
						} LA1534: ;
					}
				}
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 127):
			{
				NI rb_147;
				NI rc_73;
				NI64 k_2;
				NimStringDesc* name;
				tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
				tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* T1547_;
				tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg T1548_;
				rb_147 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_73 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				k_2 = regs->data[rb_147].intVal;
				{
					if (!(((*regs->data[rc_73].node)._kind_3.strVal ? (*regs->data[rc_73].node)._kind_3.strVal->Sup.len : 0) == ((NI) 0))) goto LA1538_;
					name = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_244));
				}
				goto LA1536_;
				LA1538_: ;
				{
					name = (*regs->data[rc_73].node)._kind_3.strVal;
				}
				LA1536_: ;
				{
					NIM_BOOL T1543_;
					T1543_ = (NIM_BOOL)0;
					T1543_ = (k_2 < IL64(0));
					if (T1543_) goto LA1544_;
					T1543_ = (IL64(25) < k_2);
					LA1544_: ;
					if (!T1543_) goto LA1545_;
					internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_245), TM__sQJeTKtOMm7ArbnaG0SDbQ_246);
				}
				LA1545_: ;
				T1547_ = NIM_NIL;
				T1547_ = getIdent__idents_152((*(*colonenv_).c1).cache, name);
				T1548_ = nextSymId__ast_3103((*(*colonenv_).c1).Sup.idgen);
				sym = newSym__ast_3409(((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) (k_2)), T1547_, T1548_, (*(*(*colonenv_).c1).module).owner, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], 0);
				(*sym).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 37)) & 63);
				asgnRef((void**) (&regs->data[ra].node), newSymNode__ast_3704(sym));
				(*regs->data[ra].node).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 13)) & 31);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 128):
			{
				NI rb_148;
				NimStringDesc* destKey;
				rb_148 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				destKey = (*regs->data[rb_148].node)._kind_3.strVal;
				regs->data[ra].intVal = getOrDefault__vm_4290((*(*(*colonenv_).c1).graph).cacheCounters, destKey);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 129):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g;
				NI rb_149;
				NI rc_74;
				NimStringDesc* destKey_2;
				NI64 by;
				NI64 v;
				g = (*(*colonenv_).c1).graph;
				rb_149 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_74 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_2 = (*regs->data[rb_149].node)._kind_3.strVal;
				by = regs->data[rc_74].intVal;
				v = getOrDefault__vm_4290((*g).cacheCounters, destKey_2);
				X5BX5Deq___vm_4732((&(*g).cacheCounters), destKey_2, (NI64)(v + by));
				recordInc__macrocacheimpl_20((*colonenv_).c1, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], destKey_2, by);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 130):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_2;
				NI rb_150;
				NI rc_75;
				NimStringDesc* destKey_3;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val_2;
				g_2 = (*(*colonenv_).c1).graph;
				rb_150 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_75 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_3 = (*regs->data[rb_150].node)._kind_3.strVal;
				val_2 = regs->data[rc_75].node;
				{
					NIM_BOOL T1554_;
					tyArray__iegsN9bf6GqRiWprrJjTAoA T1557_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1558_;
					T1554_ = (NIM_BOOL)0;
					T1554_ = contains__vm_5915((*g_2).cacheSeqs, destKey_3);
					if (!!(T1554_)) goto LA1555_;
					nimZeroMem((void*)T1557_, sizeof(tyArray__iegsN9bf6GqRiWprrJjTAoA));
					T1557_[0] = val_2;
					T1558_ = NIM_NIL;
					T1558_ = newTree__ast_3356(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115), T1557_, 1);
					X5BX5Deq___vm_6210((&(*g_2).cacheSeqs), destKey_3, T1558_);
				}
				goto LA1552_;
				LA1555_: ;
				{
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1560_;
					T1560_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
					T1560_ = X5BX5D___vm_7379((&(*g_2).cacheSeqs), destKey_3);
					add__ast_4798((*T1560_), val_2);
				}
				LA1552_: ;
				recordAdd__macrocacheimpl_61((*colonenv_).c1, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], destKey_3, val_2);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 131):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_3;
				NI rb_151;
				NI rc_76;
				NimStringDesc* destKey_4;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val_3;
				g_3 = (*(*colonenv_).c1).graph;
				rb_151 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_76 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				destKey_4 = (*regs->data[rb_151].node)._kind_3.strVal;
				val_3 = regs->data[rc_76].node;
				{
					NIM_BOOL T1564_;
					tyArray__iegsN9bf6GqRiWprrJjTAoA T1567_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1568_;
					T1564_ = (NIM_BOOL)0;
					T1564_ = contains__vm_5915((*g_3).cacheSeqs, destKey_4);
					if (!!(T1564_)) goto LA1565_;
					nimZeroMem((void*)T1567_, sizeof(tyArray__iegsN9bf6GqRiWprrJjTAoA));
					T1567_[0] = val_3;
					T1568_ = NIM_NIL;
					T1568_ = newTree__ast_3356(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115), T1567_, 1);
					X5BX5Deq___vm_6210((&(*g_3).cacheSeqs), destKey_4, T1568_);
				}
				goto LA1562_;
				LA1565_: ;
				{
					{
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1581_;
						{
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* existing;
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* colontmp__11;
							tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1572_;
							existing = NIM_NIL;
							colontmp__11 = NIM_NIL;
							T1572_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
							T1572_ = X5BX5D___vm_7379((&(*g_3).cacheSeqs), destKey_4);
							colontmp__11 = (*T1572_);
							{
								NI i_16;
								NI colontmp__12;
								NI i_17;
								i_16 = (NI)0;
								colontmp__12 = (NI)0;
								colontmp__12 = safeLen__ast_3148(colontmp__11);
								i_17 = ((NI) 0);
								{
									while (1) {
										if (!(i_17 < colontmp__12)) goto LA1575;
										i_16 = i_17;
										existing = (*colontmp__11)._kind_6.sons->data[i_16];
										{
											NIM_BOOL T1578_;
											T1578_ = (NIM_BOOL)0;
											T1578_ = exprStructuralEquivalent__trees_56(existing, val_3, NIM_TRUE);
											if (!T1578_) goto LA1579_;
											goto LA1570;
										}
										LA1579_: ;
										i_17 += ((NI) 1);
									} LA1575: ;
								}
							}
						}
						T1581_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
						T1581_ = X5BX5D___vm_7379((&(*g_3).cacheSeqs), destKey_4);
						add__ast_4798((*T1581_), val_3);
					} LA1570: ;
				}
				LA1562_: ;
				recordIncl__macrocacheimpl_79((*colonenv_).c1, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], destKey_4, val_3);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 132):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_4;
				NI rb_152;
				NimStringDesc* destKey_5;
				NI T1583_;
				g_4 = (*(*colonenv_).c1).graph;
				rb_152 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				destKey_5 = (*regs->data[rb_152].node)._kind_3.strVal;
				T1583_ = (NI)0;
				{
					NIM_BOOL T1586_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1589_;
					T1586_ = (NIM_BOOL)0;
					T1586_ = contains__vm_5915((*g_4).cacheSeqs, destKey_5);
					if (!T1586_) goto LA1587_;
					T1589_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
					T1589_ = X5BX5D___vm_7379((&(*g_4).cacheSeqs), destKey_5);
					T1583_ = len__ast_3155((*T1589_));
				}
				goto LA1584_;
				LA1587_: ;
				{
					T1583_ = ((NI) 0);
				}
				LA1584_: ;
				regs->data[ra].intVal = ((NI64) (T1583_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 133):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_5;
				NI rb_153;
				NI rc_77;
				NI64 idx_10;
				NimStringDesc* destKey_6;
				g_5 = (*(*colonenv_).c1).graph;
				rb_153 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_77 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				idx_10 = regs->data[rc_77].intVal;
				destKey_6 = (*regs->data[rb_153].node)._kind_3.strVal;
				{
					NIM_BOOL T1594_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1596_;
					NI T1597_;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1600_;
					T1594_ = (NIM_BOOL)0;
					T1594_ = contains__vm_5915((*g_5).cacheSeqs, destKey_6);
					if (!(T1594_)) goto LA1595_;
					T1596_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
					T1596_ = X5BX5D___vm_7379((&(*g_5).cacheSeqs), destKey_6);
					T1597_ = (NI)0;
					T1597_ = len__ast_3155((*T1596_));
					T1594_ = ltpercent___system_1021(idx_10, ((NI64) (T1597_)));
					LA1595_: ;
					if (!T1594_) goto LA1598_;
					T1600_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
					T1600_ = X5BX5D___vm_7379((&(*g_5).cacheSeqs), destKey_6);
					asgnRef((void**) (&regs->data[ra].node), (*(*T1600_))._kind_6.sons->data[idx_10]);
				}
				goto LA1592_;
				LA1598_: ;
				{
					NimStringDesc* T1602_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1615_;
					T1602_ = NIM_NIL;
					{
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1605_;
						NI T1606_;
						T1605_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
						T1605_ = X5BX5D___vm_7379((&(*g_5).cacheSeqs), destKey_6);
						T1606_ = (NI)0;
						T1606_ = len__ast_3155((*T1605_));
						if (!((NI)(T1606_ - ((NI) 1)) < ((NI) 0))) goto LA1607_;
						T1602_ = copyString(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_162));
					}
					goto LA1603_;
					LA1607_: ;
					{
						NimStringDesc* T1610_;
						NimStringDesc* T1611_;
						tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** T1612_;
						NI T1613_;
						NimStringDesc* T1614_;
						T1610_ = NIM_NIL;
						T1611_ = NIM_NIL;
						T1611_ = dollar___systemZdollars_6(idx_10);
						T1612_ = (tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw**)0;
						T1612_ = X5BX5D___vm_7379((&(*g_5).cacheSeqs), destKey_6);
						T1613_ = (NI)0;
						T1613_ = len__ast_3155((*T1612_));
						T1614_ = NIM_NIL;
						T1614_ = dollar___systemZdollars_3((NI)(T1613_ - ((NI) 1)));
						T1610_ = rawNewString((T1611_ ? T1611_->Sup.len : 0) + (T1614_ ? T1614_->Sup.len : 0) + 19);
appendString(T1610_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_163));
appendString(T1610_, T1611_);
appendString(T1610_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_164));
appendString(T1610_, T1614_);
						T1602_ = T1610_;
					}
					LA1603_: ;
					nimZeroMem((void*)(&T1615_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1602_, T1615_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1592_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 134):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_6;
				NimStringDesc* destKey_7;
				NimStringDesc* key;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* val_4;
				g_6 = (*(*colonenv_).c1).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 T1619_;
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q T1622_;
					T1619_ = (NIM_BOOL)0;
					T1619_ = contains__vm_8141((*g_6).cacheTables, destKey_7);
					if (!!(T1619_)) goto LA1620_;
					nimZeroMem((void*)(&T1622_), sizeof(tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q));
					initBTree__vm_8401((&T1622_));
					X5BX5Deq___vm_8462((&(*g_6).cacheTables), destKey_7, T1622_);
				}
				LA1620_: ;
				{
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1625_;
					NIM_BOOL T1626_;
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1629_;
					T1625_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
					T1625_ = X5BX5D___vm_9635((&(*g_6).cacheTables), destKey_7);
					T1626_ = (NIM_BOOL)0;
					T1626_ = contains__vm_9768((*T1625_), key);
					if (!!(T1626_)) goto LA1627_;
					T1629_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
					T1629_ = X5BX5D___vm_9635((&(*g_6).cacheTables), destKey_7);
					add__vm_10052(T1629_, key, val_4);
					recordPut__macrocacheimpl_38((*colonenv_).c1, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3], destKey_7, key, val_4);
				}
				goto LA1623_;
				LA1627_: ;
				{
					NimStringDesc* T1631_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1632_;
					T1631_ = NIM_NIL;
					T1631_ = rawNewString((key ? key->Sup.len : 0) + 20);
appendString(T1631_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_247));
appendString(T1631_, key);
					nimZeroMem((void*)(&T1632_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1631_, T1632_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1623_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 135):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_7;
				NI rb_154;
				NimStringDesc* destKey_8;
				NI T1634_;
				g_7 = (*(*colonenv_).c1).graph;
				rb_154 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				destKey_8 = (*regs->data[rb_154].node)._kind_3.strVal;
				T1634_ = (NI)0;
				{
					NIM_BOOL T1637_;
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1640_;
					T1637_ = (NIM_BOOL)0;
					T1637_ = contains__vm_8141((*g_7).cacheTables, destKey_8);
					if (!T1637_) goto LA1638_;
					T1640_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
					T1640_ = X5BX5D___vm_9635((&(*g_7).cacheTables), destKey_8);
					T1634_ = len__vm_11729((*T1640_));
				}
				goto LA1635_;
				LA1638_: ;
				{
					T1634_ = ((NI) 0);
				}
				LA1635_: ;
				regs->data[ra].intVal = ((NI64) (T1634_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 136):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_8;
				NI rb_155;
				NI rc_78;
				NimStringDesc* destKey_9;
				NimStringDesc* key_2;
				g_8 = (*(*colonenv_).c1).graph;
				rb_155 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_78 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				destKey_9 = (*regs->data[rb_155].node)._kind_3.strVal;
				key_2 = (*regs->data[rc_78].node)._kind_3.strVal;
				{
					NIM_BOOL T1645_;
					T1645_ = (NIM_BOOL)0;
					T1645_ = contains__vm_8141((*g_8).cacheTables, destKey_9);
					if (!T1645_) goto LA1646_;
					{
						tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1650_;
						NIM_BOOL T1651_;
						tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1654_;
						T1650_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
						T1650_ = X5BX5D___vm_9635((&(*g_8).cacheTables), destKey_9);
						T1651_ = (NIM_BOOL)0;
						T1651_ = contains__vm_9768((*T1650_), key_2);
						if (!T1651_) goto LA1652_;
						T1654_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
						T1654_ = X5BX5D___vm_9635((&(*g_8).cacheTables), destKey_9);
						asgnRef((void**) (&regs->data[ra].node), getOrDefault__vm_12059((*T1654_), key_2));
					}
					goto LA1648_;
					LA1652_: ;
					{
						NimStringDesc* T1656_;
						tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1657_;
						T1656_ = NIM_NIL;
						T1656_ = rawNewString((key_2 ? key_2->Sup.len : 0) + 20);
appendString(T1656_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_248));
appendString(T1656_, key_2);
						nimZeroMem((void*)(&T1657_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
						stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1656_, T1657_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
						goto BeforeRet_;
					}
					LA1648_: ;
				}
				goto LA1643_;
				LA1646_: ;
				{
					NimStringDesc* T1659_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1660_;
					T1659_ = NIM_NIL;
					T1659_ = rawNewString((destKey_9 ? destKey_9->Sup.len : 0) + 20);
appendString(T1659_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_248));
appendString(T1659_, destKey_9);
					nimZeroMem((void*)(&T1660_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1659_, T1660_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1643_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 137):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_9;
				NI rb_156;
				NI rc_79;
				NimStringDesc* destKey_10;
				NI T1662_;
				g_9 = (*(*colonenv_).c1).graph;
				rb_156 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_79 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 2));
				destKey_10 = (*regs->data[rb_156].node)._kind_3.strVal;
				T1662_ = (NI)0;
				{
					NIM_BOOL T1665_;
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1668_;
					NIM_BOOL T1669_;
					T1665_ = (NIM_BOOL)0;
					T1665_ = contains__vm_8141((*g_9).cacheTables, destKey_10);
					if (!T1665_) goto LA1666_;
					T1668_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
					T1668_ = X5BX5D___vm_9635((&(*g_9).cacheTables), destKey_10);
					T1669_ = (NIM_BOOL)0;
					T1669_ = hasNext__vm_12432((*T1668_), ((NI) (regs->data[rc_79].intVal)));
					T1662_ = T1669_;
				}
				goto LA1663_;
				LA1666_: ;
				{
					T1662_ = ((NI) 0);
				}
				LA1663_: ;
				regs->data[ra].intVal = ((NI64) (T1662_));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 138):
			{
				tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g_10;
				NI rb_157;
				NI rc_80;
				NimStringDesc* destKey_11;
				NI64 index;
				g_10 = (*(*colonenv_).c1).graph;
				rb_157 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				rc_80 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(40ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				destKey_11 = (*regs->data[rb_157].node)._kind_3.strVal;
				index = regs->data[rc_80].intVal;
				{
					NIM_BOOL T1674_;
					tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q* T1677_;
					tyTuple__xBIQCKakCgKTQ7wLgy259cg T1678_;
					NimStringDesc* k_3;
					tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* v_2;
					NI nextIndex;
					tyArray__id9c0PBojP5C2oM2bRQSViA T1679_;
					T1674_ = (NIM_BOOL)0;
					T1674_ = contains__vm_8141((*g_10).cacheTables, destKey_11);
					if (!T1674_) goto LA1675_;
					T1677_ = (tyObject_BTree__R2EgvhuH9cLMYvSPesdcu5Q*)0;
					T1677_ = X5BX5D___vm_9635((&(*g_10).cacheTables), destKey_11);
					nimZeroMem((void*)(&T1678_), sizeof(tyTuple__xBIQCKakCgKTQ7wLgy259cg));
					next__vm_12583((*T1677_), ((NI) (index)), (&T1678_));
					k_3 = NIM_NIL;
					k_3 = T1678_.Field0;
					v_2 = NIM_NIL;
					v_2 = T1678_.Field1;
					nextIndex = (NI)0;
					nextIndex = T1678_.Field2;
					nimZeroMem((void*)T1679_, sizeof(tyArray__id9c0PBojP5C2oM2bRQSViA));
					T1679_[0] = newStrNode__ast_3805(k_3, (*(*colonenv_).c1).debug->data[(*colonenv_).pc3]);
					T1679_[1] = v_2;
					T1679_[2] = newIntNode__ast_3711(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6), ((NI64) (nextIndex)));
					asgnRef((void**) (&regs->data[ra].node), newTree__ast_3356(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160), T1679_, 3));
				}
				goto LA1672_;
				LA1675_: ;
				{
					NimStringDesc* T1681_;
					tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw T1682_;
					T1681_ = NIM_NIL;
					T1681_ = rawNewString((destKey_11 ? destKey_11->Sup.len : 0) + 20);
appendString(T1681_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_248));
appendString(T1681_, destKey_11);
					nimZeroMem((void*)(&T1682_), sizeof(tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw));
					stackTraceImpl__vm_71((*colonenv_).c1, (*colonenv_).tos2, (*colonenv_).pc3, T1681_, T1682_, TM__sQJeTKtOMm7ArbnaG0SDbQ_120);
					goto BeforeRet_;
				}
				LA1672_: ;
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 188):
			{
				NI rb_158;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_10;
				rb_158 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				typ_10 = (*regs->data[rb_158].node).typ;
				{
					NimStringDesc* argX60gensym1170_;
					if (!!(!((typ_10 == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL))))) goto LA1686_;
					argX60gensym1170_ = toFileLineCol__msgs_625(TM__sQJeTKtOMm7ArbnaG0SDbQ_249);
					internalErrorImpl__msgs_1441((*(*colonenv_).c1).config, unknownLineInfo__lineinfos_284, argX60gensym1170_, TM__sQJeTKtOMm7ArbnaG0SDbQ_249);
				}
				LA1686_: ;
				{
					while (1) {
						NIM_BOOL T1690_;
						NI T1692_;
						T1690_ = (NIM_BOOL)0;
						T1690_ = ((*typ_10).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 8));
						if (!(T1690_)) goto LA1691_;
						T1692_ = (NI)0;
						T1692_ = len__ast_3990(typ_10);
						T1690_ = (((NI) 0) < T1692_);
						LA1691_: ;
						if (!T1690_) goto LA1689;
						typ_10 = (*typ_10).sons->data[((NI) 0)];
					} LA1689: ;
				}
				asgnRef((void**) (&regs->data[ra].node), newNode__ast_3289(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20)));
				asgnRef((void**) (&(*regs->data[ra].node)._kind_3.strVal), typeToString__types_50(typ_10, ((tyEnum_TPreferedDesc__lx9aDnWjKktcSUo0yfjOvMg) 2)));
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 189):
			{
				NI ra_5;
				NI rb_159;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_11;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1694_;
				ra_5 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(8ULL)) & 65535ULL)));
				rb_159 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				(*colonenv_).pc3 += ((NI) 1);
				typ_11 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				T1694_ = NIM_NIL;
				T1694_ = loadAny__vmmarshal_1853((*regs->data[rb_159].node)._kind_3.strVal, typ_11, (*(*colonenv_).c1).cache, (*(*colonenv_).c1).config, (*(*colonenv_).c1).Sup.idgen);
				putIntoReg__vm_513((&regs->data[ra_5]), T1694_);
			}
			break;
			case ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 190):
			{
				NI rb_160;
				tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ_12;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1696_;
				rb_160 = ((NI) ((NU64)((NU64)((NU64)(instr) >> (NU64)(24ULL)) & 65535ULL)));
				ensureKind__vm_112((&regs->data[ra]), ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1));
				(*colonenv_).pc3 += ((NI) 1);
				typ_12 = (*(*colonenv_).c1).types->data[(NI)(((NI) ((NU64)((NU64)((NU64)((*(*colonenv_).c1).code->data[(*colonenv_).pc3]) >> (NU64)(24ULL)) & 16777215ULL))) - ((NI) 8388608))];
				createStrKeepNode__vm_214((&regs->data[ra]), NIM_TRUE);
				T1696_ = NIM_NIL;
				T1696_ = regToNode__vm_532(regs->data[rb_160]);
				storeAny__vmmarshal_200((&(*regs->data[ra].node)._kind_3.strVal), typ_12, T1696_, (*(*colonenv_).c1).config);
			}
			break;
			}
			leave__vmprofiler_690((&(*(*colonenv_).c1).profiler), (*colonenv_).c1);
			(*colonenv_).pc3 += ((NI) 1);
		}
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalMacroCall__vm_14210)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, NI* templInstCounter, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nOrig, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c;
	tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ oldMode;
	NI start;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* T18_;
	NI maxSlots;
	NI L;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T23_;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* gp;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T40_;
	result = NIM_NIL;
	(*(*g).config).evalMacroCounter += ((NI) 1);
	{
		if (!(((NI) 1000) < (*(*g).config).evalMacroCounter)) goto LA3_;
		liMessage__msgs_1128((*g).config, (*n).info, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_2), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_3, NIM_FALSE);
	}
	LA3_: ;
	{
		NIM_BOOL T7_;
		NI T8_;
		NI T9_;
		NI T11_;
		tyArray__24KAM9afIUgUaqBaEBB6r9bg T14_;
		NI T15_;
		NI T16_;
		NimStringDesc* T17_;
		T7_ = (NIM_BOOL)0;
		T8_ = (NI)0;
		T8_ = safeLen__ast_3148(n);
		T9_ = (NI)0;
		T9_ = len__ast_3990((*sym).typ);
		T7_ = (T8_ < T9_);
		if (!(T7_)) goto LA10_;
		T11_ = (NI)0;
		T11_ = len__ast_3990((*sym).typ);
		T7_ = (((NI) 1) < T11_);
		LA10_: ;
		if (!T7_) goto LA12_;
		nimZeroMem((void*)T14_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
		T14_[0] = renderTree__renderer_46(n, 0);
		T15_ = (NI)0;
		T15_ = safeLen__ast_3148(n);
		T14_[1] = dollar___systemZdollars_3((NI)(T15_ - ((NI) 1)));
		T16_ = (NI)0;
		T16_ = len__ast_3990((*sym).typ);
		T14_[2] = dollar___systemZdollars_3((NI)(T16_ - ((NI) 1)));
		T17_ = NIM_NIL;
		T17_ = nsuFormatOpenArray(((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_5), T14_, 3);
		liMessage__msgs_1128((*g).config, (*n).info, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), T17_, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_6, NIM_FALSE);
	}
	LA12_: ;
	setupGlobalCtx__vm_14024(module, g, idgen);
	c = (*((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ**) (&((*g).vm))));
	oldMode = (*c).mode;
	(*c).mode = ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 4);
	(*c).comesFromHeuristic.line = ((NU16) 0);
	asgnRef((void**) (&(*c).callsite), nOrig);
	asgnRef((void**) (&(*c).templInstCounter), templInstCounter);
	start = genProc__vmgen_3139(c, sym);
	T18_ = NIM_NIL;
	T18_ = (tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) newObj((&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_), sizeof(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ));
	asgnRef((void**) (&(*T18_).prc), sym);
	(*T18_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T18_).next), ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL));
	tos = T18_;
	maxSlots = (*sym).offset;
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__qoz9b2fDIpsvVqgQYTLWcFA*) newSeqRC1((&NTIseqLtfullregT__qoz9b2fDIpsvVqgQYTLWcFA_), ((NI) (maxSlots)));
	L = safeLen__ast_3148(n);
	{
		if (!(L == ((NI) 0))) goto LA21_;
		L = ((NI) 1);
	}
	LA21_: ;
	nimZeroMem((void*)(&T23_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
	nimZeroMem((void*)(&T23_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
	T23_.kind = ((tyEnum_TRegisterKind__drcwtBjsw5cM6mbg9chBM9bg) 1);
	T23_.node = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1), (*n).info);
	genericShallowAssign((void*)(&(*tos).slots->data[((NI) 0)]), (void*)(&T23_), (&NTItfullreg__5wJdjCgIXFtQUOFYtApLgA_));
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_3990((*sym).typ);
		i_2 = ((NI) 1);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA26;
				i = i_2;
				setupMacroParam__vm_14172((*n)._kind_6.sons->data[i], (*(*sym).typ).sons->data[i], (&(*tos).slots->data[i]));
				i_2 += ((NI) 1);
			} LA26: ;
		}
	}
	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__ast_3155(gp);
		i_4 = ((NI) 0);
		{
			while (1) {
				NI idx;
				NI T30_;
				if (!(i_4 < colontmp__2)) goto LA29;
				i_3 = i_4;
				T30_ = (NI)0;
				T30_ = len__ast_3990((*sym).typ);
				idx = (NI)(T30_ + i_3);
				{
					NI T33_;
					T33_ = (NI)0;
					T33_ = len__ast_3155(n);
					if (!(idx < T33_)) goto LA34_;
					setupMacroParam__vm_14172((*n)._kind_6.sons->data[idx], (*(*(*gp)._kind_6.sons->data[i_3])._kind_4.sym).typ, (&(*tos).slots->data[idx]));
				}
				goto LA31_;
				LA34_: ;
				{
					NimStringDesc* T37_;
					NI T38_;
					NimStringDesc* T39_;
					(*(*g).config).evalMacroCounter -= ((NI) 1);
					asgnRef((void**) (&(*c).callsite), ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL));
					T37_ = NIM_NIL;
					T38_ = (NI)0;
					T38_ = len__ast_3155(gp);
					T39_ = NIM_NIL;
					T39_ = dollar___systemZdollars_3(T38_);
					T37_ = rawNewString((T39_ ? T39_->Sup.len : 0) + 30);
appendString(T37_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_154));
appendString(T37_, T39_);
appendString(T37_, ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_155));
					liMessage__msgs_1128((*c).config, (*n).info, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), T37_, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 0), TM__sQJeTKtOMm7ArbnaG0SDbQ_156, NIM_FALSE);
				}
				LA31_: ;
				i_4 += ((NI) 1);
			} LA29: ;
		}
	}
	nimZeroMem((void*)(&T40_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
	rawExecute__vm_879(c, start, tos, (&T40_));
	result = regToNode__vm_532(T40_);
	{
		if (!((NU16)((*result).info.line) < (NU16)(((NU16) 0)))) goto LA43_;
		(*result).info = (*n).info;
	}
	LA43_: ;
	{
		NIM_BOOL T47_;
		T47_ = (NIM_BOOL)0;
		T47_ = cyclicTree__trees_44(result);
		if (!T47_) goto LA48_;
		liMessage__msgs_1128((*c).config, (*n).info, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), ((NimStringDesc*) &TM__sQJeTKtOMm7ArbnaG0SDbQ_250), ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 2), TM__sQJeTKtOMm7ArbnaG0SDbQ_251, NIM_FALSE);
	}
	LA48_: ;
	(*(*g).config).evalMacroCounter -= ((NI) 1);
	asgnRef((void**) (&(*c).callsite), ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL));
	(*c).mode = oldMode;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalConstExprAux__vm_14047)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ mode) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_2;
	tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c;
	tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ oldMode;
	NI start;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* T5_;
	NI T6_;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T7_;
{	result = NIM_NIL;
	n_2 = transformExpr__transf_1903(g, idgen, module, n);
	setupGlobalCtx__vm_14024(module, g, idgen);
	c = (*((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ**) (&((*g).vm))));
	oldMode = (*c).mode;
	(*c).mode = mode;
	start = genExpr__vmgen_3384(c, n_2, !((mode == ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 4))));
	{
		if (!(((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[start]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 0))) goto LA3_;
		result = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1), (*n_2).info);
		goto BeforeRet_;
	}
	LA3_: ;
	T5_ = NIM_NIL;
	T5_ = (tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) newObj((&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_), sizeof(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ));
	asgnRef((void**) (&(*T5_).prc), prc);
	(*T5_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T5_).next), ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL));
	tos = T5_;
	T6_ = ((*(*c).prc).regInfo ? (*(*c).prc).regInfo->Sup.len : 0);
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__qoz9b2fDIpsvVqgQYTLWcFA*) newSeqRC1((&NTIseqLtfullregT__qoz9b2fDIpsvVqgQYTLWcFA_), ((NI) (T6_)));
	nimZeroMem((void*)(&T7_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
	rawExecute__vm_879(c, start, tos, (&T7_));
	result = regToNode__vm_532(T7_);
	{
		if (!((*result).info.col < ((NI16) 0))) goto LA10_;
		(*result).info = (*n_2).info;
	}
	LA10_: ;
	(*c).mode = oldMode;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalStaticExpr__vm_14105)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* e, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = evalConstExprAux__vm_14047(module, idgen, g, prc, e, ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 3));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, evalConstExpr__vm_14099)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* e) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = evalConstExprAux__vm_14047(module, idgen, g, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL), e, ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 1));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setupCompileTimeVar__vm_14118)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1_;
	T1_ = NIM_NIL;
	T1_ = evalConstExprAux__vm_14047(module, idgen, g, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL), n, ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 4));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(void, evalStaticStmt__vm_14112)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen, tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* e, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* prc) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T1_;
	T1_ = NIM_NIL;
	T1_ = evalConstExprAux__vm_14047(module, idgen, g, prc, e, ((tyEnum_TEvalMode__iWSxkwmhTDY7fh9aYmp69akQ) 4));
	(void)(T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw*, myOpen__vm_14031)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* module, tyObject_IdGeneratorcolonObjectType___WVCsDyf9bR1PcjDFjcjm9bRg* idgen) {
	tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* result;
	result = NIM_NIL;
	setupGlobalCtx__vm_14024(module, graph, idgen);
	result = &(*((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ**) (&((*graph).vm))))->Sup;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, execute__vm_13018)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, NI start) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* tos;
	tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ* T1_;
	NI T2_;
	tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA T3_;
	result = NIM_NIL;
	T1_ = NIM_NIL;
	T1_ = (tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) newObj((&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_), sizeof(tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ));
	asgnRef((void**) (&(*T1_).prc), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	(*T1_).comesFrom = ((NI) 0);
	asgnRef((void**) (&(*T1_).next), ((tyObject_TStackFrame__0GloFoQJxIWYG3W9cguBcAQ*) NIM_NIL));
	tos = T1_;
	T2_ = ((*(*c).prc).regInfo ? (*(*c).prc).regInfo->Sup.len : 0);
	if ((*tos).slots) { nimGCunrefNoCycle((*tos).slots); (*tos).slots = NIM_NIL; }
	(*tos).slots = (tySequence__qoz9b2fDIpsvVqgQYTLWcFA*) newSeqRC1((&NTIseqLtfullregT__qoz9b2fDIpsvVqgQYTLWcFA_), ((NI) (T2_)));
	nimZeroMem((void*)(&T3_), sizeof(tyObject_TFullReg__5wJdjCgIXFtQUOFYtApLgA));
	rawExecute__vm_879(c, start, tos, (&T3_));
	result = regToNode__vm_532(T3_);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, evalStmt__vm_13072)(tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n_2;
	NI start;
	n_2 = transformExpr__transf_1903((*c).graph, (*c).Sup.idgen, (*c).module, n);
	start = genStmt__vmgen_3376(c, n_2);
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T5_;
		if (!!((((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) ((NU64)((NU64)((NU64)((*c).code->data[start]) >> (NU64)(0ULL)) & 255ULL))) == ((tyEnum_TOpcode__6Md36HXDC8kz9aZEdeQ4KoQ) 0)))) goto LA3_;
		T5_ = NIM_NIL;
		T5_ = execute__vm_13018(c, start);
		(void)(T5_);
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, myProcess__vm_14036)(tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ* c_2;
	result = NIM_NIL;
	c_2 = ((tyObject_TCtx__CRPlhL1hATwZc5hefTGOQQ*) (c));
	{
		if (!((*c_2).oldErrorCount == (*(*c_2).config).errorCounter)) goto LA3_;
		evalStmt__vm_13072(c_2, n);
		result = newNodeI__ast_3320(((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 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__uh9cWvEa5Ty85PXOtuP5emw*, myClose__vm_14041)(tyObject_ModuleGraphcolonObjectType___nOSrcYqJTxXt2ptNc0gnWg* graph, tyObject_TPassContext__dmp6pRpfXxJk6gIZHkm7dw* c, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = myProcess__vm_14036(c, n);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, atmvmdotnim_DatInit000)(void) {
static TNimNode* TM__sQJeTKtOMm7ArbnaG0SDbQ_7_2[2];
static TNimNode* TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[6];
static TNimNode TM__sQJeTKtOMm7ArbnaG0SDbQ_0[10];
NTIobject__8owSDbS322LE0z2cCFHJMA_.size = sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA);
NTIobject__8owSDbS322LE0z2cCFHJMA_.align = NIM_ALIGNOF(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA);
NTIobject__8owSDbS322LE0z2cCFHJMA_.kind = 17;
NTIobject__8owSDbS322LE0z2cCFHJMA_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_7_2[0] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[1];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[1].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[1].offset = offsetof(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA, colonstate_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[1].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[1].name = ":state";
TM__sQJeTKtOMm7ArbnaG0SDbQ_7_2[1] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[2];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[2].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[2].offset = offsetof(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA, c1);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[2].typ = (&NTIpevalcontext__4IKTvAXRLrZvs9cUNEP7Z8w_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[2].name = "c1";
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[0].len = 2; TM__sQJeTKtOMm7ArbnaG0SDbQ_0[0].kind = 2; TM__sQJeTKtOMm7ArbnaG0SDbQ_0[0].sons = &TM__sQJeTKtOMm7ArbnaG0SDbQ_7_2[0];
NTIobject__8owSDbS322LE0z2cCFHJMA_.node = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[0];
NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_.size = sizeof(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*);
NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_.align = NIM_ALIGNOF(tyObject_Env_vmopsdotnim_registerAdditionalOps___8owSDbS322LE0z2cCFHJMA*);
NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_.kind = 22;
NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_.base = (&NTIobject__8owSDbS322LE0z2cCFHJMA_);
NTIrefobject__QeiW9acdysZjDeuwHbio5Cg_.marker = Marker_tyRef__QeiW9acdysZjDeuwHbio5Cg;
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.size = sizeof(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*);
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.align = NIM_ALIGNOF(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*);
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.kind = 24;
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.base = (&NTIbyte__k3HXouOuhqAKq0dx450lXQ_);
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.flags = 2;
NTIseqLbyteT__6H5Oh5UUvVCLiakt9aTwtUQ_.marker = Marker_tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.size = sizeof(tySequence__4eQHGndY6XBYpFOH09apV8Q*);
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.align = NIM_ALIGNOF(tySequence__4eQHGndY6XBYpFOH09apV8Q*);
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.kind = 24;
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.base = (&NTItupleLversion58string_checksum58stringT__UV3llMMYFckfui8YMBuUZA_);
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.flags = 2;
NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_.marker = Marker_tySequence__4eQHGndY6XBYpFOH09apV8Q;
NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_.size = sizeof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q);
NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_.align = NIM_ALIGNOF(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q);
NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_.kind = 17;
NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[0] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[4];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[4].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[4].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, colonstate_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[4].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[4].name = ":state";
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[1] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[5];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[5].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[5].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, c1);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[5].typ = (&NTIpevalcontext__4IKTvAXRLrZvs9cUNEP7Z8w_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[5].name = "c1";
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[2] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[6];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[6].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[6].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, tos2);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[6].typ = (&NTIpstackframe__GROwhbu9aXZcBNGpHQVFqow_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[6].name = "tos2";
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[3] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[7];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[7].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[7].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, pc3);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[7].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[7].name = "pc3";
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[4] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[8];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[8].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[8].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, error4);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[8].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[8].name = "error4";
TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[5] = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[9];
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[9].kind = 1;
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[9].offset = offsetof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q, error5);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[9].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[9].name = "error5";
TM__sQJeTKtOMm7ArbnaG0SDbQ_0[3].len = 6; TM__sQJeTKtOMm7ArbnaG0SDbQ_0[3].kind = 2; TM__sQJeTKtOMm7ArbnaG0SDbQ_0[3].sons = &TM__sQJeTKtOMm7ArbnaG0SDbQ_157_6[0];
NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_.node = &TM__sQJeTKtOMm7ArbnaG0SDbQ_0[3];
NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_.size = sizeof(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*);
NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_.align = NIM_ALIGNOF(tyObject_Env_vmdotnim_rawExecute___NNH6EBs2x8Tk8uNDFVUx1Q*);
NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_.kind = 22;
NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_.base = (&NTIobject__NNH6EBs2x8Tk8uNDFVUx1Q_);
NTIrefobject__SjvuAyjb7I9au2peROwGwDQ_.marker = Marker_tyRef__SjvuAyjb7I9au2peROwGwDQ;
}

