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

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg;
typedef struct tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
typedef struct tyObject_Table__lPs28yjGTxD0LzUoPspSBQ tyObject_Table__lPs28yjGTxD0LzUoPspSBQ;
typedef struct tySequence__Fc8Q26tsngy2yxcpyrnT4Q tySequence__Fc8Q26tsngy2yxcpyrnT4Q;
typedef struct tySequence__Fc8Q26tsngy2yxcpyrnT4Q_Content tySequence__Fc8Q26tsngy2yxcpyrnT4Q_Content;
typedef struct tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug;
typedef struct tySequence__YdLNCDKYeipzJx3I8Xw82Q tySequence__YdLNCDKYeipzJx3I8Xw82Q;
typedef struct tySequence__YdLNCDKYeipzJx3I8Xw82Q_Content tySequence__YdLNCDKYeipzJx3I8Xw82Q_Content;
typedef struct tySequence__TLbZ2GqL3Zio1f8bNpj2NA tySequence__TLbZ2GqL3Zio1f8bNpj2NA;
typedef struct tySequence__TLbZ2GqL3Zio1f8bNpj2NA_Content tySequence__TLbZ2GqL3Zio1f8bNpj2NA_Content;
typedef struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct tyObject_TNodeTable__RKuYIY5Phq1xnepo5DZI2g tyObject_TNodeTable__RKuYIY5Phq1xnepo5DZI2g;
typedef struct tySequence__GH1mmNKNA2QP4n1tnxJf1w tySequence__GH1mmNKNA2QP4n1tnxJf1w;
typedef struct tySequence__GH1mmNKNA2QP4n1tnxJf1w_Content tySequence__GH1mmNKNA2QP4n1tnxJf1w_Content;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg tySequence__d8ZV4IMgHt9biik9cS9a0hrmg;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content;
typedef struct tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tySequence__TEgqV1E9aHqnwBUoeXjBI9aA tySequence__TEgqV1E9aHqnwBUoeXjBI9aA;
typedef struct tySequence__TEgqV1E9aHqnwBUoeXjBI9aA_Content tySequence__TEgqV1E9aHqnwBUoeXjBI9aA_Content;
typedef struct tyObject_Table__tro5f9chxPVpES1mQpDwZtQ tyObject_Table__tro5f9chxPVpES1mQpDwZtQ;
typedef struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og tySequence__pUxI6Ljo6IKKHXKOZkQ7Og;
typedef struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og_Content tySequence__pUxI6Ljo6IKKHXKOZkQ7Og_Content;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
typedef struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw;
typedef struct tyObject_Profiler__YI4zs2CaXXndlYireD0I8A tyObject_Profiler__YI4zs2CaXXndlYireD0I8A;
typedef struct tyObject_TStackFrame__a20zU43j9cYHpYOOr1c2hZQ tyObject_TStackFrame__a20zU43j9cYHpYOOr1c2hZQ;
typedef struct tySequence__fnH5Zt4fsGx0AgDTOw8pKw tySequence__fnH5Zt4fsGx0AgDTOw8pKw;
typedef struct tySequence__fnH5Zt4fsGx0AgDTOw8pKw_Content tySequence__fnH5Zt4fsGx0AgDTOw8pKw_Content;
typedef struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA;
typedef struct tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA;
typedef struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA tySequence__ZeWVlH6DqG79b1pTDhrrUYA;
typedef struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tySequence__b9bG03Q6unwlMU0dM7uOPIA tySequence__b9bG03Q6unwlMU0dM7uOPIA;
typedef struct tySequence__b9bG03Q6unwlMU0dM7uOPIA_Content tySequence__b9bG03Q6unwlMU0dM7uOPIA_Content;
typedef struct tySequence__grdS5PdBBxkq9bxi4lFAdAw tySequence__grdS5PdBBxkq9bxi4lFAdAw;
typedef struct tySequence__grdS5PdBBxkq9bxi4lFAdAw_Content tySequence__grdS5PdBBxkq9bxi4lFAdAw_Content;
typedef struct tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct tyTuple__9ap1MJ9bVBlP34AqrUq01n8w tyTuple__9ap1MJ9bVBlP34AqrUq01n8w;
typedef struct tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA;
typedef struct tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg;
typedef struct tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA tySequence__E0kio2ZnplNTuln9bsnljSA;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content tySequence__E0kio2ZnplNTuln9bsnljSA_Content;
typedef struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__hTEiKNj3evQAjIXUI21elA tySequence__hTEiKNj3evQAjIXUI21elA;
typedef struct tySequence__hTEiKNj3evQAjIXUI21elA_Content tySequence__hTEiKNj3evQAjIXUI21elA_Content;
typedef struct tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q tySequence__xOJ2kx2lq9bBfIm3IXnde3Q;
typedef struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content;
typedef struct tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA;
typedef struct tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ;
typedef struct tySequence__TfHJycarvNts8E4mVG4Mfg tySequence__TfHJycarvNts8E4mVG4Mfg;
typedef struct tySequence__TfHJycarvNts8E4mVG4Mfg_Content tySequence__TfHJycarvNts8E4mVG4Mfg_Content;
typedef struct tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg;
typedef struct tySequence__5reviU45axUMPQgL9aoENrg tySequence__5reviU45axUMPQgL9aoENrg;
typedef struct tySequence__5reviU45axUMPQgL9aoENrg_Content tySequence__5reviU45axUMPQgL9aoENrg_Content;
typedef struct tySequence__dtr79aXjHrgHuH79ac55I2aw tySequence__dtr79aXjHrgHuH79ac55I2aw;
typedef struct tySequence__dtr79aXjHrgHuH79ac55I2aw_Content tySequence__dtr79aXjHrgHuH79ac55I2aw_Content;
typedef struct tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg;
typedef struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw tySequence__8y0Gi4GwtXi2wk2mK1IOzw;
typedef struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content;
typedef struct tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w;
typedef struct tySequence__C2ivDnhTZ6IxAdui1rfuqw tySequence__C2ivDnhTZ6IxAdui1rfuqw;
typedef struct tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content;
typedef struct tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA;
typedef struct tySequence__3vEEVfBECLN6NIRA3FIp5g tySequence__3vEEVfBECLN6NIRA3FIp5g;
typedef struct tySequence__3vEEVfBECLN6NIRA3FIp5g_Content tySequence__3vEEVfBECLN6NIRA3FIp5g_Content;
typedef struct tyObject_Table__tEqt8LkShErhjQ9acvGyE7g tyObject_Table__tEqt8LkShErhjQ9acvGyE7g;
typedef struct tySequence__9aSa87aKMiolq9a7z3kC0jTw tySequence__9aSa87aKMiolq9a7z3kC0jTw;
typedef struct tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content;
typedef struct tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw;
typedef struct tySequence__N589c2UsUgqqOITU2JfIuAQ tySequence__N589c2UsUgqqOITU2JfIuAQ;
typedef struct tySequence__N589c2UsUgqqOITU2JfIuAQ_Content tySequence__N589c2UsUgqqOITU2JfIuAQ_Content;
typedef struct tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw;
typedef struct tySequence__GYDW6wGgERshoSd16jJ3eQ tySequence__GYDW6wGgERshoSd16jJ3eQ;
typedef struct tySequence__GYDW6wGgERshoSd16jJ3eQ_Content tySequence__GYDW6wGgERshoSd16jJ3eQ_Content;
typedef struct tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ;
typedef struct tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg;
typedef struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA tySequence__ZCZaCk14bTmSb6LMW9aWPVA;
typedef struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content;
typedef struct tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content tySequence__fdmz6VkIf1ewwrssKYqRFg_Content;
typedef struct tyObject_Table__AC9bec2JdoOuC3xQePGWgmA tyObject_Table__AC9bec2JdoOuC3xQePGWgmA;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content tySequence__kxu4GK0onha2t9bo86mdVAg_Content;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA_Content tySequence__48JTohSgTy339bRxHzUD8KA_Content;
typedef struct tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg tySequence__fz0REU1l0nYmKHXgMLRrIg;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg_Content tySequence__fz0REU1l0nYmKHXgMLRrIg_Content;
typedef struct tyObject_Table__w2vCG1OPnHmNolvQVT168g tyObject_Table__w2vCG1OPnHmNolvQVT168g;
typedef struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ tySequence__Ip9aV1IKO2gVdheNOM31DCQ;
typedef struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content;
typedef struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg tySequence__kHjIdgrpmuSn9cUIIKpSiDg;
typedef struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content;
typedef struct tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA;
typedef struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA tySequence__Wd0Vle6gxRCPPoSlNEvfTA;
typedef struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content;
typedef struct tyObject_Table__fZyCWkMwhdvr3pauCNDaag tyObject_Table__fZyCWkMwhdvr3pauCNDaag;
typedef struct tySequence__T7nNEWoEbKBa0G5Htr45Xw tySequence__T7nNEWoEbKBa0G5Htr45Xw;
typedef struct tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content;
typedef struct tyObject_Table__5vmBY49areSIlgIs4A1LLKQ tyObject_Table__5vmBY49areSIlgIs4A1LLKQ;
typedef struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA tySequence__q9cHvMDDxYU1hSCdG4YwIhA;
typedef struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content;
typedef struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA tySequence__olFOFaYzOJN9aV5BWqK4b9bA;
typedef struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content;
typedef struct tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw;
typedef struct tySequence__vJcM7B74R2U5db9cxyXT9coA tySequence__vJcM7B74R2U5db9cxyXT9coA;
typedef struct tySequence__vJcM7B74R2U5db9cxyXT9coA_Content tySequence__vJcM7B74R2U5db9cxyXT9coA_Content;
typedef struct tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg;
typedef struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg;
typedef struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content;
typedef struct tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ;
typedef struct tySequence__R9c39btP6BwOBBPnbaNUtMQg tySequence__R9c39btP6BwOBBPnbaNUtMQg;
typedef struct tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content;
typedef struct tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content;
typedef struct tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ;
typedef struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw tySequence__3nALyQgqjnfK2Qjc6ny2Uw;
typedef struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content;
typedef struct tySequence__WbW5Q8QVks0bQpUJSGmuVg tySequence__WbW5Q8QVks0bQpUJSGmuVg;
typedef struct tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content;
typedef struct tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ;
typedef struct tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg;
typedef struct tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA;
typedef struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A;
typedef struct tyTuple__y6bKAf9a9aaVwun6lVDxSX7g tyTuple__y6bKAf9a9aaVwun6lVDxSX7g;
typedef struct tyObject_TNodePair__KE5IEbxbTGxhrXo6rzddjQ tyObject_TNodePair__KE5IEbxbTGxhrXo6rzddjQ;
typedef struct tyObject_VmArgs__PuiloXB3J4yNffJquqRVvg tyObject_VmArgs__PuiloXB3J4yNffJquqRVvg;
typedef struct tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ;
typedef struct tyTuple__ZQn9aE2eP9aC9aAInis8k8aDQ tyTuple__ZQn9aE2eP9aC9aAInis8k8aDQ;
typedef struct tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg;
typedef struct tyObject_Iface__j1FkQxwEAKMJy1o9bap1xow tyObject_Iface__j1FkQxwEAKMJy1o9bap1xow;
typedef struct tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA;
typedef struct tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA_Content tySequence__PXIzfWocnrafGz5p3CP5LA_Content;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content;
typedef struct tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w;
typedef struct tySequence__OxRbUT0qZaZN5UjnqQjGPA tySequence__OxRbUT0qZaZN5UjnqQjGPA;
typedef struct tySequence__OxRbUT0qZaZN5UjnqQjGPA_Content tySequence__OxRbUT0qZaZN5UjnqQjGPA_Content;
typedef struct tySequence__ezS5mGPcRfBURJyMgqYVzA tySequence__ezS5mGPcRfBURJyMgqYVzA;
typedef struct tySequence__ezS5mGPcRfBURJyMgqYVzA_Content tySequence__ezS5mGPcRfBURJyMgqYVzA_Content;
typedef struct tySequence__wW7xkohjuUKO9aMaB0nt9cqA tySequence__wW7xkohjuUKO9aMaB0nt9cqA;
typedef struct tySequence__wW7xkohjuUKO9aMaB0nt9cqA_Content tySequence__wW7xkohjuUKO9aMaB0nt9cqA_Content;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg_Content tySequence__b89aLriiJnVTD186H6zNIgg_Content;
typedef struct tySequence__hIPTk9aFdaMMVAOzEbnPyqg tySequence__hIPTk9aFdaMMVAOzEbnPyqg;
typedef struct tySequence__hIPTk9aFdaMMVAOzEbnPyqg_Content tySequence__hIPTk9aFdaMMVAOzEbnPyqg_Content;
typedef struct tySequence__YYy1721YAuPF0ajBYHd8Wg tySequence__YYy1721YAuPF0ajBYHd8Wg;
typedef struct tySequence__YYy1721YAuPF0ajBYHd8Wg_Content tySequence__YYy1721YAuPF0ajBYHd8Wg_Content;
typedef struct tySequence__UODJbvzmu39c3Ho9cqhSk9agQ tySequence__UODJbvzmu39c3Ho9cqhSk9agQ;
typedef struct tySequence__UODJbvzmu39c3Ho9cqhSk9agQ_Content tySequence__UODJbvzmu39c3Ho9cqhSk9agQ_Content;
typedef struct tySequence__F1qNdU7m0Czu7Y2q0eksXw tySequence__F1qNdU7m0Czu7Y2q0eksXw;
typedef struct tySequence__F1qNdU7m0Czu7Y2q0eksXw_Content tySequence__F1qNdU7m0Czu7Y2q0eksXw_Content;
typedef struct tySequence__r3Kz9breImOXyFFoJ29aBM8Q tySequence__r3Kz9breImOXyFFoJ29aBM8Q;
typedef struct tySequence__r3Kz9breImOXyFFoJ29aBM8Q_Content tySequence__r3Kz9breImOXyFFoJ29aBM8Q_Content;
typedef struct tySequence__qBes3XzcQQ9cyia9bRwnmbJw tySequence__qBes3XzcQQ9cyia9bRwnmbJw;
typedef struct tySequence__qBes3XzcQQ9cyia9bRwnmbJw_Content tySequence__qBes3XzcQQ9cyia9bRwnmbJw_Content;
typedef struct tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw;
typedef struct tySequence__Vl1abU3gfp0RqCb1KKfmDA tySequence__Vl1abU3gfp0RqCb1KKfmDA;
typedef struct tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content;
typedef struct tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw;
typedef struct tySequence__qyyNkmlc4fzOzelC8spUkQ tySequence__qyyNkmlc4fzOzelC8spUkQ;
typedef struct tySequence__qyyNkmlc4fzOzelC8spUkQ_Content tySequence__qyyNkmlc4fzOzelC8spUkQ_Content;
typedef struct tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA;
typedef struct tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ_Content tySequence__IHUFRsFxZNv7YydiUO2esQ_Content;
typedef struct tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ;
typedef struct tySequence__orxtl6CusdjXleqrxi67gw tySequence__orxtl6CusdjXleqrxi67gw;
typedef struct tySequence__orxtl6CusdjXleqrxi67gw_Content tySequence__orxtl6CusdjXleqrxi67gw_Content;
typedef struct tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ;
typedef struct tySequence__K0j67V58u5FW0dCC534FQw tySequence__K0j67V58u5FW0dCC534FQw;
typedef struct tySequence__K0j67V58u5FW0dCC534FQw_Content tySequence__K0j67V58u5FW0dCC534FQw_Content;
typedef struct tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ;
typedef struct tySequence__UE4b6iUkm1b3zTPamTTkDw tySequence__UE4b6iUkm1b3zTPamTTkDw;
typedef struct tySequence__UE4b6iUkm1b3zTPamTTkDw_Content tySequence__UE4b6iUkm1b3zTPamTTkDw_Content;
typedef struct tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg;
typedef struct tySequence__FmsTQiIcS9arxHxs3QY48vA tySequence__FmsTQiIcS9arxHxs3QY48vA;
typedef struct tySequence__FmsTQiIcS9arxHxs3QY48vA_Content tySequence__FmsTQiIcS9arxHxs3QY48vA_Content;
typedef struct tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ;
typedef struct tyObject_Table__uaQEKxLZNO5fpFluyxnhTg tyObject_Table__uaQEKxLZNO5fpFluyxnhTg;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content;
typedef struct tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q;
typedef struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ tySequence__vb3AGHvMJTxdOSSwMmBmTQ;
typedef struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content;
typedef struct tyTuple__F1mMODXmKFMNQ5rLCtcv0Q tyTuple__F1mMODXmKFMNQ5rLCtcv0Q;
typedef struct tySequence__apM9bRAO19cVjhWlxqd1PGeA tySequence__apM9bRAO19cVjhWlxqd1PGeA;
typedef struct tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content;
typedef struct tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw;
typedef struct tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA;
typedef struct tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ;
typedef struct tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig;
typedef struct tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ;
typedef struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw tySequence__9bW2eTK9b7vXE70Sx5VPH1mw;
typedef struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content;
typedef struct tyTuple__bnJwOH0eJlAwCAMbr1inhw tyTuple__bnJwOH0eJlAwCAMbr1inhw;
typedef struct tyTuple__YG7h1OUHzgfgTeH9cl0U0dw tyTuple__YG7h1OUHzgfgTeH9cl0U0dw;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__tG5yYi8DnD7bl00aT9cgctQ tyTuple__tG5yYi8DnD7bl00aT9cgctQ;
typedef struct tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ;
typedef struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg;
typedef struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content;
typedef struct tySequence__yUWoZehF86MIc40opFgacw tySequence__yUWoZehF86MIc40opFgacw;
typedef struct tySequence__yUWoZehF86MIc40opFgacw_Content tySequence__yUWoZehF86MIc40opFgacw_Content;
typedef struct tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw;
typedef struct tyTuple__gnRkA1L4XiR4uByriyHW8Q tyTuple__gnRkA1L4XiR4uByriyHW8Q;
typedef struct tySequence__nSO1ltijM4vhc0UrrXKEqA tySequence__nSO1ltijM4vhc0UrrXKEqA;
typedef struct tySequence__nSO1ltijM4vhc0UrrXKEqA_Content tySequence__nSO1ltijM4vhc0UrrXKEqA_Content;
typedef struct tyTuple__CvjVmQeIfivirDme2r5MRw tyTuple__CvjVmQeIfivirDme2r5MRw;
typedef struct tyTuple__2QDyOgS51ZMPO0W1pWCY6g tyTuple__2QDyOgS51ZMPO0W1pWCY6g;
typedef struct tyTuple__UbCNQED4XJUgxOgPHJUcAQ tyTuple__UbCNQED4XJUgxOgPHJUcAQ;
typedef struct tySequence__juxPMVNF1FoR2ltzeQu8NQ tySequence__juxPMVNF1FoR2ltzeQu8NQ;
typedef struct tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content;
typedef struct tyTuple__zExIg9bDTcVf2FHROUpzoow tyTuple__zExIg9bDTcVf2FHROUpzoow;
typedef struct tyTuple__XrHNJHOzS3O7uwF9bvCySiA tyTuple__XrHNJHOzS3O7uwF9bvCySiA;
typedef struct tyTuple__EdLY4EJQ37VFgbAn5g5rXQ tyTuple__EdLY4EJQ37VFgbAn5g5rXQ;
typedef struct tyTuple__OtlgAx3kBps9cOSMNDZSzBA tyTuple__OtlgAx3kBps9cOSMNDZSzBA;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ;
typedef struct tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw;
typedef struct tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q;
typedef struct tyTuple__O3g9a8zTXSX36ljWponcAoA tyTuple__O3g9a8zTXSX36ljWponcAoA;
typedef struct tyObject_TFullReg__kL8NONjyku1Uli8eXEVZ0A tyObject_TFullReg__kL8NONjyku1Uli8eXEVZ0A;
typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
typedef struct tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w;
typedef struct tyTuple__48iPM3yLBKU5nyEuYwJvuQ tyTuple__48iPM3yLBKU5nyEuYwJvuQ;
typedef struct tyTuple__R3ddFrA0G9buJY57Qhf9cTpg tyTuple__R3ddFrA0G9buJY57Qhf9cTpg;
typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
typedef struct tyTuple__7rmdAMLZ8fDd79brQn2ixZA tyTuple__7rmdAMLZ8fDd79brQn2ixZA;
typedef struct tyTuple__qPXRCRNQuZLLKto7CIIEzw tyTuple__qPXRCRNQuZLLKto7CIIEzw;
typedef struct tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg;
typedef struct tyTuple__6kG8KAxm9aXPdLdlxcxqJJw tyTuple__6kG8KAxm9aXPdLdlxcxqJJw;
typedef struct tyTuple__TRK7rrwoha9bbDAdPWsqJMw tyTuple__TRK7rrwoha9bbDAdPWsqJMw;
typedef struct tyTuple__V1VWX9bHapuzCjpMfFfys5Q tyTuple__V1VWX9bHapuzCjpMfFfys5Q;
typedef struct tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw;
typedef struct tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg;
typedef struct tyTuple__anemVmHCFglLFt6LiEhFvg tyTuple__anemVmHCFglLFt6LiEhFvg;
typedef struct tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ;
typedef struct tyTuple__MaWaKZwaGUqCXKsSK12rVg tyTuple__MaWaKZwaGUqCXKsSK12rVg;
typedef struct tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA;
typedef struct tyTuple__1xWeGeoNoZxaLhTUDDWYyA tyTuple__1xWeGeoNoZxaLhTUDDWYyA;
typedef struct tyTuple__MZVSn3SE3XUBJOaMu7ofRQ tyTuple__MZVSn3SE3XUBJOaMu7ofRQ;
typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
typedef struct tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA;
typedef struct tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA;
typedef struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ tySequence__YxH9cgSorHRI8ZPzHf47NNQ;
typedef struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content;
typedef struct tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ;
typedef struct tyTuple__lGHLhAAUpxgfrnQkIzNrMw tyTuple__lGHLhAAUpxgfrnQkIzNrMw;
typedef struct tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA;
typedef struct tyTuple__V6P73hvHy70PBBwharKjig tyTuple__V6P73hvHy70PBBwharKjig;
struct tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg {
	NI32 pc;
	NI32 usedRegisters;
};
struct tySequence__Fc8Q26tsngy2yxcpyrnT4Q {
  NI len; tySequence__Fc8Q26tsngy2yxcpyrnT4Q_Content* p;
};
struct tyObject_Table__lPs28yjGTxD0LzUoPspSBQ {
	tySequence__Fc8Q26tsngy2yxcpyrnT4Q data;
	NI counter;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {
	TNimTypeV2* m_type;
};
struct tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ {
	RootObj Sup;
	tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen;
};
struct tySequence__YdLNCDKYeipzJx3I8Xw82Q {
  NI len; tySequence__YdLNCDKYeipzJx3I8Xw82Q_Content* p;
};
struct tySequence__TLbZ2GqL3Zio1f8bNpj2NA {
  NI len; tySequence__TLbZ2GqL3Zio1f8bNpj2NA_Content* p;
};
struct tySequence__GH1mmNKNA2QP4n1tnxJf1w {
  NI len; tySequence__GH1mmNKNA2QP4n1tnxJf1w_Content* p;
};
struct tyObject_TNodeTable__RKuYIY5Phq1xnepo5DZI2g {
	NI counter;
	tySequence__GH1mmNKNA2QP4n1tnxJf1w data;
	NIM_BOOL ignoreTypes;
};
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg {
  NI len; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content* p;
};
typedef NU8 tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg;
typedef NU8 tySet_tyEnum_TSandboxFlag__II2KpGKWwJH9bdjbBum5d1g;
struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
struct tySequence__TEgqV1E9aHqnwBUoeXjBI9aA {
  NI len; tySequence__TEgqV1E9aHqnwBUoeXjBI9aA_Content* p;
};
struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og {
  NI len; tySequence__pUxI6Ljo6IKKHXKOZkQ7Og_Content* p;
};
struct tyObject_Table__tro5f9chxPVpES1mQpDwZtQ {
	tySequence__pUxI6Ljo6IKKHXKOZkQ7Og data;
	NI counter;
};
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyObject_Profiler__YI4zs2CaXXndlYireD0I8A {
	NF tEnter;
	tyObject_TStackFrame__a20zU43j9cYHpYOOr1c2hZQ* tos;
};
struct tySequence__fnH5Zt4fsGx0AgDTOw8pKw {
  NI len; tySequence__fnH5Zt4fsGx0AgDTOw8pKw_Content* p;
};
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA {
  NI len; tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content* p;
};
typedef NI tyArray__k7D0lwfLmYccbQxUd49bbcQ[34];
struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA {
	NI elems;
	NI counter;
	NI max;
	tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* head;
	tySequence__ZeWVlH6DqG79b1pTDhrrUYA data;
	tyArray__k7D0lwfLmYccbQxUd49bbcQ a;
};
struct tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew {
	tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ Sup;
	tySequence__YdLNCDKYeipzJx3I8Xw82Q code;
	tySequence__TLbZ2GqL3Zio1f8bNpj2NA debug;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* globals;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constants;
	tyObject_TNodeTable__RKuYIY5Phq1xnepo5DZI2g contstantTab;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg types;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* currentExceptionA;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* currentExceptionB;
	NI exceptionInstr;
	tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* prc;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* callsite;
	tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg mode;
	tySet_tyEnum_TSandboxFlag__II2KpGKWwJH9bdjbBum5d1g features;
	NIM_BOOL traceActive;
	NI loopIterations;
	NI callDepth;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA comesFromHeuristic;
	tySequence__TEgqV1E9aHqnwBUoeXjBI9aA callbacks;
	tyObject_Table__tro5f9chxPVpES1mQpDwZtQ callbackIndex;
	NimStringV2 errorFlag;
	tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache;
	tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config;
	tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph;
	NI oldErrorCount;
	tyObject_Profiler__YI4zs2CaXXndlYireD0I8A profiler;
	NI* templInstCounter;
	tySequence__fnH5Zt4fsGx0AgDTOw8pKw vmstateDiff;
	tyObject_Table__lPs28yjGTxD0LzUoPspSBQ procToCodePos;
	NIM_BOOL cannotEval;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA locals;
};
struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA {
	NI32 module;
	NI32 item;
};
typedef NU8 tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q;
typedef NU16 tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg;
typedef NU64 tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
typedef NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw {
	tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ k;
	tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg storage;
	tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* lode;
	NimStringV2 snippet;
};
struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
union{
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* gcUnsafetyReason;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* transformedBody;
} _kind_1;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* guard;
	NI bitsize;
	NI alignment;
} _kind_2;
};
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ast;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig* annex;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constraint;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* instantiatedFrom;
};
typedef NU8 tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA;
typedef NU8 tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA;
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typField;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw flags;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident;
} _kind_5;
	struct {
	tySequence__9ahcSjIErJohSBBFLwuF56Q sons;
} _kind_6;
};
};
typedef NU8 tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU8 tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA;
typedef NU8 tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
struct tySequence__b9bG03Q6unwlMU0dM7uOPIA {
  NI len; tySequence__b9bG03Q6unwlMU0dM7uOPIA_Content* p;
};
struct tySequence__grdS5PdBBxkq9bxi4lFAdAw {
  NI len; tySequence__grdS5PdBBxkq9bxi4lFAdAw_Content* p;
};
struct tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg {
	tySequence__b9bG03Q6unwlMU0dM7uOPIA blocks;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
	tySequence__grdS5PdBBxkq9bxi4lFAdAw regInfo;
};
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
  NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* label;
	tySequence__qwqHTkRvwhrRyENtudHQ7g fixups;
};
typedef NU8 tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A;
struct tyTuple__9ap1MJ9bVBlP34AqrUq01n8w {
	NIM_BOOL Field0;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A Field1;
};
typedef NU8 tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg;
typedef NU8 tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ;
typedef NU64 tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind;
	tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ callConv;
	tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A flags;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg sons;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
	NI64 size;
	NI16 align;
	NI16 paddingAtEnd;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typeInst;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA uniqueId;
};
typedef NU8 tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
typedef NU8 tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ;
typedef NU8 tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw;
typedef NU8 tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw;
typedef NU8 tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw;
struct tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA {
	tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw targetCPU;
	tyEnum_TSystemCPU__3f9cinURS2hpZEHtBX69bm9cw hostCPU;
	tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw targetOS;
	tyEnum_TSystemOS__Ze8KQVBa9adXItTgDtW0Iqw hostOS;
	NI intSize;
	NI floatSize;
	NI ptrSize;
	NimStringV2 tnl;
};
typedef NU64 tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
typedef NU8 tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw;
struct tySequence__E0kio2ZnplNTuln9bsnljSA {
  NI len; tySequence__E0kio2ZnplNTuln9bsnljSA_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
struct tySequence__hTEiKNj3evQAjIXUI21elA {
  NI len; tySequence__hTEiKNj3evQAjIXUI21elA_Content* p;
};
struct tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA trackPos;
	NIM_BOOL trackPosAttached;
	tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw errorOutputs;
	tySequence__E0kio2ZnplNTuln9bsnljSA msgContext;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA lastError;
	tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A filenameToIndexTbl;
	tySequence__hTEiKNj3evQAjIXUI21elA fileInfos;
	NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__o3jmnnVs6HdBg5KcNAzYiQ;
typedef NU8 tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ;
typedef NU8 tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg;
typedef NU8 tyEnum_ExceptionSystem__dJ6sXW7k8NDYNNBUjVZmnw;
typedef NU8 tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw {
	tySequence__4eRCaZmrYLLw2k30GPTiMw data;
	NI counter;
};
typedef NU32 tySet_tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ;
typedef NU8 tySet_tyEnum_LegacyFeature__yvNVqOQTgcxHpvo1MvfBfA;
typedef NU8 tyEnum_IdeCmd__mZiSMTDWSAKKDbZfXDQwng;
typedef NU8 tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA;
typedef NU8 tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw[13];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tySet_tyEnum_StdOrrKind__so1PI9cHP1cN622ePtqa0yw;
struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q {
  NI len; tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA* result_p0, void* ClE_0);
void* ClE_0;
} tyProc__QQyR5yGA47tr5TwLxcC4Gw;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output_p0, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__mHEDvws7FmOtnFhcQsM8UA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 msg_p2, tyEnum_Severity__mHEDvws7FmOtnFhcQsM8UA severity_p3, void* ClE_0);
void* ClE_0;
} tyProc__DA9aR62IikoxFqfC5rIT9cuw;
struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg {
	tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw backend;
	tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA target;
	NI linesCompiled;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A globalOptions;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* macrosToExpand;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* arcToExpand;
	tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw m;
	tyEnum_FilenameOption__o3jmnnVs6HdBg5KcNAzYiQ filenameOption;
	NimStringV2 unitSep;
	NI evalTemplateCounter;
	NI evalMacroCounter;
	NI8 exitcode;
	tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ cmd;
	NimStringV2 cmdInput;
	NIM_BOOL projectIsCmd;
	NIM_BOOL implicitCmd;
	tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg selectedGC;
	tyEnum_ExceptionSystem__dJ6sXW7k8NDYNNBUjVZmnw exc;
	NIM_BOOL hintProcessingDots;
	NI verbosity;
	NI numberOfProcessors;
	NF lastCmdTime;
	tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA symbolFiles;
	NI spellSuggestMax;
	tyObject_HashSet__8IGL0eIK5PYDsNGVA78Wmw cppDefines;
	NimStringV2 headerFile;
	NimStringV2 nimbasePattern;
	tySet_tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ features;
	tySet_tyEnum_LegacyFeature__yvNVqOQTgcxHpvo1MvfBfA legacyFeatures;
	NimStringV2 arguments;
	tyEnum_IdeCmd__mZiSMTDWSAKKDbZfXDQwng ideCmd;
	tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA cCompiler;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw modifiedyNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw cmdlineNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw foreignPackageNotes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw notes;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw warningAsErrors;
	tySet_tyEnum_TMsgKind__4CaO62Zp2vRXWqMPzLEOAw mainPackageNotes;
	NI mainPackageId;
	NI errorCounter;
	NI hintCounter;
	NI warnCounter;
	NI errorMax;
	NI maxLoopIterationsVM;
	NI maxCallDepthVM;
	NIM_BOOL isVmTrace;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* configVars;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* symbols;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* packageCache;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
	NimStringV2 outFile;
	NimStringV2 outDir;
	NimStringV2 jsonBuildFile;
	NimStringV2 prefixDir;
	NimStringV2 libpath;
	NimStringV2 nimcacheDir;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* dllOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* moduleOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* cfileSpecificOptions;
	NimStringV2 projectName;
	NimStringV2 projectPath;
	NimStringV2 projectFull;
	NIM_BOOL projectIsStdin;
	NimStringV2 stdinFile;
	tySet_tyEnum_StdOrrKind__so1PI9cHP1cN622ePtqa0yw lastMsgWasDot;
	NI32 projectMainIdx;
	NI32 projectMainIdx2;
	NimStringV2 command;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
	NimStringV2 commandLine;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
	NimStringV2 docSeeSrcUrl;
	NimStringV2 docRoot;
	NimStringV2 docCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
	NimStringV2 linkOptionsCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
	NimStringV2 linkOptions;
	NimStringV2 compileOptions;
	NimStringV2 cCompilerPath;
	tySequence__xOJ2kx2lq9bBfIm3IXnde3Q toCompile;
	tyProc__QQyR5yGA47tr5TwLxcC4Gw suggestionResultHook;
	NI suggestVersion;
	NI suggestMaxResults;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA lastLineInfo;
	tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
	tyProc__DA9aR62IikoxFqfC5rIT9cuw structuredErrorHook;
	NimStringV2 cppCustomNamespace;
	NimStringV2 nimMainPrefix;
	tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ* vmProfileData;
	NIM_BOOL expandProgress;
	NI expandLevels;
	NimStringV2 expandNodeResult;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA expandPosition;
	NimStringV2 currentConfigDir;
	NI clientProcessId;
};
typedef NU8 tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ;
typedef NU16 tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg;
struct tySequence__TfHJycarvNts8E4mVG4Mfg {
  NI len; tySequence__TfHJycarvNts8E4mVG4Mfg_Content* p;
};
struct tySequence__5reviU45axUMPQgL9aoENrg {
  NI len; tySequence__5reviU45axUMPQgL9aoENrg_Content* p;
};
struct tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg {
	tySequence__5reviU45axUMPQgL9aoENrg pm;
};
struct tySequence__dtr79aXjHrgHuH79ac55I2aw {
  NI len; tySequence__dtr79aXjHrgHuH79ac55I2aw_Content* p;
};
struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw {
  NI len; tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content* p;
};
struct tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg {
	tySequence__8y0Gi4GwtXi2wk2mK1IOzw data;
	NI counter;
};
struct tySequence__C2ivDnhTZ6IxAdui1rfuqw {
  NI len; tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content* p;
};
struct tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w {
	tySequence__C2ivDnhTZ6IxAdui1rfuqw data;
	NI counter;
};
struct tySequence__3vEEVfBECLN6NIRA3FIp5g {
  NI len; tySequence__3vEEVfBECLN6NIRA3FIp5g_Content* p;
};
struct tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA {
	tySequence__3vEEVfBECLN6NIRA3FIp5g data;
	NI counter;
};
typedef tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA tyArray__HTPiakF26bUQGH9bgtmrtkA[7];
struct tySequence__9aSa87aKMiolq9a7z3kC0jTw {
  NI len; tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content* p;
};
struct tyObject_Table__tEqt8LkShErhjQ9acvGyE7g {
	tySequence__9aSa87aKMiolq9a7z3kC0jTw data;
	NI counter;
};
struct tySequence__N589c2UsUgqqOITU2JfIuAQ {
  NI len; tySequence__N589c2UsUgqqOITU2JfIuAQ_Content* p;
};
struct tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw {
	tySequence__N589c2UsUgqqOITU2JfIuAQ data;
	NI counter;
};
struct tySequence__GYDW6wGgERshoSd16jJ3eQ {
  NI len; tySequence__GYDW6wGgERshoSd16jJ3eQ_Content* p;
};
struct tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw {
	tySequence__GYDW6wGgERshoSd16jJ3eQ data;
	NI counter;
};
struct tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ {
	tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw backend;
	tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg selectedGC;
	tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA cCompiler;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A globalOptions;
};
struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA {
  NI len; tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content* p;
};
struct tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg {
	NI counter;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA data;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
  NI len; tySequence__fdmz6VkIf1ewwrssKYqRFg_Content* p;
};
struct tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw {
	tySequence__fdmz6VkIf1ewwrssKYqRFg data;
	NI counter;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
  NI len; tySequence__kxu4GK0onha2t9bo86mdVAg_Content* p;
};
struct tyObject_Table__AC9bec2JdoOuC3xQePGWgmA {
	tySequence__kxu4GK0onha2t9bo86mdVAg data;
	NI counter;
};
struct tySequence__48JTohSgTy339bRxHzUD8KA {
  NI len; tySequence__48JTohSgTy339bRxHzUD8KA_Content* p;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
struct tySequence__fz0REU1l0nYmKHXgMLRrIg {
  NI len; tySequence__fz0REU1l0nYmKHXgMLRrIg_Content* p;
};
struct tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ {
	tySequence__fz0REU1l0nYmKHXgMLRrIg data;
	NI counter;
};
struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ {
  NI len; tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content* p;
};
struct tyObject_Table__w2vCG1OPnHmNolvQVT168g {
	tySequence__Ip9aV1IKO2gVdheNOM31DCQ data;
	NI counter;
};
struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg {
  NI len; tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content* p;
};
struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA {
  NI len; tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content* p;
};
struct tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA {
	tySequence__Wd0Vle6gxRCPPoSlNEvfTA data;
	NI counter;
	NIM_BOOL isSorted;
};
struct tySequence__T7nNEWoEbKBa0G5Htr45Xw {
  NI len; tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content* p;
};
struct tyObject_Table__fZyCWkMwhdvr3pauCNDaag {
	tySequence__T7nNEWoEbKBa0G5Htr45Xw data;
	NI counter;
};
struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA {
  NI len; tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content* p;
};
struct tyObject_Table__5vmBY49areSIlgIs4A1LLKQ {
	tySequence__q9cHvMDDxYU1hSCdG4YwIhA data;
	NI counter;
};
struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA {
  NI len; tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content* p;
};
typedef tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* tyArray__EOkbZZXacNOZHC8p7xc7hw[65];
struct tySequence__vJcM7B74R2U5db9cxyXT9coA {
  NI len; tySequence__vJcM7B74R2U5db9cxyXT9coA_Content* p;
};
struct tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw {
	tySequence__vJcM7B74R2U5db9cxyXT9coA data;
	NI counter;
};
struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg {
  NI len; tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content* p;
};
struct tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg {
	tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg data;
	NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, tyProc__QieBhPPkGvcmpFg89a4ftcA) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* m_p1, NI32 fileIdx_p2);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__F2ahyGAjs3aNLJYEXzu07g) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* m_p1, NI32 fileIdx_p2);
struct tySequence__R9c39btP6BwOBBPnbaNUtMQg {
  NI len; tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content* p;
};
struct tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ {
	tySequence__R9c39btP6BwOBBPnbaNUtMQg data;
	NI counter;
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
  NI len; tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content* p;
};
struct tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw {
	tySequence__squ9b9bUH4OLHf6cEMrt6hVA data;
	NI counter;
};
struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw {
  NI len; tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content* p;
};
struct tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ {
	tySequence__3nALyQgqjnfK2Qjc6ny2Uw data;
	NI counter;
};
struct tySequence__WbW5Q8QVks0bQpUJSGmuVg {
  NI len; tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content* p;
};
typedef NU8 tyEnum_PipelinePass__kO50VlNfBJZtrNuD4VL9aTg;
typedef N_NIMCALL_PTR(void, tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2);
typedef N_NIMCALL_PTR(void, tyProc__kj3TYePLaHBuXxhRznQQNQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_p2);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__D3Q9bYoPIpHZVLfEIxpBssA) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* formal_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* actual_p2);
struct tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opNot;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opContains;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLe;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLt;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opAnd;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opOr;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opIsNil;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opEq;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opAdd;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opSub;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opMul;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opDiv;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLen;
};
struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw {
	tySequence__TfHJycarvNts8E4mVG4Mfg ifaces;
	tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg packed_0;
	tySequence__dtr79aXjHrgHuH79ac55I2aw encoders;
	tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg typeInstCache;
	tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w procInstCache;
	tyArray__HTPiakF26bUQGH9bgtmrtkA attachedOps;
	tyObject_Table__tEqt8LkShErhjQ9acvGyE7g methodsPerGenericType;
	tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw memberProcsPerType;
	tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw initializersPerType;
	tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA enumToStringProcs;
	tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A emittedTypeInfo;
	tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ startupPackedConfig;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg packageSyms;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA deps;
	tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw importDeps;
	NIM_BOOL suggestMode;
	NIM_BOOL invalidTransitiveClosure;
	NIM_BOOL interactive;
	NIM_BOOL withinSystem;
	tyObject_Table__AC9bec2JdoOuC3xQePGWgmA inclToMod;
	tySequence__48JTohSgTy339bRxHzUD8KA importStack;
	RootObj* backend;
	tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config;
	tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache;
	RootObj* vm;
	RootObj* repl;
	tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* usageSym;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA owners;
	tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ suggestSymbols;
	tyObject_Table__w2vCG1OPnHmNolvQVT168g suggestErrors;
	tySequence__kHjIdgrpmuSn9cUIIKpSiDg methods;
	tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA bucketTable;
	tyObject_Table__fZyCWkMwhdvr3pauCNDaag objectTree;
	tyObject_Table__5vmBY49areSIlgIs4A1LLKQ methodsPerType;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA dispatchers;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* systemModule;
	tyArray__EOkbZZXacNOZHC8p7xc7hw sysTypes;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg compilerprocs;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg exposed;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg packageTypes;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* emptyNode;
	tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw canonTypes;
	tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg symBodyHashes;
	tyProc__QieBhPPkGvcmpFg89a4ftcA importModuleCallback;
	tyProc__F2ahyGAjs3aNLJYEXzu07g includeFileCallback;
	tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ cacheSeqs;
	tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw cacheCounters;
	tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ cacheTables;
	tySequence__WbW5Q8QVks0bQpUJSGmuVg passes;
	tyEnum_PipelinePass__kO50VlNfBJZtrNuD4VL9aTg pipelinePass;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onDefinition;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onDefinitionResolveForward;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onUsage;
	tySequence__9ahcSjIErJohSBBFLwuF56Q globalDestructors;
	tyProc__kj3TYePLaHBuXxhRznQQNQ strongSemCheck;
	tyProc__D3Q9bYoPIpHZVLfEIxpBssA compatibleProps;
	tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen;
	tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ operators;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* cachedFiles;
	tySequence__9ahcSjIErJohSBBFLwuF56Q procGlobals;
};
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
typedef NU8 tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg[9];
typedef NU8 tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU32 tyArray__PPSU5X9aizf5OJq0lL4Og7A[4];
struct tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg {
	tyArray__PPSU5X9aizf5OJq0lL4Og7A udata;
};
typedef NU8 tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ;
typedef NU16 tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ;
struct tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA {
	RootObj Sup;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t20;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* targ21;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n2;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg3;
};
struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A {
	NI rc;
	NI rootIdx;
};
typedef N_CLOSURE_PTR(NIM_BOOL, TM__24XApAWKNvaMkcyklm8bNA_94) (void);
typedef NimStringV2 tyArray__YgExxhfgKcesA5EOUj1MOA[1];
typedef NU8 tyEnum_TSandboxFlag__II2KpGKWwJH9bdjbBum5d1g;
typedef NimStringV2 tyArray__Seu7uK9aaOSN0BK3EAjjSHw[4];
struct tyTuple__y6bKAf9a9aaVwun6lVDxSX7g {
	NI Field0;
	NI Field1;
	tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg Field2;
};
struct tySequence__Fc8Q26tsngy2yxcpyrnT4Q_Content { NI cap; tyTuple__y6bKAf9a9aaVwun6lVDxSX7g data[SEQ_DECL_SIZE]; };
struct tySequence__YdLNCDKYeipzJx3I8Xw82Q_Content { NI cap; NU64 data[SEQ_DECL_SIZE]; };
struct tySequence__TLbZ2GqL3Zio1f8bNpj2NA_Content { NI cap; tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA data[SEQ_DECL_SIZE]; };
struct tyObject_TNodePair__KE5IEbxbTGxhrXo6rzddjQ {
	NI h;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* key;
	NI val;
};
struct tySequence__GH1mmNKNA2QP4n1tnxJf1w_Content { NI cap; tyObject_TNodePair__KE5IEbxbTGxhrXo6rzddjQ data[SEQ_DECL_SIZE]; };
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content { NI cap; tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* data[SEQ_DECL_SIZE]; };
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_VmArgs__PuiloXB3J4yNffJquqRVvg* args_p0, void* ClE_0);
void* ClE_0;
} tyProc__c9bXGQkBnyyGGVw063jrwZw;
struct tySequence__TEgqV1E9aHqnwBUoeXjBI9aA_Content { NI cap; tyProc__c9bXGQkBnyyGGVw063jrwZw data[SEQ_DECL_SIZE]; };
struct tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ {
	NI Field0;
	NimStringV2 Field1;
	NI Field2;
};
struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og_Content { NI cap; tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ data[SEQ_DECL_SIZE]; };
struct tyTuple__ZQn9aE2eP9aC9aAInis8k8aDQ {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* Field0;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field1;
};
struct tySequence__fnH5Zt4fsGx0AgDTOw8pKw_Content { NI cap; tyTuple__ZQn9aE2eP9aC9aAInis8k8aDQ data[SEQ_DECL_SIZE]; };
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content { NI cap; tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* data[SEQ_DECL_SIZE]; };
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* data[SEQ_DECL_SIZE]; };
struct tySequence__b9bG03Q6unwlMU0dM7uOPIA_Content { NI cap; tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA data[SEQ_DECL_SIZE]; };
struct tySequence__grdS5PdBBxkq9bxi4lFAdAw_Content { NI cap; tyTuple__9ap1MJ9bVBlP34AqrUq01n8w data[SEQ_DECL_SIZE]; };
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA Field0;
	NimStringV2 Field1;
};
struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content { NI cap; tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ data[SEQ_DECL_SIZE]; };
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
	NI Field0;
	NimStringV2 Field1;
	NI32 Field2;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; };
struct tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw {
	NimStringV2 fullPath;
	NimStringV2 projPath;
	NimStringV2 shortName;
	NimStringV2 quotedName;
	NimStringV2 quotedFullName;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
	NimStringV2 dirtyFile;
	NimStringV2 hash;
	NIM_BOOL dirty;
};
struct tySequence__hTEiKNj3evQAjIXUI21elA_Content { NI cap; tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw data[SEQ_DECL_SIZE]; };
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
	NI Field0;
	NimStringV2 Field1;
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE]; };
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
typedef NU8 tySet_tyEnum_CfileFlag__qhMBL5cBz484papsb5WgFQ;
struct tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg {
	NimStringV2 nimname;
	NimStringV2 cname;
	NimStringV2 obj;
	tySet_tyEnum_CfileFlag__qhMBL5cBz484papsb5WgFQ flags;
	NimStringV2 customArgs;
};
struct tySequence__xOJ2kx2lq9bBfIm3IXnde3Q_Content { NI cap; tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg data[SEQ_DECL_SIZE]; };
struct tyObject_Iface__j1FkQxwEAKMJy1o9bap1xow {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA converters;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA patterns;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA pureEnums;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg interf;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg interfHidden;
	NimStringV2 uniqueName;
};
struct tySequence__TfHJycarvNts8E4mVG4Mfg_Content { NI cap; tyObject_Iface__j1FkQxwEAKMJy1o9bap1xow data[SEQ_DECL_SIZE]; };
typedef NU8 tyEnum_ModuleStatus__uT4B39a2dNaG9a9aunVdyhQtQ;
struct tySequence__PXIzfWocnrafGz5p3CP5LA {
  NI len; tySequence__PXIzfWocnrafGz5p3CP5LA_Content* p;
};
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
  NI len; tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content* p;
};
struct tySequence__OxRbUT0qZaZN5UjnqQjGPA {
  NI len; tySequence__OxRbUT0qZaZN5UjnqQjGPA_Content* p;
};
struct tySequence__ezS5mGPcRfBURJyMgqYVzA {
  NI len; tySequence__ezS5mGPcRfBURJyMgqYVzA_Content* p;
};
struct tySequence__wW7xkohjuUKO9aMaB0nt9cqA {
  NI len; tySequence__wW7xkohjuUKO9aMaB0nt9cqA_Content* p;
};
struct tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w {
	tySequence__OxRbUT0qZaZN5UjnqQjGPA nodes;
	tySequence__ezS5mGPcRfBURJyMgqYVzA withFlags;
	tySequence__wW7xkohjuUKO9aMaB0nt9cqA withTypes;
};
struct tySequence__b89aLriiJnVTD186H6zNIgg {
  NI len; tySequence__b89aLriiJnVTD186H6zNIgg_Content* p;
};
struct tySequence__hIPTk9aFdaMMVAOzEbnPyqg {
  NI len; tySequence__hIPTk9aFdaMMVAOzEbnPyqg_Content* p;
};
struct tySequence__YYy1721YAuPF0ajBYHd8Wg {
  NI len; tySequence__YYy1721YAuPF0ajBYHd8Wg_Content* p;
};
struct tySequence__UODJbvzmu39c3Ho9cqhSk9agQ {
  NI len; tySequence__UODJbvzmu39c3Ho9cqhSk9agQ_Content* p;
};
struct tySequence__F1qNdU7m0Czu7Y2q0eksXw {
  NI len; tySequence__F1qNdU7m0Czu7Y2q0eksXw_Content* p;
};
struct tySequence__r3Kz9breImOXyFFoJ29aBM8Q {
  NI len; tySequence__r3Kz9breImOXyFFoJ29aBM8Q_Content* p;
};
struct tySequence__qBes3XzcQQ9cyia9bRwnmbJw {
  NI len; tySequence__qBes3XzcQQ9cyia9bRwnmbJw_Content* p;
};
typedef NU8 tySet_tyEnum_ModuleBackendFlag__5FvIlwIIbpcHU0ZRU9a5hrQ;
struct tySequence__Vl1abU3gfp0RqCb1KKfmDA {
  NI len; tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content* p;
};
struct tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw {
	tySequence__Vl1abU3gfp0RqCb1KKfmDA data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__qyyNkmlc4fzOzelC8spUkQ {
  NI len; tySequence__qyyNkmlc4fzOzelC8spUkQ_Content* p;
};
struct tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw {
	tySequence__qyyNkmlc4fzOzelC8spUkQ data;
	NI counter;
	NI first;
	NI last;
};
struct tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA {
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ vals;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
  NI len; tySequence__IHUFRsFxZNv7YydiUO2esQ_Content* p;
};
struct tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg {
	tySequence__IHUFRsFxZNv7YydiUO2esQ vals;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tySequence__orxtl6CusdjXleqrxi67gw {
  NI len; tySequence__orxtl6CusdjXleqrxi67gw_Content* p;
};
struct tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ {
	tySequence__orxtl6CusdjXleqrxi67gw aside;
};
struct tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ {
	NimStringV2 definedSymbols;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg moduleFlags;
	tySequence__PXIzfWocnrafGz5p3CP5LA includes;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA imports;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w toReplay;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w topLevel;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w bodies;
	tySequence__b89aLriiJnVTD186H6zNIgg exports;
	tySequence__b89aLriiJnVTD186H6zNIgg hidden;
	tySequence__hIPTk9aFdaMMVAOzEbnPyqg reexports;
	tySequence__b89aLriiJnVTD186H6zNIgg compilerProcs;
	tySequence__48JTohSgTy339bRxHzUD8KA converters;
	tySequence__48JTohSgTy339bRxHzUD8KA methods;
	tySequence__48JTohSgTy339bRxHzUD8KA trmacros;
	tySequence__48JTohSgTy339bRxHzUD8KA pureEnums;
	tySequence__YYy1721YAuPF0ajBYHd8Wg typeInstCache;
	tySequence__UODJbvzmu39c3Ho9cqhSk9agQ procInstCache;
	tySequence__F1qNdU7m0Czu7Y2q0eksXw attachedOps;
	tySequence__r3Kz9breImOXyFFoJ29aBM8Q methodsPerGenericType;
	tySequence__YYy1721YAuPF0ajBYHd8Wg enumToStringProcs;
	tySequence__YYy1721YAuPF0ajBYHd8Wg methodsPerType;
	tySequence__qBes3XzcQQ9cyia9bRwnmbJw dispatchers;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ emittedTypeInfo;
	tySet_tyEnum_ModuleBackendFlag__5FvIlwIIbpcHU0ZRU9a5hrQ backendFlags;
	tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw syms;
	tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw types;
	tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA strings;
	tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg numbers;
	tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ man;
	tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ cfg;
};
struct tySequence__K0j67V58u5FW0dCC534FQw {
  NI len; tySequence__K0j67V58u5FW0dCC534FQw_Content* p;
};
struct tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ {
	tySequence__K0j67V58u5FW0dCC534FQw data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__UE4b6iUkm1b3zTPamTTkDw {
  NI len; tySequence__UE4b6iUkm1b3zTPamTTkDw_Content* p;
};
struct tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ {
	tySequence__UE4b6iUkm1b3zTPamTTkDw data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__FmsTQiIcS9arxHxs3QY48vA {
  NI len; tySequence__FmsTQiIcS9arxHxs3QY48vA_Content* p;
};
struct tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg {
	tySequence__FmsTQiIcS9arxHxs3QY48vA data;
	NI counter;
};
struct tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA {
	tyEnum_ModuleStatus__uT4B39a2dNaG9a9aunVdyhQtQ status;
	NIM_BOOL symsInit;
	NIM_BOOL typesInit;
	NIM_BOOL loadedButAliveSetChanged;
	tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ fromDisk;
	tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ syms;
	tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ types;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module;
	tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg iface;
	tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg ifaceHidden;
};
struct tySequence__5reviU45axUMPQgL9aoENrg_Content { NI cap; tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA data[SEQ_DECL_SIZE]; };
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
  NI len; tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content* p;
};
struct tyObject_Table__uaQEKxLZNO5fpFluyxnhTg {
	tySequence__9cnx3zXnWzeclW8Ko4oUgAQ data;
	NI counter;
};
struct tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ {
	NI32 thisModule;
	NI32 lastFile;
	NU32 lastLit;
	tyObject_Table__uaQEKxLZNO5fpFluyxnhTg filenames;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg pendingTypes;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA pendingSyms;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA typeMarker;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA symMarker;
	tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config;
};
struct tySequence__dtr79aXjHrgHuH79ac55I2aw_Content { NI cap; tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ data[SEQ_DECL_SIZE]; };
struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ {
  NI len; tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content* p;
};
struct tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__vb3AGHvMJTxdOSSwMmBmTQ Field2;
};
struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content { NI cap; tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q data[SEQ_DECL_SIZE]; };
struct tySequence__apM9bRAO19cVjhWlxqd1PGeA {
  NI len; tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content* p;
};
struct tyTuple__F1mMODXmKFMNQ5rLCtcv0Q {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__apM9bRAO19cVjhWlxqd1PGeA Field2;
};
struct tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content { NI cap; tyTuple__F1mMODXmKFMNQ5rLCtcv0Q data[SEQ_DECL_SIZE]; };
struct tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig {
	NU32 module;
	NI32 item;
};
struct tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ {
	NI module;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig packed_0;
};
struct tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA {
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ id;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
};
struct tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA Field2;
};
struct tySequence__3vEEVfBECLN6NIRA3FIp5g_Content { NI cap; tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw data[SEQ_DECL_SIZE]; };
struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw {
  NI len; tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content* p;
};
struct tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__9bW2eTK9b7vXE70Sx5VPH1mw Field2;
};
struct tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content { NI cap; tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ data[SEQ_DECL_SIZE]; };
struct tyTuple__bnJwOH0eJlAwCAMbr1inhw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA Field2;
};
struct tySequence__N589c2UsUgqqOITU2JfIuAQ_Content { NI cap; tyTuple__bnJwOH0eJlAwCAMbr1inhw data[SEQ_DECL_SIZE]; };
struct tyTuple__YG7h1OUHzgfgTeH9cl0U0dw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field2;
};
struct tySequence__GYDW6wGgERshoSd16jJ3eQ_Content { NI cap; tyTuple__YG7h1OUHzgfgTeH9cl0U0dw data[SEQ_DECL_SIZE]; };
struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content { NI cap; tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* data[SEQ_DECL_SIZE]; };
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
	NI Field0;
	NI32 Field1;
	tySequence__48JTohSgTy339bRxHzUD8KA Field2;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content { NI cap; tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE]; };
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
	NI Field0;
	NI32 Field1;
	NI32 Field2;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content { NI cap; tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE]; };
struct tySequence__48JTohSgTy339bRxHzUD8KA_Content { NI cap; NI32 data[SEQ_DECL_SIZE]; };
struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg {
  NI len; tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content* p;
};
struct tySequence__yUWoZehF86MIc40opFgacw {
  NI len; tySequence__yUWoZehF86MIc40opFgacw_Content* p;
};
struct tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw {
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA s;
	NI len;
};
struct tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ {
	tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg lineInfo;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA sym;
	tySequence__yUWoZehF86MIc40opFgacw caughtExceptions;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw caughtExceptionsSet;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw isDecl;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw isGenericInstance;
	NI32 fileIndex;
	NIM_BOOL trackCaughtExceptions;
	NIM_BOOL isSorted;
};
struct tyTuple__tG5yYi8DnD7bl00aT9cgctQ {
	NI Field0;
	NI32 Field1;
	tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ Field2;
};
struct tySequence__fz0REU1l0nYmKHXgMLRrIg_Content { NI cap; tyTuple__tG5yYi8DnD7bl00aT9cgctQ data[SEQ_DECL_SIZE]; };
struct tySequence__nSO1ltijM4vhc0UrrXKEqA {
  NI len; tySequence__nSO1ltijM4vhc0UrrXKEqA_Content* p;
};
struct tyTuple__gnRkA1L4XiR4uByriyHW8Q {
	NI Field0;
	NI32 Field1;
	tySequence__nSO1ltijM4vhc0UrrXKEqA Field2;
};
struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content { NI cap; tyTuple__gnRkA1L4XiR4uByriyHW8Q data[SEQ_DECL_SIZE]; };
struct tyTuple__CvjVmQeIfivirDme2r5MRw {
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA Field0;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* Field1;
};
struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content { NI cap; tyTuple__CvjVmQeIfivirDme2r5MRw data[SEQ_DECL_SIZE]; };
struct tyTuple__2QDyOgS51ZMPO0W1pWCY6g {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field0;
	NI Field1;
};
struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content { NI cap; tyTuple__2QDyOgS51ZMPO0W1pWCY6g data[SEQ_DECL_SIZE]; };
struct tySequence__juxPMVNF1FoR2ltzeQu8NQ {
  NI len; tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content* p;
};
struct tyTuple__UbCNQED4XJUgxOgPHJUcAQ {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__juxPMVNF1FoR2ltzeQu8NQ Field2;
};
struct tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content { NI cap; tyTuple__UbCNQED4XJUgxOgPHJUcAQ data[SEQ_DECL_SIZE]; };
struct tyTuple__zExIg9bDTcVf2FHROUpzoow {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA Field2;
};
struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content { NI cap; tyTuple__zExIg9bDTcVf2FHROUpzoow data[SEQ_DECL_SIZE]; };
struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content { NI cap; tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA data[SEQ_DECL_SIZE]; };
typedef NU8 tyArray__dnD8kjh6rJ1Yy5jHvid0Ow[16];
struct tyTuple__XrHNJHOzS3O7uwF9bvCySiA {
	NI Field0;
	tyArray__dnD8kjh6rJ1Yy5jHvid0Ow Field1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field2;
};
struct tySequence__vJcM7B74R2U5db9cxyXT9coA_Content { NI cap; tyTuple__XrHNJHOzS3O7uwF9bvCySiA data[SEQ_DECL_SIZE]; };
struct tyTuple__EdLY4EJQ37VFgbAn5g5rXQ {
	NI Field0;
	NI Field1;
	tyArray__dnD8kjh6rJ1Yy5jHvid0Ow Field2;
};
struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content { NI cap; tyTuple__EdLY4EJQ37VFgbAn5g5rXQ data[SEQ_DECL_SIZE]; };
struct tyTuple__OtlgAx3kBps9cOSMNDZSzBA {
	NI Field0;
	NimStringV2 Field1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field2;
};
struct tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content { NI cap; tyTuple__OtlgAx3kBps9cOSMNDZSzBA data[SEQ_DECL_SIZE]; };
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
	NI Field0;
	NimStringV2 Field1;
	NI64 Field2;
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content { NI cap; tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE]; };
struct tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw {
	tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q* root;
	NI entries;
};
struct tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ {
	NI Field0;
	NimStringV2 Field1;
	tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw Field2;
};
struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content { NI cap; tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ data[SEQ_DECL_SIZE]; };
typedef N_NIMCALL_PTR(tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ*, tyProc__TVHQTM3bKm4Mi6Ul6zgzuQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__74nHWc2UIRu3iSR9akqDDBg) (tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ* p_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* topLevelStmt_p1);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__S9bLWKf8jgjzoiotAmEyFSw) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ* p_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p2);
struct tyTuple__O3g9a8zTXSX36ljWponcAoA {
	tyProc__TVHQTM3bKm4Mi6Ul6zgzuQ Field0;
	tyProc__74nHWc2UIRu3iSR9akqDDBg Field1;
	tyProc__S9bLWKf8jgjzoiotAmEyFSw Field2;
	NIM_BOOL Field3;
};
struct tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content { NI cap; tyTuple__O3g9a8zTXSX36ljWponcAoA data[SEQ_DECL_SIZE]; };
struct tyObject_VmArgs__PuiloXB3J4yNffJquqRVvg {
	NI ra;
	NI rb;
	NI rc;
	tyObject_TFullReg__kL8NONjyku1Uli8eXEVZ0A* slots;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* currentException;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA currentLineInfo;
};
struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
	NU32 Field0;
	NimStringV2 Field1;
};
struct tySequence__PXIzfWocnrafGz5p3CP5LA_Content { NI cap; tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE]; };
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content { NI cap; NU32 data[SEQ_DECL_SIZE]; };
struct tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w {
	NU32 x;
	NU32 info;
};
struct tySequence__OxRbUT0qZaZN5UjnqQjGPA_Content { NI cap; tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w data[SEQ_DECL_SIZE]; };
struct tyTuple__48iPM3yLBKU5nyEuYwJvuQ {
	NI32 Field0;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw Field1;
};
struct tySequence__ezS5mGPcRfBURJyMgqYVzA_Content { NI cap; tyTuple__48iPM3yLBKU5nyEuYwJvuQ data[SEQ_DECL_SIZE]; };
struct tyTuple__R3ddFrA0G9buJY57Qhf9cTpg {
	NI32 Field0;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field1;
};
struct tySequence__wW7xkohjuUKO9aMaB0nt9cqA_Content { NI cap; tyTuple__R3ddFrA0G9buJY57Qhf9cTpg data[SEQ_DECL_SIZE]; };
struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
	NU32 Field0;
	NI32 Field1;
};
struct tySequence__b89aLriiJnVTD186H6zNIgg_Content { NI cap; tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE]; };
struct tyTuple__7rmdAMLZ8fDd79brQn2ixZA {
	NU32 Field0;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field1;
};
struct tySequence__hIPTk9aFdaMMVAOzEbnPyqg_Content { NI cap; tyTuple__7rmdAMLZ8fDd79brQn2ixZA data[SEQ_DECL_SIZE]; };
struct tyTuple__qPXRCRNQuZLLKto7CIIEzw {
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field0;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field1;
};
struct tySequence__YYy1721YAuPF0ajBYHd8Wg_Content { NI cap; tyTuple__qPXRCRNQuZLLKto7CIIEzw data[SEQ_DECL_SIZE]; };
struct tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg {
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig key;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig sym;
	tySequence__qBes3XzcQQ9cyia9bRwnmbJw concreteTypes;
};
struct tySequence__UODJbvzmu39c3Ho9cqhSk9agQ_Content { NI cap; tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg data[SEQ_DECL_SIZE]; };
typedef NU8 tyEnum_TTypeAttachedOp__RefHoBI5deIfxIZqo3dS5Q;
struct tyTuple__6kG8KAxm9aXPdLdlxcxqJJw {
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field0;
	tyEnum_TTypeAttachedOp__RefHoBI5deIfxIZqo3dS5Q Field1;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field2;
};
struct tySequence__F1qNdU7m0Czu7Y2q0eksXw_Content { NI cap; tyTuple__6kG8KAxm9aXPdLdlxcxqJJw data[SEQ_DECL_SIZE]; };
struct tyTuple__TRK7rrwoha9bbDAdPWsqJMw {
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field0;
	NI Field1;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig Field2;
};
struct tySequence__r3Kz9breImOXyFFoJ29aBM8Q_Content { NI cap; tyTuple__TRK7rrwoha9bbDAdPWsqJMw data[SEQ_DECL_SIZE]; };
struct tySequence__qBes3XzcQQ9cyia9bRwnmbJw_Content { NI cap; tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig data[SEQ_DECL_SIZE]; };
typedef NU8 tyEnum_TLibKind__BkKL8ReLoyYDI7of9aQPV0A;
struct tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg {
	tyEnum_TLibKind__BkKL8ReLoyYDI7of9aQPV0A kind;
	NIM_BOOL generated;
	NIM_BOOL isOverridden;
	NU32 name;
	NI32 path;
};
struct tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw {
	NI32 id;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
	NU32 name;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig typ;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	NU32 info;
	NI32 ast;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig owner;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig guard;
	NI bitsize;
	NI alignment;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	NU32 externalName;
	tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg locFlags;
	tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg annex;
	NI32 constraint;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig instantiatedFrom;
};
struct tyTuple__V1VWX9bHapuzCjpMfFfys5Q {
	NI Field0;
	NI Field1;
	NI32 Field2;
	tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw Field3;
};
struct tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content { NI cap; tyTuple__V1VWX9bHapuzCjpMfFfys5Q data[SEQ_DECL_SIZE]; };
struct tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ {
	NI32 id;
	tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind;
	tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ callConv;
	tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A flags;
	tySequence__qBes3XzcQQ9cyia9bRwnmbJw types;
	NI32 n;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig sym;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig owner;
	NI64 size;
	NI16 align;
	NI16 paddingAtEnd;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig typeInst;
	NI32 nonUniqueId;
};
struct tyTuple__anemVmHCFglLFt6LiEhFvg {
	NI Field0;
	NI Field1;
	NI32 Field2;
	tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ Field3;
};
struct tySequence__qyyNkmlc4fzOzelC8spUkQ_Content { NI cap; tyTuple__anemVmHCFglLFt6LiEhFvg data[SEQ_DECL_SIZE]; };
struct tySequence__IHUFRsFxZNv7YydiUO2esQ_Content { NI cap; NI64 data[SEQ_DECL_SIZE]; };
struct tyTuple__MaWaKZwaGUqCXKsSK12rVg {
	NU32 Field0;
	NI32 Field1;
	NI32 Field2;
};
struct tySequence__orxtl6CusdjXleqrxi67gw_Content { NI cap; tyTuple__MaWaKZwaGUqCXKsSK12rVg data[SEQ_DECL_SIZE]; };
struct tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA {
	NI Field0;
	NI Field1;
	NI32 Field2;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* Field3;
};
struct tySequence__K0j67V58u5FW0dCC534FQw_Content { NI cap; tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA data[SEQ_DECL_SIZE]; };
struct tyTuple__1xWeGeoNoZxaLhTUDDWYyA {
	NI Field0;
	NI Field1;
	NI32 Field2;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field3;
};
struct tySequence__UE4b6iUkm1b3zTPamTTkDw_Content { NI cap; tyTuple__1xWeGeoNoZxaLhTUDDWYyA data[SEQ_DECL_SIZE]; };
struct tyTuple__MZVSn3SE3XUBJOaMu7ofRQ {
	NI Field0;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* Field1;
	tySequence__qBes3XzcQQ9cyia9bRwnmbJw Field2;
};
struct tySequence__FmsTQiIcS9arxHxs3QY48vA_Content { NI cap; tyTuple__MZVSn3SE3XUBJOaMu7ofRQ data[SEQ_DECL_SIZE]; };
struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
	NI Field0;
	NI32 Field1;
	NU32 Field2;
};
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content { NI cap; tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE]; };
struct tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA {
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ id;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
};
struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content { NI cap; tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA data[SEQ_DECL_SIZE]; };
struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ {
  NI len; tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content* p;
};
struct tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA {
	NI module;
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ sym;
	tySequence__YxH9cgSorHRI8ZPzHf47NNQ concreteTypes;
	tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ* inst;
};
struct tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content { NI cap; tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA data[SEQ_DECL_SIZE]; };
struct tyTuple__lGHLhAAUpxgfrnQkIzNrMw {
	NI Field0;
	tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA Field1;
};
struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content { NI cap; tyTuple__lGHLhAAUpxgfrnQkIzNrMw data[SEQ_DECL_SIZE]; };
struct tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA {
	NU16 line;
	NI16 col;
};
struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content { NI cap; tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA data[SEQ_DECL_SIZE]; };
struct tySequence__yUWoZehF86MIc40opFgacw_Content { NI cap; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg data[SEQ_DECL_SIZE]; };
struct tySequence__nSO1ltijM4vhc0UrrXKEqA_Content { NI cap; tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA* data[SEQ_DECL_SIZE]; };
struct tyTuple__V6P73hvHy70PBBwharKjig {
	NI Field0;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field1;
};
struct tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content { NI cap; tyTuple__V6P73hvHy70PBBwharKjig data[SEQ_DECL_SIZE]; };
struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content { NI cap; tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ data[SEQ_DECL_SIZE]; };
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg, getOrDefault__vmgen_u3703)(tyObject_Table__lPs28yjGTxD0LzUoPspSBQ t_p0, NI key_p1, tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg def_p2);
N_LIB_PRIVATE N_NIMCALL(void, setLen__vmdef_u640)(tySequence__YdLNCDKYeipzJx3I8Xw82Q* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__vmdef_u761)(tySequence__TLbZ2GqL3Zio1f8bNpj2NA* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___vmgen_u4086)(tyObject_Table__lPs28yjGTxD0LzUoPspSBQ* t_p0, NI key_p1, tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg val_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg, eqdup___vmdef_u3583)(tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, transformBody__transf_u26)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* prc_p2, tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA flags_p3);
static N_INLINE(NIM_BOOL, isCompileTimeProc__ast_u7159)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(NI, xjmp__vmgen_u472)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3);
N_LIB_PRIVATE N_NIMCALL(void, gABx__vmgen_u449)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI bx_p4);
N_LIB_PRIVATE N_NIMCALL(void, add__vmgen_u381)(tySequence__YdLNCDKYeipzJx3I8Xw82Q* x_p0, NU64 y_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__vmgen_u401)(tySequence__TLbZ2GqL3Zio1f8bNpj2NA* x_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA, eqdup___lineinfos_u2037)(tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA src_p0);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_u1227)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w* info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, eqdup___ast_u4580)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___vmdef_u1299)(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg** dest_p0, tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___vmdef_u1305)(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg** dest_p0, tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___vmdef_u1293)(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg** dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, genParams__vmgen_u3457)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* params_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__vmdef_u1206)(tySequence__grdS5PdBBxkq9bxi4lFAdAw* s_p0, NI newlen_p1);
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(NIM_BOOL, isGenericRoutineStrict__ast_u7092)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
static N_INLINE(NIM_BOOL, isGenericRoutine__ast_u7081)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(NIM_BOOL, isGenericParams__ast_u7070)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genGenericParams__vmgen_u3494)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* gp_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u4577)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u4574)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__vmgen_u5123)(tySequence__grdS5PdBBxkq9bxi4lFAdAw* x_p0, tyTuple__9ap1MJ9bVBlP34AqrUq01n8w y_p1);
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u825)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p2);
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u795)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(void, checkCanEval__vmgen_u2203)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
static N_INLINE(NIM_BOOL, importcCondVar__vmgen_u2192)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedBy__vmgen_u2163)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1);
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6254)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u4583)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_u2846)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, renderTree__renderer_u59)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg renderFlags_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, genRdVar__vmgen_u2530)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
static N_INLINE(NIM_BOOL, importcCond__vmgen_u2499)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isEmptyBody__vmgen_u2487)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, getBody__modulegraphs_u17880)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3255)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3261)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, loadProcBody__icZic_u21187)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config_p0, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p1, tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg* g_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p3);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3252)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, importcSym__vmgen_u2511)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p2);
N_LIB_PRIVATE N_NIMCALL(void, genGlobalInit__vmgen_u2520)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_u3215)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* father_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* son_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, getNullValue__vmgen_u2515)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, skipTypes__ast_u5379)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kinds_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeIT__ast_u4112)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2700)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, getSysType__magicsys_u55)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3378)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, getNullValueAux__vmgen_u2791)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* obj_p2, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4, NI* currPosition_p5);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, baseClass__ast_u5348)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3381)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p1);
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lastSon__ast_u5208)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**, X5BX5D___ast_u5211)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeI__ast_u4091)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u79)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_u2166)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NI, toInt__int128_u257)(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg arg_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg, lengthOrd__types_u1505)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elemType__types_u254)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___ast_u182)(tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg e_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getTemp__vmgen_u644)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* tt_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, skipTypesOrNil__ast_u6606)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kinds_p1);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A, getSlotKind__vmgen_u534)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getFreeRegister__vmgen_u572)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A k_p1, NI start_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmdef_u1296)(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA, bestEffort__vmgen_u561)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, astdef__ast_u4596)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(NI, genx__vmgen_u830)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p2);
N_LIB_PRIVATE N_NIMCALL(void, genAdditionalCopy__vmgen_u2376)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI dest_p3, NI idx_p4, NI value_p5);
N_LIB_PRIVATE N_NIMCALL(void, gABC__vmgen_u354)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* ctx_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI b_p4, NI c_p5);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA, whichAsgnOpc__vmgen_u1828)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, NIM_BOOL requiresCopy_p1);
N_LIB_PRIVATE N_NIMCALL(void, freeTemp__vmgen_u653)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI r_p1);
N_LIB_PRIVATE N_NIMCALL(void, genAsgn__vmgen_u2144)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI dest_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p2, NIM_BOOL requiresCopy_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fitsRegister__vmgen_u1796)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(void, setSlot__vmgen_u2153)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* v_p1);
static N_INLINE(NimStringV2, toFileLineCol__msgs_u701)(tyTuple__kN8up2W6YKc5YA9avn5mV5w* info_p0);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
static N_INLINE(void, addInt__stdZprivateZdigitsutils_u204)(NimStringV2* result_p0, NI x_p1);
N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_u187)(NimStringV2* result_p0, NI64 x_p1);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_u1598)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 errMsg_p2, tyTuple__kN8up2W6YKc5YA9avn5mV5w* info2_p3);
N_LIB_PRIVATE N_NIMCALL(void, genTypeLit__vmgen_u2482)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNode__ast_u4069)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0);
N_LIB_PRIVATE N_NIMCALL(void, genLit__vmgen_u1257)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(NI, genLiteral__vmgen_u1107)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(NI, nodeTableTestOrSet__treetab_u225)(tyObject_TNodeTable__RKuYIY5Phq1xnepo5DZI2g* t_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* key_p1, NI val_p2);
N_LIB_PRIVATE N_NIMCALL(NI, rawGenLiteral__vmgen_u1058)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, procIsCallback__vmgen_u3120)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toKey__vmgen_u3095)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__vmgen_u3169)(tyObject_Table__tro5f9chxPVpES1mQpDwZtQ t_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(NI*, X5BX5D___vmgen_u3252)(tyObject_Table__tro5f9chxPVpES1mQpDwZtQ* t_p0, NimStringV2 key_p1);
static N_INLINE(NIM_BOOL, dontInlineConstant__trees_u396)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* orig_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* cnst_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newIntNode__ast_u5200)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, NI64 intVal_p1);
N_LIB_PRIVATE N_NIMCALL(void, genMagic__vmgen_u1843)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3, tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg m_p4);
N_LIB_PRIVATE N_NIMCALL(void, genAndOr__vmgen_u1050)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI* dest_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTemp__vmgen_u1042)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI dest_p1);
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u800)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(void, patch__vmgen_u517)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI p_p1);
N_LIB_PRIVATE N_NIMCALL(void, genAddSubInt__vmgen_u1594)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInt8Lit__vmgen_u1564)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, gABI__vmgen_u421)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI b_p4, NI64 imm_p5);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABC__vmgen_u1432)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genNarrow__vmgen_u1449)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2);
N_LIB_PRIVATE N_NIMCALL(NI64, getSize__types_u3411)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newIntTypeNode__ast_u5414)(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg intVal_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg, firstOrd__types_u1182)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg, lastOrd__types_u1304)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1);
static N_INLINE(void, unused__vmgen_u1115)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI x_p2);
N_LIB_PRIVATE N_NIMCALL(void, genAsgnPatch__vmgen_u1366)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p1, NI value_p2);
N_LIB_PRIVATE N_NIMCALL(NI, genIndex__vmgen_u1350)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* arr_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___int128_u412)(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg a_p0, tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg b_p1);
N_LIB_PRIVATE N_NIMCALL(void, genCheckedObjAccessAux__vmgen_u1361)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(NI, genField__vmgen_u1333)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, genFieldDefect__astmsgs_u68)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 field_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disc_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newStrNode__ast_u5426)(NimStringV2 strVal_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3387)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___ast_u3375)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameBackendType__types_u637)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* x_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* y_p1);
N_LIB_PRIVATE N_NIMCALL(void, genCall__vmgen_u1262)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
static N_INLINE(NIM_BOOL, isEmptyType__ast_u7234)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getTempRange__vmgen_u665)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, NI n_p1, tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A kind_p2);
static N_INLINE(NI, signatureLen__ast_u5610)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(NI, genType__vmgen_u1155)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__types_u1826)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* a_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* b_p1, tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ flags_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_u3891)(tySequence__d8ZV4IMgHt9biik9cS9a0hrmg* x_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, eqdup___ast_u3384)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p0);
N_LIB_PRIVATE N_NIMCALL(void, freeTempRange__vmgen_u733)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI start_p1, NI n_p2);
N_LIB_PRIVATE N_NIMCALL(void, genNew__vmgen_u1391)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, needsAsgnPatch__vmgen_u1314)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genNewSeq__vmgen_u1399)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, genNewSeqOfCap__vmgen_u1409)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genUnaryABC__vmgen_u1419)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genUnaryABI__vmgen_u1425)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3, NI64 imm_p4);
N_LIB_PRIVATE N_NOINLINE(void, raiseAssert__stdZassertions_u15)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(void, genSetType__vmgen_u1510)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genCard__vmgen_u1626)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCnarrow__vmgen_u1500)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genNarrowU__vmgen_u1482)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2);
N_LIB_PRIVATE N_NIMCALL(NI, sizeLog2__vmgen_u1840)(NI64 typeSize_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u29)(NI64 xX60gensym4__p0);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCnarrowU__vmgen_u1505)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genConv__vmgen_u1606)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg_p2, NI* dest_p3, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p4, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p5);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__vmgen_u5570)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmgen_u5482)(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0);
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, unregisterCycle__system_u3127)(tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3270)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3288)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p0);
N_LIB_PRIVATE N_CLOSURE(NIM_BOOL, implicitConv__vmgen_u1615)(void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmgen_u5534)(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_u3497)(NIM_BOOL isDestroyAction_p0, tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p1, TNimTypeV2* desc_p2);
N_LIB_PRIVATE N_NIMCALL(void, genBinarySet__vmgen_u1523)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genVarargsABC__vmgen_u1552)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lowerSwap__lowerings_u156)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p3);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA, ldNullOpcode__vmgen_u1818)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, skipConv__types_u3729)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryStmtVar__vmgen_u1536)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCD__vmgen_u1439)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3);
N_LIB_PRIVATE N_NIMCALL(void, genVoidABC__vmgen_u1769)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opcode_p3);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2);
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, genBinaryStmt__vmgen_u1530)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2);
N_LIB_PRIVATE N_NIMCALL(void, genBindSym__vmgen_u1777)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr_p0, NimStringV2* a_p1, NI a_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___ast_u606)(tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg e_p0);
static N_INLINE(void, clearDest__vmgen_u836)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInt16Lit__vmgen_u1579)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genAsgn__vmgen_u2399)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p2, NIM_BOOL requiresCopy_p3);
N_LIB_PRIVATE N_NIMCALL(void, preventFalseAlias__vmgen_u2384)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI dest_p3, NI idx_p4, NI value_p5, NIM_BOOL enforceCopy_p6);
N_LIB_PRIVATE N_NIMCALL(void, genObjAccess__vmgen_u2690)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(void, genObjAccessAux__vmgen_u2666)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI a_p2, NI b_p3, NI* dest_p4, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p5);
N_LIB_PRIVATE N_NIMCALL(void, genCheckedObjAccess__vmgen_u2733)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(void, genArrAccess__vmgen_u2767)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(void, genArrAccessOpcode__vmgen_u2641)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p4);
N_LIB_PRIVATE N_NIMCALL(void, genDeref__vmgen_u2113)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, unneededIndirection__vmgen_u2019)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genAddr__vmgen_u2064)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, canElimAddr__vmgen_u2030)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, copyNode__ast_u6736)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, toVar__ast_u7268)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p0, tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isGlobal__vmgen_u1299)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genIf__vmgen_u1017)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNotOpr__vmgen_u847)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__vmgen_u968)(tySequence__qwqHTkRvwhrRyENtudHQ7g* x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmdef_u883)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, genCase__vmgen_u1119)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genWhile__vmgen_u862)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(NI, genLabel__vmgen_u499)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__vmgen_u874)(tySequence__b9bG03Q6unwlMU0dM7uOPIA* x_p0, tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA y_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTrue__ast_u7675)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, jmpBack__vmgen_u505)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI p_p2);
N_LIB_PRIVATE N_NIMCALL(void, popBlock__vmgen_u746)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI oldLen_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__vmdef_u986)(tySequence__b9bG03Q6unwlMU0dM7uOPIA* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, genBlock__vmgen_u917)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genReturn__vmgen_u1250)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, genRaise__vmgen_u1246)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, genBreak__vmgen_u947)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, genTry__vmgen_u1193)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, genVarSection__vmgen_u2862)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lowerTupleUnpacking__lowerings_u56)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getOwner__vmgen_u2186)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0);
N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_u366)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newSymNode__ast_u5168)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym_p0);
N_LIB_PRIVATE N_NIMCALL(void, genArrayConstr__vmgen_u3000)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genSetConstr__vmgen_u3022)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genObjConstr__vmgen_u3034)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elementType__ast_u5331)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5281)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(void, genTupleConstr__vmgen_u3071)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(void, genCastIntFloat__vmgen_u1631)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___int128_u933)(tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg a_p0, NI64 b_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int128_u973)(NI64 a_p0, tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg b_p1);
static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_u3655)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(void, optimizeJumps__vmgen_u3513)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI start_p1);
N_LIB_PRIVATE N_NIMCALL(void, finalJumpTarget__vmgen_u3473)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI pc_p1, NI diff_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameConstant__vmgen_u1074)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* b_p1);
N_LIB_PRIVATE N_NIMCALL(void, removeLastEof__vmgen_u3408)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0);
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__24XApAWKNvaMkcyklm8bNA_2 = { 43 | NIM_STRLIT_FLAG, "VM: immediate value does not fit into regBx" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_3 = {43, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_2};
static const struct {
  NI cap; NIM_CHAR data[60+1];
} TM__24XApAWKNvaMkcyklm8bNA_5 = { 60 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/vmgen.nim" };
static const struct {
  NI cap; NIM_CHAR data[33+1];
} TM__24XApAWKNvaMkcyklm8bNA_7 = { 33 | NIM_STRLIT_FLAG, "cannot evaluate at compile time: " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_8 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_10 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_12 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_13 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_15 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_16 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__24XApAWKNvaMkcyklm8bNA_18 = { 43 | NIM_STRLIT_FLAG, "cannot \'importc\' variable at compile time; " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_19 = {43, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_18};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_21 = {
0x10, 0xa8, 0x10, 0x00, 0x00, 0x60, 0x80, 0x10,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__24XApAWKNvaMkcyklm8bNA_22 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_23 = {0, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_22};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_24 = {
0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[54+1];
} TM__24XApAWKNvaMkcyklm8bNA_25 = { 54 | NIM_STRLIT_FLAG, "vmgen.nim(1976, 5) `obj.sym.position == currPosition` " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_26 = {54, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_25};
static const struct {
  NI cap; NIM_CHAR data[32+1];
} TM__24XApAWKNvaMkcyklm8bNA_27 = { 32 | NIM_STRLIT_FLAG, "cannot create null element for: " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_28 = {32, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_27};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_30 = {32, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_27};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_32 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_33 = {
0x10, 0xa8, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[39+1];
} TM__24XApAWKNvaMkcyklm8bNA_34 = { 39 | NIM_STRLIT_FLAG, "VM problem: too many registers required" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_35 = {39, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_34};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_37 = {
0x10, 0xa8, 0x00, 0x00, 0x00, 0x60, 0x80, 0x10,
0x00}
;
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_38 = {0, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_22};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__24XApAWKNvaMkcyklm8bNA_39 = { 1 | NIM_STRLIT_FLAG, "(" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_40 = {1, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_39};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__24XApAWKNvaMkcyklm8bNA_41 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_42 = {2, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_41};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__24XApAWKNvaMkcyklm8bNA_43 = { 1 | NIM_STRLIT_FLAG, ")" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_44 = {1, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_43};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_46 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_47 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_7};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_50 = {
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[42+1];
} TM__24XApAWKNvaMkcyklm8bNA_51 = { 42 | NIM_STRLIT_FLAG, "Closure iterators are not supported by VM!" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_52 = {42, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_51};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_54 = {0, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_22};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__24XApAWKNvaMkcyklm8bNA_55 = { 1 | NIM_STRLIT_FLAG, "." };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_56 = {1, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_55};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__24XApAWKNvaMkcyklm8bNA_57 = { 36 | NIM_STRLIT_FLAG, "vmgen.nim(2193, 5) `s.offset == -1` " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_58 = {36, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_57};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__24XApAWKNvaMkcyklm8bNA_59 = { 26 | NIM_STRLIT_FLAG, "cannot generate code for: " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_60 = {26, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_59};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_62 = {26, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_59};
static const struct {
  NI cap; NIM_CHAR data[45+1];
} TM__24XApAWKNvaMkcyklm8bNA_65 = { 45 | NIM_STRLIT_FLAG, "VM: immediate value does not fit into an int8" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_66 = {45, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_65};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_68 = {
0x10, 0xa8, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__24XApAWKNvaMkcyklm8bNA_69 = { 10 | NIM_STRLIT_FLAG, "not unused" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_70 = {10, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_69};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_72 = {
0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_73 = {
0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_74 = {
0x10, 0xa8, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__24XApAWKNvaMkcyklm8bNA_77 = { 15 | NIM_STRLIT_FLAG, "no field symbol" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_78 = {15, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_77};
static const struct {
  NI cap; NIM_CHAR data[44+1];
} TM__24XApAWKNvaMkcyklm8bNA_80 = { 44 | NIM_STRLIT_FLAG, "too large offset! cannot generate code for: " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_81 = {44, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_80};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_83 = {39, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_34};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_87 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_88 = {
0x10, 0xa8, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[53+1];
} TM__24XApAWKNvaMkcyklm8bNA_89 = { 53 | NIM_STRLIT_FLAG, "pointer comparisons are not available at compile-time" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_90 = {53, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_89};
N_LIB_PRIVATE TNimTypeV2 NTIv2__HAIZhF7wu4MbXwUkt4HXyA_;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_93 = {
0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_95 = {
0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_96 = { 7 | NIM_STRLIT_FLAG, "getType" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_97 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_96};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__24XApAWKNvaMkcyklm8bNA_98 = { 8 | NIM_STRLIT_FLAG, "typeKind" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_99 = {8, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_98};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__24XApAWKNvaMkcyklm8bNA_100 = { 11 | NIM_STRLIT_FLAG, "getTypeInst" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_101 = {11, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_100};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__24XApAWKNvaMkcyklm8bNA_102 = { 11 | NIM_STRLIT_FLAG, "getTypeImpl" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_103 = {11, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_102};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_104 = { 7 | NIM_STRLIT_FLAG, "getSize" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_105 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_104};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__24XApAWKNvaMkcyklm8bNA_106 = { 8 | NIM_STRLIT_FLAG, "getAlign" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_107 = {8, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_106};
static const struct {
  NI cap; NIM_CHAR data[21+1];
} TM__24XApAWKNvaMkcyklm8bNA_108 = { 21 | NIM_STRLIT_FLAG, "invalid bindSym usage" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_109 = {21, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_108};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_111 = { 7 | NIM_STRLIT_FLAG, "getFile" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_112 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_111};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_113 = { 7 | NIM_STRLIT_FLAG, "getLine" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_114 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_113};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__24XApAWKNvaMkcyklm8bNA_115 = { 9 | NIM_STRLIT_FLAG, "getColumn" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_116 = {9, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_115};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__24XApAWKNvaMkcyklm8bNA_117 = { 12 | NIM_STRLIT_FLAG, "copyLineInfo" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_118 = {12, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_117};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_119 = { 7 | NIM_STRLIT_FLAG, "setLine" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_120 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_119};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__24XApAWKNvaMkcyklm8bNA_121 = { 9 | NIM_STRLIT_FLAG, "setColumn" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_122 = {9, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_121};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_123 = { 7 | NIM_STRLIT_FLAG, "setFile" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_124 = {7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_123};
static const struct {
  NI cap; NIM_CHAR data[31+1];
} TM__24XApAWKNvaMkcyklm8bNA_130 = { 31 | NIM_STRLIT_FLAG, "expandToAst requires 1 argument" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_131 = {31, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_130};
static const struct {
  NI cap; NIM_CHAR data[38+1];
} TM__24XApAWKNvaMkcyklm8bNA_133 = { 38 | NIM_STRLIT_FLAG, "expandToAst requires a call expression" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_134 = {38, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_133};
static const struct {
  NI cap; NIM_CHAR data[54+1];
} TM__24XApAWKNvaMkcyklm8bNA_136 = { 54 | NIM_STRLIT_FLAG, "\'$1\' requires \'.importc\' types to be \'.completeStruct\'" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_137 = {54, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_136};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__24XApAWKNvaMkcyklm8bNA_139 = { 6 | NIM_STRLIT_FLAG, "sizeof" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_141 = {54, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_136};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__24XApAWKNvaMkcyklm8bNA_143 = { 7 | NIM_STRLIT_FLAG, "alignof" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_145 = {54, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_136};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__24XApAWKNvaMkcyklm8bNA_147 = { 8 | NIM_STRLIT_FLAG, "offsetof" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_149 = {26, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_59};
static const struct {
  NI cap; NIM_CHAR data[19+1];
} TM__24XApAWKNvaMkcyklm8bNA_151 = { 19 | NIM_STRLIT_FLAG, "cannot call method " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_152 = {19, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_151};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__24XApAWKNvaMkcyklm8bNA_153 = { 16 | NIM_STRLIT_FLAG, " at compile time" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_154 = {16, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_153};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_157 = {
0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[33+1];
} TM__24XApAWKNvaMkcyklm8bNA_159 = { 33 | NIM_STRLIT_FLAG, "cannot access array with nil type" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_160 = {33, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_159};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_162 = {
0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[38+1];
} TM__24XApAWKNvaMkcyklm8bNA_164 = { 38 | NIM_STRLIT_FLAG, "VM problem: cannot find \'break\' target" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_165 = {38, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_164};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_167 = {
0x10, 0xa8, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_168 = {
0x10, 0xa8, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x10,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[54+1];
} TM__24XApAWKNvaMkcyklm8bNA_169 = { 54 | NIM_STRLIT_FLAG, "object with \'{.union.}\' pragmas is not supported by VM" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_170 = {54, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_169};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__24XApAWKNvaMkcyklm8bNA_172 = { 26 | NIM_STRLIT_FLAG, "invalid object constructor" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_173 = {26, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_172};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__24XApAWKNvaMkcyklm8bNA_175 = {
0x10, 0xa9, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[89+1];
} TM__24XApAWKNvaMkcyklm8bNA_176 = { 89 | NIM_STRLIT_FLAG, "VM does not support \'cast\' from $1 with size $2 to $3 with size $4 due to different sizes" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_177 = {89, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_176};
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_179 = {89, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_176};
static const struct {
  NI cap; NIM_CHAR data[32+1];
} TM__24XApAWKNvaMkcyklm8bNA_181 = { 32 | NIM_STRLIT_FLAG, "VM does not support \'cast\' from " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_182 = {32, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_181};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__24XApAWKNvaMkcyklm8bNA_183 = { 4 | NIM_STRLIT_FLAG, " to " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_184 = {4, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_183};
static const struct {
  NI cap; NIM_CHAR data[28+1];
} TM__24XApAWKNvaMkcyklm8bNA_186 = { 28 | NIM_STRLIT_FLAG, "cannot generate VM code for " };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_187 = {28, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_186};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__24XApAWKNvaMkcyklm8bNA_190 = { 36 | NIM_STRLIT_FLAG, "VM problem: dest register is not set" };
static const NimStringV2 TM__24XApAWKNvaMkcyklm8bNA_191 = {36, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_190};
extern NIM_CONST tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg NoVmProcInfo__vmdef_u382;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_4 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)164),
((NI)14)}
;
static NIM_CONST tyTuple__9ap1MJ9bVBlP34AqrUq01n8w TM__24XApAWKNvaMkcyklm8bNA_6 = {NIM_TRUE,
((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)2)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_9 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1597),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_11 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1634),
((NI)20)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_14 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1637),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_17 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1795),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_20 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1767),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_29 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1978),
((NI)19)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_31 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2021),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_36 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)229),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_45 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1824),
((NI)22)}
;
extern NIM_CONST tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA unknownLineInfo__lineinfos_u364;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_48 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1832),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_49 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)455),
((NI)2)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_53 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2217),
((NI)19)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_61 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2243),
((NI)19)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_63 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2245),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_64 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)186),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_67 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)147),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_71 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)496),
((NI)15)}
;
extern NIM_CONST tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg Zero__int128_u8;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_75 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1876),
((NI)2)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_76 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1888),
((NI)2)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_79 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)657),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_82 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)660),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_84 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)269),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_85 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)633),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_86 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)550),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_91 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1233),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_110 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1033),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_125 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1429),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_126 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1433),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_127 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1437),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_128 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1441),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_129 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1444),
((NI)10)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_132 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1467),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_135 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1477),
((NI)17)}
;
static NIM_CONST tyArray__YgExxhfgKcesA5EOUj1MOA TM__24XApAWKNvaMkcyklm8bNA_138 = {{6, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_139}}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_140 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1479),
((NI)15)}
;
static NIM_CONST tyArray__YgExxhfgKcesA5EOUj1MOA TM__24XApAWKNvaMkcyklm8bNA_142 = {{7, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_143}}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_144 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1481),
((NI)15)}
;
static NIM_CONST tyArray__YgExxhfgKcesA5EOUj1MOA TM__24XApAWKNvaMkcyklm8bNA_146 = {{8, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_147}}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_148 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1483),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_150 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1510),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_155 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2252),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_156 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1715),
((NI)6)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_158 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1922),
((NI)2)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_161 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1942),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_163 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)178),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_166 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)381),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_171 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2136),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_174 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2152),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_178 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)963),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_180 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)976),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_185 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)1009),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_188 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2358),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_189 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2401),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__24XApAWKNvaMkcyklm8bNA_192 = {{60, (NimStrPayload*)&TM__24XApAWKNvaMkcyklm8bNA_5},
((NI)2386),
((NI)17)}
;
extern NIM_BOOL nimInErrorMode__system_u4143;
static NIM_CONST NU32 TM__24XApAWKNvaMkcyklm8bNA_92[2] = {3701606400, 35226624};
N_LIB_PRIVATE TNimTypeV2 NTIv2__HAIZhF7wu4MbXwUkt4HXyA_ = {.destructor = (void*)rttiDestroy__vmgen_u5570, .size = sizeof(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA), .align = (NI16) NIM_ALIGNOF(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA), .depth = 1, .display = TM__24XApAWKNvaMkcyklm8bNA_92, .traceImpl = (void*)NIM_NIL, .flags = 0};
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2172(p_p0, ((int)0), size_p1);
}
static N_INLINE(NIM_BOOL, isCompileTimeProc__ast_u7159)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17));
	if (T1_) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = ((*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13));
	if (!(T3_)) goto LA4_;
	T3_ = (((*s_p0).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)28)))&63U)))!=0);
LA4_: ;
	T1_ = T3_;
LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4143);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gABx__vmgen_u449)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI bx_p4) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA colontmpD_;
		NU64 ins_1;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)-8388608) <= bx_p4);
		if (!(T3_)) goto LA4_;
		T3_ = (bx_p4 <= ((NI)8388607));
LA4_: ;
		if (!T3_) goto LA5_;
		ins_1 = (NU64)((NU64)(((NU64) (opc_p2)) | (NU64)((NU64)(((NU64) (a_p3))) << (NU64)(8ULL & (64 - 1)))) | (NU64)((NU64)(((NU64) ((NI)(bx_p4 + ((NI)8388608))))) << (NU64)(24ULL & (64 - 1))));
		add__vmgen_u381((&(*c_p0).code), ins_1);
		colontmpD_ = eqdup___lineinfos_u2037((*n_p1).info);
		add__vmgen_u401((&(*c_p0).debug), colontmpD_);
	}
	goto LA1_;
LA5_: ;
	{
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_3, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_4), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, xjmp__vmgen_u472)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3) {
	NI result;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*c_p0).code.len;
	result = T1_;
	gABx__vmgen_u449(c_p0, n_p1, opc_p2, a_p3, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
	NI T1_;
	T1_ = (*n_p0)._kind_6.sons.len;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genParams__vmgen_u3457)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* params_p1) {
	NI T1_;
	NIM_BOOL colontmp_;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NI)0;
	T1_ = len__ast_u3190(params_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	setLen__vmdef_u1206((&(*(*c_p0).prc).regInfo), (((T1_ >= ((NI)1)) ? T1_ : ((NI)1))));
	colontmp_ = NIM_TRUE;
	colontmp__2 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)1);
	(*(*c_p0).prc).regInfo.p->data[((NI)0)].Field0 = colontmp_;
	(*(*c_p0).prc).regInfo.p->data[((NI)0)].Field1 = colontmp__2;
	{
		NI i_1;
		NI colontmp__3;
		NI i_2;
		i_1 = (NI)0;
		colontmp__3 = (NI)0;
		colontmp__3 = len__ast_u3190(params_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = ((NI)1);
		{
			while (1) {
				NIM_BOOL colontmp__4;
				tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__5;
				if (!(i_2 < colontmp__3)) goto LA4;
				i_1 = i_2;
				colontmp__4 = NIM_TRUE;
				colontmp__5 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)2);
				(*(*c_p0).prc).regInfo.p->data[i_1].Field0 = colontmp__4;
				(*(*c_p0).prc).regInfo.p->data[i_1].Field1 = colontmp__5;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isGenericParams__ast_u7070)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = !((n_p0 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)));
	if (!(T1_)) goto LA2_;
	T1_ = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)75));
LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(NIM_BOOL, isGenericRoutine__ast_u7081)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = !((n_p0 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)));
	if (!(T2_)) goto LA3_;
	T2_ = ((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)51) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)52) || (*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)84) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)159));
LA3_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA4_;
	T1_ = isGenericParams__ast_u7070((*n_p0)._kind_6.sons.p->data[((NI)2)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA4_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, isGenericRoutineStrict__ast_u7092)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)18) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)16));
	if (!(T1_)) goto LA2_;
	T1_ = isGenericRoutine__ast_u7081((*s_p0).ast);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA2_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genGenericParams__vmgen_u3494)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* gp_p1) {
	NI base_1;
	NI T1_;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*(*c_p0).prc).regInfo.len;
	base_1 = T1_;
	T2_ = (NI)0;
	T2_ = len__ast_u3190(gp_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	setLen__vmdef_u1206((&(*(*c_p0).prc).regInfo), ((NI)(base_1 + T2_)));
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(gp_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* param_1;
				NIM_BOOL colontmp__2;
				tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__3;
				if (!(i_2 < colontmp_)) goto LA5;
				param_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u4577(&param_1, (*(*gp_p1)._kind_6.sons.p->data[i_1])._kind_4.sym);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				(*param_1).position = (NI)(base_1 + i_1);
				colontmp__2 = NIM_TRUE;
				colontmp__3 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)2);
				(*(*c_p0).prc).regInfo.p->data[(NI)(base_1 + i_1)].Field0 = colontmp__2;
				(*(*c_p0).prc).regInfo.p->data[(NI)(base_1 + i_1)].Field1 = colontmp__3;
				i_2 += ((NI)1);
				eqdestroy___ast_u4574(param_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA5: ;
		}
	}
	}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, importcCondVar__vmgen_u2192)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	NIM_BOOL result;
	{
		if (!(((*s_p0).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)6)))&63U)))!=0)) goto LA3_;
		result = ((*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)9) || (*s_p0).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)10));
	}
	goto LA1_;
LA3_: ;
	{
		result = NIM_FALSE;
	}
LA1_: ;
	return result;
}
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6254)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u4577(&result, (*s_p0).ownerField);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedBy__vmgen_u2163)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1) {
	NIM_BOOL result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_2;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	a_2 = NIM_NIL;
	result = NIM_FALSE;
	a_2 = owner__ast_u6254(a_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		while (1) {
			NIM_BOOL T4_;
			tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T10_;
			T4_ = (NIM_BOOL)0;
			T4_ = !((a_2 == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)));
			if (!(T4_)) goto LA5_;
			T4_ = !(((*a_2).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)6)));
LA5_: ;
			if (!T4_) goto LA3;
			{
				if (!(a_2 == b_p1)) goto LA8_;
				result = NIM_TRUE;
				eqdestroy___ast_u4574(a_2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA8_: ;
			T10_ = NIM_NIL;
			T10_ = owner__ast_u6254(a_2);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T10_); goto LA1_;}
			eqsink___ast_u4583(&a_2, T10_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		} LA3: ;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u4574(a_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkCanEval__vmgen_u2203)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	s_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	eqcopy___ast_u4577(&s_1, (*n_p1)._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((268435464 & ~ (*s_1).flags)==0)) goto LA4_;
		eqdestroy___ast_u4574(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA4_: ;
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = (((*(*c_p0).config).features &((NU32)1<<((NU)((((tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ)9)))&31U)))!=0);
		if (!(T8_)) goto LA9_;
		T8_ = importcCondVar__vmgen_u2192(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA9_: ;
		if (!T8_) goto LA10_;
		eqdestroy___ast_u4574(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA10_: ;
	{
		NIM_BOOL T14_;
		NIM_BOOL T15_;
		NIM_BOOL T16_;
		NIM_BOOL T18_;
		T14_ = (NIM_BOOL)0;
		T15_ = (NIM_BOOL)0;
		T16_ = (NIM_BOOL)0;
		T16_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)5) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)9) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11));
		if (!(T16_)) goto LA17_;
		T18_ = (NIM_BOOL)0;
		T18_ = isOwnedBy__vmgen_u2163(s_1, (*(*c_p0).prc).sym);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T16_ = !(T18_);
LA17_: ;
		T15_ = T16_;
		if (!(T15_)) goto LA19_;
		colontmpD_ = owner__ast_u6254(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T15_ = !((colontmpD_ == (*c_p0).module));
LA19_: ;
		T14_ = T15_;
		if (!(T14_)) goto LA20_;
		T14_ = !(((*c_p0).mode == ((tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg)0)));
LA20_: ;
		if (!T14_) goto LA21_;
		{
			NIM_BOOL T25_;
			T25_ = (NIM_BOOL)0;
			T25_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)37)))&63U)))!=0);
			if (!(T25_)) goto LA26_;
			T25_ = ((*(*c_p0).prc).sym == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL));
LA26_: ;
			if (!T25_) goto LA27_;
		}
		goto LA23_;
LA27_: ;
		{
			NIM_BOOL T30_;
			T30_ = (NIM_BOOL)0;
			T30_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3));
			if (!(T30_)) goto LA31_;
			T30_ = ((*(*s_1).typ).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8));
LA31_: ;
			if (!T30_) goto LA32_;
		}
		goto LA23_;
LA32_: ;
		{
			NIM_BOOL T35_;
			tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA xX60gensym551__1;
			T35_ = (NIM_BOOL)0;
			T35_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)9));
			if (!(T35_)) goto LA36_;
			xX60gensym551__1 = (*s_1).itemId;
			T35_ = contains__astalgo_u2846((&(*c_p0).locals), (NI)((NI)((NU64)(((NI) (xX60gensym551__1.module))) << (NU64)(((NI)24) & (64 - 1))) + ((NI) (xX60gensym551__1.item))));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA36_: ;
			if (!T35_) goto LA37_;
		}
		goto LA23_;
LA37_: ;
		{
			NimStringV2 colontmpD__2;
			NimStringV2 colontmpD__3;
			NimStringV2 T53_;
			tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T54_;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			{
				NIM_BOOL T43_;
				tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw T45_;
				NimStringV2 colontmpD__4;
				NimStringV2 colontmpD__5;
				NimStringV2 T49_;
				tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T50_;
				T43_ = (NIM_BOOL)0;
				T43_ = ((*(*c_p0).config).cmd == ((tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ)8));
				if (!(T43_)) goto LA44_;
				T45_ = 0;
				T43_ = !(((*(*c_p0).config).m.errorOutputs == T45_));
LA44_: ;
				if (!T43_) goto LA46_;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
				T49_.len = 0; T49_.p = NIM_NIL;
				T50_ = 0;
				colontmpD__4 = renderTree__renderer_u59(n_p1, T50_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
				T49_ = rawNewString(colontmpD__4.len + 33);
appendString((&T49_), TM__24XApAWKNvaMkcyklm8bNA_8);
appendString((&T49_), colontmpD__4);
				colontmpD__5 = T49_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__5, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_9), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
				(*c_p0).cannotEval = NIM_TRUE;
				eqdestroy___system_u2691(colontmpD__5);
				eqdestroy___system_u2691(colontmpD__4);
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___ast_u4574(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				eqdestroy___ast_u4574(s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
				{
					LA48_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__5);
					eqdestroy___system_u2691(colontmpD__4);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
			}
LA46_: ;
			T53_.len = 0; T53_.p = NIM_NIL;
			T54_ = 0;
			colontmpD__2 = renderTree__renderer_u59(n_p1, T54_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
			T53_ = rawNewString(colontmpD__2.len + 33);
appendString((&T53_), TM__24XApAWKNvaMkcyklm8bNA_10);
appendString((&T53_), colontmpD__2);
			colontmpD__3 = T53_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__3, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_11), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
			{
				LA40_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA23_: ;
	}
	goto LA12_;
LA21_: ;
	{
		NIM_BOOL T58_;
		NimStringV2 colontmpD__6;
		NimStringV2 colontmpD__7;
		NimStringV2 T75_;
		tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T76_;
		T58_ = (NIM_BOOL)0;
		T58_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)16) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15));
		if (!(T58_)) goto LA59_;
		T58_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)4)))&63U)))!=0);
LA59_: ;
		if (!T58_) goto LA60_;
		colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
		colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
		{
			NIM_BOOL T65_;
			tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw T67_;
			NimStringV2 colontmpD__8;
			NimStringV2 colontmpD__9;
			NimStringV2 T71_;
			tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T72_;
			T65_ = (NIM_BOOL)0;
			T65_ = ((*(*c_p0).config).cmd == ((tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ)8));
			if (!(T65_)) goto LA66_;
			T67_ = 0;
			T65_ = !(((*(*c_p0).config).m.errorOutputs == T67_));
LA66_: ;
			if (!T65_) goto LA68_;
			colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
			colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
			T71_.len = 0; T71_.p = NIM_NIL;
			T72_ = 0;
			colontmpD__8 = renderTree__renderer_u59(n_p1, T72_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
			T71_ = rawNewString(colontmpD__8.len + 33);
appendString((&T71_), TM__24XApAWKNvaMkcyklm8bNA_12);
appendString((&T71_), colontmpD__8);
			colontmpD__9 = T71_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__9, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_9), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
			(*c_p0).cannotEval = NIM_TRUE;
			eqdestroy___system_u2691(colontmpD__9);
			eqdestroy___system_u2691(colontmpD__8);
			eqdestroy___system_u2691(colontmpD__7);
			eqdestroy___system_u2691(colontmpD__6);
			eqdestroy___ast_u4574(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u4574(s_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
			{
				LA70_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__9);
				eqdestroy___system_u2691(colontmpD__8);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA62_;
		}
LA68_: ;
		T75_.len = 0; T75_.p = NIM_NIL;
		T76_ = 0;
		colontmpD__6 = renderTree__renderer_u59(n_p1, T76_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA62_;
		T75_ = rawNewString(colontmpD__6.len + 33);
appendString((&T75_), TM__24XApAWKNvaMkcyklm8bNA_13);
appendString((&T75_), colontmpD__6);
		colontmpD__7 = T75_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__7, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_14), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA62_;
		{
			LA62_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__7);
			eqdestroy___system_u2691(colontmpD__6);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA12_;
LA60_: ;
LA12_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u4574(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isEmptyBody__vmgen_u2487)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	{
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_u3190(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i_1 = i_2;
					{
						NIM_BOOL T7_;
						T7_ = (NIM_BOOL)0;
						T7_ = isEmptyBody__vmgen_u2487((*n_p0)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						if (!!(T7_)) goto LA8_;
						result = NIM_FALSE;
						goto BeforeRet_;
					}
LA8_: ;
					i_2 += ((NI)1);
				} LA4: ;
			}
		}
		result = NIM_TRUE;
	}
	break;
	default:
	{
		result = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)125) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1));
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, getBody__modulegraphs_u17880)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u3255(&result, (*(*s_p1).ast)._kind_6.sons.p->data[((NI)6)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NIM_BOOL T3_;
		tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* T7_;
		tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* T8_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T9_;
		T3_ = (NIM_BOOL)0;
		T3_ = (result == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
		if (!(T3_)) goto LA4_;
		T3_ = ((*(*g_p0).config).symbolFiles == ((tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA)2) || (*(*g_p0).config).symbolFiles == ((tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA)3) || (*(*g_p0).config).symbolFiles == ((tyEnum_SymbolFilesOption__2eyIIreuRXhYT9buPPZbBYA)4));
LA4_: ;
		if (!T3_) goto LA5_;
		T7_ = NIM_NIL;
		T7_ = (*g_p0).config;
		T8_ = NIM_NIL;
		T8_ = (*g_p0).cache;
		T9_ = NIM_NIL;
		T9_ = loadProcBody__icZic_u21187(T7_, T8_, (&(*g_p0).packed_0), s_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T9_); goto BeforeRet_;}
		eqsink___ast_u3261(&result, T9_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqcopy___ast_u3255(&(*(*s_p1).ast)._kind_6.sons.p->data[((NI)6)], result);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, importcCond__vmgen_u2499)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_FALSE;
	{
		if (!(((*s_p1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)6)))&63U)))!=0)) goto LA3_;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
			if (!((*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)16) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17) || (*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)18))) goto LA7_;
			colontmpD_ = NIM_NIL;
			colontmpD_ = getBody__modulegraphs_u17880((*c_p0).graph, s_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
			result = isEmptyBody__vmgen_u2487(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
			eqdestroy___ast_u3252(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
			{
				LA9_:;
			}
			{
				oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin9_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA7_: ;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, importcSym__vmgen_u2511)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p2) {
	NimStringV2 colontmpD_;
	NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_ = rawNewString((*(*s_p2).name).s.len + 43);
appendString((&T2_), TM__24XApAWKNvaMkcyklm8bNA_19);
appendString((&T2_), (*(*s_p2).name).s);
	colontmpD_ = T2_;
	liMessage__msgs_u1227((*c_p0).config, info_p1, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD_, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_20), NIM_FALSE, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, baseClass__ast_u5348)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u3381(&result, (*n_p0).sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**, X5BX5D___ast_u5211)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** s_p0, NI s_p0Len_0, NI i_p1) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** result;
	result = &s_p0[(NI)(s_p0Len_0 - i_p1)];
	return result;
}
static N_INLINE(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, lastSon__ast_u5208)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = (tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**)0;
	T1_ = X5BX5D___ast_u5211((((*n_p0)._kind_6.sons).p) ? ((*n_p0)._kind_6.sons.p->data) : NIM_NIL, (*n_p0)._kind_6.sons.len, ((NI)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___ast_u3255(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getNullValueAux__vmgen_u2791)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* obj_p2, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p3, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p4, NI* currPosition_p5) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL oldNimErrFin23_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	{
		NIM_BOOL T4_;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* b_1;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
		T4_ = (NIM_BOOL)0;
		T4_ = !((t_p1 == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
		if (!(T4_)) goto LA5_;
		colontmpD_ = baseClass__ast_u5348(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = !((colontmpD_ == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
LA5_: ;
		if (!T4_) goto LA6_;
		b_1 = NIM_NIL;
		colontmpD__2 = NIM_NIL;
		colontmpD__2 = baseClass__ast_u5348(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		b_1 = skipTypes__ast_u5379(colontmpD__2, TM__24XApAWKNvaMkcyklm8bNA_24);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		getNullValueAux__vmgen_u2791(c_p0, b_1, (*b_1).n, result_p3, conf_p4, currPosition_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		{
			LA8_:;
		}
		{
			oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3378(b_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin8_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA6_: ;
	switch ((*obj_p2).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)138):
	{
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_u3190(obj_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA14;
					i_1 = i_2;
					getNullValueAux__vmgen_u2791(c_p0, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL), (*obj_p2)._kind_6.sons.p->data[i_1], result_p3, conf_p4, currPosition_p5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					i_2 += ((NI)1);
				} LA14: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)139):
	{
		getNullValueAux__vmgen_u2791(c_p0, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL), (*obj_p2)._kind_6.sons.p->data[((NI)0)], result_p3, conf_p4, currPosition_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI i_3;
			NI colontmp__2;
			NI i_4;
			i_3 = (NI)0;
			colontmp__2 = (NI)0;
			colontmp__2 = len__ast_u3190(obj_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			i_4 = ((NI)1);
			{
				while (1) {
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
					if (!(i_4 < colontmp__2)) goto LA18;
					colontmpD__3 = NIM_NIL;
					i_3 = i_4;
					colontmpD__3 = lastSon__ast_u5208((*obj_p2)._kind_6.sons.p->data[i_3]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
					getNullValueAux__vmgen_u2791(c_p0, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL), colontmpD__3, result_p3, conf_p4, currPosition_p5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
					i_4 += ((NI)1);
					{
						LA19_:;
					}
					{
						oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin19_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				} LA18: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* field_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* value_1;
		field_1 = NIM_NIL;
		value_1 = NIM_NIL;
		field_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34), (*result_p3).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		add__ast_u3215(field_1, obj_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		value_1 = getNullValue__vmgen_u2515(c_p0, (*(*obj_p2)._kind_4.sym).typ, (*result_p3).info, conf_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		(*value_1).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw)24))) & 31);
		add__ast_u3215(field_1, value_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		add__ast_u3215(result_p3, field_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		{
			if (!!(((*(*obj_p2)._kind_4.sym).position == (*currPosition_p5)))) goto LA26_;
			failedAssertImpl__stdZassertions_u79(TM__24XApAWKNvaMkcyklm8bNA_26);
			if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
		}
LA26_: ;
		(*currPosition_p5) += ((NI)1);
		{
			LA23_:;
		}
		{
			oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(value_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(field_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin23_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default:
	{
		NimStringV2 colontmpD__4;
		NimStringV2 colontmpD__5;
		NimStringV2 T32_;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
		T32_.len = 0; T32_.p = NIM_NIL;
		colontmpD__4 = dollar___renderer_u2166(obj_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
		T32_ = rawNewString(colontmpD__4.len + 32);
appendString((&T32_), TM__24XApAWKNvaMkcyklm8bNA_28);
appendString((&T32_), colontmpD__4);
		colontmpD__5 = T32_;
		liMessage__msgs_u1227(conf_p4, (*result_p3).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__5, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_29), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
		{
			LA31_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__5);
			eqdestroy___system_u2691(colontmpD__4);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, getNullValue__vmgen_u2515)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
NIM_BOOL oldNimErrFin13_;
NIM_BOOL oldNimErrFin17_;
NIM_BOOL oldNimErrFin25_;
NIM_BOOL oldNimErrFin35_;
NIM_BOOL oldNimErrFin30_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	t_1 = NIM_NIL;
	t_1 = skipTypes__ast_u5379(typ_p1, TM__24XApAWKNvaMkcyklm8bNA_21);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	switch ((*t_1).kind) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)11), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)39):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)16), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)20), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqsink___system_u2700((&(*result)._kind_3.strVal), TM__24XApAWKNvaMkcyklm8bNA_23);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)47):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)5):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)25):
	{
		{
			if (!!(((*t_1).callConv == ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)9)))) goto LA10_;
			result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23), info_p2, t_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA8_;
LA10_: ;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
			colontmpD_ = NIM_NIL;
			colontmpD__2 = NIM_NIL;
			colontmpD__3 = NIM_NIL;
			colontmpD__4 = NIM_NIL;
			result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)160), info_p2, t_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			colontmpD_ = getSysType__magicsys_u55((*c_p0).graph, info_p2, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26));
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			colontmpD__2 = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23), info_p2, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			add__ast_u3215(result, colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			colontmpD__3 = getSysType__magicsys_u55((*c_p0).graph, info_p2, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26));
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			colontmpD__4 = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23), info_p2, colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			add__ast_u3215(result, colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
			{
				LA13_:;
			}
			{
				oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___ast_u3378(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___ast_u3252(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___ast_u3378(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin13_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA8_: ;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
		NI currPosition_1;
		colontmpD__5 = NIM_NIL;
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)38), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
		colontmpD__5 = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
		add__ast_u3215(result, colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
		currPosition_1 = ((NI)0);
		getNullValueAux__vmgen_u2791(c_p0, t_1, (*t_1).n, result, conf_p3, (&currPosition_1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
		{
			LA17_:;
		}
		{
			oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin17_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)16):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI i_1;
			NI colontmp_;
			tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T22_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T22_ = lengthOrd__types_u1505(conf_p3, t_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			colontmp_ = toInt__int128_u257(T22_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			i_2 = ((NI)0);
			{
				while (1) {
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__6;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__7;
					if (!(i_2 < colontmp_)) goto LA24;
					colontmpD__6 = NIM_NIL;
					colontmpD__7 = NIM_NIL;
					i_1 = i_2;
					colontmpD__6 = elemType__types_u254(t_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					colontmpD__7 = getNullValue__vmgen_u2515(c_p0, colontmpD__6, info_p2, conf_p3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3215(result, colontmpD__7);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					i_2 += ((NI)1);
					{
						LA25_:;
					}
					{
						oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(colontmpD__7);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD__6);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin25_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				} LA24: ;
			}
		}
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)160), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* a_1;
			a_1 = NIM_NIL;
			{
				NI i_3;
				NI colontmp__2;
				NI T32_;
				NI i_4;
				i_3 = (NI)0;
				colontmp__2 = (NI)0;
				T32_ = (*t_1).sons.len;
				colontmp__2 = T32_;
				i_4 = ((NI)0);
				{
					while (1) {
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__8;
						if (!(i_4 < colontmp__2)) goto LA34;
						colontmpD__8 = NIM_NIL;
						i_3 = i_4;
						eqcopy___ast_u3381(&a_1, (*t_1).sons.p->data[i_3]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
						colontmpD__8 = getNullValue__vmgen_u2515(c_p0, a_1, info_p2, conf_p3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
						add__ast_u3215(result, colontmpD__8);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
						i_4 += ((NI)1);
						{
							LA35_:;
						}
						{
							oldNimErrFin35_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD__8);
							if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
							*nimErr_ = oldNimErrFin35_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
					} LA34: ;
				}
			}
			{
				LA30_:;
			}
			{
				oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin30_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)19):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)39), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)27):
	{
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41), info_p2, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default:
	{
		NimStringV2 colontmpD__9;
		NimStringV2 colontmpD__10;
		NimStringV2 T44_;
		colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
		colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
		T44_.len = 0; T44_.p = NIM_NIL;
		colontmpD__9 = dollar___ast_u182((*t_1).kind);
		T44_ = rawNewString(colontmpD__9.len + 32);
appendString((&T44_), TM__24XApAWKNvaMkcyklm8bNA_30);
appendString((&T44_), colontmpD__9);
		colontmpD__10 = T44_;
		liMessage__msgs_u1227(conf_p3, info_p2, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__10, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_31), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA43_;
		result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), info_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA43_;
		{
			LA43_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__10);
			eqdestroy___system_u2691(colontmpD__9);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A, getSlotKind__vmgen_u534)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	T1_ = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
	colontmpD_ = skipTypes__ast_u5379(t_p0, TM__24XApAWKNvaMkcyklm8bNA_33);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	switch ((*colontmpD_).kind) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)15):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44):
	{
		result = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)4);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
	{
		result = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)6);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)39):
	{
		result = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)5);
	}
	break;
	default:
	{
		result = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)7);
	}
	break;
	}
	eqdestroy___ast_u3378(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA, bestEffort__vmgen_u561)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0) {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA result;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA T1_;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = !(((*c_p0).prc == ((tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg*) NIM_NIL)));
		if (!(T4_)) goto LA5_;
		T4_ = !(((*(*c_p0).prc).sym == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)));
LA5_: ;
		if (!T4_) goto LA6_;
		result = (*(*(*c_p0).prc).sym).info;
	}
	goto LA2_;
LA6_: ;
	{
		result = (*(*c_p0).module).info;
	}
LA2_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getFreeRegister__vmgen_u572)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A k_p1, NI start_p2) {
	NI result;
	tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* c_1;
	NI T31_;
	NIM_BOOL colontmp__5;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__6;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	c_1 = NIM_NIL;
	eqcopy___vmdef_u1299(&c_1, (*cc_p0).prc);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI i_1;
		NI colontmp_;
		NI T3_;
		NI res_1;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T3_ = (*c_1).regInfo.len;
		colontmp_ = (NI)(T3_ - ((NI)1));
		res_1 = start_p2;
		{
			while (1) {
				if (!(res_1 <= colontmp_)) goto LA5;
				i_1 = ((NI) (res_1));
				{
					NIM_BOOL T8_;
					T8_ = (NIM_BOOL)0;
					T8_ = ((*c_1).regInfo.p->data[i_1].Field1 == k_p1);
					if (!(T8_)) goto LA9_;
					T8_ = !((*c_1).regInfo.p->data[i_1].Field0);
LA9_: ;
					if (!T8_) goto LA10_;
					(*c_1).regInfo.p->data[i_1].Field0 = NIM_TRUE;
					result = (i_1);
					eqdestroy___vmdef_u1296(c_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA10_: ;
				res_1 += ((NI)1);
			} LA5: ;
		}
	}
	{
		NI T14_;
		T14_ = (*c_1).regInfo.len;
		if (!(((NI)65535) <= T14_)) goto LA15_;
		{
			NI i_2;
			NI colontmp__2;
			NI T18_;
			NI res_2;
			i_2 = (NI)0;
			colontmp__2 = (NI)0;
			T18_ = (*c_1).regInfo.len;
			colontmp__2 = (NI)(T18_ - ((NI)1));
			res_2 = start_p2;
			{
				while (1) {
					if (!(res_2 <= colontmp__2)) goto LA20;
					i_2 = ((NI) (res_2));
					{
						NIM_BOOL colontmp__3;
						tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__4;
						if (!!((*c_1).regInfo.p->data[i_2].Field0)) goto LA23_;
						colontmp__3 = NIM_TRUE;
						colontmp__4 = k_p1;
						(*c_1).regInfo.p->data[i_2].Field0 = colontmp__3;
						(*c_1).regInfo.p->data[i_2].Field1 = colontmp__4;
						result = (i_2);
						eqdestroy___vmdef_u1296(c_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA23_: ;
					res_2 += ((NI)1);
				} LA20: ;
			}
		}
	}
LA15_: ;
	{
		NI T27_;
		tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA T30_;
		T27_ = (*c_1).regInfo.len;
		if (!(((NI)65535) <= T27_)) goto LA28_;
		T30_ = bestEffort__vmgen_u561(cc_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		liMessage__msgs_u1227((*cc_p0).config, T30_, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_35, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_36), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA28_: ;
	T31_ = (*c_1).regInfo.len;
	result = (((T31_ >= start_p2) ? T31_ : start_p2));
	setLen__vmdef_u1206((&(*c_1).regInfo), ((NI)(result + ((NI)1))));
	colontmp__5 = NIM_TRUE;
	colontmp__6 = k_p1;
	(*c_1).regInfo.p->data[result].Field0 = colontmp__5;
	(*c_1).regInfo.p->data[result].Field1 = colontmp__6;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___vmdef_u1296(c_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getTemp__vmgen_u644)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* tt_p1) {
	NI result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_1;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmpD_;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmpD__2;
	tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A k_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	typ_1 = NIM_NIL;
	colontmpD_ = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
	colontmpD__2 = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
	typ_1 = skipTypesOrNil__ast_u6606(tt_p1, TM__24XApAWKNvaMkcyklm8bNA_32);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(typ_1 == 0)) goto LA4_;
		colontmpD_ = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)7);
		k_1 = colontmpD_;
	}
	goto LA2_;
LA4_: ;
	{
		colontmpD__2 = getSlotKind__vmgen_u534(typ_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		k_1 = colontmpD__2;
	}
LA2_: ;
	result = getFreeRegister__vmgen_u572(cc_p0, k_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(typ_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, genx__vmgen_u830)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p2) {
	NI result;
	NI tmp_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	tmp_1 = ((NI)-1);
	gen__vmgen_u795(c_p0, n_p1, (&tmp_1), flags_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(((NI)0) <= tmp_1)) goto LA3_;
		result = (tmp_1);
	}
	goto LA1_;
LA3_: ;
	{
		result = ((NI)0);
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gABC__vmgen_u354)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* ctx_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI b_p4, NI c_p5) {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA colontmpD_;
	NU64 ins_1;
	ins_1 = (NU64)((NU64)((NU64)(((NU64) (opc_p2)) | (NU64)((NU64)(((NU64) (a_p3))) << (NU64)(8ULL & (64 - 1)))) | (NU64)((NU64)(((NU64) (b_p4))) << (NU64)(24ULL & (64 - 1)))) | (NU64)((NU64)(((NU64) (c_p5))) << (NU64)(40ULL & (64 - 1))));
	add__vmgen_u381((&(*ctx_p0).code), ins_1);
	colontmpD_ = eqdup___lineinfos_u2037((*n_p1).info);
	add__vmgen_u401((&(*ctx_p0).debug), colontmpD_);
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA, whichAsgnOpc__vmgen_u1828)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, NIM_BOOL requiresCopy_p1) {
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	T1_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	colontmpD_ = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_33);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	switch ((*colontmpD_).kind) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)15):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44):
	{
		result = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)4);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) ... ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)39):
	{
		result = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)5);
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)5):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)47):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21):
	{
		result = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)6);
	}
	break;
	default:
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__2;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__3;
		colontmpD__2 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__3 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!requiresCopy_p1) goto LA8_;
			colontmpD__2 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)7);
			result = colontmpD__2;
		}
		goto LA6_;
LA8_: ;
		{
			colontmpD__3 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)14);
			result = colontmpD__3;
		}
LA6_: ;
	}
	break;
	}
	eqdestroy___ast_u3378(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, freeTemp__vmgen_u653)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI r_p1) {
	tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* c_2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	c_2 = NIM_NIL;
	eqcopy___vmdef_u1299(&c_2, (*c_p0).prc);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NIM_BOOL T3_;
		NI T4_;
		T3_ = (NIM_BOOL)0;
		T4_ = (*c_2).regInfo.len;
		T3_ = (r_p1 < T4_);
		if (!(T3_)) goto LA5_;
		T3_ = ((*c_2).regInfo.p->data[r_p1].Field1 >= ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3) && (*c_2).regInfo.p->data[r_p1].Field1 <= ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)7));
LA5_: ;
		if (!T3_) goto LA6_;
		(*c_2).regInfo.p->data[r_p1].Field0 = NIM_FALSE;
	}
LA6_: ;
	eqdestroy___vmdef_u1296(c_2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAdditionalCopy__vmgen_u2376)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI dest_p3, NI idx_p4, NI value_p5) {
	NI cc_1;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	cc_1 = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	T1_ = whichAsgnOpc__vmgen_u1828(n_p1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, T1_, cc_1, value_p5, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p2, dest_p3, idx_p4, cc_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, cc_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genGlobalInit__vmgen_u2520)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
	NI T2_;
	NI dest_1;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	colontmpD_ = getNullValue__vmgen_u2515(c_p0, (*s_p2).typ, (*n_p1).info, (*c_p0).config);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215((*c_p0).globals, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = (NI)0;
	T2_ = len__ast_u3190((*c_p0).globals);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*s_p2).position = T2_;
	dest_1 = getTemp__vmgen_u644(c_p0, (*s_p2).typ);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)181), dest_1, (*s_p2).position);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T8_;
		colontmpD__2 = astdef__ast_u4596(s_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!((colontmpD__2 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA5_;
		colontmpD__3 = NIM_NIL;
		colontmpD__3 = astdef__ast_u4596(s_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		T8_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, colontmpD__3, T8_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		genAdditionalCopy__vmgen_u2376(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), dest_1, ((NI)0), tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		freeTemp__vmgen_u653(c_p0, dest_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		{
			LA7_:;
		}
		{
			oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin7_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA5_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAsgn__vmgen_u2144)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI dest_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p2, NIM_BOOL requiresCopy_p3) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, ri_p2, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	T2_ = whichAsgnOpc__vmgen_u1828(ri_p2, requiresCopy_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, ri_p2, T2_, (dest_p1), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fitsRegister__vmgen_u1796)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NIM_BOOL result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	colontmpD_ = NIM_NIL;
	colontmpD_ = skipTypes__ast_u5379(t_p0, TM__24XApAWKNvaMkcyklm8bNA_37);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = ((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)20) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1) || (*colontmpD_).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*colontmpD_).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2));
	eqdestroy___ast_u3378(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setSlot__vmgen_u2153)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* v_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmpD_;
		tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmpD__2;
		tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A T5_;
		NI T11_;
		if (!((*v_p1).position == ((NI)0))) goto LA3_;
		colontmpD_ = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
		colontmpD__2 = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
		T5_ = (tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0;
		{
			if (!((*v_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)9))) goto LA8_;
			colontmpD_ = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)2);
			T5_ = colontmpD_;
		}
		goto LA6_;
LA8_: ;
		{
			colontmpD__2 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)1);
			T5_ = colontmpD__2;
		}
LA6_: ;
		T11_ = (NI)0;
		T11_ = getFreeRegister__vmgen_u572(c_p0, T5_, ((NI)1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*v_p1).position = T11_;
	}
LA3_: ;
	}BeforeRet_: ;
}
static N_INLINE(void, addInt__stdZprivateZdigitsutils_u204)(NimStringV2* result_p0, NI x_p1) {
	addInt__stdZprivateZdigitsutils_u187(result_p0, ((NI64) (x_p1)));
}
static N_INLINE(NimStringV2, toFileLineCol__msgs_u701)(tyTuple__kN8up2W6YKc5YA9avn5mV5w* info_p0) {
	NimStringV2 result;
	result = TM__24XApAWKNvaMkcyklm8bNA_38;
	prepareAdd((&result), (*info_p0).Field0.len + 0);
appendString((&result), (*info_p0).Field0);
	{
		if (!(((NI)0) < (*info_p0).Field1)) goto LA3_;
		prepareAdd((&result), 1);
appendString((&result), TM__24XApAWKNvaMkcyklm8bNA_40);
		addInt__stdZprivateZdigitsutils_u204((&result), (*info_p0).Field1);
		{
			if (!(((NI)0) < (NI)((*info_p0).Field2 + ((NI)1)))) goto LA7_;
			prepareAdd((&result), 2);
appendString((&result), TM__24XApAWKNvaMkcyklm8bNA_42);
			addInt__stdZprivateZdigitsutils_u204((&result), (NI)((*info_p0).Field2 + ((NI)1)));
		}
LA7_: ;
		prepareAdd((&result), 1);
appendString((&result), TM__24XApAWKNvaMkcyklm8bNA_44);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genRdVar__vmgen_u2530)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	s_1 = NIM_NIL;
	eqcopy___ast_u4577(&s_1, (*n_p1)._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NIM_BOOL isImportcVar_1;
		T4_ = (NIM_BOOL)0;
		T4_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
		if (!(T4_)) goto LA5_;
		T4_ = !(((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA5_: ;
		if (!T4_) goto LA6_;
		isImportcVar_1 = importcCondVar__vmgen_u2192(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NIM_BOOL T10_;
			NIM_BOOL T11_;
			T10_ = (NIM_BOOL)0;
			T11_ = (NIM_BOOL)0;
			T11_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)28)))&63U)))!=0);
			if (T11_) goto LA12_;
			T11_ = ((*c_p0).mode == ((tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg)0));
LA12_: ;
			T10_ = T11_;
			if (T10_) goto LA13_;
			T10_ = isImportcVar_1;
LA13_: ;
			if (!T10_) goto LA14_;
		}
		goto LA8_;
LA14_: ;
		{
			NimStringV2 colontmpD_;
			NimStringV2 colontmpD__2;
			NimStringV2 T32_;
			tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T33_;
			if (!((*s_1).position == ((NI)0))) goto LA17_;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			{
				NIM_BOOL T22_;
				tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw T24_;
				NimStringV2 colontmpD__3;
				NimStringV2 colontmpD__4;
				NimStringV2 T28_;
				tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T29_;
				T22_ = (NIM_BOOL)0;
				T22_ = ((*(*c_p0).config).cmd == ((tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ)8));
				if (!(T22_)) goto LA23_;
				T24_ = 0;
				T22_ = !(((*(*c_p0).config).m.errorOutputs == T24_));
LA23_: ;
				if (!T22_) goto LA25_;
				colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				T28_.len = 0; T28_.p = NIM_NIL;
				T29_ = 0;
				colontmpD__3 = renderTree__renderer_u59(n_p1, T29_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				T28_ = rawNewString(colontmpD__3.len + 33);
appendString((&T28_), TM__24XApAWKNvaMkcyklm8bNA_15);
appendString((&T28_), colontmpD__3);
				colontmpD__4 = T28_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__4, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_9), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				(*c_p0).cannotEval = NIM_TRUE;
				eqdestroy___system_u2691(colontmpD__4);
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___system_u2691(colontmpD_);
				eqdestroy___ast_u4574(s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
				{
					LA27_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__4);
					eqdestroy___system_u2691(colontmpD__3);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
			}
LA25_: ;
			T32_.len = 0; T32_.p = NIM_NIL;
			T33_ = 0;
			colontmpD_ = renderTree__renderer_u59(n_p1, T33_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
			T32_ = rawNewString(colontmpD_.len + 33);
appendString((&T32_), TM__24XApAWKNvaMkcyklm8bNA_16);
appendString((&T32_), colontmpD_);
			colontmpD__2 = T32_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__2, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_17), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
			{
				LA19_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___system_u2691(colontmpD_);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA8_;
LA17_: ;
LA8_: ;
		{
			if (!((*s_1).position == ((NI)0))) goto LA38_;
			{
				NIM_BOOL T42_;
				T42_ = (NIM_BOOL)0;
				T42_ = importcCond__vmgen_u2499(c_p0, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				if (T42_) goto LA43_;
				T42_ = isImportcVar_1;
LA43_: ;
				if (!T42_) goto LA44_;
				importcSym__vmgen_u2511(c_p0, (*n_p1).info, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			goto LA40_;
LA44_: ;
			{
				genGlobalInit__vmgen_u2520(c_p0, n_p1, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA40_: ;
		}
LA38_: ;
		{
			NI T51_;
			if (!((*dest_p2) < ((NI)0))) goto LA49_;
			T51_ = (NI)0;
			T51_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T51_;
		}
LA49_: ;
		{
			if (!((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)1)))&7U)))!=0)) goto LA54_;
			{
				if (!isImportcVar_1) goto LA58_;
				gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)184), ((*dest_p2)), (*s_1).position);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			goto LA56_;
LA58_: ;
			{
				gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)182), ((*dest_p2)), (*s_1).position);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA56_: ;
		}
		goto LA52_;
LA54_: ;
		{
			if (!isImportcVar_1) goto LA62_;
			gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)183), ((*dest_p2)), (*s_1).position);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA52_;
LA62_: ;
		{
			if (!((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)3)))&7U)))!=0)) goto LA65_;
			genAsgn__vmgen_u2144(c_p0, (*dest_p2), n_p1, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA52_;
LA65_: ;
		{
			NIM_BOOL T68_;
			NI cc_1;
			T68_ = (NIM_BOOL)0;
			T68_ = fitsRegister__vmgen_u1796((*s_1).typ);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!(T68_)) goto LA69_;
			T68_ = !(((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)0)))&7U)))!=0));
LA69_: ;
			if (!T68_) goto LA70_;
			cc_1 = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)181), cc_1, (*s_1).position);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), cc_1, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			freeTemp__vmgen_u653(c_p0, cc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA52_;
LA70_: ;
		{
			gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)181), ((*dest_p2)), (*s_1).position);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA52_: ;
	}
	goto LA2_;
LA6_: ;
	{
		{
			NIM_BOOL T76_;
			T76_ = (NIM_BOOL)0;
			T76_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21));
			if (!(T76_)) goto LA77_;
			T76_ = ((*c_p0).mode == ((tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg)0));
LA77_: ;
			if (!T76_) goto LA78_;
			setSlot__vmgen_u2153(c_p0, s_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA78_: ;
		{
			NIM_BOOL T82_;
			NIM_BOOL T84_;
			T82_ = (NIM_BOOL)0;
			T82_ = (((NI)0) < (*s_1).position);
			if (T82_) goto LA83_;
			T84_ = (NIM_BOOL)0;
			T84_ = ((*s_1).position == ((NI)0));
			if (!(T84_)) goto LA85_;
			T84_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11));
LA85_: ;
			T82_ = T84_;
LA83_: ;
			if (!T82_) goto LA86_;
			{
				if (!((*dest_p2) < ((NI)0))) goto LA90_;
				(*dest_p2) = ((NI)((*s_1).position + ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3))));
				{
					NIM_BOOL T94_;
					NI T95_;
					NimStringV2 argX60gensym643__1;
					T94_ = (NIM_BOOL)0;
					T95_ = (*(*c_p0).prc).regInfo.len;
					T94_ = ((*dest_p2) < T95_);
					if (!(T94_)) goto LA96_;
					T94_ = ((*(*c_p0).prc).regInfo.p->data[(*dest_p2)].Field1 < ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3));
LA96_: ;
					if (!!(T94_)) goto LA97_;
					argX60gensym643__1.len = 0; argX60gensym643__1.p = NIM_NIL;
					argX60gensym643__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_45));
					if (NIM_UNLIKELY(*nimErr_)) goto LA99_;
					internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym643__1, (&TM__24XApAWKNvaMkcyklm8bNA_45));
					if (NIM_UNLIKELY(*nimErr_)) goto LA99_;
					{
						LA99_:;
					}
					{
						eqdestroy___system_u2691(argX60gensym643__1);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA97_: ;
			}
			goto LA88_;
LA90_: ;
			{
				NIM_BOOL requiresCopy_1;
				NIM_BOOL T103_;
				T103_ = (NIM_BOOL)0;
				T103_ = (((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3) <= (*(*c_p0).prc).regInfo.p->data[(*dest_p2)].Field1);
				if (!(T103_)) goto LA104_;
				T103_ = !(((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)2)))&7U)))!=0));
LA104_: ;
				requiresCopy_1 = T103_;
				genAsgn__vmgen_u2144(c_p0, (*dest_p2), n_p1, requiresCopy_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA88_: ;
		}
		goto LA80_;
LA86_: ;
		{
			NimStringV2 colontmpD__5;
			NimStringV2 colontmpD__6;
			NimStringV2 T119_;
			tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T120_;
			colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
			colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
			{
				NIM_BOOL T109_;
				tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw T111_;
				NimStringV2 colontmpD__7;
				NimStringV2 colontmpD__8;
				NimStringV2 T115_;
				tySet_tyEnum_TRenderFlag__Il2q467fyuki59ci9aspexFg T116_;
				T109_ = (NIM_BOOL)0;
				T109_ = ((*(*c_p0).config).cmd == ((tyEnum_Command__juUdcDlEGhwCRcct3jVHmQ)8));
				if (!(T109_)) goto LA110_;
				T111_ = 0;
				T109_ = !(((*(*c_p0).config).m.errorOutputs == T111_));
LA110_: ;
				if (!T109_) goto LA112_;
				colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
				colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
				T115_.len = 0; T115_.p = NIM_NIL;
				T116_ = 0;
				colontmpD__7 = renderTree__renderer_u59(n_p1, T116_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA114_;
				T115_ = rawNewString(colontmpD__7.len + 33);
appendString((&T115_), TM__24XApAWKNvaMkcyklm8bNA_46);
appendString((&T115_), colontmpD__7);
				colontmpD__8 = T115_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__8, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_9), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA114_;
				(*c_p0).cannotEval = NIM_TRUE;
				eqdestroy___system_u2691(colontmpD__8);
				eqdestroy___system_u2691(colontmpD__7);
				eqdestroy___system_u2691(colontmpD__6);
				eqdestroy___system_u2691(colontmpD__5);
				eqdestroy___ast_u4574(s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
				{
					LA114_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__8);
					eqdestroy___system_u2691(colontmpD__7);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA106_;
			}
LA112_: ;
			T119_.len = 0; T119_.p = NIM_NIL;
			T120_ = 0;
			colontmpD__5 = renderTree__renderer_u59(n_p1, T120_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA106_;
			T119_ = rawNewString(colontmpD__5.len + 33);
appendString((&T119_), TM__24XApAWKNvaMkcyklm8bNA_47);
appendString((&T119_), colontmpD__5);
			colontmpD__6 = T119_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__6, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_48), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA106_;
			{
				LA106_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__6);
				eqdestroy___system_u2691(colontmpD__5);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA80_: ;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u4574(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, rawGenLiteral__vmgen_u1058)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = len__ast_u3190((*c_p0).constants);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*n_p1).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw)4))) & 31);
	(*n_p1).flags &= ~(((NU32)1) << (((((tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw)13))) & 31));
	add__ast_u3215((*c_p0).constants, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NimStringV2 argX60gensym114__1;
		if (!!((result < ((NI)8388607)))) goto LA3_;
		argX60gensym114__1.len = 0; argX60gensym114__1.p = NIM_NIL;
		argX60gensym114__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_49));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym114__1, (&TM__24XApAWKNvaMkcyklm8bNA_49));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		{
			LA5_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym114__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, genLiteral__vmgen_u1107)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI result;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	T1_ = (NI)0;
	T1_ = len__ast_u3190((*c_p0).constants);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = nodeTableTestOrSet__treetab_u225((&(*c_p0).contstantTab), n_p1, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T4_;
		NI lit_1;
		T4_ = (NI)0;
		T4_ = len__ast_u3190((*c_p0).constants);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(result == T4_)) goto LA5_;
		lit_1 = rawGenLiteral__vmgen_u1058(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genLit__vmgen_u1257)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	NI lit_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T5_;
		if (!((*dest_p2) < ((NI)0))) goto LA3_;
		T5_ = (NI)0;
		T5_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T5_;
	}
LA3_: ;
	lit_1 = genLiteral__vmgen_u1107(c_p0, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)179), ((*dest_p2)), lit_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genTypeLit__vmgen_u2482)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1, NI* dest_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	n_1 = NIM_NIL;
	n_1 = newNode__ast_u4069(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)4));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3381(&(*n_1).typField, t_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	genLit__vmgen_u1257(c_p0, n_1, dest_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toKey__vmgen_u3095)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	NimStringV2 result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_2;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	s_2 = NIM_NIL;
	result = TM__24XApAWKNvaMkcyklm8bNA_54;
	eqcopy___ast_u4577(&s_2, s_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		while (1) {
			tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
			if (!!((s_2 == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA3;
			colontmpD_ = NIM_NIL;
			prepareAdd((&result), (*(*s_2).name).s.len + 0);
appendString((&result), (*(*s_2).name).s);
			{
				colontmpD_ = owner__ast_u6254(s_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				if (!!((colontmpD_ == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA7_;
				{
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T13_;
					if (!(((*s_2).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)2)))&63U)))!=0)) goto LA11_;
					T13_ = NIM_NIL;
					T13_ = owner__ast_u6254((*s_2).instantiatedFrom);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T13_); goto LA4_;}
					eqsink___ast_u4583(&s_2, T13_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				}
				goto LA9_;
LA11_: ;
				{
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T15_;
					T15_ = NIM_NIL;
					T15_ = owner__ast_u6254(s_2);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T15_); goto LA4_;}
					eqsink___ast_u4583(&s_2, T15_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				}
LA9_: ;
				prepareAdd((&result), 1);
appendString((&result), TM__24XApAWKNvaMkcyklm8bNA_56);
			}
			goto LA5_;
LA7_: ;
			{
				eqdestroy___ast_u4574(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				goto LA2;
			}
LA5_: ;
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u4574(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		} LA3: ;
	} LA2: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u4574(s_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, procIsCallback__vmgen_u3120)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1) {
	NIM_BOOL result;
	NimStringV2 key_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	key_1.len = 0; key_1.p = NIM_NIL;
	{
		if (!((*s_p1).offset < ((NI32)-1))) goto LA4_;
		result = NIM_TRUE;
		eqdestroy___system_u2691(key_1);
		goto BeforeRet_;
	}
LA4_: ;
	key_1 = toKey__vmgen_u3095(s_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T8_;
		NI index_1;
		NI* T11_;
		T8_ = (NIM_BOOL)0;
		T8_ = contains__vmgen_u3169((*c_p0).callbackIndex, key_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T8_) goto LA9_;
		T11_ = (NI*)0;
		T11_ = X5BX5D___vmgen_u3252((&(*c_p0).callbackIndex), key_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		index_1 = (*T11_);
		{
			if (!!(((*s_p1).offset == ((NI32)-1)))) goto LA14_;
			failedAssertImpl__stdZassertions_u79(TM__24XApAWKNvaMkcyklm8bNA_58);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA14_: ;
		(*s_p1).offset = (NI32)(((NI32)-2) - ((NI32) (index_1)));
		result = NIM_TRUE;
	}
	goto LA6_;
LA9_: ;
	{
		result = NIM_FALSE;
	}
LA6_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(key_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, dontInlineConstant__trees_u396)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* orig_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* cnst_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NI T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)39) || (*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)37) || (*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)160) || (*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41) || (*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)38));
	if (!(T1_)) goto LA2_;
	T3_ = (NI)0;
	T3_ = len__ast_u3190(cnst_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (((*cnst_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)38)) < T3_);
LA2_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTemp__vmgen_u1042)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI dest_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (((NI)0) <= dest_p1);
	if (!(T1_)) goto LA2_;
	T1_ = (((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3) <= (*(*c_p0).prc).regInfo.p->data[dest_p1].Field1);
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u800)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	NI d_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	d_1 = dest_p2;
	gen__vmgen_u795(c_p0, n_p1, (&d_1), flags_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, patch__vmgen_u517)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI p_p1) {
	NI p_2;
	NI diff_1;
	NI T1_;
	NU64 oldInstr_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	p_2 = p_p1;
	T1_ = (*c_p0).code.len;
	diff_1 = (NI)(T1_ - p_2);
	{
		NIM_BOOL T4_;
		NimStringV2 argX60gensym46__1;
		T4_ = (NIM_BOOL)0;
		T4_ = (((NI)-8388607) < diff_1);
		if (!(T4_)) goto LA5_;
		T4_ = (diff_1 < ((NI)8388607));
LA5_: ;
		if (!!(T4_)) goto LA6_;
		argX60gensym46__1.len = 0; argX60gensym46__1.p = NIM_NIL;
		argX60gensym46__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_64));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym46__1, (&TM__24XApAWKNvaMkcyklm8bNA_64));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		{
			LA8_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym46__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA6_: ;
	oldInstr_1 = (*c_p0).code.p->data[p_2];
	(*c_p0).code.p->data[p_2] = (NU64)((NU64)(oldInstr_1 & 16777215ULL) | (NU64)((NU64)(((NU64) ((NI)(diff_1 + ((NI)8388608))))) << (NU64)(24ULL & (64 - 1))));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAndOr__vmgen_u1050)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI* dest_p3) {
	NI colontmpD_;
	NI colontmpD__2;
	NIM_BOOL copyBack_1;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T12_;
	NI lab1_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*dest_p3) < ((NI)0));
	if (T1_) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = isTemp__vmgen_u1042(c_p0, (*dest_p3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = !(T3_);
LA2_: ;
	copyBack_1 = T1_;
	{
		if (!copyBack_1) goto LA6_;
		colontmpD_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		tmp_1 = colontmpD_;
		{
			LA8_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA4_;
LA6_: ;
	{
		colontmpD__2 = ((*dest_p3));
		tmp_1 = colontmpD__2;
	}
LA4_: ;
	T12_ = 0;
	gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], tmp_1, T12_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	lab1_1 = xjmp__vmgen_u472(c_p0, n_p1, opc_p2, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T13_ = 0;
	gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], tmp_1, T13_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	patch__vmgen_u517(c_p0, lab1_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((*dest_p3) < ((NI)0))) goto LA16_;
		(*dest_p3) = tmp_1;
	}
	goto LA14_;
LA16_: ;
	{
		if (!copyBack_1) goto LA19_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)4), ((*dest_p3)), tmp_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA14_;
LA19_: ;
LA14_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInt8Lit__vmgen_u1564)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)5) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)15))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = (IL64(-128) <= (*n_p0)._kind_1.intVal);
		if (!(T5_)) goto LA6_;
		T5_ = ((*n_p0)._kind_1.intVal <= IL64(127));
LA6_: ;
		result = T5_;
	}
	goto LA1_;
LA3_: ;
	{
		result = NIM_FALSE;
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gABI__vmgen_u421)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI a_p3, NI b_p4, NI64 imm_p5) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA colontmpD_;
		NU64 ins_1;
		T3_ = (NIM_BOOL)0;
		T3_ = (IL64(-128) <= imm_p5);
		if (!(T3_)) goto LA4_;
		T3_ = (imm_p5 <= IL64(127));
LA4_: ;
		if (!T3_) goto LA5_;
		ins_1 = (NU64)((NU64)((NU64)(((NU64) (opc_p2)) | (NU64)((NU64)(((NU64) (a_p3))) << (NU64)(8ULL & (64 - 1)))) | (NU64)((NU64)(((NU64) (b_p4))) << (NU64)(24ULL & (64 - 1)))) | (NU64)((NU64)(((NU64) ((NI64)(imm_p5 + IL64(128))))) << (NU64)(40ULL & (64 - 1))));
		add__vmgen_u381((&(*c_p0).code), ins_1);
		colontmpD_ = eqdup___lineinfos_u2037((*n_p1).info);
		add__vmgen_u401((&(*c_p0).debug), colontmpD_);
	}
	goto LA1_;
LA5_: ;
	{
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_66, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_67), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABC__vmgen_u1432)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	NI tmp2_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = 0;
	tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T7_;
		if (!((*dest_p2) < ((NI)0))) goto LA5_;
		T7_ = (NI)0;
		T7_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T7_;
	}
LA5_: ;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), tmp_1, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genNarrow__vmgen_u1449)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
	NI64 size_1;
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	t_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	size_1 = getSize__types_u3411((*c_p0).config, t_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NIM_BOOL T6_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*t_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)41) && (*t_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)43));
		if (T4_) goto LA5_;
		T6_ = (NIM_BOOL)0;
		T6_ = ((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40));
		if (!(T6_)) goto LA7_;
		T6_ = (size_1 < IL64(8));
LA7_: ;
		T4_ = T6_;
LA5_: ;
		if (!T4_) goto LA8_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), (dest_p2), ((NI) ((NI64)(size_1 * IL64(8)))), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA8_: ;
	{
		NIM_BOOL T11_;
		NIM_BOOL T13_;
		T11_ = (NIM_BOOL)0;
		T11_ = ((*t_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)32) && (*t_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)34));
		if (T11_) goto LA12_;
		T13_ = (NIM_BOOL)0;
		T13_ = ((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
		if (!(T13_)) goto LA14_;
		T13_ = (size_1 < IL64(8));
LA14_: ;
		T11_ = T13_;
LA12_: ;
		if (!T11_) goto LA15_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)99), (dest_p2), ((NI) ((NI64)(size_1 * IL64(8)))), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA15_: ;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* intType_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
		NI first_1;
		tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T21_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T22_;
		NI last_1;
		tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T23_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T24_;
		if (!((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)20))) goto LA18_;
		intType_1 = NIM_NIL;
		colontmpD_ = NIM_NIL;
		colontmpD__2 = NIM_NIL;
		intType_1 = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		T21_ = firstOrd__types_u1182((*c_p0).config, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		colontmpD_ = newIntTypeNode__ast_u5414(T21_, intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		T22_ = 0;
		first_1 = genx__vmgen_u830(c_p0, colontmpD_, T22_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		T23_ = lastOrd__types_u1304((*c_p0).config, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		colontmpD__2 = newIntTypeNode__ast_u5414(T23_, intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		T24_ = 0;
		last_1 = genx__vmgen_u830(c_p0, colontmpD__2, T24_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)101), (dest_p2), first_1, last_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		freeTemp__vmgen_u653(c_p0, first_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		freeTemp__vmgen_u653(c_p0, last_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		{
			LA20_:;
		}
		{
			oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3378(intType_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin20_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA18_: ;
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAddSubInt__vmgen_u1594)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T6_;
		T3_ = (NIM_BOOL)0;
		T3_ = isInt8Lit__vmgen_u1564((*n_p1)._kind_6.sons.p->data[((NI)2)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		T6_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T6_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T11_;
			if (!((*dest_p2) < ((NI)0))) goto LA9_;
			T11_ = (NI)0;
			T11_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T11_;
		}
LA9_: ;
		gABI__vmgen_u421(c_p0, n_p1, (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)(opc_p3 + ((NI)1)), ((*dest_p2)), tmp_1, (*(*n_p1)._kind_6.sons.p->data[((NI)2)])._kind_1.intVal);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA4_: ;
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, opc_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	genNarrow__vmgen_u1449(c_p0, n_p1, (*dest_p2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(void, unused__vmgen_u1115)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI x_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!(((NI)0) <= x_p2)) goto LA3_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_70, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_71), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, genIndex__vmgen_u1350)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* arr_p2) {
	NI result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	colontmpD_ = NIM_NIL;
	{
		NIM_BOOL T4_;
		tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg x_1;
		NIM_BOOL T6_;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T9_;
		NI T10_;
		T4_ = (NIM_BOOL)0;
		colontmpD_ = skipTypes__ast_u5379(arr_p2, TM__24XApAWKNvaMkcyklm8bNA_73);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = ((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)16));
		if (!(T4_)) goto LA5_;
		x_1 = firstOrd__types_u1182((*c_p0).config, arr_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T6_ = (NIM_BOOL)0;
		T6_ = eqeq___int128_u412(x_1, Zero__int128_u8);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = !(T6_);
LA5_: ;
		if (!T4_) goto LA7_;
		T9_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, n_p1, T9_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		result = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T10_ = (NI)0;
		T10_ = toInt__int128_u257(x_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)33), result, tmp_1, ((NI64) (T10_)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA7_: ;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T12_;
		T12_ = 0;
		result = genx__vmgen_u830(c_p0, n_p1, T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, genField__vmgen_u1333)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	s_1 = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = !(((*n_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3)));
		if (T3_) goto LA4_;
		T3_ = !(((*(*n_p1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19)));
LA4_: ;
		if (!T3_) goto LA5_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_78, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_79), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	s_1 = (*n_p1)._kind_4.sym;
	{
		NimStringV2 colontmpD_;
		NimStringV2 T12_;
		if (!(((NI)65535) < (*s_1).position)) goto LA9_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		T12_.len = 0; T12_.p = NIM_NIL;
		T12_ = rawNewString((*(*s_1).name).s.len + 44);
appendString((&T12_), TM__24XApAWKNvaMkcyklm8bNA_81);
appendString((&T12_), (*(*s_1).name).s);
		colontmpD_ = T12_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD_, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_82), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			LA11_:;
		}
		{
			eqdestroy___system_u2691(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA9_: ;
	result = ((*s_1).position);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genCheckedObjAccessAux__vmgen_u1361)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* accessExpr_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* checkExpr_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* disc_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__2;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__3;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* strType_1;
	NimStringV2 fieldName_1;
	NimStringV2 msg_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* strLit_1;
	NIM_BOOL negCheck_1;
	NI discVal_1;
	NI T21_;
	NI setLit_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T22_;
	NI rs_1;
	NI lab1_1;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T23_;
	NI msgReg_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	accessExpr_1 = NIM_NIL;
	checkExpr_1 = NIM_NIL;
	disc_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	colontmpD__3 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	strType_1 = NIM_NIL;
	fieldName_1.len = 0; fieldName_1.p = NIM_NIL;
	msg_1.len = 0; msg_1.p = NIM_NIL;
	strLit_1 = NIM_NIL;
	{
		NimStringV2 argX60gensym670__1;
		if (!!(((*n_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46)))) goto LA4_;
		argX60gensym670__1.len = 0; argX60gensym670__1.p = NIM_NIL;
		argX60gensym670__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_75));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym670__1, (&TM__24XApAWKNvaMkcyklm8bNA_75));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym670__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	eqcopy___ast_u3255(&accessExpr_1, (*n_p1)._kind_6.sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3255(&checkExpr_1, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	negCheck_1 = ((*(*(*checkExpr_1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)96));
	{
		NI T13_;
		if (!negCheck_1) goto LA11_;
		T13_ = (NI)0;
		T13_ = len__ast_u3190(checkExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqcopy___ast_u3255(&checkExpr_1, (*checkExpr_1)._kind_6.sons.p->data[(NI)(T13_ - ((NI)1))]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA11_: ;
	eqcopy___ast_u3255(&disc_1, (*checkExpr_1)._kind_6.sons.p->data[((NI)2)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 argX60gensym679__1;
		if (!!(((*(*disc_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19)))) goto LA16_;
		argX60gensym679__1.len = 0; argX60gensym679__1.p = NIM_NIL;
		argX60gensym679__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_76));
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym679__1, (&TM__24XApAWKNvaMkcyklm8bNA_76));
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		{
			LA18_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym679__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA16_: ;
	gen__vmgen_u795(c_p0, (*accessExpr_1)._kind_6.sons.p->data[((NI)0)], dest_p2, flags_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	discVal_1 = getTemp__vmgen_u644(c_p0, (*disc_1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T21_ = (NI)0;
	T21_ = genField__vmgen_u1333(c_p0, disc_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)19), discVal_1, ((*dest_p2)), T21_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T22_ = 0;
	setLit_1 = genx__vmgen_u830(c_p0, (*checkExpr_1)._kind_6.sons.p->data[((NI)1)], T22_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	rs_1 = getTemp__vmgen_u644(c_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)87), rs_1, setLit_1, discVal_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, setLit_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T23_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	{
		if (!negCheck_1) goto LA26_;
		colontmpD__2 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167);
		T23_ = colontmpD__2;
	}
	goto LA24_;
LA26_: ;
	{
		colontmpD__3 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166);
		T23_ = colontmpD__3;
	}
LA24_: ;
	lab1_1 = xjmp__vmgen_u472(c_p0, n_p1, T23_, rs_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, rs_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	strType_1 = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	msgReg_1 = getTemp__vmgen_u644(c_p0, strType_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	fieldName_1 = dollar___renderer_u2166((*accessExpr_1)._kind_6.sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	msg_1 = genFieldDefect__astmsgs_u68((*c_p0).config, fieldName_1, (*disc_1)._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	strLit_1 = newStrNode__ast_u5426(msg_1, (*(*accessExpr_1)._kind_6.sons.p->data[((NI)1)]).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqsink___ast_u3387(&(*strLit_1).typField, strType_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqwasMoved___ast_u3375(&strType_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	genLit__vmgen_u1257(c_p0, strLit_1, (&msgReg_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)98), (msgReg_1), discVal_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, discVal_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, (msgReg_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	patch__vmgen_u517(c_p0, lab1_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(strLit_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(msg_1);
		eqdestroy___system_u2691(fieldName_1);
		eqdestroy___ast_u3378(strType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(disc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(checkExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(accessExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAsgnPatch__vmgen_u1366)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p1, NI value_p2) {
NIM_BOOL oldNimErrFin2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*le_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)42):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* collTyp_1;
		NI dest_1;
		NI idx_1;
		collTyp_1 = NIM_NIL;
		dest_1 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		idx_1 = genIndex__vmgen_u1350(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)], (*(*le_p1)._kind_6.sons.p->data[((NI)0)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		collTyp_1 = skipTypes__ast_u5379((*(*le_p1)._kind_6.sons.p->data[((NI)0)]).typField, TM__24XApAWKNvaMkcyklm8bNA_74);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		switch ((*collTyp_1).kind) {
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
		{
			gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)26), dest_1, idx_1, value_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
		{
			gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), dest_1, (((NI) ((*(*le_p1)._kind_6.sons.p->data[((NI)1)])._kind_1.intVal))), value_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		default:
		{
			gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)18), dest_1, idx_1, value_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		}
		freeTemp__vmgen_u653(c_p0, dest_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		freeTemp__vmgen_u653(c_p0, idx_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(collTyp_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46):
	{
		NI objR_1;
		NI idx_2;
		objR_1 = ((NI)-1);
		genCheckedObjAccessAux__vmgen_u1361(c_p0, le_p1, (&objR_1), 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		idx_2 = genField__vmgen_u1333(c_p0, (*(*le_p1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), (objR_1), idx_2, value_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, (objR_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45):
	{
		NI dest_2;
		NI idx_3;
		dest_2 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		idx_3 = genField__vmgen_u1333(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), dest_2, idx_3, value_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, dest_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65):
	{
		NI dest_3;
		dest_3 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), dest_3, ((NI)0), value_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, dest_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		{
			NIM_BOOL T14_;
			NI dest_4;
			T14_ = (NIM_BOOL)0;
			T14_ = (((*(*le_p1)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
			if (!(T14_)) goto LA15_;
			T14_ = !(((*(*le_p1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA15_: ;
			if (!T14_) goto LA16_;
			dest_4 = genx__vmgen_u830(c_p0, le_p1, 2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			gABC__vmgen_u354(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), dest_4, ((NI)0), value_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			freeTemp__vmgen_u653(c_p0, dest_4);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA16_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)58):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)59):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)60):
	{
		{
			NIM_BOOL T21_;
			T21_ = (NIM_BOOL)0;
			T21_ = sameBackendType__types_u637((*le_p1).typField, (*(*le_p1)._kind_6.sons.p->data[((NI)1)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T21_) goto LA22_;
			genAsgnPatch__vmgen_u1366(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)], value_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA22_: ;
	}
	break;
	default:
	{
	}
	break;
	}
	}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isEmptyType__ast_u7234)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (t_p0 == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL));
	if (T1_) goto LA2_;
	T1_ = ((*t_p0).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)63) || (*t_p0).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7));
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getTempRange__vmgen_u665)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* cc_p0, NI n_p1, tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A kind_p2) {
	NI result;
	tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* c_1;
	NI T35_;
	NI T36_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	c_1 = NIM_NIL;
	eqcopy___vmdef_u1299(&c_1, (*cc_p0).prc);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NI T5_;
		NI T7_;
		T4_ = (NIM_BOOL)0;
		T5_ = (*c_1).regInfo.len;
		T4_ = (((NI)40) <= T5_);
		if (T4_) goto LA6_;
		T7_ = (*c_1).regInfo.len;
		T4_ = (((NI)65535) <= (NI)(T7_ + n_p1));
LA6_: ;
		if (!T4_) goto LA8_;
		{
			NI i_1;
			NI colontmp_;
			NI T11_;
			NI res_1;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T11_ = (*c_1).regInfo.len;
			colontmp_ = (NI)(T11_ - n_p1);
			res_1 = ((NI)0);
			{
				while (1) {
					if (!(res_1 <= colontmp_)) goto LA13;
					i_1 = ((NI) (res_1));
					{
						if (!!((*c_1).regInfo.p->data[i_1].Field0)) goto LA16_;
						{
							{
								NI j_1;
								NI colontmp__2;
								NI colontmp__3;
								NI res_2;
								j_1 = (NI)0;
								colontmp__2 = (NI)0;
								colontmp__3 = (NI)0;
								colontmp__2 = (NI)(i_1 + ((NI)1));
								colontmp__3 = (NI)((NI)(i_1 + n_p1) - ((NI)1));
								res_2 = colontmp__2;
								{
									while (1) {
										if (!(res_2 <= colontmp__3)) goto LA21;
										j_1 = ((NI) (res_2));
										{
											if (!(*c_1).regInfo.p->data[j_1].Field0) goto LA24_;
											goto LA18;
										}
LA24_: ;
										res_2 += ((NI)1);
									} LA21: ;
								}
							}
							result = (i_1);
							{
								NI k_1;
								NI colontmp__4;
								NI res_3;
								k_1 = (NI)0;
								colontmp__4 = (NI)0;
								colontmp__4 = ((NI)((NI)(result + n_p1) - ((NI)1)));
								res_3 = result;
								{
									while (1) {
										NIM_BOOL colontmp__5;
										tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__6;
										if (!(res_3 <= colontmp__4)) goto LA28;
										k_1 = ((NI) (res_3));
										colontmp__5 = NIM_TRUE;
										colontmp__6 = kind_p2;
										(*c_1).regInfo.p->data[k_1].Field0 = colontmp__5;
										(*c_1).regInfo.p->data[k_1].Field1 = colontmp__6;
										res_3 += ((NI)1);
									} LA28: ;
								}
							}
							eqdestroy___vmdef_u1296(c_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						} LA18: ;
					}
LA16_: ;
					res_1 += ((NI)1);
				} LA13: ;
			}
		}
	}
LA8_: ;
	{
		NI T31_;
		tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA T34_;
		T31_ = (*c_1).regInfo.len;
		if (!(((NI)65535) <= (NI)(T31_ + n_p1))) goto LA32_;
		T34_ = bestEffort__vmgen_u561(cc_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		liMessage__msgs_u1227((*cc_p0).config, T34_, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_83, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_84), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA32_: ;
	T35_ = (*c_1).regInfo.len;
	result = (T35_);
	T36_ = (*c_1).regInfo.len;
	setLen__vmdef_u1206((&(*c_1).regInfo), ((NI)(T36_ + n_p1)));
	{
		NI k_2;
		NI colontmp__7;
		NI res_4;
		k_2 = (NI)0;
		colontmp__7 = (NI)0;
		colontmp__7 = ((NI)((NI)(result + n_p1) - ((NI)1)));
		res_4 = result;
		{
			while (1) {
				NIM_BOOL colontmp__8;
				tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__9;
				if (!(res_4 <= colontmp__7)) goto LA39;
				k_2 = ((NI) (res_4));
				colontmp__8 = NIM_TRUE;
				colontmp__9 = kind_p2;
				(*c_1).regInfo.p->data[k_2].Field0 = colontmp__8;
				(*c_1).regInfo.p->data[k_2].Field1 = colontmp__9;
				res_4 += ((NI)1);
			} LA39: ;
		}
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___vmdef_u1296(c_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, signatureLen__ast_u5610)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NI result;
	NI T1_;
	T1_ = (*t_p0).sons.len;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, genType__vmgen_u1155)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1) {
	NI result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL oldNimErrFin2_;
	NI T14_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
		NI i_1;
		NI i_2;
		NI L_1;
		NI T3_;
		t_1 = NIM_NIL;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		T3_ = (*c_p0).types.len;
		L_1 = T3_;
		{
			while (1) {
				if (!(i_2 < L_1)) goto LA5;
				i_1 = i_2;
				eqcopy___ast_u3381(&t_1, (*c_p0).types.p->data[i_2]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				{
					tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ T8_;
					NIM_BOOL T9_;
					T8_ = 0;
					T9_ = (NIM_BOOL)0;
					T9_ = sameType__types_u1826(t_1, typ_p1, T8_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
					if (!T9_) goto LA10_;
					result = i_1;
					eqdestroy___ast_u3378(t_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA10_: ;
				i_2 += ((NI)1);
			} LA5: ;
		}
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(t_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	T14_ = (*c_p0).types.len;
	result = T14_;
	colontmpD_ = eqdup___ast_u3384(typ_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__ast_u3891((&(*c_p0).types), colontmpD_);
	{
		NimStringV2 argX60gensym142__1;
		if (!!((result <= ((NI)8388607)))) goto LA17_;
		argX60gensym142__1.len = 0; argX60gensym142__1.p = NIM_NIL;
		argX60gensym142__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_86));
		if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym142__1, (&TM__24XApAWKNvaMkcyklm8bNA_86));
		if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		{
			LA19_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym142__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA17_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, freeTempRange__vmgen_u733)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI start_p1, NI n_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI i_1;
		NI colontmp_;
		NI res_1;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = ((NI)((NI)(start_p1 + n_p2) - ((NI)1)));
		res_1 = start_p1;
		{
			while (1) {
				if (!(res_1 <= colontmp_)) goto LA3;
				i_1 = ((NI) (res_1));
				freeTemp__vmgen_u653(c_p0, i_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				res_1 += ((NI)1);
			} LA3: ;
		}
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genCall__vmgen_u1262)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* fntyp_1;
	NI x_1;
	NI T17_;
NIM_BOOL oldNimErrFin35_;
	NI T54_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	fntyp_1 = NIM_NIL;
	{
		NIM_BOOL T4_;
		NI T5_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NI)0;
		T5_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = (T5_ == ((NI)0));
		if (T4_) goto LA6_;
		T4_ = ((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField == 0);
LA6_: ;
		if (!T4_) goto LA7_;
		eqdestroy___ast_u3378(fntyp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA7_: ;
	{
		NIM_BOOL T11_;
		NIM_BOOL T13_;
		NI T16_;
		T11_ = (NIM_BOOL)0;
		T11_ = ((*dest_p2) < ((NI)0));
		if (!(T11_)) goto LA12_;
		T13_ = (NIM_BOOL)0;
		T13_ = isEmptyType__ast_u7234((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T11_ = !(T13_);
LA12_: ;
		if (!T11_) goto LA14_;
		T16_ = (NI)0;
		T16_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T16_;
	}
LA14_: ;
	T17_ = (NI)0;
	T17_ = len__ast_u3190(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	x_1 = getTempRange__vmgen_u665(c_p0, T17_, ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	fntyp_1 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField, TM__24XApAWKNvaMkcyklm8bNA_73);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)0);
		{
			while (1) {
				NI r_1;
				if (!(i_2 < colontmp_)) goto LA20;
				i_1 = i_2;
				r_1 = ((NI)(x_1 + i_1));
				{
					NI T23_;
					NI T33_;
					T23_ = (NI)0;
					T23_ = signatureLen__ast_u5610(fntyp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					if (!(T23_ <= i_1)) goto LA24_;
					gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[i_1], r_1, 4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					{
						NimStringV2 argX60gensym173__1;
						if (!!((((*fntyp_1).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A)0)))&63U)))!=0))) goto LA28_;
						argX60gensym173__1.len = 0; argX60gensym173__1.p = NIM_NIL;
						argX60gensym173__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_85));
						if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
						internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym173__1, (&TM__24XApAWKNvaMkcyklm8bNA_85));
						if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
						{
							LA30_:;
						}
						{
							eqdestroy___system_u2691(argX60gensym173__1);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					}
LA28_: ;
					T33_ = (NI)0;
					T33_ = genType__vmgen_u1155(c_p0, (*(*n_p1)._kind_6.sons.p->data[i_1]).typField);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)188), r_1, T33_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
				goto LA21_;
LA24_: ;
				{
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
					colontmpD_ = NIM_NIL;
					{
						NIM_BOOL T38_;
						NIM_BOOL T39_;
						T38_ = (NIM_BOOL)0;
						T39_ = (NIM_BOOL)0;
						T39_ = !(((*fntyp_1).sons.p->data[i_1] == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
						if (!(T39_)) goto LA40_;
						T39_ = ((*(*fntyp_1).sons.p->data[i_1]).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)46));
LA40_: ;
						T38_ = T39_;
						if (!(T38_)) goto LA41_;
						colontmpD_ = skipTypes__ast_u5379((*fntyp_1).sons.p->data[i_1], TM__24XApAWKNvaMkcyklm8bNA_87);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
						T38_ = ((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24));
LA41_: ;
						if (!T38_) goto LA42_;
						gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[i_1], r_1, 8);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
					}
					goto LA36_;
LA42_: ;
					{
						gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[i_1], r_1, 4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
					}
LA36_: ;
					{
						LA35_:;
					}
					{
						oldNimErrFin35_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3378(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin35_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA21_: ;
				i_2 += ((NI)1);
			} LA20: ;
		}
	}
	{
		NI T51_;
		if (!((*dest_p2) < ((NI)0))) goto LA49_;
		T51_ = (NI)0;
		T51_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)159), ((NI)0), x_1, (T51_));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA47_;
LA49_: ;
	{
		NI T53_;
		T53_ = (NI)0;
		T53_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)160), ((*dest_p2)), x_1, (T53_));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA47_: ;
	T54_ = (NI)0;
	T54_ = len__ast_u3190(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTempRange__vmgen_u733(c_p0, x_1, T54_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(fntyp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, needsAsgnPatch__vmgen_u1314)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	NIM_BOOL T5_;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)42) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65));
	if (T1_) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
	if (!(T3_)) goto LA4_;
	T5_ = (NIM_BOOL)0;
	T5_ = (((*(*n_p0)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
	if (!(T5_)) goto LA6_;
	T5_ = !(((*(*n_p0)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA6_: ;
	T3_ = T5_;
LA4_: ;
	T1_ = T3_;
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genNew__vmgen_u1391)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI colontmpD_;
	NI colontmpD__2;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
	NI dest_1;
	NI T15_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	colontmpD__3 = NIM_NIL;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = needsAsgnPatch__vmgen_u1314((*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T4_) goto LA5_;
		colontmpD_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		dest_1 = colontmpD_;
		{
			LA7_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA5_: ;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T12_;
		T12_ = 0;
		colontmpD__2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		dest_1 = colontmpD__2;
		{
			LA11_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	colontmpD__3 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T15_ = (NI)0;
	T15_ = genType__vmgen_u1155(c_p0, (*colontmpD__3).sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)175), dest_1, T15_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	genAsgnPatch__vmgen_u1366(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genNewSeq__vmgen_u1399)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
	NI colontmpD_;
	NI colontmpD__2;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
	NI dest_1;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T15_;
	NI T16_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	colontmpD__3 = NIM_NIL;
	eqcopy___ast_u3381(&t_1, (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = needsAsgnPatch__vmgen_u1314((*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T4_) goto LA5_;
		colontmpD_ = getTemp__vmgen_u644(c_p0, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		dest_1 = colontmpD_;
		{
			LA7_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA5_: ;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T12_;
		T12_ = 0;
		colontmpD__2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		dest_1 = colontmpD__2;
		{
			LA11_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	T15_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T15_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__3 = skipTypes__ast_u5379(t_1, TM__24XApAWKNvaMkcyklm8bNA_68);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T16_ = (NI)0;
	T16_ = genType__vmgen_u1155(c_p0, colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), dest_1, T16_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	genAsgnPatch__vmgen_u1366(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genNewSeqOfCap__vmgen_u1409)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	NI tmp_1;
	NI T7_;
	NI T8_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	eqcopy___ast_u3381(&t_1, (*n_p1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	tmp_1 = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T7_ = (NI)0;
	T7_ = genType__vmgen_u1155(c_p0, t_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177), ((*dest_p2)), T7_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = skipTypes__ast_u5379(t_1, TM__24XApAWKNvaMkcyklm8bNA_68);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T8_ = (NI)0;
	T8_ = genType__vmgen_u1155(c_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), ((*dest_p2)), T8_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genUnaryABC__vmgen_u1419)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genUnaryABI__vmgen_u1425)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3, NI64 imm_p4) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	gABI__vmgen_u421(c_p0, n_p1, opc_p3, ((*dest_p2)), tmp_1, imm_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genSetType__vmgen_u1510)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	t_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_88);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T6_;
		if (!((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)19))) goto LA4_;
		T6_ = (NI)0;
		T6_ = genType__vmgen_u1155(c_p0, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)188), dest_p2, T6_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genCard__vmgen_u1626)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	genSetType__vmgen_u1510(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)40), ((*dest_p2)), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCnarrow__vmgen_u1500)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, opc_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	genNarrow__vmgen_u1449(c_p0, n_p1, (*dest_p2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genNarrowU__vmgen_u1482)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
	NI64 size_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	t_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	size_1 = getSize__types_u3411((*c_p0).config, t_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NIM_BOOL T6_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*t_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)41) && (*t_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)43) || (*t_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)32) && (*t_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)34));
		if (T4_) goto LA5_;
		T6_ = (NIM_BOOL)0;
		T6_ = ((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) || (*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
		if (!(T6_)) goto LA7_;
		T6_ = (size_1 < IL64(8));
LA7_: ;
		T4_ = T6_;
LA5_: ;
		if (!T4_) goto LA8_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), (dest_p2), ((NI) ((NI64)(size_1 * IL64(8)))), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA8_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, sizeLog2__vmgen_u1840)(NI64 typeSize_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	switch (typeSize_p0) {
	case IL64(8):
	{
		result = ((NI)3);
	}
	break;
	case IL64(16):
	{
		result = ((NI)4);
	}
	break;
	case IL64(32):
	{
		result = ((NI)5);
	}
	break;
	case IL64(64):
	{
		result = ((NI)6);
	}
	break;
	default:
	{
		NimStringV2 colontmpD_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD_ = dollar___systemZdollars_u29(typeSize_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		raiseAssert__stdZassertions_u15(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(colontmpD_);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCnarrowU__vmgen_u1505)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, opc_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	genNarrowU__vmgen_u1482(c_p0, n_p1, (*dest_p2));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU64)(((NU) (x_p0))) - (NU64)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		{
			if (!result) goto LA13_;
			{
				if (!(((NI)0) < (*cell_1).rootIdx)) goto LA17_;
				unregisterCycle__system_u3127(cell_1);
			}
LA17_: ;
		}
LA13_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmgen_u5482)(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn((*dest_p0).arg3);
		if (!T3_) goto LA4_;
		eqdestroy___ast_u3270((&(*(*dest_p0).arg3)));
		nimRawDispose((*dest_p0).arg3, ((NI)8));
	}
LA4_: ;
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastDyn((*dest_p0).n2);
		if (!T8_) goto LA9_;
		eqdestroy___ast_u3270((&(*(*dest_p0).n2)));
		nimRawDispose((*dest_p0).n2, ((NI)8));
	}
LA9_: ;
	{
		NIM_BOOL T13_;
		T13_ = (NIM_BOOL)0;
		T13_ = nimDecRefIsLastDyn((*dest_p0).targ21);
		if (!T13_) goto LA14_;
		eqdestroy___ast_u3288((&(*(*dest_p0).targ21)));
		nimRawDispose((*dest_p0).targ21, ((NI)8));
	}
LA14_: ;
	{
		NIM_BOOL T18_;
		T18_ = (NIM_BOOL)0;
		T18_ = nimDecRefIsLastDyn((*dest_p0).t20);
		if (!T18_) goto LA19_;
		eqdestroy___ast_u3288((&(*(*dest_p0).t20)));
		nimRawDispose((*dest_p0).t20, ((NI)8));
	}
LA19_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__vmgen_u5570)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___vmgen_u5482((&(*((tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_CLOSURE(NIM_BOOL, implicitConv__vmgen_u1615)(void* ClE_0) {
	NIM_BOOL result;
	tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* colonenvP__1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colonenvP__1 = (tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA*) ClE_0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = sameBackendType__types_u637((*colonenvP__1).t20, (*colonenvP__1).targ21);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
LA4_: ;
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = ((*(*(*colonenvP__1).n2).typField).kind == (*(*(*colonenvP__1).arg3).typField).kind);
		if (!(T8_)) goto LA9_;
		T8_ = ((*(*(*colonenvP__1).arg3).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)25));
LA9_: ;
		if (!T8_) goto LA10_;
		result = NIM_TRUE;
	}
	goto LA6_;
LA10_: ;
	{
		result = NIM_FALSE;
	}
LA6_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		rememberCycle__system_u3497(result, cell_1, desc_p1);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmgen_u5534)(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__HAIZhF7wu4MbXwUkt4HXyA_))));
		if (!T3_) goto LA4_;
		eqdestroy___vmgen_u5482((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genConv__vmgen_u1606)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg_p2, NI* dest_p3, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p4, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p5) {
	tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* colonenv__1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
	tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA* T2_;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T3_;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T4_;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T11_;
	NI T17_;
	NI T18_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colonenv__1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = (tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA*) nimNewObj(sizeof(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA), NIM_ALIGNOF(tyObject_Env_vmgendotnim_genConv___HAIZhF7wu4MbXwUkt4HXyA));
	(*T2_).Sup.m_type = (&NTIv2__HAIZhF7wu4MbXwUkt4HXyA_);
	colonenv__1 = T2_;
	eqcopy___ast_u3255(&(*colonenv__1).n2, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3255(&(*colonenv__1).arg3, arg_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T3_ = NIM_NIL;
	T3_ = skipTypes__ast_u5379((*(*colonenv__1).n2).typField, TM__24XApAWKNvaMkcyklm8bNA_93);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T3_); goto LA1_;}
	eqsink___ast_u3387(&(*colonenv__1).t20, T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T4_ = NIM_NIL;
	T4_ = skipTypes__ast_u5379((*(*colonenv__1).arg3).typField, TM__24XApAWKNvaMkcyklm8bNA_93);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T4_); goto LA1_;}
	eqsink___ast_u3387(&(*colonenv__1).targ21, T4_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyProc__In3g79a0qTcRmbTbJp9ba9ctg T7_;
		NIM_BOOL T8_;
		nimZeroMem((void*)(&T7_), sizeof(tyProc__In3g79a0qTcRmbTbJp9ba9ctg));
		T7_.ClP_0 = implicitConv__vmgen_u1615; T7_.ClE_0 = colonenv__1;
		T8_ = (NIM_BOOL)0;
		T8_ = T7_.ClE_0? T7_.ClP_0(T7_.ClE_0):((TM__24XApAWKNvaMkcyklm8bNA_94)(T7_.ClP_0))();
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T8_) goto LA9_;
		gen__vmgen_u795(c_p0, (*colonenv__1).arg3, dest_p3, flags_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3378(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___vmgen_u5534(colonenv__1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA9_: ;
	T11_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*colonenv__1).arg3, T11_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T16_;
		if (!((*dest_p3) < ((NI)0))) goto LA14_;
		T16_ = (NI)0;
		T16_ = getTemp__vmgen_u644(c_p0, (*(*colonenv__1).n2).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p3) = T16_;
	}
LA14_: ;
	gABC__vmgen_u354(c_p0, (*colonenv__1).n2, opc_p5, ((*dest_p3)), tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = skipTypes__ast_u5379((*(*colonenv__1).n2).typField, TM__24XApAWKNvaMkcyklm8bNA_32);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T17_ = (NI)0;
	T17_ = genType__vmgen_u1155(c_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, (*colonenv__1).n2, opc_p5, ((NI)0), T17_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = skipTypes__ast_u5379((*(*colonenv__1).arg3).typField, TM__24XApAWKNvaMkcyklm8bNA_32);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T18_ = (NI)0;
	T18_ = genType__vmgen_u1155(c_p0, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, (*colonenv__1).n2, opc_p5, ((NI)0), T18_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___vmgen_u5534(colonenv__1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinarySet__vmgen_u1523)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	NI tmp2_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = 0;
	tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T7_;
		if (!((*dest_p2) < ((NI)0))) goto LA5_;
		T7_ = (NI)0;
		T7_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T7_;
	}
LA5_: ;
	genSetType__vmgen_u1510(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	genSetType__vmgen_u1510(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), tmp_1, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genVarargsABC__vmgen_u1552)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
	NI x_1;
	NI T6_;
	NI T11_;
	NI T12_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T5_;
		if (!((*dest_p2) < ((NI)0))) goto LA3_;
		T5_ = (NI)0;
		T5_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T5_;
	}
LA3_: ;
	T6_ = (NI)0;
	T6_ = len__ast_u3190(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	x_1 = getTempRange__vmgen_u665(c_p0, (NI)(T6_ - ((NI)1)), ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)6));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = ((NI)1);
		{
			while (1) {
				NI r_1;
				tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T10_;
				if (!(i_2 < colontmp_)) goto LA9;
				i_1 = i_2;
				r_1 = ((NI)((NI)(x_1 + i_1) - ((NI)1)));
				T10_ = 0;
				gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[i_1], r_1, T10_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_2 += ((NI)1);
			} LA9: ;
		}
	}
	T11_ = (NI)0;
	T11_ = len__ast_u3190(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), x_1, ((NI)(T11_ - ((NI)1))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T12_ = (NI)0;
	T12_ = len__ast_u3190(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTempRange__vmgen_u733(c_p0, x_1, (NI)(T12_ - ((NI)1)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA, ldNullOpcode__vmgen_u1818)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA result;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD_;
	tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	colontmpD__2 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = fitsRegister__vmgen_u1796(t_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		colontmpD_ = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)178);
		result = colontmpD_;
	}
	goto LA1_;
LA4_: ;
	{
		colontmpD__2 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177);
		result = colontmpD__2;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryStmtVar__vmgen_u1536)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_1;
	NI dest_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T5_;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	x_1 = NIM_NIL;
	x_1 = (*n_p1)._kind_6.sons.p->data[((NI)1)];
	{
		if (!((*x_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)63) || (*x_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)64))) goto LA3_;
		x_1 = (*x_1)._kind_6.sons.p->data[((NI)0)];
	}
LA3_: ;
	T5_ = 0;
	dest_1 = genx__vmgen_u830(c_p0, x_1, T5_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T6_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T6_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p2, dest_1, tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryABCD__vmgen_u1439)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3) {
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	NI tmp2_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
	NI tmp3_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = 0;
	tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T3_ = 0;
	tmp3_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)3)], T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T8_;
		if (!((*dest_p2) < ((NI)0))) goto LA6_;
		T8_ = (NI)0;
		T8_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T8_;
	}
LA6_: ;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), tmp_1, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p3, tmp3_1, ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp3_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genVoidABC__vmgen_u1769)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opcode_p3) {
	NI tmp1_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	NI tmp2_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
	NI tmp3_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	unused__vmgen_u1115(c_p0, n_p1, dest_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = 0;
	tmp1_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = 0;
	tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T3_ = 0;
	tmp3_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)3)], T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opcode_p3, tmp1_1, tmp2_1, tmp3_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp1_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp2_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp3_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2) {
	int result;
	result = memcmp(a_p0, b_p1, ((size_t) (size_p2)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2) {
	NIM_BOOL result;
	int T1_;
	T1_ = (int)0;
	T1_ = nimCmpMem(a_p0, b_p1, size_p2);
	result = (T1_ == ((NI32)0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1) {
	NIM_BOOL result;
	NI alen_1;
	NI blen_1;
{	result = NIM_FALSE;
	alen_1 = a_p0.len;
	blen_1 = b_p1.len;
	{
		if (!(alen_1 == blen_1)) goto LA3_;
		{
			if (!(alen_1 == ((NI)0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
LA7_: ;
		result = equalMem__system_u1750(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genBinaryStmt__vmgen_u1530)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2) {
	NI dest_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	dest_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = 0;
	tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, opc_p2, dest_1, tmp_1, ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBindSym__vmgen_u1777)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T3_ == ((NI)2))) goto LA4_;
		{
			NI idx_1;
			if (!((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)56) || (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)57) || (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)165) || (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA8_;
			idx_1 = genLiteral__vmgen_u1107(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				NI T14_;
				if (!((*dest_p2) < ((NI)0))) goto LA12_;
				T14_ = (NI)0;
				T14_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				(*dest_p2) = T14_;
			}
LA12_: ;
			gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)186), ((*dest_p2)), idx_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA6_;
LA8_: ;
		{
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_109, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_110), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA6_: ;
	}
	goto LA1_;
LA4_: ;
	{
		NI x_1;
		NI T22_;
		NI tmp0_1;
		NI tmp1_1;
		NI T28_;
		NI T29_;
		NI tmp2_1;
		NI T30_;
		NI T31_;
		NI T32_;
		NI T33_;
		{
			NI T21_;
			if (!((*dest_p2) < ((NI)0))) goto LA19_;
			T21_ = (NI)0;
			T21_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T21_;
		}
LA19_: ;
		T22_ = (NI)0;
		T22_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		x_1 = getTempRange__vmgen_u665(c_p0, T22_, ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		tmp0_1 = x_1;
		genLit__vmgen_u1257(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], (&tmp0_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI i_1;
			NI colontmp_;
			NI T24_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T24_ = (NI)0;
			T24_ = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			colontmp_ = (NI)(T24_ - ((NI)2));
			i_2 = ((NI)1);
			{
				while (1) {
					NI r_1;
					tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T27_;
					if (!(i_2 < colontmp_)) goto LA26;
					i_1 = i_2;
					r_1 = ((NI)(x_1 + i_1));
					T27_ = 0;
					gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[i_1], r_1, T27_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_2 += ((NI)1);
				} LA26: ;
			}
		}
		T28_ = (NI)0;
		T28_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		tmp1_1 = ((NI)((NI)(x_1 + T28_) - ((NI)2)));
		T29_ = (NI)0;
		T29_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genLit__vmgen_u1257(c_p0, (*n_p1)._kind_6.sons.p->data[(NI)(T29_ - ((NI)2))], (&tmp1_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T30_ = (NI)0;
		T30_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		tmp2_1 = ((NI)((NI)(x_1 + T30_) - ((NI)1)));
		T31_ = (NI)0;
		T31_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genLit__vmgen_u1257(c_p0, (*n_p1)._kind_6.sons.p->data[(NI)(T31_ - ((NI)1))], (&tmp2_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T32_ = (NI)0;
		T32_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)187), ((*dest_p2)), x_1, (T32_));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T33_ = (NI)0;
		T33_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTempRange__vmgen_u733(c_p0, x_1, T33_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genMagic__vmgen_u1843)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3, tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg m_p4) {
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin50_;
NIM_BOOL oldNimErrFin81_;
NIM_BOOL oldNimErrFin93_;
NIM_BOOL oldNimErrFin120_;
NIM_BOOL oldNimErrFin156_;
NIM_BOOL oldNimErrFin194_;
NIM_BOOL oldNimErrFin219_;
NIM_BOOL oldNimErrFin208_;
NIM_BOOL oldNimErrFin236_;
NIM_BOOL oldNimErrFin258_;
NIM_BOOL oldNimErrFin271_;
NIM_BOOL oldNimErrFin443_;
NIM_BOOL oldNimErrFin478_;
NIM_BOOL oldNimErrFin489_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch (m_p4) {
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)106):
	{
		genAndOr__vmgen_u1050(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167), dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)107):
	{
		genAndOr__vmgen_u1050(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166), dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)52):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)47):
	{
		genAddSubInt__vmgen_u1594(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)32));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)51):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)46):
	{
		genAddSubInt__vmgen_u1594(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)30));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)29):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)30):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__2;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__3;
		NIM_BOOL isUnsigned_1;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_1;
		NI d_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T22_;
		colontmpD_ = NIM_NIL;
		colontmpD__2 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__3 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD_ = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField, TM__24XApAWKNvaMkcyklm8bNA_72);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		isUnsigned_1 = ((*colontmpD_).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*colontmpD_).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44));
		{
			tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__4;
			tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__5;
			if (!!(isUnsigned_1)) goto LA9_;
			colontmpD__4 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
			colontmpD__5 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
			{
				if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)29))) goto LA13_;
				colontmpD__4 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)30);
				colontmpD__2 = colontmpD__4;
			}
			goto LA11_;
LA13_: ;
			{
				colontmpD__5 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)32);
				colontmpD__2 = colontmpD__5;
			}
LA11_: ;
			opc_1 = colontmpD__2;
		}
		goto LA7_;
LA9_: ;
		{
			tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__6;
			tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__7;
			colontmpD__6 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
			colontmpD__7 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
			{
				if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)29))) goto LA19_;
				colontmpD__6 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)54);
				colontmpD__3 = colontmpD__6;
			}
			goto LA17_;
LA19_: ;
			{
				colontmpD__7 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)55);
				colontmpD__3 = colontmpD__7;
			}
LA17_: ;
			opc_1 = colontmpD__3;
		}
LA7_: ;
		T22_ = 0;
		d_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T22_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			NIM_BOOL T25_;
			T25_ = (NIM_BOOL)0;
			T25_ = isInt8Lit__vmgen_u1564((*n_p1)._kind_6.sons.p->data[((NI)2)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			if (!(T25_)) goto LA26_;
			T25_ = !(isUnsigned_1);
LA26_: ;
			if (!T25_) goto LA27_;
			gABI__vmgen_u421(c_p0, n_p1, (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)(opc_1 + ((NI)1)), d_1, d_1, (*(*n_p1)._kind_6.sons.p->data[((NI)2)])._kind_1.intVal);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
		goto LA23_;
LA27_: ;
		{
			NI tmp_1;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T30_;
			T30_ = 0;
			tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T30_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			gABC__vmgen_u354(c_p0, n_p1, opc_1, d_1, d_1, tmp_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			freeTemp__vmgen_u653(c_p0, tmp_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
LA23_: ;
		genNarrow__vmgen_u1449(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], d_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		genAsgnPatch__vmgen_u1366(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], d_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		freeTemp__vmgen_u653(c_p0, d_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin6_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)31):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)43):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)143):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)155):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T34_;
		T34_ = 0;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, T34_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)0):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)144):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)156) ... ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)157):
	{
		genCall__vmgen_u1262(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)32):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)33):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genNew__vmgen_u1391(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)34):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genNewSeq__vmgen_u1399(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)35):
	{
		genNewSeqOfCap__vmgen_u1409(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)145):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)165));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)146):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T41_;
		NI T42_;
		NI tmp_2;
		T41_ = 0;
		T42_ = (NI)0;
		T42_ = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T41_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, T42_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		tmp_2 = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), tmp_2, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T47_;
			if (!((*dest_p2) < ((NI)0))) goto LA45_;
			T47_ = (NI)0;
			T47_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T47_;
		}
LA45_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)165), ((*dest_p2)), tmp_2, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)36):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)38):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)39):
	{
		genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)34), IL64(0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)37):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__8;
		colontmpD__8 = NIM_NIL;
		colontmpD__8 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField, TM__24XApAWKNvaMkcyklm8bNA_72);
		if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		switch ((*colontmpD__8).kind) {
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
		{
			genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)35), IL64(0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		}
		break;
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
		{
			genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)36), IL64(0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		}
		break;
		default:
		{
			NimStringV2 colontmpD__9;
			colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
			colontmpD__9 = dollar___ast_u182((*(*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField).kind);
			raiseAssert__stdZassertions_u15(colontmpD__9);
			if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
			eqdestroy___system_u2691(colontmpD__9);
		}
		break;
		}
		{
			LA50_:;
		}
		{
			oldNimErrFin50_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__8);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin50_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)124):
	{
		NI d_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T57_;
		NI left_1;
		NI right_1;
		T57_ = 0;
		d_2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T57_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		left_1 = genIndex__vmgen_u1350(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		right_1 = genIndex__vmgen_u1350(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)3)], (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T62_;
			if (!((*dest_p2) < ((NI)0))) goto LA60_;
			T62_ = (NI)0;
			T62_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T62_;
		}
LA60_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), d_2, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)29), ((*dest_p2)), left_1, right_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, left_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, right_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, d_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)40):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)41):
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__10;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__11;
		NI d_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T64_;
		NI tmp_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T65_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T66_;
		colontmpD__10 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__11 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T64_ = 0;
		d_3 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T64_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T65_ = 0;
		tmp_3 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T65_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genSetType__vmgen_u1510(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], d_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T66_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)40))) goto LA69_;
			colontmpD__10 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)37);
			T66_ = colontmpD__10;
		}
		goto LA67_;
LA69_: ;
		{
			colontmpD__11 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)39);
			T66_ = colontmpD__11;
		}
LA67_: ;
		gABC__vmgen_u354(c_p0, n_p1, T66_, d_3, tmp_3, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, d_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)42):
	{
		genCard__vmgen_u1626(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)48):
	{
		genBinaryABCnarrow__vmgen_u1500(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)41));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)49):
	{
		genBinaryABCnarrow__vmgen_u1500(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)42));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)50):
	{
		genBinaryABCnarrow__vmgen_u1500(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)43));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)53):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)44));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)54):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)45));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)55):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)46));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)56):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)47));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)57):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_1;
		NI64 size_1;
		NI tmp_4;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T82_;
		NI tmp2_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T83_;
		NI T89_;
		typ_1 = NIM_NIL;
		typ_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		size_1 = getSize__types_u3411((*c_p0).config, typ_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		T82_ = 0;
		tmp_4 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T82_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		genNarrowU__vmgen_u1482(c_p0, n_p1, tmp_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		T83_ = 0;
		tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T83_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		{
			NI T88_;
			if (!((*dest_p2) < ((NI)0))) goto LA86_;
			T88_ = (NI)0;
			T88_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
			(*dest_p2) = T88_;
		}
LA86_: ;
		T89_ = (NI)0;
		T89_ = sizeLog2__vmgen_u1840((NI64)(size_1 * IL64(8)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), tmp2_1, T89_, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)48), ((*dest_p2)), tmp_4, tmp2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		freeTemp__vmgen_u653(c_p0, tmp_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		freeTemp__vmgen_u653(c_p0, tmp2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
		{
			LA81_:;
		}
		{
			oldNimErrFin81_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(typ_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin81_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)58):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_2;
		NI64 size_2;
		NI tmp1_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T94_;
		NI tmp2_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T95_;
		NI T101_;
		typ_2 = NIM_NIL;
		typ_2 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		size_2 = getSize__types_u3411((*c_p0).config, typ_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		T94_ = 0;
		tmp1_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T94_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		T95_ = 0;
		tmp2_2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T95_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		{
			NI T100_;
			if (!((*dest_p2) < ((NI)0))) goto LA98_;
			T100_ = (NI)0;
			T100_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
			(*dest_p2) = T100_;
		}
LA98_: ;
		T101_ = (NI)0;
		T101_ = sizeLog2__vmgen_u1840((NI64)(size_2 * IL64(8)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), tmp2_2, T101_, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)49), ((*dest_p2)), tmp1_1, tmp2_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		freeTemp__vmgen_u653(c_p0, tmp1_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		freeTemp__vmgen_u653(c_p0, tmp2_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		{
			NIM_BOOL T104_;
			NIM_BOOL T106_;
			T104_ = (NIM_BOOL)0;
			T104_ = ((*typ_2).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)41) && (*typ_2).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)43));
			if (T104_) goto LA105_;
			T106_ = (NIM_BOOL)0;
			T106_ = ((*typ_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40));
			if (!(T106_)) goto LA107_;
			T106_ = (size_2 < IL64(8));
LA107_: ;
			T104_ = T106_;
LA105_: ;
			if (!T104_) goto LA108_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), ((*dest_p2)), ((NI) ((NI64)(size_2 * IL64(8)))), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		}
		goto LA102_;
LA108_: ;
		{
			NIM_BOOL T111_;
			NIM_BOOL T113_;
			T111_ = (NIM_BOOL)0;
			T111_ = ((*typ_2).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)32) && (*typ_2).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)34));
			if (T111_) goto LA112_;
			T113_ = (NIM_BOOL)0;
			T113_ = ((*typ_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
			if (!(T113_)) goto LA114_;
			T113_ = (size_2 < IL64(8));
LA114_: ;
			T111_ = T113_;
LA112_: ;
			if (!T111_) goto LA115_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)102), ((*dest_p2)), ((NI) ((NI64)(size_2 * IL64(8)))), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA93_;
		}
		goto LA102_;
LA115_: ;
LA102_: ;
		{
			LA93_:;
		}
		{
			oldNimErrFin93_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(typ_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin93_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)59):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_3;
		NI64 size_3;
		NI tmp1_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T121_;
		NI tmp2_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T122_;
		NI T128_;
		typ_3 = NIM_NIL;
		typ_3 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		size_3 = getSize__types_u3411((*c_p0).config, typ_3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		T121_ = 0;
		tmp1_2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T121_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		T122_ = 0;
		tmp2_3 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T122_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		{
			NI T127_;
			if (!((*dest_p2) < ((NI)0))) goto LA125_;
			T127_ = (NI)0;
			T127_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
			(*dest_p2) = T127_;
		}
LA125_: ;
		T128_ = (NI)0;
		T128_ = sizeLog2__vmgen_u1840((NI64)(size_3 * IL64(8)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), tmp2_3, T128_, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)50), ((*dest_p2)), tmp1_2, tmp2_3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		freeTemp__vmgen_u653(c_p0, tmp1_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		freeTemp__vmgen_u653(c_p0, tmp2_3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA120_;
		{
			LA120_:;
		}
		{
			oldNimErrFin120_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(typ_3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin120_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)60):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)51));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)61):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)52));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)62):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)53));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)65):
	{
		genBinaryABCnarrowU__vmgen_u1505(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)54));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)66):
	{
		genBinaryABCnarrowU__vmgen_u1505(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)55));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)67):
	{
		genBinaryABCnarrowU__vmgen_u1505(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)56));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)68):
	{
		genBinaryABCnarrowU__vmgen_u1505(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)57));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)69):
	{
		genBinaryABCnarrowU__vmgen_u1505(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)58));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)70):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)84):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)78):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)81):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)59));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)71):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)79):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)82):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)85):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)60));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)72):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)80):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)83):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)86):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)61));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)73):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)62));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)74):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)63));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)75):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)64));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)76):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)65));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)77):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)66));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)88):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)89):
	{
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_90, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_91), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)92):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)87):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)67));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)90):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)70));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)96):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)71));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)93):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)94):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)72));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genNarrow__vmgen_u1449(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)100):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)73));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)97):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)99):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T154_;
		T154_ = 0;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, T154_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)98):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
		NI64 size_4;
		t_1 = NIM_NIL;
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)74));
		if (NIM_UNLIKELY(*nimErr_)) goto LA156_;
		t_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
		if (NIM_UNLIKELY(*nimErr_)) goto LA156_;
		size_4 = getSize__types_u3411((*c_p0).config, t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA156_;
		{
			NIM_BOOL T159_;
			NIM_BOOL T161_;
			T159_ = (NIM_BOOL)0;
			T159_ = ((*t_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)41) && (*t_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)43));
			if (T159_) goto LA160_;
			T161_ = (NIM_BOOL)0;
			T161_ = ((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40));
			if (!(T161_)) goto LA162_;
			T161_ = (size_4 < IL64(8));
LA162_: ;
			T159_ = T161_;
LA160_: ;
			if (!T159_) goto LA163_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), ((*dest_p2)), ((NI) ((NI64)(size_4 * IL64(8)))), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA156_;
		}
LA163_: ;
		{
			LA156_:;
		}
		{
			oldNimErrFin156_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(t_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin156_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)101):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)102):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)103):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)104):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)105):
	{
		genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)95));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)113):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)75));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)91):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)76));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)114):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)77));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)115):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)78));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)116):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)79));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)117):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)80));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)118):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)81));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)119):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)82));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)120):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)83));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)121):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)84));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)122):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)85));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)123):
	{
		genVarargsABC__vmgen_u1552(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)86));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)132):
	{
		genBinarySet__vmgen_u1523(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)87));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)133):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)88));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)134):
	{
		NI tmp_5;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T183_;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T183_ = 0;
		tmp_5 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T183_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)97), tmp_5, ((NI)0), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)135):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)136):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)137):
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__12;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__13;
		NI d_4;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T185_;
		NI tmp_6;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T186_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T187_;
		colontmpD__12 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__13 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T185_ = 0;
		d_4 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T185_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T186_ = 0;
		tmp_6 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T186_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T187_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)135))) goto LA190_;
			colontmpD__12 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)89);
			T187_ = colontmpD__12;
		}
		goto LA188_;
LA190_: ;
		{
			colontmpD__13 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)90);
			T187_ = colontmpD__13;
		}
LA188_: ;
		gABC__vmgen_u354(c_p0, n_p1, T187_, d_4, tmp_6, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genAsgnPatch__vmgen_u1366(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], d_4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_6);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, d_4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)141):
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__14;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__15;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__16;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T195_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T203_;
		colontmpD__14 = NIM_NIL;
		colontmpD__15 = NIM_NIL;
		colontmpD__16 = NIM_NIL;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto LA194_;
		T195_ = NIM_NIL;
		{
			NIM_BOOL T198_;
			T198_ = (NIM_BOOL)0;
			T198_ = ((*c_p0).prc == ((tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg*) NIM_NIL));
			if (T198_) goto LA199_;
			T198_ = ((*(*c_p0).prc).sym == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL));
LA199_: ;
			if (!T198_) goto LA200_;
			eqcopy___ast_u4577(&colontmpD__14, (*c_p0).module);
			if (NIM_UNLIKELY(*nimErr_)) goto LA194_;
			T195_ = colontmpD__14;
		}
		goto LA196_;
LA200_: ;
		{
			eqcopy___ast_u4577(&colontmpD__15, (*(*c_p0).prc).sym);
			if (NIM_UNLIKELY(*nimErr_)) goto LA194_;
			T195_ = colontmpD__15;
		}
LA196_: ;
		colontmpD__16 = lowerSwap__lowerings_u156((*c_p0).graph, n_p1, (*c_p0).Sup.idgen, T195_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA194_;
		T203_ = 0;
		gen__vmgen_u825(c_p0, colontmpD__16, T203_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA194_;
		{
			LA194_:;
		}
		{
			oldNimErrFin194_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__16);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u4574(colontmpD__15);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u4574(colontmpD__14);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin194_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)142):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)91));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)147):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* d2AsNode_1;
		NI d2_1;
		NI tmp1_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T224_;
		d2AsNode_1 = NIM_NIL;
		{
			NI T213_;
			if (!((*dest_p2) < ((NI)0))) goto LA211_;
			T213_ = (NI)0;
			T213_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
			(*dest_p2) = T213_;
		}
LA211_: ;
		d2_1 = ((NI)0);
		eqcopy___ast_u3255(&d2AsNode_1, (*(*n_p1)._kind_6.sons.p->data[((NI)2)])._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		{
			NIM_BOOL T216_;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__17;
			T216_ = (NIM_BOOL)0;
			T216_ = needsAsgnPatch__vmgen_u1314(d2AsNode_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
			if (!T216_) goto LA217_;
			colontmpD__17 = NIM_NIL;
			colontmpD__17 = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36));
			if (NIM_UNLIKELY(*nimErr_)) goto LA219_;
			d2_1 = getTemp__vmgen_u644(c_p0, colontmpD__17);
			if (NIM_UNLIKELY(*nimErr_)) goto LA219_;
			{
				LA219_:;
			}
			{
				oldNimErrFin219_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(colontmpD__17);
				if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
				*nimErr_ = oldNimErrFin219_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		}
		goto LA214_;
LA217_: ;
		{
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T223_;
			T223_ = 0;
			d2_1 = genx__vmgen_u830(c_p0, d2AsNode_1, T223_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		}
LA214_: ;
		T224_ = 0;
		tmp1_3 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T224_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)94), ((*dest_p2)), tmp1_3, d2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		freeTemp__vmgen_u653(c_p0, tmp1_3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		genAsgnPatch__vmgen_u1366(c_p0, d2AsNode_1, d2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		freeTemp__vmgen_u653(c_p0, d2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA208_;
		{
			LA208_:;
		}
		{
			oldNimErrFin208_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(d2AsNode_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin208_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)154):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)277):
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T233_;
		NI T234_;
		{
			NI T232_;
			if (!((*dest_p2) < ((NI)0))) goto LA230_;
			T232_ = (NI)0;
			T232_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T232_;
		}
LA230_: ;
		T233_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		T233_ = ldNullOpcode__vmgen_u1818((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T234_ = (NI)0;
		T234_ = genType__vmgen_u1155(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABx__vmgen_u449(c_p0, n_p1, T233_, ((*dest_p2)), T234_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)15):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)14):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__18;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_4;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__19;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__20;
		NI tmp_7;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T242_;
		NI idx_1;
		NI T248_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T249_;
		colontmpD__18 = NIM_NIL;
		typ_4 = NIM_NIL;
		colontmpD__19 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__20 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			NI T241_;
			if (!((*dest_p2) < ((NI)0))) goto LA239_;
			T241_ = (NI)0;
			T241_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
			(*dest_p2) = T241_;
		}
LA239_: ;
		T242_ = 0;
		tmp_7 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T242_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		colontmpD__18 = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		idx_1 = getTemp__vmgen_u644(c_p0, colontmpD__18);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		eqcopy___ast_u3381(&typ_4, (*(*n_p1)._kind_6.sons.p->data[((NI)2)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T247_;
			if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)15))) goto LA245_;
			T247_ = NIM_NIL;
			T247_ = skipTypes__ast_u5379(typ_4, TM__24XApAWKNvaMkcyklm8bNA_95);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T247_); goto LA236_;}
			eqsink___ast_u3387(&typ_4, T247_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		}
LA245_: ;
		T248_ = (NI)0;
		T248_ = genType__vmgen_u1155(c_p0, typ_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), idx_1, T248_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		T249_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!(m_p4 == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)15))) goto LA252_;
			colontmpD__19 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)92);
			T249_ = colontmpD__19;
		}
		goto LA250_;
LA252_: ;
		{
			colontmpD__20 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)93);
			T249_ = colontmpD__20;
		}
LA250_: ;
		gABC__vmgen_u354(c_p0, n_p1, T249_, ((*dest_p2)), tmp_7, idx_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		freeTemp__vmgen_u653(c_p0, tmp_7);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		freeTemp__vmgen_u653(c_p0, idx_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
		{
			LA236_:;
		}
		{
			oldNimErrFin236_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(typ_4);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3378(colontmpD__18);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin236_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)9):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__21;
		NI tmp_8;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T264_;
		colontmpD__21 = NIM_NIL;
		{
			NI T263_;
			if (!((*dest_p2) < ((NI)0))) goto LA261_;
			T263_ = (NI)0;
			T263_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
			(*dest_p2) = T263_;
		}
LA261_: ;
		T264_ = 0;
		tmp_8 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T264_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		colontmpD__21 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField, TM__24XApAWKNvaMkcyklm8bNA_68);
		if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		switch ((*colontmpD__21).kind) {
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
		{
			gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)35), ((*dest_p2)), tmp_8, IL64(1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		}
		break;
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
		{
			gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)36), ((*dest_p2)), tmp_8, IL64(1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		}
		break;
		default:
		{
			gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)34), ((*dest_p2)), tmp_8, IL64(1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		}
		break;
		}
		freeTemp__vmgen_u653(c_p0, tmp_8);
		if (NIM_UNLIKELY(*nimErr_)) goto LA258_;
		{
			LA258_:;
		}
		{
			oldNimErrFin258_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__21);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin258_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)20):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_2;
		n_2 = NIM_NIL;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
		n_2 = skipConv__types_u3729((*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
		{
			NI x_1;
			NI T276_;
			NI T281_;
			NI T282_;
			if (!((*n_2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41))) goto LA274_;
			T276_ = (NI)0;
			T276_ = len__ast_u3190(n_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
			x_1 = getTempRange__vmgen_u665(c_p0, T276_, ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3));
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = len__ast_u3190(n_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
				i_2 = ((NI)0);
				{
					while (1) {
						NI r_1;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T280_;
						if (!(i_2 < colontmp_)) goto LA279;
						i_1 = i_2;
						r_1 = ((NI)(x_1 + i_1));
						T280_ = 0;
						gen__vmgen_u800(c_p0, (*n_2)._kind_6.sons.p->data[i_1], r_1, T280_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
						i_2 += ((NI)1);
					} LA279: ;
				}
			}
			T281_ = (NI)0;
			T281_ = len__ast_u3190(n_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
			gABC__vmgen_u354(c_p0, n_2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)158), x_1, (T281_), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
			T282_ = (NI)0;
			T282_ = len__ast_u3190(n_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
			freeTempRange__vmgen_u733(c_p0, x_1, T282_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA271_;
		}
LA274_: ;
		{
			LA271_:;
		}
		{
			oldNimErrFin271_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(n_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin271_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)129):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmtVar__vmgen_u1536(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)103));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)130):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmtVar__vmgen_u1536(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)104));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)131):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmtVar__vmgen_u1536(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)105));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)25):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)143));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)26):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)144));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)13):
	{
		NI tmp_9;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T291_;
		NI T297_;
		T291_ = 0;
		tmp_9 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T291_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T296_;
			if (!((*dest_p2) < ((NI)0))) goto LA294_;
			T296_ = (NI)0;
			T296_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T296_;
		}
LA294_: ;
		T297_ = (NI)0;
		T297_ = genType__vmgen_u1155(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)188), tmp_9, T297_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)189), ((*dest_p2)), tmp_9, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_9);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)22):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)141));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)23):
	{
		genBinaryABCD__vmgen_u1439(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)142));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)213):
	{
		genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)34), IL64(16));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)255):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)156));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)273):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)157));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)271):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)190));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)274):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)191));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)214):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)162));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)215):
	{
		genVoidABC__vmgen_u1769(c_p0, n_p1, (*dest_p2), ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)163));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)218):
	{
		genVoidABC__vmgen_u1769(c_p0, n_p1, (*dest_p2), ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)127));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)216):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)107));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)217):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)108));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)219):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)109));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)220):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)110));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)221):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)129));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)222):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)130));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)223):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)131));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)224):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)132));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)225):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)133));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)226):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)134));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)227):
	{
		genVoidABC__vmgen_u1769(c_p0, n_p1, (*dest_p2), ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)135));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)228):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)136));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)229):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)137));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)230):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)138));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)231):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)139));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)232):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)111));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)233):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)112));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)234):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)113));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)235):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)114));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)236):
	{
		NI colontmpD__22;
		NI colontmpD__23;
		NI colontmpD__24;
		NI colontmpD__25;
		NI colontmpD__26;
		NI tmp_10;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T328_;
		NI rc_1;
		colontmpD__22 = (NI)0;
		colontmpD__23 = (NI)0;
		colontmpD__24 = (NI)0;
		colontmpD__25 = (NI)0;
		colontmpD__26 = (NI)0;
		T328_ = 0;
		tmp_10 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T328_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T333_;
			if (!((*dest_p2) < ((NI)0))) goto LA331_;
			T333_ = (NI)0;
			T333_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T333_;
		}
LA331_: ;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_97)) goto LA334_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_99)) goto LA335_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_101)) goto LA336_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_103)) goto LA337_;
		goto LA338_;
		LA334_: ;
		{
			colontmpD__22 = ((NI)0);
			rc_1 = colontmpD__22;
		}
		goto LA339_;
		LA335_: ;
		{
			colontmpD__23 = ((NI)1);
			rc_1 = colontmpD__23;
		}
		goto LA339_;
		LA336_: ;
		{
			colontmpD__24 = ((NI)2);
			rc_1 = colontmpD__24;
		}
		goto LA339_;
		LA337_: ;
		{
			colontmpD__25 = ((NI)3);
			rc_1 = colontmpD__25;
		}
		goto LA339_;
		LA338_: ;
		{
			colontmpD__26 = ((NI)4);
			rc_1 = colontmpD__26;
		}
LA339_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)115), ((*dest_p2)), tmp_10, (rc_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_10);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)249):
	{
		NI colontmpD__27;
		NI colontmpD__28;
		NI colontmpD__29;
		NI imm_1;
		colontmpD__27 = (NI)0;
		colontmpD__28 = (NI)0;
		colontmpD__29 = (NI)0;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_105)) goto LA346_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_107)) goto LA347_;
		goto LA348_;
		LA346_: ;
		{
			colontmpD__27 = ((NI)0);
			imm_1 = colontmpD__27;
		}
		goto LA349_;
		LA347_: ;
		{
			colontmpD__28 = ((NI)1);
			imm_1 = colontmpD__28;
		}
		goto LA349_;
		LA348_: ;
		{
			colontmpD__29 = ((NI)2);
			imm_1 = colontmpD__29;
		}
LA349_: ;
		genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)118), ((NI64) (imm_1)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)237):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)116));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)248):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)117));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)238):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)119));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)239):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)120));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)240):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)121));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)241):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)122));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)242):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)123));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)244):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)124));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)245):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)125));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)246):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)126));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)250):
	{
		genBindSym__vmgen_u1777(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)247):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)155));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)252):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)154));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)253):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)68));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)254):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)69));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)243):
	{
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_112)) goto LA369_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_114)) goto LA370_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_116)) goto LA371_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_118)) goto LA372_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_120)) goto LA373_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_122)) goto LA374_;
		if (eqStrings((*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).s, TM__24XApAWKNvaMkcyklm8bNA_124)) goto LA375_;
		goto LA376_;
		LA369_: ;
		{
			genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)149), IL64(0));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA370_: ;
		{
			genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)149), IL64(1));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA371_: ;
		{
			genUnaryABI__vmgen_u1425(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)149), IL64(2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA372_: ;
		{
			{
				NI T384_;
				NimStringV2 argX60gensym447__1;
				T384_ = (NI)0;
				T384_ = len__ast_u3190(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!!((T384_ == ((NI)3)))) goto LA385_;
				argX60gensym447__1.len = 0; argX60gensym447__1.p = NIM_NIL;
				argX60gensym447__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_125));
				if (NIM_UNLIKELY(*nimErr_)) goto LA387_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym447__1, (&TM__24XApAWKNvaMkcyklm8bNA_125));
				if (NIM_UNLIKELY(*nimErr_)) goto LA387_;
				{
					LA387_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym447__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA385_: ;
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)150));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA373_: ;
		{
			{
				NI T393_;
				NimStringV2 argX60gensym449__1;
				T393_ = (NI)0;
				T393_ = len__ast_u3190(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!!((T393_ == ((NI)3)))) goto LA394_;
				argX60gensym449__1.len = 0; argX60gensym449__1.p = NIM_NIL;
				argX60gensym449__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_126));
				if (NIM_UNLIKELY(*nimErr_)) goto LA396_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym449__1, (&TM__24XApAWKNvaMkcyklm8bNA_126));
				if (NIM_UNLIKELY(*nimErr_)) goto LA396_;
				{
					LA396_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym449__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA394_: ;
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)151));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA374_: ;
		{
			{
				NI T402_;
				NimStringV2 argX60gensym451__1;
				T402_ = (NI)0;
				T402_ = len__ast_u3190(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!!((T402_ == ((NI)3)))) goto LA403_;
				argX60gensym451__1.len = 0; argX60gensym451__1.p = NIM_NIL;
				argX60gensym451__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_127));
				if (NIM_UNLIKELY(*nimErr_)) goto LA405_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym451__1, (&TM__24XApAWKNvaMkcyklm8bNA_127));
				if (NIM_UNLIKELY(*nimErr_)) goto LA405_;
				{
					LA405_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym451__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA403_: ;
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)152));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA375_: ;
		{
			{
				NI T411_;
				NimStringV2 argX60gensym453__1;
				T411_ = (NI)0;
				T411_ = len__ast_u3190(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!!((T411_ == ((NI)3)))) goto LA412_;
				argX60gensym453__1.len = 0; argX60gensym453__1.p = NIM_NIL;
				argX60gensym453__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_128));
				if (NIM_UNLIKELY(*nimErr_)) goto LA414_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym453__1, (&TM__24XApAWKNvaMkcyklm8bNA_128));
				if (NIM_UNLIKELY(*nimErr_)) goto LA414_;
				{
					LA414_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym453__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA412_: ;
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)153));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA377_;
		LA376_: ;
		{
			{
				NimStringV2 argX60gensym455__1;
				if (!NIM_TRUE) goto LA420_;
				argX60gensym455__1.len = 0; argX60gensym455__1.p = NIM_NIL;
				argX60gensym455__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_129));
				if (NIM_UNLIKELY(*nimErr_)) goto LA422_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym455__1, (&TM__24XApAWKNvaMkcyklm8bNA_129));
				if (NIM_UNLIKELY(*nimErr_)) goto LA422_;
				{
					LA422_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym455__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA420_: ;
		}
LA377_: ;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)257):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)148));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)258):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)147));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)259):
	{
		{
			NI T430_;
			T430_ = (NI)0;
			T430_ = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T430_ <= ((NI)1))) goto LA431_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)145), ((*dest_p2)), ((NI)0), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA428_;
LA431_: ;
		{
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			genBinaryStmt__vmgen_u1530(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)146));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA428_: ;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)251):
	{
		{
			NI T439_;
			if (!((*dest_p2) < ((NI)0))) goto LA437_;
			T439_ = (NI)0;
			T439_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T439_;
		}
LA437_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)164), ((*dest_p2)), ((NI)0), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)256):
	{
		genBinaryABC__vmgen_u1432(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)128));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)63):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)64):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)95):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)125):
	{
		genCall__vmgen_u1262(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)27):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg_1;
		arg_1 = NIM_NIL;
		{
			NI T446_;
			T446_ = (NI)0;
			T446_ = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
			if (!!((T446_ == ((NI)2)))) goto LA447_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_131, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_132), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
		}
LA447_: ;
		eqcopy___ast_u3255(&arg_1, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
		{
			if (!((*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)29) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)30) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)31) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)28) || (*arg_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)32))) goto LA451_;
			{
				NI T457_;
				if (!((*dest_p2) < ((NI)0))) goto LA455_;
				T457_ = (NI)0;
				T457_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
				(*dest_p2) = T457_;
			}
LA455_: ;
			genCall__vmgen_u1262(c_p0, arg_1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
		}
		goto LA449_;
LA451_: ;
		{
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_134, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_135), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA443_;
		}
LA449_: ;
		{
			LA443_:;
		}
		{
			oldNimErrFin443_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(arg_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin443_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)10):
	{
		NimStringV2 colontmpD__30;
		colontmpD__30.len = 0; colontmpD__30.p = NIM_NIL;
		colontmpD__30 = nsuFormatOpenArray(TM__24XApAWKNvaMkcyklm8bNA_137, TM__24XApAWKNvaMkcyklm8bNA_138, 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA462_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__30, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_140), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA462_;
		{
			LA462_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__30);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)11):
	{
		NimStringV2 colontmpD__31;
		colontmpD__31.len = 0; colontmpD__31.p = NIM_NIL;
		colontmpD__31 = nsuFormatOpenArray(TM__24XApAWKNvaMkcyklm8bNA_141, TM__24XApAWKNvaMkcyklm8bNA_142, 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA466_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__31, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_144), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA466_;
		{
			LA466_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__31);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)12):
	{
		NimStringV2 colontmpD__32;
		colontmpD__32.len = 0; colontmpD__32.p = NIM_NIL;
		colontmpD__32 = nsuFormatOpenArray(TM__24XApAWKNvaMkcyklm8bNA_145, TM__24XApAWKNvaMkcyklm8bNA_146, 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA470_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__32, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_148), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA470_;
		{
			LA470_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__32);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)268):
	{
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)152):
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)153):
	{
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)149):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T476_;
		T476_ = 0;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, T476_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)148):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg_2;
		NI a_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T479_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T485_;
		arg_2 = NIM_NIL;
		eqcopy___ast_u3255(&arg_2, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
		T479_ = 0;
		a_1 = genx__vmgen_u830(c_p0, arg_2, T479_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
		{
			NI T484_;
			if (!((*dest_p2) < ((NI)0))) goto LA482_;
			T484_ = (NI)0;
			T484_ = getTemp__vmgen_u644(c_p0, (*arg_2).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
			(*dest_p2) = T484_;
		}
LA482_: ;
		T485_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		T485_ = whichAsgnOpc__vmgen_u1828(arg_2, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
		gABC__vmgen_u354(c_p0, arg_2, T485_, ((*dest_p2)), a_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
		freeTemp__vmgen_u653(c_p0, a_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA478_;
		{
			LA478_:;
		}
		{
			oldNimErrFin478_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(arg_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin478_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)151):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg_3;
		NI a_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T490_;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T496_;
		arg_3 = NIM_NIL;
		eqcopy___ast_u3255(&arg_3, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
		T490_ = 0;
		a_2 = genx__vmgen_u830(c_p0, arg_3, T490_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
		{
			NI T495_;
			if (!((*dest_p2) < ((NI)0))) goto LA493_;
			T495_ = (NI)0;
			T495_ = getTemp__vmgen_u644(c_p0, (*arg_3).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
			(*dest_p2) = T495_;
		}
LA493_: ;
		T496_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		T496_ = whichAsgnOpc__vmgen_u1828(arg_3, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
		gABC__vmgen_u354(c_p0, arg_3, T496_, ((*dest_p2)), a_2, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
		freeTemp__vmgen_u653(c_p0, a_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA489_;
		{
			LA489_:;
		}
		{
			oldNimErrFin489_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(arg_3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin489_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)275):
	{
		genUnaryABC__vmgen_u1419(c_p0, n_p1, dest_p2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)140));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		NimStringV2 colontmpD__33;
		NimStringV2 colontmpD__34;
		NimStringV2 T502_;
		colontmpD__33.len = 0; colontmpD__33.p = NIM_NIL;
		colontmpD__34.len = 0; colontmpD__34.p = NIM_NIL;
		T502_.len = 0; T502_.p = NIM_NIL;
		colontmpD__33 = dollar___ast_u606(m_p4);
		T502_ = rawNewString(colontmpD__33.len + 26);
appendString((&T502_), TM__24XApAWKNvaMkcyklm8bNA_149);
appendString((&T502_), colontmpD__33);
		colontmpD__34 = T502_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__34, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_150), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA501_;
		{
			LA501_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__34);
			eqdestroy___system_u2691(colontmpD__33);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
}
static N_INLINE(void, clearDest__vmgen_u836)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NIM_BOOL T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (*dest_p2));
		if (!(T3_)) goto LA4_;
		T5_ = (NIM_BOOL)0;
		T5_ = ((*n_p1).typField == 0);
		if (T5_) goto LA6_;
		T5_ = ((*(*n_p1).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)63));
LA6_: ;
		T3_ = T5_;
LA4_: ;
		if (!T3_) goto LA7_;
		freeTemp__vmgen_u653(c_p0, ((*dest_p2)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = ((NI)-1);
	}
LA7_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInt16Lit__vmgen_u1579)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)5) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)15))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = (IL64(-32768) <= (*n_p0)._kind_1.intVal);
		if (!(T5_)) goto LA6_;
		T5_ = ((*n_p0)._kind_1.intVal <= IL64(32767));
LA6_: ;
		result = T5_;
	}
	goto LA1_;
LA3_: ;
	{
		result = NIM_FALSE;
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, preventFalseAlias__vmgen_u2384)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p2, NI dest_p3, NI idx_p4, NI value_p5, NIM_BOOL enforceCopy_p6) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NIM_BOOL T7_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T5_ = isTemp__vmgen_u1042(c_p0, dest_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T4_ = !(T5_);
		if (!(T4_)) goto LA6_;
		T7_ = (NIM_BOOL)0;
		T7_ = fitsRegister__vmgen_u1796((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T4_ = !(T7_);
LA6_: ;
		T3_ = T4_;
		if (T3_) goto LA8_;
		T3_ = enforceCopy_p6;
LA8_: ;
		if (!T3_) goto LA9_;
		genAdditionalCopy__vmgen_u2376(c_p0, n_p1, opc_p2, dest_p3, idx_p4, value_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA9_: ;
	{
		gABC__vmgen_u354(c_p0, n_p1, opc_p2, dest_p3, idx_p4, value_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genAsgn__vmgen_u2399)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p2, NIM_BOOL requiresCopy_p3) {
NIM_BOOL oldNimErrFin2_;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*le_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)42):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* collTyp_1;
		NI dest_1;
		NI idx_1;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T3_;
		collTyp_1 = NIM_NIL;
		dest_1 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		idx_1 = genIndex__vmgen_u1350(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)], (*(*le_p1)._kind_6.sons.p->data[((NI)0)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		T3_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, ri_p2, T3_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		collTyp_1 = skipTypes__ast_u5379((*(*le_p1)._kind_6.sons.p->data[((NI)0)]).typField, TM__24XApAWKNvaMkcyklm8bNA_74);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		switch ((*collTyp_1).kind) {
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
		{
			preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)26), dest_1, idx_1, tmp_1, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
		{
			preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), dest_1, (((NI) ((*(*le_p1)._kind_6.sons.p->data[((NI)1)])._kind_1.intVal))), tmp_1, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		default:
		{
			preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)18), dest_1, idx_1, tmp_1, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		}
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		freeTemp__vmgen_u653(c_p0, idx_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		freeTemp__vmgen_u653(c_p0, dest_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(collTyp_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46):
	{
		NI objR_1;
		NI idx_2;
		NI tmp_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T10_;
		objR_1 = ((NI)-1);
		genCheckedObjAccessAux__vmgen_u1361(c_p0, le_p1, (&objR_1), 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		idx_2 = genField__vmgen_u1333(c_p0, (*(*le_p1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T10_ = 0;
		tmp_2 = genx__vmgen_u830(c_p0, ri_p2, T10_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		preventFalseAlias__vmgen_u2384(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), (objR_1), idx_2, tmp_2, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, (objR_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45):
	{
		NI dest_2;
		NI idx_3;
		NI tmp_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T12_;
		dest_2 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		idx_3 = genField__vmgen_u1333(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T12_ = 0;
		tmp_3 = genx__vmgen_u830(c_p0, ri_p2, T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), dest_2, idx_3, tmp_3, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, dest_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65):
	{
		NI dest_3;
		NI tmp_4;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T14_;
		dest_3 = genx__vmgen_u830(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)0)], 1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T14_ = 0;
		tmp_4 = genx__vmgen_u830(c_p0, ri_p2, T14_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), dest_3, ((NI)0), tmp_4, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, dest_3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
		NIM_BOOL isLdConst_1;
		NIM_BOOL T17_;
		NIM_BOOL T18_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T21_;
		s_1 = NIM_NIL;
		colontmpD_ = NIM_NIL;
		colontmpD__2 = NIM_NIL;
		colontmpD__3 = NIM_NIL;
		eqcopy___ast_u4577(&s_1, (*le_p1)._kind_4.sym);
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		checkCanEval__vmgen_u2203(c_p0, le_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		T17_ = (NIM_BOOL)0;
		T18_ = (NIM_BOOL)0;
		T18_ = ((*ri_p2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
		if (!(T18_)) goto LA19_;
		T18_ = ((*(*ri_p2)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)10));
LA19_: ;
		T17_ = T18_;
		if (!(T17_)) goto LA20_;
		T21_ = NIM_NIL;
		{
			colontmpD_ = astdef__ast_u4596((*ri_p2)._kind_4.sym);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			if (!!((colontmpD_ == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA24_;
			colontmpD__2 = astdef__ast_u4596((*ri_p2)._kind_4.sym);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			T21_ = colontmpD__2;
		}
		goto LA22_;
LA24_: ;
		{
			eqcopy___ast_u3255(&colontmpD__3, (*(*(*ri_p2)._kind_4.sym).typ).n);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			T21_ = colontmpD__3;
		}
LA22_: ;
		T17_ = dontInlineConstant__trees_u396(ri_p2, T21_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
LA20_: ;
		isLdConst_1 = T17_;
		{
			NIM_BOOL T29_;
			NI tmp_5;
			NI val_1;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T33_;
			T29_ = (NIM_BOOL)0;
			T29_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
			if (!(T29_)) goto LA30_;
			T29_ = !(((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA30_: ;
			if (!T29_) goto LA31_;
			tmp_5 = getTemp__vmgen_u644(c_p0, (*le_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			gen__vmgen_u800(c_p0, le_p1, tmp_5, 2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			T33_ = 0;
			val_1 = genx__vmgen_u830(c_p0, ri_p2, T33_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			preventFalseAlias__vmgen_u2384(c_p0, le_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), tmp_5, ((NI)0), val_1, isLdConst_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			freeTemp__vmgen_u653(c_p0, val_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			freeTemp__vmgen_u653(c_p0, tmp_5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
		}
		goto LA27_;
LA31_: ;
		{
			NI dest_4;
			{
				if (!((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21))) goto LA37_;
				setSlot__vmgen_u2153(c_p0, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			}
LA37_: ;
			{
				NIM_BOOL T41_;
				NIM_BOOL T43_;
				NimStringV2 argX60gensym594__1;
				T41_ = (NIM_BOOL)0;
				T41_ = (((NI)0) < (*s_1).position);
				if (T41_) goto LA42_;
				T43_ = (NIM_BOOL)0;
				T43_ = ((*s_1).position == ((NI)0));
				if (!(T43_)) goto LA44_;
				T43_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11));
LA44_: ;
				T41_ = T43_;
LA42_: ;
				if (!!(T41_)) goto LA45_;
				argX60gensym594__1.len = 0; argX60gensym594__1.p = NIM_NIL;
				argX60gensym594__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_156));
				if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
				internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym594__1, (&TM__24XApAWKNvaMkcyklm8bNA_156));
				if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
				{
					LA47_:;
				}
				{
					eqdestroy___system_u2691(argX60gensym594__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			}
LA45_: ;
			dest_4 = ((NI)((*s_1).position + ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3))));
			{
				NIM_BOOL T52_;
				NIM_BOOL T53_;
				NIM_BOOL T54_;
				NIM_BOOL T56_;
				NI cc_1;
				tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T60_;
				tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T61_;
				T52_ = (NIM_BOOL)0;
				T53_ = (NIM_BOOL)0;
				T54_ = (NIM_BOOL)0;
				T54_ = isTemp__vmgen_u1042(c_p0, dest_4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T53_ = !(T54_);
				if (!(T53_)) goto LA55_;
				T56_ = (NIM_BOOL)0;
				T56_ = fitsRegister__vmgen_u1796((*le_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T53_ = !(T56_);
LA55_: ;
				T52_ = T53_;
				if (!(T52_)) goto LA57_;
				T52_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3));
LA57_: ;
				if (!T52_) goto LA58_;
				cc_1 = getTemp__vmgen_u644(c_p0, (*le_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T60_ = 0;
				gen__vmgen_u800(c_p0, ri_p2, cc_1, T60_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T61_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
				T61_ = whichAsgnOpc__vmgen_u1828(le_p1, NIM_TRUE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				gABC__vmgen_u354(c_p0, le_p1, T61_, dest_4, cc_1, ((NI)0));
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				freeTemp__vmgen_u653(c_p0, cc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			}
			goto LA50_;
LA58_: ;
			{
				tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T63_;
				T63_ = 0;
				gen__vmgen_u800(c_p0, ri_p2, dest_4, T63_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			}
LA50_: ;
		}
LA27_: ;
		{
			LA16_:;
		}
		{
			oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3252(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3252(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u4574(s_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin16_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)58):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)59):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)60):
	{
		{
			NIM_BOOL T69_;
			T69_ = (NIM_BOOL)0;
			T69_ = sameBackendType__types_u637((*le_p1).typField, (*(*le_p1)._kind_6.sons.p->data[((NI)1)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T69_) goto LA70_;
			genAsgn__vmgen_u2399(c_p0, (*le_p1)._kind_6.sons.p->data[((NI)1)], ri_p2, requiresCopy_p3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA70_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	{
		NI T78_;
		{
			NI i_1;
			NI colontmp_;
			NI T74_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T74_ = (NI)0;
			T74_ = len__ast_u3190(le_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			colontmp_ = (NI)(T74_ - ((NI)1));
			i_2 = ((NI)0);
			{
				while (1) {
					tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T77_;
					if (!(i_2 < colontmp_)) goto LA76;
					i_1 = i_2;
					T77_ = 0;
					gen__vmgen_u825(c_p0, (*le_p1)._kind_6.sons.p->data[i_1], T77_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_2 += ((NI)1);
				} LA76: ;
			}
		}
		T78_ = (NI)0;
		T78_ = len__ast_u3190(le_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genAsgn__vmgen_u2399(c_p0, (*le_p1)._kind_6.sons.p->data[(NI)(T78_ - ((NI)1))], ri_p2, requiresCopy_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		NI dest_5;
		dest_5 = genx__vmgen_u830(c_p0, le_p1, 2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genAsgn__vmgen_u2144(c_p0, dest_5, ri_p2, requiresCopy_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, dest_5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genObjAccessAux__vmgen_u2666)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI a_p2, NI b_p3, NI* dest_p4, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p5) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	{
		NI T6_;
		if (!((*dest_p4) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p4) = T6_;
	}
LA4_: ;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T9_;
		T9_ = 0;
		if (!!(((2 & flags_p5) == T9_))) goto LA10_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)20), ((*dest_p4)), (a_p2), (b_p3));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA7_;
LA10_: ;
	{
		NIM_BOOL T13_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T14_;
		NI cc_1;
		T13_ = (NIM_BOOL)0;
		T14_ = 0;
		T13_ = ((3 & flags_p5) == T14_);
		if (!(T13_)) goto LA15_;
		colontmpD_ = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_157);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T13_ = fitsRegister__vmgen_u1796(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA15_: ;
		if (!T13_) goto LA16_;
		cc_1 = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)19), cc_1, (a_p2), (b_p3));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p4)), cc_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, cc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA7_;
LA16_: ;
	{
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)19), ((*dest_p4)), (a_p2), (b_p3));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA7_: ;
	freeTemp__vmgen_u653(c_p0, (a_p2));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genObjAccess__vmgen_u2690)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	NI T1_;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NI)0;
	T1_ = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], flags_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = (NI)0;
	T2_ = genField__vmgen_u1333(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	genObjAccessAux__vmgen_u2666(c_p0, n_p1, T1_, T2_, dest_p2, flags_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genCheckedObjAccess__vmgen_u2733)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* accessExpr_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* field_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	NI objR_1;
	NI fieldPos_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	accessExpr_1 = NIM_NIL;
	field_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	objR_1 = ((NI)-1);
	genCheckedObjAccessAux__vmgen_u1361(c_p0, n_p1, (&objR_1), flags_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3255(&accessExpr_1, (*n_p1)._kind_6.sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3255(&field_1, (*accessExpr_1)._kind_6.sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 argX60gensym689__1;
		if (!!(((*(*field_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19)))) goto LA4_;
		argX60gensym689__1.len = 0; argX60gensym689__1.p = NIM_NIL;
		argX60gensym689__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_158));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym689__1, (&TM__24XApAWKNvaMkcyklm8bNA_158));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym689__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	{
		NI T13_;
		if (!((*dest_p2) < ((NI)0))) goto LA11_;
		T13_ = (NI)0;
		T13_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T13_;
	}
LA11_: ;
	fieldPos_1 = genField__vmgen_u1333(c_p0, field_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T16_;
		T16_ = 0;
		if (!!(((2 & flags_p3) == T16_))) goto LA17_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)20), ((*dest_p2)), (objR_1), fieldPos_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA14_;
LA17_: ;
	{
		NIM_BOOL T20_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T21_;
		NI cc_1;
		T20_ = (NIM_BOOL)0;
		T21_ = 0;
		T20_ = ((3 & flags_p3) == T21_);
		if (!(T20_)) goto LA22_;
		colontmpD_ = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_157);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T20_ = fitsRegister__vmgen_u1796(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA22_: ;
		if (!T20_) goto LA23_;
		cc_1 = getTemp__vmgen_u644(c_p0, (*accessExpr_1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)19), cc_1, (objR_1), fieldPos_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), cc_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, cc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA14_;
LA23_: ;
	{
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)19), ((*dest_p2)), (objR_1), fieldPos_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA14_: ;
	freeTemp__vmgen_u653(c_p0, (objR_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(field_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(accessExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genArrAccessOpcode__vmgen_u2641)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_p3, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p4) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	NI a_1;
	NI b_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	a_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], flags_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	b_1 = genIndex__vmgen_u1350(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	{
		NIM_BOOL T9_;
		T9_ = (NIM_BOOL)0;
		T9_ = (opc_p3 == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)17) || opc_p3 == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)28));
		if (!(T9_)) goto LA10_;
		T9_ = ((flags_p4 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)1)))&7U)))!=0);
LA10_: ;
		if (!T9_) goto LA11_;
		gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), a_1, b_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA7_;
LA11_: ;
	{
		NIM_BOOL T14_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T15_;
		NI cc_1;
		T14_ = (NIM_BOOL)0;
		T15_ = 0;
		T14_ = ((3 & flags_p4) == T15_);
		if (!(T14_)) goto LA16_;
		colontmpD_ = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_157);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T14_ = fitsRegister__vmgen_u1796(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA16_: ;
		if (!T14_) goto LA17_;
		cc_1 = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, opc_p3, cc_1, a_1, b_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), cc_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, cc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA7_;
LA17_: ;
	{
		gABC__vmgen_u354(c_p0, n_p1, opc_p3, ((*dest_p2)), a_1, b_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA7_: ;
	freeTemp__vmgen_u653(c_p0, a_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	freeTemp__vmgen_u653(c_p0, b_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genArrAccess__vmgen_u2767)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg arrayType_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	{
		if (!((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL))) goto LA4_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_160, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_161), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA4_: ;
	colontmpD_ = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField, TM__24XApAWKNvaMkcyklm8bNA_74);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	arrayType_1 = (*colontmpD_).kind;
	switch (arrayType_1) {
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28):
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29):
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__2;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__3;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_1;
		colontmpD__2 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__3 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)1)))&7U)))!=0)) goto LA9_;
			colontmpD__2 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)28);
			opc_1 = colontmpD__2;
		}
		goto LA7_;
LA9_: ;
		{
			colontmpD__3 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)27);
			opc_1 = colontmpD__3;
		}
LA7_: ;
		genArrAccessOpcode__vmgen_u2641(c_p0, n_p1, dest_p2, opc_1, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)18):
	{
		NI T13_;
		T13_ = (NI)0;
		T13_ = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		genObjAccessAux__vmgen_u2666(c_p0, n_p1, T13_, ((NI) ((*(*n_p1)._kind_6.sons.p->data[((NI)1)])._kind_1.intVal)), dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8):
	{
		genTypeLit__vmgen_u2482(c_p0, (*n_p1).typField, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default:
	{
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__4;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA colontmpD__5;
		tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_2;
		colontmpD__4 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		colontmpD__5 = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
		{
			if (!((flags_p3 &((NU8)1<<((NU)((((tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ)1)))&7U)))!=0)) goto LA18_;
			colontmpD__4 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)17);
			opc_2 = colontmpD__4;
		}
		goto LA16_;
LA18_: ;
		{
			colontmpD__5 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)16);
			opc_2 = colontmpD__5;
		}
LA16_: ;
		genArrAccessOpcode__vmgen_u2641(c_p0, n_p1, dest_p2, opc_2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, unneededIndirection__vmgen_u2019)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	colontmpD_ = NIM_NIL;
	colontmpD_ = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_88);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = ((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22));
	eqdestroy___ast_u3378(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genDeref__vmgen_u2113)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = unneededIndirection__vmgen_u2019((*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NIM_BOOL T8_;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T9_;
			T8_ = (NIM_BOOL)0;
			T9_ = 0;
			T8_ = ((3 & flags_p3) == T9_);
			if (!(T8_)) goto LA10_;
			T8_ = fitsRegister__vmgen_u1796((*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA10_: ;
			if (!T8_) goto LA11_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), ((*dest_p2)), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA11_: ;
	}
	goto LA1_;
LA4_: ;
	{
		NI tmp_1;
		tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI T18_;
			if (!((*dest_p2) < ((NI)0))) goto LA16_;
			T18_ = (NI)0;
			T18_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*dest_p2) = T18_;
		}
LA16_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)24), ((*dest_p2)), tmp_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NIM_BOOL T21_;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T22_;
			T21_ = (NIM_BOOL)0;
			T22_ = 0;
			T21_ = ((3 & flags_p3) == T22_);
			if (!(T21_)) goto LA23_;
			T21_ = fitsRegister__vmgen_u1796((*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA23_: ;
			if (!T21_) goto LA24_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)15), ((*dest_p2)), ((*dest_p2)), ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA24_: ;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, canElimAddr__vmgen_u2030)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL oldNimErrFin27_;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
	switch ((*(*n_p0)._kind_6.sons.p->data[((NI)0)]).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)67):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)66):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)70):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)68):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)69):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* m_1;
		m_1 = NIM_NIL;
		eqcopy___ast_u3255(&m_1, (*(*n_p0)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T8_;
			if (!((*m_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47) || (*m_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65))) goto LA5_;
			colontmpD_ = NIM_NIL;
			colontmpD__2 = NIM_NIL;
			T8_ = NIM_NIL;
			T8_ = copyNode__ast_u6736((*n_p0)._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T8_); goto LA7_;}
			eqsink___ast_u3261(&result, T8_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			add__ast_u3215(result, (*m_1)._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			{
				colontmpD_ = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_162);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				if (!!(((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)27)))) goto LA11_;
				eqcopy___ast_u3381(&(*result).typField, (*n_p0).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			}
			goto LA9_;
LA11_: ;
			{
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T16_;
				colontmpD__2 = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_73);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				if (!((*colontmpD__2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23))) goto LA14_;
				colontmpD__3 = NIM_NIL;
				colontmpD__3 = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_73);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				T16_ = NIM_NIL;
				T16_ = toVar__ast_u7268((*result).typField, (*colontmpD__3).kind, idgen_p1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T16_); goto LA7_;}
				eqsink___ast_u3387(&(*result).typField, T16_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				eqdestroy___ast_u3378(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			}
			goto LA9_;
LA14_: ;
LA9_: ;
			{
				LA7_:;
			}
			{
				oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				eqdestroy___ast_u3378(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				*nimErr_ = oldNimErrFin7_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
LA5_: ;
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(m_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)58):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)59):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)60):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* m_2;
		m_2 = NIM_NIL;
		eqcopy___ast_u3255(&m_2, (*(*n_p0)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__4;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__5;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T28_;
			if (!((*m_2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47) || (*m_2).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65))) goto LA25_;
			colontmpD__4 = NIM_NIL;
			colontmpD__5 = NIM_NIL;
			T28_ = NIM_NIL;
			T28_ = copyNode__ast_u6736((*n_p0)._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T28_); goto LA27_;}
			eqsink___ast_u3261(&result, T28_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
			add__ast_u3215(result, (*(*n_p0)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
			add__ast_u3215(result, (*m_2)._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
			{
				colontmpD__4 = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_162);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				if (!!(((*colontmpD__4).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)27)))) goto LA31_;
				eqcopy___ast_u3381(&(*result).typField, (*n_p0).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
			}
			goto LA29_;
LA31_: ;
			{
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__6;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T36_;
				colontmpD__5 = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_73);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				if (!((*colontmpD__5).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23))) goto LA34_;
				colontmpD__6 = NIM_NIL;
				colontmpD__6 = skipTypes__ast_u5379((*n_p0).typField, TM__24XApAWKNvaMkcyklm8bNA_73);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				T36_ = NIM_NIL;
				T36_ = toVar__ast_u7268((*result).typField, (*colontmpD__6).kind, idgen_p1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T36_); goto LA27_;}
				eqsink___ast_u3387(&(*result).typField, T36_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				eqdestroy___ast_u3378(colontmpD__6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
			}
			goto LA29_;
LA34_: ;
LA29_: ;
			{
				LA27_:;
			}
			{
				oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3378(colontmpD__5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
				eqdestroy___ast_u3378(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
				*nimErr_ = oldNimErrFin27_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		}
LA25_: ;
		{
			LA22_:;
		}
		{
			oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(m_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin22_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		{
			if (!((*(*n_p0)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47) || (*(*n_p0)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65))) goto LA44_;
			eqcopy___ast_u3255(&result, (*(*n_p0)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA44_: ;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isGlobal__vmgen_u1299)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
	if (!(T1_)) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = (((*(*n_p0)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
	if (!(T3_)) goto LA4_;
	T3_ = !(((*(*n_p0)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA4_: ;
	T1_ = T3_;
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genAddr__vmgen_u2064)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* m_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ newflags_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	m_1 = NIM_NIL;
	{
		m_1 = canElimAddr__vmgen_u2030(n_p1, (*c_p0).Sup.idgen);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!((m_1 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA4_;
		gen__vmgen_u795(c_p0, m_1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(m_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA4_: ;
	newflags_1 = ((flags_p3 & ~ 1) | 2);
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = isGlobal__vmgen_u1299((*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (T8_) goto LA9_;
		T8_ = ((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45) || (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46) || (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)42));
LA9_: ;
		if (!T8_) goto LA10_;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, newflags_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA6_;
LA10_: ;
	{
		NI tmp_1;
		tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], newflags_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T17_;
			if (!((*dest_p2) < ((NI)0))) goto LA15_;
			T17_ = (NI)0;
			T17_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T17_;
		}
LA15_: ;
		{
			if (!(((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)3) <= (*(*c_p0).prc).regInfo.p->data[tmp_1].Field1)) goto LA20_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)23), ((*dest_p2)), tmp_1, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*(*c_p0).prc).regInfo.p->data[tmp_1].Field1 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)8);
		}
		goto LA18_;
LA20_: ;
		{
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)22), ((*dest_p2)), tmp_1, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA18_: ;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA6_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(m_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNotOpr__vmgen_u847)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = ((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)29) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)30) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)31) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)28) || (*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)32));
	if (!(T2_)) goto LA3_;
	T2_ = ((*(*n_p0)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
LA3_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA4_;
	T1_ = ((*(*(*n_p0)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)96));
LA4_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genIf__vmgen_u1017)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tySequence__qwqHTkRvwhrRyENtudHQ7g endings_1;
NIM_BOOL oldNimErrFin13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	endings_1.len = 0; endings_1.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		NIM_BOOL T6_;
		NI T9_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*dest_p2) < ((NI)0));
		if (!(T4_)) goto LA5_;
		T6_ = (NIM_BOOL)0;
		T6_ = isEmptyType__ast_u7234((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = !(T6_);
LA5_: ;
		if (!T4_) goto LA7_;
		T9_ = (NI)0;
		T9_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T9_;
	}
LA7_: ;
	endings_1.len = 0; endings_1.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
				if (!(i_2 < colontmp_)) goto LA12;
				it_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u3255(&it_1, (*n_p1)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
				{
					NI T16_;
					NI tmp_1;
					NI elsePos_1;
					T16_ = (NI)0;
					T16_ = len__ast_u3190(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					if (!(T16_ == ((NI)2))) goto LA17_;
					tmp_1 = getTemp__vmgen_u644(c_p0, (*(*it_1)._kind_6.sons.p->data[((NI)0)]).typField);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					elsePos_1 = (NI)0;
					{
						NIM_BOOL T21_;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T24_;
						T21_ = (NIM_BOOL)0;
						T21_ = isNotOpr__vmgen_u847((*it_1)._kind_6.sons.p->data[((NI)0)]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						if (!T21_) goto LA22_;
						T24_ = 0;
						gen__vmgen_u800(c_p0, (*(*it_1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)], tmp_1, T24_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						elsePos_1 = xjmp__vmgen_u472(c_p0, (*(*it_1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166), tmp_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
					goto LA19_;
LA22_: ;
					{
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T26_;
						T26_ = 0;
						gen__vmgen_u800(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)], tmp_1, T26_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						elsePos_1 = xjmp__vmgen_u472(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167), tmp_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
LA19_: ;
					freeTemp__vmgen_u653(c_p0, tmp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					{
						NIM_BOOL T29_;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T32_;
						T29_ = (NIM_BOOL)0;
						T29_ = isEmptyType__ast_u7234((*(*it_1)._kind_6.sons.p->data[((NI)1)]).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						if (!T29_) goto LA30_;
						T32_ = 0;
						gen__vmgen_u825(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], T32_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
					goto LA27_;
LA30_: ;
					{
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T34_;
						T34_ = 0;
						gen__vmgen_u795(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], dest_p2, T34_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
LA27_: ;
					{
						NI T37_;
						NI T40_;
						T37_ = (NI)0;
						T37_ = len__ast_u3190(n_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						if (!(i_1 < (NI)(T37_ - ((NI)1)))) goto LA38_;
						T40_ = (NI)0;
						T40_ = xjmp__vmgen_u472(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						add__vmgen_u968((&endings_1), T40_);
					}
LA38_: ;
					patch__vmgen_u517(c_p0, elsePos_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
				}
				goto LA14_;
LA17_: ;
				{
					clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					{
						NIM_BOOL T44_;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T47_;
						T44_ = (NIM_BOOL)0;
						T44_ = isEmptyType__ast_u7234((*(*it_1)._kind_6.sons.p->data[((NI)0)]).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						if (!T44_) goto LA45_;
						T47_ = 0;
						gen__vmgen_u825(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)], T47_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
					goto LA42_;
LA45_: ;
					{
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T49_;
						T49_ = 0;
						gen__vmgen_u795(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)], dest_p2, T49_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
					}
LA42_: ;
				}
LA14_: ;
				i_2 += ((NI)1);
				{
					LA13_:;
				}
				{
					oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin13_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA12: ;
		}
	}
	{
		NI* endPos_1;
		NI i_3;
		NI L_1;
		NI T53_;
		endPos_1 = (NI*)0;
		i_3 = ((NI)0);
		T53_ = endings_1.len;
		L_1 = T53_;
		{
			while (1) {
				if (!(i_3 < L_1)) goto LA55;
				endPos_1 = (&endings_1.p->data[i_3]);
				patch__vmgen_u517(c_p0, (*endPos_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				i_3 += ((NI)1);
			} LA55: ;
		}
	}
	clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___vmdef_u883(endings_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genCase__vmgen_u1119)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tySequence__qwqHTkRvwhrRyENtudHQ7g endings_1;
	NI tmp_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T13_;
NIM_BOOL oldNimErrFin23_;
NIM_BOOL oldNimErrFin41_;
NIM_BOOL oldNimErrFin17_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	endings_1.len = 0; endings_1.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isEmptyType__ast_u7234((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T4_)) goto LA5_;
		{
			NI T11_;
			if (!((*dest_p2) < ((NI)0))) goto LA9_;
			T11_ = (NI)0;
			T11_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T11_;
		}
LA9_: ;
	}
	goto LA2_;
LA5_: ;
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	endings_1.len = 0; endings_1.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
	tmp_1 = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T13_ = 0;
	gen__vmgen_u800(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], tmp_1, T13_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)1);
		{
			while (1) {
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
				if (!(i_2 < colontmp_)) goto LA16;
				it_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u3255(&it_1, (*n_p1)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				{
					NI T20_;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_1;
					T20_ = (NI)0;
					T20_ = len__ast_u3190(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
					if (!(T20_ == ((NI)1))) goto LA21_;
					body_1 = NIM_NIL;
					eqcopy___ast_u3255(&body_1, (*it_1)._kind_6.sons.p->data[((NI)0)]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					{
						NIM_BOOL T26_;
						T26_ = (NIM_BOOL)0;
						T26_ = !(((*body_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23)));
						if (T26_) goto LA27_;
						T26_ = !(((*body_1).typField == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
LA27_: ;
						if (!T26_) goto LA28_;
						{
							NIM_BOOL T32_;
							tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T35_;
							T32_ = (NIM_BOOL)0;
							T32_ = isEmptyType__ast_u7234((*body_1).typField);
							if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
							if (!T32_) goto LA33_;
							T35_ = 0;
							gen__vmgen_u825(c_p0, body_1, T35_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
						}
						goto LA30_;
LA33_: ;
						{
							tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T37_;
							T37_ = 0;
							gen__vmgen_u795(c_p0, body_1, dest_p2, T37_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
						}
LA30_: ;
					}
LA28_: ;
					{
						LA23_:;
					}
					{
						oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(body_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						*nimErr_ = oldNimErrFin23_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				}
				goto LA18_;
LA21_: ;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_2;
					NI b_1;
					NI elsePos_1;
					body_2 = NIM_NIL;
					b_1 = rawGenLiteral__vmgen_u1058(c_p0, it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					gABx__vmgen_u449(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)170), tmp_1, b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					body_2 = lastSon__ast_u5208(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					elsePos_1 = xjmp__vmgen_u472(c_p0, body_2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167), tmp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					{
						NIM_BOOL T44_;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T47_;
						T44_ = (NIM_BOOL)0;
						T44_ = isEmptyType__ast_u7234((*body_2).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
						if (!T44_) goto LA45_;
						T47_ = 0;
						gen__vmgen_u825(c_p0, body_2, T47_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					}
					goto LA42_;
LA45_: ;
					{
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T49_;
						T49_ = 0;
						gen__vmgen_u795(c_p0, body_2, dest_p2, T49_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					}
LA42_: ;
					{
						NI T52_;
						NI T55_;
						T52_ = (NI)0;
						T52_ = len__ast_u3190(n_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
						if (!(i_1 < (NI)(T52_ - ((NI)1)))) goto LA53_;
						T55_ = (NI)0;
						T55_ = xjmp__vmgen_u472(c_p0, body_2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
						add__vmgen_u968((&endings_1), T55_);
					}
LA53_: ;
					patch__vmgen_u517(c_p0, elsePos_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
					{
						LA41_:;
					}
					{
						oldNimErrFin41_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(body_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						*nimErr_ = oldNimErrFin41_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				}
LA18_: ;
				clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				i_2 += ((NI)1);
				{
					LA17_:;
				}
				{
					oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin17_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA16: ;
		}
	}
	freeTemp__vmgen_u653(c_p0, tmp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI* endPos_1;
		NI i_3;
		NI L_1;
		NI T61_;
		endPos_1 = (NI*)0;
		i_3 = ((NI)0);
		T61_ = endings_1.len;
		L_1 = T61_;
		{
			while (1) {
				if (!(i_3 < L_1)) goto LA63;
				endPos_1 = (&endings_1.p->data[i_3]);
				patch__vmgen_u517(c_p0, (*endPos_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				i_3 += ((NI)1);
			} LA63: ;
		}
	}
	{
		LA1_:;
	}
	{
		eqdestroy___vmdef_u883(endings_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, genLabel__vmgen_u499)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0) {
	NI result;
	NI T1_;
	T1_ = (*c_p0).code.len;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, jmpBack__vmgen_u505)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI p_p2) {
	NI dist_1;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*c_p0).code.len;
	dist_1 = (NI)(p_p2 - T1_);
	{
		NIM_BOOL T4_;
		NimStringV2 argX60gensym44__1;
		T4_ = (NIM_BOOL)0;
		T4_ = (((NI)-8388607) < dist_1);
		if (!(T4_)) goto LA5_;
		T4_ = (dist_1 < ((NI)8388607));
LA5_: ;
		if (!!(T4_)) goto LA6_;
		argX60gensym44__1.len = 0; argX60gensym44__1.p = NIM_NIL;
		argX60gensym44__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_163));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym44__1, (&TM__24XApAWKNvaMkcyklm8bNA_163));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		{
			LA8_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym44__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA6_: ;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)169), ((NI)0), dist_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, popBlock__vmgen_u746)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI oldLen_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI* f_1;
		tySequence__qwqHTkRvwhrRyENtudHQ7g* colontmp_;
		NI i_1;
		NI L_1;
		NI T2_;
		f_1 = (NI*)0;
		colontmp_ = (tySequence__qwqHTkRvwhrRyENtudHQ7g*)0;
		colontmp_ = (&(*(*c_p0).prc).blocks.p->data[oldLen_p1].fixups);
		i_1 = ((NI)0);
		T2_ = (*colontmp_).len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				f_1 = (&(*colontmp_).p->data[i_1]);
				patch__vmgen_u517(c_p0, (*f_1));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	setLen__vmdef_u986((&(*(*c_p0).prc).blocks), (oldLen_p1));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genWhile__vmgen_u862)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI lab1_1;
	NI oldLen_1;
	NI T1_;
	tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	lab1_1 = genLabel__vmgen_u499(c_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (*(*c_p0).prc).blocks.len;
	oldLen_1 = T1_;
	nimZeroMem((void*)(&T2_), sizeof(tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA));
	T2_.label = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	T2_.fixups.len = 0; T2_.fixups.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
	add__vmgen_u874((&(*(*c_p0).prc).blocks), T2_);
	{
		NIM_BOOL T5_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T8_;
		T5_ = (NIM_BOOL)0;
		T5_ = isTrue__ast_u7675((*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T5_) goto LA6_;
		T8_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T8_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		jmpBack__vmgen_u505(c_p0, n_p1, lab1_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA3_;
LA6_: ;
	{
		NIM_BOOL T10_;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T13_;
		NI lab2_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T14_;
		T10_ = (NIM_BOOL)0;
		T10_ = isNotOpr__vmgen_u847((*n_p1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T10_) goto LA11_;
		T13_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)], T13_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		lab2_1 = xjmp__vmgen_u472(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166), tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T14_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T14_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		jmpBack__vmgen_u505(c_p0, n_p1, lab1_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		patch__vmgen_u517(c_p0, lab2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA3_;
LA11_: ;
	{
		NI tmp_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T16_;
		NI lab2_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T17_;
		T16_ = 0;
		tmp_2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T16_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		lab2_2 = xjmp__vmgen_u472(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167), tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		freeTemp__vmgen_u653(c_p0, tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T17_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T17_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		jmpBack__vmgen_u505(c_p0, n_p1, lab1_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		patch__vmgen_u517(c_p0, lab2_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	popBlock__vmgen_u746(c_p0, oldLen_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBlock__vmgen_u917)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
	NI oldRegisterCount_1;
	NI T1_;
	NI oldLen_1;
	NI T2_;
	tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA T3_;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*(*c_p0).prc).regInfo.len;
	oldRegisterCount_1 = T1_;
	T2_ = (*(*c_p0).prc).blocks.len;
	oldLen_1 = T2_;
	nimZeroMem((void*)(&T3_), sizeof(tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA));
	colontmpD_ = eqdup___ast_u4580((*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T3_.label = colontmpD_;
	T3_.fixups.len = 0; T3_.fixups.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
	add__vmgen_u874((&(*(*c_p0).prc).blocks), T3_);
	T4_ = 0;
	gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, T4_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	popBlock__vmgen_u746(c_p0, oldLen_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI i_1;
		NI colontmp_;
		NI T6_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T6_ = (*(*c_p0).prc).regInfo.len;
		colontmp_ = T6_;
		i_2 = oldRegisterCount_1;
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA8;
				i_1 = i_2;
				{
					NIM_BOOL colontmp__2;
					tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A colontmp__3;
					if (!!((i_1 == (*dest_p2)))) goto LA11_;
					colontmp__2 = NIM_FALSE;
					colontmp__3 = ((tyEnum_TSlotKind__oo9bgjIHoNBV9c9cKJRycJW4A)0);
					(*(*c_p0).prc).regInfo.p->data[i_1].Field0 = colontmp__2;
					(*(*c_p0).prc).regInfo.p->data[i_1].Field1 = colontmp__3;
				}
LA11_: ;
				i_2 += ((NI)1);
			} LA8: ;
		}
	}
	clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genReturn__vmgen_u1250)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T5_;
		if (!!(((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1)))) goto LA3_;
		T5_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T5_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)1), ((NI)0), ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genRaise__vmgen_u1246)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI dest_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = 0;
	dest_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)161), dest_1, ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	freeTemp__vmgen_u653(c_p0, dest_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genBreak__vmgen_u947)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI lab1_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	lab1_1 = xjmp__vmgen_u472(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA3_;
		{
			NI i_1;
			NI colontmp_;
			NI T6_;
			NI res_1;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T6_ = (*(*c_p0).prc).blocks.len;
			colontmp_ = (NI)(T6_ - ((NI)1));
			res_1 = colontmp_;
			{
				while (1) {
					if (!(((NI)0) <= res_1)) goto LA8;
					i_1 = ((NI) (res_1));
					{
						if (!((*(*c_p0).prc).blocks.p->data[i_1].label == (*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym)) goto LA11_;
						add__vmgen_u968((&(*(*c_p0).prc).blocks.p->data[i_1].fixups), lab1_1);
						goto BeforeRet_;
					}
LA11_: ;
					res_1 -= ((NI)1);
				} LA8: ;
			}
		}
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_165, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_166), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		NI T14_;
		T14_ = ((*(*c_p0).prc).blocks.len-1);
		add__vmgen_u968((&(*(*c_p0).prc).blocks.p->data[T14_].fixups), lab1_1);
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genTry__vmgen_u1193)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tySequence__qwqHTkRvwhrRyENtudHQ7g endings_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fin_1;
	NI ehPos_1;
	NI jumpToFinally_1;
NIM_BOOL oldNimErrFin31_;
NIM_BOOL oldNimErrFin26_;
NIM_BOOL oldNimErrFin21_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	endings_1.len = 0; endings_1.p = NIM_NIL;
	fin_1 = NIM_NIL;
	{
		NIM_BOOL T4_;
		NIM_BOOL T6_;
		NI T9_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*dest_p2) < ((NI)0));
		if (!(T4_)) goto LA5_;
		T6_ = (NIM_BOOL)0;
		T6_ = isEmptyType__ast_u7234((*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = !(T6_);
LA5_: ;
		if (!T4_) goto LA7_;
		T9_ = (NI)0;
		T9_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T9_;
	}
LA7_: ;
	endings_1.len = 0; endings_1.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
	ehPos_1 = xjmp__vmgen_u472(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)171), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T12_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T15_;
		T12_ = (NIM_BOOL)0;
		T12_ = isEmptyType__ast_u7234((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T12_) goto LA13_;
		T15_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T15_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA10_;
LA13_: ;
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T17_;
		T17_ = 0;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, T17_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA10_: ;
	clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	jumpToFinally_1 = xjmp__vmgen_u472(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	patch__vmgen_u517(c_p0, ehPos_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)1);
		{
			while (1) {
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
				if (!(i_2 < colontmp_)) goto LA20;
				it_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u3255(&it_1, (*n_p1)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_1;
					NI endExcept_1;
					if (!!(((*it_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)107)))) goto LA24_;
					body_1 = NIM_NIL;
					endExcept_1 = xjmp__vmgen_u472(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)172), ((NI)0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					{
						NI j_1;
						NI colontmp__2;
						NI T28_;
						NI i_3;
						j_1 = (NI)0;
						colontmp__2 = (NI)0;
						T28_ = (NI)0;
						T28_ = len__ast_u3190(it_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
						colontmp__2 = (NI)(T28_ - ((NI)1));
						i_3 = ((NI)0);
						{
							while (1) {
								tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_1;
								NI T32_;
								if (!(i_3 < colontmp__2)) goto LA30;
								typ_1 = NIM_NIL;
								j_1 = i_3;
								typ_1 = skipTypes__ast_u5379((*(*it_1)._kind_6.sons.p->data[j_1]).typField, TM__24XApAWKNvaMkcyklm8bNA_167);
								if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
								T32_ = (NI)0;
								T32_ = genType__vmgen_u1155(c_p0, typ_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
								gABx__vmgen_u449(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)172), ((NI)0), T32_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
								i_3 += ((NI)1);
								{
									LA31_:;
								}
								{
									oldNimErrFin31_ = *nimErr_; *nimErr_ = NIM_FALSE;
									eqdestroy___ast_u3378(typ_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
									*nimErr_ = oldNimErrFin31_;
								}
								if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							} LA30: ;
						}
					}
					{
						NI T37_;
						T37_ = (NI)0;
						T37_ = len__ast_u3190(it_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
						if (!(T37_ == ((NI)1))) goto LA38_;
						gABx__vmgen_u449(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)172), ((NI)0), ((NI)0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					}
LA38_: ;
					body_1 = lastSon__ast_u5208(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					{
						NIM_BOOL T42_;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T45_;
						T42_ = (NIM_BOOL)0;
						T42_ = isEmptyType__ast_u7234((*body_1).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
						if (!T42_) goto LA43_;
						T45_ = 0;
						gen__vmgen_u825(c_p0, body_1, T45_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					}
					goto LA40_;
LA43_: ;
					{
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T47_;
						T47_ = 0;
						gen__vmgen_u795(c_p0, body_1, dest_p2, T47_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					}
LA40_: ;
					clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					{
						NI T50_;
						NI T53_;
						T50_ = (NI)0;
						T50_ = len__ast_u3190(n_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
						if (!(i_1 < T50_)) goto LA51_;
						T53_ = (NI)0;
						T53_ = xjmp__vmgen_u472(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
						add__vmgen_u968((&endings_1), T53_);
					}
LA51_: ;
					patch__vmgen_u517(c_p0, endExcept_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
					{
						LA26_:;
					}
					{
						oldNimErrFin26_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(body_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						*nimErr_ = oldNimErrFin26_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
				}
LA24_: ;
				i_2 += ((NI)1);
				{
					LA21_:;
				}
				{
					oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin21_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA20: ;
		}
	}
	fin_1 = lastSon__ast_u5208(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	patch__vmgen_u517(c_p0, jumpToFinally_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, fin_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)173), ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI* endPos_1;
		NI i_4;
		NI L_1;
		NI T59_;
		endPos_1 = (NI*)0;
		i_4 = ((NI)0);
		T59_ = endings_1.len;
		L_1 = T59_;
		{
			while (1) {
				if (!(i_4 < L_1)) goto LA61;
				endPos_1 = (&endings_1.p->data[i_4]);
				patch__vmgen_u517(c_p0, (*endPos_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				i_4 += ((NI)1);
			} LA61: ;
		}
	}
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T66_;
		if (!((*fin_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)107))) goto LA64_;
		T66_ = 0;
		gen__vmgen_u825(c_p0, (*fin_1)._kind_6.sons.p->data[((NI)0)], T66_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA64_: ;
	gABx__vmgen_u449(c_p0, fin_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)174), ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(fin_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___vmdef_u883(endings_1);
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		if (!((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)0) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23))) goto LA3_;
		result = ((NI)0);
	}
	goto LA1_;
LA3_: ;
	{
		result = len__ast_u3190(n_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getOwner__vmgen_u2186)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u4577(&result, (*(*c_p0).prc).sym);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(result == 0)) goto LA3_;
		eqcopy___ast_u4577(&result, (*c_p0).module);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genVarSection__vmgen_u2862)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
NIM_BOOL oldNimErrFin15_;
NIM_BOOL oldNimErrFin57_;
NIM_BOOL oldNimErrFin79_;
NIM_BOOL oldNimErrFin91_;
NIM_BOOL oldNimErrFin36_;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
		a_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA5;
					i_1 = i_2;
					eqcopy___ast_u3255(&a_1, (*n_p1)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
					{
						{
							if (!((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)125))) goto LA9_;
							goto LA6;
						}
LA9_: ;
						{
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
							tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T30_;
							if (!((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)36))) goto LA13_;
							colontmpD_ = NIM_NIL;
							colontmpD__2 = NIM_NIL;
							{
								NI i_3;
								NI colontmp__2;
								NI T17_;
								NI i_4;
								i_3 = (NI)0;
								colontmp__2 = (NI)0;
								T17_ = (NI)0;
								T17_ = len__ast_u3190(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
								colontmp__2 = (NI)(T17_ - ((NI)2));
								i_4 = ((NI)0);
								{
									while (1) {
										if (!(i_4 < colontmp__2)) goto LA19;
										i_3 = i_4;
										{
											if (!((*(*a_1)._kind_6.sons.p->data[i_3]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA22_;
											{
												NIM_BOOL T26_;
												T26_ = (NIM_BOOL)0;
												T26_ = (((*(*(*a_1)._kind_6.sons.p->data[i_3])._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
												if (!(T26_)) goto LA27_;
												T26_ = !(((*(*(*a_1)._kind_6.sons.p->data[i_3])._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA27_: ;
												if (!!(T26_)) goto LA28_;
												setSlot__vmgen_u2153(c_p0, (*(*a_1)._kind_6.sons.p->data[i_3])._kind_4.sym);
												if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
											}
LA28_: ;
											checkCanEval__vmgen_u2203(c_p0, (*a_1)._kind_6.sons.p->data[i_3]);
											if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
										}
LA22_: ;
										i_4 += ((NI)1);
									} LA19: ;
								}
							}
							colontmpD_ = getOwner__vmgen_u2186(c_p0);
							if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
							colontmpD__2 = lowerTupleUnpacking__lowerings_u56((*c_p0).graph, a_1, (*c_p0).Sup.idgen, colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
							T30_ = 0;
							gen__vmgen_u825(c_p0, colontmpD__2, T30_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
							{
								LA15_:;
							}
							{
								oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___ast_u3252(colontmpD__2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								eqdestroy___ast_u4574(colontmpD_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								*nimErr_ = oldNimErrFin15_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
						}
						goto LA11_;
LA13_: ;
						{
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
							tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA xX60gensym729__1;
							if (!((*(*a_1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA34_;
							s_1 = NIM_NIL;
							eqcopy___ast_u4577(&s_1, (*(*a_1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
							if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
							xX60gensym729__1 = (*s_1).itemId;
							incl__pureZcollectionsZintsets_u366((&(*c_p0).locals), (NI)((NI)((NU64)(((NI) (xX60gensym729__1.module))) << (NU64)(((NI)24) & (64 - 1))) + ((NI) (xX60gensym729__1.item))));
							if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
							{
								NIM_BOOL T39_;
								NIM_BOOL runtimeAccessToCompileTime_1;
								NIM_BOOL T43_;
								NIM_BOOL T44_;
								T39_ = (NIM_BOOL)0;
								T39_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)3)))&63U)))!=0);
								if (!(T39_)) goto LA40_;
								T39_ = !(((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21)));
LA40_: ;
								if (!T39_) goto LA41_;
								T43_ = (NIM_BOOL)0;
								T44_ = (NIM_BOOL)0;
								T44_ = ((*c_p0).mode == ((tyEnum_TEvalMode__sQljSFf0fjnsNV1fpgXakg)0));
								if (!(T44_)) goto LA45_;
								T44_ = (((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)28)))&63U)))!=0);
LA45_: ;
								T43_ = T44_;
								if (!(T43_)) goto LA46_;
								T43_ = (((NI)0) < (*s_1).position);
LA46_: ;
								runtimeAccessToCompileTime_1 = T43_;
								{
									if (!((*s_1).position == ((NI)0))) goto LA49_;
									{
										NIM_BOOL T53_;
										T53_ = (NIM_BOOL)0;
										T53_ = importcCond__vmgen_u2499(c_p0, s_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
										if (!T53_) goto LA54_;
										importcSym__vmgen_u2511(c_p0, (*a_1).info, s_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									}
									goto LA51_;
LA54_: ;
									{
										tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* sa_1;
										NI T58_;
										sa_1 = NIM_NIL;
										sa_1 = getNullValue__vmgen_u2515(c_p0, (*s_1).typ, (*a_1).info, (*c_p0).config);
										if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
										add__ast_u3215((*c_p0).globals, sa_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
										T58_ = (NI)0;
										T58_ = len__ast_u3190((*c_p0).globals);
										if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
										(*s_1).position = T58_;
										{
											LA57_:;
										}
										{
											oldNimErrFin57_ = *nimErr_; *nimErr_ = NIM_FALSE;
											eqdestroy___ast_u3252(sa_1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
											*nimErr_ = oldNimErrFin57_;
										}
										if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									}
LA51_: ;
								}
LA49_: ;
								{
									if (!runtimeAccessToCompileTime_1) goto LA63_;
								}
								goto LA61_;
LA63_: ;
								{
									NI tmp_1;
									NI val_1;
									tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T68_;
									if (!!(((*(*a_1)._kind_6.sons.p->data[((NI)2)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1)))) goto LA66_;
									tmp_1 = genx__vmgen_u830(c_p0, (*a_1)._kind_6.sons.p->data[((NI)0)], 2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									T68_ = 0;
									val_1 = genx__vmgen_u830(c_p0, (*a_1)._kind_6.sons.p->data[((NI)2)], T68_);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									genAdditionalCopy__vmgen_u2376(c_p0, (*a_1)._kind_6.sons.p->data[((NI)2)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), tmp_1, ((NI)0), val_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									freeTemp__vmgen_u653(c_p0, val_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									freeTemp__vmgen_u653(c_p0, tmp_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
								}
								goto LA61_;
LA66_: ;
								{
									NIM_BOOL T70_;
									NIM_BOOL T71_;
									NIM_BOOL T72_;
									NIM_BOOL T74_;
									tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* sa_2;
									NI tmp_2;
									NI val_2;
									tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T80_;
									T70_ = (NIM_BOOL)0;
									T71_ = (NIM_BOOL)0;
									T72_ = (NIM_BOOL)0;
									T72_ = importcCondVar__vmgen_u2192(s_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									T71_ = !(T72_);
									if (!(T71_)) goto LA73_;
									T74_ = (NIM_BOOL)0;
									T74_ = ((*(*s_1).typ).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)25));
									if (!(T74_)) goto LA75_;
									T74_ = ((*(*s_1).typ).callConv == ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)9));
LA75_: ;
									T71_ = !(T74_);
LA73_: ;
									T70_ = T71_;
									if (!(T70_)) goto LA76_;
									T70_ = !((((*s_1).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)11)))&63U)))!=0));
LA76_: ;
									if (!T70_) goto LA77_;
									sa_2 = NIM_NIL;
									tmp_2 = genx__vmgen_u830(c_p0, (*a_1)._kind_6.sons.p->data[((NI)0)], 2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									sa_2 = getNullValue__vmgen_u2515(c_p0, (*s_1).typ, (*a_1).info, (*c_p0).config);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									T80_ = 0;
									val_2 = genx__vmgen_u830(c_p0, sa_2, T80_);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									genAdditionalCopy__vmgen_u2376(c_p0, sa_2, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)25), tmp_2, ((NI)0), val_2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									freeTemp__vmgen_u653(c_p0, val_2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									freeTemp__vmgen_u653(c_p0, tmp_2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
									{
										LA79_:;
									}
									{
										oldNimErrFin79_ = *nimErr_; *nimErr_ = NIM_FALSE;
										eqdestroy___ast_u3252(sa_2);
										if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
										*nimErr_ = oldNimErrFin79_;
									}
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
								}
								goto LA61_;
LA77_: ;
LA61_: ;
							}
							goto LA37_;
LA41_: ;
							{
								setSlot__vmgen_u2153(c_p0, s_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
								{
									tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T88_;
									NI T89_;
									if (!((*(*a_1)._kind_6.sons.p->data[((NI)2)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1))) goto LA86_;
									T88_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
									T88_ = ldNullOpcode__vmgen_u1818((*s_1).typ);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									T89_ = (NI)0;
									T89_ = genType__vmgen_u1155(c_p0, (*s_1).typ);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
									gABx__vmgen_u449(c_p0, a_1, T88_, ((*s_1).position), T89_);
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
								}
								goto LA84_;
LA86_: ;
								{
									tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_1;
									le_1 = NIM_NIL;
									{
										NIM_BOOL T94_;
										tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T97_;
										NI T98_;
										T94_ = (NIM_BOOL)0;
										T94_ = fitsRegister__vmgen_u1796((*s_1).typ);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										if (!!(T94_)) goto LA95_;
										T97_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
										T97_ = ldNullOpcode__vmgen_u1818((*s_1).typ);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										T98_ = (NI)0;
										T98_ = genType__vmgen_u1155(c_p0, (*s_1).typ);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										gABx__vmgen_u449(c_p0, a_1, T97_, ((*s_1).position), T98_);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
									}
LA95_: ;
									eqcopy___ast_u3255(&le_1, (*a_1)._kind_6.sons.p->data[((NI)0)]);
									if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
									{
										NIM_BOOL T101_;
										NIM_BOOL T102_;
										NI cc_1;
										tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T106_;
										tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T107_;
										T101_ = (NIM_BOOL)0;
										T102_ = (NIM_BOOL)0;
										T102_ = fitsRegister__vmgen_u1796((*le_1).typField);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										T101_ = !(T102_);
										if (!(T101_)) goto LA103_;
										T101_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8) || (*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3));
LA103_: ;
										if (!T101_) goto LA104_;
										cc_1 = getTemp__vmgen_u644(c_p0, (*le_1).typField);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										T106_ = 0;
										gen__vmgen_u800(c_p0, (*a_1)._kind_6.sons.p->data[((NI)2)], cc_1, T106_);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										T107_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
										T107_ = whichAsgnOpc__vmgen_u1828(le_1, NIM_TRUE);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										gABC__vmgen_u354(c_p0, le_1, T107_, ((*s_1).position), cc_1, ((NI)0));
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
										freeTemp__vmgen_u653(c_p0, cc_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
									}
									goto LA99_;
LA104_: ;
									{
										tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T109_;
										T109_ = 0;
										gen__vmgen_u800(c_p0, (*a_1)._kind_6.sons.p->data[((NI)2)], ((*s_1).position), T109_);
										if (NIM_UNLIKELY(*nimErr_)) goto LA91_;
									}
LA99_: ;
									{
										LA91_:;
									}
									{
										oldNimErrFin91_ = *nimErr_; *nimErr_ = NIM_FALSE;
										eqdestroy___ast_u3252(le_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
										*nimErr_ = oldNimErrFin91_;
									}
									if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
								}
LA84_: ;
							}
LA37_: ;
							{
								LA36_:;
							}
							{
								oldNimErrFin36_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___ast_u4574(s_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								*nimErr_ = oldNimErrFin36_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
						}
						goto LA11_;
LA34_: ;
						{
							{
								NI tmp_3;
								tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T119_;
								tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T120_;
								NI T121_;
								if (!((*(*a_1)._kind_6.sons.p->data[((NI)2)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1))) goto LA117_;
								T119_ = 0;
								tmp_3 = genx__vmgen_u830(c_p0, (*a_1)._kind_6.sons.p->data[((NI)0)], T119_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								T120_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
								T120_ = ldNullOpcode__vmgen_u1818((*(*a_1)._kind_6.sons.p->data[((NI)0)]).typField);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								T121_ = (NI)0;
								T121_ = genType__vmgen_u1155(c_p0, (*(*a_1)._kind_6.sons.p->data[((NI)0)]).typField);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								gABx__vmgen_u449(c_p0, a_1, T120_, tmp_3, T121_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
								freeTemp__vmgen_u653(c_p0, tmp_3);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
							}
							goto LA115_;
LA117_: ;
							{
								genAsgn__vmgen_u2399(c_p0, (*a_1)._kind_6.sons.p->data[((NI)0)], (*a_1)._kind_6.sons.p->data[((NI)2)], NIM_TRUE);
								if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
							}
LA115_: ;
						}
LA11_: ;
					} LA6: ;
					i_2 += ((NI)1);
				} LA5: ;
			}
		}
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genArrayConstr__vmgen_u3000)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* intType_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* seqType_1;
	NI T7_;
NIM_BOOL oldNimErrFin21_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	intType_1 = NIM_NIL;
	seqType_1 = NIM_NIL;
	{
		NI T6_;
		if (!((*dest_p2) < ((NI)0))) goto LA4_;
		T6_ = (NI)0;
		T6_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T6_;
	}
LA4_: ;
	T7_ = (NI)0;
	T7_ = genType__vmgen_u1155(c_p0, (*n_p1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177), ((*dest_p2)), T7_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	intType_1 = getSysType__magicsys_u55((*c_p0).graph, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	seqType_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_168);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI tmp_1;
		NI T12_;
		NI T13_;
		if (!((*seqType_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24))) goto LA10_;
		tmp_1 = getTemp__vmgen_u644(c_p0, intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T12_ = (NI)0;
		T12_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), tmp_1, T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T13_ = (NI)0;
		T13_ = genType__vmgen_u1155(c_p0, seqType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), ((*dest_p2)), T13_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)176), tmp_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA10_: ;
	{
		NI T16_;
		NI tmp_2;
		NI T19_;
		T16_ = (NI)0;
		T16_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!(((NI)0) < T16_)) goto LA17_;
		tmp_2 = getTemp__vmgen_u644(c_p0, intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T19_ = (NI)0;
		T19_ = genType__vmgen_u1155(c_p0, intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)178), tmp_2, T19_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_1;
			x_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
				i_2 = ((NI)0);
				{
					while (1) {
						NI a_1;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T25_;
						if (!(i_2 < colontmp_)) goto LA24;
						i_1 = i_2;
						eqcopy___ast_u3255(&x_1, (*n_p1)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						T25_ = 0;
						a_1 = genx__vmgen_u830(c_p0, x_1, T25_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						preventFalseAlias__vmgen_u2384(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)18), ((*dest_p2)), tmp_2, a_1, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)31), tmp_2, tmp_2, IL64(1));
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						freeTemp__vmgen_u653(c_p0, a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
						i_2 += ((NI)1);
					} LA24: ;
				}
			}
			{
				LA21_:;
			}
			{
				oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(x_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin21_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		freeTemp__vmgen_u653(c_p0, tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA17_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(seqType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(intType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genSetConstr__vmgen_u3022)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	NI T6_;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T5_;
		if (!((*dest_p2) < ((NI)0))) goto LA3_;
		T5_ = (NI)0;
		T5_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T5_;
	}
LA3_: ;
	T6_ = (NI)0;
	T6_ = genType__vmgen_u1155(c_p0, (*n_p1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177), ((*dest_p2)), T6_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_1;
		x_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA11;
					i_1 = i_2;
					eqcopy___ast_u3255(&x_1, (*n_p1)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					{
						NI a_1;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T16_;
						NI b_1;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T17_;
						if (!((*x_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)44))) goto LA14_;
						T16_ = 0;
						a_1 = genx__vmgen_u830(c_p0, (*x_1)._kind_6.sons.p->data[((NI)0)], T16_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						T17_ = 0;
						b_1 = genx__vmgen_u830(c_p0, (*x_1)._kind_6.sons.p->data[((NI)1)], T17_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)38), ((*dest_p2)), a_1, b_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						freeTemp__vmgen_u653(c_p0, b_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						freeTemp__vmgen_u653(c_p0, a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					}
					goto LA12_;
LA14_: ;
					{
						NI a_2;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T19_;
						T19_ = 0;
						a_2 = genx__vmgen_u830(c_p0, x_1, T19_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)37), ((*dest_p2)), a_2, ((NI)0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						freeTemp__vmgen_u653(c_p0, a_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					}
LA12_: ;
					i_2 += ((NI)1);
				} LA11: ;
			}
		}
		{
			LA8_:;
		}
		{
			oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(x_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin8_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5281)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** s_p0, NI s_p0Len_0, NI i_p1) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** result;
	result = &s_p0[(NI)(s_p0Len_0 - i_p1)];
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elementType__ast_u5331)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = (tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**)0;
	T1_ = X5BX5D___ast_u5281((((*n_p0).sons).p) ? ((*n_p0).sons.p->data) : NIM_NIL, (*n_p0).sons.len, ((NI)1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___ast_u3381(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, genObjConstr__vmgen_u3034)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
NIM_BOOL oldNimErrFin15_;
NIM_BOOL oldNimErrFin24_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	t_1 = NIM_NIL;
	{
		if (!(((*(*n_p1).typField).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A)1)))&63U)))!=0)) goto LA4_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_170, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_171), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	{
		NI T10_;
		if (!((*dest_p2) < ((NI)0))) goto LA8_;
		T10_ = (NI)0;
		T10_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*dest_p2) = T10_;
	}
LA8_: ;
	t_1 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_33);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
		NI T16_;
		if (!((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22))) goto LA13_;
		colontmpD_ = NIM_NIL;
		colontmpD_ = elementType__ast_u5331(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
		T16_ = (NI)0;
		T16_ = genType__vmgen_u1155(c_p0, colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)175), ((*dest_p2)), T16_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
		{
			LA15_:;
		}
		{
			oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin15_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA11_;
LA13_: ;
	{
		NI T20_;
		T20_ = (NI)0;
		T20_ = genType__vmgen_u1155(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177), ((*dest_p2)), T20_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA11_: ;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)1);
		{
			while (1) {
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
				if (!(i_2 < colontmp_)) goto LA23;
				it_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u3255(&it_1, (*n_p1)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
				{
					NIM_BOOL T27_;
					NI idx_1;
					NI tmp_1;
					tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T31_;
					T27_ = (NIM_BOOL)0;
					T27_ = ((*it_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34));
					if (!(T27_)) goto LA28_;
					T27_ = ((*(*it_1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
LA28_: ;
					if (!T27_) goto LA29_;
					idx_1 = genField__vmgen_u1333(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
					T31_ = 0;
					tmp_1 = genx__vmgen_u830(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], T31_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
					preventFalseAlias__vmgen_u2384(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), ((*dest_p2)), idx_1, tmp_1, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
					freeTemp__vmgen_u653(c_p0, tmp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
				}
				goto LA25_;
LA29_: ;
				{
					liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_173, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_174), NIM_FALSE, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
				}
LA25_: ;
				i_2 += ((NI)1);
				{
					LA24_:;
				}
				{
					oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(it_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin24_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA23: ;
		}
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genTupleConstr__vmgen_u3071)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
NIM_BOOL oldNimErrFin14_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T5_;
		if (!((*dest_p2) < ((NI)0))) goto LA3_;
		T5_ = (NI)0;
		T5_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*dest_p2) = T5_;
	}
LA3_: ;
	{
		NI T10_;
		if (!!(((*(*n_p1).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8)))) goto LA8_;
		T10_ = (NI)0;
		T10_ = genType__vmgen_u1155(c_p0, (*n_p1).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)177), ((*dest_p2)), T10_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* it_1;
					if (!(i_2 < colontmp_)) goto LA13;
					it_1 = NIM_NIL;
					i_1 = i_2;
					eqcopy___ast_u3255(&it_1, (*n_p1)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					{
						NI idx_1;
						NI tmp_1;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T19_;
						if (!((*it_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34))) goto LA17_;
						idx_1 = genField__vmgen_u1333(c_p0, (*it_1)._kind_6.sons.p->data[((NI)0)]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						T19_ = 0;
						tmp_1 = genx__vmgen_u830(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], T19_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						preventFalseAlias__vmgen_u2384(c_p0, (*it_1)._kind_6.sons.p->data[((NI)1)], ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), ((*dest_p2)), idx_1, tmp_1, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						freeTemp__vmgen_u653(c_p0, tmp_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					}
					goto LA15_;
LA17_: ;
					{
						NI tmp_2;
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T21_;
						T21_ = 0;
						tmp_2 = genx__vmgen_u830(c_p0, it_1, T21_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						preventFalseAlias__vmgen_u2384(c_p0, it_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)21), ((*dest_p2)), (i_1), tmp_2, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						freeTemp__vmgen_u653(c_p0, tmp_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					}
LA15_: ;
					i_2 += ((NI)1);
					{
						LA14_:;
					}
					{
						oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(it_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						*nimErr_ = oldNimErrFin14_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				} LA13: ;
			}
		}
	}
LA8_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, genCastIntFloat__vmgen_u1631)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dst_1;
	NI64 srcSize_1;
	NI64 dstSize_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	src_1 = NIM_NIL;
	dst_1 = NIM_NIL;
	src_1 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)1)]).typField, TM__24XApAWKNvaMkcyklm8bNA_175);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	dst_1 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField, TM__24XApAWKNvaMkcyklm8bNA_175);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	srcSize_1 = getSize__types_u3411((*c_p0).config, src_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	dstSize_1 = getSize__types_u3411((*c_p0).config, dst_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NI tmp_1;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T8_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35) || (*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
		if (!(T4_)) goto LA5_;
		T4_ = ((*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35) || (*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
LA5_: ;
		if (!T4_) goto LA6_;
		T8_ = 0;
		tmp_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T8_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T13_;
			if (!((*dest_p2) < ((NI)0))) goto LA11_;
			T13_ = (NI)0;
			T13_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T13_;
		}
LA11_: ;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)4), ((*dest_p2)), tmp_1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			if (!!((dstSize_1 == IL64(8)))) goto LA16_;
			{
				NIM_BOOL T20_;
				NIM_BOOL T21_;
				tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T23_;
				T20_ = (NIM_BOOL)0;
				T21_ = (NIM_BOOL)0;
				T21_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14));
				if (!(T21_)) goto LA22_;
				T23_ = firstOrd__types_u1182((*c_p0).config, dst_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T21_ = lt___int128_u933(T23_, IL64(0));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA22_: ;
				T20_ = T21_;
				if (T20_) goto LA24_;
				T20_ = ((*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35));
LA24_: ;
				if (!T20_) goto LA25_;
				{
					if (!(dstSize_1 <= srcSize_1)) goto LA29_;
					gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)102), ((*dest_p2)), ((NI) ((NI64)(dstSize_1 * IL64(8)))), ((NI)0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA29_: ;
			}
			goto LA18_;
LA25_: ;
			{
				NIM_BOOL T32_;
				NIM_BOOL T33_;
				tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T35_;
				T32_ = (NIM_BOOL)0;
				T33_ = (NIM_BOOL)0;
				T33_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14));
				if (!(T33_)) goto LA34_;
				T35_ = firstOrd__types_u1182((*c_p0).config, dst_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T33_ = lteq___int128_u973(IL64(0), T35_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA34_: ;
				T32_ = T33_;
				if (T32_) goto LA36_;
				T32_ = ((*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
LA36_: ;
				if (!T32_) goto LA37_;
				{
					NIM_BOOL T41_;
					NIM_BOOL T42_;
					NIM_BOOL T43_;
					tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T45_;
					T41_ = (NIM_BOOL)0;
					T42_ = (NIM_BOOL)0;
					T43_ = (NIM_BOOL)0;
					T43_ = ((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14));
					if (!(T43_)) goto LA44_;
					T45_ = firstOrd__types_u1182((*c_p0).config, src_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					T43_ = lt___int128_u933(T45_, IL64(0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA44_: ;
					T42_ = T43_;
					if (T42_) goto LA46_;
					T42_ = ((*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35));
LA46_: ;
					T41_ = T42_;
					if (T41_) goto LA47_;
					T41_ = (dstSize_1 < srcSize_1);
LA47_: ;
					if (!T41_) goto LA48_;
					gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), ((*dest_p2)), ((NI) ((NI64)(dstSize_1 * IL64(8)))), ((NI)0));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA48_: ;
			}
			goto LA18_;
LA37_: ;
LA18_: ;
		}
LA16_: ;
		freeTemp__vmgen_u653(c_p0, tmp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA6_: ;
	{
		NIM_BOOL T51_;
		NI tmp_2;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T63_;
		T51_ = (NIM_BOOL)0;
		T51_ = ((*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35) || (*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
		if (!(T51_)) goto LA52_;
		T51_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)37) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)38));
LA52_: ;
		if (!T51_) goto LA53_;
		{
			NimStringV2 colontmpD_;
			NimStringV2 colontmpD__2;
			NimStringV2 colontmpD__3;
			NimStringV2 colontmpD__4;
			NimStringV2 colontmpD__5;
			tyArray__Seu7uK9aaOSN0BK3EAjjSHw T60_;
			if (!!((srcSize_1 == dstSize_1))) goto LA57_;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
			colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
			colontmpD_ = dollar___ast_u182((*src_1).kind);
			T60_[0] = colontmpD_;
			colontmpD__2 = dollar___systemZdollars_u29(srcSize_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
			T60_[1] = colontmpD__2;
			colontmpD__3 = dollar___ast_u182((*dst_1).kind);
			T60_[2] = colontmpD__3;
			colontmpD__4 = dollar___systemZdollars_u29(dstSize_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
			T60_[3] = colontmpD__4;
			colontmpD__5 = nsuFormatOpenArray(TM__24XApAWKNvaMkcyklm8bNA_177, T60_, 4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__5, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_178), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
			{
				LA59_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__5);
				eqdestroy___system_u2691(colontmpD__4);
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___system_u2691(colontmpD_);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA57_: ;
		T63_ = 0;
		tmp_2 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T63_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T68_;
			if (!((*dest_p2) < ((NI)0))) goto LA66_;
			T68_ = (NI)0;
			T68_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T68_;
		}
LA66_: ;
		{
			if (!((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)37))) goto LA71_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)8), ((*dest_p2)), tmp_2, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA69_;
LA71_: ;
		{
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)9), ((*dest_p2)), tmp_2, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA69_: ;
		freeTemp__vmgen_u653(c_p0, tmp_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA53_: ;
	{
		NIM_BOOL T75_;
		NI tmp_3;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T87_;
		T75_ = (NIM_BOOL)0;
		T75_ = ((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)36) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)37) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)38));
		if (!(T75_)) goto LA76_;
		T75_ = ((*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)35) || (*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
LA76_: ;
		if (!T75_) goto LA77_;
		{
			NimStringV2 colontmpD__6;
			NimStringV2 colontmpD__7;
			NimStringV2 colontmpD__8;
			NimStringV2 colontmpD__9;
			NimStringV2 colontmpD__10;
			tyArray__Seu7uK9aaOSN0BK3EAjjSHw T84_;
			if (!!((srcSize_1 == dstSize_1))) goto LA81_;
			colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
			colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
			colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
			colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
			colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
			colontmpD__6 = dollar___ast_u182((*src_1).kind);
			T84_[0] = colontmpD__6;
			colontmpD__7 = dollar___systemZdollars_u29(srcSize_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
			T84_[1] = colontmpD__7;
			colontmpD__8 = dollar___ast_u182((*dst_1).kind);
			T84_[2] = colontmpD__8;
			colontmpD__9 = dollar___systemZdollars_u29(dstSize_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
			T84_[3] = colontmpD__9;
			colontmpD__10 = nsuFormatOpenArray(TM__24XApAWKNvaMkcyklm8bNA_179, T84_, 4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__10, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_180), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
			{
				LA83_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__10);
				eqdestroy___system_u2691(colontmpD__9);
				eqdestroy___system_u2691(colontmpD__8);
				eqdestroy___system_u2691(colontmpD__7);
				eqdestroy___system_u2691(colontmpD__6);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA81_: ;
		T87_ = 0;
		tmp_3 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T87_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T92_;
			if (!((*dest_p2) < ((NI)0))) goto LA90_;
			T92_ = (NI)0;
			T92_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T92_;
		}
LA90_: ;
		{
			if (!((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)37))) goto LA95_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)10), ((*dest_p2)), tmp_3, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			{
				NIM_BOOL T99_;
				NIM_BOOL T100_;
				tyObject_Int128__Moyhy3H7f18q9axhPc7Yt9bg T102_;
				T99_ = (NIM_BOOL)0;
				T100_ = (NIM_BOOL)0;
				T100_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)14));
				if (!(T100_)) goto LA101_;
				T102_ = firstOrd__types_u1182((*c_p0).config, dst_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T100_ = lteq___int128_u973(IL64(0), T102_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA101_: ;
				T99_ = T100_;
				if (T99_) goto LA103_;
				T99_ = ((*dst_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*dst_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)2) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
LA103_: ;
				if (!T99_) goto LA104_;
				gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)100), ((*dest_p2)), ((NI)32), ((NI)0));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA104_: ;
		}
		goto LA93_;
LA95_: ;
		{
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)11), ((*dest_p2)), tmp_3, ((NI)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA93_: ;
		freeTemp__vmgen_u653(c_p0, tmp_3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA77_: ;
	{
		NIM_BOOL T108_;
		NI64 colontmpD__11;
		NI64 colontmpD__12;
		NI tmp_4;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T112_;
		NI64 imm_1;
		T108_ = (NIM_BOOL)0;
		T108_ = ((*src_1).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21) && (*src_1).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26));
		if (!(T108_)) goto LA109_;
		T108_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
LA109_: ;
		if (!T108_) goto LA110_;
		colontmpD__11 = (NI64)0;
		colontmpD__12 = (NI64)0;
		T112_ = 0;
		tmp_4 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T112_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T117_;
			if (!((*dest_p2) < ((NI)0))) goto LA115_;
			T117_ = (NI)0;
			T117_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T117_;
		}
LA115_: ;
		{
			if (!((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21))) goto LA120_;
			colontmpD__11 = IL64(1);
			imm_1 = colontmpD__11;
		}
		goto LA118_;
LA120_: ;
		{
			colontmpD__12 = IL64(2);
			imm_1 = colontmpD__12;
		}
LA118_: ;
		gABI__vmgen_u421(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)12), ((*dest_p2)), tmp_4, imm_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, tmp_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA110_: ;
	{
		NIM_BOOL T124_;
		NI tmp_5;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T128_;
		NI T134_;
		T124_ = (NIM_BOOL)0;
		T124_ = ((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26) || (*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
		if (!(T124_)) goto LA125_;
		T124_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
LA125_: ;
		if (!T124_) goto LA126_;
		T128_ = 0;
		tmp_5 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T128_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI T133_;
			if (!((*dest_p2) < ((NI)0))) goto LA131_;
			T133_ = (NI)0;
			T133_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T133_;
		}
LA131_: ;
		T134_ = (NI)0;
		T134_ = genType__vmgen_u1155(c_p0, dst_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)188), ((*dest_p2)), T134_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)13), ((*dest_p2)), tmp_5, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		freeTemp__vmgen_u653(c_p0, tmp_5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA126_: ;
	{
		NIM_BOOL T136_;
		T136_ = (NIM_BOOL)0;
		T136_ = ((*src_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)5));
		if (!(T136_)) goto LA137_;
		T136_ = ((*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)29) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)25) || (*dst_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)50));
LA137_: ;
		if (!T136_) goto LA138_;
		{
			NI T144_;
			if (!((*dest_p2) < ((NI)0))) goto LA142_;
			T144_ = (NI)0;
			T144_ = getTemp__vmgen_u644(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*dest_p2) = T144_;
		}
LA142_: ;
		genLit__vmgen_u1257(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA138_: ;
	{
		NimStringV2 colontmpD__13;
		NimStringV2 colontmpD__14;
		NimStringV2 colontmpD__15;
		NimStringV2 T147_;
		colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
		colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
		colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
		T147_.len = 0; T147_.p = NIM_NIL;
		colontmpD__13 = dollar___ast_u182((*src_1).kind);
		colontmpD__14 = dollar___ast_u182((*dst_1).kind);
		T147_ = rawNewString(colontmpD__13.len + colontmpD__14.len + 36);
appendString((&T147_), TM__24XApAWKNvaMkcyklm8bNA_182);
appendString((&T147_), colontmpD__13);
appendString((&T147_), TM__24XApAWKNvaMkcyklm8bNA_184);
appendString((&T147_), colontmpD__14);
		colontmpD__15 = T147_;
		liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__15, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_185), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA146_;
		{
			LA146_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__15);
			eqdestroy___system_u2691(colontmpD__14);
			eqdestroy___system_u2691(colontmpD__13);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(dst_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(src_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_u3655)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NIM_BOOL result;
	result = ((*t_p0).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8) || (*t_p0).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)60) || (*t_p0).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)12));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u795)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NI* dest_p2, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p3) {
NIM_BOOL oldNimErrFin9_;
NIM_BOOL oldNimErrFin30_;
NIM_BOOL oldNimErrFin59_;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL oldNimErrFin87_;
NIM_BOOL oldNimErrFin122_;
NIM_BOOL oldNimErrFin144_;
NIM_BOOL oldNimErrFin159_;
NIM_BOOL oldNimErrFin169_;
NIM_BOOL oldNimErrFin173_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*n_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_1;
		s_1 = NIM_NIL;
		eqcopy___ast_u4577(&s_1, (*n_p1)._kind_4.sym);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		checkCanEval__vmgen_u2203(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		switch ((*s_1).kind) {
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)21):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)5):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)9):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)11):
		{
			genRdVar__vmgen_u2530(c_p0, n_p1, dest_p2, flags_p3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3):
		{
			{
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
				if (!((*(*s_1).typ).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8))) goto LA7_;
				colontmpD_ = NIM_NIL;
				colontmpD_ = skipTypes__ast_u5379((*s_1).typ, TM__24XApAWKNvaMkcyklm8bNA_50);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				genTypeLit__vmgen_u2482(c_p0, colontmpD_, dest_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				{
					LA9_:;
				}
				{
					oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3378(colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
					*nimErr_ = oldNimErrFin9_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
			goto LA5_;
LA7_: ;
			{
				genRdVar__vmgen_u2530(c_p0, n_p1, dest_p2, flags_p3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
LA5_: ;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)16):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)18):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14):
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15):
		{
			{
				NIM_BOOL T16_;
				T16_ = (NIM_BOOL)0;
				T16_ = ((*s_1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15));
				if (!(T16_)) goto LA17_;
				T16_ = ((*(*s_1).typ).callConv == ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)9));
LA17_: ;
				if (!T16_) goto LA18_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_52, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_53), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
LA18_: ;
			{
				NIM_BOOL T22_;
				T22_ = (NIM_BOOL)0;
				T22_ = procIsCallback__vmgen_u3120(c_p0, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				if (!T22_) goto LA23_;
			}
			goto LA20_;
LA23_: ;
			{
				NIM_BOOL T26_;
				T26_ = (NIM_BOOL)0;
				T26_ = importcCond__vmgen_u2499(c_p0, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				if (!T26_) goto LA27_;
				importcSym__vmgen_u2511(c_p0, (*n_p1).info, s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
			goto LA20_;
LA27_: ;
LA20_: ;
			genLit__vmgen_u1257(c_p0, n_p1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)10):
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constVal_1;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T31_;
			constVal_1 = NIM_NIL;
			colontmpD__2 = NIM_NIL;
			T31_ = NIM_NIL;
			{
				colontmpD__2 = astdef__ast_u4596(s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
				if (!!((colontmpD__2 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA34_;
				constVal_1 = astdef__ast_u4596(s_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
			}
			goto LA32_;
LA34_: ;
			{
				eqcopy___ast_u3255(&constVal_1, (*(*s_1).typ).n);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
			}
LA32_: ;
			{
				NIM_BOOL T39_;
				T39_ = (NIM_BOOL)0;
				T39_ = dontInlineConstant__trees_u396(n_p1, constVal_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
				if (!T39_) goto LA40_;
				genLit__vmgen_u1257(c_p0, constVal_1, dest_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
			}
			goto LA37_;
LA40_: ;
			{
				tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T43_;
				T43_ = 0;
				gen__vmgen_u795(c_p0, constVal_1, dest_p2, T43_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
			}
LA37_: ;
			{
				LA30_:;
			}
			{
				oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				eqdestroy___ast_u3252(constVal_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				*nimErr_ = oldNimErrFin30_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)20):
		{
			{
				NI T51_;
				if (!((*dest_p2) < ((NI)0))) goto LA49_;
				T51_ = (NI)0;
				T51_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
				(*dest_p2) = T51_;
			}
LA49_: ;
			{
				NIM_BOOL T54_;
				T54_ = (NIM_BOOL)0;
				T54_ = (((NI)-32768) <= (*s_1).position);
				if (!(T54_)) goto LA55_;
				T54_ = ((*s_1).position <= ((NI)32767));
LA55_: ;
				if (!T54_) goto LA56_;
				gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), ((*dest_p2)), (*s_1).position);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
			goto LA52_;
LA56_: ;
			{
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
				NI lit_1;
				colontmpD__3 = NIM_NIL;
				colontmpD__3 = newIntNode__ast_u5200(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)6), ((NI64) ((*s_1).position)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
				lit_1 = genLiteral__vmgen_u1107(c_p0, colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
				gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)179), ((*dest_p2)), lit_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
				{
					LA59_:;
				}
				{
					oldNimErrFin59_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
					*nimErr_ = oldNimErrFin59_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
LA52_: ;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)7):
		{
			genTypeLit__vmgen_u2482(c_p0, (*s_1).typ, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		case ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)4):
		{
			{
				NIM_BOOL T66_;
				T66_ = (NIM_BOOL)0;
				T66_ = !(((*(*c_p0).prc).sym == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)));
				if (!(T66_)) goto LA67_;
				T66_ = ((*(*(*c_p0).prc).sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17));
LA67_: ;
				if (!T66_) goto LA68_;
				genRdVar__vmgen_u2530(c_p0, n_p1, dest_p2, flags_p3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
			goto LA64_;
LA68_: ;
			{
				NimStringV2 colontmpD__4;
				NimStringV2 T72_;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				T72_.len = 0; T72_.p = NIM_NIL;
				T72_ = rawNewString((*(*s_1).name).s.len + 26);
appendString((&T72_), TM__24XApAWKNvaMkcyklm8bNA_60);
appendString((&T72_), (*(*s_1).name).s);
				colontmpD__4 = T72_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__4, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_61), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA71_;
				{
					LA71_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__4);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			}
LA64_: ;
		}
		break;
		default:
		{
			NimStringV2 colontmpD__5;
			NimStringV2 T77_;
			colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
			T77_.len = 0; T77_.p = NIM_NIL;
			T77_ = rawNewString((*(*s_1).name).s.len + 26);
appendString((&T77_), TM__24XApAWKNvaMkcyklm8bNA_62);
appendString((&T77_), (*(*s_1).name).s);
			colontmpD__5 = T77_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__5, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_63), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
			{
				LA76_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__5);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		}
		break;
		}
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u4574(s_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)32):
	{
		{
			tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_2;
			if (!((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA85_;
			s_2 = NIM_NIL;
			eqcopy___ast_u4577(&s_2, (*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
			if (NIM_UNLIKELY(*nimErr_)) goto LA87_;
			{
				if (!!(((*s_2).magic == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)0)))) goto LA90_;
				genMagic__vmgen_u1843(c_p0, n_p1, dest_p2, flags_p3, (*s_2).magic);
				if (NIM_UNLIKELY(*nimErr_)) goto LA87_;
			}
			goto LA88_;
LA90_: ;
			{
				NimStringV2 colontmpD__6;
				NimStringV2 T96_;
				if (!((*s_2).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14))) goto LA93_;
				colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
				T96_.len = 0; T96_.p = NIM_NIL;
				T96_ = rawNewString((*(*s_2).name).s.len + 35);
appendString((&T96_), TM__24XApAWKNvaMkcyklm8bNA_152);
appendString((&T96_), (*(*s_2).name).s);
appendString((&T96_), TM__24XApAWKNvaMkcyklm8bNA_154);
				colontmpD__6 = T96_;
				liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__6, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), (&TM__24XApAWKNvaMkcyklm8bNA_155), NIM_FALSE, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
				{
					LA95_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__6);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA87_;
			}
			goto LA88_;
LA93_: ;
			{
				genCall__vmgen_u1262(c_p0, n_p1, dest_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA87_;
				clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA87_;
			}
LA88_: ;
			{
				LA87_:;
			}
			{
				oldNimErrFin87_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u4574(s_2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin87_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA83_;
LA85_: ;
		{
			genCall__vmgen_u1262(c_p0, n_p1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			clearDest__vmgen_u836(c_p0, n_p1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA83_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)5) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)10):
	{
		{
			NIM_BOOL T106_;
			T106_ = (NIM_BOOL)0;
			T106_ = isInt16Lit__vmgen_u1579(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T106_) goto LA107_;
			{
				NI T113_;
				if (!((*dest_p2) < ((NI)0))) goto LA111_;
				T113_ = (NI)0;
				T113_ = getTemp__vmgen_u644(c_p0, (*n_p1).typField);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				(*dest_p2) = T113_;
			}
LA111_: ;
			gABx__vmgen_u449(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)185), ((*dest_p2)), ((NI) ((*n_p1)._kind_1.intVal)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA104_;
LA107_: ;
		{
			genLit__vmgen_u1257(c_p0, n_p1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA104_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)11) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)22):
	{
		genLit__vmgen_u1257(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23):
	{
		{
			NIM_BOOL T119_;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__7;
			T119_ = (NIM_BOOL)0;
			T119_ = isEmptyType__ast_u7234((*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!(T119_)) goto LA120_;
			colontmpD__7 = NIM_NIL;
			colontmpD__7 = getNullValue__vmgen_u2515(c_p0, (*n_p1).typField, (*n_p1).info, (*c_p0).config);
			if (NIM_UNLIKELY(*nimErr_)) goto LA122_;
			genLit__vmgen_u1257(c_p0, colontmpD__7, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA122_;
			{
				LA122_:;
			}
			{
				oldNimErrFin122_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__7);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin122_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA117_;
LA120_: ;
		{
			unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA117_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)73):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)74):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)149):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genAsgn__vmgen_u2399(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], (*n_p1)._kind_6.sons.p->data[((NI)1)], ((*n_p1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)73)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)45):
	{
		genObjAccess__vmgen_u2690(c_p0, n_p1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)46):
	{
		genCheckedObjAccess__vmgen_u2733(c_p0, n_p1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)42):
	{
		genArrAccess__vmgen_u2767(c_p0, n_p1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)47):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65):
	{
		genDeref__vmgen_u2113(c_p0, n_p1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)63):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)64):
	{
		genAddr__vmgen_u2064(c_p0, n_p1, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)92):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)48):
	{
		genIf__vmgen_u1017(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T134_;
		T134_ = 0;
		gen__vmgen_u795(c_p0, (*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)], dest_p2, T134_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)97):
	{
		genCase__vmgen_u1119(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)96):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genWhile__vmgen_u862(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)127):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)112):
	{
		genBlock__vmgen_u917(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)109):
	{
		genReturn__vmgen_u1250(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)108):
	{
		genRaise__vmgen_u1246(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)110):
	{
		genBreak__vmgen_u947(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)106):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)154):
	{
		genTry__vmgen_u1193(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	{
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* x_1;
			x_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA144_;
				i_2 = ((NI)0);
				{
					while (1) {
						tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T148_;
						if (!(i_2 < colontmp_)) goto LA147;
						i_1 = i_2;
						eqcopy___ast_u3255(&x_1, (*n_p1)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA144_;
						T148_ = 0;
						gen__vmgen_u825(c_p0, x_1, T148_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA144_;
						i_2 += ((NI)1);
					} LA147: ;
				}
			}
			{
				LA144_:;
			}
			{
				oldNimErrFin144_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(x_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin144_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	{
		NI T157_;
		{
			NI i_3;
			NI colontmp__2;
			NI T153_;
			NI i_4;
			i_3 = (NI)0;
			colontmp__2 = (NI)0;
			T153_ = (NI)0;
			T153_ = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			colontmp__2 = (NI)(T153_ - ((NI)1));
			i_4 = ((NI)0);
			{
				while (1) {
					tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T156_;
					if (!(i_4 < colontmp__2)) goto LA155;
					i_3 = i_4;
					T156_ = 0;
					gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[i_3], T156_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_4 += ((NI)1);
				} LA155: ;
			}
		}
		T157_ = (NI)0;
		T157_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[(NI)(T157_ - ((NI)1))], dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)91):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__8;
		colontmpD__8 = NIM_NIL;
		colontmpD__8 = lastSon__ast_u5208(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA159_;
		gen__vmgen_u795(c_p0, colontmpD__8, dest_p2, flags_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA159_;
		{
			LA159_:;
		}
		{
			oldNimErrFin159_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__8);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin159_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)114):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T163_;
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T163_ = 0;
		gen__vmgen_u825(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T163_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)58):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)59):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)60):
	{
		genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)95));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)66):
	{
		genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)95));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)67):
	{
		genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)95));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)100):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		genVarSection__vmgen_u2862(c_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)51) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)52):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__9;
		colontmpD__9 = NIM_NIL;
		colontmpD__9 = newSymNode__ast_u5168((*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
		if (NIM_UNLIKELY(*nimErr_)) goto LA169_;
		genLit__vmgen_u1257(c_p0, colontmpD__9, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA169_;
		{
			LA169_:;
		}
		{
			oldNimErrFin169_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__9);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin169_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)68):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)69):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)70):
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__10;
		colontmpD__10 = NIM_NIL;
		{
			colontmpD__10 = skipTypes__ast_u5379((*n_p1).typField, TM__24XApAWKNvaMkcyklm8bNA_162);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			if (!((*colontmpD__10).kind >= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)40) && (*colontmpD__10).kind <= ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)44))) goto LA176_;
			genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)95));
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
		}
		goto LA174_;
LA176_: ;
		{
			NI tmp0_1;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T179_;
			NI tmp1_1;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T180_;
			NI tmp2_1;
			tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T181_;
			T179_ = 0;
			tmp0_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], T179_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			T180_ = 0;
			tmp1_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], T180_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			T181_ = 0;
			tmp2_1 = genx__vmgen_u830(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)2)], T181_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)106), tmp0_1, tmp1_1, tmp2_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			freeTemp__vmgen_u653(c_p0, tmp1_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			freeTemp__vmgen_u653(c_p0, tmp2_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			{
				tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA T186_;
				if (!(((NI)0) <= (*dest_p2))) goto LA184_;
				T186_ = (tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0;
				T186_ = whichAsgnOpc__vmgen_u1828(n_p1, NIM_TRUE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
				gABC__vmgen_u354(c_p0, n_p1, T186_, ((*dest_p2)), tmp0_1, ((NI)0));
				if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
				freeTemp__vmgen_u653(c_p0, tmp0_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA173_;
			}
			goto LA182_;
LA184_: ;
			{
				(*dest_p2) = tmp0_1;
			}
LA182_: ;
		}
LA174_: ;
		{
			LA173_:;
		}
		{
			oldNimErrFin173_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(colontmpD__10);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin173_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)125):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)98):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)90):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)83):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)121):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)116):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)120):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)118):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)123):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)122):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)81):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)82):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)84):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)159):
	{
		unused__vmgen_u1115(c_p0, n_p1, (*dest_p2));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)71):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)72):
	{
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T192_;
		T192_ = 0;
		gen__vmgen_u795(c_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], dest_p2, T192_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)41):
	{
		genArrayConstr__vmgen_u3000(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)39):
	{
		genSetConstr__vmgen_u3022(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)38):
	{
		genObjConstr__vmgen_u3034(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)37):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)155):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)160):
	{
		genTupleConstr__vmgen_u3071(c_p0, n_p1, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)61):
	{
		{
			if (!(((*c_p0).features &((NU8)1<<((NU)((((tyEnum_TSandboxFlag__II2KpGKWwJH9bdjbBum5d1g)0)))&7U)))!=0)) goto LA200_;
			genConv__vmgen_u1606(c_p0, n_p1, (*n_p1)._kind_6.sons.p->data[((NI)1)], dest_p2, flags_p3, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)96));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA198_;
LA200_: ;
		{
			genCastIntFloat__vmgen_u1631(c_p0, n_p1, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA198_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)132):
	{
		genTypeLit__vmgen_u2482(c_p0, (*n_p1).typField, dest_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)24):
	{
	}
	break;
	default:
	{
		{
			NIM_BOOL T208_;
			T208_ = (NIM_BOOL)0;
			T208_ = !(((*n_p1).typField == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
			if (!(T208_)) goto LA209_;
			T208_ = isCompileTimeOnly__types_u3655((*n_p1).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA209_: ;
			if (!T208_) goto LA210_;
			genTypeLit__vmgen_u2482(c_p0, (*n_p1).typField, dest_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA206_;
LA210_: ;
		{
			NimStringV2 colontmpD__11;
			NimStringV2 colontmpD__12;
			NimStringV2 T214_;
			colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
			colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
			T214_.len = 0; T214_.p = NIM_NIL;
			colontmpD__11 = dollar___renderer_u2166(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA213_;
			T214_ = rawNewString(colontmpD__11.len + 28);
appendString((&T214_), TM__24XApAWKNvaMkcyklm8bNA_187);
appendString((&T214_), colontmpD__11);
			colontmpD__12 = T214_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__12, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_188), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA213_;
			{
				LA213_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__12);
				eqdestroy___system_u2691(colontmpD__11);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA206_: ;
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gen__vmgen_u825)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ flags_p2) {
	NI tmp_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	tmp_1 = ((NI)-1);
	gen__vmgen_u795(c_p0, n_p1, (&tmp_1), flags_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(((NI)0) <= tmp_1)) goto LA3_;
		freeTemp__vmgen_u653(c_p0, (tmp_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, finalJumpTarget__vmgen_u3473)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI pc_p1, NI diff_p2) {
	NU64 oldInstr_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NimStringV2 argX60gensym857__1;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)-8388607) < diff_p2);
		if (!(T3_)) goto LA4_;
		T3_ = (diff_p2 < ((NI)8388607));
LA4_: ;
		if (!!(T3_)) goto LA5_;
		argX60gensym857__1.len = 0; argX60gensym857__1.p = NIM_NIL;
		argX60gensym857__1 = toFileLineCol__msgs_u701((&TM__24XApAWKNvaMkcyklm8bNA_189));
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		internalErrorImpl__msgs_u1598((*c_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym857__1, (&TM__24XApAWKNvaMkcyklm8bNA_189));
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		{
			LA7_:;
		}
		{
			eqdestroy___system_u2691(argX60gensym857__1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	oldInstr_1 = (*c_p0).code.p->data[pc_p1];
	(*c_p0).code.p->data[pc_p1] = (NU64)((NU64)(oldInstr_1 & 16777215ULL) | (NU64)((NU64)(((NU64) ((NI)(diff_p2 + ((NI)8388608))))) << (NU64)(24ULL & (64 - 1))));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, optimizeJumps__vmgen_u3513)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, NI start_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI i_1;
		NI colontmp_;
		NI T2_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (*c_p0).code.len;
		colontmp_ = T2_;
		i_2 = start_p1;
		{
			while (1) {
				tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA opc_1;
				if (!(i_2 < colontmp_)) goto LA4;
				i_1 = i_2;
				opc_1 = ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(0ULL & (64 - 1))) & 255ULL)));
				switch (opc_1) {
				case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166):
				case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167):
				{
					NI reg_1;
					NI d_1;
					reg_1 = ((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(8ULL & (64 - 1))) & 65535ULL)));
					d_1 = (NI)(i_1 + (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608)));
					{
						NI iters_1;
						NI res_1;
						iters_1 = (NI)0;
						res_1 = ((NI)10);
						{
							while (1) {
								if (!(((NI)0) <= res_1)) goto LA8;
								iters_1 = ((NI) (res_1));
								switch (((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_1]) >> (NU64)(0ULL & (64 - 1))) & 255ULL)))) {
								case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168):
								{
									d_1 += (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608));
								}
								break;
								case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)166):
								case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)167):
								{
									{
										if (!!((((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_1]) >> (NU64)(8ULL & (64 - 1))) & 65535ULL))) == reg_1))) goto LA13_;
										goto LA6;
									}
LA13_: ;
									{
										if (!(((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_1]) >> (NU64)(0ULL & (64 - 1))) & 255ULL))) == opc_1)) goto LA17_;
										d_1 += (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608));
									}
									goto LA15_;
LA17_: ;
									{
										d_1 += ((NI)1);
									}
LA15_: ;
								}
								break;
								default:
								{
									goto LA6;
								}
								break;
								}
								res_1 -= ((NI)1);
							} LA8: ;
						}
					} LA6: ;
					{
						if (!!((d_1 == (NI)(i_1 + (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608)))))) goto LA23_;
						finalJumpTarget__vmgen_u3473(c_p0, i_1, (NI)(d_1 - i_1));
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
LA23_: ;
				}
				break;
				case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168):
				case ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)169):
				{
					NI d_2;
					NI iters_2;
					d_2 = (NI)(i_1 + (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608)));
					iters_2 = ((NI)10);
					{
						while (1) {
							NIM_BOOL T28_;
							T28_ = (NIM_BOOL)0;
							T28_ = (((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_2]) >> (NU64)(0ULL & (64 - 1))) & 255ULL))) == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168));
							if (!(T28_)) goto LA29_;
							T28_ = (((NI)0) < iters_2);
LA29_: ;
							if (!T28_) goto LA27;
							d_2 += (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_2]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608));
							iters_2 -= ((NI)1);
						} LA27: ;
					}
					{
						if (!(((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[d_2]) >> (NU64)(0ULL & (64 - 1))) & 255ULL))) == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)1))) goto LA32_;
						(*c_p0).code.p->data[i_1] = (*c_p0).code.p->data[d_2];
					}
					goto LA30_;
LA32_: ;
					{
						if (!!((d_2 == (NI)(i_1 + (NI)(((NI) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[i_1]) >> (NU64)(24ULL & (64 - 1))) & 16777215ULL))) - ((NI)8388608)))))) goto LA35_;
						finalJumpTarget__vmgen_u3473(c_p0, i_1, (NI)(d_2 - i_1));
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					goto LA30_;
LA35_: ;
LA30_: ;
				}
				break;
				default:
				{
				}
				break;
				}
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg, genProc__vmgen_u3092)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1) {
	tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg result;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA xX60gensym886__1;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg));
	xX60gensym886__1 = (*s_p1).itemId;
	result = getOrDefault__vmgen_u3703((*c_p0).procToCodePos, (NI)((NI)((NU64)(((NI) (xX60gensym886__1.module))) << (NU64)(((NI)24) & (64 - 1))) + ((NI) (xX60gensym886__1.item))), NoVmProcInfo__vmdef_u382);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg colontmpD_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_1;
		tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA colontmpD__2;
		tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA colontmpD__3;
		tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* p_1;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__4;
		tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* oldPrc_1;
		tyObject_VmProcInfo__Jux30icZSrOlvcFTG81Ljg colontmpD__5;
		NI last_1;
		NI T6_;
		NU64 eofInstr_1;
		NI T13_;
		tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA xX60gensym894__1;
		tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA T14_;
		NI procStart_1;
		tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg* T21_;
		tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T32_;
		NI T33_;
		tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA xX60gensym911__1;
		if (!(result.usedRegisters < ((NI32)0))) goto LA3_;
		body_1 = NIM_NIL;
		nimZeroMem((void*)(&colontmpD__2), sizeof(tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA));
		nimZeroMem((void*)(&colontmpD__3), sizeof(tySet_tyEnum_TransformFlag__CzUOfRCXpoYcP43GAlt9cnA));
		p_1 = NIM_NIL;
		oldPrc_1 = NIM_NIL;
		T6_ = (*c_p0).code.len;
		last_1 = (NI)(T6_ - ((NI)1));
		eofInstr_1 = 0;
		{
			NIM_BOOL T9_;
			T9_ = (NIM_BOOL)0;
			T9_ = (((NI)0) <= last_1);
			if (!(T9_)) goto LA10_;
			T9_ = (((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[last_1]) >> (NU64)(0ULL & (64 - 1))) & 255ULL))) == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0));
LA10_: ;
			if (!T9_) goto LA11_;
			eofInstr_1 = (*c_p0).code.p->data[last_1];
			setLen__vmdef_u640((&(*c_p0).code), (last_1));
			setLen__vmdef_u761((&(*c_p0).debug), (last_1));
		}
LA11_: ;
		T13_ = (*c_p0).code.len;
		result.pc = ((NI32) ((NI)(T13_ + ((NI)1))));
		xX60gensym894__1 = (*s_p1).itemId;
		colontmpD_ = eqdup___vmdef_u3583(result);
		X5BX5Deq___vmgen_u4086((&(*c_p0).procToCodePos), (NI)((NI)((NU64)(((NI) (xX60gensym894__1.module))) << (NU64)(((NI)24) & (64 - 1))) + ((NI) (xX60gensym894__1.item))), colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		{
			NIM_BOOL T17_;
			T17_ = (NIM_BOOL)0;
			T17_ = isCompileTimeProc__ast_u7159(s_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			if (!T17_) goto LA18_;
			colontmpD__2 = 0;
			T14_ = colontmpD__2;
		}
		goto LA15_;
LA18_: ;
		{
			colontmpD__3 = 1;
			T14_ = colontmpD__3;
		}
LA15_: ;
		body_1 = transformBody__transf_u26((*c_p0).graph, (*c_p0).Sup.idgen, s_p1, T14_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		procStart_1 = xjmp__vmgen_u472(c_p0, body_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)168), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		T21_ = NIM_NIL;
		T21_ = (tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg*) nimNewObj(sizeof(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg), NIM_ALIGNOF(tyObject_PProccolonObjectType___BUXHs9a6Ck9awUko3NbJ3Fyg));
		(*T21_).blocks.len = 0; (*T21_).blocks.p = (tySequence__b9bG03Q6unwlMU0dM7uOPIA_Content*) newSeqPayload(0, sizeof(tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA), NIM_ALIGNOF(tyObject_TBlock__jSiqQOXIz3L9a8VW9a9a3HAuA));
		colontmpD__4 = eqdup___ast_u4580(s_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		(*T21_).sym = colontmpD__4;
		p_1 = T21_;
		eqcopy___vmdef_u1299(&oldPrc_1, (*c_p0).prc);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		eqsink___vmdef_u1305(&(*c_p0).prc, p_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		eqwasMoved___vmdef_u1293(&p_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		genParams__vmgen_u3457(c_p0, (*(*s_p1).typ).n);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		{
			NIM_BOOL T24_;
			T24_ = (NIM_BOOL)0;
			T24_ = ((*s_p1).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17));
			if (!(T24_)) goto LA25_;
			T24_ = isGenericRoutineStrict__ast_u7092(s_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
LA25_: ;
			if (!T24_) goto LA26_;
			genGenericParams__vmgen_u3494(c_p0, (*(*s_p1).ast)._kind_6.sons.p->data[((NI)2)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		}
LA26_: ;
		{
			if (!(((*(*s_p1).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A)12)))&63U)))!=0)) goto LA30_;
			add__vmgen_u5123((&(*(*c_p0).prc).regInfo), TM__24XApAWKNvaMkcyklm8bNA_6);
		}
LA30_: ;
		T32_ = 0;
		gen__vmgen_u825(c_p0, body_1, T32_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		gABC__vmgen_u354(c_p0, body_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)1), ((NI)0), ((NI)0), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		patch__vmgen_u517(c_p0, procStart_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		gABC__vmgen_u354(c_p0, body_1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0), ((NI) ((NU64)((NU64)((NU64)(eofInstr_1) >> (NU64)(8ULL & (64 - 1))) & 65535ULL))), ((NI)0), ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		optimizeJumps__vmgen_u3513(c_p0, ((NI) (result.pc)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		T33_ = (*(*c_p0).prc).regInfo.len;
		result.usedRegisters = ((NI32) (T33_));
		xX60gensym911__1 = (*s_p1).itemId;
		colontmpD__5 = eqdup___vmdef_u3583(result);
		X5BX5Deq___vmgen_u4086((&(*c_p0).procToCodePos), (NI)((NI)((NU64)(((NI) (xX60gensym911__1.module))) << (NU64)(((NI)24) & (64 - 1))) + ((NI) (xX60gensym911__1.item))), colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		eqsink___vmdef_u1305(&(*c_p0).prc, oldPrc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		eqwasMoved___vmdef_u1293(&oldPrc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		{
			LA5_:;
		}
		{
			oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___vmdef_u1296(oldPrc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___vmdef_u1296(p_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3252(body_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin5_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		setLen__vmdef_u1206((&(*(*c_p0).prc).regInfo), ((NI) (result.usedRegisters)));
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameConstant__vmgen_u1074)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* b_p1) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_FALSE;
	{
		if (!(a_p0 == b_p1)) goto LA3_;
		result = NIM_TRUE;
	}
	goto LA1_;
LA3_: ;
	{
		NIM_BOOL T6_;
		NIM_BOOL T7_;
		T6_ = (NIM_BOOL)0;
		T7_ = (NIM_BOOL)0;
		T7_ = !((a_p0 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)));
		if (!(T7_)) goto LA8_;
		T7_ = !((b_p1 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)));
LA8_: ;
		T6_ = T7_;
		if (!(T6_)) goto LA9_;
		T6_ = ((*a_p0).kind == (*b_p1).kind);
LA9_: ;
		if (!T6_) goto LA10_;
		switch ((*a_p0).kind) {
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
		{
			result = ((*a_p0)._kind_4.sym == (*b_p1)._kind_4.sym);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
		{
			result = ((*(*a_p0)._kind_5.ident).id == (*(*b_p1)._kind_5.ident).id);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)5) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)15):
		{
			result = ((*a_p0)._kind_1.intVal == (*b_p1)._kind_1.intVal);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)16) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)18):
		{
			union { NF source; NU64 dest; } LOC16;
			union { NF source; NU64 dest; } LOC17;
			LOC16.source = (*a_p0)._kind_2.floatVal;
			LOC17.source = (*b_p1)._kind_2.floatVal;
			result = (LOC16.dest == LOC17.dest);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)20) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)22):
		{
			result = eqStrings((*a_p0)._kind_3.strVal, (*b_p1)._kind_3.strVal);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)4):
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23):
		{
			result = ((*a_p0).typField == (*b_p1).typField);
		}
		break;
		case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1):
		{
			result = NIM_TRUE;
		}
		break;
		default:
		{
			{
				NI T24_;
				NI T25_;
				T24_ = (NI)0;
				T24_ = len__ast_u3190(a_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T25_ = (NI)0;
				T25_ = len__ast_u3190(b_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!(T24_ == T25_)) goto LA26_;
				{
					NI i_1;
					NI colontmp_;
					NI i_2;
					i_1 = (NI)0;
					colontmp_ = (NI)0;
					colontmp_ = len__ast_u3190(a_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_2 = ((NI)0);
					{
						while (1) {
							if (!(i_2 < colontmp_)) goto LA30;
							i_1 = i_2;
							{
								NIM_BOOL T33_;
								T33_ = (NIM_BOOL)0;
								T33_ = sameConstant__vmgen_u1074((*a_p0)._kind_6.sons.p->data[i_1], (*b_p1)._kind_6.sons.p->data[i_1]);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								if (!!(T33_)) goto LA34_;
								goto BeforeRet_;
							}
LA34_: ;
							i_2 += ((NI)1);
						} LA30: ;
					}
				}
				result = NIM_TRUE;
			}
LA26_: ;
		}
		break;
		}
	}
	goto LA1_;
LA10_: ;
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, removeLastEof__vmgen_u3408)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0) {
	NI last_1;
	NI T1_;
	T1_ = (*c_p0).code.len;
	last_1 = (NI)(T1_ - ((NI)1));
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = (((NI)0) <= last_1);
		if (!(T4_)) goto LA5_;
		T4_ = (((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA) ((NU64)((NU64)((NU64)((*c_p0).code.p->data[last_1]) >> (NU64)(0ULL & (64 - 1))) & 255ULL))) == ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0));
LA5_: ;
		if (!T4_) goto LA6_;
		setLen__vmdef_u640((&(*c_p0).code), (last_1));
		setLen__vmdef_u761((&(*c_p0).debug), (last_1));
	}
LA6_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, genExpr__vmgen_u3448)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NIM_BOOL requiresValue_p2) {
	NI result;
	NI T1_;
	NI d_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	removeLastEof__vmgen_u3408(c_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (*c_p0).code.len;
	result = T1_;
	d_1 = ((NI)-1);
	T2_ = 0;
	gen__vmgen_u795(c_p0, n_p1, (&d_1), T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(d_1 < ((NI)0))) goto LA5_;
		{
			if (!requiresValue_p2) goto LA9_;
			liMessage__msgs_u1227((*c_p0).config, (*n_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__24XApAWKNvaMkcyklm8bNA_191, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)2), (&TM__24XApAWKNvaMkcyklm8bNA_192), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA9_: ;
		d_1 = ((NI)0);
	}
LA5_: ;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0), (d_1), ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, genStmt__vmgen_u3440)(tyObject_TCtx__FHLmhXedV9bg0OyLunsHRew* c_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	NI result;
	NI T1_;
	NI d_1;
	tySet_tyEnum_TGenFlag__vQoA9bTVxVGyDYOmm9bL86uQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	removeLastEof__vmgen_u3408(c_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (*c_p0).code.len;
	result = T1_;
	d_1 = ((NI)-1);
	T2_ = 0;
	gen__vmgen_u795(c_p0, n_p1, (&d_1), T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(((NI)0) <= d_1)) goto LA5_;
		freeTemp__vmgen_u653(c_p0, (d_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	gABC__vmgen_u354(c_p0, n_p1, ((tyEnum_TOpcode__k9bFo7ei5swCN5nWfFSgosA)0), ((NI)0), ((NI)0), ((NI)0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
